Salome HOME
Correction for hydro_test
[modules/hydro.git] / src / HYDRO_tests / CMakeLists.txt
1 ADD_SUBDIRECTORY(reference_data)
2
3 include(../../CMake/Common.cmake)
4 include(ExternalFiles.cmake)
5
6 set (CMAKE_POSITION_INDEPENDENT_CODE ON)
7
8 set(PROJECT_HEADERS
9   test_HYDROData_Bathymetry.h
10   test_HYDROData_Channel.h
11   test_HYDROData_Document.h
12   test_HYDROData_Entity.h
13   test_HYDROData_Image.h
14   test_HYDROData_Iterator.h
15   test_HYDROData_LandCoverMap.h
16   test_HYDROData_OperationsFactory.h
17   test_HYDROData_PolylineXY.h
18   test_HYDROData_Profile.h
19   test_HYDROData_ShapeFile.h
20   test_HYDROData_StricklerTable.h
21   test_HYDROGUI_ListModel.h
22   test_HYDROGUI_Shape.h
23   test_HYDROGUI_LandCoverMapDlg.h
24   test_HYDROData_CalcCase.h
25   test_HYDROData_Stream.h
26   test_HYDROData_Tool.h
27   test_HYDROGUI_BathymetryPrs.h
28
29   test_Dependencies.h
30   test_HYDROData_DTM.h
31   test_HYDROData_BoundaryPolygons.h
32   test_GraphicsView.h
33   test_Overview.h
34
35   TestShape.h
36   TestViewer.h
37   TestLib_Listener.h
38   TestLib_Runner.h
39 )
40
41 set(PROJECT_SOURCES
42   test_HYDROData_Bathymetry.cxx
43   test_HYDROData_Channel.cxx
44   test_HYDROData_Document.cxx
45   test_HYDROData_Entity.cxx
46   test_HYDROData_Image.cxx
47   test_HYDROData_Iterator.cxx
48   test_HYDROData_LandCoverMap.cxx
49   test_HYDROData_Main.cxx
50   test_HYDROData_OperationsFactory.cxx
51   test_HYDROData_PolylineXY.cxx
52   test_HYDROData_Profile.cxx
53   test_HYDROData_ShapeFile.cxx
54   test_HYDROData_StricklerTable.cxx
55   test_HYDROData_DTM.cxx
56   test_HYDROData_BoundaryPolygons.cxx
57   test_HYDROGUI_ListModel.cxx
58   test_HYDROGUI_Shape.cxx
59   test_HYDROGUI_LandCoverMapDlg.cxx
60   test_HYDROData_CalcCase.cxx
61   test_HYDROData_Stream.cxx
62   test_Dependencies.cxx
63   test_HYDROData_Tool.cxx
64   test_GraphicsView.cxx
65   test_Overview.cxx
66   test_HYDROGUI_ProfilesDlg.cxx
67   test_HYDROGUI_BathymetryPrs.cxx
68
69   TestShape.cxx
70   TestViewer.cxx
71   TestLib_Listener.cxx
72   TestLib_Runner.cxx
73 )
74
75 add_definitions( -DLIGHT_MODE -DHYDRODATA_STATIC -DHYDROGUI_STATIC -DTEST_MODE -DQT_GUI_LIB -DQT_WIDGETS_LIB )
76 # LIGHT_MODE, TEST_MODE: recompilation d'une partie des sources HYDROData et HYDROGUI (ExternalFiles) avec ces options
77 # QT_GUI_LIB, QT_WIDGETS_LIB: pas prĂ©sent ailleurs dans les sources: utile ?
78
79 IF( ${WIN32} )
80   add_definitions( -DWNT -D__WIN32__ -D__x86__ -D_WIN64 -D_WIN32_WINNT=0x0400 -D__NT__ -D__OSVERSION__=4 )
81 ENDIF()
82
83 SET( CPPUNIT_INCLUDES $ENV{CPPUNIT_ROOT}/include )
84 SET( CAS_INCLUDES $ENV{CASROOT}/inc )
85 SET( QT_INCLUDES $ENV{QTDIR}/include $ENV{QT_ROOT_DIR}/include $ENV{QT_ROOT_DIR}/include/QtCore $ENV{QT_ROOT_DIR}/include/QtGui $ENV{QT_ROOT_DIR}/include/QtTest )
86 SET( KERNEL_INCLUDES $ENV{KERNEL_ROOT_DIR}/include/salome )
87 SET( GUI_INCLUDES $ENV{GUI_ROOT_DIR}/include/salome )
88 SET( GEOM_INCLUDES $ENV{GEOM_ROOT_DIR}/include/salome )
89 SET( ECW_INCLUDES $ENV{ECWLIB_ROOT_DIR}/include )
90
91 IF( ${WIN32} )
92   link_directories( $ENV{CASROOT}/win64/lib/vc10 $ENV{GL2PS_DIR}/lib )
93 ELSE()
94   link_directories( $ENV{CASROOT}/lib $ENV{TBB_ROOT_DIR}/lib/intel64/gcc4.4 )
95 ENDIF()
96
97 SET( CAS_LIBRARIES
98          TKernel
99          TKLCAF
100          TKCAF
101      TKCDF
102      TKMath
103      TKG2d
104      TKG3d
105      TKBRep
106      TKGeomBase
107      TKTopAlgo
108      TKGeomAlgo
109      TKBool
110      TKShHealing
111      TKXSBase
112      TKOffset
113      TKHLR
114      TKBO
115      TKV3d
116      TKService
117      TKMesh
118      )
119 # !LIGHT_MODE
120 #     TKIGES
121 #     TKSTEP
122
123
124 link_directories( $ENV{QT_ROOT_DIR}/lib $ENV{QTDIR}/lib )
125 IF( ${WIN32} )
126   SET( QT_LIBRARIES Qt5Cored Qt5Guid Qt5Testd )
127 ELSE()
128   SET( QT_LIBRARIES Qt5Core Qt5Gui Qt5Test )
129 ENDIF()
130
131
132 link_directories( $ENV{CPPUNIT_ROOT}/lib )
133 IF( ${WIN32} )
134   IF( CMAKE_BUILD_TYPE MATCHES Debug )
135     SET( CPPUNIT_LIBRARIES cppunitd )
136   ELSE()
137     SET( CPPUNIT_LIBRARIES cppunit )
138   ENDIF()
139 ELSE()
140   SET( CPPUNIT_LIBRARIES cppunit )
141 ENDIF()
142
143 link_directories( $ENV{KERNEL_ROOT_DIR}/lib/salome
144                   $ENV{GUI_ROOT_DIR}/lib/salome
145                   $ENV{GEOM_ROOT_DIR}/lib/salome )
146
147 SET( GUI_LIBRARIES
148      ImageComposer
149      qtx
150      suit
151      CAM
152      OCCViewer
153      GraphicsView
154      )
155 # Please do not link with LightApp since in the full SALOME it is linked with CORBA (omniORB)
156
157 SET( GEOM_LIBRARIES
158      CurveCreator
159      GEOMUtils
160      )
161 # !LIGHT_MODE
162 #     GEOM
163 #     GEOMBase
164 link_directories( $ENV{GL2PS_INSTALL_DIR}/lib )
165 set( GL2PS_LIBRARIES gl2ps )
166
167 link_directories( $ENV{ECWLIB_ROOT_DIR}/lib )
168 IF( ${WIN32} )
169   SET( ECW_LIBRARIES libecwj2 )
170 ELSE()
171   SET( ECW_LIBRARIES ecwj2 )
172 ENDIF()
173
174 include_directories(
175   ${CAS_INCLUDES}
176   ${QT_INCLUDES}
177   ${CPPUNIT_INCLUDES}
178   ${KERNEL_INCLUDES}
179   ${GUI_INCLUDES}
180   ${GEOM_INCLUDES}
181   ${CMAKE_CURRENT_SOURCE_DIR}/../HYDROData
182   ${CMAKE_CURRENT_SOURCE_DIR}/../HYDROGUI
183   ${CMAKE_CURRENT_SOURCE_DIR}/../shapelib
184   ${ECW_INCLUDES}
185 )
186
187 source_group( "External files" FILES ${EXTERNAL_FILES} )
188
189 add_executable( HYDROData_tests ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${EXTERNAL_FILES} ${PROJECT_MOC_HEADERS} )
190
191 set_target_properties( HYDROData_tests PROPERTIES LINK_INTERFACE_LIBRARIES "" )
192 target_link_libraries( HYDROData_tests
193                        ${GUI_LIBRARIES}
194                        ${GEOM_LIBRARIES}
195                        ${CAS_LIBRARIES}
196                        ${GL2PS_LIBRARIES}
197                        ${QT_LIBRARIES}
198                        ${CPPUNIT_LIBRARIES}
199                        shapelib
200                        ${ECW_LIBRARIES}
201                        )
202 # !LIGHT_MODE
203 #                       ${OMNIORB_LIBRARIES}
204 #                       ${VTK_LIBRARIES}
205 # using libraries instead of EXTERNAL_FILES
206 #                       HYDROData
207 #                       HYDROGUI
208
209 INSTALL(TARGETS HYDROData_tests EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS})