Salome HOME
Migration to OCCT > 6.9.0
[modules/kernel.git] / salome_adm / cmake_files / FindCAS.cmake
index 05b0061a504e2cf90535d5d3afab9afbcf17532d..7646276a051efa695b677110a38a7df121507c90 100644 (file)
@@ -1,9 +1,9 @@
-# Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2015  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.
+# version 2.1 of the License, or (at your option) any later version.
 #
 # This library is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -28,24 +28,19 @@ FIND_PATH(CAS_INCLUDE_DIRS ${_CAS_VERSION_FILE_NAME} PATH_SUFFIXES inc)
 FIND_FILE(CAS_VERSION_FILE ${_CAS_VERSION_FILE_NAME} PATH_SUFFIXES inc)
 MARK_AS_ADVANCED(CAS_VERSION_FILE)
 
-# Is this a development version:
 SET(CAS_VERSION_DEVELOPMENT 0)
 IF(CAS_VERSION_FILE)
+  # Check if this is a development version:
   FILE(STRINGS ${CAS_VERSION_FILE} CAS_VERSION_DEVELOPMENT_STR
-      REGEX "^ *#define OCC_VERSION_DEVELOPMENT *\"dev\".*$")
+      REGEX "^ *#define OCC_VERSION_DEVELOPMENT")
   IF(CAS_VERSION_DEVELOPMENT_STR)
     SET(CAS_VERSION_DEVELOPMENT 1)
   ENDIF(CAS_VERSION_DEVELOPMENT_STR)
   
-  # Extract normal version:
+  # Extract actual version number:
   FILE(STRINGS ${CAS_VERSION_FILE} _tmp
       REGEX "^ *#define OCC_VERSION_COMPLETE *\"[^\"]*\".*$")
   STRING(REGEX REPLACE ".*\"([^\"]*)\".*" "\\1" CAS_VERSION_STR "${_tmp}")
-      
-ENDIF()
-
-IF(CAS_VERSION_DEVELOPMENT AND (NOT CAS_FIND_QUIETLY))
-  MESSAGE(STATUS "OpenCascade: development version is being used!")
 ENDIF()
 
 # Win specific stuff:
@@ -62,9 +57,9 @@ SET(CAS_DEFINITIONS "-DLIN -DLINTEL -DCSFDB")
 SET(CAS_DEFINITIONS "${CAS_DEFINITIONS} -DNo_exception")
 
 # No config.h file in the OPEN CASCADE on WINDOWS platform 
-IF(NOT WINDOWS)
+IF(NOT WIN32)
  SET(CAS_DEFINITIONS "${CAS_DEFINITIONS} -DHAVE_CONFIG_H")
-ENDIF(NOT WINDOWS)
+ENDIF()
 
 SET(CAS_DEFINITIONS "${CAS_DEFINITIONS} -DOCC_CONVERT_SIGNALS")
 
@@ -73,10 +68,6 @@ IF(CMAKE_SIZEOF_VOID_P STREQUAL 8)
   SET(CAS_DEFINITIONS "${CAS_DEFINITIONS} -D_OCC64")
 ENDIF()
 
-IF(CAS_VERSION_DEVELOPMENT STREQUAL 1)
-  SET(CAS_DEFINITIONS "${CAS_DEFINITIONS} -DCAS_VERSION_DEVELOPMENT")
-ENDIF()
-
 # Find Xmu library (X11 widgets?)
 IF(NOT WIN32)
   FIND_LIBRARY(CAS_Xmu Xmu)
@@ -85,15 +76,8 @@ IF(NOT WIN32)
   ENDIF()
 ENDIF()
 
-#FIND_LIBRARY(CAS_BinLPlugin BinLPlugin )
-#FIND_LIBRARY(CAS_BinPlugin BinPlugin )
-#FIND_LIBRARY(CAS_BinTObjPlugin BinTObjPlugin )
-#FIND_LIBRARY(CAS_BinXCAFPlugin BinXCAFPlugin )
 FIND_LIBRARY(CAS_FWOSPlugin FWOSPlugin )
 FIND_LIBRARY(CAS_PTKernel PTKernel )
