Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
HardenedBSD-pkg tests frontend test_environment.sh.in
export RESOURCEDIR=@abs_top_srcdir@/tests/frontend
export OS=`uname -s`
export PATH=$(atf_get_srcdir)/../../src/:${PATH}
#export LD_LIBRARY_PATH=$(atf_get_srcdir)/../../libpkg/.libs/
#export DYLD_LIBRARY_PATH=$(atf_get_srcdir)/../../libpkg/.libs/
export INSTALL_AS_USER=yes
export PKG_DBDIR=.
export NO_TICK=yes
export PKG_CONFIG_FILE=/dev/null
export PKG_ENABLE_PLUGINS=false
@if coverage
export LLVM_PROFILE_FILE=/tmp/pkg.%p.profraw
@endif
jailed=$(sysctl -n security.jail.jailed 2>/dev/null || :)
if [ "$jailed" = "1" ]; then
	export JAILED="[`hostname`] "
fi
export PROGNAME="pkg"

tests_init()
{
	TESTS="$@"
	export TESTS
	for t; do
		case " ${CLEANUP:-ENOCLEANUP} " in
		*\ $t\ *) atf_test_case $t cleanup ;;
		*) atf_test_case $t ;;
		esac
	done
}

atf_init_test_cases() {
	for t in ${TESTS}; do
		atf_add_test_case $t
	done
}

atf_skip_on() {
	if [ "${OS}" = "$1" ]; then
		shift
		atf_skip "$@"
	fi
}

atf_require() {
	if ! command -v "$1" 2>/dev/null >/dev/null; then
		shift
		atf_skip "$@"
	fi
}


q_mtime() {
    if [ "${OS}" = "FreeBSD" -o "${OS}" = "Darwin" ]; then
	stat -f "%m" "$1"
    else
	stat -c "%Y" "$1"
    fi
}

# helper function to obtain expected values for binaries used by the test cases

bin_meta() {
	local file="$1"
	XABI=""
	XALTABI=""
	XFreeBSD_version=""
	Xshlibs_provided=""
	Xshlibs_required=""
	case "${file}" in
		*freebsd-aarch64.bin)
			XABI=FreeBSD:14:aarch64
			XALTABI=freebsd:14:aarch64:64
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-amd64.bin)
			XABI=FreeBSD:14:amd64
			XALTABI=freebsd:14:x86:64
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-armv6.bin)
			XABI=FreeBSD:13:armv6
			XALTABI=freebsd:13:armv6:32:el:eabi:hardfp
			XFreeBSD_version=1304000
			Xshlibs_required="libc.so.7 libgcc_s.so.1"
			;;
		*freebsd-armv7.bin)
			XABI=FreeBSD:14:armv7
			XALTABI=freebsd:14:armv7:32:el:eabi:hardfp
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7 libgcc_s.so.1"
			;;
		*freebsd-i386.bin)
			XABI=FreeBSD:14:i386
			XALTABI=freebsd:14:x86:32
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-powerpc.bin)
			XABI=FreeBSD:14:powerpc
			XALTABI=freebsd:14:powerpc:32:eb
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-powerpc64.bin)
			XABI=FreeBSD:14:powerpc64
			XALTABI=freebsd:14:powerpc:64:eb
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-powerpc64le.bin)
			XABI=FreeBSD:14:powerpc64le
			XALTABI=freebsd:14:powerpc:64:el
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*freebsd-riscv64.bin)
			XABI=FreeBSD:14:riscv64
			XALTABI=freebsd:14:riscv:64:hf
			XFreeBSD_version=1401000
			Xshlibs_required="libc.so.7"
			;;
		*dfly.bin)
			XABI=dragonfly:5.10:x86:64
			XALTABI=dragonfly:5.10:x86:64
			Xshlibs_required="libc.so.8"
			;;
		*linux.bin)
			XABI=Linux:3.2:x86_64
			XALTABI=linux:3.2:x86_64
			Xshlibs_required="libc.so.6"
			;;

		*macos.bin)
			XABI=Darwin:24:aarch64
			XALTABI=darwin:24:aarch64:64
			Xshlibs_required="libSystem.B.dylib-1351.0"
			;;
		*macos106.bin)
			XABI=Darwin:10:x86_64
			XALTABI=darwin:10:x86_64
			Xshlibs_required="libSystem.B.dylib-125.2.11"
			;;
		*macos150.bin)
			XABI=Darwin:24:x86_64
			XALTABI=darwin:24:x86_64
			Xshlibs_required="libSystem.B.dylib-1351.0"
			;;

		# macosfat.bin has x86_64 as its first entry
		*macosfat.bin|*macosfat.bin#x86_64)
			XABI=Darwin:17:x86_64
			XALTABI=darwin:17:x86_64
			Xshlibs_required="libAnswer.A.dylib-1.2 libSystem.B.dylib-1319.0"
			;;

		# macosfat also has an aarch64 entry
		*macosfat.bin#aarch64)
			XABI=Darwin:20:aarch64
			XALTABI=darwin:20:aarch64:64
			Xshlibs_required="libAnswer.A.dylib-1.1 libSystem.B.dylib-1319.0"
			;;

		# macosfatlib.bin has x86_64 as its first entry
		*macosfatlib.bin|*macosfatlib.bin#x86_64)
			XABI=Darwin:17:x86_64
			XALTABI=darwin:17:x86_64
			Xshlibs_provided="libAnswer.A.dylib-1.2"
			Xshlibs_required="libSystem.B.dylib-1319.0"
			;;

		*macosfatlib.bin#aarch64)
			XABI=Darwin:20:aarch64
			XALTABI=darwin:20:aarch64:64
			Xshlibs_provided="libAnswer.A.dylib-1.1"
			Xshlibs_required="libSystem.B.dylib-1319.0"
			;;

		*)
			echo Unknown binary $1
			return 1
			;;
	esac
	return 0
}