| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- if(TARGET CGAL::CGAL)
- return()
- endif()
- message(STATUS "Third-party: creating target 'CGAL::CGAL'")
- include(FetchContent)
- FetchContent_Declare(
- cgal
- URL https://github.com/CGAL/cgal/releases/download/v5.4/CGAL-5.4-library.tar.xz
- URL_MD5 996f7ee9ba1553edac60debb115699cd
- )
- FetchContent_GetProperties(cgal)
- if(cgal_POPULATED)
- return()
- endif()
- FetchContent_Populate(cgal)
- function(cgal_import_target)
- macro(ignore_package NAME VERSION_NUM)
- include(CMakePackageConfigHelpers)
- file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${NAME}/${NAME}Config.cmake "")
- write_basic_package_version_file(
- ${CMAKE_CURRENT_BINARY_DIR}/${NAME}/${NAME}ConfigVersion.cmake
- VERSION ${VERSION_NUM}
- COMPATIBILITY AnyNewerVersion
- )
- set(${NAME}_DIR ${CMAKE_CURRENT_BINARY_DIR}/${NAME} CACHE PATH "")
- set(${NAME}_ROOT ${CMAKE_CURRENT_BINARY_DIR}/${NAME} CACHE PATH "")
- endmacro()
- include(gmp)
- include(mpfr)
- include(boost)
- ignore_package(GMP 5.0.1)
- set(GMP_INCLUDE_DIR ${gmp_INCLUDE_DIR})
- set(GMP_LIBRARIES gmp::gmp)
- set(GMPXX_INCLUDE_DIR ${GMP_INCLUDE_DIR})
- set(GMPXX_LIBRARIES ${GMP_LIBRARIES})
- ignore_package(MPFR 3.0.0)
- set(MPFR_INCLUDE_DIR "")
- set(MPFR_LIBRARIES mpfr::mpfr)
- ignore_package(Boost 1.71.0)
- set(Boost_INCLUDE_DIRS "")
- set(Boost_LIBRARIES Boost::thread Boost::system)
- # Prefer Config mode before Module mode to prevent CGAL from loading its own FindXXX.cmake
- set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE)
- # https://stackoverflow.com/a/71714947/148668
- set(CGAL_DATA_DIR "unspecified")
- find_package(CGAL CONFIG COMPONENTS Core PATHS ${cgal_SOURCE_DIR} NO_DEFAULT_PATH)
- endfunction()
- cgal_import_target()
|