ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/CMakeLists.txt
Revision: 906
Committed: Mon Nov 13 22:30:18 2017 UTC (7 years, 6 months ago) by couturad
Content type: text/plain
File size: 5221 byte(s)
Log Message:
Nouveau opencascade commit 1

File Contents

# Content
1 # The name of our project is "GNURBS". CMakeLists files in this project can
2 # refer to the root source directory of the project as ${HELLO_SOURCE_DIR} and
3 # to the root binary directory of the project as ${HELLO_BINARY_DIR}.
4 cmake_minimum_required (VERSION 2.6 FATAL_ERROR)
5
6
7 if(DEFINED CMAKE_BUILD_TYPE)
8 set(CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE} CACHE STRING "Choose build type")
9 else(DEFINED CMAKE_BUILD_TYPE)
10 set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Choose build type")
11 endif(DEFINED CMAKE_BUILD_TYPE)
12
13 project(MAGIC)
14
15 option(ENABLE_OCC "Magic Enable Occ" ON)
16 option(ENABLE_OCC_COMPLET "Magic Enable Occ BREP+Operation" ON)
17 option(ENABLE_SAT "Magic Enable Sat" ON)
18 option(ENABLE_STEP "Magic Enable Step" ON)
19 option(ENABLE_CAD4FE "Magic Enable CAD4FE" ON)
20 option(ENABLE_IBREP "Magic Enable IBREP" OFF)
21 option(ENABLE_TOIBREP "Magic Enable TOIBREP" ON)
22 option(ENABLE_NUTIL "Magic Enable NUTIL (pour la visu VTK)" OFF)
23 option(ENABLE_TEST "Magic Enable test" OFF)
24 option(ENABLE_ENGLISH "Magic Use English" OFF)
25 option(ENABLE_TUTORIEL "Magic turorial" OFF)
26 option(ENABLE_CHOIX_TERMINAL_ASTER "Magic Choix d'un terminal pour executer Code Aster" ON)
27
28
29 message(STATUS "The compiler is ${CMAKE_CXX_COMPILER}.")
30
31 include(CheckCXXCompilerFlag)
32 CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
33 CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
34 if(COMPILER_SUPPORTS_CXX11)
35 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
36 elseif(COMPILER_SUPPORTS_CXX0X)
37 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
38 else()
39 message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
40 endif()
41
42 set(CADXFEM_PATH "../cadxfem" CACHE STRING "CADXFEM Path")
43 set(ASTER_VERSION_FLAG "12.5" CACHE STRING "Version par défaut de Code ASTER dans la compilation")
44 add_definitions(-DASTER_VERSION_DEFAUT="${ASTER_VERSION_FLAG}")
45 if(ENABLE_OCC_COMPLET)
46 set (ENABLE_OCC ON)
47 endif(ENABLE_OCC_COMPLET)
48 if(ENABLE_OCC)
49 set(OCC_SYS_NAME ${CMAKE_SYSTEM_NAME})
50 set(OCC_LIBS_REQUIRED
51 # subset of DataExchange
52 TKSTEP TKSTEP209 TKSTEPAttr TKSTEPBase TKIGES TKXSBase TKXCAF TKXDESTEP
53
54 TKBinXCAF TKSTL TKVRML TKXDEIGES TKXmlXCAF
55
56 # ModelingAlgorithms
57 TKOffset TKFeat TKFillet TKBool TKShHealing TKMesh TKHLR TKBO TKPrim
58 TKTopAlgo TKGeomAlgo
59 # ModelingData
60 TKBRep TKGeomBase TKG3d TKG2d
61 # FoundationClasses
62 #TKAdvTools
63 TKMath TKernel)
64 list(LENGTH OCC_LIBS_REQUIRED NUM_OCC_LIBS_REQUIRED)
65 set(OCC_LIBS)
66 foreach(OCC ${OCC_LIBS_REQUIRED})
67 find_library(OCC_LIB ${OCC} PATHS HINTS ENV CASROOT PATH_SUFFIXES lib
68 ${OCC_SYS_NAME}/lib ${OCC_SYS_NAME}/vc8/lib )
69 if(OCC_LIB)
70 list(APPEND OCC_LIBS ${OCC_LIB})
71 endif(OCC_LIB)
72 #set(OCC_LIB OCC_LIB-NOTFOUND CACHE INTERNAL "")
73 unset(OCC_LIB CACHE) # cleaner, but only available in cmake >= 2.6.4
74 endforeach(OCC)
75 list(LENGTH OCC_LIBS NUM_OCC_LIBS)
76 if(NUM_OCC_LIBS EQUAL NUM_OCC_LIBS_REQUIRED)
77 unset(OCC_INC CACHE)
78 find_path(OCC_INC "BRep_Tool.hxx" PATHS ENV CASROOT PATH_SUFFIXES inc
79 include opencascade include/oce)
80
81 if(OCC_INC)
82 add_definitions(-DBREP_OCC)
83 if(ENABLE_OCC_COMPLET)
84 add_definitions(-DALL_OCC)
85 endif(ENABLE_OCC_COMPLET)
86 list(APPEND EXTERNAL_LIBRARIES ${OCC_LIBS})
87 list(APPEND EXTERNAL_INCLUDES ${OCC_INC})
88 if(HAVE_64BIT_SIZE_T)
89 add_definitions(-D_OCC64)
90 endif(HAVE_64BIT_SIZE_T)
91 if(CYGWIN)
92 list(APPEND EXTERNAL_LIBRARIES "winspool")
93 elseif(MSVC)
94 add_definitions(-DWNT)
95 endif(CYGWIN)
96 find_path(OCC_CONFIG_H "config.h" PATHS ${OCC_INC} ${OCC_CONFIG_H_PATH}
97 NO_DEFAULT_PATH)
98 if(NOT OCC_CONFIG_H)
99 add_definitions(-DHAVE_NO_OCC_CONFIG_H)
100 endif(NOT OCC_CONFIG_H)
101 endif(OCC_INC)
102 endif(NUM_OCC_LIBS EQUAL NUM_OCC_LIBS_REQUIRED)
103 endif(ENABLE_OCC)
104
105 execute_process(COMMAND "date" "+%Y" OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE annee)
106 execute_process(COMMAND "date" "+%Y" OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE dateannee)
107 SET(ANNEE -DVERSION=\"${annee}\")
108 SET(DATEANNEE -DDATEVERSION=\"1999-${dateannee}\")
109
110 add_definitions(${ANNEE})
111 add_definitions(${DATEANNEE})
112
113
114 if(ENABLE_SAT)
115 add_definitions(-DBREP_SAT)
116 endif(ENABLE_SAT)
117
118 if(ENABLE_OCC)
119 add_definitions(-DBREP_OCC)
120 add_definitions(-DCSG_OCC)
121 endif(ENABLE_OCC)
122 if(ENABLE_STEP)
123 add_definitions(-DBREP_STEP)
124 endif(ENABLE_STEP)
125
126 if (ENABLE_ENGLISH)
127 add_definitions(-DUSE_ENGLISH)
128 endif(ENABLE_ENGLISH)
129
130 if(ENABLE_IBREP)
131 add_subdirectory(${CADXFEM_PATH}/IBrep "${CMAKE_CURRENT_BINARY_DIR}/IBrep")
132 add_definitions(-DIBREP)
133 endif(ENABLE_IBREP)
134 if(ENABLE_NUTIL)
135 add_subdirectory(${CADXFEM_PATH}/nutil "${CMAKE_CURRENT_BINARY_DIR}/nutil")
136 add_definitions(-DVTK_INTERFACE)
137 endif(ENABLE_NUTIL)
138
139 if (ENABLE_CAD4FE)
140 add_definitions(-DUSECAD4FE)
141 endif(ENABLE_CAD4FE)
142
143 if (ENABLE_CHOIX_TERMINAL_ASTER)
144 add_definitions(-DCHOIXTERMASTER)
145 endif(ENABLE_CHOIX_TERMINAL_ASTER)
146
147
148 message(STATUS "Configuration de MAGiC${annee}:1999-${dateannee}")
149 message(STATUS "Version de code ASTER integree ${ASTER_VERSION_FLAG}")
150
151
152 add_subdirectory(lib)
153 add_subdirectory(app)
154
155
156