Repository navigation
Commit 89b8c7c
committed
fix the shared tbb link on rtools42 and aarch64 windows
Two failures from the first CI run, both only reachable now that TBB is linked
as a shared library on Windows -- a static build has no link step.
Rtools42 (gcc 10): the TBB link failed with undefined references to
__stack_chk_fail, __strncpy_chk and __strncat_chk. TBB compiles with
-fstack-protector-strong and _FORTIFY_SOURCE, and on mingw those helpers live
in libssp rather than libgcc; newer toolchains pull it in implicitly, Rtools42
does not. Pass -lssp via CMAKE_SHARED_LINKER_FLAGS, mirroring the -lssp that
configure.R already adds for RcppParallel's own link.
aarch64 Windows: 'lld: error: unknown argument: -z'. Rtools45-aarch64 drives
clang with lld, and Clang.cmake adds -Wl,-z,relro,-z,now for any non-Apple
target. GNU.cmake already guards this with NOT MINGW; give Clang.cmake the
equivalent guard.
windows-latest (release) passed on the first run, so the shared mingw build,
the PREFIX "" naming and the reordered load in .onLoad() all work.1 parent 514d22f commit 89b8c7c
3 files changed
Lines changed: 29 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
315 | 315 | | |
316 | 316 | | |
317 | 317 | | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
318 | 324 | | |
319 | 325 | | |
320 | 326 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
68 | | - | |
69 | | - | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
70 | 74 | | |
71 | 75 | | |
72 | 76 | | |
| |||
0 commit comments