Salome HOME
Merge branch 'master' into gni/adaptation
[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 # --- headers ---
62
63 # header files / to be processed by moc
64 SET(_moc_HEADERS
65   HOMARDGUI.h
66   MonCreateBoundaryCAO.h
67   MonCreateBoundaryAn.h
68   MonCreateBoundaryDi.h
69   MonEditBoundaryCAO.h
70   MonEditBoundaryAn.h
71   MonEditBoundaryDi.h
72   MonCreateCase.h
73   MonEditCase.h
74   MonCreateZone.h
75   MonEditZone.h
76   MonCreateHypothesis.h
77   MonEditHypothesis.h
78   MonCreateListGroup.h
79   MonCreateListGroupCAO.h
80   MonEditListGroup.h
81   MonEditListGroupCAO.h
82   MonCreateIteration.h
83   MonEditIteration.h
84   MonPursueIteration.h
85   MonMeshInfo.h
86   MonIterInfo.h
87   MonCreateYACS.h
88   MonEditYACS.h
89   MonEditFile.h
90 )
91
92 # header files / uic wrappings
93 QT_WRAP_UIC(_uic_HEADERS ${_uic_FILES})
94
95 # header files / static
96 SET(_other_HEADERS
97   HOMARDGUI_Utils.h
98   HomardQtCommun.h
99   HOMARDGUI_Exports.hxx
100 )
101
102 # header files / to install
103 SET(ADAPT_HEADERS ${_other_HEADERS} ${_moc_HEADERS} ${_uic_HEADERS})
104
105 # --- sources ---
106
107 # sources / moc wrappings
108 QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS})
109
110 # sources / static
111 SET(_other_SOURCES
112   HOMARDGUI.cxx
113   HOMARDGUI_Utils.cxx
114   MonCreateBoundaryCAO.cxx
115   MonCreateBoundaryAn.cxx
116   MonCreateBoundaryDi.cxx
117   MonEditBoundaryCAO.cxx
118   MonEditBoundaryAn.cxx
119   MonEditBoundaryDi.cxx
120   MonCreateCase.cxx
121   MonEditCase.cxx
122   MonCreateHypothesis.cxx
123   MonEditHypothesis.cxx
124   MonCreateListGroup.cxx
125   MonCreateListGroupCAO.cxx
126   MonEditListGroup.cxx
127   MonEditListGroupCAO.cxx
128   MonCreateIteration.cxx
129   MonEditIteration.cxx
130   MonPursueIteration.cxx
131   MonCreateZone.cxx
132   MonEditZone.cxx
133   MonMeshInfo.cxx
134   MonIterInfo.cxx
135   MonCreateYACS.cxx
136   MonEditYACS.cxx
137   MonEditFile.cxx
138   HomardQtCommun.cxx
139 )
140
141 # sources / to compile
142 SET(ADAPT_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_uic_HEADERS})
143
144 # --- resources ---
145
146 # resource files / to be processed by lrelease
147 SET(_ts_RESOURCES
148   ADAPT_msg_en.ts
149   ADAPT_msg_fr.ts
150   ADAPT_msg_ja.ts
151 )
152
153 # resource files / to be processed by uic
154 SET(_uic_FILES
155   CreateBoundaryCAO.ui
156   CreateBoundaryAn.ui
157   CreateBoundaryDi.ui
158   CreateCase.ui
159   CreateHypothesis.ui
160   CreateIteration.ui
161   CreateListGroup.ui
162   CreateYACS.ui
163   CreateZone.ui
164   EditFile.ui
165   IterInfo.ui
166   MeshInfo.ui
167   PursueIteration.ui
168 )
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}")