* fix(llvm)

fixes missing sanitizers on 18.1.3

* wip

* wip

* wip

* Unneeded comment
This commit is contained in:
Jacob Heider 2024-04-06 18:13:52 -04:00 committed by GitHub
parent 603228e26b
commit 3cc79b8645
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -27,7 +27,9 @@ dependencies:
build:
dependencies:
cmake.org: 3
# doesn't seem to install a bunch of the libs
# with cmake 3.29
cmake.org: '>=3<3.29'
ninja-build.org: 1
python.org: '>=3<3.12'
crates.io/semverator: '*'
@ -126,28 +128,17 @@ test:
crates.io/semverator: '*'
script:
# Building compiler-rt on darwin+aarch64 fails for versions less than
# 14 with the below configuration, and on darwin generally for 18.1.3.
# 14 with the below configuration
# FIXME if possible, of course.
- run: LINUX=1
if: linux
- run: AARCH64=1
if: aarch64
- run: GT13=1
if: '>=13'
- run: GT14=1
if: '>=14'
- run: EQ1813=1
if: '=18.1.3'
# cases
# "1,*,*,*," => linux != 18.1.3
# ",,1,*," => darwin+x86-64 >=13 != 18.1.3
# ",1,1,1," => darwin+aarch64 >=14 != 18.1.3
- run: |
case "$LINUX,$AARCH64,$GT13,$GT14,$EQ1813" in
"1,*,*,*,"|",,1,*,"|",1,1,1,") ARGS="$ARGS -fsanitize=address,undefined";;
*) ;;
esac
# if: linux || >=14<18.1.3 || (x86-64 && >=13<18.1.3) ## Brewkit can't do this. Yet.
if test "{{hw.platform}}" = "linux"; then
ARGS="$ARGS -fsanitize=address,undefined"
elif test "{{hw.arch}}" = "x86_64" && semverator satisfies '>=13' {{version}}; then
ARGS="$ARGS -fsanitize=address,undefined"
elif semverator satisfies '>=14' {{version}}; then
ARGS="$ARGS -fsanitize=address,undefined"
fi
# if: linux || >=14 || (x86-64 && >=13) ## Brewkit can't do this. Yet.
- mv $FIXTURE $FIXTURE.c
- clang $ARGS $FIXTURE.c