tags 615761 patch
thanks

Hello,

Attached is the patch which was used in Ubuntu to fix the problem.
https://launchpad.net/ubuntu/+source/pathfinder/1.1.3-0.3ubuntu1

Description: Hack the build system to pass libraries after object files by
 adding parameters to TARGET_LINK_LIBRARIES. This fixes FTBFS with
 --no-add-needed and --as-needed linker options. Many of the parameters are
 passed twice now, a cleanup is in order.
Author: Ilya Barygin <bary...@gmail.com>
Bug-Debian: http://bugs.debian.org/756132
Bug-Ubuntu: https://launchpad.net/bugs/615761
--- pathfinder-1.1.3.orig/CMakeLists.txt	2011-08-20 21:01:25.000000000 +0400
+++ pathfinder-1.1.3/CMakeLists.txt	2011-08-20 21:02:06.000000000 +0400
@@ -2,10 +2,18 @@
 find_package(PkgConfig)
 cmake_minimum_required(VERSION 2.5)
 
+if(COMMAND cmake_policy)
+  cmake_policy(SET CMP0003 NEW)
+endif(COMMAND cmake_policy)
+
 PROJECT(PATHFINDER)
 SET(PACKAGE_VERSION 1.1.3)
 
 pkg_check_modules(UNICONF libuniconf)
+pkg_check_modules(NSS nss)
+pkg_check_modules(DBUS dbus-1)
+pkg_check_modules(OPENSSL openssl)
+pkg_check_modules(WVDBUS libwvdbus)
 
 #PKGCONFIG(libuniconf UNICONF_INCLUDEDIR UNICONF_LIBDIR UNICONF_LINKFLAGS UNICONF_CFLAGS)
 PKGCONFIG(libwvdbus WVDBUS_INCLUDEDIR WVDBUS_LIBDIR WVDBUS_LINKFLAGS WVDBUS_CFLAGS)
@@ -76,17 +84,17 @@
 		      PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS}")
 
 ADD_EXECUTABLE(pathverify pathverify.cc)
-TARGET_LINK_LIBRARIES(pathverify pathology x509path)
+TARGET_LINK_LIBRARIES(pathverify pathology x509path ${WVDBUS_LIBRARIES} ${OPENSSL_LIBRARIES} ${LDAP_LIBS})
 SET_TARGET_PROPERTIES(pathverify 
 		      PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS}" LINK_FLAGS "${EXTRA_LINKFLAGS}")
 
 ADD_EXECUTABLE(pathfinderd pathfinderd.cc)
-TARGET_LINK_LIBRARIES(pathfinderd pathology x509path)
+TARGET_LINK_LIBRARIES(pathfinderd pathology x509path ${WVDBUS_LIBRARIES} ${OPENSSL_LIBRARIES} ${LDAP_LIBS})
 SET_TARGET_PROPERTIES(pathfinderd
 		      PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS}" LINK_FLAGS "${EXTRA_LINKFLAGS}")
 
 ADD_EXECUTABLE(pathclient pathclient.cc util.cc)
-TARGET_LINK_LIBRARIES(pathclient)
+TARGET_LINK_LIBRARIES(pathclient ${WVDBUS_LIBRARIES} ${OPENSSL_LIBRARIES})
 SET_TARGET_PROPERTIES(pathclient
 		      PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS}" LINK_FLAGS "${EXTRA_LINKFLAGS}")
 
@@ -99,13 +107,13 @@
 INSTALL(FILES README AUTHORS LICENSE pathfinderd.ini.sample DESTINATION share/doc/pathfinder)
 
 ADD_EXECUTABLE(openssltest openssltest.cc)