-#FIND_LIBRARY(CAS_StdLPlugin StdLPlugin )
-#FIND_LIBRARY(CAS_StdPlugin StdPlugin )
-FIND_LIBRARY(CAS_TKAdvTools TKAdvTools )
 FIND_LIBRARY(CAS_TKBin TKBin )
 FIND_LIBRARY(CAS_TKBinL TKBinL )
 FIND_LIBRARY(CAS_TKBinTObj TKBinTObj )
@@ -116,7 +100,9 @@ FIND_LIBRARY(CAS_TKLCAF TKLCAF )
 FIND_LIBRARY(CAS_TKMath TKMath )
 FIND_LIBRARY(CAS_TKMesh TKMesh )
 FIND_LIBRARY(CAS_TKMeshVS TKMeshVS )
-FIND_LIBRARY(CAS_TKNIS TKNIS )
+IF(CAS_VERSION_STR VERSION_LESS "6.9.1")
+  FIND_LIBRARY(CAS_TKNIS TKNIS )
+ENDIF()
 FIND_LIBRARY(CAS_TKOffset TKOffset )
 FIND_LIBRARY(CAS_TKOpenGl TKOpenGl )
 FIND_LIBRARY(CAS_TKPCAF TKPCAF )
@@ -135,7 +121,6 @@ FIND_LIBRARY(CAS_TKSTEPBase TKSTEPBase )
 FIND_LIBRARY(CAS_TKSTL TKSTL )
 FIND_LIBRARY(CAS_TKTObj TKTObj )
 FIND_LIBRARY(CAS_TKTopAlgo TKTopAlgo )
-#FIND_LIBRARY(CAS_TKV2d TKV2d )
 FIND_LIBRARY(CAS_TKV3d TKV3d )
 FIND_LIBRARY(CAS_TKVRML TKVRML )
 FIND_LIBRARY(CAS_TKXCAF TKXCAF )
@@ -148,11 +133,6 @@ FIND_LIBRARY(CAS_TKXmlL TKXmlL )
 FIND_LIBRARY(CAS_TKXmlTObj TKXmlTObj )
 FIND_LIBRARY(CAS_TKXmlXCAF TKXmlXCAF )
 FIND_LIBRARY(CAS_TKXSBase TKXSBase )
-#FIND_LIBRARY(CAS_XCAFPlugin XCAFPlugin )
-#FIND_LIBRARY(CAS_XmlLPlugin XmlLPlugin )
-#FIND_LIBRARY(CAS_XmlPlugin XmlPlugin )
-#FIND_LIBRARY(CAS_XmlTObjPlugin XmlTObjPlugin )
-#FIND_LIBRARY(CAS_XmlXCAFPlugin XmlXCAFPlugin )
 
 SET(CAS_KERNEL ${CAS_TKernel} ${CAS_TKMath})
 SET(CAS_OCAF ${CAS_TKernel} ${CAS_TKMath} ${CAS_TKCDF} ${CAS_TKLCAF})
@@ -176,69 +156,74 @@ SET(CAS_TKSTEP ${CAS_TKSTEP_EA})
 SET(CAS_TKSTL ${CAS_TKSTL_EA})
 SET(CAS_TKCAF ${CAS_TKCAF_EA})
 
