From ae66fba7bc151ec18601484c5564f43561d97958 Mon Sep 17 00:00:00 2001 From: Kelvin Sherlock Date: Wed, 14 Oct 2020 23:18:02 -0400 Subject: [PATCH] pkg-config support will generate nufxlib.pc and install to the pkgconfig directory for use with the oft-used pkg-config utility. --- nufxlib/.gitignore | 1 + nufxlib/Makefile.in | 6 ++++-- nufxlib/configure | 8 +++++++- nufxlib/configure.in | 6 +++++- nufxlib/nufxlib.pc.in | 10 ++++++++++ 5 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 nufxlib/nufxlib.pc.in diff --git a/nufxlib/.gitignore b/nufxlib/.gitignore index 0f68fbd..f03b689 100644 --- a/nufxlib/.gitignore +++ b/nufxlib/.gitignore @@ -3,6 +3,7 @@ Makefile config.h config.log config.status +nufxlib.pc # generated binaries libnufx.a diff --git a/nufxlib/Makefile.in b/nufxlib/Makefile.in index c64bb59..016cc57 100644 --- a/nufxlib/Makefile.in +++ b/nufxlib/Makefile.in @@ -60,14 +60,16 @@ all: $(PRODUCT) samples install: $(STATIC_PRODUCT) $(srcdir)/mkinstalldirs $(libdir) $(INSTALL_DATA) $(STATIC_PRODUCT) $(libdir) - $(srcdir)/mkinstalldirs $(includedir) + $(srcdir)/mkinstalldirs $(includedir) $(libdir)/pkgconfig $(INSTALL_DATA) NufxLib.h $(includedir) + $(INSTALL_DATA) nufxlib.pc $(libdir)/pkgconfig install-shared: $(SHARED_PRODUCT) $(srcdir)/mkinstalldirs $(libdir) $(INSTALL_DATA) $(SHARED_PRODUCT) $(libdir) - $(srcdir)/mkinstalldirs $(includedir) + $(srcdir)/mkinstalldirs $(includedir) $(libdir)/pkgconfig $(INSTALL_DATA) NufxLib.h $(includedir) + $(INSTALL_DATA) nufxlib.pc $(libdir)/pkgconfig samples:: $(STATIC_PRODUCT) @echo "Building samples..." diff --git a/nufxlib/configure b/nufxlib/configure index f459119..fc3752e 100755 --- a/nufxlib/configure +++ b/nufxlib/configure @@ -626,6 +626,7 @@ BUILD_FLAGS EGREP GREP CPP +NUFX_VERSION RANLIB SET_MAKE INSTALL_DATA @@ -3273,6 +3274,10 @@ else fi +NUFX_VERSION=3.1.0 + + + ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -4220,7 +4225,7 @@ if test "${enable_dmalloc+set}" = set; then : fi -ac_config_files="$ac_config_files Makefile samples/Makefile" +ac_config_files="$ac_config_files Makefile samples/Makefile nufxlib.pc" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -4915,6 +4920,7 @@ do "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "samples/Makefile") CONFIG_FILES="$CONFIG_FILES samples/Makefile" ;; + "nufxlib.pc") CONFIG_FILES="$CONFIG_FILES nufxlib.pc" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac diff --git a/nufxlib/configure.in b/nufxlib/configure.in index 50ed072..b197046 100644 --- a/nufxlib/configure.in +++ b/nufxlib/configure.in @@ -16,6 +16,10 @@ AC_PROG_INSTALL AC_PROG_MAKE_SET AC_PROG_RANLIB +NUFX_VERSION=3.1.0 +AC_SUBST(NUFX_VERSION) + + dnl Checks for header files. AC_CHECK_HEADERS(fcntl.h malloc.h stdlib.h sys/stat.h sys/time.h sys/types.h \ sys/utime.h unistd.h utime.h) @@ -215,4 +219,4 @@ AC_ARG_ENABLE(dmalloc, [ --enable-dmalloc do dmalloc stuff], [ echo "--- enabling dmalloc"; LIBS="$LIBS -L/usr/local/lib -ldmalloc"; AC_DEFINE(USE_DMALLOC, [], [Define if we want to use the dmalloc library (also need -l in Makefile).]) ]) -AC_OUTPUT(Makefile samples/Makefile) +AC_OUTPUT(Makefile samples/Makefile nufxlib.pc) diff --git a/nufxlib/nufxlib.pc.in b/nufxlib/nufxlib.pc.in new file mode 100644 index 0000000..6fe9c81 --- /dev/null +++ b/nufxlib/nufxlib.pc.in @@ -0,0 +1,10 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: nufxlib +Description: NuFX archive manipulation library. +Version: @NUFX_VERSION@ +Libs: -L${libdir} -lnufx @LIBS@ +Cflags: -I${includedir}