mirror of
https://github.com/termux-pacman/termux-packages.git
synced 2026-02-10 20:00:51 +00:00
- Makes the default behavior of on-device building with the address sanitizer match the default behavior of building with the address sanitizer on Clang for Desktop Linux distros, which is to use the static library - Fixes https://github.com/termux/termux-packages/issues/26485 - On devices that do not have `libclang_rt.asan-$arch-android.so` or which have a corrupted one, fixes building on-device with `-fsanitize=address` - Samsung Galaxy S III SPH-L710 with LineageOS 14.1 Android 7.1.2 before: ``` ~ $ clang test.c -fsanitize=address ~ $ ./a.out WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001 CANNOT LINK EXECUTABLE "./a.out": library "libclang_rt.asan-arm-android.so" not found Aborted ./a.out ~ $ clang test.c -fsanitize=address -Wl,-rpath=$PREFIX/lib/clang/20/lib/linux ~ $ ./a.out WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001 ~ $ termux-elf-cleaner ./a.out termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './a.out' ~ $ ./a.out ~ $ file /system/lib/libclang_rt.asan-arm-android.so /system/lib/libclang_rt.asan-arm-android.so: cannot open `/system/lib/libclang_rt.asan-arm-android.so' (No such file or directory) ~ $ ``` - After: ``` ~ $ clang test.c -fsanitize=address ~ $ ./a.out WARNING: linker: /data/data/com.termux/files/home/a.out: unsupported flags DT_FLAGS_1=0x8000001 ~ $ termux-elf-cleaner a.out termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in 'a.out' ~ $ ./a.out ~ $ ``` - Vivo iQOO Neo8 V2301A with Android 15 before: ``` thread #1, name = 'a.out', stop reason = signal SIGILL: illegal opcode ``` - After: believed to work
25 lines
611 B
Bash
25 lines
611 B
Bash
TERMUX_SUBPKG_INCLUDE="
|
|
bin/bugpoint
|
|
bin/dsymutil
|
|
bin/llc
|
|
bin/lli
|
|
bin/llvm!(-jitlink-executor|-PerfectShuffle|-test-mustache-spec)
|
|
bin/opt
|
|
bin/reduce-chunk-list
|
|
bin/sancov
|
|
bin/sanstats
|
|
bin/split-file
|
|
bin/verify-uselistorder
|
|
share/man/man1/bugpoint.1.gz
|
|
share/man/man1/dsymutil.1.gz
|
|
share/man/man1/llc.1.gz
|
|
share/man/man1/lli.1.gz
|
|
share/man/man1/llvm!(-test-mustache-spec)
|
|
share/man/man1/opt.1.gz
|
|
share/man/man1/*tblgen.1.gz
|
|
share/opt-viewer
|
|
"
|
|
TERMUX_SUBPKG_DESCRIPTION="LLVM modular compiler and toolchain executables"
|
|
TERMUX_SUBPKG_BREAKS="libllvm (<< 11.0.0-1)"
|
|
TERMUX_SUBPKG_REPLACES="libllvm (<< 11.0.0-1)"
|