diff --git a/CMakeLists.txt b/CMakeLists.txt index cfcb3ccb4..dc065bea2 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 fbcc2621d..9944b8ade 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