alicelinux

A lightweight musl + clang/llvm + libressl + busybox distro
git clone https://codeberg.org/emmett1/alicelinux
Log | Files | Refs | README | LICENSE

abuild (2987B)


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