diff --git a/CMakeLists.txt b/CMakeLists.txt index bde608eaaffe7c0265ad89d6c33a4997ccff52c8..7ed51dcdaa50cab382733ef20d0a911e1e0e4de4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -901,6 +901,22 @@ elseif(MSVC) set_target_properties(gmsh PROPERTIES LINK_FLAGS "/STACK:16777216") endif(WIN32 AND NOT MSVC) +if(ENABLE_SWIG) + find_package(SWIG REQUIRED) + message(STATUS "Found SWIG version " ${SWIG_VERSION}) + string(SUBSTRING ${SWIG_VERSION} 0 1 SWIG_MAJOR_VERSION) + if(SWIG_MAJOR_VERSION EQUAL 1) + message("WARNING: Python bindings require SWIG >= 2: disabling Python") + else(SWIG_MAJOR_VERSION EQUAL 1) + include(${SWIG_USE_FILE}) + find_package(PythonLibs) + include_directories(${PYTHON_INCLUDE_DIR}) + set_source_files_properties(Common/gmshpy.i PROPERTIES CPLUSPLUS ON) + swig_add_module(gmshpy python Common/gmshpy.i) + swig_link_libraries(gmshpy ${PYTHON_LIBRARIES} ${EXTERNAL_LIBRARIES} ${LINK_LIBRARIES} shared) + endif(SWIG_MAJOR_VERSION EQUAL 1) +endif(ENABLE_SWIG) + find_program(BISON bison) find_program(FLEX flex) if(BISON AND FLEX) @@ -1131,12 +1147,3 @@ mark_as_advanced(BISON FLEX GMP_LIB GMSH_EXTRA_VERSION HDF5_LIB MAKEINFO MED_LIB OCC_INC SZ_LIB TAUCS_LIB LUA_LIB ACIS_LIB TEXI2PDF READLINE_LIB) -if(ENABLE_SWIG) - FIND_PACKAGE(SWIG REQUIRED) - INCLUDE(${SWIG_USE_FILE}) - FIND_PACKAGE(PythonLibs) - INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIR}) - SET_SOURCE_FILES_PROPERTIES(Common/gmshpy.i PROPERTIES CPLUSPLUS ON) - SWIG_ADD_MODULE(gmshpy python Common/gmshpy.i) - SWIG_LINK_LIBRARIES(gmshpy ${PYTHON_LIBRARIES} ${EXTERNAL_LIBRARIES} ${LINK_LIBRARIES} shared) -endif(ENABLE_SWIG)