Skip to content

Commit

Permalink
Update tested compilers (#420)
Browse files Browse the repository at this point in the history
Signed-off-by: Jeffrey H. Johnson <[email protected]>
  • Loading branch information
johnsonjh authored May 4, 2024
1 parent 1233965 commit 040a4bd
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 14 deletions.
2 changes: 1 addition & 1 deletion .gitlab-ci/dmd/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ WORKDIR /

RUN set -x && \
dnf -y install elinks --setopt=install_weak_deps=True && \
(wget -q https://downloads.dlang.org/pre-releases/2.x/2.108.1/dmd-2.108.1~rc.1-0.fedora.x86_64.rpm || true) && \
(wget -q https://downloads.dlang.org/releases/2.x/2.108.1/dmd-2.108.1-0.fedora.x86_64.rpm || true) && \
(wget -q "$(elinks -dump https://dlang.org/download.html 2> /dev/null | \
awk '/\/releases\/.*fedora.*x86_64.rpm$/ { print $2 }' 2> /dev/null | \
head -1)" || true) && \
Expand Down
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,23 +91,23 @@ 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.0.1),&nbsp; **Clang**&nbsp;(3.8&nbsp;‑&nbsp;18.1.4),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6),&nbsp; **Circle**&nbsp;(1.0.0‑200),&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.3),&nbsp; **Arm&nbsp;HPC&nbsp;C/C++**&nbsp;(22.1&nbsp;‑&nbsp;23.10),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.104.2&nbsp;‑&nbsp;2.108.1),&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.0),&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.0.1),&nbsp; **Clang**&nbsp;(3.8&nbsp;‑&nbsp;18.1.5),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6),&nbsp; **Circle**&nbsp;(1.0.0‑200),&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.3),&nbsp; **Arm&nbsp;HPC&nbsp;C/C++**&nbsp;(22.1&nbsp;‑&nbsp;23.10),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.104.2&nbsp;‑&nbsp;2.108.1),&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.0),&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;r26d) |
| **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.4),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.0.3&nbsp;&nbsp;16.1.0.17),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.1&nbsp;&nbsp;17.1.2.5) |
| **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.5),&nbsp; **IBM&nbsp;XL&nbsp;C/C++**&nbsp;(16.1.0.3&nbsp;&nbsp;16.1.0.17),&nbsp; **IBM&nbsp;Open&nbsp;XL&nbsp;C/C++**&nbsp;(17.1.1.1&nbsp;&nbsp;17.1.2.5) |
| **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.17) |
| **macOS**&nbsp;≳10.15 | **Xcode**&nbsp;(11.7&nbsp;&nbsp;15.3),&nbsp; **GCC**&nbsp;(10.4&nbsp;&nbsp;13.2.1),&nbsp; **Clang**&nbsp;(11.0.3&nbsp;&nbsp;17.0.6),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.105.0&nbsp;&nbsp;2.108.1),&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.9.6),&nbsp; **Clang‑CL**&nbsp;(16.0.6&nbsp;&nbsp;18.1.4),&nbsp; **GCC‑MinGW**&nbsp;(12.2.1&nbsp;&nbsp;14.0.1),&nbsp; **LLVM‑MinGW**&nbsp;(15.0&nbsp;&nbsp;18.1.4),&nbsp; **Embarcadero&nbsp;C++**&nbsp;(7.20&nbsp;&nbsp;7.70),&nbsp; **OrangeC**&nbsp;(≳6.71.10) |
| **Windows**&nbsp;≳10,&nbsp;11 | **Microsoft&nbsp;Visual&nbsp;C/C++**&nbsp;(17.6&nbsp;&nbsp;17.9.6),&nbsp; **Clang‑CL**&nbsp;(16.0.6&nbsp;&nbsp;18.1.5),&nbsp; **GCC‑MinGW**&nbsp;(12.2.1&nbsp;&nbsp;14.0.1),&nbsp; **LLVM‑MinGW**&nbsp;(15.0&nbsp;&nbsp;18.1.5),&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;17.0.6),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.105.0&nbsp;&nbsp;2.108.1) |
| **NetBSD**&nbsp;9.2 | **GCC**&nbsp;(7.5&nbsp;&nbsp;13.2),&nbsp; **Clang**&nbsp;(15.0.7&nbsp;&nbsp;17.0.6) |
| **OpenBSD**&nbsp;7.3 | **GCC**&nbsp;(11.2),&nbsp; **Clang**&nbsp;(13&nbsp;&nbsp;17.0.6),&nbsp; **DMD&nbsp;ImportC**&nbsp;(2.106.0) |
| **DragonFly**&nbsp;**BSD**&nbsp;6.4 | **GCC**&nbsp;(8.3&nbsp;&nbsp;13),&nbsp; **Clang**&nbsp;(10.0.1&nbsp;&nbsp;17.0.6) |
| **GNU/Hurd** | **GCC**&nbsp;(9.5&nbsp;&nbsp;13.2),&nbsp; **Clang**&nbsp;(9.0.1&nbsp;&nbsp;13.0.1) |
| **Haiku**&nbsp;R1b4 | **GCC**&nbsp;(11.2&nbsp;&nbsp;13.2),&nbsp; **Clang**&nbsp;(12.0.1&nbsp;&nbsp;17.0.6) |
| **Solaris**&nbsp;11.4 | **GCC**&nbsp;(10.3&nbsp;&nbsp;11.2),&nbsp; **Clang**&nbsp;(6&nbsp;&nbsp;18.1.4),&nbsp; **Oracle&nbsp;Studio&nbsp;C/C++**&nbsp;(≳12.6) |
| **Solaris**&nbsp;11.4 | **GCC**&nbsp;(10.3&nbsp;&nbsp;11.2),&nbsp; **Clang**&nbsp;(6&nbsp;&nbsp;18.1.5),&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;17.0.6) |
| **SerenityOS** | **GCC**&nbsp;(13.1) |
| **WebAssembly/JS** | **Emscripten**&nbsp;(3.1.45&nbsp;&nbsp;3.1.57),&nbsp; **Node.js**&nbsp;(20.5&nbsp;&nbsp;22.0.0) |
| **WebAssembly/JS** | **Emscripten**&nbsp;(3.1.45&nbsp;&nbsp;3.1.59),&nbsp; **Node.js**&nbsp;(20.5&nbsp;&nbsp;22.1.0) |

