From 382bac9900266c2fdce2c63a1e8b718958a518e5 Mon Sep 17 00:00:00 2001 From: Matthew Brush Date: Mon, 4 Mar 2013 15:10:02 -0800 Subject: [PATCH] Replace libcfu-config utility with a pkg-config .pc file --- .gitignore | 1 + Makefile.am | 3 ++ configure.ac | 1 + libcfu.pc.in | 10 ++++++ src/Makefile.am | 18 +++-------- src/libcfu-config.c | 74 --------------------------------------------- 6 files changed, 19 insertions(+), 88 deletions(-) create mode 100644 libcfu.pc.in delete mode 100644 src/libcfu-config.c diff --git a/.gitignore b/.gitignore index 575fd7c..2708e11 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ Makefile.in /m4/ /src/config.* /doc/stamp-vti +/libcfu.pc diff --git a/Makefile.am b/Makefile.am index 39e68d0..c37676b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1 +1,4 @@ SUBDIRS = src examples doc + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = libcfu.pc diff --git a/configure.ac b/configure.ac index bccf6c4..14f5f83 100644 --- a/configure.ac +++ b/configure.ac @@ -41,6 +41,7 @@ fi AM_CONDITIONAL([USE_PTHREADS], [test x$have_pthreads = xyes]) AC_CONFIG_FILES([ + libcfu.pc Makefile src/Makefile examples/Makefile diff --git a/libcfu.pc.in b/libcfu.pc.in new file mode 100644 index 0000000..07b4c3f --- /dev/null +++ b/libcfu.pc.in @@ -0,0 +1,10 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: @PACKAGE_NAME@ +Description: Portable C data structure and utility library +Version: @PACKAGE_VERSION@ +Libs.private: @PTHREAD_LIBS@ +Cflags: -I${includedir}/cfu diff --git a/src/Makefile.am b/src/Makefile.am index c7c55ec..0df1796 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -4,21 +4,11 @@ libcfu_a_SOURCES = cfuhash.c cfutime.c cfustring.c cfulist.c cfuconf.c \ cfu.c cfuopt.c -include_HEADERS = cfu.h cfuhash.h cfutime.h cfustring.h cfulist.h \ - cfuconf.h cfuopt.h +libcfuincdir = $(includedir)/cfu +libcfuinc_HEADERS = cfu.h cfuhash.h cfutime.h cfustring.h cfulist.h \ + cfuconf.h cfuopt.h if USE_PTHREADS libcfu_a_SOURCES += cfuthread_queue.c -include_HEADERS += cfuthread_queue.h +libcfuinc_HEADERS += cfuthread_queue.h endif - -bin_PROGRAMS = libcfu-config - -# TODO: provide a pkg-config .pc file instead -libcfu_config_SOURCES = libcfu-config.c -libcfu_config_CFLAGS = -DCFU_LIBDIR="\"@libdir@\"" \ - -DCFU_LIBS="\"@LIBS@\"" \ - -DCFU_INCLUDEDIR="\"@includedir@\"" \ - -DCFU_PREFIX="\"@prefix@\"" \ - -DCFU_EXEC_PREFIX="\"@exec_prefix@\"" -libcfu_config_LDADD = libcfu.a diff --git a/src/libcfu-config.c b/src/libcfu-config.c deleted file mode 100644 index a4005fa..0000000 --- a/src/libcfu-config.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Creation date: 2005-08-07 13:34:49 - * Authors: Don - * Change log: - */ - -#include -#include -#include - -#include "cfu.h" -#include "cfuopt.h" - -#define GET_PREFIX CFU_PREFIX -#define GET_EXEC_PREFIX CFU_EXEC_PREFIX -#define GET_VERSION LIBCFU_VERSION -#define GET_LIBS "-L" CFU_LIBDIR " -lcfu " CFU_LIBS -#define GET_CFLAGS "-I" CFU_INCLUDEDIR - -static void -print_usage() { - fprintf(stderr, "Usage: libcfu-config [OPTIONS]\n"); - fprintf(stderr, "Options:\n"); - fprintf(stderr, " --prefix [%s]\n", GET_PREFIX); - fprintf(stderr, " --exec-prefix [%s]\n", GET_EXEC_PREFIX); - fprintf(stderr, " --version [%s]\n", GET_VERSION); - fprintf(stderr, " --libs [%s]\n", GET_LIBS); - fprintf(stderr, " --cflags [%s]\n", GET_CFLAGS); -} - -int main(int argc, char **argv) { - char *arg = NULL; - int do_prefix = 0; - int do_exec_prefix = 0; - int do_version = 0; - int do_libs = 0; - int do_cflags = 0; - cfuopt_t *options = cfuopt_new(); - char *error = NULL; - - cfuopt_add_entry(options, "prefix!", &do_prefix, "Display install prefix", NULL); - cfuopt_add_entry(options, "exec-prefix!", &do_exec_prefix, "Display install prefix for executables", NULL); - cfuopt_add_entry(options, "version!", &do_version, "Display library version", NULL); - cfuopt_add_entry(options, "libs!", &do_libs, "Display libraries required for linking with this library", NULL); - cfuopt_add_entry(options, "cflags", &do_cflags, "Display CFLAGS required for compilation", NULL); - - if (argc < 2) { - print_usage(); - exit(1); - } - - cfuopt_parse(options, &argc, &argv, &error); - - arg = argv[1]; - - if (do_prefix) { - fprintf(stdout, "%s\n", GET_PREFIX); - } else if (do_exec_prefix) { - fprintf(stdout, "%s\n", GET_EXEC_PREFIX); - } else if (do_version) { - fprintf(stdout, "%s\n", GET_VERSION); - } else if (do_libs) { - fprintf(stdout, "%s\n", GET_LIBS); - } else if (do_cflags) { - fprintf(stdout, "%s\n", GET_CFLAGS); - } else { - print_usage(); - cfuopt_destroy(options); - exit(1); - } - - cfuopt_destroy(options); - - return 0; -}