##// END OF EJS Templates
The data of the variable is now requested with the new provided...
The data of the variable is now requested with the new provided parameters

File last commit:

r257:40b3607afb8e
r305:88a58e69d383
Show More
CMakeLists.txt
169 lines | 6.1 KiB | text/plain | TextLexer
Initialisation de l'application multithread avec le spimpl....
r21
## gui - CMakeLists.txt
STRING(TOLOWER ${CMAKE_PROJECT_NAME} LIBRARY_PREFFIX)
SET(SQPGUI_LIBRARY_NAME "${LIBRARY_PREFFIX}_gui${DEBUG_SUFFIX}")
SET(SOURCES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
SET(INCLUDES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include")
SET(UI_FOLDER "${CMAKE_CURRENT_SOURCE_DIR}/ui")
SET(RES_FOLDER "${CMAKE_CURRENT_SOURCE_DIR}/resources")
# Include gui directory
include_directories("${INCLUDES_DIR}")
include_directories("${CMAKE_CURRENT_BINARY_DIR}")
# Set a variable to display a warning in the version files.
SET(SCIQLOP_CMAKE_GENERATION_WARNING "DON'T CHANGE THIS FILE. AUTOGENERATED BY CMAKE.")
#
# Find Qt modules
#
add qcustomplot
r59 SCIQLOP_FIND_QT(Core Widgets PrintSupport)
Initialisation de l'application multithread avec le spimpl....
r21
#
# Find dependent libraries
# ========================
find_package(sciqlop-core)
SET(LIBRARIES ${SCIQLOP-CORE_LIBRARIES})
INCLUDE_DIRECTORIES(${SCIQLOP-CORE_INCLUDE_DIR})
# Add sqpcore to the list of libraries to use
list(APPEND LIBRARIES ${SQPCORE_LIBRARY_NAME})
# Add dependent shared libraries
list(APPEND SHARED_LIBRARIES ${SQPCORE_SHARED_LIBRARIES})
# Ui files
FILE (GLOB_RECURSE PROJECT_FORMS ${UI_FOLDER}/*.ui)
# Resources files
FILE (GLOB_RECURSE PROJECT_RESOURCES ${RES_FOLDER}/*.qrc)
#
# Compile the library library
#
FILE (GLOB_RECURSE MODULE_SOURCES
${INCLUDES_DIR}/*.h
${SOURCES_DIR}/*.c
${SOURCES_DIR}/*.cpp
${SOURCES_DIR}/*.h
${PROJECT_FORMS})
QT5_ADD_RESOURCES(RCC_HDRS
${PROJECT_RESOURCES}
)
QT5_WRAP_UI(UIS_HDRS
${PROJECT_FORMS}
)
ADD_LIBRARY(${SQPGUI_LIBRARY_NAME} ${MODULE_SOURCES} ${UIS_HDRS} ${RCC_HDRS})
set_property(TARGET ${SQPGUI_LIBRARY_NAME} PROPERTY CXX_STANDARD 14)
set_property(TARGET ${SQPGUI_LIBRARY_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
TARGET_LINK_LIBRARIES(${SQPGUI_LIBRARY_NAME} ${LIBRARIES})
add qcustomplot
r59 qt5_use_modules(${SQPGUI_LIBRARY_NAME} Core Widgets PrintSupport)
Initialisation de l'application multithread avec le spimpl....
r21
Configuration update to permit make install on linux
r257
INSTALL(TARGETS ${SQPGUI_LIBRARY_NAME}
RUNTIME DESTINATION ${INSTALL_BINARY_DIR}
LIBRARY DESTINATION ${INSTALL_LIBRARY_DIR}
ARCHIVE DESTINATION ${INSTALL_LIBRARY_DIR}
)
Add dependencies between target to avoid bug compilation when building...
r104 add_dependencies(${SQPGUI_LIBRARY_NAME} ${SQPCORE_LIBRARY_NAME})
Initialisation de l'application multithread avec le spimpl....
r21 # From cmake documentation: http://www.cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html
# Entries in the COMPILE_DEFINITIONS are prefixed with -D or /D and added to the compile line in an unspecified order.
# The DEFINE_SYMBOL target property is also added as a compile definition as a special convenience case for SHARED and MODULE library targets
IF(BUILD_SHARED_LIBS)
SET_TARGET_PROPERTIES(${SQPGUI_LIBRARY_NAME} PROPERTIES COMPILE_DEFINITIONS "SCIQLOP_EXPORT")
ELSE()
TARGET_COMPILE_DEFINITIONS(${SQPGUI_LIBRARY_NAME} PUBLIC "SCIQLOP_STATIC_LIBRARIES")
ENDIF()
# Set the variable to parent scope so that the other projects can copy the
# dependent shared libraries
SCIQLOP_SET_TO_PARENT_SCOPE(SQPGUI_LIBRARY_NAME)
# Copy extern shared libraries to the lib folder
SCIQLOP_COPY_TO_TARGET(LIBRARY ${SQPGUI_LIBRARY_NAME})
# Add the files to the list of files to be analyzed
LIST(APPEND CHECKSTYLE_INPUT_FILES ${MODULE_SOURCES})
SCIQLOP_SET_TO_PARENT_SCOPE(CHECKSTYLE_INPUT_FILES)
# Vera++ exclusion files
add qcustomplot
r59 LIST(APPEND CHECKSTYLE_EXCLUSION_FILES ${CMAKE_CURRENT_SOURCE_DIR}/vera-exclusions/exclusions.txt)
Initialisation de l'application multithread avec le spimpl....
r21 SCIQLOP_SET_TO_PARENT_SCOPE(CHECKSTYLE_EXCLUSION_FILES)
#
# Compile the tests
#
IF(BUILD_TESTS)
INCLUDE_DIRECTORIES(${SOURCES_DIR})
FILE (GLOB_RECURSE TESTS_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/Test*.cpp)
FILE (GLOB_RECURSE TESTS_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/Test*.h)
SET( TEST_LIBRARIES ${SQPGUI_LIBRARY_NAME})
FOREACH( testFile ${TESTS_SOURCES} )
GET_FILENAME_COMPONENT( testDirectory ${testFile} DIRECTORY )
GET_FILENAME_COMPONENT( testName ${testFile} NAME_WE )
# Add to the list of sources files all the sources in the same
# directory that aren't another test
FILE (GLOB currentTestSources
${testDirectory}/*.c
${testDirectory}/*.cpp
${testDirectory}/*.h)
LIST (REMOVE_ITEM currentTestSources ${TESTS_SOURCES})
Alexandre Leroux
Inits unit tests for DataSource controller
r38 # LIST (REMOVE_ITEM currentTestSources ${TESTS_HEADERS})
Initialisation de l'application multithread avec le spimpl....
r21
ADD_EXECUTABLE(${testName} ${testFile} ${currentTestSources})
Alexandre Leroux
Inits unit tests for DataSource controller
r38 set_property(TARGET ${testName} PROPERTY CXX_STANDARD 14)
set_property(TARGET ${testName} PROPERTY CXX_STANDARD_REQUIRED ON)
Initialisation de l'application multithread avec le spimpl....
r21 TARGET_LINK_LIBRARIES( ${testName} ${TEST_LIBRARIES} )
qt5_use_modules(${testName} Test)
ADD_TEST( NAME ${testName} COMMAND ${testName} )
SCIQLOP_COPY_TO_TARGET(RUNTIME ${testName} ${EXTERN_SHARED_LIBRARIES})
ENDFOREACH( testFile )
LIST(APPEND testFilesToFormat ${TESTS_SOURCES})
LIST(APPEND testFilesToFormat ${TESTS_HEADERS})
LIST(APPEND FORMATTING_INPUT_FILES ${testFilesToFormat})
SCIQLOP_SET_TO_PARENT_SCOPE(FORMATTING_INPUT_FILES)
ENDIF(BUILD_TESTS)
#
# Set the files that must be formatted by clang-format.
#
LIST (APPEND FORMATTING_INPUT_FILES ${MODULE_SOURCES})
SCIQLOP_SET_TO_PARENT_SCOPE(FORMATTING_INPUT_FILES)
#
# Set the directories that doxygen must browse to generate the
# documentation.
#
# Source directories:
LIST (APPEND DOXYGEN_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/docs")
LIST (APPEND DOXYGEN_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/src")
SCIQLOP_SET_TO_PARENT_SCOPE(DOXYGEN_INPUT_DIRS)
# Source directories to exclude from the documentation generation
#LIST (APPEND DOXYGEN_EXCLUDE_PATTERNS "${CMAKE_CURRENT_SOURCE_DIR}/path/to/subdir/*")
SCIQLOP_SET_TO_PARENT_SCOPE(DOXYGEN_EXCLUDE_PATTERNS)
#
# Set the directories with the sources to analyze and propagate the
# modification to the parent scope
#
# Source directories to analyze:
LIST (APPEND ANALYSIS_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/src")
LIST (APPEND ANALYSIS_INPUT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/tests")
SCIQLOP_SET_TO_PARENT_SCOPE(ANALYSIS_INPUT_DIRS)
# Source directories to exclude from the analysis
#LIST (APPEND ANALYSIS_EXCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/path/to/subdir")
SCIQLOP_SET_TO_PARENT_SCOPE(ANALYSIS_EXCLUDE_DIRS)