-TARGET_LINK_LIBRARIES(openssltest pathfinder-openssl-1)
+TARGET_LINK_LIBRARIES(openssltest pathfinder-openssl-1 ${OPENSSL_LIBRARIES} ${DBUS_LIBRARIES})
 SET_TARGET_PROPERTIES(openssltest 
 		      PROPERTIES COMPILE_FLAGS "${DBUS_CFLAGS} ${EXTRA_CFLAGS}" LINK_FLAGS "${OPENSSL_LINKFLAGS} ${DBUS_LINKFLAGS}")
 
 IF(NSS_CFLAGS)
 ADD_EXECUTABLE(nsstest nsstest.cc)
-TARGET_LINK_LIBRARIES(nsstest pathfinder-nss-1)
+TARGET_LINK_LIBRARIES(nsstest pathfinder-nss-1 ${NSS_LIBRARIES} ${DBUS_LIBRARIES})
 SET_TARGET_PROPERTIES(nsstest
 		      PROPERTIES COMPILE_FLAGS "${DBUS_CFLAGS} ${NSS_CFLAGS}" LINK_FLAGS "${DBUS_LINKFLAGS} ${NSS_LINKFLAGS}")
 ENDIF(NSS_CFLAGS)
--- pathfinder-1.1.3.orig/libpathfinder/CMakeLists.txt	2011-08-20 21:01:47.000000000 +0400
+++ pathfinder-1.1.3/libpathfinder/CMakeLists.txt	2011-08-20 21:02:06.000000000 +0400
@@ -8,7 +8,7 @@
 
 IF (NSS_CFLAGS)
 SET(LIBPATHFINDER_NSS_CFLAGS "${DBUS_CFLAGS} ${NSS_CFLAGS}")
-
+TARGET_LINK_LIBRARIES(pathfinder-nss-1 ${DBUS_LIBRARIES})
 SET_TARGET_PROPERTIES(pathfinder-nss-1 PROPERTIES COMPILE_FLAGS "${LIBPATHFINDER_NSS_CFLAGS}")
 SET_TARGET_PROPERTIES(pathfinder-nss-1 PROPERTIES VERSION 1.0.0 SOVERSION 1 )
 SET_TARGET_PROPERTIES(pathfinder-nss-1 PROPERTIES CLEAN_DIRECT_OUTPUT 1)
@@ -19,7 +19,7 @@
 ENDIF(NSS_CFLAGS)
 
 SET(LIBPATHFINDER_OPENSSL_CFLAGS "${DBUS_CFLAGS} ${OPENSSL_CFLAGS}")
-
+TARGET_LINK_LIBRARIES(pathfinder-openssl-1 ${DBUS_LIBRARIES})
 SET_TARGET_PROPERTIES(pathfinder-openssl-1 PROPERTIES COMPILE_FLAGS "${LIBPATHFINDER_OPENSSL_CFLAGS}")
 SET_TARGET_PROPERTIES(pathfinder-openssl-1 PROPERTIES VERSION 1.0.0 SOVERSION 1 )
 SET_TARGET_PROPERTIES(pathfinder-openssl-1 PROPERTIES CLEAN_DIRECT_OUTPUT 1)
--- pathfinder-1.1.3.orig/t/CMakeLists.txt	2011-08-20 21:01:47.000000000 +0400
+++ pathfinder-1.1.3/t/CMakeLists.txt	2011-08-20 21:02:06.000000000 +0400
@@ -5,7 +5,7 @@
   requireexplicitpolicy.t.cc policymapping.t.cc inhibitpolicymapping.t.cc 
   basicconstraints.t.cc crldistpoint.t.cc wvcrlcache.t.cc pathvalidator.t.cc
   revocationfinder.t.cc pathfinder.t.cc wvx509path.t.cc util.t.cc)
-TARGET_LINK_LIBRARIES(all.t pathology x509path)
+TARGET_LINK_LIBRARIES(all.t pathology x509path ${WVDBUS_LIBRARIES} ${OPENSSL_LIBRARIES} ${LDAP_LIBS})
 
 SET_TARGET_PROPERTIES(all.t 
   PROPERTIES COMPILE_FLAGS "${WVDBUS_CFLAGS} ${WVTEST_CFLAGS} ${EXTRA_CFLAGS}"

Reply via email to