Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 74b33537 authored by ESTERIE Pierre's avatar ESTERIE Pierre
Browse files

Force Static and fix flags

parent 9029ad36
No related branches found
No related tags found
No related merge requests found
......@@ -35,7 +35,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/)
# -----------------
list(APPEND SCALFMM_SOURCES FAlgorithmTimers.cpp FLog.cpp FMemStats.cpp FSignalHandler.cpp)
list(TRANSFORM SCALFMM_SOURCES PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/src/")
add_library(${CMAKE_PROJECT_NAME} SHARED ${SCALFMM_SOURCES})
add_library(${CMAKE_PROJECT_NAME} STATIC ${SCALFMM_SOURCES})
# Set library includes
# --------------------
target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC
......@@ -55,11 +55,11 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_cmake/modules)
set(MORSE_CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_cmake/modules )
endif()
include(MorseInit)
# Set the RPATH config
# These options allow all installed executables to run correctly
# These options allow all installed executables to run correctly
# when installed to the install diretory
# --------------------
# use, i.e. don't skip the full RPATH for the build tree
......@@ -93,19 +93,19 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
option( SCALFMM_BUILD_UTILS "Set to ON to build utils Tests" OFF )
option( SCALFMM_BUILD_DOC "Set to ON to build the Doxygen documentation " OFF )
# Cmake options to install additional content
# Cmake options to install additional content
option( SCALFMM_INSTALL_DATA "Set to ON to include the data when proceeding to the installtion " OFF )
# Cmake options related to trace, logging and statistics
option( SCALFMM_USE_LOG "Set to ON to print output debug information" OFF )
option( SCALFMM_USE_MEM_STATS "Set to ON to profile memory" OFF )
option( SCALFMM_USE_ASSERT "Set to ON to enable safe tests during execution" ON )
option( SCALFMM_ONLY_DEVEL "Set to ON to compile Development tools (only scalfmm team)" OFF )
# Cmake options related to the targeted architecture
option( SCALFMM_USE_MIC_NATIVE "Set to ON to compile in native mode for MIC" OFF )
#
# Set scalfmm global lists
......@@ -132,7 +132,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
message(WARNING "OPENMP NOT FOUND")
endif(OpenMP_CXX_FOUND)
endif(NOT OpenMP_CXX_FOUND)
#
# Inastemp
# --------
......@@ -143,9 +143,9 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
set(INASTEMP_JUST_LIB TRUE)
set(INASTEMP_DO_INSTALL TRUE)
# Create target
add_subdirectory(inastemp)
add_subdirectory(inastemp)
add_library(inastemp INTERFACE)
target_include_directories(inastemp INTERFACE
target_include_directories(inastemp INTERFACE
$<BUILD_INTERFACE:${INASTEMP_SOURCE_DIR}/Src>
$<BUILD_INTERFACE:${INASTEMP_BINARY_DIR}/Src>
$<INSTALL_INTERFACE:include>
......@@ -311,13 +311,13 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
endif()
endif(SCALFMM_USE_BLAS)
#
# FFT options
# -----------
CMAKE_DEPENDENT_OPTION(SCALFMM_USE_MKL_AS_FFTW "Set to ON to use MKL FFTW" ON "SCALFMM_USE_FFT;SCALFMM_USE_MKL_AS_BLAS" OFF )
CMAKE_DEPENDENT_OPTION(SCALFMM_USE_ESSL_AS_FFTW "Set to ON to use ESSL FFTW" ON "SCALFMM_USE_FFT;SCALFMM_USE_ESSL_AS_BLAS" OFF )
if(SCALFMM_USE_FFT)
message(STATUS "SCALFMM USE FFT Configure:")
......@@ -360,8 +360,8 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
#
# C++ 2014
# --------
target_compile_features(${CMAKE_PROJECT_NAME} INTERFACE cxx_std_14)
target_compile_features(${CMAKE_PROJECT_NAME} INTERFACE cxx_std_14)
#
# Additional flags for the library
# --------------------------------
......@@ -480,7 +480,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
# endif(SCALFMM_USE_STARPU)
# list(APPEND FUSE_LIST "STARPU")
# # Additional options for developers
# # Additional options for developers
# if( SCALFMM_ONLY_DEVEL )
# if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
# option( SCALFMM_USE_OMP4 "Set to ON to disable the gcc/intel omp4" OFF )
......@@ -514,7 +514,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
message(STATUS "ScalFMM final flags : ${SCALFMM_CXX_FLAGS}")
# And adding flags to target
# --------------------------
target_compile_options(${CMAKE_PROJECT_NAME} PRIVATE "${SCALFMM_CXX_FLAGS}")
target_compile_options(${CMAKE_PROJECT_NAME} PUBLIC "${SCALFMM_CXX_FLAGS}")
#
# Set ScalFMM dependencies
......@@ -522,7 +522,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
string(REPLACE ";" " " SCALFMM_COMPILE_LIBS "${SCALFMM_LIBRARIES}")
set(SCALFMM_LIBRARIES "${SCALFMM_LIBRARIES}" CACHE STRING "ScalFMM libraries dependencies")
message(STATUS "ScalFMM dependencies : ${SCALFMM_LIBRARIES}")
# #
# # Set ScalFMM link flags
# # ----------------------
......@@ -548,7 +548,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
# ------------------------
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/include/ScalFmmConfig.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/include/ScalFmmConfig.h)
#
# Static analysis during build
# ----------------------------
......@@ -568,7 +568,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
)
message(STATUS "CPPCHECK analysis is ON.")
endif()
find_program(CLANGTIDY "clang-tidy")
if (CLANGTIDY)
set(CMAKE_CXX_CLANG_TIDY "${CLANGTIDY};-checks=-*,boost-*,cppcoreguidelines-*,clang-analyser-cplusplus*,modernize-*,mpi-*,performance-*,portability-*,readability-*")
......@@ -598,7 +598,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
if( SCALFMM_ONLY_DEVEL AND SCALFMM_BUILD_UTILS)
add_subdirectory(Utils)
endif()
#
# Build Tests to see examples
# ----------------------------
......@@ -625,16 +625,16 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
if(SCALFMM_BUILD_DOC)
add_subdirectory(Doc)
endif()
#
# Export Library
# --------------
install(TARGETS ${CMAKE_PROJECT_NAME} inastemp
install(TARGETS ${CMAKE_PROJECT_NAME} inastemp
EXPORT ${CMAKE_PROJECT_NAME}-targets
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin)
install(DIRECTORY ${${CMAKE_PROJECT_NAME}_SOURCE_DIR}/include
DESTINATION ${CMAKE_INSTALL_PREFIX}
PATTERN "ScalFmmConfig.h.cmake" EXCLUDE)
......@@ -669,7 +669,7 @@ if(MORSE_DISTRIB_DIR OR EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules/morse_c
# --------------------------------------
# See CPackConfig.cmake for the details.
include(CPack)
#
# Print configure status
# ----------------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment