From edd46b9e29706c0b1cf9c0ad7e9cab9b5ab8182b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Loriot?= Date: Mon, 21 Jul 2025 12:16:48 +0200 Subject: [PATCH] fix build of tests/examples/demos for a release it will not work in branch build mode but I'm not sure this is something we want to support. --- Installation/cmake/modules/CGALHelpers.cmake | 2 +- Installation/demo/CMakeLists.txt | 19 ++++++++++++++----- Installation/examples/CMakeLists.txt | 20 +++++++++++++++----- Installation/test/CMakeLists.txt | 18 +++++++++++++----- 4 files changed, 43 insertions(+), 16 deletions(-) diff --git a/Installation/cmake/modules/CGALHelpers.cmake b/Installation/cmake/modules/CGALHelpers.cmake index de42f8cf269..f29fd11111b 100644 --- a/Installation/cmake/modules/CGALHelpers.cmake +++ b/Installation/cmake/modules/CGALHelpers.cmake @@ -9,7 +9,7 @@ function(process_CGAL_subdirectory entry subdir type_name) make_directory("${CMAKE_BINARY_DIR}/${subdir}/${ENTRY_DIR_NAME}") endif() - message("\n-- Configuring ${subdir} in ${subdir}/${ENTRY_DIR_NAME}") + message("-- Configuring ${subdir} in ${subdir}/${ENTRY_DIR_NAME}") set(source_dir "") if(EXISTS ${entry}/CMakeLists.txt) diff --git a/Installation/demo/CMakeLists.txt b/Installation/demo/CMakeLists.txt index 92606a5b9d2..011b436cc53 100644 --- a/Installation/demo/CMakeLists.txt +++ b/Installation/demo/CMakeLists.txt @@ -1,7 +1,16 @@ +project(CGAL_Demos) + cmake_minimum_required(VERSION 3.12...3.31) -if(NOT CGAL_MODULES_DIR) - find_package(CGAL REQUIRED) -endif() -include(${CGAL_MODULES_DIR}/CGALHelpers.cmake) -CGAL_handle_subdirectories(demo demos) +file(GLOB pkgs RELATIVE ${CMAKE_SOURCE_DIR} "*") +list(SORT pkgs) + +message("== Generating build files for demos ==") +foreach(pkg ${pkgs}) + set(pkg_dir ${CMAKE_SOURCE_DIR}/${pkg}) + if(IS_DIRECTORY "${pkg_dir}" AND EXISTS "${pkg_dir}/CMakeLists.txt") + message("\n-- Configuring ${pkg}") + add_subdirectory(${pkg_dir} "${CMAKE_BINARY_DIR}/${pkg}") + endif() +endforeach() +message("== Generating build files for done (DONE) ==") diff --git a/Installation/examples/CMakeLists.txt b/Installation/examples/CMakeLists.txt index e0034b4727f..9fc6ac0858b 100644 --- a/Installation/examples/CMakeLists.txt +++ b/Installation/examples/CMakeLists.txt @@ -1,6 +1,16 @@ +project(CGAL_Examples) + cmake_minimum_required(VERSION 3.12...3.31) -if(NOT CGAL_MODULES_DIR) - find_package(CGAL REQUIRED) -endif() -include(${CGAL_MODULES_DIR}/CGALHelpers.cmake) -CGAL_handle_subdirectories(examples examples) + +file(GLOB pkgs RELATIVE ${CMAKE_SOURCE_DIR} "*") +list(SORT pkgs) + +message("== Generating build files for examples ==") +foreach(pkg ${pkgs}) + set(pkg_dir ${CMAKE_SOURCE_DIR}/${pkg}) + if(IS_DIRECTORY "${pkg_dir}" AND EXISTS "${pkg_dir}/CMakeLists.txt") + message("\n-- Configuring ${pkg}") + add_subdirectory(${pkg_dir} "${CMAKE_BINARY_DIR}/${pkg}") + endif() +endforeach() +message("== Generating build files for done (DONE) ==") diff --git a/Installation/test/CMakeLists.txt b/Installation/test/CMakeLists.txt index 64d616edd57..e8e81f0c032 100644 --- a/Installation/test/CMakeLists.txt +++ b/Installation/test/CMakeLists.txt @@ -1,8 +1,16 @@ +project(CGAL_Tests) + cmake_minimum_required(VERSION 3.12...3.31) +file(GLOB pkgs RELATIVE ${CMAKE_SOURCE_DIR} "*") +list(SORT pkgs) -if(NOT CGAL_MODULES_DIR) - find_package(CGAL REQUIRED) -endif() -include(${CGAL_MODULES_DIR}/CGALHelpers.cmake) -CGAL_handle_subdirectories(test tests) +message("== Generating build files for tests ==") +foreach(pkg ${pkgs}) + set(pkg_dir ${CMAKE_SOURCE_DIR}/${pkg}) + if(IS_DIRECTORY "${pkg_dir}" AND EXISTS "${pkg_dir}/CMakeLists.txt") + message("\n-- Configuring ${pkg}") + add_subdirectory(${pkg_dir} "${CMAKE_BINARY_DIR}/${pkg}") + endif() +endforeach() +message("== Generating build files for done (DONE) ==")