Salome HOME
TUI first dev
[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   ${PROJECT_SOURCE_DIR}/src/SMESH_I
43   ${PROJECT_SOURCE_DIR}/src/SMESH
44   ${MEDCOUPLING_INCLUDE_DIRS}
45 )
46
47 # additional preprocessor / compiler flags
48 ADD_DEFINITIONS(
49   ${OMNIORB_DEFINITIONS}
50   ${OpenCASCADE_DEFINITIONS}
51   ${KERNEL_DEFINITIONS}
52 )
53
54 # libraries to link to
55 SET(_link_LIBRARIES
56   ${MEDFILE_C_LIBRARIES}
57   ${KERNEL_SalomeLifeCycleCORBA}
58   ${KERNEL_SalomeDS}
59   ${GUI_SalomeApp}
60   ${SMESH_SalomeIDLSMESH}
61   ${SMESH_SMESHEngine}
62   ADAPTEngine
63   ${MEDCoupling_medloader}
64   SMESHimpl
65 )
66
67 # --- resources ---
68
69 # resource files / to be processed by lrelease
70 SET(_ts_RESOURCES
71   ADAPT_msg_en.ts
72   ADAPT_msg_fr.ts
73   ADAPT_msg_ja.ts
74 )
75
76 # resource files / to be processed by uic
77 SET(_uic_FILES
78   CreateBoundaryCAO.ui
79   CreateBoundaryAn.ui
80   CreateBoundaryDi.ui
81   CreateCase.ui
82   CreateHypothesis.ui
83   CreateIteration.ui
84   CreateListGroup.ui
85   CreateYACS.ui
86   CreateZone.ui
87   EditFile.ui
88   IterInfo.ui
89   MeshInfo.ui
90   PursueIteration.ui
91 )
92
93 # --- headers ---
94
95 # header files / to be processed by moc
96 SET(_moc_HEADERS
97   MonCreateBoundaryCAO.h
98   MonCreateBoundaryAn.h
99   MonCreateBoundaryDi.h
100   MonEditBoundaryCAO.h
101   MonEditBoundaryAn.h
102   MonEditBoundaryDi.h
103   MonCreateCase.h
104   MonEditCase.h
105   MonCreateZone.h
106   MonEditZone.h
107   MonCreateHypothesis.h
108   MonEditHypothesis.h
109   MonCreateListGroup.h
110   MonCreateListGroupCAO.h
111   MonEditListGroup.h
112   MonEditListGroupCAO.h
113   MonCreateIteration.h
114   MonEditIteration.h
115   MonPursueIteration.h
116   MonMeshInfo.h
117   MonIterInfo.h
118   MonCreateYACS.h
119   MonEditYACS.h
120   MonEditFile.h
121   #~MG_ADAPTGUI.hxx
122 )
123
124 # header files / uic wrappings
125 QT_WRAP_UIC(_uic_HEADERS ${_uic_FILES})
126
127 # header files / static
128 SET(_other_HEADERS
129   HOMARDGUI_Utils.h
130   HomardQtCommun.h
131   HOMARDGUI_Exports.hxx
132 )
133
134 # header files / to install
135 SET(ADAPT_HEADERS ${_other_HEADERS} ${_moc_HEADERS} ${_uic_HEADERS})
136
137 # --- sources ---
138
139 # sources / moc wrappings
140 QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS})
141
142 # sources / static
143 SET(_other_SOURCES
144   HOMARDGUI_Utils.cxx
145   MonCreateBoundaryCAO.cxx
146   MonCreateBoundaryAn.cxx
147   MonCreateBoundaryDi.cxx
148   MonEditBoundaryCAO.cxx
149   MonEditBoundaryAn.cxx
150   MonEditBoundaryDi.cxx
151   MonCreateCase.cxx
152   MonEditCase.cxx
153   MonCreateHypothesis.cxx
154   MonEditHypothesis.cxx
155   MonCreateListGroup.cxx
156   MonCreateListGroupCAO.cxx
157   MonEditListGroup.cxx
158   MonEditListGroupCAO.cxx
159   MonCreateIteration.cxx
160   MonEditIteration.cxx
161   MonPursueIteration.cxx
162   MonCreateZone.cxx
163   MonEditZone.cxx
164   MonMeshInfo.cxx
165   MonIterInfo.cxx
166   MonCreateYACS.cxx
167   MonEditYACS.cxx
168   MonEditFile.cxx
169   HomardQtCommun.cxx
170   #~MG_ADAPTGUI.cxx
171 )
172
173 # sources / to compile
174 SET(ADAPT_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_uic_HEADERS})
175
176 # --- rules ---
177
178 ADD_LIBRARY(ADAPTGUI ${ADAPT_SOURCES})
179 TARGET_LINK_LIBRARIES(ADAPTGUI ${_link_LIBRARIES} )
180 INSTALL(TARGETS ADAPTGUI EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
181
182 INSTALL(FILES ${ADAPT_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
183 QT_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_ADAPT_INSTALL_RES_DATA}")