You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2014/08/26 23:22:10 UTC

svn commit: r1620738 - /qpid/trunk/qpid/cpp/bindings/CMakeLists.txt

Author: aconway
Date: Tue Aug 26 21:22:10 2014
New Revision: 1620738

URL: http://svn.apache.org/r1620738
Log:
Revert "NO-JIRA: Work-around bug in older cmake, finds static python library instead of shared."

This patch seems to cause various build problems, will put it back when I figure
out what is going wrong.

------------------------------------------------------------------------
r1620424 | aconway | 2014-08-25 16:10:52 -0400 (Mon, 25 Aug 2014) | 13 lines

NO-JIRA: Work-around bug in older cmake, finds static python library instead of shared.

FindPythonLibs on older versions of cmake (observed on cmake-2.6.4-5.el5.4)
sometimes finds the static archive library (.a) before the shared object
library (.so) This is almost never what you want. Newer
versions (e.g. cmake-2.8.12.2-2.fc20.x86_64) explicitly look for the .so first
and look for the .a library second.

This workaround fixes the problem as follows:
- It is a no-op except on Unix platforms that use the .so prefix.
- On those platforms it does a search for .so only first.
- Finally we do a default search for other platforms (or if .so was not found)

------------------------------------------------------------------------

Modified:
    qpid/trunk/qpid/cpp/bindings/CMakeLists.txt

Modified: qpid/trunk/qpid/cpp/bindings/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/CMakeLists.txt?rev=1620738&r1=1620737&r2=1620738&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/bindings/CMakeLists.txt Tue Aug 26 21:22:10 2014
@@ -17,32 +17,14 @@
 # under the License.
 #
 
-# Work-around for bug in older versions of cmake where find_package(PythonLib)
-# finds the static .a library before the the dynamic .so one on Unix.
-# Force search for .so first (this is exactly what newer versions of cmake do.)
-#
-function(find_python_libs)
-  # Only do this on unix-like systems that use the .so library suffix.
-  if(UNIX AND CMAKE_FIND_LIBRARY_SUFFIXES MATCHES "\\.so")
-    set(SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) # Save the suffixes.
-    # Look just for shared libraries.
-    set(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
-    find_package(PythonLibs)
-    # Restore the suffixes
-    set(CMAKE_FIND_LIBRARY_SUFFIXES ${SUFFIXES})
-  endif()
-  # Run a regular search in case we're not on unix or the .so search didn't find
-  # anything. This will be a no-op if we did already find the library.
-  find_package(PythonLibs)
-endfunction(find_python_libs)
-
 
 find_package(SWIG)
+
 if (SWIG_FOUND)
 
   include(UseSWIG)
   find_package(Ruby)
-  find_python_libs()
+  find_package(PythonLibs)
   find_package(PerlLibs)
 
   if ((${CMAKE_MAJOR_VERSION} EQUAL 2) AND (${CMAKE_MINOR_VERSION} LESS 8))



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org