summaryrefslogtreecommitdiff
path: root/tools/musl-clang.in
diff options
context:
space:
mode:
Diffstat (limited to 'tools/musl-clang.in')
-rw-r--r--tools/musl-clang.in35
1 files changed, 35 insertions, 0 deletions
diff --git a/tools/musl-clang.in b/tools/musl-clang.in
new file mode 100644
index 00000000..623de6f6
--- /dev/null
+++ b/tools/musl-clang.in
@@ -0,0 +1,35 @@
+#!/bin/sh
+cc="@CC@"
+libc="@PREFIX@"
+libc_inc="@INCDIR@"
+libc_lib="@LIBDIR@"
+thisdir="`cd "$(dirname "$0")"; pwd`"
+
+# prevent clang from running the linker (and erroring) on no input.
+sflags=
+eflags=
+for x ; do
+ case "$x" in
+ -l*) input=1 ;;
+ *) input= ;;
+ esac
+ if test "$input" ; then
+ sflags="-l-user-start"
+ eflags="-l-user-end"
+ break
+ fi
+done
+
+exec $cc \
+ -B"$thisdir" \
+ -fuse-ld=musl-clang \
+ -static-libgcc \
+ -nostdinc \
+ --sysroot "$libc" \
+ -isystem "$libc_inc" \
+ -L-user-start \
+ $sflags \
+ "$@" \
+ $eflags \
+ -L"$libc_lib" \
+ -L-user-end