summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2009-04-11 10:15:12 -0400
committerSimo Sorce <ssorce@redhat.com>2009-04-13 09:06:39 -0400
commitc1d6bffe9ba81c265042859dddf3b39be87c161b (patch)
tree34209f38304c86a78ea230b8d77c8cc76eeff90d /common
parentb531c1872952c5f9a2a46d0a0dfe8dc63be470fd (diff)
downloadsssd_unused-c1d6bffe9ba81c265042859dddf3b39be87c161b.tar.gz
sssd_unused-c1d6bffe9ba81c265042859dddf3b39be87c161b.tar.xz
sssd_unused-c1d6bffe9ba81c265042859dddf3b39be87c161b.zip
Build system improvements for common tools
Allows building shared or static libraries using autotools and provides a pkg-config file to simplify inclusion into other parts of the project (or other projects in the future) For now, we will statically link the collection library and INI parser.
Diffstat (limited to 'common')
-rw-r--r--common/Makefile.am2
-rw-r--r--common/collection/Makefile.am16
-rw-r--r--common/collection/collection.pc.in11
-rw-r--r--common/configure.ac2
-rw-r--r--common/ini/Makefile.am16
-rw-r--r--common/ini/ini_config.pc.in11
-rw-r--r--common/trace/Makefile.am1
7 files changed, 43 insertions, 16 deletions
diff --git a/common/Makefile.am b/common/Makefile.am
index b06c0e73..ea23cb95 100644
--- a/common/Makefile.am
+++ b/common/Makefile.am
@@ -1 +1 @@
-SUBDIRS = collection ini
+SUBDIRS = collection ini trace
diff --git a/common/collection/Makefile.am b/common/collection/Makefile.am
index bdc11112..a47f8f99 100644
--- a/common/collection/Makefile.am
+++ b/common/collection/Makefile.am
@@ -4,14 +4,16 @@ TRACE_LEVEL=@TRACE_VAR@
topdir=..
AM_CPPFLAGS = -Wall -I$(topdir) -I$(topdir)/trace $(TRACE_LEVEL)
-# Build static libraty
-noinst_LIBRARIES = libcollection.a
-libcollection_a_SOURCES = collection.c collection_tools.c collection.h trace.h collection_tools.h collection_class.h
+# Set up the pkg-config file
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = collection.pc
-# Build shared library - reserved for future
-# lib_LTLIBRARIES = libcollection.la
-# libcollection_la_SOURCES = collection.c collection_tools.c collection.h trace.h collection_tools.h collection_class.h
+# Build libraty
+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
+# Build unit test
noinst_PROGRAMS = collection_ut
collection_ut_SOURCES = collection_ut.c
-collection_ut_LDADD = libcollection.a -lm -lz
+collection_ut_LDADD = libcollection.la -lm -lz
diff --git a/common/collection/collection.pc.in b/common/collection/collection.pc.in
new file mode 100644
index 00000000..c73a588c
--- /dev/null
+++ b/common/collection/collection.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: collection
+Description: A data-type to collect data in a heirarchical structure for easy iteration and serialization
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lcollection
+Cflags: -I${includedir}
+URL: http://fedorahosted.org/sssd/
diff --git a/common/configure.ac b/common/configure.ac
index 941125d0..8804b4d7 100644
--- a/common/configure.ac
+++ b/common/configure.ac
@@ -17,7 +17,7 @@ AC_ARG_ENABLE([trace],
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/Makefile ini/Makefile])
+AC_CONFIG_FILES([Makefile collection/Makefile collection/collection.pc ini/Makefile ini/ini_config.pc trace/Makefile])
AC_OUTPUT
diff --git a/common/ini/Makefile.am b/common/ini/Makefile.am
index a673aecd..962172f6 100644
--- a/common/ini/Makefile.am
+++ b/common/ini/Makefile.am
@@ -4,14 +4,16 @@ TRACE_LEVEL=@TRACE_VAR@
topdir=..
AM_CPPFLAGS = -Wall -I$(topdir) -I$(topdir)/trace -I$(topdir)/collection $(TRACE_LEVEL)
-# Build static libraty
-noinst_LIBRARIES = libini_config.a
-libini_config_a_SOURCES = ini_config.c collection.h trace.h collection_tools.h collection_class.h ini_config.h
+# Set up the pkg-config file
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = ini_config.pc
-# Build shared library
-#lib_LTLIBRARIES = libini.la
-#libini_la_SOURCES = ini_config.c collection.h trace.h collection_tools.h collection_class.h ini_config.h
+# Build library
+lib_LTLIBRARIES = libini_config.la
+libini_config_la_SOURCES = ini_config.c collection.h collection_tools.h collection_class.h
+include_HEADERS = ini_config.h
+# Build unit test
noinst_PROGRAMS = ini_config_ut
ini_config_ut_SOURCES = ini_config_ut.c
-ini_config_ut_LDADD = libini_config.a -lm -lz ../collection/libcollection.a
+ini_config_ut_LDADD = libini_config.la -lm -lz ../collection/libcollection.la \ No newline at end of file
diff --git a/common/ini/ini_config.pc.in b/common/ini/ini_config.pc.in
new file mode 100644
index 00000000..d08e5b5e
--- /dev/null
+++ b/common/ini/ini_config.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: ini_config
+Description: Library to process config files in INI format into a libcollection data structure
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lini_config
+Cflags: -I${includedir}
+URL: http://fedorahosted.org/sssd/
diff --git a/common/trace/Makefile.am b/common/trace/Makefile.am
new file mode 100644
index 00000000..489a9d99
--- /dev/null
+++ b/common/trace/Makefile.am
@@ -0,0 +1 @@
+include_HEADERS = trace.h