aboutsummaryrefslogtreecommitdiff
path: root/core/musl/build
diff options
context:
space:
mode:
Diffstat (limited to 'core/musl/build')
-rwxr-xr-xcore/musl/build28
1 files changed, 12 insertions, 16 deletions
diff --git a/core/musl/build b/core/musl/build
index e48ce47f..a7ab1741 100755
--- a/core/musl/build
+++ b/core/musl/build
@@ -5,15 +5,16 @@
# we are only supporting i686 and x86_64.
sys_arch="$(uname -m)"
-kinstall_t() {
- # install -Dm* -t alternative
- # usage: kinstall_t 755 /usr/bin file file2 file3
- mod=$1 dir=$2; mkdir -p "$dir"
- shift 2
- for file; do
- cp "$file" "$dir"
- chmod "$mod" "$dir/$file"
- done
+# Bootstrap if the package isn't installed yet.
+cpt l -q musl || {
+ ./configure \
+ --prefix="$PWD/tmp"
+
+ make ALL_TOOLS+=obj/musl-gcc
+ make ALL_TOOLS+=obj/musl-gcc lib/musl-gcc.specs
+ make ALL_TOOLS+=obj/musl-gcc install
+ cp lib/musl-gcc.specs "$PWD/tmp/lib"
+ export CC="$PWD/tmp/bin/musl-gcc"
}
./configure \
@@ -34,15 +35,10 @@ case "$sys_arch" in
esac
# Install BSD compatibility headers.
-kinstall_t 755 "$1/usr/include/sys" cdefs.h queue.h tree.h
+clinst -Dm644 -t "$1/usr/include/sys" cdefs.h queue.h tree.h
# Install getconf.
"${CC:=cc}" --static getconf.c -o "$1/usr/bin/getconf"
-case $sys_arch in i*86)
- "$CC" -c __stack_chk_fail_local.c -o __stack_chk_fail_local.o
- ar r "$1/usr/lib/libssp_nonshared.a" __stack_chk_fail_local.o
-esac
-
# Install getent
-kinstall_t 755 "$1/usr/bin" getent
+clinst -Dm755 -t "$1/usr/bin" getent