* 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 Expand Up @@ -174,14 +174,14 @@ A number of environment variables are available which affect the way in which li

#### <a id="unix-makefile-recipes" /> Recipes

| Recipe Type | Command | &nbsp;&nbsp;&nbsp;&nbsp;Output file(s) |
|-----------------:|:----------------:|:-----------------------------------------------|
| Test suite (C) | `make tests` | <ul><li>*build/bin/sirtests[.exe]*</li></ul> |
| Test suite (C++) | `make tests++` | <ul><li>*build/bin/sirtests++[.exe]*</li></ul> |
| Example app | `make example` | <ul><li>*build/bin/sirexample[.exe]*</li></ul> |
| Static library | `make static` | <ul><li>*build/lib/libsir_s.a*</li></ul> |
| Shared library | `make shared` | <ul><li>*build/lib/libsir.so*</li></ul> |
| Installation | `make install` | <ul><li>*$PREFIX/lib/libsir_s.a*</li><li>*$PREFIX/lib/libsir.so*</li><li>*$PREFIX/include/sir.h*</li><li>*$PREFIX/include/sir/\*.h*</li></ul> |
| Recipe Type | Command | &nbsp;&nbsp;&nbsp;&nbsp;Output file(s) |
|----------------------:|:----------------:|:-----------------------------------------------|
| Test&nbsp;suite (C) | `make tests` | <ul><li>*build/bin/sirtests[.exe]*</li></ul> |
| Test&nbsp;suite (C++) | `make tests++` | <ul><li>*build/bin/sirtests++[.exe]*</li></ul> |
| Example&nbsp;app | `make example` | <ul><li>*build/bin/sirexample[.exe]*</li></ul> |
| Static&nbsp;library | `make static` | <ul><li>*build/lib/libsir_s.a*</li></ul> |
| nShared&nbsp;library | `make shared` | <ul><li>*build/lib/libsir.so*</li></ul> |
| Installation | `make install` | <ul><li>*$PREFIX/lib/libsir_s.a*</li><li>*$PREFIX/lib/libsir.so*</li><li>*$PREFIX/include/sir.h*</li><li>*$PREFIX/include/sir/\*.h*</li></ul> |

- See the [CI configuration file](https://github.com/aremmell/libsir/blob/master/.gitlab-ci.yml) for practical examples.

Expand Down

0 comments on commit 040a4bd

Please sign in to comment.