-INCLUDE(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAS 
-      REQUIRED_VARS CAS_INCLUDE_DIRS  
-        CAS_FWOSPlugin
-        CAS_PTKernel
-        CAS_TKAdvTools
-        CAS_TKBin
-        CAS_TKBinL
-        CAS_TKBinTObj
-        CAS_TKBinXCAF
-        CAS_TKBO
-        CAS_TKBool
-        CAS_TKBRep
-        CAS_TKCAF
-        CAS_TKCDF
-        CAS_TKernel
-        CAS_TKFeat
-        CAS_TKFillet
-        CAS_TKG2d
-        CAS_TKG3d
-        CAS_TKGeomAlgo
-        CAS_TKGeomBase
-        CAS_TKHLR
-        CAS_TKIGES
-        CAS_TKLCAF
-        CAS_TKMath
-        CAS_TKMesh
-        CAS_TKMeshVS
-        CAS_TKNIS
-        CAS_TKOffset
-        CAS_TKOpenGl
-        CAS_TKPCAF
-        CAS_TKPLCAF
-        CAS_TKPrim
-        CAS_TKPShape
-        CAS_TKService
-        CAS_TKShapeSchema
-        CAS_TKShHealing
-        CAS_TKStdLSchema
-        CAS_TKStdSchema
-        CAS_TKSTEP
-        CAS_TKSTEP209
-        CAS_TKSTEPAttr
-        CAS_TKSTEPBase
-        CAS_TKSTL
-        CAS_TKTObj
-        CAS_TKTopAlgo
-        CAS_TKV3d
-        CAS_TKVRML
-        CAS_TKXCAF
-        CAS_TKXCAFSchema
-        CAS_TKXDEIGES
-        CAS_TKXDESTEP
-        CAS_TKXMesh
-        CAS_TKXml
-        CAS_TKXmlL
-        CAS_TKXmlTObj
-        CAS_TKXmlXCAF
-        CAS_TKXSBase
+SET(_libs
+  CAS_FWOSPlugin
+  CAS_PTKernel
+  CAS_TKBin
+  CAS_TKBinL
+  CAS_TKBinTObj
+  CAS_TKBinXCAF
+  CAS_TKBO
+  CAS_TKBool
+  CAS_TKBRep
+  CAS_TKCAF
+  CAS_TKCDF
+  CAS_TKernel
+  CAS_TKFeat
+  CAS_TKFillet
+  CAS_TKG2d
+  CAS_TKG3d
+  CAS_TKGeomAlgo
+  CAS_TKGeomBase
+  CAS_TKHLR
+  CAS_TKIGES
+  CAS_TKLCAF
+  CAS_TKMath
+  CAS_TKMesh
+  CAS_TKMeshVS
+  CAS_TKOffset
+  CAS_TKOpenGl
+  CAS_TKPCAF
+  CAS_TKPLCAF
+  CAS_TKPrim
+  CAS_TKPShape
+  CAS_TKService
+  CAS_TKShapeSchema
+  CAS_TKShHealing
+  CAS_TKStdLSchema
+  CAS_TKStdSchema
+  CAS_TKSTEP
+  CAS_TKSTEP209
+  CAS_TKSTEPAttr
+  CAS_TKSTEPBase
+  CAS_TKSTL
+  CAS_TKTObj
+  CAS_TKTopAlgo
+  CAS_TKV3d
+  CAS_TKVRML
+  CAS_TKXCAF
+  CAS_TKXCAFSchema
+  CAS_TKXDEIGES
+  CAS_TKXDESTEP
+  CAS_TKXMesh
+  CAS_TKXml
+  CAS_TKXmlL
+  CAS_TKXmlTObj
+  CAS_TKXmlXCAF
+  CAS_TKXSBase
 )
 
-IF(CAS_FOUND AND NOT CAS_FIND_QUIETLY)
-  MESSAGE(STATUS "Found OpenCascade version: ${CAS_VERSION_STR}")
+IF(CAS_VERSION_STR VERSION_LESS "6.9.1")
+  LIST(APPEND _libs CAS_TKNIS)
 ENDIF()
 
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAS REQUIRED_VARS CAS_INCLUDE_DIRS ${_libs})
 
+IF(CAS_FOUND AND NOT CAS_FIND_QUIETLY)
+  IF(CAS_VERSION_DEVELOPMENT)
+    MESSAGE(STATUS "Found OpenCascade version: ${CAS_VERSION_STR} (development)")
+  ELSE(CAS_VERSION_DEVELOPMENT)
+    MESSAGE(STATUS "Found OpenCascade version: ${CAS_VERSION_STR}")
+  ENDIF(CAS_VERSION_DEVELOPMENT)
+ENDIF()