[cmake-commits] alex committed FindPythonLibs.cmake 1.33 1.34

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Jul 25 15:08:39 EDT 2007


Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv22381/Modules

Modified Files:
	FindPythonLibs.cmake 
Log Message:

COMP: same as in VTK, build modules by default as shared if the platform
supports this, don't include shared modules in the generated header

Alex


Index: FindPythonLibs.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindPythonLibs.cmake,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -d -r1.33 -r1.34
--- FindPythonLibs.cmake	23 Jul 2007 13:49:52 -0000	1.33
+++ FindPythonLibs.cmake	25 Jul 2007 19:08:37 -0000	1.34
@@ -93,17 +93,19 @@
   SET(PY_MODULES_LIST        "" CACHE STRING "Collect a list of all added python modules" FORCE)
 ENDIF(NOT _FIND_PYTHONLIBS_ALREADY_INCLUDED)
 
+GET_PROPERTY(_TARGET_SUPPORTS_SHARED_LIBS GLOBAL TARGET_SUPPORTS_SHARED_LIBS)
+
 MACRO(PYTHON_ADD_MODULE _NAME )
   OPTION(PYTHON_ENABLE_MODULE_${_NAME} "Add module ${_NAME}" TRUE)
+  OPTION(PYTHON_MODULE_${_NAME}_BUILD_SHARED "Add module ${_NAME} shared" ${_TARGET_SUPPORTS_SHARED_LIBS})
 
   IF(PYTHON_ENABLE_MODULE_${_NAME})
-    OPTION(PYTHON_MODULE_${_NAME}_SHARED "Add module ${_NAME} shared" FALSE)
-    IF(PYTHON_MODULE_${_NAME}_SHARED)
+    IF(PYTHON_MODULE_${_NAME}_BUILD_SHARED)
       SET(PY_MODULE_TYPE MODULE)
-    ELSE(PYTHON_MODULE_${_NAME}_SHARED)
+    ELSE(PYTHON_MODULE_${_NAME}_BUILD_SHARED)
       SET(PY_MODULE_TYPE STATIC)
       SET(PY_STATIC_MODULES_LIST  ${PY_STATIC_MODULES_LIST} ${_NAME} CACHE STRING "Collect a list of all added static python modules" FORCE)
-    ENDIF(PYTHON_MODULE_${_NAME}_SHARED)
+    ENDIF(PYTHON_MODULE_${_NAME}_BUILD_SHARED)
 
     SET(PY_MODULES_LIST  ${PY_MODULES_LIST} ${_NAME} CACHE STRING "Collect a list of all added python modules" FORCE)
     ADD_LIBRARY(${_NAME} ${PY_MODULE_TYPE} ${ARGN})
@@ -120,13 +122,13 @@
   FILE(APPEND ${_filename} "#define ${_name}\n\n")
   FILE(APPEND ${_filename} "#include <Python.h>\n\n")
 
-  FOREACH(_currentModule ${PY_MODULES_LIST})
+  FOREACH(_currentModule ${PY_STATIC_MODULES_LIST})
     FILE(APPEND ${_filename} "extern void init${_currentModule}(void);\n\n")
-  ENDFOREACH(_currentModule ${PY_MODULES_LIST})
+  ENDFOREACH(_currentModule ${PY_STATIC_MODULES_LIST})
 
-  FOREACH(_currentModule ${PY_MODULES_LIST})
+  FOREACH(_currentModule ${PY_STATIC_MODULES_LIST})
     FILE(APPEND ${_filename} "int CMakeLoadPythonModule_${_currentModule}(void) \n{\n  return PyImport_AppendInittab(\"${_currentModule}\", init${_currentModule});\n}\n\n")
-  ENDFOREACH(_currentModule ${PY_MODULES_LIST})
+  ENDFOREACH(_currentModule ${PY_STATIC_MODULES_LIST})
 
   FILE(APPEND ${_filename} "#ifndef EXCLUDE_LOAD_ALL_FUNCTION\nvoid CMakeLoadAllPythonModules(void)\n{\n")
   FOREACH(_currentModule ${PY_STATIC_MODULES_LIST})



More information about the Cmake-commits mailing list