From 3fc158e59eebbc2f538fe0076a03928d0d4eab9f Mon Sep 17 00:00:00 2001 From: Pavel Březina Date: Mon, 21 Apr 2014 12:17:53 +0200 Subject: sss_config: build MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Lukáš Slebodník --- Makefile.am | 17 +++++++++++++++++ configure.ac | 5 +++++ contrib/sssd.spec.in | 2 ++ src/external/configlib.m4 | 12 ++++++++++++ src/external/libaugeas.m4 | 11 +++++++++++ src/tests/dlopen-tests.c | 3 +++ 6 files changed, 50 insertions(+) create mode 100644 src/external/configlib.m4 create mode 100644 src/external/libaugeas.m4 diff --git a/Makefile.am b/Makefile.am index 3bcde0599..04f1ecd3e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -443,6 +443,7 @@ dist_noinst_HEADERS = \ src/util/sss_ssh.h \ src/util/sss_ini.h \ src/util/sss_format.h \ + src/util/sss_config.h \ src/util/refcount.h \ src/util/find_uid.h \ src/util/user_info_msg.h \ @@ -657,6 +658,22 @@ SSSD_INTERNAL_LTLIBS = \ libsss_debug.la \ libsss_child.la +if BUILD_CONFIG_LIB +pkglib_LTLIBRARIES += libsss_config.la +libsss_config_la_SOURCES = \ + src/util/sss_config.c +libsss_config_la_CFLAGS = \ + $(AM_CFLAGS) \ + $(AUGEAS_CFLAGS) \ + $(TALLOC_CFLAGS) +libsss_config_la_LIBADD = \ + $(AUGEAS_LIBS) \ + $(TALLOC_LIBS) \ + $(SSSD_INTERNAL_LTLIBS) +libsss_config_la_LDFLAGS = \ + -avoid-version +endif + lib_LTLIBRARIES = libipa_hbac.la libsss_idmap.la libsss_nss_idmap.la pkgconfig_DATA += src/providers/ipa/ipa_hbac.pc libipa_hbac_la_SOURCES = \ diff --git a/configure.ac b/configure.ac index eb7e376a0..e75816a71 100644 --- a/configure.ac +++ b/configure.ac @@ -159,6 +159,11 @@ m4_include([src/external/signal.m4]) m4_include([src/external/inotify.m4]) m4_include([src/external/libndr_nbt.m4]) m4_include([src/external/sasl.m4]) +m4_include([src/external/configlib.m4]) + +if test x$build_config_lib = xyes; then + m4_include([src/external/libaugeas.m4]) +fi WITH_UNICODE_LIB if test x$unicode_lib = xlibunistring; then diff --git a/contrib/sssd.spec.in b/contrib/sssd.spec.in index d4ee91659..ad2a1cdda 100644 --- a/contrib/sssd.spec.in +++ b/contrib/sssd.spec.in @@ -138,6 +138,7 @@ BuildRequires: systemd-devel %if (0%{?with_cifs_utils_plugin} == 1) BuildRequires: cifs-utils-devel %endif +BuildRequires: augeas-devel # RHEL 5 is too old to support samba4 and the PAC responder %if !0%{?is_rhel5} @@ -573,6 +574,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/%{name}/libsss_debug.so %{_libdir}/%{name}/libsss_ldap_common.so %{_libdir}/%{name}/libsss_util.so +%{_libdir}/%{name}/libsss_config.so # 3rd party application libraries %{_libdir}/sssd/modules/libsss_autofs.so diff --git a/src/external/configlib.m4 b/src/external/configlib.m4 new file mode 100644 index 000000000..ad6c1a943 --- /dev/null +++ b/src/external/configlib.m4 @@ -0,0 +1,12 @@ +AC_ARG_ENABLE([config-lib], + [AS_HELP_STRING([--disable-config-lib], + [do not build internal config library])], + [build_config_lib=$enableval], + [build_config_lib=yes]) + +AM_CONDITIONAL([BUILD_CONFIG_LIB], + [test x$build_config_lib = xyes]) + +AM_COND_IF([BUILD_CONFIG_LIB], + [AC_DEFINE_UNQUOTED(HAVE_CONFIG_LIB, 1, + [Build with internal config library])]) \ No newline at end of file diff --git a/src/external/libaugeas.m4 b/src/external/libaugeas.m4 new file mode 100644 index 000000000..13f694c5c --- /dev/null +++ b/src/external/libaugeas.m4 @@ -0,0 +1,11 @@ +AC_SUBST(AUGEAS_OBJ) +AC_SUBST(AUGEAS_CFLAGS) +AC_SUBST(AUGEAS_LIBS) + +PKG_CHECK_MODULES(AUGEAS, + augeas >= 1.0.0, + , + AC_MSG_ERROR([ +Please install augeas-devel or disable this dependency +by specifying --disable-config-lib when running configure.]) + ) diff --git a/src/tests/dlopen-tests.c b/src/tests/dlopen-tests.c index 7a218c70a..2396aee8a 100644 --- a/src/tests/dlopen-tests.c +++ b/src/tests/dlopen-tests.c @@ -95,6 +95,9 @@ struct so { { "pysss.so", { LIBPFX"pysss.so", NULL } }, { "pysss_murmur.so", { LIBPFX"pysss_murmur.so", NULL } }, { "pysss_nss_idmap.so", { LIBPFX"pysss_nss_idmap.so", NULL } }, +#endif +#ifdef HAVE_CONFIG_LIB + { "libsss_config.so", { LIBPFX"libsss_config.so", NULL } }, #endif { NULL } }; -- cgit