Salome HOME
Merge changes from 'master' branch.
[modules/gui.git] / src / CMakeLists.txt
index 41937f6e9ae9ced94ead0657398db0315ee679ac..907798d2e1ba60eb7f2789784c024ab4ca75cd28 100755 (executable)
@@ -1,4 +1,4 @@
-# Copyright (C) 2012-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2012-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 ##
 # Common packages
 ##
-SET(SUBDIRS_COMMON
-  CASCatch Qtx Style DDS QDS ObjBrowser SUIT SUITApp STD CAF
-  CAM LogWindow Prs Event OpenGLUtils ViewerData ViewerTools ImageComposer GUI_PY
-)
+ADD_SUBDIRECTORY(CASCatch)
+ADD_SUBDIRECTORY(Qtx)
+IF(SALOME_GUI_ENABLE_QTXWEBBROWSER)
+  ADD_SUBDIRECTORY(HelpBrowser)
+ENDIF()
+ADD_SUBDIRECTORY(Style)
+ADD_SUBDIRECTORY(DDS)
+ADD_SUBDIRECTORY(QDS)
+ADD_SUBDIRECTORY(ObjBrowser)
+ADD_SUBDIRECTORY(SUIT)
+ADD_SUBDIRECTORY(SUITApp)
+ADD_SUBDIRECTORY(STD)
+ADD_SUBDIRECTORY(CAF)
+ADD_SUBDIRECTORY(CAM)
+ADD_SUBDIRECTORY(LogWindow)
+ADD_SUBDIRECTORY(Prs)
+ADD_SUBDIRECTORY(Event)
+ADD_SUBDIRECTORY(ViewerData)
+ADD_SUBDIRECTORY(ViewerTools)
+ADD_SUBDIRECTORY(ImageComposer)
+ADD_SUBDIRECTORY(GUI_PY)
 
 ##
 # SALOME object
 ##
 IF(SALOME_USE_SALOMEOBJECT)
-  SET(SUBDIRS_OBJECT OBJECT)
+  ADD_SUBDIRECTORY(OBJECT)
 ENDIF(SALOME_USE_SALOMEOBJECT)
 
+##
+# OpenGL utils
+##
+IF(SALOME_USE_OCCVIEWER OR SALOME_USE_VTKVIEWER OR SALOME_USE_GLVIEWER)
+  ADD_SUBDIRECTORY(OpenGLUtils)
+ENDIF(SALOME_USE_OCCVIEWER OR SALOME_USE_VTKVIEWER OR SALOME_USE_GLVIEWER)
+
 ##
 # GL viewer
 ##
 IF(SALOME_USE_GLVIEWER)
-  SET(SUBDIRS_GLVIEWER GLViewer)
+  ADD_SUBDIRECTORY(GLViewer)
 ENDIF(SALOME_USE_GLVIEWER)
 
 ##
 # VTK viewer
 ##
 IF(SALOME_USE_VTKVIEWER)
-  SET(SUBDIRS_VTKVIEWER VTKViewer)
-
+  ADD_SUBDIRECTORY(VTKViewer)
   IF(SALOME_USE_SALOMEOBJECT)
-    LIST(APPEND SUBDIRS_VTKVIEWER SVTK)
+    ADD_SUBDIRECTORY(SVTK)
   ENDIF(SALOME_USE_SALOMEOBJECT)
 ENDIF(SALOME_USE_VTKVIEWER)
 
@@ -54,10 +77,9 @@ ENDIF(SALOME_USE_VTKVIEWER)
 # OCC viewer
 ##
 IF(SALOME_USE_OCCVIEWER)
-  SET(SUBDIRS_OCCVIEWER OCCViewer)
-  
+  ADD_SUBDIRECTORY(OCCViewer)
   IF(SALOME_USE_SALOMEOBJECT)
-    LIST(APPEND SUBDIRS_OCCVIEWER SOCC)
+    ADD_SUBDIRECTORY(SOCC)
   ENDIF(SALOME_USE_SALOMEOBJECT)
 ENDIF(SALOME_USE_OCCVIEWER)
 
@@ -65,10 +87,9 @@ ENDIF(SALOME_USE_OCCVIEWER)
 # Plot2d viewer
 ##
 IF(SALOME_USE_PLOT2DVIEWER)
