From 6b4ad0fd74e3b24afea3ea025501b0fb2b0431d4 Mon Sep 17 00:00:00 2001 From: Nilesh M Negi Date: Thu, 10 Jul 2025 17:19:53 -0500 Subject: [PATCH] [BUILD] Use fmt-header instead of libfmt (#1791) --- CMakeLists.txt | 2 +- cmake/Dependencies.cmake | 3 ++- src/include/proxy_trace/proxy_trace.h | 3 +++ src/misc/proxy_trace/proxy_trace.cc | 3 +-- test/CMakeLists.txt | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 09481ca04e..83a119a069 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1091,7 +1091,7 @@ target_link_libraries(rccl INTERFACE hip::host) target_link_libraries(rccl PRIVATE hip::device) target_link_libraries(rccl PRIVATE dl) target_link_libraries(rccl PRIVATE ${ROCM_SMI_LIBRARIES}) -target_link_libraries(rccl PRIVATE fmt::fmt) +target_link_libraries(rccl PRIVATE fmt::fmt-header-only) if(ENABLE_MSCCLPP) target_link_libraries(rccl PRIVATE mscclpp_nccl) endif() diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake index e4ed216182..fc084ecc03 100644 --- a/cmake/Dependencies.cmake +++ b/cmake/Dependencies.cmake @@ -119,6 +119,7 @@ set(CMAKE_INSTALL_LIBDIR lib CACHE STRING "Define install directory for librarie # Find or download/install fmt find_package(fmt QUIET) if(NOT fmt_FOUND) + set(FMT_INSTALL OFF) message(STATUS "fmt not found, fetching from source...") FetchContent_Declare( fmt @@ -128,7 +129,7 @@ if(NOT fmt_FOUND) FetchContent_MakeAvailable(fmt) else() message(STATUS "Using system fmt") - get_target_property(FMT_INCLUDE_DIRS fmt::fmt INTERFACE_INCLUDE_DIRECTORIES) + get_target_property(FMT_INCLUDE_DIRS fmt::fmt-header-only INTERFACE_INCLUDE_DIRECTORIES) message(STATUS "fmt include directories: ${FMT_INCLUDE_DIRS}") endif() diff --git a/src/include/proxy_trace/proxy_trace.h b/src/include/proxy_trace/proxy_trace.h index bb8920eb60..0a1bfd8bd4 100644 --- a/src/include/proxy_trace/proxy_trace.h +++ b/src/include/proxy_trace/proxy_trace.h @@ -10,6 +10,9 @@ #include #include #include +#ifndef FMT_HEADER_ONLY +#define FMT_HEADER_ONLY 1 +#endif #include #include #include diff --git a/src/misc/proxy_trace/proxy_trace.cc b/src/misc/proxy_trace/proxy_trace.cc index b007d20ce3..5d585389d4 100644 --- a/src/misc/proxy_trace/proxy_trace.cc +++ b/src/misc/proxy_trace/proxy_trace.cc @@ -9,7 +9,6 @@ #include "debug.h" #include "device.h" #include "proxy.h" -#include #include constexpr int32_t kFinishedProxyOpItems = 32; @@ -261,4 +260,4 @@ void facebook_rccl::addNewProxyOp(std::unique_ptr &proxyTraceObj, proxyTraceObj->addNewProxyTraceOpImpl(key, extraInfo, opType, channelId, nSteps, nbytes, peerRank); } -} \ No newline at end of file +} diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 277d07d4fa..31b14baf68 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -97,7 +97,7 @@ if(BUILD_TESTS) target_link_libraries(rccl-UnitTests PRIVATE hip::host hip::device hsa-runtime64::hsa-runtime64) target_link_libraries(rccl-UnitTests PRIVATE Threads::Threads) target_link_libraries(rccl-UnitTests PRIVATE dl) - target_link_libraries(rccl-UnitTests PRIVATE fmt::fmt) + target_link_libraries(rccl-UnitTests PRIVATE fmt::fmt-header-only) if(OPENMP_TESTS_ENABLED) target_link_libraries(rccl-UnitTests PRIVATE "${OpenMP_CXX_FLAGS}") endif()