Skip to content

Commit

Permalink
Update Android builds to NDK r27; enable 16KB max page size; update R…
Browse files Browse the repository at this point in the history
…EADME (#435)
  • Loading branch information
johnsonjh authored Aug 7, 2024
1 parent 70bf057 commit dffc6b5
Show file tree
Hide file tree
Showing 7 changed files with 42 additions and 41 deletions.
3 changes: 2 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1250,7 +1250,7 @@ Android/x86_64 (API Level 35, Clang++, Clang):
# Start of Build ...
echo -e "section_start:`date +%s`:Build_section[collapsed=true]\r\e[0K\033[0;36mBuild ...\033[0m" || true
- export PATH="/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/bin:${PATH:?}"
- export LDFLAGS="-static"
- export LDFLAGS="-static -Wl,-z,max-page-size=16384"
- export CC="x86_64-linux-android35-clang"
- export CXX="x86_64-linux-android35-clang++"
- ${CC:?} --version
Expand Down Expand Up @@ -1349,6 +1349,7 @@ Android/ARM64 (API Level 35, Clang++, Clang):
# Start of Build ...
echo -e "section_start:`date +%s`:Build_section[collapsed=true]\r\e[0K\033[0;36mBuild ...\033[0m" || true
- export PATH="/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/bin:${PATH:?}"
- export LDFLAGS="-Wl,-z,max-page-size=16384"
- export CC="aarch64-linux-android35-clang"
- export CXX="aarch64-linux-android35-clang++"
- ${CC:?} --version
Expand Down
2 changes: 1 addition & 1 deletion .gitlab-ci/ndk/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ WORKDIR /opt
ARG URL

RUN set -x && \
curl -fsSL "${URL:-https://github.com/johnsonjh/ndk/releases/download/r26c/android-ndk-r28-1160465.tar.lz}" | \
curl -fsSL "${URL:-https://github.com/johnsonjh/ndk/releases/download/r26c/android-ndk-r27-linux.tar.lz}" | \
lzip -dc | tar xvf - && \
dnf -y clean all && \
rm -rf ~/.cache && \
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ endif
ifeq ($(SIR_DEBUG),1)
DBGFLAGS ?= -g3
ifneq ($(NO_DEFAULT_CFLAGS),1)
SIR_CFLAGS += -O0 -DDEBUG -D_DEBUG $(DBGFLAGS) -U_FORTIFY_SOURCE
SIR_CFLAGS += -O0 -DDEBUG -D_DEBUG -D_GLIBCXX_ASSERTIONS $(DBGFLAGS) -U_FORTIFY_SOURCE
endif
else
ifneq ($(NO_DEFAULT_CFLAGS),1)
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,12 +91,12 @@ At this time, libsir is supported (*that is, it compiles and passes the test sui

| System | Toolchain |
| ------:|:--------- |
| **Linux**&nbsp;≳2.6.32<br>(glibc&nbsp;≳2.4, musl&nbsp;≳1.2.3, uClibc‑ng&nbsp;≳1.0.43) | **GCC**&nbsp;(4.8.4&nbsp;‑&nbsp;14.1.1),&nbsp; **Clang**&nbsp;(3.8&nbsp;‑&nbsp;18.1.8),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6),&nbsp; **Circle**&nbsp;(1.0.0‑208),&nbsp; **IBM&nbsp;Advance&nbsp;Toolchain**&nbsp;(14&nbsp;‑&nbsp;17),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.1.2&nbsp;‑&nbsp;16.1.1.15),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.0&nbsp;‑&nbsp;17.1.1.2),&nbsp; **NVIDIA&nbsp;HPC&nbsp;SDK&nbsp;C/C++**&nbsp;(23.5&nbsp;‑&nbsp;24.5),&nbsp; **Arm&nbsp;HPC&nbsp;C/C++**&nbsp;(22.1&nbsp;‑&nbsp;24.04),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.104.2&nbsp;‑&nbsp;2.110.0),&nbsp; **AMD&nbsp;Optimizing&nbsp;C/C++**&nbsp;(4.0.0&nbsp;‑&nbsp;4.2.0),&nbsp; **Intel&nbsp;oneAPI&nbsp;DPC++/C++**&nbsp;(2023.1&nbsp;‑&nbsp;2024.1.2),&nbsp; **Open64**&nbsp;(5,&nbsp;AMD&nbsp;4.5.2.1),&nbsp; **Intel&nbsp;C++&nbsp;Compiler&nbsp;Classic**&nbsp;(2021.9.0&nbsp;‑&nbsp;2021.10.0),&nbsp; **Portable&nbsp;C&nbsp;Compiler**&nbsp;(1.2.0.DEVEL‑20230730),&nbsp; **Kefir**&nbsp;(≳0.3.0),&nbsp; **Chibicc**&nbsp;(2020.12.6),&nbsp; **CompCert&nbsp;C**&nbsp;(3.11&nbsp;‑&nbsp;3.14,&nbsp;no‑TLS),&nbsp; **Chamois‑CompCert&nbsp;C**&nbsp;(3.14‑20231130,&nbsp;TLS) |
| **Linux**&nbsp;≳2.6.32<br>(glibc&nbsp;≳2.4, musl&nbsp;≳1.2.3, uClibc‑ng&nbsp;≳1.0.43) | **GCC**&nbsp;(4.8.4&nbsp;‑&nbsp;14.2.1),&nbsp; **Clang**&nbsp;(3.8&nbsp;‑&nbsp;18.1.8),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6),&nbsp; **Circle**&nbsp;(1.0.0‑208),&nbsp; **IBM&nbsp;Advance&nbsp;Toolchain**&nbsp;(14&nbsp;‑&nbsp;17),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.1.2&nbsp;‑&nbsp;16.1.1.15),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.0&nbsp;‑&nbsp;17.1.1.2),&nbsp; **NVIDIA&nbsp;HPC&nbsp;SDK&nbsp;C/C++**&nbsp;(23.5&nbsp;‑&nbsp;24.7),&nbsp; **Arm&nbsp;HPC&nbsp;C/C++**&nbsp;(22.1&nbsp;‑&nbsp;24.04),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.104.2&nbsp;‑&nbsp;2.110.0),&nbsp; **AMD&nbsp;Optimizing&nbsp;C/C++**&nbsp;(4.0.0&nbsp;‑&nbsp;4.2.0),&nbsp; **Intel&nbsp;oneAPI&nbsp;DPC++/C++**&nbsp;(2023.1&nbsp;‑&nbsp;2024.2.1),&nbsp; **Open64**&nbsp;(5,&nbsp;AMD&nbsp;4.5.2.1),&nbsp; **Intel&nbsp;C++&nbsp;Compiler&nbsp;Classic**&nbsp;(2021.9.0&nbsp;‑&nbsp;2021.10.0),&nbsp; **Portable&nbsp;C&nbsp;Compiler**&nbsp;(1.2.0.DEVEL‑20230730),&nbsp; **Kefir**&nbsp;(≳0.3.0),&nbsp; **Chibicc**&nbsp;(2020.12.6),&nbsp; **CompCert&nbsp;C**&nbsp;(3.11&nbsp;‑&nbsp;3.14,&nbsp;no‑TLS),&nbsp; **Chamois‑CompCert&nbsp;C**&nbsp;(3.14‑20231130,&nbsp;TLS) |
| **Android**&nbsp;≳5 | **Android&nbsp;NDK**&nbsp;(r25c&nbsp;&nbsp;r27) |
| **IBM AIX**&nbsp;7.2,&nbsp;7.3 | **GCC**&nbsp;(8.3&nbsp;&nbsp;12.3),&nbsp; **Clang**&nbsp;(18.1.2&nbsp;&nbsp;18.1.8),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.0.3&nbsp;&nbsp;16.1.0.18),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.1&nbsp;&nbsp;17.1.2.7) |
| **IBM AIX**&nbsp;7.2,&nbsp;7.3 | **GCC**&nbsp;(8.3&nbsp;&nbsp;12.3),&nbsp; **Clang**&nbsp;(18.1.2&nbsp;&nbsp;18.1.8),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.0.3&nbsp;&nbsp;16.1.0.18),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.1&nbsp;&nbsp;17.1.2.9) |
| **IBM i**&nbsp;(**PASE**)&nbsp;7.5 | **GCC**&nbsp;(10.3.0&nbsp;&nbsp;10.5.0),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.0.15&nbsp;&nbsp;16.1.0.18) |
| **macOS**&nbsp;≳10.15 | **Xcode**&nbsp;(11.7&nbsp;&nbsp;16.0),&nbsp; **GCC**&nbsp;(10.4&nbsp;&nbsp;14.1.0),&nbsp; **Clang**&nbsp;(11.0.3&nbsp;&nbsp;18.1.8),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.105.0&nbsp;&nbsp;2.110.0),&nbsp; **Intel&nbsp;C++&nbsp;Compiler&nbsp;Classic**&nbsp;(2021.9.0&nbsp;&nbsp;2021.10.0) |
| **Windows**&nbsp;≳10,&nbsp;11 | **Microsoft&nbsp;Visual&nbsp;C/C++**&nbsp;(17.6&nbsp;&nbsp;17.10.3),&nbsp; **Clang‑CL**&nbsp;(16.0.6&nbsp;&nbsp;18.1.8),&nbsp; **GCC‑MinGW**&nbsp;(12.2.1&nbsp;&nbsp;14.1.1),&nbsp; **LLVM‑MinGW**&nbsp;(15.0&nbsp;&nbsp;18.1.8),&nbsp; **Embarcadero&nbsp;C++**&nbsp;(7.20&nbsp;&nbsp;7.70),&nbsp; **OrangeC**&nbsp;(≳6.71.10) |
| **macOS**&nbsp;≳10.15 | **Xcode**&nbsp;(11.7&nbsp;&nbsp;16.0),&nbsp; **GCC**&nbsp;(10.4&nbsp;&nbsp;14.2.0),&nbsp; **Clang**&nbsp;(11.0.3&nbsp;&nbsp;18.1.8),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.105.0&nbsp;&nbsp;2.110.0),&nbsp; **Intel&nbsp;C++&nbsp;Compiler&nbsp;Classic**&nbsp;(2021.9.0&nbsp;&nbsp;2021.10.0) |
| **Windows**&nbsp;≳10,&nbsp;11 | **Microsoft&nbsp;Visual&nbsp;C/C++**&nbsp;(17.6&nbsp;&nbsp;17.10.5),&nbsp; **Clang‑CL**&nbsp;(16.0.6&nbsp;&nbsp;18.1.8),&nbsp; **GCC‑MinGW**&nbsp;(12.2.1&nbsp;&nbsp;14.2.1),&nbsp; **LLVM‑MinGW**&nbsp;(15.0&nbsp;&nbsp;18.1.8),&nbsp; **Embarcadero&nbsp;C++**&nbsp;(7.20&nbsp;&nbsp;7.70),&nbsp; **OrangeC**&nbsp;(≳6.71.10) |
| **Cygwin**&nbsp;3.4 | **GCC**&nbsp;(11.2&nbsp;&nbsp;13.2.1) |
| **FreeBSD**&nbsp;≳11.3 | **GCC**&nbsp;(11.4&nbsp;&nbsp;13.2.1),&nbsp; **Clang**&nbsp;(10&nbsp;&nbsp;18.1.8),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.105.0&nbsp;&nbsp;2.110.0) |
| **NetBSD**&nbsp;9.2 | **GCC**&nbsp;(7.5&nbsp;&nbsp;13.2),&nbsp; **Clang**&nbsp;(15.0.7&nbsp;&nbsp;17.0.6) |
Expand All @@ -107,7 +107,7 @@ At this time, libsir is supported (*that is, it compiles and passes the test sui
| **Solaris**&nbsp;11.4 | **GCC**&nbsp;(10.3&nbsp;&nbsp;11.2),&nbsp; **Clang**&nbsp;(6&nbsp;&nbsp;18.1.8),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6) |
| **illumos** | **GCC**&nbsp;(7.5&nbsp;&nbsp;13.2),&nbsp; **Clang**&nbsp;(15.0.7&nbsp;&nbsp;18.1.8),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6) |
| **SerenityOS** | **GCC**&nbsp;(13.1) |
| **WebAssembly/JS** | **Emscripten**&nbsp;(3.1.45&nbsp;&nbsp;3.1.61),&nbsp; **Node.js**&nbsp;(20.5&nbsp;&nbsp;22.3.0) |
| **WebAssembly/JS** | **Emscripten**&nbsp;(3.1.45&nbsp;&nbsp;3.1.64),&nbsp; **Node.js**&nbsp;(20.5&nbsp;&nbsp;22.5.1) |

