From 66e0e0488ea1e43468dec8c35487d5b061663d92 Mon Sep 17 00:00:00 2001 From: Sam Morley Date: Tue, 26 Nov 2024 15:04:48 +0000 Subject: [PATCH] Refactor CMakeLists: Consolidate targets into RoughPy_Platform Simplify the CMake configurations by merging RoughPy_Generics_BuiltinType and RoughPy_Generics_Multiprecision targets into RoughPy_Platform. This change reduces redundancy and centralizes target management, improving maintainability. --- platform/src/generics/CMakeLists.txt | 5 +---- .../src/generics/builtin_types/CMakeLists.txt | 15 +-------------- .../multiprecision_types/CMakeLists.txt | 18 ++---------------- 3 files changed, 4 insertions(+), 34 deletions(-) diff --git a/platform/src/generics/CMakeLists.txt b/platform/src/generics/CMakeLists.txt index 088ca918..08094945 100644 --- a/platform/src/generics/CMakeLists.txt +++ b/platform/src/generics/CMakeLists.txt @@ -30,10 +30,7 @@ target_sources(RoughPy_Platform PRIVATE add_subdirectory(builtin_types) add_subdirectory(multiprecision_types) -target_link_libraries(RoughPy_Platform PRIVATE - RoughPy_Generics_BuiltinType - RoughPy_Generics_Multiprecision -) + if (ROUGHPY_BUILD_TESTS) diff --git a/platform/src/generics/builtin_types/CMakeLists.txt b/platform/src/generics/builtin_types/CMakeLists.txt index 210626a1..45ae2d93 100644 --- a/platform/src/generics/builtin_types/CMakeLists.txt +++ b/platform/src/generics/builtin_types/CMakeLists.txt @@ -2,7 +2,7 @@ -add_library(RoughPy_Generics_BuiltinType STATIC +target_sources(RoughPy_Platform PRIVATE builtin_type.h builtin_type_ids.h builtin_type_methods.h @@ -18,19 +18,6 @@ add_library(RoughPy_Generics_BuiltinType STATIC unsigned_int_type.h ) -set_target_properties(RoughPy_Generics_BuiltinType PROPERTIES - POSITION_INDEPENDENT_CODE ON -) - -target_include_directories(RoughPy_Generics_BuiltinType PRIVATE - ${ROUGHPY_PLATFORM_INCLUDE_DIR}/../ - ${CMAKE_CURRENT_BINARY_DIR}/../../.. -) - -target_link_libraries(RoughPy_Generics_BuiltinType PRIVATE - RoughPy::Core -) - if (ROUGHPY_BUILD_TESTS) diff --git a/platform/src/generics/multiprecision_types/CMakeLists.txt b/platform/src/generics/multiprecision_types/CMakeLists.txt index 42b7c990..e962ae2a 100644 --- a/platform/src/generics/multiprecision_types/CMakeLists.txt +++ b/platform/src/generics/multiprecision_types/CMakeLists.txt @@ -2,8 +2,7 @@ -add_library(RoughPy_Generics_Multiprecision - STATIC +target_sources(RoughPy_Platform PRIVATE rational_type.cpp rational_type.h rational_arithmetic.cpp @@ -38,18 +37,8 @@ add_library(RoughPy_Generics_Multiprecision -set_target_properties(RoughPy_Generics_Multiprecision PROPERTIES - POSITION_INDEPENDENT_CODE ON - LINK_LANGUAGE CXX -) - -target_include_directories(RoughPy_Generics_Multiprecision PRIVATE - ${ROUGHPY_PLATFORM_INCLUDE_DIR}/../ - ${CMAKE_CURRENT_BINARY_DIR}/../../.. -) -target_link_libraries(RoughPy_Generics_Multiprecision PRIVATE - RoughPy::Core +target_link_libraries(RoughPy_Platform PRIVATE GMP::GMP MPFR::MPFR ) @@ -57,7 +46,6 @@ target_link_libraries(RoughPy_Generics_Multiprecision PRIVATE if (ROUGHPY_BUILD_TESTS) - add_executable(test_multiprecision_types test_rational_type.cpp test_integer_type.cpp @@ -71,7 +59,5 @@ if (ROUGHPY_BUILD_TESTS) setup_roughpy_cpp_tests(test_multiprecision_types) - - endif()