blob: 8c4d918d669306aca346399fb33b36849eaa951e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
name=rust
version=1.86.0
##cat src/stage0.txt
export _date=2025-02-20
export _rustc=1.85.0
export _cargo=$_rustc
##
release=1
source="https://static.rust-lang.org/dist/${name}c-$version-src.tar.xz
https://static.rust-lang.org/dist/$_date/rust-std-$_rustc-x86_64-unknown-linux-musl.tar.xz::noextract
https://static.rust-lang.org/dist/$_date/rustc-$_rustc-x86_64-unknown-linux-musl.tar.xz::noextract
https://static.rust-lang.org/dist/$_date/cargo-$_cargo-x86_64-unknown-linux-musl.tar.xz::noextract
fix-linux_musl_base.patch
libressl.patch
fix-curl.patch"
build_dir=${name}c-$version-src
keep_static=1
no_strip=1
build() {
mkdir -p build/cache/$_date
_tuplet=x86_64-unknown-linux-musl
cp $SRC/rust-std-$_rustc-x86_64-unknown-linux-musl.tar.xz build/cache/$_date/
cp $SRC/rustc-$_rustc-x86_64-unknown-linux-musl.tar.xz build/cache/$_date/
cp $SRC/cargo-$_cargo-x86_64-unknown-linux-musl.tar.xz build/cache/$_date/
sed -i 's/\(crt_static_default = \)true/\1false/' compiler/rustc_target/src/spec/base/linux_musl.rs
sed -i 's/\("files":{\)[^}]*/\1/' vendor/curl-sys-0.4.52+curl-7.81.0/.cargo-checksum.json
sed -i 's/\("files":{\)[^}]*/\1/' vendor/curl-sys-0.4.78+curl-8.11.0/.cargo-checksum.json
sed -i 's/\("files":{\)[^}]*/\1/' vendor/curl-sys-0.4.79+curl-8.12.0/.cargo-checksum.json
sed -i 's/\("files":{\)[^}]*/\1/' vendor/openssl-sys-0.9.92/.cargo-checksum.json
cat > config.toml <<EOF
[llvm]
link-shared = true
download-ci-llvm = false
static-libstdcpp = false
use-libcxx = true
[build]
build = "$_tuplet"
host = [ "$_tuplet" ]
target = [ "$_tuplet" ]
docs = false
compiler-docs = false
extended = true
submodules = false
python = "python3"
locked-deps = true
vendor = true
tools = [ "cargo", "rustfmt" ]
sanitizers = false
profiler = false
full-bootstrap = false
[install]
prefix = "/usr"
[target.$_tuplet]
llvm-config = "/usr/bin/llvm-config"
crt-static = false
sanitizers = false
[dist]
src-tarball = false
[rust]
backtrace = false
channel = "stable"
codegen-tests = false
codegen-units-std = 1
codegen-units = 0
debug = false
debug-assertions = false
debuginfo-level = 0
incremental = false
jemalloc = false
rpath = false
dist-src = false
llvm-libunwind = "system"
EOF
mkdir -p libgcc
printf 'INPUT(-lunwind)\n' > libgcc/libgcc_s.so
ln -sf $(cc -print-file-name=libunwind.so) libgcc/libgcc_s.so.1
export LD_LIBRARY_PATH="$PWD/libgcc:$LD_LIBRARY_PATH"
export LIBRARY_PATH="$PWD/libgcc:$LIBRARY_PATH"
mkdir "$SRC/rust"
export RUST_BACKTRACE=1
#python x.py build
python x.py install
rm -rf $PKG/usr/lib/rustlib/src/ \
$PKG/usr/share/zsh \
$PKG/usr/lib/rustlib/uninstall.sh
}
|