diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 27f4159424..75dbc3319b 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -100,6 +100,12 @@ UNIFY_ENVVARS_AND_CACHE(LIBXML2_INCLUDE_DIR) UNIFY_ENVVARS_AND_CACHE(LIBXML2_LIBRARIES) UNIFY_ENVVARS_AND_CACHE(PCRE_LIBRARY_DIR) UNIFY_ENVVARS_AND_CACHE(PYTHON_EXECUTABLE) +UNIFY_ENVVARS_AND_CACHE(CGAL_INCLUDE_DIR) +UNIFY_ENVVARS_AND_CACHE(CGAL_LIBRARY_DIR) +UNIFY_ENVVARS_AND_CACHE(GMP_INCLUDE_DIR) +UNIFY_ENVVARS_AND_CACHE(GMP_LIBRARY_DIR) +UNIFY_ENVVARS_AND_CACHE(MPFR_INCLUDE_DIR) +UNIFY_ENVVARS_AND_CACHE(MPFR_LIBRARY_DIR) IF(WIN32) UNIFY_ENVVARS_AND_CACHE(THREEDS_MAX_SDK_HOME) ENDIF() @@ -237,6 +243,48 @@ foreach(lib ${OPENCASCADE_LIBRARY_NAMES}) list(APPEND OPENCASCADE_LIBRARIES "${lib_path}") endforeach() +SET(CGAL_LIBRARY_NAMES libCGAL_Core libCGAL_ImageIO libCGAL) +# Find CGAL +IF("${CGAL_INCLUDE_DIR}" STREQUAL "") + SET(CGAL_INCLUDE_DIR "/usr/include/" CACHE FILEPATH "CGAL header files") + MESSAGE(STATUS "Looking for CGAL include files in: ${CGAL_INCLUDE_DIR}") + MESSAGE(STATUS "Use CGAL_INCLUDE_DIR to specify another directory") +ELSE() + SET(CGAL_INCLUDE_DIR ${CGAL_INCLUDE_DIR} CACHE FILEPATH "CGAL header files") + MESSAGE(STATUS "Looking for CGAL include files in: ${CGAL_INCLUDE_DIR}") +ENDIF() +IF("${CGAL_LIBRARY_DIR}" STREQUAL "") + SET(CGAL_LIBRARY_DIR "/usr/lib/" CACHE FILEPATH "CGAL library files") + MESSAGE(STATUS "Looking for CGAL library files in: ${CGAL_LIBRARY_DIR}") + MESSAGE(STATUS "Use CGAL_LIBRARY_DIR to specify another directory") +ELSE() + SET(CGAL_LIBRARY_DIR ${CGAL_LIBRARY_DIR} CACHE FILEPATH "CGAL library files") + MESSAGE(STATUS "Looking for CGAL library files in: ${CGAL_LIBRARY_DIR}") +ENDIF() +FIND_LIBRARY(libCGAL NAMES CGAL PATHS ${CGAL_LIBRARY_DIR} NO_DEFAULT_PATH) +IF(libCGAL) + MESSAGE(STATUS "CGAL library files found") +ELSE() + MESSAGE(FATAL_ERROR "Unable to find CGAL library files, aborting") +ENDIF() +foreach(lib ${CGAL_LIBRARY_NAMES}) + string(REPLACE libCGAL "${lib}" lib_path "${libCGAL}") + list(APPEND CGAL_LIBRARIES "${lib_path}") +endforeach() +FIND_LIBRARY(libGMP NAMES gmp PATHS ${GMP_LIBRARY_DIR} NO_DEFAULT_PATH) +FIND_LIBRARY(libMPFR NAMES mpfr PATHS ${MPFR_LIBRARY_DIR} NO_DEFAULT_PATH) +IF(NOT libGMP) + MESSAGE(FATAL_ERROR "Unable to find GMP library files, aborting") +ENDIF() +IF(NOT libMPFR) + MESSAGE(FATAL_ERROR "Unable to find MPFR library files, aborting") +ENDIF() +list(APPEND CGAL_LIBRARIES "${libGMP}") +list(APPEND CGAL_LIBRARIES "${libMPFR}") + + + + if(MSVC) add_definitions(-DHAVE_NO_DLL) add_debug_variants(OPENCASCADE_LIBRARIES "${OPENCASCADE_LIBRARIES}" d) @@ -463,6 +511,7 @@ endif() INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} ${OCC_INCLUDE_DIR} ${OPENCOLLADA_INCLUDE_DIRS} ${ICU_INCLUDE_DIR} ${Boost_INCLUDE_DIRS} ${LIBXML2_INCLUDE_DIR} + ${CGAL_INCLUDE_DIR} ${GMP_INCLUDE_DIR} ${MPFR_INCLUDE_DIR} ) function(files_for_ifc_version IFC_VERSION RESULT_NAME)