From 76c370a929e5ab5dbc81c2fbcf4e50f4fbc08ce9 Mon Sep 17 00:00:00 2001 From: Kai Kang Date: Tue, 15 Aug 2017 15:53:37 +0800 Subject: [PATCH 10/11] build shared libs Upstream-Status: Pending Port patches from Fedora to build shared libs rather than static libs. Signed-off-by: Kai Kang Rebase to 4.3.6 Signed-off-by: Hongxu Jia --- client/Makefile.am | 4 ++-- common/tests/Makefile.am | 13 +++++-------- configure.ac | 12 ++---------- dhcpctl/Makefile.am | 14 ++++++-------- omapip/Makefile.am | 7 +++---- relay/Makefile.am | 5 ++--- server/Makefile.am | 7 +++---- server/tests/Makefile.am | 7 +++---- 8 files changed, 26 insertions(+), 43 deletions(-) Index: dhcp-4.3.6/client/Makefile.am =================================================================== --- dhcp-4.3.6.orig/client/Makefile.am +++ dhcp-4.3.6/client/Makefile.am @@ -15,7 +15,7 @@ dhclient_SOURCES = $(srcdir)/clparse.c $ scripts/bsdos scripts/freebsd scripts/linux scripts/macos \ scripts/netbsd scripts/nextstep scripts/openbsd \ scripts/solaris scripts/openwrt -dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a +dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \ + -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5 EXTRA_DIST = $(man_MANS) Index: dhcp-4.3.6/common/tests/Makefile.am =================================================================== --- dhcp-4.3.6.orig/common/tests/Makefile.am +++ dhcp-4.3.6/common/tests/Makefile.am @@ -15,26 +15,23 @@ ATF_TESTS += alloc_unittest dns_unittest alloc_unittest_SOURCES = test_alloc.c $(top_srcdir)/tests/t_api_dhcp.c alloc_unittest_LDADD = $(ATF_LDFLAGS) alloc_unittest_LDADD += ../libdhcp.a \ - ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a + ../../omapip/libomapi.la -L$(BINDLIBDIR) -ldns -lisccfg -lisc dns_unittest_SOURCES = dns_unittest.c $(top_srcdir)/tests/t_api_dhcp.c dns_unittest_LDADD = $(ATF_LDFLAGS) dns_unittest_LDADD += ../libdhcp.a \ - ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a + ../../omapip/libomapi.la -L$(BINDLIBDIR) -ldns -lisccfg -lisc misc_unittest_SOURCES = misc_unittest.c $(top_srcdir)/tests/t_api_dhcp.c misc_unittest_LDADD = $(ATF_LDFLAGS) misc_unittest_LDADD += ../libdhcp.a \ - ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a + ../../omapip/libomapi.la -L$(BINDLIBDIR) -ldns -lisccfg -lisc ns_name_unittest_SOURCES = ns_name_test.c $(top_srcdir)/tests/t_api_dhcp.c ns_name_unittest_LDADD = $(ATF_LDFLAGS) ns_name_unittest_LDADD += ../libdhcp.a \ - ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a + ../../omapip/libomapi.a -L$(BINDLIBDIR) \ + -ldns -lisccfg -lisc check: $(ATF_TESTS) @if test $(top_srcdir) != ${top_builddir}; then \ Index: dhcp-4.3.6/configure.ac =================================================================== --- dhcp-4.3.6.orig/configure.ac +++ dhcp-4.3.6/configure.ac @@ -47,16 +47,8 @@ AM_CONDITIONAL(CROSS_COMPILING, test "$c # Use this to define _GNU_SOURCE to pull in the IPv6 Advanced Socket API. AC_USE_SYSTEM_EXTENSIONS -AC_PROG_RANLIB - -AC_PATH_PROG(AR, ar) -AC_SUBST(AR) - -if test "X$AR" = "X"; then - AC_MSG_ERROR([ -ar program not found. Please fix your PATH to include the directory in -which ar resides, or set AR in the environment with the full path to ar.]) -fi +# Use libtool to simplify building of shared libraries +AC_PROG_LIBTOOL AC_CONFIG_HEADERS([includes/config.h]) Index: dhcp-4.3.6/dhcpctl/Makefile.am =================================================================== --- dhcp-4.3.6.orig/dhcpctl/Makefile.am +++ dhcp-4.3.6/dhcpctl/Makefile.am @@ -3,19 +3,17 @@ BINDLIBDIR = @BINDDIR@/lib AM_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_srcdir) bin_PROGRAMS = omshell -lib_LIBRARIES = libdhcpctl.a +lib_LTLIBRARIES = libdhcpctl.la noinst_PROGRAMS = cltest man_MANS = omshell.1 dhcpctl.3 EXTRA_DIST = $(man_MANS) omshell_SOURCES = omshell.c -omshell_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ - $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ - $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a +omshell_LDADD = libdhcpctl.la ../common/libdhcp.a ../omapip/libomapi.la \ + -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc -libdhcpctl_a_SOURCES = dhcpctl.c callback.c remote.c +libdhcpctl_la_SOURCES = dhcpctl.c callback.c remote.c cltest_SOURCES = cltest.c -cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ - $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ - $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a +cltest_LDADD = libdhcpctl.la ../common/libdhcp.a ../omapip/libomapi.la \ + -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc Index: dhcp-4.3.6/omapip/Makefile.am =================================================================== --- dhcp-4.3.6.orig/omapip/Makefile.am +++ dhcp-4.3.6/omapip/Makefile.am @@ -1,10 +1,10 @@ BINDLIBDIR = @BINDDIR@/lib AM_CPPFLAGS = -I$(top_srcdir)/includes -lib_LIBRARIES = libomapi.a +lib_LTLIBRARIES = libomapi.la noinst_PROGRAMS = svtest -libomapi_a_SOURCES = protocol.c buffer.c alloc.c result.c connection.c \ +libomapi_la_SOURCES = protocol.c buffer.c alloc.c result.c connection.c \ errwarn.c listener.c dispatch.c generic.c support.c \ handle.c message.c convert.c hash.c auth.c inet_addr.c \ array.c trace.c toisc.c iscprint.c isclib.c @@ -13,6 +13,5 @@ man_MANS = omapi.3 EXTRA_DIST = $(man_MANS) svtest_SOURCES = test.c -svtest_LDADD = libomapi.a $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ - $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a +svtest_LDADD = libomapi.la -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc Index: dhcp-4.3.6/relay/Makefile.am =================================================================== --- dhcp-4.3.6.orig/relay/Makefile.am +++ dhcp-4.3.6/relay/Makefile.am @@ -4,9 +4,8 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst sbin_PROGRAMS = dhcrelay dhcrelay_SOURCES = dhcrelay.c -dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ - $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ - $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a +dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \ + -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc man_MANS = dhcrelay.8 EXTRA_DIST = $(man_MANS) Index: dhcp-4.3.6/server/Makefile.am =================================================================== --- dhcp-4.3.6.orig/server/Makefile.am +++ dhcp-4.3.6/server/Makefile.am @@ -15,10 +15,9 @@ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c c dhcpv6.c mdb6.c ldap.c ldap_casa.c leasechain.c ldap_krb_helper.c dhcpd_CFLAGS = $(LDAP_CFLAGS) -dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ - ../dhcpctl/libdhcpctl.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a \ - $(BINDLIBDIR)/libisc.a $(LDAP_LIBS) +dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \ + ../dhcpctl/libdhcpctl.la -L$(BINDLIBDIR) \ + -lirs -ldns -lisccfg -lisc $(LDAP_LIBS) man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5 EXTRA_DIST = $(man_MANS) Index: dhcp-4.3.6/server/tests/Makefile.am =================================================================== --- dhcp-4.3.6.orig/server/tests/Makefile.am +++ dhcp-4.3.6/server/tests/Makefile.am @@ -19,10 +19,9 @@ DHCPSRC = ../dhcp.c ../bootp.c ../confpa ../ddns.c ../dhcpleasequery.c ../dhcpv6.c ../mdb6.c \ ../ldap.c ../ldap_casa.c ../dhcpd.c ../leasechain.c -DHCPLIBS = $(top_builddir)/common/libdhcp.a $(top_builddir)/omapip/libomapi.a \ - $(top_builddir)/dhcpctl/libdhcpctl.a $(BINDLIBDIR)/libirs.a \ - $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a \ - $(BINDLIBDIR)/libisc.a +DHCPLIBS = $(top_builddir)/common/libdhcp.a $(top_builddir)/omapip/libomapi.la \ + $(top_builddir)/dhcpctl/libdhcpctl.la \ + -L$(BINDLIBDIR) -lirs -ldns -lisccfg -lisc ATF_TESTS = if HAVE_ATF