#!/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="ar"
export AS="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/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include -O2 -pipe"
export BUILD_CPP="gcc  -E"
export BUILD_CPPFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include"
export BUILD_CXX="g++ "
export BUILD_CXXFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/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/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -L/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib                         -Wl,--enable-new-dtags                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/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 CC="gcc "
export CCLD="gcc "
export CFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include -O2 -pipe -D_XOPEN_SOURCE "
export CONFIG_SITE="/home/sim/yocto/scarthgap/poky/meta/site/native"
export CPP="gcc  -E"
export CPPFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include"
export CXX="g++ "
export CXXFLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include -O2 -pipe"
export FC="gfortran "
export GIT_CEILING_DIRECTORIES="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98:/home/sim/yocto/scarthgap/build/tmp"
export HOME="/home/sim"
export LC_ALL="en_US.UTF-8"
export LD="ld "
export LDFLAGS="-L/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -L/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib                         -Wl,--enable-new-dtags                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib                         -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/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 LOGNAME="sim"
export MAKE="make"
export NM="nm"
export OBJCOPY="objcopy"
export OBJDUMP="objdump"
export OMP_NUM_THREADS="8"
export PATH="/home/sim/yocto/scarthgap/poky/scripts/native-intercept:/home/sim/yocto/scarthgap/build/tmp/sysroots-uninative/x86_64-linux/usr/bin:/home/sim/yocto/scarthgap/poky/scripts:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/bin/x86_64-linux:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/bin:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/sbin:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/bin:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/sbin:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/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_DIR="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib/pkgconfig"
export PKG_CONFIG_DISABLE_UNINSTALLED="yes"
export PKG_CONFIG_LIBDIR="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib/pkgconfig"
export PKG_CONFIG_PATH="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib/pkgconfig:/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/share/pkgconfig"
export PKG_CONFIG_SYSROOT_DIR=""
unset PKG_CONFIG_SYSTEM_INCLUDE_PATH
unset PKG_CONFIG_SYSTEM_LIBRARY_PATH
export PSEUDO_DISABLED="1"
export PSEUDO_UNLOAD="1"
export PYTHONHASHSEED="0"
export RANLIB="ranlib -D"
export READELF="readelf"
unset SHELL
export SOURCE_DATE_EPOCH="1708033235"
export STRINGS="strings"
export STRIP="strip"
export TZ="UTC"
export USER="sim"
export base_bindir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/bin"
export base_libdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib"
export base_prefix="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native"
export base_sbindir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/sbin"
export bindir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/bin"
export datadir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/share"
export docdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/share/doc"
export exec_prefix="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr"
export includedir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include"
export infodir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/share/info"
export libdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib"
export libexecdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/libexec"
export localstatedir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/var"
export lt_cv_sys_lib_dlsearch_path_spec="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib /home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib /lib /lib64 /usr/lib /usr/lib64"
export mandir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/share/man"
export nonarch_base_libdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib"
export nonarch_libdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib"
export prefix="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr"
export sbindir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/sbin"
export servicedir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/srv"
export sharedstatedir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/com"
export sysconfdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/etc"
export systemd_system_unitdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib/systemd/system"
export systemd_unitdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib/systemd"
export systemd_user_unitdir="/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib/systemd/user"

# line: 79, file: /home/sim/yocto/scarthgap/poky/meta-openembedded/meta-oe/recipes-support/nss/nss_3.98.bb
do_compile() {
    # Need to set RPATH so that chrpath will do its job correctly
    RPATH="-Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib -Wl,-rpath-link,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib -Wl,-rpath,/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/lib"
    export NSPR_INCLUDE_DIR=/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include/nspr
    export NSPR_LIB_DIR=/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib
    export NSPR_INCLUDE_DIR=/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include/nspr

    export CROSS_COMPILE=1
    export NATIVE_CC="gcc "
    # Additional defines needed on Centos 7
    export NATIVE_FLAGS="-isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include -O2 -pipe -DLINUX -Dlinux"
    export BUILD_OPT=1

    # POSIX.1-2001 states that the behaviour of getcwd() when passing a null
    # pointer as the buf argument, is unspecified.
    export NATIVE_FLAGS="${NATIVE_FLAGS} -DGETCWD_CANT_MALLOC"

    export FREEBL_NO_DEPEND=1
    export FREEBL_LOWHASH=1

    export LIBDIR=/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/lib
    export MOZILLA_CLIENT=1
    export NS_USE_GCC=1
    export NSS_USE_SYSTEM_SQLITE=1
    export NSS_ENABLE_ECC=1
    export NSS_ENABLE_WERROR=0

    

    export OS_RELEASE=3.4
    export OS_TARGET=Linux
    export OS_ARCH=Linux

    if [ "x86_64" = "powerpc" ]; then
        OS_TEST=ppc
    elif [ "x86_64" = "powerpc64" -o "x86_64" = "powerpc64le" ]; then
        OS_TEST=ppc64
    elif [ "x86_64" = "mips" -o "x86_64" = "mipsel" -o "x86_64" = "mips64" -o "x86_64" = "mips64el" ]; then
        OS_TEST=mips
    elif [ "x86_64" = "aarch64_be" ]; then
        OS_TEST="aarch64"
    else
        OS_TEST="x86_64"
    fi

    if [ "64" = "64" ]; then
        export USE_64=1
    elif [ "x86_64" = "x86_64" -a "64" = "32" ]; then
        export USE_X32=1
    fi

    export NSS_DISABLE_GTESTS=1
    # We can modify CC in the environment, but if we set it via an
    # argument to make, nsinstall, a host program, will also build with it!
    #
    # nss pretty much does its own thing with CFLAGS, so we put them into CC.
    # Optimization will get clobbered, but most of the stuff will survive.
    # The motivation for this is to point to the correct place for debug
    # source files and CFLAGS does that.  Nothing uses CCC.
    #
    export CC="gcc  -isystem/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/recipe-sysroot-native/usr/include -O2 -pipe -D_XOPEN_SOURCE "
    make -C ./nss CCC="g++  -g" \
        OS_TEST=${OS_TEST} \
        RPATH="${RPATH}" \
        autobuild
}

cd '/home/sim/yocto/scarthgap/build/tmp/work/x86_64-linux/nss-native/3.98/nss-3.98'
do_compile

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