diff --git a/HySoP/CMakeLists.txt b/HySoP/CMakeLists.txt index c79770845879d1e2d481f6874a3f34569deef679..b98a6d94ffa9d6185502694eaca00b22b959e5c9 100644 --- a/HySoP/CMakeLists.txt +++ b/HySoP/CMakeLists.txt @@ -104,9 +104,9 @@ set(PROJECT_LIBRARY_NAME ${PROJECT_NAME}) # - ${PROJECT_NAME}_SOURCE_DIR : where sources (.f and .h and this CMakeLists.txt) are located # Note that because of OutOfSourceBuild, binary_dir and source_dir must be different. -set(LANGLIST C) +set(LANGLIST) if(WITH_LIB_CXX) - set(LANGLIST ${LANGLIST} CXX) + set(LANGLIST ${LANGLIST} C CXX) endif() if(WITH_LIB_FORTRAN) set(LANGLIST ${LANGLIST} Fortran) @@ -242,24 +242,24 @@ if(WITH_COMPILED_LIB) #DEFINITION FORTRAN_INCLUDE_DIRS) endif() - -#C++ variables used by setup.py.in for swig -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W -Wall -Wextra -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-parameter ${FFTW_COMPILE_FLAGS} -fPIC -std=c++11") -set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") -set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") - -set(CXX_FLAGS "${CMAKE_CXX_FLAGS}") -set(CXX_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") -set(CXX_EXT_INCLUDES ${PYTHON_INCLUDE_DIR} ${FFTW_INCLUDE_DIRS}) -set(CXX_EXT_LIBS ${PYTHON_LIBRARIES} ${FFTW_LIBRARIES}) -set(CXX_EXT_LIB_DIRS ${FFTW_LIBRARY_DIRS}) -set(CXX_EXTRA_DEFINES ${FFTW_DEFINES} -DHAS_EXTERN_TEMPLATES) - -#swig package name (lib name generated by swig) -set(CPP_2_HYSOP "cpp2hysop") - +if(WITH_LIB_CXX) + #C++ variables used by setup.py.in for swig + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W -Wall -Wextra -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-parameter ${FFTW_COMPILE_FLAGS} -fPIC -std=c++11") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}") + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") + + set(CXX_FLAGS "${CMAKE_CXX_FLAGS}") + set(CXX_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") + set(CXX_EXT_INCLUDES ${PYTHON_INCLUDE_DIR} ${FFTW_INCLUDE_DIRS}) + set(CXX_EXT_LIBS ${PYTHON_LIBRARIES} ${FFTW_LIBRARIES}) + set(CXX_EXT_LIB_DIRS ${FFTW_LIBRARY_DIRS}) + set(CXX_EXTRA_DEFINES ${FFTW_DEFINES} -DHAS_EXTERN_TEMPLATES) + + #swig package name (lib name generated by swig) + set(CPP_2_HYSOP "cpp2hysop") +endif() # ====== Generates python files required for build/install process ====== # The file setup.py will be generated from setup.py.in. if(EXISTS ${CMAKE_SOURCE_DIR}/setup.py.in) diff --git a/HySoP/setup.py.in b/HySoP/setup.py.in index b68a69ce7d1f314b4fc81bfd82a63b9fdc6584f4..c5ce7c57465a4944d8ea6623189353108bba0d72 100644 --- a/HySoP/setup.py.in +++ b/HySoP/setup.py.in @@ -266,7 +266,7 @@ else: # --- C++ files and swig interface -- enable_cpp = "@WITH_LIB_CXX@" -if enable_cpp: +if enable_cpp is "ON": # path to .i files swig_include_dirs = [os.path.join('@CMAKE_SOURCE_DIR@','swig')] diff --git a/HySoP/src/CMakeLists.txt b/HySoP/src/CMakeLists.txt index 9d70b0d58211d8dd310d064c892632f8c7fa6c3f..3fb7e14f8e3738c51f3380d49a9aba54be61158d 100644 --- a/HySoP/src/CMakeLists.txt +++ b/HySoP/src/CMakeLists.txt @@ -132,8 +132,9 @@ include_directories(${CMAKE_Fortran_MODULE_DIRECTORY}) #FortranCInterface_HEADER(${CMAKE_Fortran_MODULE_DIRECTORY}/F2CMangle.hpp # MACRO_NAMESPACE "F2C_" # SYMBOL_NAMESPACE "F2C_") - +message("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA") # static library +display(${HYSOP_LIBRARY_NAME}_SRC) add_library(${HYSOP_LIBRARY_NAME} STATIC ${${HYSOP_LIBRARY_NAME}_SRC}) target_link_libraries(${HYSOP_LIBRARY_NAME} ${LIBS})