-  SET(SUBDIRS_PLOT2DVIEWER Plot2d)
-
+  ADD_SUBDIRECTORY(Plot2d)
   IF(SALOME_USE_SALOMEOBJECT)
-    LIST(APPEND SUBDIRS_PLOT2DVIEWER SPlot2d)
+    ADD_SUBDIRECTORY(SPlot2d)
   ENDIF(SALOME_USE_SALOMEOBJECT)
 ENDIF(SALOME_USE_PLOT2DVIEWER)
 
@@ -76,51 +97,60 @@ ENDIF(SALOME_USE_PLOT2DVIEWER)
 # Qx scene viewer
 ##
 IF(SALOME_USE_QXGRAPHVIEWER)
-  SET(SUBDIRS_QXGRAPHVIEWER QxScene)
+  ADD_SUBDIRECTORY(QxScene)
 ENDIF(SALOME_USE_QXGRAPHVIEWER)
 
 # Graphics viewer
 ##
 IF(SALOME_USE_GRAPHICSVIEW)
-  SET(SUBDIRS_GRAPHICSVIEW GraphicsView)
+  ADD_SUBDIRECTORY(GraphicsView)
 ENDIF(SALOME_USE_GRAPHICSVIEW)
 
+# ParaView Viewer
+IF(SALOME_USE_PVVIEWER)
+  ADD_SUBDIRECTORY(PVViewer)
+  ADD_SUBDIRECTORY(PVServerService)
+ENDIF()
+
 ##
-# Python-based packages
+# Python Viewer
 ##
-IF(SALOME_USE_PYCONSOLE) 
-  SET(SUBDIRS_PYCONSOLE PyInterp PyConsole)
-  SET(SUBDIRS_PYTHON SALOME_SWIG SALOME_PY SALOME_PYQT)
+IF(SALOME_USE_PYVIEWER)
+  ADD_SUBDIRECTORY(PyViewer)
+ENDIF(SALOME_USE_PYVIEWER)
+
+##
+# Python-based packages, part 1 (generic)
+##
+IF(SALOME_USE_PYCONSOLE)
+  ADD_SUBDIRECTORY(SALOME_PYQT)
 ENDIF(SALOME_USE_PYCONSOLE)
 
+
 ##
 # Light SALOME packages
 ##
-SET(SUBDIRS_LIGHT LightApp ResExporter)
+ADD_SUBDIRECTORY(LightApp)
+
+##
+# Python-based packages, part 2 (LightApp-dependent)
+##
+IF(SALOME_USE_PYCONSOLE) 
+  IF(SALOME_USE_VTKVIEWER)
+    ADD_SUBDIRECTORY(SALOME_PY)
+  ENDIF(SALOME_USE_VTKVIEWER)
+  IF(SALOME_USE_SALOMEOBJECT)
+    ADD_SUBDIRECTORY(SALOME_SWIG)
+  ENDIF(SALOME_USE_SALOMEOBJECT)
+ENDIF(SALOME_USE_PYCONSOLE)
 
 ##
 # Full (CORBA) SALOME packages
 ##
 IF(NOT SALOME_LIGHT_ONLY)
-  SET(SUBDIRS_CORBA TOOLSGUI Session SalomeApp GuiHelpers TreeData)
+  ADD_SUBDIRECTORY(TOOLSGUI)
+  ADD_SUBDIRECTORY(SalomeApp)
+  ADD_SUBDIRECTORY(Session)
+  ADD_SUBDIRECTORY(GuiHelpers)
+  ADD_SUBDIRECTORY(TreeData)
 ENDIF(NOT SALOME_LIGHT_ONLY)
-
-SET(SUBDIRS
-  ${SUBDIRS_COMMON}
-  ${SUBDIRS_OBJECT}
-  ${SUBDIRS_GLVIEWER}
-  ${SUBDIRS_VTKVIEWER}
-  ${SUBDIRS_OCCVIEWER}
-  ${SUBDIRS_PLOT2DVIEWER}
-  ${SUBDIRS_QXGRAPHVIEWER}
-  ${SUBDIRS_GRAPHICSVIEW}
-  ${SUBDIRS_PYCONSOLE}
-  ${SUBDIRS_LIGHT}
-  ${SUBDIRS_CORBA}
-  ${SUBDIRS_PYTHON}
-)
-
-FOREACH(dir ${SUBDIRS})
- ADD_SUBDIRECTORY(${dir})
-ENDFOREACH(dir ${SUBDIRS})
-