Fix too for find-package-test with import std;

This commit is contained in:
ClausKlein 2026-07-14 00:05:40 +02:00
parent e424a934af
commit a028b01606
2 changed files with 9 additions and 7 deletions

View File

@ -416,11 +416,13 @@ endfunction ()
if (FMT_MODULE)
add_module_library(fmt-module src/fmt.cc USE_CMAKE_MODULES
${FMT_USE_CMAKE_MODULES})
# Add implementation sources as separate compilation units
# This ensures symbols are available for linking even in C++20
target_sources(fmt-module PRIVATE src/format.cc)
if (FMT_OS)
target_sources(fmt-module PRIVATE src/os.cc)
if (NOT FMT_IMPORT_STD)
# Add implementation sources as separate compilation units
# This ensures symbols are available for linking even in C++20
target_sources(fmt-module PRIVATE src/format.cc)
if (FMT_OS)
target_sources(fmt-module PRIVATE src/os.cc)
endif ()
endif ()
setup_target(fmt-module PUBLIC)
endif ()

View File

@ -19,13 +19,13 @@ build: GNUmakefile CMakeLists.txt
cmake -G Ninja -S . -B build --fresh \
-D CMAKE_SKIP_TEST_ALL_DEPENDENCY=NO \
-D FMT_PEDANTIC=YES \
-D FMT_MODULE=1 -D FMT_IMPORT_STD=0 -D CMAKE_CXX_STANDARD=20 \
-D FMT_MODULE=1 -D FMT_IMPORT_STD=1 -D CMAKE_CXX_STANDARD=26 \
-D CMAKE_EXPERIMENTAL_CXX_IMPORT_STD=f35a9ac6-8463-4d38-8eec-5d6008153e7d
ln -fs build/compile_commands.json .
find-package-test: install
cmake -G Ninja -S test/find-package-test -B build/find-package-build --fresh \
-D FMT_MODULE=1 -D FMT_IMPORT_STD=0 -D CMAKE_CXX_STANDARD=20 \
-D FMT_MODULE=1 -D FMT_IMPORT_STD=1 -D CMAKE_CXX_STANDARD=26 \
-D CMAKE_EXPERIMENTAL_CXX_IMPORT_STD=f35a9ac6-8463-4d38-8eec-5d6008153e7d
ninja -C build/find-package-build -v
ninja -C build/find-package-build -t deps CMakeFiles/module-test.dir/main.cc.o