mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-30 13:37:55 +00:00
used *.la instead of .libs/*.a
introduced a new ./configure option --enable-static-link to statically link executables while still building dynamic loadable modules correctly. git-svn-id: svn://bind10.isc.org/svn/bind10/branches/trac309@2722 e5f2f494-b856-4b98-b285-d166d9295462
This commit is contained in:
parent
c16e3db71a
commit
9c68303040
10
configure.ac
10
configure.ac
@ -32,6 +32,14 @@ AC_TRY_LINK([],[],
|
||||
])
|
||||
LDFLAGS=$LDFLAGS_SAVED
|
||||
|
||||
# allow building programs with static link. we need to make it selective
|
||||
# because loadable modules cannot be statically linked.
|
||||
AC_ARG_ENABLE([static-link],
|
||||
AC_HELP_STRING([--enable-static-link],
|
||||
[build programs with static link [[default=no]]]),
|
||||
[enable_static_link=yes], [enable_static_link=no])
|
||||
AM_CONDITIONAL(USE_STATIC_LINK, test $enable_static_link = yes)
|
||||
|
||||
# OS dependent compiler flags
|
||||
case "$host" in
|
||||
*-solaris*)
|
||||
@ -409,6 +417,7 @@ AC_CONFIG_FILES([Makefile
|
||||
src/lib/bench/example/Makefile
|
||||
src/lib/bench/tests/Makefile
|
||||
src/lib/cc/Makefile
|
||||
src/lib/cc/tests/Makefile
|
||||
src/lib/python/Makefile
|
||||
src/lib/python/isc/Makefile
|
||||
src/lib/python/isc/datasrc/Makefile
|
||||
@ -425,6 +434,7 @@ AC_CONFIG_FILES([Makefile
|
||||
src/lib/dns/python/Makefile
|
||||
src/lib/dns/python/tests/Makefile
|
||||
src/lib/exceptions/Makefile
|
||||
src/lib/exceptions/tests/Makefile
|
||||
src/lib/datasrc/Makefile
|
||||
src/lib/datasrc/tests/Makefile
|
||||
src/lib/xfr/Makefile
|
||||
|
@ -8,6 +8,10 @@ AM_CPPFLAGS += -I$(top_srcdir)/src/bin -I$(top_builddir)/src/bin
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
|
||||
CLEANFILES = *.gcno *.gcda auth.spec spec_config.h
|
||||
@ -50,13 +54,13 @@ b10_auth_SOURCES = auth_srv.cc auth_srv.h
|
||||
b10_auth_SOURCES += change_user.cc change_user.h
|
||||
b10_auth_SOURCES += common.h
|
||||
b10_auth_SOURCES += main.cc
|
||||
b10_auth_LDADD = $(top_builddir)/src/lib/datasrc/.libs/libdatasrc.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/config/.libs/libcfgclient.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/cc/.libs/libcc.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
b10_auth_LDADD = $(top_builddir)/src/lib/datasrc/libdatasrc.la
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/config/libcfgclient.la
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/cc/libcc.la
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
b10_auth_LDADD += $(top_builddir)/src/bin/auth/libasio_link.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/xfr/.libs/libxfr.a
|
||||
b10_auth_LDADD += $(top_builddir)/src/lib/xfr/libxfr.la
|
||||
b10_auth_LDADD += $(SQLITE_LIBS)
|
||||
|
||||
# TODO: config.h.in is wrong because doesn't honor pkgdatadir
|
||||
|
@ -5,6 +5,10 @@ AM_CPPFLAGS += -DTEST_DATA_DIR=\"$(srcdir)/testdata\"
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
@ -22,13 +26,13 @@ run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
||||
run_unittests_LDADD = $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(SQLITE_LIBS)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/datasrc/.libs/libdatasrc.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/config/.libs/libcfgclient.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/cc/.libs/libcc.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/datasrc/libdatasrc.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/config/libcfgclient.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/cc/libcc.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/bin/auth/libasio_link.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/xfr/.libs/libxfr.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/xfr/libxfr.la
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
@ -3,12 +3,16 @@ AM_CPPFLAGS += -I$(top_srcdir)/src/lib/dns -I$(top_builddir)/src/lib/dns
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
bin_PROGRAMS = host
|
||||
host_SOURCES = host.cc
|
||||
host_LDADD = $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
host_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
host_LDADD = $(top_builddir)/src/lib/dns/libdns++.la
|
||||
host_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
|
||||
#man_MANS = host.1
|
||||
#EXTRA_DIST = $(man_MANS) host.xml
|
||||
|
@ -7,6 +7,6 @@ PYCOVERAGE = $(PYTHON)
|
||||
check-local:
|
||||
for pytest in $(PYTESTS) ; do \
|
||||
echo Running test: $$pytest ; \
|
||||
env PYTHONPATH=$(abs_top_builddir)/src/lib/dns/.libs:$(abs_top_builddir)/src/lib/dns/python/.libs:$(abs_top_builddir)/src/bin/xfrin:$(abs_top_srcdir)/src/lib/python:$(abs_top_builddir)/src/lib/python \
|
||||
env PYTHONPATH=$(abs_top_builddir)/src/lib/dns/python/.libs:$(abs_top_builddir)/src/bin/xfrin:$(abs_top_srcdir)/src/lib/python:$(abs_top_builddir)/src/lib/python \
|
||||
$(PYCOVERAGE) $(abs_srcdir)/$$pytest ; \
|
||||
done
|
||||
|
@ -7,6 +7,6 @@ PYCOVERAGE = $(PYTHON)
|
||||
check-local:
|
||||
for pytest in $(PYTESTS) ; do \
|
||||
echo Running test: $$pytest ; \
|
||||
env PYTHONPATH=$(abs_top_builddir)/src/bin/xfrout:$(abs_top_srcdir)/src/lib/python:$(abs_top_builddir)/src/lib/python:$(abs_top_builddir)/src/lib/dns/.libs:$(abs_top_builddir)/src/lib/dns/python/.libs:$(abs_top_builddir)/src/lib/xfr/.libs \
|
||||
env PYTHONPATH=$(abs_top_builddir)/src/bin/xfrout:$(abs_top_srcdir)/src/lib/python:$(abs_top_builddir)/src/lib/python:$(abs_top_builddir)/src/lib/dns/python/.libs:$(abs_top_builddir)/src/lib/xfr/.libs \
|
||||
$(PYCOVERAGE) $(abs_srcdir)/$$pytest ; \
|
||||
done
|
||||
|
@ -1,5 +1,9 @@
|
||||
AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
noinst_PROGRAMS = search_bench
|
||||
|
@ -2,6 +2,10 @@ AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
|
||||
AM_CPPFLAGS += -DTEST_DATA_DIR=\"$(srcdir)/testdata\"
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
|
@ -1,3 +1,5 @@
|
||||
SUBDIRS = . tests
|
||||
|
||||
AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/src/lib/dns -I$(top_builddir)/src/lib/dns
|
||||
|
||||
@ -19,20 +21,3 @@ session_config.h: session_config.h.pre
|
||||
$(SED) -e "s|@@LOCALSTATEDIR@@|$(localstatedir)|" session_config.h.pre >$@
|
||||
|
||||
BUILT_SOURCES = session_config.h
|
||||
|
||||
TESTS =
|
||||
if HAVE_GTEST
|
||||
TESTS += run_unittests
|
||||
# (TODO: these need to be completed and moved to tests/)
|
||||
run_unittests_SOURCES = data_unittests.cc session_unittests.cc run_unittests.cc
|
||||
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
# TODO: remove PTHREAD_LDFLAGS (and from configure too)
|
||||
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS) $(PTHREAD_LDFLAGS)
|
||||
|
||||
run_unittests_LDADD = libcc.la $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
31
src/lib/cc/tests/Makefile.am
Normal file
31
src/lib/cc/tests/Makefile.am
Normal file
@ -0,0 +1,31 @@
|
||||
AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/src/lib/dns -I$(top_builddir)/src/lib/dns
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
if USE_GXX #XXX: see ../Makefile.am
|
||||
AM_CXXFLAGS += -Wno-unused-parameter
|
||||
endif
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
if HAVE_GTEST
|
||||
TESTS += run_unittests
|
||||
# (TODO: these need to be completed and moved to tests/)
|
||||
run_unittests_SOURCES = data_unittests.cc session_unittests.cc run_unittests.cc
|
||||
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
# TODO: remove PTHREAD_LDFLAGS (and from configure too)
|
||||
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS) $(PTHREAD_LDFLAGS)
|
||||
|
||||
run_unittests_LDADD = $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/cc/libcc.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
@ -18,7 +18,7 @@
|
||||
#include <boost/foreach.hpp>
|
||||
#include <boost/assign/std/vector.hpp>
|
||||
|
||||
#include <data.h>
|
||||
#include <cc/data.h>
|
||||
|
||||
using namespace isc::data;
|
||||
|
@ -22,10 +22,11 @@
|
||||
#include <asio.hpp>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
#include <session.h>
|
||||
|
||||
#include <exceptions/exceptions.h>
|
||||
|
||||
#include <cc/session.h>
|
||||
|
||||
using namespace isc::cc;
|
||||
|
||||
TEST(AsioSession, establish) {
|
@ -6,6 +6,10 @@ if USE_GXX
|
||||
AM_CXXFLAGS += -Wno-unused-parameter
|
||||
endif
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
lib_LTLIBRARIES = libfake_session.la
|
||||
|
@ -4,6 +4,10 @@ AM_CPPFLAGS += -DTEST_DATA_DIR=\"$(srcdir)/testdata\"
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
@ -22,10 +26,10 @@ run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
||||
run_unittests_LDADD = $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(SQLITE_LIBS)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/datasrc/.libs/libdatasrc.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/cc/.libs/libcc.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/datasrc/libdatasrc.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/cc/libcc.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
@ -3,6 +3,10 @@ AM_CPPFLAGS += -I$(top_srcdir)/src/lib/dns -I$(top_builddir)/src/lib/dns
|
||||
AM_CPPFLAGS += -DTEST_DATA_DIR=\"$(srcdir)/testdata\"
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
@ -40,8 +44,8 @@ run_unittests_SOURCES += run_unittests.cc
|
||||
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
|
||||
run_unittests_LDADD = $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/.libs/libdns++.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/.libs/libexceptions.a
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/dns/libdns++.la
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
@ -1,3 +1,5 @@
|
||||
SUBDIRS = . tests
|
||||
|
||||
AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
|
||||
AM_CXXFLAGS=$(B10_CXXFLAGS)
|
||||
|
||||
@ -6,17 +8,5 @@ libexceptions_la_SOURCES = exceptions.h exceptions.cc
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
if HAVE_GTEST
|
||||
TESTS += run_unittests
|
||||
run_unittests_SOURCES = run_unittests.cc
|
||||
run_unittests_SOURCES += exceptions_unittest.cc
|
||||
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
run_unittests_LDFLAGS = $(GTEST_LDFLAGS)
|
||||
run_unittests_LDADD = .libs/libexceptions.a $(GTEST_LDADD)
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
||||
libexceptions_includedir = $(includedir)/exceptions
|
||||
libexceptions_include_HEADERS = exceptions.h
|
||||
|
23
src/lib/exceptions/tests/Makefile.am
Normal file
23
src/lib/exceptions/tests/Makefile.am
Normal file
@ -0,0 +1,23 @@
|
||||
AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/src/lib/dns -I$(top_builddir)/src/lib/dns
|
||||
|
||||
AM_CXXFLAGS = $(B10_CXXFLAGS)
|
||||
|
||||
if USE_STATIC_LINK
|
||||
AM_LDFLAGS = -static
|
||||
endif
|
||||
|
||||
CLEANFILES = *.gcno *.gcda
|
||||
|
||||
TESTS =
|
||||
if HAVE_GTEST
|
||||
TESTS += run_unittests
|
||||
run_unittests_SOURCES = run_unittests.cc
|
||||
run_unittests_SOURCES += exceptions_unittest.cc
|
||||
run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
|
||||
run_unittests_LDFLAGS = $(GTEST_LDFLAGS)
|
||||
run_unittests_LDADD = $(GTEST_LDADD)
|
||||
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libexceptions.la
|
||||
endif
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
Loading…
x
Reference in New Issue
Block a user