lite: add build system for pkgconf-lite mode
parent
bd6f90a8e6
commit
fb98f5a866
|
@ -0,0 +1,82 @@
|
|||
# Copyright (c) 2019 William Pitcock <nenolod@dereferenced.org>
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
# copyright notice and this permission notice appear in all copies.
|
||||
#
|
||||
# This software is provided 'as is' and without any warranty, express or
|
||||
# implied. In no event shall the authors be liable for any damages arising
|
||||
# from the use of this software.
|
||||
|
||||
# pkgconf-lite is a staticly-linked version of pkgconf that does not include
|
||||
# all features, notably it does not include cross-compile support and MSVC
|
||||
# support. It does not include the libpkgconf library.
|
||||
|
||||
SRCS = \
|
||||
libpkgconf/argvsplit.c \
|
||||
libpkgconf/audit.c \
|
||||
libpkgconf/bsdstubs.c \
|
||||
libpkgconf/cache.c \
|
||||
libpkgconf/client.c \
|
||||
libpkgconf/dependency.c \
|
||||
libpkgconf/fileio.c \
|
||||
libpkgconf/fragment.c \
|
||||
libpkgconf/parser.c \
|
||||
libpkgconf/path.c \
|
||||
libpkgconf/personality.c \
|
||||
libpkgconf/pkg.c \
|
||||
libpkgconf/queue.c \
|
||||
libpkgconf/tuple.c \
|
||||
cli/getopt_long.c \
|
||||
cli/main.c \
|
||||
cli/renderer-msvc.c
|
||||
OBJS = ${SRCS:.c=.o}
|
||||
CFLAGS = ${STATIC} -I. -Ilibpkgconf -Icli -DSYSTEM_LIBDIR=\"${SYSTEM_LIBDIR}\" -DSYSTEM_INCLUDEDIR=\"${SYSTEM_INCLUDEDIR}\" -DPERSONALITY_PATH=\"${PERSONALITY_PATH}\" -DPKG_DEFAULT_PATH=\"${PKG_DEFAULT_PATH}\"
|
||||
STATIC =
|
||||
|
||||
all: pkgconf-lite
|
||||
|
||||
libpkgconf/config.h:
|
||||
@echo '#define PACKAGE_NAME "pkgconf-lite"' >> $@
|
||||
@echo '#define PACKAGE_BUGREPORT "https://git.dereferenced.org/pkgconf/pkgconf/issues/new"' >> $@
|
||||
@echo '#define PACKAGE_VERSION "1.6.1"' >> $@
|
||||
@echo '#define PACKAGE PACKAGE_NAME " " PACKAGE_VERSION' >> $@
|
||||
@echo '#define HAVE_STRLCPY' >> $@
|
||||
@echo '#define HAVE_STRLCAT' >> $@
|
||||
@echo '#define HAVE_STRNDUP' >> $@
|
||||
|
||||
pkgconf-lite: preflight libpkgconf/config.h ${OBJS}
|
||||
${CC} ${STATIC} -o $@ ${OBJS}
|
||||
|
||||
clean:
|
||||
rm -f libpkgconf/config.h
|
||||
rm -f ${OBJS}
|
||||
rm -f pkgconf-lite
|
||||
|
||||
preflight: preflight-system-libdir preflight-system-includedir preflight-pkg-default-path preflight-personality-path
|
||||
|
||||
preflight-system-libdir:
|
||||
@if test -z "${SYSTEM_LIBDIR}"; then \
|
||||
echo "SYSTEM_LIBDIR not set."; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
preflight-system-includedir:
|
||||
@if test -z "${SYSTEM_INCLUDEDIR}"; then \
|
||||
echo "SYSTEM_INCLUDEDIR not set."; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
preflight-personality-path:
|
||||
@if test -z "${PERSONALITY_PATH}"; then \
|
||||
echo "PERSONALITY_PATH not set."; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
preflight-pkg-default-path:
|
||||
@if test -z "${PKG_DEFAULT_PATH}"; then \
|
||||
echo "PKG_DEFAULT_PATH not set."; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
.PHONY: preflight preflight-system-libdir preflight-system-includedir preflight-pkg-default-path preflight-personality-path clean
|
Loading…
Reference in New Issue