ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/CMakeLists.txt
Revision: 951
Committed: Fri Aug 10 15:17:17 2018 UTC (6 years, 9 months ago) by couturad
Content type: text/plain
File size: 5563 byte(s)
Log Message:
-> Ajout de Project Chrono (voir CMakeLists.txt).
-> Ajout d'un générateur de microstructure basé sur la dynamique des corps rigides (MSTRUCT_GENERATEUR_DCR).
-> Ajout d'un opérateur de décallage de la topologie (MG_CG_OP_TRANSF_DECALLAGE).
-> Retrait de «using namespace std»  (conflit avec namespace chrono) et modification des fichiers affectés.
-> Modification de mailleur2d.cpp afin d'enregistrer un fichier MAGiC (void.magic) lorsque le nombre d'itération dépasse la valeur maximale.

File Contents

# User Rev Content
1 francois 255 # 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 francois 547
7 francois 255 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 francois 294 option(ENABLE_OCC "Magic Enable Occ" ON)
16 couturad 906 option(ENABLE_OCC_COMPLET "Magic Enable Occ BREP+Operation" ON)
17 francois 294 option(ENABLE_SAT "Magic Enable Sat" ON)
18     option(ENABLE_STEP "Magic Enable Step" ON)
19 francois 660 option(ENABLE_CAD4FE "Magic Enable CAD4FE" ON)
20 francois 490 option(ENABLE_IBREP "Magic Enable IBREP" OFF)
21     option(ENABLE_TOIBREP "Magic Enable TOIBREP" ON)
22 francois 349 option(ENABLE_NUTIL "Magic Enable NUTIL (pour la visu VTK)" OFF)
23 francois 294 option(ENABLE_TEST "Magic Enable test" OFF)
24 francois 366 option(ENABLE_ENGLISH "Magic Use English" OFF)
25 cuillier 415 option(ENABLE_TUTORIEL "Magic turorial" OFF)
26 francois 726 option(ENABLE_CHOIX_TERMINAL_ASTER "Magic Choix d'un terminal pour executer Code Aster" ON)
27 couturad 951 option(ENABLE_PROJECT_CHRONO "Magic Enable Project_chrono" OFF)
28 francois 255
29 francois 757 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 francois 349 set(CADXFEM_PATH "../cadxfem" CACHE STRING "CADXFEM Path")
43 francois 867 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 couturad 906 if(ENABLE_OCC_COMPLET)
46     set (ENABLE_OCC ON)
47     endif(ENABLE_OCC_COMPLET)
48 francois 255 if(ENABLE_OCC)
49 francois 547 set(OCC_SYS_NAME ${CMAKE_SYSTEM_NAME})
50 francois 255 set(OCC_LIBS_REQUIRED
51     # subset of DataExchange
52 couturad 687 TKSTEP TKSTEP209 TKSTEPAttr TKSTEPBase TKIGES TKXSBase TKXCAF TKXDESTEP
53 couturad 906
54     TKBinXCAF TKSTL TKVRML TKXDEIGES TKXmlXCAF
55    
56 francois 255 # ModelingAlgorithms
57     TKOffset TKFeat TKFillet TKBool TKShHealing TKMesh TKHLR TKBO TKPrim
58     TKTopAlgo TKGeomAlgo
59     # ModelingData
60     TKBRep TKGeomBase TKG3d TKG2d
61     # FoundationClasses
62 francois 865 #TKAdvTools
63     TKMath TKernel)
64 francois 255 list(LENGTH OCC_LIBS_REQUIRED NUM_OCC_LIBS_REQUIRED)
65     set(OCC_LIBS)
66     foreach(OCC ${OCC_LIBS_REQUIRED})
67 francois 547 find_library(OCC_LIB ${OCC} PATHS HINTS ENV CASROOT PATH_SUFFIXES lib
68     ${OCC_SYS_NAME}/lib ${OCC_SYS_NAME}/vc8/lib )
69 francois 255 if(OCC_LIB)
70     list(APPEND OCC_LIBS ${OCC_LIB})
71     endif(OCC_LIB)
72 francois 547 #set(OCC_LIB OCC_LIB-NOTFOUND CACHE INTERNAL "")
73     unset(OCC_LIB CACHE) # cleaner, but only available in cmake >= 2.6.4
74 francois 255 endforeach(OCC)
75     list(LENGTH OCC_LIBS NUM_OCC_LIBS)
76     if(NUM_OCC_LIBS EQUAL NUM_OCC_LIBS_REQUIRED)
77 francois 547 unset(OCC_INC CACHE)
78 francois 255 find_path(OCC_INC "BRep_Tool.hxx" PATHS ENV CASROOT PATH_SUFFIXES inc
79 francois 547 include opencascade include/oce)
80    
81 francois 255 if(OCC_INC)
82     add_definitions(-DBREP_OCC)
83 couturad 906 if(ENABLE_OCC_COMPLET)
84     add_definitions(-DALL_OCC)
85     endif(ENABLE_OCC_COMPLET)
86 francois 255 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 couturad 951 if(ENABLE_PROJECT_CHRONO)
106     find_package(Chrono REQUIRED
107     COMPONENTS Irrlicht
108     CONFIG
109     HINTS ${CMAKE_CURRENT_SOURCE_DIR}/../project_chrono/chrono-develop/build/cmake)
110     add_definitions(-DPROJECT_CHRONO)
111     endif(ENABLE_PROJECT_CHRONO)
112    
113 francois 381 execute_process(COMMAND "date" "+%Y" OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE annee)
114     execute_process(COMMAND "date" "+%Y" OUTPUT_STRIP_TRAILING_WHITESPACE OUTPUT_VARIABLE dateannee)
115     SET(ANNEE -DVERSION=\"${annee}\")
116     SET(DATEANNEE -DDATEVERSION=\"1999-${dateannee}\")
117    
118     add_definitions(${ANNEE})
119     add_definitions(${DATEANNEE})
120    
121    
122 francois 255 if(ENABLE_SAT)
123     add_definitions(-DBREP_SAT)
124     endif(ENABLE_SAT)
125    
126 francois 314 if(ENABLE_OCC)
127     add_definitions(-DBREP_OCC)
128 francois 686 add_definitions(-DCSG_OCC)
129 francois 314 endif(ENABLE_OCC)
130 francois 255 if(ENABLE_STEP)
131     add_definitions(-DBREP_STEP)
132     endif(ENABLE_STEP)
133    
134 francois 366 if (ENABLE_ENGLISH)
135     add_definitions(-DUSE_ENGLISH)
136     endif(ENABLE_ENGLISH)
137 francois 295
138 francois 255 if(ENABLE_IBREP)
139 francois 350 add_subdirectory(${CADXFEM_PATH}/IBrep "${CMAKE_CURRENT_BINARY_DIR}/IBrep")
140 francois 375 add_definitions(-DIBREP)
141 francois 255 endif(ENABLE_IBREP)
142 francois 349 if(ENABLE_NUTIL)
143 francois 350 add_subdirectory(${CADXFEM_PATH}/nutil "${CMAKE_CURRENT_BINARY_DIR}/nutil")
144 francois 660 add_definitions(-DVTK_INTERFACE)
145 francois 350 endif(ENABLE_NUTIL)
146 francois 255
147 francois 660 if (ENABLE_CAD4FE)
148     add_definitions(-DUSECAD4FE)
149     endif(ENABLE_CAD4FE)
150    
151 francois 726 if (ENABLE_CHOIX_TERMINAL_ASTER)
152     add_definitions(-DCHOIXTERMASTER)
153 sattarpa 728 endif(ENABLE_CHOIX_TERMINAL_ASTER)
154 francois 660
155 francois 726
156 francois 381 message(STATUS "Configuration de MAGiC${annee}:1999-${dateannee}")
157 francois 867 message(STATUS "Version de code ASTER integree ${ASTER_VERSION_FLAG}")
158 francois 381
159    
160 francois 258 add_subdirectory(lib)
161     add_subdirectory(app)
162 francois 255
163 francois 258
164