Differences From Artifact [582c735deb]:
- Executable file global/common.sh — part of check-in [e50a476efe] at 2019-08-22 02:52:20 on branch trunk — removed sneaky segfault in x86-64 syscall fn where %r8 (the register that contains the pointer to the syscall arguments from the C syscall wrapper, which need to be copied into the correct registers before the kernel is invoked) gets overwritten if the syscall valency > 5, because of overlapping ccall and syscall ABI argument registers - r8 is clobbered by argument 5 and any further attempts to use it as a ptr segfault at best. also modified the report function so that it immediate cancels compilation if a sub-process reports failure. changed allocator function signatures so they can return a condition code if the kernel reports an error; updated example code so it compiles and runs without fault. (user: lexi, size: 1780) [annotate] [blame] [check-ins using]
To Artifact [0a6c6a9052]:
- Executable file global/common.sh — part of check-in [6346f60bb6] at 2020-01-23 07:10:00 on branch install — Make install.sh actually try to install. Just a first pass at the problem for now, but it seems to work fine finally with some quick testing. (user: glowpelt, size: 1784) [annotate] [blame] [check-ins using]
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
check() {
var=$1
test "${!var}" == "" || return 0
say "we were not able to detect a default value for the configuration variable \$$var. please set this variable to $2 and try again."
exit 1
}
test "$to" = "" && {
say "\$to environment variable must be set to your build directory - are you running this script by hand? run [1m./build.sh[m in the root directory instead!"
exit 2
}
reqpack() {
if ! has "$1"; then
say "to $2 for [1mlibk[m, install the [1m$1[m package and try again"
exit 3
fi
}
|
| | | < > |
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
check() { var=$1 test "${!var}" == "" || return 0 say "we were not able to detect a default value for the configuration variable \$$var. please set this variable to $2 and try again." exit 1 } #test "$to" = "" && { # say "\$to environment variable must be set to your build directory - are you running this script by hand? run [1m./build.sh[m in the root directory instead!" # exit 2 #} reqpack() { if ! has "$1"; then say "to $2 for [1mlibk[m, install the [1m$1[m package and try again" exit 3 fi } |