diff --git a/dev-lang/rust_bin/rust_bin-1.63.0.recipe b/dev-lang/rust_bin/rust_bin-1.63.0.recipe new file mode 100644 index 000000000..bb5615e2c --- /dev/null +++ b/dev-lang/rust_bin/rust_bin-1.63.0.recipe @@ -0,0 +1,100 @@ +SUMMARY="Modern and safe systems programming language" +DESCRIPTION="Rust is a systems programming language that runs blazingly fast, \ +prevents almost all crashes*, and eliminates data races." +HOMEPAGE="https://www.rust-lang.org/" +COPYRIGHT="2022 The Rust Project Developers" +LICENSE="MIT" +REVISION="1" + +case "$effectiveTargetArchitecture" in + x86) +SOURCE_URI="https://dl.rust-on-haiku.com/dist/$portVersion/rust-$portVersion-i686-unknown-haiku.tar.xz" +CHECKSUM_SHA256="49f5f6ad0bb2b65270cefa648ce5fab0b6f8fc08dea8fa75e31125c05e445bc2" +SOURCE_DIR="rust-$portVersion-i686-unknown-haiku" + ;; + x86_64) +SOURCE_URI="https://dl.rust-on-haiku.com/dist/$portVersion/rust-$portVersion-x86_64-unknown-haiku.tar.xz" +CHECKSUM_SHA256="2bbf0d73211ff71791806848c74710a2abbf1087c571e8df583cf1aa0c02b3b5" +SOURCE_DIR="rust-$portVersion-x86_64-unknown-haiku" + ;; + *) +SOURCE_URI="https://dl.rust-on-haiku.com/dist/$portVersion/rustc-$portVersion-src.tar.xz" +CHECKSUM_SHA256="60c498d66377cc809eaa261d46a25b972d617cc41863b7ac708445d56a349c0c" +SOURCE_DIR="rustc-$portVersion-src" + ;; +esac + +ARCHITECTURES="!x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="x86" +DISABLE_SOURCE_PACKAGE=yes + +cargoVersion="0.64.0" +rustfmtVersion="1.5.1" +clippyVersion="0.1.63" + +PROVIDES=" + rust_bin$secondaryArchSuffix = $portVersion + cmd:rustc$secondaryArchSuffix = $portVersion + cmd:rustdoc$secondaryArchSuffix = $portVersion + cmd:rustfmt$secondaryArchSuffix = $portVersion + cmd:rust_demangler$secondaryArchSuffix = $portVersion + cmd:rust_gdb$secondaryArchSuffix = $portVersion + cmd:rust_gdbgui$secondaryArchSuffix = $portVersion + cmd:rust_lldb$secondaryArchSuffix = $portVersion + cmd:cargo$secondaryArchSuffix = $cargoVersion + cmd:cargo_clippy$secondaryArchSuffix = $clippyVersion + cmd:cargo_fmt$secondaryArchSuffix = $cargoVersion + cmd:clippy_driver$secondaryArchSuffix = $clippyVersion + cmd:rustfmt = $rustfmtVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libcrypto$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libssh2$secondaryArchSuffix + lib:libssl$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " +CONFLICTS=" + rust$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " + +relativeInstallDir="develop/tools$secondaryArchSubDir/rust" +installDir="$prefix/$relativeInstallDir" + +INSTALL() +{ + ./install.sh \ + --prefix=$installDir \ + --docdir=$developDocDir \ + --mandir=$manDir \ + --sysconfdir=$dataDir \ + --disable-ldconfig + + # move zsh data to the datadir + mv $installDir/share/zsh $dataDir + rm -rf $installDir/share + + # clean out unneccesary files created by the rust installer + rm $installDir/lib/rustlib/components + rm $installDir/lib/rustlib/install.log + rm $installDir/lib/rustlib/manifest-* + rm $installDir/lib/rustlib/rust-installer-version + rm $installDir/lib/rustlib/uninstall.sh + + # link the binaries in $binDir + mkdir -p $binDir + for f in cargo cargo-clippy cargo-fmt clippy-driver \ + rust-demangler rust-gdb rust-gdbgui rust-lldb rustc rustdoc \ + rustfmt; do + symlinkRelative -sfn $installDir/bin/$f $binDir + done + + # make sure runtime_loader can find the libraries in the lib dir relative + # to the binaries + symlinkRelative -sfn $installDir/lib $installDir/bin/lib +} diff --git a/dev-lang/rust_wasm_bin/rust_wasm_bin-1.63.0.recipe b/dev-lang/rust_wasm_bin/rust_wasm_bin-1.63.0.recipe new file mode 100644 index 000000000..a2b2f347c --- /dev/null +++ b/dev-lang/rust_wasm_bin/rust_wasm_bin-1.63.0.recipe @@ -0,0 +1,43 @@ +SUMMARY="Wasm target for the Rust compiler" +DESCRIPTION="Adds support for the wasm32-unknown-unknown target for Rust." +HOMEPAGE="https://www.rust-lang.org/" +COPYRIGHT="2021 The Rust Project Developers" +LICENSE="MIT" +REVISION="1" +SOURCE_URI="https://dl.rust-on-haiku.com/dist/$portVersion/rust-std-$portVersion-wasm32-unknown-unknown.tar.xz" +CHECKSUM_SHA256="2eb1ba01ae26f6f81784f677dc377d8e856c2a88df8fb1dd6fc9612e748c386f" +SOURCE_DIR="rust-std-$portVersion-wasm32-unknown-unknown" +ARCHITECTURES="!x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="x86" +DISABLE_SOURCE_PACKAGE=yes +PROVIDES=" + rust_wasm_bin$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + rust_bin$secondaryArchSuffix == $portVersion + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " + +relativeInstallDir="develop/tools$secondaryArchSubDir/rust" +installDir="$prefix/$relativeInstallDir" + +INSTALL() +{ + ./install.sh \ + --prefix=$installDir \ + --docdir=$developDocDir \ + --mandir=$manDir \ + --sysconfdir=$dataDir \ + --disable-ldconfig + + # clean out unneccesary files created by the rust installer + rm $installDir/lib/rustlib/components + rm $installDir/lib/rustlib/install.log + rm $installDir/lib/rustlib/manifest-* + rm $installDir/lib/rustlib/rust-installer-version + rm $installDir/lib/rustlib/uninstall.sh +}