rust.sh (1448B)
1# Define equivalent of TOML config in environment 2# [build] 3# jobs = $XBPS_MAKEJOBS 4export CARGO_BUILD_JOBS="$XBPS_MAKEJOBS" 5export CARGO_HOME="/host/cargo" 6 7if [ "$CROSS_BUILD" ]; then 8 # Define equivalent of TOML config in environment 9 # [target.${RUST_TARGET}] 10 # linker = ${CC} 11 _XBPS_CROSS_RUST_TARGET_ENV="${XBPS_CROSS_RUST_TARGET^^}" 12 _XBPS_CROSS_RUST_TARGET_ENV="${_XBPS_CROSS_RUST_TARGET_ENV//-/_}" 13 export CARGO_TARGET_${_XBPS_CROSS_RUST_TARGET_ENV}_LINKER="$CC" 14 unset _XBPS_CROSS_RUST_TARGET_ENV 15 16 # Define equivalent of TOML config in environment 17 # [build] 18 # target = ${RUST_TARGET} 19 export CARGO_BUILD_TARGET="$RUST_TARGET" 20 21 # If cc-rs needs to build host binaries, it guesses the compiler and 22 # uses default (wrong) flags unless they are specified explicitly; 23 # innocuous flags are used here just to disable its defaults 24 export HOST_CC="gcc" 25 export HOST_CFLAGS="-O2" 26else 27 unset CARGO_BUILD_TARGET 28fi 29 30# For cross-compiling rust -sys crates 31export PKG_CONFIG_ALLOW_CROSS=1 32 33# gettext-rs 34export GETTEXT_BIN_DIR=/usr/bin 35export GETTEXT_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib/gettext" 36export GETTEXT_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include" 37 38# libssh2-sys 39export LIBSSH2_SYS_USE_PKG_CONFIG=1 40 41# sodium-sys 42export SODIUM_LIB_DIR="${XBPS_CROSS_BASE}/usr/include" 43export SODIUM_INC_DIR="${XBPS_CROSS_BASE}/usr/lib" 44 45# openssl-sys 46export OPENSSL_NO_VENDOR=1 47 48# pcre2-sys, only necessary for musl targets 49export PCRE2_SYS_STATIC=0