Salome HOME
7008df0b0325cc0efdbadbf7298c2ae0f3a95c27
[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   MonCreateBoundaryCAO.h
92   MonCreateBoundaryAn.h
93   MonCreateBoundaryDi.h
94   MonEditBoundaryCAO.h
95   MonEditBoundaryAn.h
96   MonEditBoundaryDi.h
97   MonCreateCase.h
98   MonEditCase.h
99   MonCreateZone.h
100   MonEditZone.h
101   MonCreateHypothesis.h
102   MonEditHypothesis.h
103   MonCreateListGroup.h
104   MonCreateListGroupCAO.h
105   MonEditListGroup.h
106   MonEditListGroupCAO.h
107   MonCreateIteration.h
108   MonEditIteration.h
109   MonPursueIteration.h
110   MonMeshInfo.h
111   MonIterInfo.h
112   MonCreateYACS.h
113   MonEditYACS.h
114   MonEditFile.h
115 )
116
117 # header files / uic wrappings
118 QT_WRAP_UIC(_uic_HEADERS ${_uic_FILES})
119
120 # header files / static
121 SET(_other_HEADERS
122   HOMARDGUI_Utils.h
123   HomardQtCommun.h
124   HOMARDGUI_Exports.hxx
125 )
126
127 # header files / to install
128 SET(ADAPT_HEADERS ${_other_HEADERS} ${_moc_HEADERS} ${_uic_HEADERS})
129
130 # --- sources ---
131
132 # sources / moc wrappings
133 QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS})
134
135 # sources / static
136 SET(_other_SOURCES
137   HOMARDGUI_Utils.cxx
138   MonCreateBoundaryCAO.cxx
139   MonCreateBoundaryAn.cxx
140   MonCreateBoundaryDi.cxx
141   MonEditBoundaryCAO.cxx
142   MonEditBoundaryAn.cxx
143   MonEditBoundaryDi.cxx
144   MonCreateCase.cxx
145   MonEditCase.cxx
146   MonCreateHypothesis.cxx
147   MonEditHypothesis.cxx
148   MonCreateListGroup.cxx
149   MonCreateListGroupCAO.cxx
150   MonEditListGroup.cxx
151   MonEditListGroupCAO.cxx
152   MonCreateIteration.cxx
153   MonEditIteration.cxx
154   MonPursueIteration.cxx
155   MonCreateZone.cxx
156   MonEditZone.cxx
157   MonMeshInfo.cxx
158   MonIterInfo.cxx
159   MonCreateYACS.cxx
160   MonEditYACS.cxx
161   MonEditFile.cxx
162   HomardQtCommun.cxx
163 )
164
165 # sources / to compile
166 SET(ADAPT_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_uic_HEADERS})
167
168 # --- rules ---
169
170 ADD_LIBRARY(ADAPTGUI ${ADAPT_SOURCES})
171 TARGET_LINK_LIBRARIES(ADAPTGUI ${_link_LIBRARIES} )
172 INSTALL(TARGETS ADAPTGUI EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
173
174 INSTALL(FILES ${ADAPT_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
175 QT_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_ADAPT_INSTALL_RES_DATA}")