Salome HOME
Copyright update: 2016
[modules/homard.git] / src / HOMARDGUI / CMakeLists.txt
1 # Copyright (C) 2012-2016  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(UseQt4Ext)
21 INCLUDE(UsePyQt4)
22
23 # --- options ---
24
25 # additional include directories
26 INCLUDE_DIRECTORIES(
27   ${QT_INCLUDES}
28   ${CAS_INCLUDE_DIRS}
29   ${PYTHON_INCLUDE_DIRS}
30   ${MEDFILE_INCLUDE_DIRS}
31   ${HDF5_INCLUDE_DIRS}
32   ${Boost_INCLUDE_DIRS}
33   ${OMNIORB_INCLUDE_DIR}
34   ${KERNEL_INCLUDE_DIRS}
35   ${GUI_INCLUDE_DIRS}
36   ${CMAKE_CURRENT_SOURCE_DIR}
37   ${CMAKE_CURRENT_BINARY_DIR}
38   ${PROJECT_BINARY_DIR}
39   ${PROJECT_BINARY_DIR}/idl
40   ${PROJECT_BINARY_DIR}/adm_local/unix
41   ${PROJECT_SOURCE_DIR}/src/HOMARD
42   ${PROJECT_SOURCE_DIR}/src/HOMARD_I
43 )
44
45 # additional preprocessor / compiler flags
46 ADD_DEFINITIONS(
47   ${BOOST_DEFINITIONS}
48   ${OMNIORB_DEFINITIONS}
49   ${CAS_DEFINITIONS}
50   ${KERNEL_DEFINITIONS}
51 )
52
53 # libraries to link to
54 SET(_link_LIBRARIES
55   ${MEDFILE_C_LIBRARIES}
56   ${KERNEL_SalomeLifeCycleCORBA}
57   ${KERNEL_SalomeDS}
58   ${GUI_SalomeApp}
59   SalomeIDLHOMARD
60   HOMARDEngine
61 )
62
63 # --- resources ---
64
65 # resource files / to be processed by lrelease
66 SET(_ts_RESOURCES
67   HOMARD_msg_en.ts
68   HOMARD_msg_fr.ts
69   HOMARD_msg_ja.ts
70
71
72 # resource files / to be processed by uic
73 SET(_uic_FILES
74   CreateBoundaryAn.ui
75   CreateBoundaryDi.ui
76   CreateCase.ui
77   CreateHypothesis.ui
78   CreateIteration.ui
79   CreateListGroup.ui
80   CreateYACS.ui
81   CreateZone.ui
82   EditFile.ui
83   IterInfo.ui
84   MeshInfo.ui
85   PursueIteration.ui
86 )
87
88 # --- headers ---
89
90 # header files / to be processed by moc
91 SET(_moc_HEADERS
92   HOMARDGUI.h
93   MonCreateBoundaryAn.h
94   MonEditBoundaryAn.h
95   MonCreateBoundaryDi.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   MonEditListGroup.h
105   MonCreateIteration.h
106   MonEditIteration.h
107   MonPursueIteration.h
108   MonMeshInfo.h
109   MonIterInfo.h
110   MonCreateYACS.h
111   MonEditYACS.h
112   MonEditFile.h
113 )
114
115 # header files / uic wrappings
116 QT4_WRAP_UI(_uic_HEADERS ${_uic_FILES})
117   
118 # header files / static
119 SET(_other_HEADERS
120   HOMARDGUI_Utils.h
121   HomardQtCommun.h
122   HOMARDGUI_Exports.hxx
123 )
124
125 # header files / to install
126 SET(HOMARD_HEADERS ${_other_HEADERS} ${_moc_HEADERS} ${_uic_HEADERS})
127
128 # --- sources ---
129
130 # sources / moc wrappings
131 QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
132
133 # sources / static
134 SET(_other_SOURCES
135   HOMARDGUI.cxx
136   HOMARDGUI_Utils.cxx
137   MonCreateBoundaryAn.cxx
138   MonEditBoundaryAn.cxx
139   MonCreateBoundaryDi.cxx
140   MonEditBoundaryDi.cxx
141   MonCreateCase.cxx
142   MonEditCase.cxx
143   MonCreateHypothesis.cxx
144   MonEditHypothesis.cxx
145   MonCreateListGroup.cxx
146   MonEditListGroup.cxx
147   MonCreateIteration.cxx
148   MonEditIteration.cxx
149   MonPursueIteration.cxx
150   MonCreateZone.cxx
151   MonEditZone.cxx
152   MonMeshInfo.cxx
153   MonIterInfo.cxx
154   MonCreateYACS.cxx
155   MonEditYACS.cxx
156   MonEditFile.cxx
157   HomardQtCommun.cxx
158 )
159
160 # sources / to compile
161 SET(HOMARD_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_uic_HEADERS})
162
163 # --- rules ---
164
165 ADD_LIBRARY(HOMARD ${HOMARD_SOURCES})
166 TARGET_LINK_LIBRARIES(HOMARD ${_link_LIBRARIES} )
167 INSTALL(TARGETS HOMARD EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
168
169 INSTALL(FILES ${HOMARD_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
170 QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_HOMARD_INSTALL_RES_DATA}")