Remove unnecessary project() calls

project() should only be called if the subdirectory, in fact, can be
built standalone.
This commit is contained in:
2024-11-18 15:42:37 +01:00
parent e1b8bbf12d
commit ca9ef16d0d
13 changed files with 57 additions and 72 deletions

View File

@@ -35,8 +35,6 @@
### benches_dramsys ###
###############################################
project(benches_dramsys)
set(BENCHMARK_ENABLE_TESTING OFF)
FetchContent_Declare(
@@ -46,15 +44,15 @@ FetchContent_Declare(
FetchContent_MakeAvailable(benchmark)
add_executable(${PROJECT_NAME}
add_executable(benches_dramsys
main.cpp
simulation.cpp
addressdecoder.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR})
set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER benches)
target_link_libraries(${PROJECT_NAME}
target_include_directories(benches_dramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
set_target_properties(benches_dramsys PROPERTIES FOLDER benches)
target_link_libraries(benches_dramsys
DRAMSys::util
DRAMSys::libdramsys
DRAMSys::simulator

View File

@@ -6,10 +6,10 @@ endif()
message(STATUS " * DDR5")
target_sources(DRAMSys_libdramsys PRIVATE
target_sources(libdramsys PRIVATE
DRAMSys/configuration/memspec/MemSpecDDR5.cpp
DRAMSys/controller/checker/CheckerDDR5.cpp
)
target_include_directories(DRAMSys_libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(DRAMSys_libdramsys PUBLIC DDR5_SIM)
target_include_directories(libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(libdramsys PUBLIC DDR5_SIM)

View File

@@ -6,10 +6,10 @@ endif()
message(STATUS " * HBM3")
target_sources(DRAMSys_libdramsys PRIVATE
target_sources(libdramsys PRIVATE
DRAMSys/configuration/memspec/MemSpecHBM3.cpp
DRAMSys/controller/checker/CheckerHBM3.cpp
)
target_include_directories(DRAMSys_libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(DRAMSys_libdramsys PUBLIC HBM3_SIM)
target_include_directories(libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(libdramsys PUBLIC HBM3_SIM)

View File

@@ -6,10 +6,10 @@ endif()
message(STATUS " * LPDDR5")
target_sources(DRAMSys_libdramsys PRIVATE
target_sources(libdramsys PRIVATE
DRAMSys/configuration/memspec/MemSpecLPDDR5.cpp
DRAMSys/controller/checker/CheckerLPDDR5.cpp
)
target_include_directories(DRAMSys_libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(DRAMSys_libdramsys PUBLIC LPDDR5_SIM)
target_include_directories(libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_compile_definitions(libdramsys PUBLIC LPDDR5_SIM)

View File

@@ -2,21 +2,24 @@
### sqlite3 ###
########################################
project(sqlite3 VERSION 3.40.1)
FetchContent_Declare(sqlite3 URL "https://www.sqlite.org/2022/sqlite-amalgamation-3400100.zip")
FetchContent_MakeAvailable(sqlite3)
add_library(${PROJECT_NAME})
target_sources(${PROJECT_NAME} PRIVATE ${sqlite3_SOURCE_DIR}/sqlite3.c ${sqlite3_SOURCE_DIR}/sqlite3.h ${sqlite3_SOURCE_DIR}/sqlite3ext.h )
target_include_directories(${PROJECT_NAME} PUBLIC ${sqlite3_SOURCE_DIR})
add_library(sqlite3)
target_sources(sqlite3 PRIVATE
${sqlite3_SOURCE_DIR}/sqlite3.c
${sqlite3_SOURCE_DIR}/sqlite3.h
${sqlite3_SOURCE_DIR}/sqlite3ext.h
)
set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER lib)
target_include_directories(sqlite3 PUBLIC ${sqlite3_SOURCE_DIR})
set_target_properties(sqlite3 PROPERTIES FOLDER lib)
### Compile options ###
# refer to https://www.sqlite.org/compile.html
target_compile_definitions(${PROJECT_NAME} PUBLIC SQLITE_ENABLE_RTREE SQLITE_OMIT_LOAD_EXTENSION)
target_compile_definitions(sqlite3 PUBLIC SQLITE_ENABLE_RTREE SQLITE_OMIT_LOAD_EXTENSION)
# Use the same name as the FindSQLite3 script of CMake uses
add_library(SQLite::SQLite3 ALIAS ${PROJECT_NAME})
add_library(SQLite::SQLite3 ALIAS sqlite3)

View File

@@ -36,25 +36,23 @@
### DRAMSys::config ###
########################################
project(DRAMSys_Configuration)
add_library(${PROJECT_NAME}
add_library(configuration
DRAMSys/config/DRAMSysConfiguration.cpp
DRAMSys/config/memspec/MemArchitectureSpec.cpp
DRAMSys/config/memspec/MemPowerSpec.cpp
DRAMSys/config/memspec/MemTimingSpec.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(configuration PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(${PROJECT_NAME}
target_link_libraries(configuration
PUBLIC
nlohmann_json::nlohmann_json
)
target_compile_definitions(${PROJECT_NAME}
target_compile_definitions(configuration
PUBLIC
DRAMSYS_RESOURCE_DIR="${DRAMSYS_RESOURCE_DIR}"
)
add_library(DRAMSys::config ALIAS ${PROJECT_NAME})
add_library(DRAMSys::config ALIAS configuration)

View File

@@ -36,9 +36,7 @@
### DRAMSys::libdramsys ###
########################################
project(DRAMSys_libdramsys)
add_library(${PROJECT_NAME}
add_library(libdramsys
DRAMSys/common/DebugManager.cpp
DRAMSys/common/TlmRecorder.cpp
DRAMSys/common/dramExtensions.cpp
@@ -96,20 +94,20 @@ add_library(${PROJECT_NAME}
DRAMSys/simulation/SimConfig.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(libdramsys PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(${PROJECT_NAME}
target_link_libraries(libdramsys
PUBLIC
SystemC::systemc
DRAMSys::config
SQLite::SQLite3
)
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_17)
target_compile_features(libdramsys PUBLIC cxx_std_17)
if (DRAMSYS_WITH_DRAMPOWER)
target_link_libraries(${PROJECT_NAME} PUBLIC DRAMPower)
target_compile_definitions(${PROJECT_NAME} PUBLIC DRAMPOWER)
target_link_libraries(libdramsys PUBLIC DRAMPower)
target_compile_definitions(libdramsys PUBLIC DRAMPOWER)
endif ()
add_library(DRAMSys::libdramsys ALIAS ${PROJECT_NAME})
add_library(DRAMSys::libdramsys ALIAS libdramsys)

View File

@@ -38,11 +38,9 @@
### DRAMSys::simulator ###
########################################
project(DRAMSys_Simulator)
find_package(Threads)
add_library(${PROJECT_NAME}
add_library(simulator
simulator/Cache.cpp
simulator/EccModule.cpp
simulator/MemoryManager.cpp
@@ -56,15 +54,15 @@ add_library(${PROJECT_NAME}
simulator/util.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(simulator PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(${PROJECT_NAME}
target_link_libraries(simulator
PUBLIC
Threads::Threads
DRAMSys::libdramsys
libdramsys
)
add_library(DRAMSys::simulator ALIAS ${PROJECT_NAME})
add_library(DRAMSys::simulator ALIAS simulator)
add_executable(DRAMSys
main.cpp
@@ -72,5 +70,5 @@ add_executable(DRAMSys
target_link_libraries(DRAMSys
PRIVATE
DRAMSys_Simulator
simulator
)

View File

@@ -38,8 +38,6 @@
### TraceAnalyzer ###
########################################
project(TraceAnalyzer)
# Add Python3 Dependency:
find_package(Python3 COMPONENTS Development Interpreter)
@@ -115,7 +113,7 @@ target_link_libraries(TraceAnalyzer
set(DRAMSYS_TRACE_ANALYZER_EXTENSION_DIR "${CMAKE_SOURCE_DIR}/extensions/apps/traceAnalyzer")
target_compile_definitions(${PROJECT_NAME}
target_compile_definitions(TraceAnalyzer
PRIVATE
DRAMSYS_TRACE_ANALYZER_EXTENSION_DIR="${DRAMSYS_TRACE_ANALYZER_EXTENSION_DIR}"
)

View File

@@ -2,21 +2,19 @@
### tests_configuration ###
###############################################
project(tests_configuration)
add_executable(${PROJECT_NAME}
add_executable(tests_configuration
test_configuration.cpp
test_json.cpp
)
set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER tests/configuration)
set_target_properties(tests_configuration PROPERTIES FOLDER tests/configuration)
target_link_libraries(${PROJECT_NAME} PRIVATE
target_link_libraries(tests_configuration PRIVATE
DRAMSys::config
gtest_main
)
gtest_discover_tests(${PROJECT_NAME}
gtest_discover_tests(tests_configuration
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)

View File

@@ -2,9 +2,7 @@
### tests_dramsys ###
###############################################
project(tests_dramsys)
add_executable(${PROJECT_NAME}
add_executable(tests_dramsys
AddressDecoderTests.cpp
b_transport/b_transport.cpp
main.cpp
@@ -12,13 +10,13 @@ add_executable(${PROJECT_NAME}
test_utils.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR})
set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER tests)
target_link_libraries(${PROJECT_NAME}
target_include_directories(tests_dramsys PUBLIC ${PROJECT_SOURCE_DIR})
set_target_properties(tests_dramsys PROPERTIES FOLDER tests)
target_link_libraries(tests_dramsys
DRAMSys::libdramsys
gtest_main
)
gtest_discover_tests(${PROJECT_NAME}
gtest_discover_tests(tests_dramsys
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)

View File

@@ -35,8 +35,6 @@
### tests_regression ###
###############################################
project(tests_regression)
find_program(SqlDiff sqldiff)
if(NOT SqlDiff)

View File

@@ -2,22 +2,20 @@
### tests_simulator ###
###############################################
project(tests_simulator)
add_executable(${PROJECT_NAME}
add_executable(tests_simulator
main.cpp
cache/tests_cache.cpp
cache/TargetMemory.cpp
cache/ListInitiator.cpp
)
set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER tests/simulator)
set_target_properties(tests_simulator PROPERTIES FOLDER tests/simulator)
target_link_libraries(${PROJECT_NAME} PRIVATE
DRAMSys_Simulator
target_link_libraries(tests_simulator PRIVATE
simulator
gtest_main
)
gtest_discover_tests(${PROJECT_NAME}
gtest_discover_tests(tests_simulator
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)