From: Gerd von Egidy Date: Sun, 14 Mar 2010 21:01:17 +0000 (+0100) Subject: Don't indirectly link dependent libraries. X-Git-Tag: 4.4.0~204 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=454faa47de3c804be66c0c8b1810344f492b0b4c;p=thirdparty%2Fstrongswan.git Don't indirectly link dependent libraries. The default behaviour for ld allows users to 'indirectly' link to required objects/libraries through intermediate objects/libraries. While this is convenient, it can also be dangerous because it makes your program's dependencies tied to the dependencies of other objects. Beginning with Fedora 13 this will be changed and you need to explicitly link all dependent libraries. More details can be found here: http://fedoraproject.org/wiki/UnderstandingDSOLinkChange This patch fixes all such cases in strongSwan. --- diff --git a/src/checksum/Makefile.am b/src/checksum/Makefile.am index 4533eb8638..aaa60b4d49 100644 --- a/src/checksum/Makefile.am +++ b/src/checksum/Makefile.am @@ -5,7 +5,7 @@ nodist_libchecksum_la_SOURCES = checksum.c libchecksum_la_LDFLAGS = -module -avoid-version checksum_builder_SOURCES = checksum_builder.c -checksum_builder_LDADD = $(top_builddir)/src/libstrongswan/libstrongswan.la +checksum_builder_LDADD = $(top_builddir)/src/libstrongswan/libstrongswan.la $(DLLIB) BUILT_SOURCES = checksum.c CLEANFILES = checksum.c diff --git a/src/manager/Makefile.am b/src/manager/Makefile.am index e6c31e9b48..98e50d8d21 100644 --- a/src/manager/Makefile.am +++ b/src/manager/Makefile.am @@ -10,7 +10,7 @@ controller/control_controller.c controller/control_controller.h \ controller/config_controller.c controller/config_controller.h \ controller/gateway_controller.c controller/gateway_controller.h -manager_fcgi_LDADD = $(top_builddir)/src/libfast/libfast.la ${xml_LIBS} +manager_fcgi_LDADD = $(top_builddir)/src/libstrongswan/libstrongswan.la $(top_builddir)/src/libfast/libfast.la ${xml_LIBS} INCLUDES = -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/libfast ${xml_CFLAGS} AM_CFLAGS = -rdynamic \ diff --git a/src/medsrv/Makefile.am b/src/medsrv/Makefile.am index 9f5c9e2f75..0700c05025 100644 --- a/src/medsrv/Makefile.am +++ b/src/medsrv/Makefile.am @@ -7,7 +7,7 @@ main.c filter/auth_filter.c filter/auth_filter.h \ controller/user_controller.c controller/user_controller.h \ controller/peer_controller.c controller/peer_controller.h -medsrv_fcgi_LDADD = $(top_builddir)/src/libfast/libfast.la +medsrv_fcgi_LDADD = $(top_srcdir)/src/libstrongswan/libstrongswan.la $(top_builddir)/src/libfast/libfast.la INCLUDES = -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/libfast AM_CFLAGS = -rdynamic \