* libsir is known to work on most common (and many uncommon) architectures. It has been built and tested on **Intel** (x86\_64, i686, x32), **ARM** (ARMv6, ARMv7HF, ARMv8‑A), **POWER** (PowerPC, PPC64, PPC64le), **MIPS** (MIPS64, MIPS32, 74Kc), **SPARC** (SPARC64, V8, LEON3), **z/Architecture** (S390X), **SuperH** (SH‑4A), **RISC‑V** (RV32, RV64), **OpenRISC** (OR1200), **Kalray MPPA®** (Coolidge™, KVX), and **m68k** (ColdFire, 68020+).
* This table only lists toolchains that have been tested and is by no means exhaustive&mdash;newer (or older) versions are likely to work without fanfare. In fact, if it *doesn't* work on your machine, it's probably a bug.
Expand Down
54 changes: 27 additions & 27 deletions docs/doxygen_crawl.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,46 +8,46 @@
<meta name="viewport" content="width=device-width, initial-scale=1"/>
</head>
<body>
<a href="sir_8h_source.html"/>
<a href="ansimacros_8h_source.html"/>
<a href="condition_8h_source.html"/>
<a href="sir_8h_source.html"/>
<a href="console_8h_source.html"/>
<a href="config_8h_source.html"/>
<a href="defaults_8h_source.html"/>
<a href="sir_8hh_source.html"/>
<a href="defaults_8h_source.html"/>
<a href="errors_8h_source.html"/>
<a href="filecache_8h_source.html"/>
<a href="filesystem_8h_source.html"/>
<a href="impl_8h_source.html"/>
<a href="helpers_8h_source.html"/>
<a href="internal_8h_source.html"/>
<a href="maps_8h_source.html"/>
<a href="mutex_8h_source.html"/>
<a href="internal_8h_source.html"/>
<a href="platform_8h_source.html"/>
<a href="platform__embarcadero_8h_source.html"/>
<a href="platform__importc_8h_source.html"/>
<a href="platform__orangec_8h_source.html"/>
<a href="plugins_8h_source.html"/>
<a href="queue_8h_source.html"/>
<a href="threadpool_8h_source.html"/>
<a href="textstyle_8h_source.html"/>
<a href="types_8h_source.html"/>
<a href="threadpool_8h_source.html"/>
<a href="version_8h_source.html"/>
<a href="types_8h_source.html"/>
<a href="wineventlog_8h_source.html"/>
<a href="plugin__sample_8h_source.html"/>
<a href="tests_09_09_8hh_source.html"/>
<a href="tests__malloc_8h_source.html"/>
<a href="tests_8h_source.html"/>
<a href="tests__malloc_8h_source.html"/>
<a href="tests__shared_8h_source.html"/>
<a href="condition_8h.html"/>
<a href="example_8c.html"/>
<a href="sir_8hh.html"/>
<a href="condition_8h.html"/>
<a href="sir_8h.html"/>
<a href="defaults_8h.html"/>
<a href="sir_8hh.html"/>
<a href="config_8h.html"/>
<a href="ansimacros_8h.html"/>
<a href="sir_8c.html"/>
<a href="defaults_8h.html"/>
<a href="sircondition_8c.html"/>
<a href="ansimacros_8h.html"/>
<a href="md_docs_2sources_2changelog.html"/>
<a href="config.html"/>
<a href="testsuite.html"/>
Expand All @@ -59,40 +59,40 @@
<a href="group__default.html"/>
<a href="group__tests.html"/>
<a href="structsir__cl__config.html"/>
<a href="structsir__plugincache.html"/>
<a href="structsir__plugininfo.html"/>
<a href="structsir__queue.html"/>
<a href="structsir__level__str__pair.html"/>
<a href="structsir__pluginifacev1.html"/>
<a href="structsir__level__style__tuple.html"/>
<a href="structsir__plugincache.html"/>
<a href="structsir__plugin.html"/>
<a href="structsir__cl__arg.html"/>
<a href="structsir__level__str__pair.html"/>
<a href="structsir__test.html"/>
<a href="structsir__plugininfo.html"/>
<a href="structsir__text__style__data.html"/>
<a href="structsir__thread__err.html"/>
<a href="structsir__test.html"/>
<a href="structsir__queue__node.html"/>
<a href="structsir__queue.html"/>
<a href="structsir__thread__err.html"/>
<a href="structsir__threadpool.html"/>
<a href="structsir__plugin.html"/>
<a href="structsir__pluginifacev1.html"/>
<a href="structsir__threadpool__job.html"/>
<a href="structsir__time.html"/>
<a href="structsir__update__config__data.html"/>
<a href="structsirbuf.html"/>
<a href="structsir__update__config__data.html"/>
<a href="structsirconfig.html"/>
<a href="structsirconfig_8state_8last.html"/>
<a href="structsirfile.html"/>
<a href="structsirfcache.html"/>
<a href="structsirfile.html"/>
<a href="namespacesir.html"/>
<a href="classsir_1_1adapter.html"/>
<a href="classsir_1_1boost__format__adapter.html"/>
<a href="classsir_1_1fmt__format__adapter.html"/>
<a href="classsir_1_1adapter.html"/>
<a href="structsir_1_1error__info.html"/>
<a href="classsir_1_1std__format__adapter.html"/>
<a href="classsir_1_1std__iostream__adapter.html"/>
<a href="classsir_1_1default__policy.html"/>
<a href="classsir_1_1exception.html"/>
<a href="classsir_1_1default__adapter.html"/>
<a href="classsir_1_1fmt__format__adapter.html"/>
<a href="classsir_1_1logger.html"/>
<a href="classsir_1_1policy.html"/>
<a href="classsir_1_1std__iostream__adapter.html"/>
<a href="classsir_1_1std__format__adapter.html"/>
<a href="classsir_1_1default__adapter.html"/>
<a href="structsir_1_1error.html"/>
<a href="classsir_1_1logger.html"/>
<a href="classsir_1_1default__policy.html"/>
<a href="conceptsir_1_1_derived_from_policy.html"/>
<a href="conceptsir_1_1_derived_from_stream_buf.html"/>
<a href="conceptsir_1_1_derived_from_t.html"/>
Expand Down
Loading

0 comments on commit dffc6b5

Please sign in to comment.