--- /dev/null
+# Copyright (C) 2013-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
+# License as published by the Free Software Foundation; either
+# 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
+# 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
+#
+# Author: Roman NIKOLAEV
+#
+
+# OpenCascade detection for Salome
+#
+# !! Please read the generic detection procedure in SalomeMacros.cmake !!
+#
+
+SALOME_FIND_PACKAGE_AND_DETECT_CONFLICTS(OpenCASCADE OpenCASCADE_INCLUDE_DIR 2)
+
+IF(OpenCASCADE_FOUND)
+ SET(OPENCASCADE_VERSION_STR "${OpenCASCADE_MAJOR_VERSION}.${OpenCASCADE_MINOR_VERSION}.${OpenCASCADE_MAINTENANCE_VERSION}")
+
+ IF(NOT CAS_FIND_QUIETLY)
+ IF(OpenCASCADE_DEVELOPMENT_VERSION)
+ MESSAGE(STATUS "Found OpenCascade version: ${OPENCASCADE_VERSION_STR} (development)")
+ ELSE()
+ MESSAGE(STATUS "Found OpenCascade version: ${OPENCASCADE_VERSION_STR}")
+ ENDIF()
+ ENDIF()
+
+ # OPENCASCADE libraries
+ SET(OPENCASCADE_INCLUDE_DIRS ${OpenCASCADE_INCLUDE_DIR})
+ SET(OPENCASCADE_LIBRARIES ${OpenCASCADE_LIBRARIES})
+ SET(OPENCASCADE_KERNEL ${OpenCASCADE_FoundationClasses_LIBRARIES})
+ SET(OPENCASCADE_VISUALIZATION ${OpenCASCADE_Visualization_LIBRARIES})
+ SET(OPENCASCADE_MODELINGDATA ${OpenCASCADE_ModelingData_LIBRARIES})
+ SET(OPENCASCADE_MODELINGALGO ${OpenCASCADE_ModelingAlgorithms_LIBRARIES})
+ SET(OPENCASCADE_OCAF ${OpenCASCADE_ApplicationFramework_LIBRARIES})
+
+ # OPENCASCADE definitions
+ SET(OPENCASCADE_DEFINITIONS ${OpenCASCADE_C_FLAGS} ${OpenCASCADE_CXX_FLAGS} ${OpenCASCADE_LINKER_FLAGS} -DLIN)
+ SET(OPENCASCADE_DEFINITIONS ${OPENCASCADE_DEFINITIONS} -DLIN) # Is it really necessary ???
+
+ # Workaround: detect and add freetype to CAS_INCLUDE_DIRS
+ # It will be suppressed after the correction of the several bugs in
+ # the OCCT CMake configuration.
+ SET(Freetype_DIR $ENV{FREETYPE_ROOT_DIR})
+ FIND_PACKAGE(Freetype)
+
+ # Standard CMake Findfreetype.cmake doesn't find ft2build.h, do it manually:
+ # 1. Find custom freetype
+ FIND_PATH( FREETYPE_INCLUDE_DIR_ft2build ft2build.h
+ PATHS $ENV{FREETYPE_ROOT_DIR}
+ PATH_SUFFIXES include/freetype2 include freetype2
+ NO_DEFAULT_PATH )
+
+ # 2. Find native freetype, if custom doesn't found:
+ IF(NOT FREETYPE_INCLUDE_DIR_ft2build)
+ FIND_PATH( FREETYPE_INCLUDE_DIR_ft2build ft2build.h
+ PATH_SUFFIXES include/freetype2 include freetype2 )
+ ENDIF()
+ SET(OPENCASCADE_INCLUDE_DIRS ${OPENCASCADE_INCLUDE_DIRS} ${FREETYPE_INCLUDE_DIR_freetype2} ${FREETYPE_INCLUDE_DIR_ft2build})
+ # End of workaround
+
+ELSE()
+ IF(NOT CAS_FIND_QUIETLY)
+ MESSAGE(STATUS "Could not find OpenCASCADE ...")
+ ENDIF()
+ENDIF()
\ No newline at end of file