|
From: <ai...@us...> - 2011-11-24 21:33:59
|
Revision: 12041
http://plplot.svn.sourceforge.net/plplot/?rev=12041&view=rev
Author: airwin
Date: 2011-11-24 21:33:53 +0000 (Thu, 24 Nov 2011)
Log Message:
-----------
Implement NON_TRANSITIVE case for the Ada bindings. When obvious
false positives were discounted, ldd -u showed perfect results for the
Ada examples in both the build tree and "traditional" installed
examples tree (that was built and tested with make and pkg-config).
Build and run tests in the build tree and traditional installed
examples tree produced results without obvious errors on Debian
stable. However, the latest Linux distributions such as Fedora or
Debian unstable have a linker that enforces linking rules much more
stringently than Debian stable so additional tests (and likely some
fixes) are required before -DNON_TRANSITIVE=ON will work for Ada
on those platforms.
Modified Paths:
--------------
trunk/bindings/ada/CMakeLists.txt
Modified: trunk/bindings/ada/CMakeLists.txt
===================================================================
--- trunk/bindings/ada/CMakeLists.txt 2011-11-24 21:17:46 UTC (rev 12040)
+++ trunk/bindings/ada/CMakeLists.txt 2011-11-24 21:33:53 UTC (rev 12041)
@@ -56,6 +56,17 @@
add_library(plplotada${LIB_TAG} ${plplotada${LIB_TAG}_LIB_SRCS})
+ if(NON_TRANSITIVE)
+ # empty list ==> non-transitive linking for everything that links to
+ # libplplotadad in the shared libraries case.
+ target_link_libraries(plplotada${LIB_TAG} LINK_INTERFACE_LIBRARIES)
+ # This configures the pkg-config method to use non-transitive linking.
+ set(PC_REQUIRES_TAG "Requires.private")
+ else(NON_TRANSITIVE)
+ # This configures the pkg-config method to use transitive linking
+ set(PC_REQUIRES_TAG "Requires")
+ endif(NON_TRANSITIVE)
+
# Work around an issue in our CMake Ada language
# support for MinGW/Windows. FIXME. This issue should be fixed
# at the Ada language support level and not worked around here.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|