|
| 1 | +## Resubmission |
| 2 | + |
| 3 | +This release fixes the install failure observed on the |
| 4 | +`r-oldrel-macos-arm64` (Big Sur, clang 14) CRAN flavour for `Rtinycc` |
| 5 | +0.1.9, where `libtcc.dylib` failed to link with: |
| 6 | + |
| 7 | +``` |
| 8 | +ld: can't use -undefined warning or suppress with -twolevel_namespace |
| 9 | +``` |
| 10 | + |
| 11 | +The bundled TinyCC Makefile pairs `-flat_namespace` with |
| 12 | +`-undefined warning` when the detected clang is older than 15. We strip |
| 13 | +`-flat_namespace` on macOS to avoid TinyCC SIGSEGV behavior under flat |
| 14 | +namespace, which on clang < 15 left `-undefined warning` on its own and |
| 15 | +that combination is rejected by the modern macOS linker under the |
| 16 | +default `-twolevel_namespace`. The configure step now strips both flags, |
| 17 | +which keeps the link valid on every clang generation we test. |
| 18 | + |
| 19 | +All other CRAN flavours were passing for 0.1.9. |
| 20 | + |
1 | 21 | ## Test environments |
2 | 22 |
|
3 | 23 | - local Ubuntu 24.04.3 LTS, R 4.5.2 |
| 24 | +- local Fedora 44 + GCC 16 + R-devel via the `ghcr.io/r-hub/containers/gcc16` |
| 25 | + image (mirrors the CRAN `r-devel-linux-x86_64-fedora-gcc` flavour), |
| 26 | + reproduced with `scripts/docker-cran-fedora.sh` and the new |
| 27 | + `.github/workflows/fedora-cran-check.yaml` workflow |
4 | 28 | - GitHub Actions ubuntu-latest (devel) |
5 | | -- GitHub Actions macos-latest (release) |
| 29 | +- GitHub Actions macos-latest (release, oldrel) — `oldrel` exercises the |
| 30 | + same Apple silicon configure path that the CRAN macOS oldrel arm64 |
| 31 | + builder uses |
6 | 32 | - GitHub Actions windows-latest (release) |
7 | 33 | - additional GitHub Actions Windows tinytest workflow for focused package tests |
8 | 34 |
|
9 | 35 | ## R CMD check results |
10 | 36 |
|
11 | | -- `R CMD check --as-cran` on Linux: 0 errors | 0 warnings | 2 notes |
12 | | - |
13 | | -Notes: |
| 37 | +- `R CMD check --as-cran` on Linux: 0 errors | 0 warnings | 1 note |
| 38 | +- `R CMD check --as-cran` on Fedora R-devel (gcc16 container): |
| 39 | + 0 errors | 0 warnings | 1 note |
14 | 40 |
|
15 | | -1. `New submission` |
16 | | - - This is the first CRAN submission for `Rtinycc`. |
| 41 | +Note: |
17 | 42 |
|
18 | | -2. `Compilation used the following non-portable flag(s): '-mno-omit-leaf-frame-pointer'` |
19 | | - - This note comes from the check environment toolchain rather than from package-specific `Makevars` flags added by `Rtinycc`. |
20 | | - - The package's own Unix `src/Makevars` only adds include paths and an rpath entry for the bundled `libtcc`. |
21 | | - - The package does not rely on this flag for functionality. |
| 43 | +1. `Days since last update: <N>` |
| 44 | + - Triggered because 0.1.10 follows 0.1.9 within the standard CRAN |
| 45 | + update window. The change is targeted entirely at restoring |
| 46 | + installation on macOS oldrel arm64. |
22 | 47 |
|
23 | 48 | ## Additional notes |
24 | 49 |
|
25 | | -- `Rtinycc` bundles and builds TinyCC for package use in R. Licensing details for the bundled compiler are documented in `inst/LICENSE.note` and reflected in `DESCRIPTION`. |
26 | | -- The package includes Windows support and uses a separate Windows tinytest CI workflow because the work in this release focused heavily on external-pointer/finalizer safety and cross-platform FFI semantics. |
| 50 | +- `Rtinycc` bundles and builds TinyCC for package use in R. Licensing |
| 51 | + details for the bundled compiler are documented in `inst/LICENSE.note` |
| 52 | + and reflected in `DESCRIPTION`. |
27 | 53 | - No network access is required in examples, tests, or vignettes. |
0 commit comments