2019-07-21 03:11:03 -06:00
|
|
|
#!/bin/sh -e
|
|
|
|
|
2019-10-15 02:16:27 -06:00
|
|
|
# This package mimics the download process of rust's 'x.py'
|
|
|
|
# bootstrap library to allow for the removal of the internet
|
|
|
|
# connection requirement per build further enabling checksums
|
|
|
|
# and signature verification by KISS.
|
|
|
|
{
|
2019-11-07 13:22:16 -07:00
|
|
|
cache_dir=build/cache/2019-08-15
|
2019-10-15 02:16:27 -06:00
|
|
|
mkdir -p "$cache_dir"
|
|
|
|
|
2019-11-07 13:22:16 -07:00
|
|
|
for tarball in *.tar.gz\#no-extract; do
|
|
|
|
mv -f "$tarball" "$cache_dir/${tarball%%\#no-extract}"
|
2019-10-15 02:16:27 -06:00
|
|
|
done
|
|
|
|
}
|
|
|
|
|
2019-08-24 14:34:01 -06:00
|
|
|
patch -p1 < musl-libressl.patch
|
2019-07-29 20:02:13 -06:00
|
|
|
|
2019-08-24 14:34:01 -06:00
|
|
|
# 'rust' checksums files in 'vendor/', but we patch a few files.
|
|
|
|
for vendor in libc openssl-sys; do
|
|
|
|
sed -i 's/\("files":{\)[^}]*/\1/' "vendor/$vendor/.cargo-checksum.json"
|
2019-07-29 20:02:13 -06:00
|
|
|
done
|
2019-07-21 03:11:03 -06:00
|
|
|
|
2019-08-24 14:34:01 -06:00
|
|
|
cat > config.toml <<EOF
|
|
|
|
[llvm]
|
|
|
|
link-shared = true
|
|
|
|
|
|
|
|
[build]
|
|
|
|
build = "x86_64-unknown-linux-musl"
|
|
|
|
host = [ "x86_64-unknown-linux-musl" ]
|
|
|
|
target = [ "x86_64-unknown-linux-musl" ]
|
|
|
|
docs = false
|
|
|
|
extended = true
|
|
|
|
submodules = false
|
|
|
|
python = "python3"
|
|
|
|
locked-deps = true
|
|
|
|
vendor = true
|
|
|
|
|
|
|
|
[install]
|
|
|
|
prefix = "/usr"
|
|
|
|
|
|
|
|
[rust]
|
|
|
|
channel = "stable"
|
|
|
|
rpath = false
|
|
|
|
codegen-units = 1
|
|
|
|
debuginfo-level = 0
|
|
|
|
backtrace = false
|
|
|
|
jemalloc = false
|
|
|
|
codegen-tests = false
|
|
|
|
|
|
|
|
[target.x86_64-unknown-linux-musl]
|
|
|
|
llvm-config = "/usr/bin/llvm-config"
|
|
|
|
crt-static = false
|
|
|
|
EOF
|
|
|
|
|
|
|
|
python3 ./x.py build -j "$(nproc)"
|
|
|
|
DESTDIR="$1" python3 ./x.py install
|