index : packages | |
Archlinux32 package modifications | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | build-support/disabled/rust162/PKGBUILD | 303 |
diff --git a/build-support/disabled/rust162/PKGBUILD b/build-support/disabled/rust162/PKGBUILD deleted file mode 100644 index 33a068d3..00000000 --- a/build-support/disabled/rust162/PKGBUILD +++ /dev/null @@ -1,303 +0,0 @@ -# Maintainer: Johannes Löthberg <johannes@kyriasis.com> -# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org> -# Contributor: Alexander F Rødseth <xyproto@archlinux.org> -# Contributor: Daniel Micay <danielmicay@gmail.com> -# Contributor: userwithuid <userwithuid@gmail.com> - -pkgbase=rust162 -pkgname=(rust162 rust162-musl rust162-wasm rust162-src) -epoch=1 -pkgver=1.62.0 -pkgrel=1 -pkgdesc="Systems programming language focused on safety, speed and concurrency" -url=https://www.rust-lang.org/ -arch=(i486 i686 pentium4 x86_64) -license=(MIT Apache) -options=(!emptydirs !strip !lto) -depends=(gcc-libs llvm-libs curl libssh2 gcc) -makedepends=(rust llvm libffi lib32-gcc-libs perl python cmake musl ninja - wasi-libc lld) -checkdepends=(procps-ng gdb) -source=( - "https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz"{,.asc} - 0001-cargo-Change-libexec-dir.patch - 0001-bootstrap-Change-libexec-dir.patch - 0002-compiler-Change-LLVM-targets.patch - 0003-compiler-Use-wasm-ld-for-wasm-targets.patch - remove-include-linux-fs.h.patch -) -sha256sums=('7d0878809b64d206825acae3eb7f60afb2212d81e3de1adf4c11c6032b36c027' - 'SKIP' - 'c901a9bb036c29ca092f7dbc8b447efdd9aa1044a902a88f9d024cb22681dc19' - '7080a88e44234aa363ba6321f319c8d9621382dd9581748a43847dae005e55bd' - '5137df0a3399e279db4c5b83ae8e99d2c1977f62aec2f90521edb02f51597064' - '26bf232d144b81a303ed91f6a331ddf004c5d9fefd41a11e36b61812a34459aa' - '34ed866e313e4580130a50118a4410d36fa0159123982521b6ef049439fc32ad') -validpgpkeys=(108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE # Rust Language (Tag and Release Signing Key) <rust-key@rust-lang.org> - 474E22316ABF4785A88C6E8EA2C794A986419D8A) # Tom Stellard <tstellar@redhat.com> - -prepare() { - cd rustc-$pkgver-src - - # Patch bootstrap and cargo so credential helpers - # are in /usr/lib instead of /usr/libexec - patch -d src/tools/cargo -Np1 < ../0001-cargo-Change-libexec-dir.patch - patch -Np1 -i ../0001-bootstrap-Change-libexec-dir.patch - - # Use our *-pc-linux-gnu targets, making LTO with clang simpler - patch -Np1 -i ../0002-compiler-Change-LLVM-targets.patch - - # Use our wasm-ld - patch -Np1 -i ../0003-compiler-Use-wasm-ld-for-wasm-targets.patch - - # https://github.com/llvm/llvm-project/issues/56421 - patch -Np1 -d src/llvm-project < ../remove-include-linux-fs.h.patch - - cat >config.toml <<END -changelog-seen = 2 -profile = "user" - -[llvm] -link-shared = true - -[build] -target = [ - "x86_64-unknown-linux-gnu", - "i686-unknown-linux-gnu", - "x86_64-unknown-linux-musl", - "wasm32-unknown-unknown", - "wasm32-wasi", -] -cargo = "/usr/bin/cargo" -rustc = "/usr/bin/rustc" -rustfmt = "/usr/bin/rustfmt" -locked-deps = true -vendor = true -tools = ["cargo", "rls", "clippy", "rustfmt", "analysis", "src", "rust-demangler"] -sanitizers = true -profiler = true - -# Generating docs fails with the wasm32-* targets -docs = false - -[install] -prefix = "/usr" - -[rust] -debuginfo-level-std = 2 -channel = "stable" -description = "Arch Linux $pkgbase $epoch:$pkgver-$pkgrel" -rpath = false -backtrace-on-ice = true -remap-debuginfo = true -jemalloc = true - -# LLVM crashes when passing an object through ThinLTO twice. This is triggered -# when using rust code in cross-language LTO if libstd was built using ThinLTO. -# http://blog.llvm.org/2019/09/closing-gap-cross-language-lto-between.html -# https://github.com/rust-lang/rust/issues/54872 -codegen-units-std = 1 - -# musl target produces warnings -deny-warnings = false - -[dist] -compression-formats = ["gz"] - -[target.x86_64-unknown-linux-gnu] -llvm-config = "/usr/bin/llvm-config" - -[target.x86_64-unknown-linux-musl] -sanitizers = false -musl-root = "/usr/lib/musl" - -[target.wasm32-unknown-unknown] -sanitizers = false -profiler = false - -[target.wasm32-wasi] -sanitizers = false -profiler = false -wasi-root = "/usr/share/wasi-sysroot" -END -} - -_pick() { - local p="$1" f d; shift - for f; do - d="$srcdir/$p/$f" - mkdir -p "$(dirname "$d")" - mv "$f" "$d" - rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" - done -} - -build() { - cd rustc-$pkgver-src - - export RUST_BACKTRACE=1 - - DESTDIR="$srcdir/dest-rust" python ./x.py install -j "$(nproc)" - - cd ../dest-rust - - # delete unnecessary files, e.g. files only used for the uninstall script - rm usr/lib/rustlib/{components,install.log,rust-installer-version,uninstall.sh} - rm usr/lib/rustlib/manifest-* - - # rustbuild always installs copies of the shared libraries to /usr/lib, - # overwrite them with symlinks to the per-architecture versions - mkdir -p usr/lib32 - ln -srft usr/lib usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/*.so - ln -srft usr/lib32 usr/lib/rustlib/i686-unknown-linux-gnu/lib/*.so - - mkdir -p usr/share/bash-completion - mv etc/bash_completion.d usr/share/bash-completion/completions - - mkdir -p usr/share/licenses/rust - mv -t usr/share/licenses/rust usr/share/doc/rust/{COPYRIGHT,LICENSE*} - - _pick dest-i686 usr/lib/rustlib/i686-unknown-linux-gnu usr/lib32 - _pick dest-musl usr/lib/rustlib/x86_64-unknown-linux-musl - _pick dest-wasm usr/lib/rustlib/wasm32-* - _pick dest-src usr/lib/rustlib/src -} - -package_rust162() { - optdepends=('lldb: rust-lldb script' - 'gdb: rust-gdb script') - provides=(cargo rustfmt) - conflicts=(cargo rustfmt 'rust-docs<1:1.56.1-3') - replaces=(cargo rustfmt cargo-tree 'rust-docs<1:1.56.1-3') - - cp -a dest-rust/* "$pkgdir" -} - -package_lib32-rust-libs() { - pkgdesc="32-bit target and libraries for Rust" - depends=(rust lib32-gcc-libs) - provides=(lib32-rust) - conflicts=(lib32-rust) - replaces=(lib32-rust) - - cp -a dest-i686/* "$pkgdir" - - mkdir -p "$pkgdir/usr/share/licenses" - ln -s rust "$pkgdir/usr/share/licenses/$pkgname" -} - -package_rust162-musl() { - pkgdesc="Musl target for Rust" - depends=(rust162) - - cp -a dest-musl/* "$pkgdir" - - mkdir -p "$pkgdir/usr/share/licenses" - ln -s rust "$pkgdir/usr/share/licenses/$pkgname" -} - -package_rust162-wasm() { - pkgdesc="WebAssembly targets for Rust" - depends=(rust162 lld) - - cp -a dest-wasm/* "$pkgdir" - - mkdir -p "$pkgdir/usr/share/licenses" - ln -s rust "$pkgdir/usr/share/licenses/$pkgname" -} - -package_rust162-src() { - pkgdesc="Source code for the Rust standard library" - depends=(rust162) - - cp -a dest-src/* "$pkgdir" - - mkdir -p "$pkgdir/usr/share/licenses" - ln -s rust "$pkgdir/usr/share/licenses/$pkgname" -} - -# vim:set ts=2 sw=2 et: -# enable i686-unknown-linux-gnu target -# and replace pentium4 (SSE2) with pentium3 (no SSE2) in the compiler spec file -# -# Also trying to reduce memory usage by building with -# -debuginfo-level-std=1 -# see https://github.com/rust-lang/rust/issues/60294 - -source+=(config.toml.patch) -sha256sums+=('a8b42b5f47c0eaebafbb2cd1f39d2f944945cbb55e87d4dc21c7bd5b1b8964d8') - -eval "$( - declare -f prepare | \ - sed ' - $ i patch -p1 -i "$srcdir/config.toml.patch" - ' -)" - -# stop insanity of nproc (see FS#62952) -#eval "$( -# declare -f build | \ -# sed ' -# s/-j "$(nproc)"/-j1/ -# ' -#)" - -if [ "${CARCH}" != 'pentium4' ]; then - eval "$( - declare -f prepare | \ - sed ' - $ i sed -i "s/pentium4/pentium3/g" "$srcdir/rustc-$pkgver-src/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs" - ' - )" -fi - -# Don't move lib32 support into rust32-lib, we are on 32-bit in the end -# and don't draw a symlink to 64-bit libraries (but to 32-bit instead) -# move rust-musl though, also patch architecture for musl accordingly -eval "$( - declare -f build | \ - sed ' - /mkdir.*usr\/lib32/d - /ln.*x86_64.*/d - /ln.*i686-unknown-linux-gnu.*/d - /_pick.*dest-i686.*/d - s/x86_64-unknown-linux-musl/i686-unknown-linux-musl/ - ' -)" - -eval "$( - declare -f package_rust | \ - sed ' - /ln /s/x86_64-unknown-linux-gnu/i686-unknown-linux-gnu/g - ' -)" - -eval "$( - declare -f package_rust-musl | \ - sed ' - s/x86_64-unknown-linux-musl/i686-unknown-linux-musl/ - ' -)" - -# remove 32-bit stuff (shouldn't that be removed automatically?) -pkgname=( - $( - printf '%s\n' "${pkgname[@]}" | \ - grep -v '^lib32-rust-libs' - ) -) -makedepends=(${makedepends[@]//lib32-gcc-libs/}) - -# Enable on demand, if your previous rust is broken use previous version -# from build-support (this is preferable to using rust-bin below, but -# requires all intermediate versions of rust to be built -#makedepends=(${makedepends[@]//rust/}) -#makedepends+=('rust148') - -# Enable on demand, if your previous rust is broken use previous version -# from build-support -#makedepends=(${makedepends[@]//rust/}) -#makedepends+=('rust159-bin') - -# rust 1.61 is built against llvm13.0, so force that in as a make dependency -makedepends+=('llvm13-libs') |