#!/bin/sh

__BITBAKE_LAST_LINE=0

# Emit a useful diagnostic if something fails:
bb_sh_exit_handler() {
    ret=$?
    if [ "$ret" != 0 ]; then
        echo "WARNING: exit code $ret from a shell command."
    fi
    exit $ret
}

bb_bash_exit_handler() {
    ret=$?
    { set +x; } > /dev/null
    trap "" DEBUG
    if [ "$ret" != 0 ]; then
        echo "WARNING: ${BASH_SOURCE[0]}:${__BITBAKE_LAST_LINE} exit $ret from '$1'"

        echo "WARNING: Backtrace (BB generated script): "
        for i in $(seq 1 $((${#FUNCNAME[@]} - 1))); do
            if [ "$i" -eq 1 ]; then
                echo -e "	#$((i)): ${FUNCNAME[$i]}, ${BASH_SOURCE[$((i-1))]}, line ${__BITBAKE_LAST_LINE}"
            else
                echo -e "	#$((i)): ${FUNCNAME[$i]}, ${BASH_SOURCE[$((i-1))]}, line ${BASH_LINENO[$((i-1))]}"
            fi
        done
    fi
    exit $ret
}

bb_bash_debug_handler() {
    local line=${BASH_LINENO[0]}
    # For some reason the DEBUG trap trips with lineno=1 when scripts exit; ignore it
    if [ "$line" -eq 1 ]; then
        return
    fi

    # Track the line number of commands as they execute. This is so we can have access to the failing line number
    # in the EXIT trap. See http://gnu-bash.2382.n7.nabble.com/trap-echo-quot-trap-exit-on-LINENO-quot-EXIT-gt-wrong-linenumber-td3666.html
    if [ "${FUNCNAME[1]}" != "bb_bash_exit_handler" ]; then
        __BITBAKE_LAST_LINE=$line
    fi
}

case $BASH_VERSION in
"") trap 'bb_sh_exit_handler' 0
    set -e
    ;;
*)  trap 'bb_bash_exit_handler "$BASH_COMMAND"' 0
    trap '{ bb_bash_debug_handler; } 2>/dev/null' DEBUG
    set -e
    shopt -s extdebug
    ;;
esac
export AR="aarch64-poky-linux-gcc-ar"
export AS="aarch64-poky-linux-as "
export BUILD_AR="ar"
export BUILD_AS="as "
export BUILD_CC="gcc "
export BUILD_CCLD="gcc "
export BUILD_CFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/include -O2 -pipe"
export BUILD_CPP="gcc  -E"
export BUILD_CPPFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/include"
export BUILD_CXX="g++ "
export BUILD_CXXFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/include -O2 -pipe"
export BUILD_FC="gfortran "
export BUILD_LD="ld "
export BUILD_LDFLAGS="-L/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/lib                         -L/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/lib                         -Wl,--enable-new-dtags                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/lib                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/lib                         -Wl,-O1 -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=/home/sim/yocto/scarthgap/build/tmp/sysroots-uninative/x86_64-linux/lib/ld-linux-x86-64.so.2 -pthread"
export BUILD_NM="nm"
export BUILD_RANLIB="ranlib -D"
export BUILD_STRIP="strip"
export CARGO_HOME="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home"
export CC="aarch64-poky-linux-gcc  -mcpu=cortex-a72+crc -mbranch-protection=standard -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot"
export CCLD="aarch64-poky-linux-gcc  -mcpu=cortex-a72+crc -mbranch-protection=standard -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot"
export CFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types -fcanon-prefix-map  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native= "
export CPP="aarch64-poky-linux-gcc -E --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot  -mcpu=cortex-a72+crc -mbranch-protection=standard -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security"
export CPPFLAGS=""
export CXX="aarch64-poky-linux-g++  -mcpu=cortex-a72+crc -mbranch-protection=standard -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot"
export CXXFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types -fcanon-prefix-map  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native=  -fvisibility-inlines-hidden"
export FC="aarch64-poky-linux-gfortran  -mcpu=cortex-a72+crc -mbranch-protection=standard -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot"
export GIT_CEILING_DIRECTORIES="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0:/home/sim/yocto/scarthgap/build/tmp"
export HOME="/home/sim"
export LC_ALL="en_US.UTF-8"
export LD="aarch64-poky-linux-ld --sysroot=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot "
export LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fcanon-prefix-map  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot=/usr/src/debug/libstd-rs/1.75.0  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build=/usr/src/debug/libstd-rs/1.75.0  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fmacro-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot=  -fdebug-prefix-map=/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native=  -Wl,-z,relro,-z,now"
export LOGNAME="sim"
export MAKE="make"
export NM="aarch64-poky-linux-gcc-nm"
export OBJCOPY="aarch64-poky-linux-objcopy"
export OBJDUMP="aarch64-poky-linux-objdump"
export OMP_NUM_THREADS="8"
export PATH="/home/sim/yocto/scarthgap/build/tmp/sysroots-uninative/x86_64-linux/usr/bin:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/bin/python3-native:/home/sim/yocto/scarthgap/poky/scripts:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/bin/aarch64-poky-linux:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/bin/crossscripts:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/sbin:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/bin:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/sbin:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/bin:/home/sim/yocto/scarthgap/poky/bitbake/bin:/home/sim/yocto/scarthgap/build/tmp/hosttools"
export PERL_HASH_SEED="0"
export PKG_CONFIG_ALLOW_CROSS="1"
export PKG_CONFIG_DIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/lib/pkgconfig"
export PKG_CONFIG_DISABLE_UNINSTALLED="yes"
export PKG_CONFIG_LIBDIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/lib/pkgconfig"
export PKG_CONFIG_PATH="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/lib/pkgconfig:/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/share/pkgconfig"
export PKG_CONFIG_SYSROOT_DIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot"
export PKG_CONFIG_SYSTEM_INCLUDE_PATH="/usr/include"
export PKG_CONFIG_SYSTEM_LIBRARY_PATH="/usr/lib:/usr/lib"
export PSEUDO_DISABLED="1"
export PSEUDO_UNLOAD="1"
export PYTHON="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/usr/bin/python3-native/python3"
export PYTHONHASHSEED="0"
export PYTHONNOUSERSITE="1"
export PYTHON_INCLUDE_DIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/include/python3.12"
export PYTHON_LIBRARY="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/lib/libpython3.12.so"
export RANLIB="aarch64-poky-linux-gcc-ranlib"
export READELF="aarch64-poky-linux-readelf"
export RUST_BACKTRACE="1"
export RUST_TARGET_PATH="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rust-targets/"
unset SHELL
export SOURCE_DATE_EPOCH="1703177728"
export STAGING_INCDIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/include"
export STAGING_LIBDIR="/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot/usr/lib"
export STRINGS="aarch64-poky-linux-strings"
export STRIP="aarch64-poky-linux-strip"
export TZ="UTC"
export USER="sim"
export base_bindir="/usr/bin"
export base_libdir="/usr/lib"
export base_prefix=""
export base_sbindir="/usr/sbin"
export bindir="/usr/bin"
export datadir="/usr/share"
export docdir="/usr/share/doc"
export exec_prefix="/usr"
export includedir="/usr/include"
export infodir="/usr/share/info"
export libdir="/usr/lib"
export libexecdir="/usr/libexec"
export localstatedir="/var"
export mandir="/usr/share/man"
export nonarch_base_libdir="/usr/lib"
export nonarch_libdir="/usr/lib"
export prefix="/usr"
export rustlibdir="/usr/lib/rustlib/aarch64-poky-linux-gnu/lib"
export sbindir="/usr/sbin"
export servicedir="/srv"
export sharedstatedir="/com"
export sysconfdir="/etc"
export systemd_system_unitdir="/usr/lib/systemd/system"
export systemd_unitdir="/usr/lib/systemd"
export systemd_user_unitdir="/usr/lib/systemd/user"

# line: 1, file: autogenerated
do_configure() {
    # Export function set
    cargo_common_do_configure
}

# line: 47, file: /home/sim/yocto/scarthgap/poky/meta/classes-recipe/cargo_common.bbclass
cargo_common_do_configure() {
	mkdir -p /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/bitbake

	cat <<- EOF > /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config
	# EXTRA_OECARGO_PATHS
	paths = [
	$(for p in ; do echo \"$p\",; done)
	]
	EOF

	cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

	# Local mirror vendored by bitbake
	[source.bitbake]
	directory = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/vendor"
	EOF

	if [ 0 = "0" ]; then
		cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

		[source.crates-io]
		replace-with = "bitbake"
		local-registry = "/nonexistent"
		EOF
	fi

	cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

	[http]
	# Multiplexing can't be enabled because http2 can't be enabled
	# in curl-native without dependency loops
	multiplexing = false

	# Ignore the hard coded and incorrect path to certificates
	cainfo = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/recipe-sysroot-native/etc/ssl/certs/ca-certificates.crt"

	EOF

	cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

	# HOST_SYS
	[target.aarch64-poky-linux-gnu]
	linker = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/wrapper/target-rust-ccld"
	EOF

	if [ "aarch64-poky-linux-gnu" != "x86_64-unknown-linux-gnu" ]; then
		cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

		# BUILD_SYS
		[target.x86_64-unknown-linux-gnu]
		linker = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/wrapper/build-rust-ccld"
		EOF
	fi

	if [ "aarch64-poky-linux-gnu" != "x86_64-unknown-linux-gnu" -a "aarch64-poky-linux-gnu" != "aarch64-poky-linux-gnu" ]; then
		cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

		# TARGET_SYS
		[target.aarch64-poky-linux-gnu]
		linker = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/wrapper/target-rust-ccld"
		EOF
	fi

	# Put build output in build directory preferred by bitbake instead of
	# inside source directory unless they are the same
	if [ "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build" != "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/rustc-1.75.0-src/library/sysroot" ]; then
		cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

		[build]
		# Use out of tree build destination to avoid polluting the source tree
		target-dir = "/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build/target"
		EOF
	fi

	cat <<- EOF >> /home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/cargo_home/config

	[term]
	progress.when = 'always'
	progress.width = 80
	EOF
}

cd '/home/sim/yocto/scarthgap/build/tmp/work/cortexa72-poky-linux/libstd-rs/1.75.0/build'
do_configure

# cleanup
ret=$?
trap '' 0
exit $ret
