Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -458,9 +458,11 @@ endif()

# Add subdirectories in dependency DAG order (which happens to be semi-alpha:
# don't be fooled).
add_subdirectory(third-party)
add_subdirectory(third-party/sysdeps)
add_subdirectory(third-party/googletest) # TODO: decide on if this should be a sysdep or not (both?)
add_subdirectory(base)
add_subdirectory(compiler)
add_subdirectory(third-party)
add_subdirectory(core)
# Note that rocprofiler-register is in base and is what higher level clients
# depend on. The profiler itself is independent.
Expand Down
24 changes: 14 additions & 10 deletions third-party/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,24 @@
# Subdirectory load order here is carefully balanced - see usage from the root
# CMakeLists.txt. Notably this file does *not* include the sysdeps subdirectory,
# which is expected to be included *first*. This allows for bootstrapping
# compiler/, so other projects in this directory can use the amd-llvm compiler
# toolchain if they so wish (most should eventually).

add_custom_target(therock-third-party)

# googletest is currently included explicitly ahead of the rest of this folder
# by the base CMakeLists.txt since since amdsmi in base/ depends on it and
# base/ is included before compiler/. To resolve that, we may want to move
# amdsmi from base/ to core/, after which we can turn googletest back into a
# typical third-party package.
# add_subdirectory(googletest)
add_dependencies(therock-third-party therock-googletest)

# No-dep third party libraries (alphabetical)
add_subdirectory(boost)
add_subdirectory(eigen)
add_subdirectory(flatbuffers)
add_subdirectory(fmt)
add_subdirectory(googletest)
add_subdirectory(libdivide)
add_subdirectory(msgpack-cxx)
add_subdirectory(nlohmann-json)
Expand All @@ -27,12 +40,3 @@ endif()
if(THEROCK_ENABLE_HOST_SUITE_SPARSE)
add_subdirectory(SuiteSparse)
endif()

# TODO: Relocate non header-only libraries here (i.e. boost, host-blas).
if(THEROCK_BUNDLE_SYSDEPS)
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
add_subdirectory(sysdeps/linux)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
add_subdirectory(sysdeps/windows)
endif()
endif()
2 changes: 0 additions & 2 deletions third-party/googletest/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,3 @@ therock_cmake_subproject_declare(therock-googletest
)
therock_cmake_subproject_provide_package(therock-googletest GTest lib/cmake/GTest)
therock_cmake_subproject_activate(therock-googletest)

add_dependencies(therock-third-party therock-googletest)
2 changes: 2 additions & 0 deletions third-party/spdlog/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ therock_cmake_subproject_declare(therock-spdlog
NO_MERGE_COMPILE_COMMANDS
OUTPUT_ON_FAILURE
EXTERNAL_SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/source"
COMPILER_TOOLCHAIN
amd-llvm
BUILD_DEPS
therock-fmt
CMAKE_ARGS
Expand Down
8 changes: 8 additions & 0 deletions third-party/sysdeps/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# TODO: Relocate non header-only libraries here (i.e. boost, host-blas).
if(THEROCK_BUNDLE_SYSDEPS)
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
add_subdirectory(linux)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
add_subdirectory(windows)
endif()
endif()
Loading