1*a3cefe7fSPierre Pronchery# Copyright (c) 2019 William Pitcock <nenolod@dereferenced.org> 2*a3cefe7fSPierre Pronchery# 3*a3cefe7fSPierre Pronchery# Permission to use, copy, modify, and/or distribute this software for any 4*a3cefe7fSPierre Pronchery# purpose with or without fee is hereby granted, provided that the above 5*a3cefe7fSPierre Pronchery# copyright notice and this permission notice appear in all copies. 6*a3cefe7fSPierre Pronchery# 7*a3cefe7fSPierre Pronchery# This software is provided 'as is' and without any warranty, express or 8*a3cefe7fSPierre Pronchery# implied. In no event shall the authors be liable for any damages arising 9*a3cefe7fSPierre Pronchery# from the use of this software. 10*a3cefe7fSPierre Pronchery 11*a3cefe7fSPierre Pronchery# pkgconf-lite is a staticly-linked version of pkgconf that does not include 12*a3cefe7fSPierre Pronchery# all features, notably it does not include cross-compile support and MSVC 13*a3cefe7fSPierre Pronchery# support. It does not include the libpkgconf library. 14*a3cefe7fSPierre Pronchery 15*a3cefe7fSPierre ProncherySRCS = \ 16*a3cefe7fSPierre Pronchery libpkgconf/argvsplit.c \ 17*a3cefe7fSPierre Pronchery libpkgconf/audit.c \ 18*a3cefe7fSPierre Pronchery libpkgconf/bsdstubs.c \ 19*a3cefe7fSPierre Pronchery libpkgconf/cache.c \ 20*a3cefe7fSPierre Pronchery libpkgconf/client.c \ 21*a3cefe7fSPierre Pronchery libpkgconf/dependency.c \ 22*a3cefe7fSPierre Pronchery libpkgconf/fileio.c \ 23*a3cefe7fSPierre Pronchery libpkgconf/fragment.c \ 24*a3cefe7fSPierre Pronchery libpkgconf/parser.c \ 25*a3cefe7fSPierre Pronchery libpkgconf/path.c \ 26*a3cefe7fSPierre Pronchery libpkgconf/personality.c \ 27*a3cefe7fSPierre Pronchery libpkgconf/pkg.c \ 28*a3cefe7fSPierre Pronchery libpkgconf/queue.c \ 29*a3cefe7fSPierre Pronchery libpkgconf/tuple.c \ 30*a3cefe7fSPierre Pronchery cli/getopt_long.c \ 31*a3cefe7fSPierre Pronchery cli/main.c 32*a3cefe7fSPierre ProncheryOBJS = ${SRCS:.c=.o} 33*a3cefe7fSPierre ProncheryCFLAGS = ${STATIC} -DPKGCONF_LITE -I. -Ilibpkgconf -Icli -DSYSTEM_LIBDIR=\"${SYSTEM_LIBDIR}\" -DSYSTEM_INCLUDEDIR=\"${SYSTEM_INCLUDEDIR}\" -DPKG_DEFAULT_PATH=\"${PKG_DEFAULT_PATH}\" 34*a3cefe7fSPierre ProncherySTATIC = 35*a3cefe7fSPierre ProncherySTRIP = strip 36*a3cefe7fSPierre Pronchery 37*a3cefe7fSPierre Proncheryall: pkgconf-lite 38*a3cefe7fSPierre Pronchery 39*a3cefe7fSPierre Proncherylibpkgconf/config.h: 40*a3cefe7fSPierre Pronchery @echo '#define PACKAGE_NAME "pkgconf-lite"' >> $@ 41*a3cefe7fSPierre Pronchery @echo '#define PACKAGE_BUGREPORT "https://git.dereferenced.org/pkgconf/pkgconf/issues"' >> $@ 42*a3cefe7fSPierre Pronchery @echo '#define PACKAGE_VERSION "2.5.1"' >> $@ 43*a3cefe7fSPierre Pronchery @echo '#define PACKAGE PACKAGE_NAME " " PACKAGE_VERSION' >> $@ 44*a3cefe7fSPierre Pronchery @echo '#define HAVE_STRLCPY' >> $@ 45*a3cefe7fSPierre Pronchery @echo '#define HAVE_STRLCAT' >> $@ 46*a3cefe7fSPierre Pronchery @echo '#define HAVE_STRNDUP' >> $@ 47*a3cefe7fSPierre Pronchery 48*a3cefe7fSPierre Proncherypkgconf-lite: preflight libpkgconf/config.h ${OBJS} 49*a3cefe7fSPierre Pronchery ${CC} ${STATIC} -o $@ ${OBJS} 50*a3cefe7fSPierre Pronchery ${STRIP} $@ 51*a3cefe7fSPierre Pronchery 52*a3cefe7fSPierre Proncheryclean: 53*a3cefe7fSPierre Pronchery rm -f libpkgconf/config.h 54*a3cefe7fSPierre Pronchery rm -f ${OBJS} 55*a3cefe7fSPierre Pronchery rm -f pkgconf-lite 56*a3cefe7fSPierre Pronchery 57*a3cefe7fSPierre Proncherypreflight: preflight-system-libdir preflight-system-includedir preflight-pkg-default-path 58*a3cefe7fSPierre Pronchery 59*a3cefe7fSPierre Proncherypreflight-system-libdir: 60*a3cefe7fSPierre Pronchery @if test -z "${SYSTEM_LIBDIR}"; then \ 61*a3cefe7fSPierre Pronchery echo "SYSTEM_LIBDIR not set."; \ 62*a3cefe7fSPierre Pronchery exit 1; \ 63*a3cefe7fSPierre Pronchery fi 64*a3cefe7fSPierre Pronchery 65*a3cefe7fSPierre Proncherypreflight-system-includedir: 66*a3cefe7fSPierre Pronchery @if test -z "${SYSTEM_INCLUDEDIR}"; then \ 67*a3cefe7fSPierre Pronchery echo "SYSTEM_INCLUDEDIR not set."; \ 68*a3cefe7fSPierre Pronchery exit 1; \ 69*a3cefe7fSPierre Pronchery fi 70*a3cefe7fSPierre Pronchery 71*a3cefe7fSPierre Proncherypreflight-pkg-default-path: 72*a3cefe7fSPierre Pronchery @if test -z "${PKG_DEFAULT_PATH}"; then \ 73*a3cefe7fSPierre Pronchery echo "PKG_DEFAULT_PATH not set."; \ 74*a3cefe7fSPierre Pronchery exit 1; \ 75*a3cefe7fSPierre Pronchery fi 76*a3cefe7fSPierre Pronchery 77*a3cefe7fSPierre Pronchery.PHONY: preflight preflight-system-libdir preflight-system-includedir preflight-pkg-default-path clean 78