1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
5 FIND_PACKAGE(SWIG REQUIRED)
6 INCLUDE(${SWIG_USE_FILE})
8 INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/src/Events
13 Config_FeatureMessage.h
16 Config_FeatureReader.h
20 Config_PointerMessage.h
22 Config_ValidatorMessage.h
25 Config_AttributeMessage.h
26 Config_SelectionFilterMessage.h
27 Config_ValidatorReader.h
28 Config_DataModelReader.h
33 Config_FeatureMessage.cpp
35 Config_ModuleReader.cpp
36 Config_FeatureReader.cpp
38 Config_WidgetReader.cpp
39 Config_PointerMessage.cpp
41 Config_ValidatorMessage.cpp
43 Config_PropManager.cpp
44 Config_AttributeMessage.cpp
45 Config_SelectionFilterMessage.cpp
46 Config_ValidatorReader.cpp
47 Config_DataModelReader.cpp
51 SET(CMAKE_SWIG_FLAGS -threads -Wall)
52 SET_SOURCE_FILES_PROPERTIES(ConfigAPI.i PROPERTIES CPLUSPLUS ON)
53 SET_SOURCE_FILES_PROPERTIES(ConfigAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
55 ${CMAKE_CURRENT_BINARY_DIR}/ConfigAPI.py
57 SET(SWIG_LINK_LIBRARIES
61 SWIG_ADD_MODULE(ConfigAPI python ConfigAPI.i ${PROJECT_HEADERS})
62 SWIG_LINK_LIBRARIES(ConfigAPI ${SWIG_LINK_LIBRARIES})
64 SET_TARGET_PROPERTIES(_ConfigAPI PROPERTIES DEBUG_OUTPUT_NAME _ConfigAPI_d)
69 ${CMAKE_CURRENT_BINARY_DIR}/plugins.xml
79 SOURCE_GROUP ("Resource Files" FILES ${XML_RESOURCES})
81 ADD_DEFINITIONS(-DCONFIG_EXPORTS -D_SCL_SECURE_NO_WARNINGS)
82 # -D_SCL_SECURE_NO_WARNINGS - to disable warnings 4996
84 ADD_LIBRARY(Config SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES})
86 TARGET_LINK_LIBRARIES(Config ${PROJECT_LIBRARIES})
90 # the solver to activate after installation
91 SET(DEFAULT_SOLVER "PlaneGCS")
93 # the list of all solvers
94 SET(SOLVERS "SolveSpace" "PlaneGCS")
96 # apply NO_<solver> variables
97 FOREACH(solver IN LISTS SOLVERS)
99 LIST(REMOVE_ITEM SOLVERS ${solver})
103 # check default solver in the list of solvers
104 LIST(FIND SOLVERS ${DEFAULT_SOLVER} INDEX)
105 IF(${INDEX} GREATER -1)
106 MESSAGE(STATUS "Default solver: ${DEFAULT_SOLVER}")
108 MESSAGE(FATAL_ERROR "Default solver: ${DEFAULT_SOLVER} is switched off.\nUnset NO_${DEFAULT_SOLVER} variable or define another default solver DEFAULT_SOLVER=<SOLVER> from the list: ${SOLVERS}.")
111 # prepare variables for configuration
112 SET(DEFAULT_SOLVER " <plugin library=\"${DEFAULT_SOLVER}Solver\"/>")
113 FOREACH(solver IN LISTS SOLVERS)
114 IF(DEFINED ALL_SOLVERS)
115 SET(ALL_SOLVERS "${ALL_SOLVERS}\n")
117 SET(ALL_SOLVERS "${ALL_SOLVERS} <plugin library=\"${solver}Solver\"/>")
122 "${CMAKE_CURRENT_SOURCE_DIR}/plugins.xml.in"
123 "${CMAKE_CURRENT_BINARY_DIR}/plugins.xml"
126 INSTALL(TARGETS Config DESTINATION ${SHAPER_INSTALL_BIN})
127 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
129 INSTALL(TARGETS _ConfigAPI DESTINATION ${SHAPER_INSTALL_SWIG})
130 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION ${SHAPER_INSTALL_SWIG})