Windows with clang: fix undefined symbols#601
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #601 +/- ##
==========================================
+ Coverage 98.72% 98.83% +0.10%
==========================================
Files 44 43 -1
Lines 13805 13776 -29
==========================================
- Hits 13629 13615 -14
+ Misses 176 161 -15 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
4398a0d to
9ec1900
Compare
0ede364 to
a21d589
Compare
These export failures were causing errors on lld-link and other flavors
Iteration command:
```bash
set -xe ; \
cd /c/proj/rapidyaml/ ; \
export C4_EXTERN_DIR=`pwd`/build/extern ; \
export CTEST_PARALLEL_LEVEL=`nproc` ; \
\
\
function build_and_run() \
{\
tgt0=$1 ; \
shift ; \
id0=$1 ; \
shift ; \
for ty in Debug Release ; do \
for shared in OFF ON ; do \
dir=build/$id0-$ty-shared$shared ; \
set +x ; \
echo ; \
echo "$dir ============================================" ; \
echo ; \
set -x ; \
sleep 2 ; \
cmake -B $dir -DCMAKE_BUILD_TYPE=$ty \
-DBUILD_SHARED_LIBS=$shared "$@" \
; \
cmake --build $dir --config $ty --parallel --target $tgt0 ; \
set +x ; \
echo ; \
echo "$dir: finished!" ; \
echo ; \
done ; \
done ; \
} ; \
\
\
function build_and_run_clangxx() \
{ \
tgt1=$1 ; \
shift ; \
id1=$1 ; \
shift ; \
( \
cldir=/c/clang+llvm-22.1.5-x86_64-pc-windows-msvc/bin ; \
oldpath="$PATH" ; \
export PATH="$cldir:$PATH" ; \
which clang++ ; \
clang++ --version ; \
build_and_run $tgt1 \
$id1-clangxx \
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang \
-G "Unix Makefiles" "$@" ; \
export PATH="$oldpath" ; \
) ; \
} ; \
\
\
function build_and_run_mingw() \
{ \
ver2=$1 ; \
shift ; \
tgt2=$1 ; \
shift ; \
id2=$1 ; \
shift ; \
( \
cldir=/c/mingw-w64devkit-$ver2/bin ; \
oldpath="$PATH" ; \
export PATH="$cldir:$PATH" ; \
which c++ ; \
c++ --version ; \
build_and_run $tgt2 \
$id2-mingw-$ver2 \
-DCMAKE_CXX_COMPILER=c++ -DCMAKE_C_COMPILER=cc \
-G "Unix Makefiles" "$@" ; \
export PATH="$oldpath" ; \
) ; \
} ; \
\
\
function run_everywhere() \
{ \
tgt3=$1 ; \
shift ; \
id3=$1 ; \
shift ; \
build_and_run $tgt3 $id3-vs -G "Visual Studio 18 2026" "$@" ; \
build_and_run $tgt3 $id3-clangcl -G "Visual Studio 18 2026" -T ClangCL "$@" ;
build_and_run_clangxx $tgt3 $id3 "$@" ; \
build_and_run_mingw gcc15.2 $tgt3 $id3 "$@" ; \
build_and_run_mingw gcc16.1 $tgt3 $id3 "$@" ; \
} ; \
\
\
( cd ext/c4core ; run_everywhere c4core-test-run normal -DC4CORE_DEV=ON -DC4CORE_BUILD_BENCHMARKS=OFF ) ; \
\
\
run_everywhere ryml-test-run nostandalone -DRYML_DEV=ON -DRYML_BUILD_BENCHMARKS=OFF -D RYML_STANDALONE=OFF ; \
run_everywhere ryml-test-run standalone -DRYML_DEV=ON -DRYML_BUILD_BENCHMARKS=OFF -D RYML_STANDALONE=ON ; \
\
\
( rm -rvf src_singleheader ; cd samples/singleheaderlib ; run_everywhere run normal )
```
a21d589 to
97ee5ca
Compare
Hancock33
added a commit
to Hancock33/batocera.piboy
that referenced
this pull request
May 23, 2026
----------------------------------------------------------------------------------- eden.mk 9b18d0b1113fb2b73acc539d2e4dfae85e511cd4 # Version: Commits on May 22, 2026 ----------------------------------------------------------------------------------- [tools] refactor, use #!/bin/sh, update license files (#3998) ----------------------------------------------------------------------------------- ymir.mk 9f3425a1cd8f70e731179b0ca3fca04b0489d28c # Version: Commits on May 22, 2026 ----------------------------------------------------------------------------------- chore(app): Removed graphics backend option as it served no purpose at this time Ymir will rely on the default backend used by the SDL3 Renderer API, which should be compatible with most systems. GPU rendering will include a rewrite of the app's graphics subsystem, moving away from SDL Renderer to our own implementation., ------------------------------------------------------- rapidyaml.mk v0.13.0 # Version: Commits on May 22, 2026 ------------------------------------------------------- - [PR#606](biojppm/rapidyaml#606): scalar style utilities now are specific to flow/block mode. This enables stable-style roundtrips of block-mode plain scalars with characters invalid in flow mode: ```yaml # these scalars were previously emitted as single-quoted style # because they were conservatively assumed to be in flow mode. - doe: a deer, a female deer - (10,11) - also scalars containing [] and {} ``` - `scalar_style_choose()` was split into `scalar_style_choose_{flow,block}()` - `scalar_style_query_plain()` was split into `scalar_style_query_plain_{flow,block}()` - `NodeType::type_str(NodeType,flags)`: remove zero-termination, use common approach of returning required size - Add `NodeType::type_str_sub()` - [PR#605](biojppm/rapidyaml#605): fix parse errors: - `:` and `#` on continuation lines of multiline plain scalars: ```yaml [plain :scalar] # leading colon belongs to the scalar ``` - Tabs inside quoted scalars opening a map were mistook for indentation tabs: ```yaml foo: '\\ta': b ``` - [PR#604](biojppm/rapidyaml#604): add `string_view` and `span` to the `c4/yml/std/std.hpp` interop umbrella header. - Fix [600](biojppm/rapidyaml#600): shared symbols not exported in clang on Windows ([PR#601](biojppm/rapidyaml#601)). - Fix [256](biojppm/rapidyaml#256): installation directory on Linux 64bit ([PR#599](biojppm/rapidyaml#599)). See also original fix at [cmake#16](biojppm/cmake#16). Big thanks to @GabrielBarrantes and @musicinmybrain, not just for their fixes but also for all their downstream work! - [PR#591](biojppm/rapidyaml#591): Add missing includes to avoid compilation warning. Thanks @GabrielBarrantes! - Update c4core to [0.3.0](https://github.com/biojppm/c4core/releases/tag/v0.3.0). ### Thanks - @GabrielBarrantes - @musicinmybrain , ------------------------------------------------------------------------------------------------- libretro-geargrafx.mk 15e31680428046281b4457d126f503d8ab8e2f8f # Version: Commits on May 22, 2026 ------------------------------------------------------------------------------------------------- Fix scsi audio command completion. Fix #125, ----------------------------------------------------------------------------------------------------- libretro-mame2003-plus.mk 45f7a7f89f60aa1da6e6a136bbc1d1adeea8af91 # Version: Commits on May 22, 2026 ----------------------------------------------------------------------------------------------------- Rom ignore (#2022) * add rom ignore * fix gng romloads, ---------------------------------------------------------------------------------------------- libretro-stella.mk 7cb8757b44e563e67cdd4a59be19aab7e2b139ee # Version: Commits on May 22, 2026 ---------------------------------------------------------------------------------------------- Cleaned up EventMappingWidget, removing some FIXME's.,
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #600