Salome HOME
Merge branch 'BR_LAND_COVER_MAP' of ssh://git.salome-platform.org/modules/hydro into...
[modules/hydro.git] / src / HYDROPy / CMakeLists.txt
index 49772fd85e7c3cd5e882a69f4ba673403d7303de..4d00303eee09d31563601c2771343d21fa303faf 100644 (file)
@@ -1,2 +1,116 @@
+include(../../CMake/Common.cmake)
+include(../../CMake/UsePyQt4EXT.cmake)
 
-ADD_CUSTOM_TARGET( HYDROData.py DEPENDS HYDROData.sip COMMAND ../../../HYDRO_SRC/src/HYDROPy/configure.py )
+# --- options ---
+
+# additional include directories
+INCLUDE_DIRECTORIES(
+  ${CAS_INCLUDE_DIRS}
+  ${QT_INCLUDES}
+  ${SIP_INCLUDE_DIR}
+  ${PYTHON_INCLUDE_DIRS}
+  ${CMAKE_CURRENT_SOURCE_DIR}
+  ${PROJECT_SOURCE_DIR}/src/HYDROData
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+  ${QT_DEFINITIONS}
+  ${CAS_DEFINITIONS}
+  ${PYTHON_DEFINITIONS}
+  ${OMNIORB_DEFINITIONS}
+)
+
+# libraries to link to
+SET(_link_LIBRARIES
+  ${PYTHON_LIBRARIES}
+  HYDROData
+) 
+
+# --- resources ---
+
+# sip files / to be processed by sip
+
+# TODO: fix the PYQT4_WRAP_SIP and uncomment
+# SET(_sip_files
+#   HYDROData.sip
+#   HYDROData_Entity.sip
+#   HYDROData_Object.sip
+#   HYDROData_ArtificialObject.sip
+#   HYDROData_NaturalObject.sip
+#   HYDROData_Image.sip
+#   HYDROData_Polyline.sip
+#   HYDROData_Bathymetry.sip
+#   HYDROData_ImmersibleZone.sip
+#   HYDROData_Zone.sip
+#   HYDROData_Region.sip
+#   HYDROData_StricklerTable.sip
+#   HYDROData_CalculationCase.sip
+#   HYDROData_Document.sip
+# )
+
+# workaround while PYQT4_WRAP_SIP is not corrected
+SET(_sip_files
+  HYDROData.sip
+)
+
+SET(_sip_files2
+  CAS/gp_XY.sip
+  CAS/gp_XYZ.sip
+  CAS/NCollection_Sequence.sip
+  CAS/TCollection_AsciiString.sip
+  HYDROData_SequenceOfObjects.sip
+  HYDROData_IInterpolator.sip
+  HYDROData_Entity.sip
+  HYDROData_ShapesGroup.sip
+  HYDROData_SplitShapesGroup.sip
+  HYDROData_IPolyline.sip
+  HYDROData_IAltitudeObject.sip
+  HYDROData_AltitudeObject.sip
+  HYDROData_ObstacleAltitude.sip
+  HYDROData_StreamAltitude.sip
+  HYDROData_Object.sip
+  HYDROData_Profile.sip
+  HYDROData_Polyline3D.sip
+  HYDROData_ProfileUZ.sip
+  HYDROData_PolylineXY.sip
+  HYDROData_ArtificialObject.sip
+  HYDROData_Obstacle.sip
+  HYDROData_Channel.sip
+  HYDROData_Digue.sip
+  HYDROData_NaturalObject.sip
+  HYDROData_Confluence.sip
+  HYDROData_River.sip
+  HYDROData_Stream.sip
+  HYDROData_StricklerTable.sip
+  HYDROData_Image.sip
+  HYDROData_Bathymetry.sip
+  HYDROData_ImmersibleZone.sip
+  HYDROData_Zone.sip
+  HYDROData_Region.sip
+  HYDROData_CalculationCase.sip
+  HYDROData_Document.sip
+  HYDROData_Application.sip
+  HYDROData_IProfilesInterpolator.sip
+  HYDROData_LandCoverMap.sip
+)
+
+# --- sources ---
+
+# sources / sip wrappings
+PYQT4_WRAP_SIP_EXT(_sip_SOURCES ${_sip_files})
+
+# sources / to compile
+SET(HYDROPy_SOURCES ${_sip_SOURCES} ${_sip_files2})
+
+# --- rules ---
+
+ADD_LIBRARY(HYDROPy ${HYDROPy_SOURCES})
+TARGET_LINK_LIBRARIES(HYDROPy ${_link_LIBRARIES})
+INSTALL(TARGETS HYDROPy EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+
+IF(WIN32)
+  SET_TARGET_PROPERTIES(HYDROPy PROPERTIES SUFFIX ".pyd" DEBUG_OUTPUT_NAME HYDROPy_d RELEASE_OUTPUT_NAME HYDROPy)
+ELSE()
+  SET_TARGET_PROPERTIES(HYDROPy PROPERTIES PREFIX "")
+ENDIF()