Salome HOME
d71b88b22312d0edf487712eedcd35416893cf10
[modules/smesh.git] / src / ADAPTGUI / CMakeLists.txt
1 # Copyright (C) 2012-2020  CEA/DEN, EDF R&D
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(UseQtExt)
21 INCLUDE(UsePyQt)
22
23 # --- options ---
24
25 # additional include directories
26 INCLUDE_DIRECTORIES(
27   ${QT_INCLUDES}
28   ${OpenCASCADE_INCLUDE_DIR}
29   ${PYTHON_INCLUDE_DIRS}
30   ${MEDFILE_INCLUDE_DIRS}
31   ${HDF5_INCLUDE_DIRS}
32   ${OMNIORB_INCLUDE_DIR}
33   ${KERNEL_INCLUDE_DIRS}
34   ${GUI_INCLUDE_DIRS}
35   ${CMAKE_CURRENT_SOURCE_DIR}
36   ${CMAKE_CURRENT_BINARY_DIR}
37   ${PROJECT_BINARY_DIR}
38   ${PROJECT_BINARY_DIR}/idl
39   ${PROJECT_BINARY_DIR}/adm_local/unix
40   ${PROJECT_SOURCE_DIR}/src/ADAPT
41   ${PROJECT_SOURCE_DIR}/src/ADAPT_I
42 )
43
44 # additional preprocessor / compiler flags
45 ADD_DEFINITIONS(
46   ${OMNIORB_DEFINITIONS}
47   ${OpenCASCADE_DEFINITIONS}
48   ${KERNEL_DEFINITIONS}
49 )
50
51 # libraries to link to
52 SET(_link_LIBRARIES
53   ${MEDFILE_C_LIBRARIES}
54   ${KERNEL_SalomeLifeCycleCORBA}
55   ${KERNEL_SalomeDS}
56   ${GUI_SalomeApp}
57   ${SMESH_SalomeIDLSMESH}
58   ADAPTEngine
59 )
60
61 # --- resources ---
62
63 # resource files / to be processed by lrelease
64 SET(_ts_RESOURCES
65   ADAPT_msg_en.ts
66   ADAPT_msg_fr.ts
67   ADAPT_msg_ja.ts
68 )
69
70 # resource files / to be processed by uic
71 SET(_uic_FILES
72   CreateBoundaryCAO.ui
73   CreateBoundaryAn.ui
74   CreateBoundaryDi.ui
75   CreateCase.ui
76   CreateHypothesis.ui
77   CreateIteration.ui
78   CreateListGroup.ui
79   CreateYACS.ui
80   CreateZone.ui
81   EditFile.ui
82   IterInfo.ui
83   MeshInfo.ui
84   PursueIteration.ui
85 )
86
87 # --- headers ---
88
89 # header files / to be processed by moc
90 SET(_moc_HEADERS
91   ADAPTGUI.h
92   MonCreateBoundaryCAO.h
93   MonCreateBoundaryAn.h
94   MonCreateBoundaryDi.h
95   MonEditBoundaryCAO.h
96   MonEditBoundaryAn.h
97   MonEditBoundaryDi.h
98   MonCreateCase.h
99   MonEditCase.h
100   MonCreateZone.h
101   MonEditZone.h
102   MonCreateHypothesis.h
103   MonEditHypothesis.h
104   MonCreateListGroup.h
105   MonCreateListGroupCAO.h
106   MonEditListGroup.h
107   MonEditListGroupCAO.h
108   MonCreateIteration.h
109   MonEditIteration.h
110   MonPursueIteration.h
111   MonMeshInfo.h
112   MonIterInfo.h
113   MonCreateYACS.h
114   MonEditYACS.h
115   MonEditFile.h
116 )
117
118 # header files / uic wrappings
119 QT_WRAP_UIC(_uic_HEADERS ${_uic_FILES})
120
121 # header files / static
122 SET(_other_HEADERS
123   HOMARDGUI_Utils.h
124   HomardQtCommun.h
125   HOMARDGUI_Exports.hxx
126 )
127
128 # header files / to install
129 SET(ADAPT_HEADERS ${_other_HEADERS} ${_moc_HEADERS} ${_uic_HEADERS})
130
131 # --- sources ---
132
133 # sources / moc wrappings
134 QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS})
135
136 # sources / static
137 SET(_other_SOURCES
138   ADAPTGUI.cxx
139   HOMARDGUI_Utils.cxx
140   MonCreateBoundaryCAO.cxx
141   MonCreateBoundaryAn.cxx
142   MonCreateBoundaryDi.cxx
143   MonEditBoundaryCAO.cxx
144   MonEditBoundaryAn.cxx
145   MonEditBoundaryDi.cxx
146   MonCreateCase.cxx
147   MonEditCase.cxx
148   MonCreateHypothesis.cxx
149   MonEditHypothesis.cxx
150   MonCreateListGroup.cxx
151   MonCreateListGroupCAO.cxx
152   MonEditListGroup.cxx
153   MonEditListGroupCAO.cxx
154   MonCreateIteration.cxx
155   MonEditIteration.cxx
156   MonPursueIteration.cxx
157   MonCreateZone.cxx
158   MonEditZone.cxx
159   MonMeshInfo.cxx
160   MonIterInfo.cxx
161   MonCreateYACS.cxx
162   MonEditYACS.cxx
163   MonEditFile.cxx
164   HomardQtCommun.cxx
165 )
166
167 # sources / to compile
168 SET(ADAPT_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_uic_HEADERS})
169
170 # --- rules ---
171
172 ADD_LIBRARY(ADAPT ${ADAPT_SOURCES})
173 TARGET_LINK_LIBRARIES(ADAPT ${_link_LIBRARIES} )
174 INSTALL(TARGETS ADAPT EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
175
176 INSTALL(FILES ${ADAPT_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
177 QT_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_ADAPT_INSTALL_RES_DATA}")