Salome HOME
Additional fix of libxml2 check procedures for PARAVIS compilation (Linux)
[modules/kernel.git] / salome_adm / cmake_files / am2cmake.py
index 5b6d3874a8d62bb036993db570e75cda0b6694b7..8affe058b1c8d14ffe44c62e5bd8cfad875f2e7b 100644 (file)
@@ -1,3 +1,4 @@
+#  -*- coding: iso-8859-1 -*-
 #  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
@@ -438,6 +439,7 @@ class CMakeFile(object):
                 INCLUDE(${CMAKE_SOURCE_DIR}/salome_adm/cmake_files/FindLIBXML2.cmake)
                 INCLUDE(${CMAKE_SOURCE_DIR}/salome_adm/cmake_files/FindSWIG.cmake)
                 INCLUDE(${CMAKE_SOURCE_DIR}/salome_adm/cmake_files/FindCPPUNIT.cmake)
+                INCLUDE(${CMAKE_SOURCE_DIR}/salome_adm/cmake_files/FindDOXYGEN.cmake)
                 """)
                 pass
             else:
@@ -452,6 +454,7 @@ class CMakeFile(object):
                 INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindLIBXML2.cmake)
                 INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindSWIG.cmake)
                 INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindCPPUNIT.cmake)
+                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindDOXYGEN.cmake)
                 INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindKERNEL.cmake)
                 """)
                 if self.module == "gui":
@@ -545,12 +548,23 @@ class CMakeFile(object):
                     pass
                 pass
             # --
+            newlines.append("""
+            SET(DOXYGEN_IS_OK 0)
+            """)
+            if self.module not in ['med']:
+                newlines.append("""
+                IF(WINDOWS)
+                SET(CPPUNIT_IS_OK 0)
+                ENDIF(WINDOWS)
+                """)
+                pass
+            # --
             if self.module == "kernel":
                 newlines.append("""
                 SET(WITH_LOCAL 1)
                 SET(WITH_BATCH 1)
-                set(VERSION 5.1.2)
-                set(XVERSION 0x050102)
+                set(VERSION 5.1.3)
+                set(XVERSION 0x050103)
                 SET(CALCIUM_IDL_INT_F77 long)
                 SET(CALCIUM_CORBA_INT_F77 CORBA::Long)
                 SET(LONG_OR_INT int)
@@ -566,8 +580,8 @@ class CMakeFile(object):
                 SET(ENABLE_PYCONSOLE ON)
                 SET(ENABLE_SUPERVGRAPHVIEWER ON)
                 SET(ENABLE_QXGRAPHVIEWER ON)
-                set(VERSION 5.1.2)
-                set(XVERSION 0x050102)
+                set(VERSION 5.1.3)
+                set(XVERSION 0x050103)
                 """)
                 pass
             elif self.module == "geom":
@@ -619,6 +633,7 @@ class CMakeFile(object):
                 newlines.append("""
                 SET(SALOME_KERNEL ON)
                 SET(HAS_GUI ON)
+                SET(WITH_QT4 ON)
                 """)
                 pass
             # --
@@ -835,6 +850,12 @@ class CMakeFile(object):
         # --
         # Convert the .in files in build dir
         # --
+        if self.module == "yacs":
+            key = "salomegui"
+            if self.root[-len(key):] == key:
+                self.files.append("resources/YACSCatalog.xml.in")
+                pass
+            pass
         for f in self.files:
             if f[-3:] == ".in":
                 if f == "sstream.in":
@@ -937,9 +958,17 @@ class CMakeFile(object):
             COMMAND ${OMNIORB_IDL} ${flags} ${input}
             MAIN_DEPENDENCY ${input}
             )
+            ''')
+            newlines.append('''
             install(FILES ${input} DESTINATION idl/salome)
-            SET(IDL_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${base}.hh)
-            install(FILES ${IDL_HEADER} DESTINATION include/salome)
+            ''')
+            if self.module not in ["pyhello"]:
+                newlines.append('''
+                SET(IDL_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${base}.hh)
+                install(FILES ${IDL_HEADER} DESTINATION include/salome)
+                ''')
+                pass
+            newlines.append('''
             INSTALL(CODE "SET(IDL_FILE ${input})")
             INSTALL(CODE "SET(DIR lib/python${PYTHON_VERSION}/site-packages/salome)")
             INSTALL(CODE "SET(CMAKE_CURRENT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})")
@@ -993,9 +1022,22 @@ class CMakeFile(object):
             ELSE(SWIG_SOURCES MATCHES ";")
             SET(SWIG_SOURCES_FIRST "${SWIG_SOURCES}")
             ENDIF(SWIG_SOURCES MATCHES ";")
+            SET(flags)
+            FOREACH(f ${SWIG_FLAGS} ${MY_SWIG_FLAGS})
+            SET(test ON)
+            IF(flags)
+            LIST(FIND flags ${f} index)
+            IF(NOT index EQUAL -1)
+            SET(test OFF)
+            ENDIF(NOT index EQUAL -1)
+            ENDIF(flags)
+            IF(test)
+            SET(flags ${flags} ${f})
+            ENDIF(test)
+            ENDFOREACH(f ${SWIG_FLAGS} ${MY_SWIG_FLAGS})
             ADD_CUSTOM_COMMAND(
             OUTPUT ${build_srcs}
-            COMMAND ${SWIG_EXECUTABLE} ${SWIG_FLAGS} ${MY_SWIG_FLAGS} -o ${build_srcs} ${CMAKE_CURRENT_SOURCE_DIR}/${SWIG_SOURCES_FIRST}
+            COMMAND ${SWIG_EXECUTABLE} ${flags} -o ${build_srcs} ${CMAKE_CURRENT_SOURCE_DIR}/${SWIG_SOURCES_FIRST}
             MAIN_DEPENDENCY ${SWIG_SOURCES}
             )
             ''')
@@ -1029,9 +1071,6 @@ class CMakeFile(object):
             if self.module == "yacs":
                 newlines.append('''
                 STRING(REGEX REPLACE _moc.cxx .hxx input ${output})
-                IF(input STREQUAL WrapGraphicsView.hxx)
-                SET(input ../genericgui/${input})
-                ENDIF(input STREQUAL WrapGraphicsView.hxx)
                 ''')
             else:
                 newlines.append('''
@@ -1254,7 +1293,7 @@ class CMakeFile(object):
         ENDIF(WINDOWS)
         ''')
         # --
-        if self.module == "yacs":
+        if self.module in ["medfile", "yacs"]:
             newlines.append(r'''
             IF(WINDOWS)
             SET(var ${var} -DNOGDI)
@@ -1638,7 +1677,7 @@ class CMakeFile(object):
         IF(ext STREQUAL .qm)
         STRING(REGEX REPLACE .qm .ts input ${f})
         ''')
-        if self.module in ["kernel", "gui"]:
+        if self.module in ["kernel", "gui", "yacs"]:
             newlines.append(r'''
             SET(input ${CMAKE_CURRENT_SOURCE_DIR}/resources/${input})
             ''')
@@ -1741,8 +1780,14 @@ if __name__ == "__main__":
         except ValueError:
             pass
         # --
+        if "Makefile.am.cmake" in files:
+            if "Makefile.am" in files:
+                files.remove("Makefile.am")
+                pass
+            pass
+        # --
         for f in files:
-            if f == "Makefile.am":
+            if f in ["Makefile.am", "Makefile.am.cmake"]:
                 convertAmFile(the_root, root, dirs, files, f, module)
                 pass
             pass