From 1109ad8ee34cf4e89983e66a6cd42e43e4bb449d Mon Sep 17 00:00:00 2001 From: Lukas Matena Date: Mon, 30 Sep 2024 16:02:35 +0200 Subject: [PATCH] Some more CMake polishing --- src/libseqarrange/CMakeLists.txt | 45 ++++++++++++++++++- .../{ => libseqarrange}/seq_interface.hpp | 5 +-- src/libseqarrange/src/CMakeLists.txt | 23 ---------- .../{include => src}/seq_defs.hpp | 0 .../{include => src}/seq_preprocess.hpp | 0 .../{include => src}/seq_sequential.hpp | 0 .../{include => src}/seq_utilities.hpp | 0 .../{include => src}/seq_version.hpp | 0 src/libseqarrange/test/CMakeLists.txt | 22 --------- src/slic3r/CMakeLists.txt | 1 + src/slic3r/GUI/ArrangeHelper.cpp | 2 +- 11 files changed, 46 insertions(+), 52 deletions(-) rename src/libseqarrange/include/{ => libseqarrange}/seq_interface.hpp (98%) delete mode 100644 src/libseqarrange/src/CMakeLists.txt rename src/libseqarrange/{include => src}/seq_defs.hpp (100%) rename src/libseqarrange/{include => src}/seq_preprocess.hpp (100%) rename src/libseqarrange/{include => src}/seq_sequential.hpp (100%) rename src/libseqarrange/{include => src}/seq_utilities.hpp (100%) rename src/libseqarrange/{include => src}/seq_version.hpp (100%) delete mode 100644 src/libseqarrange/test/CMakeLists.txt diff --git a/src/libseqarrange/CMakeLists.txt b/src/libseqarrange/CMakeLists.txt index b2f56fbd8d..751d7149d9 100644 --- a/src/libseqarrange/CMakeLists.txt +++ b/src/libseqarrange/CMakeLists.txt @@ -1,5 +1,46 @@ cmake_minimum_required(VERSION 3.10) +cmake_minimum_required(VERSION 3.10) -add_subdirectory(src) -add_subdirectory(test) +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED True) +set(CMAKE_CXX_EXTENSIONS False) + +find_package(Z3 REQUIRED) +slic3r_remap_configs("z3::libz3" RelWithDebInfo Release) + +add_library(libseqarrange STATIC src/seq_interface.cpp src/seq_preprocess.cpp src/seq_sequential.cpp src/seq_utilities.cpp) +target_include_directories(libseqarrange PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange) +target_link_libraries(libseqarrange libslic3r z3::libz3) + +add_executable(sequential_arrange src/sequential_prusa.cpp) +target_include_directories(sequential_arrange PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange) +target_link_libraries(sequential_arrange libseqarrange) + +add_executable(sequential_decimator src/sequential_decimator.cpp) +target_include_directories(sequential_decimator PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange) +target_link_libraries(sequential_decimator libseqarrange) + + + +# The tests - separate executables for now. + +# Commented-out for now - depends on Gecode +# add_executable(seq_test_arrangement test/seq_test_arrangement.cpp) +# target_link_libraries(seq_test_arrangement libseqarrange) + +add_executable(seq_test_polygon test/seq_test_polygon.cpp test/prusaparts.cpp) +target_link_libraries(seq_test_polygon libseqarrange) +target_include_directories(seq_test_polygon PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src" "${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange") + +add_executable(seq_test_sequential test/seq_test_sequential.cpp) +target_link_libraries(seq_test_sequential libseqarrange) +target_include_directories(seq_test_sequential PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src" "${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange") + +add_executable(seq_test_preprocess test/seq_test_preprocess.cpp test/prusaparts.cpp) +target_link_libraries(seq_test_preprocess libseqarrange) +target_include_directories(seq_test_preprocess PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src" "${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange") + +add_executable(seq_test_interface test/seq_test_interface.cpp) +target_link_libraries(seq_test_interface libseqarrange) +target_include_directories(seq_test_interface PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src" "${CMAKE_CURRENT_SOURCE_DIR}/include/libseqarrange") diff --git a/src/libseqarrange/include/seq_interface.hpp b/src/libseqarrange/include/libseqarrange/seq_interface.hpp similarity index 98% rename from src/libseqarrange/include/seq_interface.hpp rename to src/libseqarrange/include/libseqarrange/seq_interface.hpp index 12b6730225..9f6633b7fc 100644 --- a/src/libseqarrange/include/seq_interface.hpp +++ b/src/libseqarrange/include/libseqarrange/seq_interface.hpp @@ -18,9 +18,6 @@ #include "libslic3r/Polygon.hpp" #include "libslic3r/Geometry/ConvexHull.hpp" -#include "seq_defs.hpp" - - /*----------------------------------------------------------------*/ using namespace Slic3r; @@ -96,7 +93,7 @@ struct SolverConfiguration // Setting printer type is obsolete, will be removed PrinterType printer_type; - string optimization_timeout; + std::string optimization_timeout; }; diff --git a/src/libseqarrange/src/CMakeLists.txt b/src/libseqarrange/src/CMakeLists.txt deleted file mode 100644 index c533254064..0000000000 --- a/src/libseqarrange/src/CMakeLists.txt +++ /dev/null @@ -1,23 +0,0 @@ -cmake_minimum_required(VERSION 3.10) - -project(Surynek LANGUAGES CXX) - -set(CMAKE_CXX_STANDARD 17) -set(CMAKE_CXX_STANDARD_REQUIRED True) -set(CMAKE_CXX_EXTENSIONS False) - -add_library(libseqarrange STATIC seq_interface.cpp seq_preprocess.cpp seq_sequential.cpp seq_utilities.cpp) -add_executable(sequential_arrange sequential_prusa.cpp) -add_executable(sequential_decimator sequential_decimator.cpp) - -target_include_directories(libseqarrange PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../include) - -find_package(Z3 REQUIRED) -slic3r_remap_configs("z3::libz3" RelWithDebInfo Release) - -target_link_libraries(libseqarrange libslic3r z3::libz3) -target_link_libraries(sequential_arrange libseqarrange) -target_link_libraries(sequential_decimator libseqarrange) - - - diff --git a/src/libseqarrange/include/seq_defs.hpp b/src/libseqarrange/src/seq_defs.hpp similarity index 100% rename from src/libseqarrange/include/seq_defs.hpp rename to src/libseqarrange/src/seq_defs.hpp diff --git a/src/libseqarrange/include/seq_preprocess.hpp b/src/libseqarrange/src/seq_preprocess.hpp similarity index 100% rename from src/libseqarrange/include/seq_preprocess.hpp rename to src/libseqarrange/src/seq_preprocess.hpp diff --git a/src/libseqarrange/include/seq_sequential.hpp b/src/libseqarrange/src/seq_sequential.hpp similarity index 100% rename from src/libseqarrange/include/seq_sequential.hpp rename to src/libseqarrange/src/seq_sequential.hpp diff --git a/src/libseqarrange/include/seq_utilities.hpp b/src/libseqarrange/src/seq_utilities.hpp similarity index 100% rename from src/libseqarrange/include/seq_utilities.hpp rename to src/libseqarrange/src/seq_utilities.hpp diff --git a/src/libseqarrange/include/seq_version.hpp b/src/libseqarrange/src/seq_version.hpp similarity index 100% rename from src/libseqarrange/include/seq_version.hpp rename to src/libseqarrange/src/seq_version.hpp diff --git a/src/libseqarrange/test/CMakeLists.txt b/src/libseqarrange/test/CMakeLists.txt deleted file mode 100644 index 32c0d6964b..0000000000 --- a/src/libseqarrange/test/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -# Minimum required version of CMake -cmake_minimum_required(VERSION 3.10) - -# Set C++ standard and flags -set(CMAKE_CXX_STANDARD 17) - - -# add_executable(seq_test_arrangement seq_test_arrangement.cpp) -# target_link_libraries(seq_test_arrangement libseqarrange) - -add_executable(seq_test_polygon seq_test_polygon.cpp prusaparts.cpp) -target_link_libraries(seq_test_polygon libseqarrange) - -add_executable(seq_test_sequential seq_test_sequential.cpp) -target_link_libraries(seq_test_sequential libseqarrange) - -add_executable(seq_test_preprocess seq_test_preprocess.cpp prusaparts.cpp) -target_link_libraries(seq_test_preprocess libseqarrange) - -add_executable(seq_test_interface seq_test_interface.cpp) -target_link_libraries(seq_test_interface libseqarrange) - diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt index baec0f0869..878c154c57 100644 --- a/src/slic3r/CMakeLists.txt +++ b/src/slic3r/CMakeLists.txt @@ -455,6 +455,7 @@ target_link_libraries( stb_dxt fastfloat boost_headeronly + libseqarrange ) if (MSVC) diff --git a/src/slic3r/GUI/ArrangeHelper.cpp b/src/slic3r/GUI/ArrangeHelper.cpp index aeedcf65be..62968bbb42 100644 --- a/src/slic3r/GUI/ArrangeHelper.cpp +++ b/src/slic3r/GUI/ArrangeHelper.cpp @@ -5,7 +5,7 @@ #include -#include "libseqarrange/include/seq_interface.hpp" +#include "libseqarrange/seq_interface.hpp" namespace Slic3r {