test_environment.sh.in
1 export RESOURCEDIR=@abs_top_srcdir@/tests/frontend 2 export OS=`uname -s` 3 export PATH=$(atf_get_srcdir)/../../src/:${PATH} 4 #export LD_LIBRARY_PATH=$(atf_get_srcdir)/../../libpkg/.libs/ 5 #export DYLD_LIBRARY_PATH=$(atf_get_srcdir)/../../libpkg/.libs/ 6 export INSTALL_AS_USER=yes 7 export PKG_DBDIR=. 8 export NO_TICK=yes 9 export PKG_ENABLE_PLUGINS=false 10 @if coverage 11 export LLVM_PROFILE_FILE=/tmp/pkg.%p.profraw 12 @endif 13 jailed=$(sysctl -n security.jail.jailed 2>/dev/null || :) 14 if [ "$jailed" = "1" ]; then 15 export JAILED="[`hostname`] " 16 fi 17 export PROGNAME="pkg" 18 19 tests_init() 20 { 21 TESTS="$@" 22 export TESTS 23 for t; do 24 case " ${CLEANUP:-ENOCLEANUP} " in 25 *\ $t\ *) atf_test_case $t cleanup ;; 26 *) atf_test_case $t ;; 27 esac 28 done 29 } 30 31 atf_init_test_cases() { 32 for t in ${TESTS}; do 33 atf_add_test_case $t 34 done 35 } 36 37 atf_skip_on() { 38 if [ "${OS}" = "$1" ]; then 39 shift 40 atf_skip "$@" 41 fi 42 } 43 44 atf_require() { 45 if ! command -v "$1" 2>/dev/null >/dev/null; then 46 shift 47 atf_skip "$@" 48 fi 49 } 50 51 52 q_mtime() { 53 if [ "${OS}" = "FreeBSD" -o "${OS}" = "Darwin" ]; then 54 stat -f "%m" "$1" 55 else 56 stat -c "%Y" "$1" 57 fi 58 } 59 60 # helper function to obtain expected values for binaries used by the test cases 61 62 bin_meta() { 63 local file="$1" 64 XABI="" 65 XALTABI="" 66 XFreeBSD_version="" 67 Xshlibs_provided="" 68 Xshlibs_required="" 69 case "${file}" in 70 *freebsd-aarch64.bin) 71 XABI=FreeBSD:14:aarch64 72 XALTABI=freebsd:14:aarch64:64 73 XFreeBSD_version=1401000 74 Xshlibs_required="libc.so.7" 75 ;; 76 *freebsd-amd64.bin) 77 XABI=FreeBSD:14:amd64 78 XALTABI=freebsd:14:x86:64 79 XFreeBSD_version=1401000 80 Xshlibs_required="libc.so.7" 81 ;; 82 *freebsd-armv6.bin) 83 XABI=FreeBSD:13:armv6 84 XALTABI=freebsd:13:armv6:32:el:eabi:hardfp 85 XFreeBSD_version=1304000 86 Xshlibs_required="libc.so.7 libgcc_s.so.1" 87 ;; 88 *freebsd-armv7.bin) 89 XABI=FreeBSD:14:armv7 90 XALTABI=freebsd:14:armv7:32:el:eabi:hardfp 91 XFreeBSD_version=1401000 92 Xshlibs_required="libc.so.7 libgcc_s.so.1" 93 ;; 94 *freebsd-i386.bin) 95 XABI=FreeBSD:14:i386 96 XALTABI=freebsd:14:x86:32 97 XFreeBSD_version=1401000 98 Xshlibs_required="libc.so.7" 99 ;; 100 *freebsd-powerpc.bin) 101 XABI=FreeBSD:14:powerpc 102 XALTABI=freebsd:14:powerpc:32:eb 103 XFreeBSD_version=1401000 104 Xshlibs_required="libc.so.7" 105 ;; 106 *freebsd-powerpc64.bin) 107 XABI=FreeBSD:14:powerpc64 108 XALTABI=freebsd:14:powerpc:64:eb 109 XFreeBSD_version=1401000 110 Xshlibs_required="libc.so.7" 111 ;; 112 *freebsd-powerpc64le.bin) 113 XABI=FreeBSD:14:powerpc64le 114 XALTABI=freebsd:14:powerpc:64:el 115 XFreeBSD_version=1401000 116 Xshlibs_required="libc.so.7" 117 ;; 118 *freebsd-riscv64.bin) 119 XABI=FreeBSD:14:riscv64 120 XALTABI=freebsd:14:riscv:64:hf 121 XFreeBSD_version=1401000 122 Xshlibs_required="libc.so.7" 123 ;; 124 *dfly.bin) 125 XABI=dragonfly:5.10:x86:64 126 XALTABI=dragonfly:5.10:x86:64 127 Xshlibs_required="libc.so.8" 128 ;; 129 *linux.bin) 130 XABI=Linux:3.2:x86_64 131 XALTABI=linux:3.2:x86_64 132 Xshlibs_required="libc.so.6" 133 ;; 134 135 *macos.bin) 136 XABI=Darwin:24:aarch64 137 XALTABI=darwin:24:aarch64:64 138 Xshlibs_required="libSystem.B.dylib-1351.0" 139 ;; 140 *macos106.bin) 141 XABI=Darwin:10:x86_64 142 XALTABI=darwin:10:x86_64 143 Xshlibs_required="libSystem.B.dylib-125.2.11" 144 ;; 145 *macos150.bin) 146 XABI=Darwin:24:x86_64 147 XALTABI=darwin:24:x86_64 148 Xshlibs_required="libSystem.B.dylib-1351.0" 149 ;; 150 151 # macosfat.bin has x86_64 as its first entry 152 *macosfat.bin|*macosfat.bin#x86_64) 153 XABI=Darwin:17:x86_64 154 XALTABI=darwin:17:x86_64 155 Xshlibs_required="libAnswer.A.dylib-1.2 libSystem.B.dylib-1319.0" 156 ;; 157 158 # macosfat also has an aarch64 entry 159 *macosfat.bin#aarch64) 160 XABI=Darwin:20:aarch64 161 XALTABI=darwin:20:aarch64:64 162 Xshlibs_required="libAnswer.A.dylib-1.1 libSystem.B.dylib-1319.0" 163 ;; 164 165 # macosfatlib.bin has x86_64 as its first entry 166 *macosfatlib.bin|*macosfatlib.bin#x86_64) 167 XABI=Darwin:17:x86_64 168 XALTABI=darwin:17:x86_64 169 Xshlibs_provided="libAnswer.A.dylib-1.2" 170 Xshlibs_required="libSystem.B.dylib-1319.0" 171 ;; 172 173 *macosfatlib.bin#aarch64) 174 XABI=Darwin:20:aarch64 175 XALTABI=darwin:20:aarch64:64 176 Xshlibs_provided="libAnswer.A.dylib-1.1" 177 Xshlibs_required="libSystem.B.dylib-1319.0" 178 ;; 179 180 *) 181 echo Unknown binary $1 182 return 1 183 ;; 184 esac 185 return 0 186 }