From aba8006b95517259efa1c77b1aefa9445cec2819 Mon Sep 17 00:00:00 2001 From: wmayer Date: Thu, 17 Nov 2016 17:46:42 +0100 Subject: [PATCH] Add cmake switch to choose between official OpenCascade version and community edition --- CMakeLists.txt | 7 +++++++ cMake/FindOpenCasCade.cmake | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cfcb3ccb4a9f..dc065bea2c16 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -158,6 +158,13 @@ OPTION(FREECAD_USE_EXTERNAL_KDL "Use system installed orocos-kdl instead of the OPTION(FREECAD_USE_FREETYPE "Builds the features using FreeType libs" ON) OPTION(FREECAD_BUILD_DEBIAN "Prepare for a build of a Debian package" OFF) +# https://blog.kitware.com/constraining-values-with-comboboxes-in-cmake-cmake-gui/ +set(FREECAD_USE_OCC_VARIANT "Community Edition" CACHE STRING "Official OpenCASCADE version or community edition") +set_property(CACHE FREECAD_USE_OCC_VARIANT PROPERTY STRINGS + "Official Version" + "Community Edition" +) + if(APPLE) OPTION(FREECAD_CREATE_MAC_APP "Create app bundle on install" OFF) diff --git a/cMake/FindOpenCasCade.cmake b/cMake/FindOpenCasCade.cmake index fbcc2621d735..9944b8adee9c 100644 --- a/cMake/FindOpenCasCade.cmake +++ b/cMake/FindOpenCasCade.cmake @@ -23,7 +23,10 @@ if(NOT DEFINED OCE_DIR) endif() endif() -find_package(OCE QUIET) +if(${FREECAD_USE_OCC_VARIANT} MATCHES "Community Edition") + find_package(OCE QUIET) +endif() + if(OCE_FOUND) message(STATUS "-- OpenCASCADE Community Edition has been found.") # Disable this define. For more details see bug #0001872