Salome HOME
Porting CALCULATOR SALOME module build procedure to the CMake build system: some...
authorrnv <rnv@opencascade.com>
Mon, 14 Oct 2013 07:37:14 +0000 (07:37 +0000)
committerrnv <rnv@opencascade.com>
Mon, 14 Oct 2013 07:37:14 +0000 (07:37 +0000)
1) Move module configuration file to the root directory.
2) Remove deprecated files.

CMakeLists.txt
SalomeCOMPONENTConfig.cmake.in [new file with mode: 0644]
adm_local/cmake_files/CMakeLists.txt
adm_local/cmake_files/FindCOMPONENT.cmake [deleted file]
adm_local/cmake_files/SalomeCOMPONENTConfig.cmake.in [deleted file]

index dd3f6bc30d631c6c3280c76f9688878b7c6ebf31..be30c2783fa0ed76b443b27b4acc0f382b5dbf12 100755 (executable)
@@ -152,7 +152,7 @@ EXPORT(TARGETS ${_${PROJECT_NAME}_exposed_targets}
 SET(KERNEL_ROOT_DIR "${KERNEL_ROOT_DIR}")
  
 SET(CONF_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/include" "${PROJECT_BINARY_DIR}/include")
-CONFIGURE_PACKAGE_CONFIG_FILE(adm_local/cmake_files/${PROJECT_NAME}Config.cmake.in 
+CONFIGURE_PACKAGE_CONFIG_FILE(${PROJECT_NAME}Config.cmake.in
     ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
     INSTALL_DESTINATION "${SALOME_INSTALL_CMAKE_LOCAL}"
     PATH_VARS CONF_INCLUDE_DIRS SALOME_INSTALL_CMAKE_LOCAL CMAKE_INSTALL_PREFIX
diff --git a/SalomeCOMPONENTConfig.cmake.in b/SalomeCOMPONENTConfig.cmake.in
new file mode 100644 (file)
index 0000000..466e0de
--- /dev/null
@@ -0,0 +1,109 @@
+# - Config file for the @PROJECT_NAME@ package
+# It defines the following variables. 
+# Specific to the pacakge @PROJECT_NAME@ itself:
+#  @PROJECT_NAME_UC@_ROOT_DIR_EXP - the root path of the installation providing this CMake file
+#
+
+###############################################################
+#  Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or
+#  email : webmaster.salome@opencascade.com
+###############################################################
+
+### Initialisation performed by CONFIGURE_PACKAGE_CONFIG_FILE:
+@PACKAGE_INIT@
+
+# Load the dependencies for the libraries of @PROJECT_NAME@ 
+# (contains definitions for IMPORTED targets). This is only 
+# imported if we are not built as a subproject (in this case targets are already there)
+IF(NOT TARGET AddComponentEngine AND NOT @PROJECT_NAME@_BINARY_DIR)
+  INCLUDE("@PACKAGE_SALOME_INSTALL_CMAKE_LOCAL@/@PROJECT_NAME@Targets.cmake")
+ENDIF()   
+
+# Package root dir:
+SET_AND_CHECK(COMPONENT_ROOT_DIR_EXP "@PACKAGE_CMAKE_INSTALL_PREFIX@")
+
+# Include directories
+SET_AND_CHECK(COMPONENT_INCLUDE_DIRS "${COMPONENT_ROOT_DIR_EXP}/@SALOME_INSTALL_HEADERS@")
+
+#### Now the specificities
+
+# Options exported by the package:
+#SET(SALOME_BUILD_DOC   @SALOME_BUILD_DOC@)
+#SET(SALOME_BUILD_TESTS @SALOME_BUILD_TESTS@)
+
+# Level 1 prerequisites:
+SET_AND_CHECK(KERNEL_ROOT_DIR_EXP "@PACKAGE_KERNEL_ROOT_DIR@")
+
+# For all prerequisites, load the corresponding targets if the package was used 
+# in CONFIG mode. This ensures dependent projects link correctly
+# without having to set LD_LIBRARY_PATH:
+SET(_PREREQ )
+SET(_PREREQ_CONFIG_DIR )
+LIST(LENGTH _PREREQ_CONFIG_DIR _list_len)
+# Another CMake stupidity - FOREACH(... RANGE r) generates r+1 numbers ...
+MATH(EXPR _range "${_list_len}-1")
+FOREACH(_p RANGE ${_range})  
+  LIST(GET _PREREQ            ${_p} _pkg    )
+  LIST(GET _PREREQ_CONFIG_DIR ${_p} _pkg_dir)
+  IF(_pkg_dir)
+     MESSAGE(STATUS "===> Reloading targets from ${_pkg} ...")
+     FIND_PACKAGE(${_pkg} REQUIRED NO_MODULE 
+          PATHS "${_pkg_dir}" 
+          NO_DEFAULT_PATH)
+  ENDIF()
+ENDFOREACH()
+
+# Installation directories
+SET(SALOME_INSTALL_BINS "@SALOME_INSTALL_BINS@")
+SET(SALOME_INSTALL_LIBS "@SALOME_INSTALL_LIBS@")
+SET(SALOME_INSTALL_IDLS "@SALOME_INSTALL_IDLS@")
+SET(SALOME_INSTALL_HEADERS "@SALOME_INSTALL_HEADERS@")
+SET(SALOME_INSTALL_SCRIPT_SCRIPTS "@SALOME_INSTALL_SCRIPT_SCRIPTS@")
+SET(SALOME_INSTALL_SCRIPT_DATA "@SALOME_INSTALL_SCRIPT_DATA@")
+SET(SALOME_INSTALL_SCRIPT_PYTHON "@SALOME_INSTALL_SCRIPT_PYTHON@")
+SET(SALOME_INSTALL_APPLISKEL_SCRIPTS "@SALOME_INSTALL_APPLISKEL_SCRIPTS@")
+SET(SALOME_INSTALL_APPLISKEL_PYTHON "@SALOME_INSTALL_APPLISKEL_PYTHON@") 
+SET(SALOME_INSTALL_CMAKE_LOCAL "@SALOME_INSTALL_CMAKE_LOCAL@")
+SET(SALOME_INSTALL_PYTHON "@SALOME_INSTALL_PYTHON@")
+SET(SALOME_INSTALL_PYTHON_SHARED "@SALOME_INSTALL_PYTHON_SHARED@")
+SET(SALOME_INSTALL_RES "@SALOME_INSTALL_RES@")
+SET(SALOME_INSTALL_DOC "@SALOME_INSTALL_DOC@")
+SET(SALOME_INSTALL_AMCONFIG_LOCAL "@SALOME_INSTALL_AMCONFIG_LOCAL@")
+
+# Include KERNEL targets if they were not already loaded:
+IF(NOT (TARGET SALOMEBasics)) 
+  INCLUDE("${KERNEL_ROOT_DIR_EXP}/${SALOME_INSTALL_CMAKE}/SalomeKERNELTargets.cmake")
+ENDIF()
+
+# Exposed COMPONENT targets:
+SET(COMPONENT_AddComponentEngine AddComponentEngine)
+SET(COMPONENT_AdditionComponentEngine AdditionComponentEngine)
+SET(COMPONENT_DivComponentEngine DivComponentEngine)
+SET(COMPONENT_MulComponentEngine MulComponentEngine)
+SET(COMPONENT_SubComponentEngine SubComponentEngine)
+SET(COMPONENT_SyrComponentEngine SyrComponentEngine)
+SET(COMPONENT_TypesCheckEngine TypesCheckEngine)
+SET(COMPONENT_DataStreamFactoryEngine DataStreamFactoryEngine)
+SET(COMPONENT_SIGNALSComponentEngine SIGNALSComponentEngine)
+SET(COMPONENT_UndefinedSymbolComponentEngine UndefinedSymbolComponentEngine)
+SET(COMPONENT_DynInvoke DynInvoke)
+SET(COMPONENT_SalomeIDLCOMPONENT ${SalomeIDLCOMPONENT})
\ No newline at end of file
index 428324a446c29dcd5123d5c060970cfeed94d2da..97706cf429e1d0b391e25a39852b48c797ac23f2 100755 (executable)
@@ -23,7 +23,6 @@
 
 # These files are data, module or lib files
 SET(_adm_data
-  FindCOMPONENT.cmake
   FindSalomeCOMPONENT.cmake
 )
 INSTALL(FILES ${_adm_data} DESTINATION ${SALOME_INSTALL_CMAKE_LOCAL})
diff --git a/adm_local/cmake_files/FindCOMPONENT.cmake b/adm_local/cmake_files/FindCOMPONENT.cmake
deleted file mode 100644 (file)
index b18135d..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (C) 2007-2013  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
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-#
-
-SET(COMPONENT_CXXFLAGS -I${COMPONENT_ROOT_DIR}/include/salome) # to be removed
-SET(COMPONENT_INCLUDE_DIRS ${COMPONENT_ROOT_DIR}/include/salome)
-
-FIND_LIBRARY(COMPONENT_AddComponentEngine AddComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_AdditionComponentEngine AdditionComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_DataStreamFactoryEngine DataStreamFactoryEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_DivComponentEngine DivComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_MulComponentEngine MulComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_SIGNALSComponentEngine SIGNALSComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_SubComponentEngine SubComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_SyrComponentEngine SyrComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_DynInvoke DynInvoke ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_TypesCheckEngine TypesCheckEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_UndefinedSymbolComponentEngine UndefinedSymbolComponentEngine ${COMPONENT_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(COMPONENT_SalomeIDLCOMPONENT SalomeIDLCOMPONENT ${COMPONENT_ROOT_DIR}/lib/salome)
diff --git a/adm_local/cmake_files/SalomeCOMPONENTConfig.cmake.in b/adm_local/cmake_files/SalomeCOMPONENTConfig.cmake.in
deleted file mode 100644 (file)
index 466e0de..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-# - Config file for the @PROJECT_NAME@ package
-# It defines the following variables. 
-# Specific to the pacakge @PROJECT_NAME@ itself:
-#  @PROJECT_NAME_UC@_ROOT_DIR_EXP - the root path of the installation providing this CMake file
-#
-
-###############################################################
-#  Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-#
-#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU Lesser General Public
-#  License as published by the Free Software Foundation; either
-#  version 2.1 of the License.
-#
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Lesser General Public License for more details.
-#
-#  You should have received a copy of the GNU Lesser General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-#  See http://www.salome-platform.org/ or
-#  email : webmaster.salome@opencascade.com
-###############################################################
-
-### Initialisation performed by CONFIGURE_PACKAGE_CONFIG_FILE:
-@PACKAGE_INIT@
-
-# Load the dependencies for the libraries of @PROJECT_NAME@ 
-# (contains definitions for IMPORTED targets). This is only 
-# imported if we are not built as a subproject (in this case targets are already there)
-IF(NOT TARGET AddComponentEngine AND NOT @PROJECT_NAME@_BINARY_DIR)
-  INCLUDE("@PACKAGE_SALOME_INSTALL_CMAKE_LOCAL@/@PROJECT_NAME@Targets.cmake")
-ENDIF()   
-
-# Package root dir:
-SET_AND_CHECK(COMPONENT_ROOT_DIR_EXP "@PACKAGE_CMAKE_INSTALL_PREFIX@")
-
-# Include directories
-SET_AND_CHECK(COMPONENT_INCLUDE_DIRS "${COMPONENT_ROOT_DIR_EXP}/@SALOME_INSTALL_HEADERS@")
-
-#### Now the specificities
-
-# Options exported by the package:
-#SET(SALOME_BUILD_DOC   @SALOME_BUILD_DOC@)
-#SET(SALOME_BUILD_TESTS @SALOME_BUILD_TESTS@)
-
-# Level 1 prerequisites:
-SET_AND_CHECK(KERNEL_ROOT_DIR_EXP "@PACKAGE_KERNEL_ROOT_DIR@")
-
-# For all prerequisites, load the corresponding targets if the package was used 
-# in CONFIG mode. This ensures dependent projects link correctly
-# without having to set LD_LIBRARY_PATH:
-SET(_PREREQ )
-SET(_PREREQ_CONFIG_DIR )
-LIST(LENGTH _PREREQ_CONFIG_DIR _list_len)
-# Another CMake stupidity - FOREACH(... RANGE r) generates r+1 numbers ...
-MATH(EXPR _range "${_list_len}-1")
-FOREACH(_p RANGE ${_range})  
-  LIST(GET _PREREQ            ${_p} _pkg    )
-  LIST(GET _PREREQ_CONFIG_DIR ${_p} _pkg_dir)
-  IF(_pkg_dir)
-     MESSAGE(STATUS "===> Reloading targets from ${_pkg} ...")
-     FIND_PACKAGE(${_pkg} REQUIRED NO_MODULE 
-          PATHS "${_pkg_dir}" 
-          NO_DEFAULT_PATH)
-  ENDIF()
-ENDFOREACH()
-
-# Installation directories
-SET(SALOME_INSTALL_BINS "@SALOME_INSTALL_BINS@")
-SET(SALOME_INSTALL_LIBS "@SALOME_INSTALL_LIBS@")
-SET(SALOME_INSTALL_IDLS "@SALOME_INSTALL_IDLS@")
-SET(SALOME_INSTALL_HEADERS "@SALOME_INSTALL_HEADERS@")
-SET(SALOME_INSTALL_SCRIPT_SCRIPTS "@SALOME_INSTALL_SCRIPT_SCRIPTS@")
-SET(SALOME_INSTALL_SCRIPT_DATA "@SALOME_INSTALL_SCRIPT_DATA@")
-SET(SALOME_INSTALL_SCRIPT_PYTHON "@SALOME_INSTALL_SCRIPT_PYTHON@")
-SET(SALOME_INSTALL_APPLISKEL_SCRIPTS "@SALOME_INSTALL_APPLISKEL_SCRIPTS@")
-SET(SALOME_INSTALL_APPLISKEL_PYTHON "@SALOME_INSTALL_APPLISKEL_PYTHON@") 
-SET(SALOME_INSTALL_CMAKE_LOCAL "@SALOME_INSTALL_CMAKE_LOCAL@")
-SET(SALOME_INSTALL_PYTHON "@SALOME_INSTALL_PYTHON@")
-SET(SALOME_INSTALL_PYTHON_SHARED "@SALOME_INSTALL_PYTHON_SHARED@")
-SET(SALOME_INSTALL_RES "@SALOME_INSTALL_RES@")
-SET(SALOME_INSTALL_DOC "@SALOME_INSTALL_DOC@")
-SET(SALOME_INSTALL_AMCONFIG_LOCAL "@SALOME_INSTALL_AMCONFIG_LOCAL@")
-
-# Include KERNEL targets if they were not already loaded:
-IF(NOT (TARGET SALOMEBasics)) 
-  INCLUDE("${KERNEL_ROOT_DIR_EXP}/${SALOME_INSTALL_CMAKE}/SalomeKERNELTargets.cmake")
-ENDIF()
-
-# Exposed COMPONENT targets:
-SET(COMPONENT_AddComponentEngine AddComponentEngine)
-SET(COMPONENT_AdditionComponentEngine AdditionComponentEngine)
-SET(COMPONENT_DivComponentEngine DivComponentEngine)
-SET(COMPONENT_MulComponentEngine MulComponentEngine)
-SET(COMPONENT_SubComponentEngine SubComponentEngine)
-SET(COMPONENT_SyrComponentEngine SyrComponentEngine)
-SET(COMPONENT_TypesCheckEngine TypesCheckEngine)
-SET(COMPONENT_DataStreamFactoryEngine DataStreamFactoryEngine)
-SET(COMPONENT_SIGNALSComponentEngine SIGNALSComponentEngine)
-SET(COMPONENT_UndefinedSymbolComponentEngine UndefinedSymbolComponentEngine)
-SET(COMPONENT_DynInvoke DynInvoke)
-SET(COMPONENT_SalomeIDLCOMPONENT ${SalomeIDLCOMPONENT})
\ No newline at end of file