From 99a229bf343df0a0c146b1d0246179c5fc112013 Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Tue, 12 May 2009 11:51:20 -0400 Subject: [PATCH 1/4] Enable modular build of common SSSD libraries Allow configuration and build of individual SSSD utility libraries from their own subdirectories. Building all utilities is still possible recursively from the common root. --- common/Makefile.am | 1 + common/collection/Makefile.am | 3 ++- common/collection/collection.pc.in | 2 +- common/collection/configure.ac | 20 ++++++++++++++++++++ common/configure.ac | 11 ++++++----- common/dhash/Makefile.am | 1 + common/dhash/configure.ac | 20 ++++++++++++++++++++ common/dhash/dhash.pc.in | 2 +- common/ini/Makefile.am | 3 ++- common/ini/ini_config.pc.in | 2 +- 10 files changed, 55 insertions(+), 10 deletions(-) create mode 100644 common/collection/configure.ac create mode 100644 common/collection/m4/.dir create mode 100644 common/dhash/configure.ac create mode 100644 common/dhash/m4/.dir create mode 100644 common/ini/m4/.dir create mode 100644 common/m4/.dir diff --git a/common/Makefile.am b/common/Makefile.am index 94ccd27..276bbb2 100644 --- a/common/Makefile.am +++ b/common/Makefile.am @@ -1 +1,2 @@ SUBDIRS = collection ini trace dhash +ACLOCAL_AMFLAGS = -I m4 diff --git a/common/collection/Makefile.am b/common/collection/Makefile.am index c47327d..1d8f937 100644 --- a/common/collection/Makefile.am +++ b/common/collection/Makefile.am @@ -3,12 +3,13 @@ TRACE_LEVEL=@TRACE_VAR@ topdir=.. AM_CPPFLAGS = -Wall -I$(topdir) -I$(topdir)/trace $(TRACE_LEVEL) +ACLOCAL_AMFLAGS = -I m4 # Set up the pkg-config file pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = collection.pc -# Build libraty +# Build library lib_LTLIBRARIES = libcollection.la libcollection_la_SOURCES = collection.c collection_tools.c collection_tools.h collection_class.h include_HEADERS = collection.h collection_tools.h diff --git a/common/collection/collection.pc.in b/common/collection/collection.pc.in index c73a588..31e86fe 100644 --- a/common/collection/collection.pc.in +++ b/common/collection/collection.pc.in @@ -3,7 +3,7 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ -Name: collection +Name: @PACKAGE_NAME@ Description: A data-type to collect data in a heirarchical structure for easy iteration and serialization Version: @PACKAGE_VERSION@ Libs: -L${libdir} -lcollection diff --git a/common/collection/configure.ac b/common/collection/configure.ac new file mode 100644 index 0000000..81e65e6 --- /dev/null +++ b/common/collection/configure.ac @@ -0,0 +1,20 @@ +AC_INIT([collection], [0.3.3], [dpal@redhat.com]) +AC_CONFIG_SRCDIR([collection.c]) +AC_CONFIG_AUX_DIR([build]) +AM_INIT_AUTOMAKE([-Wall -Werror foreign]) +AC_PROG_CC +AC_PROG_LIBTOOL +AC_CONFIG_MACRO_DIR([m4]) +AC_PROG_INSTALL + +AC_CONFIG_HEADERS([config.h]) + +# Enable trace build +AC_ARG_ENABLE([trace], + [AS_HELP_STRING([--enable-trace[=LEVEL]],[build with low level tracing enabled])], + [trace_level="$enableval"], + [trace_level="0"]) +AS_IF([test ["$trace_level" -gt "0"] -a ["$trace_level" -lt "8"] ],[AC_SUBST([TRACE_VAR],["-DTRACE_LEVEL=$trace_level"])]) + +AC_CONFIG_FILES([Makefile collection.pc]) +AC_OUTPUT \ No newline at end of file diff --git a/common/collection/m4/.dir b/common/collection/m4/.dir new file mode 100644 index 0000000..e69de29 diff --git a/common/configure.ac b/common/configure.ac index 120d103..a5fa3d5 100644 --- a/common/configure.ac +++ b/common/configure.ac @@ -1,9 +1,10 @@ -AC_INIT([elapi], [0.0], [dpal@redhat.com]) -AC_CONFIG_SRCDIR([collection/collection.c]) +AC_INIT([sssd_libs], [0.3.3], [sgallagh@redhat.com]) +AC_CONFIG_SRCDIR([README]) AC_CONFIG_AUX_DIR([build]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AC_PROG_CC AC_PROG_LIBTOOL +AC_CONFIG_MACRO_DIR([m4]) AC_PROG_INSTALL AC_CONFIG_HEADERS([config.h]) @@ -18,10 +19,10 @@ AS_IF([test ["$trace_level" -gt "0"] -a ["$trace_level" -lt "8"] ],[AC_SUBST([TR AC_CONFIG_FILES([Makefile - collection/Makefile collection/collection.pc - dhash/Makefile dhash/dhash.pc - ini/Makefile ini/ini_config.pc trace/Makefile]) + +AC_CONFIG_SUBDIRS([collection dhash ini]) + AC_OUTPUT diff --git a/common/dhash/Makefile.am b/common/dhash/Makefile.am index d2b92bc..0582f84 100644 --- a/common/dhash/Makefile.am +++ b/common/dhash/Makefile.am @@ -1,4 +1,5 @@ AM_CPPFLAGS = -Wall +ACLOCAL_AMFLAGS = -I m4 pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = dhash.pc diff --git a/common/dhash/configure.ac b/common/dhash/configure.ac new file mode 100644 index 0000000..13fd1ac --- /dev/null +++ b/common/dhash/configure.ac @@ -0,0 +1,20 @@ +AC_INIT([dhash], [0.3.3], [jdennis@redhat.com]) +AC_CONFIG_SRCDIR([dhash.c]) +AC_CONFIG_AUX_DIR([build]) +AM_INIT_AUTOMAKE([-Wall -Werror foreign]) +AC_PROG_CC +AC_PROG_LIBTOOL +AC_CONFIG_MACRO_DIR([m4]) +AC_PROG_INSTALL + +AC_CONFIG_HEADERS([config.h]) + +# Enable trace build +AC_ARG_ENABLE([trace], + [AS_HELP_STRING([--enable-trace[=LEVEL]],[build with low level tracing enabled])], + [trace_level="$enableval"], + [trace_level="0"]) +AS_IF([test ["$trace_level" -gt "0"] -a ["$trace_level" -lt "8"] ],[AC_SUBST([TRACE_VAR],["-DTRACE_LEVEL=$trace_level"])]) + +AC_CONFIG_FILES([Makefile dhash.pc]) +AC_OUTPUT \ No newline at end of file diff --git a/common/dhash/dhash.pc.in b/common/dhash/dhash.pc.in index be62b37..7dfc8a3 100644 --- a/common/dhash/dhash.pc.in +++ b/common/dhash/dhash.pc.in @@ -3,7 +3,7 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ -Name: dhash +Name: @PACKAGE_NAME@ Description: A hash table which will dynamically resize to achieve optimal storage & access time properties Version: @PACKAGE_VERSION@ Libs: -L${libdir} -ldhash diff --git a/common/dhash/m4/.dir b/common/dhash/m4/.dir new file mode 100644 index 0000000..e69de29 diff --git a/common/ini/Makefile.am b/common/ini/Makefile.am index 7b5324d..be8f9ec 100644 --- a/common/ini/Makefile.am +++ b/common/ini/Makefile.am @@ -3,6 +3,7 @@ TRACE_LEVEL=@TRACE_VAR@ topdir=.. AM_CPPFLAGS = -Wall -I$(topdir) -I$(topdir)/trace -I$(topdir)/collection $(TRACE_LEVEL) +ACLOCAL_AMFLAGS = -I m4 # Set up the pkg-config file pkgconfigdir = $(libdir)/pkgconfig @@ -10,7 +11,7 @@ pkgconfig_DATA = ini_config.pc # Build library lib_LTLIBRARIES = libini_config.la -libini_config_la_SOURCES = ini_config.c collection.h collection_tools.h collection_class.h +libini_config_la_SOURCES = ini_config.c include_HEADERS = ini_config.h # Build unit test diff --git a/common/ini/ini_config.pc.in b/common/ini/ini_config.pc.in index d08e5b5..3ac3b26 100644 --- a/common/ini/ini_config.pc.in +++ b/common/ini/ini_config.pc.in @@ -3,7 +3,7 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ -Name: ini_config +Name: @PACKAGE_NAME@ Description: Library to process config files in INI format into a libcollection data structure Version: @PACKAGE_VERSION@ Libs: -L${libdir} -lini_config diff --git a/common/ini/m4/.dir b/common/ini/m4/.dir new file mode 100644 index 0000000..e69de29 diff --git a/common/m4/.dir b/common/m4/.dir new file mode 100644 index 0000000..e69de29 -- 1.6.2.2