Merge pull request #2265 from xexyl/burley04
This commit is contained in:
33 files changed
+429
-351
No files matched your search
@@ -131,7 +131,7 @@ all: data ${TARGET}
|
||||
sandwich supernova deep_magic magic charon pluto
|
||||
|
||||
${PROG}: ${PROG}.c
|
||||
@echo "NOTE: This entry is likely to fail and/or dump core on any computer other"
|
||||
@echo "Warning: this entry is likely to fail and/or dump core on any computer other"
|
||||
@echo "than a Vax-11 or pdp-11."
|
||||
${CC} ${CFLAGS} $< -o $@ ${LDFLAGS}
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ include ../../var.mk
|
||||
#
|
||||
CSILENCE= -Wno-bitwise-op-parentheses -Wno-char-subscripts -Wno-error \
|
||||
-Wno-implicit-function-declaration -Wno-int-to-pointer-cast \
|
||||
-Wno-unused-value
|
||||
-Wno-unused-value -Wno-unused-parameter
|
||||
|
||||
# Common C compiler warning flags
|
||||
#
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
char a[80];
|
||||
int e[4],g[5],c=100,h,i,j,k,b,f,s,t;
|
||||
jmp_buf p[4];
|
||||
int poke(char *d){
|
||||
return poke((char*)((srand(time((time_t*)&h)),
|
||||
int pain(char *d){
|
||||
return pain((char*)((srand(time((time_t*)&h)),
|
||||
setjmp(p[2]),
|
||||
(k=atoi((fgets(a,sizeof a, stdin),
|
||||
a+strspn(a," -"))))
|
||||
@@ -89,6 +89,5 @@ i+=i+1,
|
||||
longjmp(p[0],0)),0),
|
||||
longjmp(p[2],3)),0));
|
||||
}
|
||||
int main(int argc, char**d){
|
||||
(void)argc;
|
||||
return poke((char*)d); }
|
||||
int main(int argc,char**d){
|
||||
return pain((char*)d);}
|
||||
+13
-10
@@ -64,8 +64,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -73,16 +73,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -90,12 +92,13 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+12
-10
@@ -63,8 +63,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -72,16 +72,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -89,9 +91,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,9 +63,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,9 +63,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+13
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,12 +63,13 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+13
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,12 +63,13 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+13
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,12 +63,13 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+13
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,12 +63,13 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+12
-10
@@ -39,8 +39,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -48,16 +48,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -65,9 +67,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-10
@@ -37,8 +37,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -46,16 +46,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -63,9 +65,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-10
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,16 +44,18 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
@@ -61,9 +63,9 @@ if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -87,8 +87,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -96,27 +96,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -41,8 +41,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -50,27 +50,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
@@ -41,8 +41,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -50,27 +50,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+13
-12
@@ -7,7 +7,7 @@
|
||||
#
|
||||
# It is usually invoked by:
|
||||
#
|
||||
# -a bin/output-year-index.sh
|
||||
# bin/output-year-index.sh
|
||||
#
|
||||
# Copyright (c) 2024 by Landon Curt Noll. All Rights Reserved.
|
||||
#
|
||||
@@ -42,8 +42,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -51,27 +51,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -42,8 +42,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -51,27 +51,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -44,8 +44,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -53,27 +53,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -38,8 +38,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -47,27 +47,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+13
-11
@@ -50,8 +50,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -59,30 +59,32 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
# setup bash file matching
|
||||
#
|
||||
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
|
||||
|
||||
+12
-11
@@ -39,8 +39,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -48,27 +48,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -44,8 +44,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -53,27 +53,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -44,8 +44,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -53,27 +53,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -44,8 +44,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -53,27 +53,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,27 +44,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,27 +44,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
+12
-11
@@ -35,8 +35,8 @@
|
||||
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require
|
||||
# bash version 5.1.8 or later.
|
||||
#
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we
|
||||
# often use it "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# WHY 5.1.8 and not 4.2? This safely is done because macOS Homebrew bash we
|
||||
# often use is "version 5.2.26(1)-release" or later, and the RHEL Linux bash we
|
||||
# use often use is "version 5.1.8(1)-release" or later. These versions are what
|
||||
# we initially tested. We recommend you either upgrade bash or install a newer
|
||||
# version of bash and adjust your $PATH so that "/usr/bin/env bash" finds a bash
|
||||
@@ -44,27 +44,28 @@
|
||||
#
|
||||
# NOTE: The macOS shipped, as of 2024 March 15, a version of bash is something like
|
||||
# bash "version 3.2.57(1)-release". That macOS shipped version of bash
|
||||
# will NOT work. For users of macOS we recommend you install homebrew,
|
||||
# (see https://brew.sh), and then install homebrew bash (/opt/homebrew/bin/bash),
|
||||
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin".
|
||||
# will NOT work. For users of macOS we recommend you install Homebrew,
|
||||
# (see https://brew.sh), and then run "brew install bash" which will
|
||||
# typically install it into /opt/homebrew/bin/bash, and then arrange your $PATH
|
||||
# so that "/usr/bin/env bash" finds "/opt/homebrew/bin" (or whatever the
|
||||
# Homebrew bash is).
|
||||
#
|
||||
# NOTE: And while MacPorts might work, we noticed a number of subtle differences
|
||||
# with some of their ported tools to suggest you might be better off
|
||||
# with installing homebrew (see https://brew.sh). No disrespect is intended
|
||||
# with installing Homebrew (see https://brew.sh). No disrespect is intended
|
||||
# to the MacPorts team as they do a commendable job. Nevertheless we ran
|
||||
# into enough differences with MacPorts environments to suggest you
|
||||
# might find a better experience with this tool under homebrew instead.
|
||||
# might find a better experience with this tool under Homebrew instead.
|
||||
#
|
||||
if [[ -z ${BASH_VERSINFO[0]} ||
|
||||
${BASH_VERSINFO[0]} -lt 5 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 ||
|
||||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -eq 1 && ${BASH_VERSINFO[2]} -lt 8 ]]; then
|
||||
|
||||
echo "$0: ERROR: bash version needs to be >= 5.1.8: $BASH_VERSION" 1>&2
|
||||
echo "$0: Warning: bash version >= 4.2 might work but 5.1.8 was the minimum we tested" 1>&2
|
||||
echo "$0: Notice: For macOS users: install homebrew (see https://brew.sh)," \
|
||||
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
|
||||
""brew install bash" and then modify your \$PATH so that \"#!/usr/bin/env bash\"" \
|
||||
"finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
|
||||
exit 4
|
||||
fi
|
||||
|
||||
|
||||
@@ -527,24 +527,24 @@ were the first IOCCC entries to have been released via
|
||||
edits to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
repo</a> began.</p>
|
||||
<p>The local <a href="https://git-scm.com">git</a> repository of an <a href="https://www.ioccc.org/judges.html">IOCCC
|
||||
judge</a> was edited starting <a href="https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b">Wed
|
||||
judge</a> was <a href="https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b">edited starting Wed
|
||||
Dec 30 16:57:03 2020
|
||||
-0800</a>
|
||||
and was occasionally committed to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
repo</a>.</p>
|
||||
<p>The <a href="https://github.com/ioccc-src/winner/pull/2">first accepted pull request</a>
|
||||
to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
repo</a> was made by <a href="https://github.com/mame">Yusuke Endoh</a>
|
||||
on <a href="https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2">2021 Jan 5</a>.</p>
|
||||
<p>The <a href="https://github.com/ioccc-src/winner/pull/2">first accepted pull request</a> to
|
||||
the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner repo</a> was made
|
||||
by <a href="https://www.ioccc.org/winners.html#Yusuke_Endoh">Yusuke Endoh</a> on <a href="https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2">2021 Jan
|
||||
5</a>.</p>
|
||||
<p>Between <a href="https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b">Wed Dec 30 16:57:03 2020
|
||||
-0800</a>
|
||||
and <a href="https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002">Sat Jan 29 21:56:53 2022
|
||||
-0800</a>,
|
||||
an <a href="https://www.ioccc.org/judges.html">IOCCC judge</a> made edits to
|
||||
their local repository with occasional the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
their local repository with occasional pushes to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
repo</a> and the <a href="https://www.ioccc.org/index.html">Official
|
||||
www.ioccc.org web site</a>. After
|
||||
that time and until the <strong>Great Fork Merge</strong>, only a very few changes
|
||||
that time and until the <strong>Great Fork Merge</strong>, very few changes
|
||||
were made to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
|
||||
repo</a> and the <a href="https://www.ioccc.org/index.html">Official
|
||||
www.ioccc.org web site</a> most of
|
||||
@@ -554,44 +554,55 @@ repo</a> has history
|
||||
going back to <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/28efc67f5dd692a3544708bf7fa26286adb82dfb">2020 Dec
|
||||
29</a>,
|
||||
the repo was forked on <strong>Sun Sep 18 17:30:00 2022 -0700</strong>. The
|
||||
first push into the temp-test-ioccc repo occurred on <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f">Sun Sep 18 11:15:49 2022
|
||||
-0700</a>.
|
||||
As this same time, the <a href="https://ioccc-src.github.io/temp-test-ioccc/">temp-test-ioccc web site</a> went live.</p>
|
||||
first <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f">push into the temp-test-ioccc
|
||||
repo</a>
|
||||
occurred on Sun Sep 18 11:15:49 2022 -0700.</p>
|
||||
<p>At this same time, the <a href="https://ioccc-src.github.io/temp-test-ioccc/">temp-test-ioccc web site</a> went live.</p>
|
||||
<p>Edits were made by an <a href="https://www.ioccc.org/judges.html">IOCCC judge</a>
|
||||
to their local <a href="https://git-scm.com">git</a> repository,
|
||||
were pushed onto the <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/2f20ae8451ada03f4601ac727d10e1d8630861a8">temp-test-ioccc
|
||||
to their local <a href="https://git-scm.com">git</a> repository and <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/2f20ae8451ada03f4601ac727d10e1d8630861a8">were pushed into the temp-test-ioccc
|
||||
repo</a>
|
||||
and to the <a href="https://ioccc-src.github.io/temp-test-ioccc/">temp-test-ioccc web site</a>.</p>
|
||||
<p>The <a href="https://github.com/ioccc-src/temp-test-ioccc/pull/15">first accepted pull request</a>
|
||||
made directly to the <a href="https://github.com/ioccc-src/temp-test-ioccc">temp-test-ioccc
|
||||
repo</a> on
|
||||
<a href="https://github.com/ioccc-src/temp-test-ioccc/commit/11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec">Wed Feb 22 05:44:55 2023 -0800</a></p>
|
||||
<a href="https://github.com/ioccc-src/temp-test-ioccc/commit/11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec">Wed Feb 22 05:44:55 2023 -0800 with commit
|
||||
11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec</a>
|
||||
by <a href="https://www.ioccc.org/winners.html#Cody_Boone_Ferguson">Cody Boone
|
||||
Ferguson</a>.</p>
|
||||
<p>A <a href="https://github.com/ioccc-src/temp-test-ioccc/discussions/1918">decision was made by the
|
||||
IOCCC</a> to
|
||||
mostly use frequent commits to individual components of the IOCCC,
|
||||
rather than to use occasional site wide massive updates in order
|
||||
to improve the tractability of changes made to components of the
|
||||
IOCCC such as IOCCC entries. Although occasionally site wide updated
|
||||
IOCCC such as IOCCC entries although occasionally site wide updates
|
||||
were performed in order to address an issue common to many IOCCC
|
||||
entries. And while some people prefer infrequent updates to a repo
|
||||
the <a href="https://www.ioccc.org/judges.html">IOCCC judges</a> believe
|
||||
the ability to trace changes with commit messages is important.</p>
|
||||
<p>Changes to the IOCCC content included things such as:</p>
|
||||
<ul>
|
||||
<li>Moving IOCCC entries into their own separate directories</li>
|
||||
<li>Establishing a detailed manifest for an IOCCC winning entries</li>
|
||||
<li>Fixing lots and lots of typos</li>
|
||||
<li>Fixing Makefiles and code to allow for nearly all winning entries to be compiled modern systems</li>
|
||||
<li>Fixing Makefiles and code to allow for nearly all winning entries to run modern systems</li>
|
||||
<li>Reworking the Makefiles to use a consistent set of rules</li>
|
||||
<li>Reworking the Makefiles specific to the gcc and clang C compilers</li>
|
||||
<li>Replacing the various hint files with a index.html markdown that is more consistent across IOCCC years</li>
|
||||
<li>Generating HTML content from markdown files and JSON data files via a set to tools and scripts</li>
|
||||
<li>Setting up a system whereby authors of IOCCC entries may update their own contact information via a GitHub pull request</li>
|
||||
<li>Setting up to generate the top level years.html file via a tool</li>
|
||||
<li>Setting up to generate the top level authors.html file via a tool</li>
|
||||
<li>Making use of an new and improved IOCCC CSS for web site consistency</li>
|
||||
<li>etc.</li>
|
||||
<li>Moving IOCCC entries into their own separate directories.</li>
|
||||
<li>Establishing a detailed manifest for an IOCCC winning entries.</li>
|
||||
<li>Fixing lots and lots of typos.</li>
|
||||
<li>Fixing Makefiles and code to allow for nearly all winning entries to be
|
||||
compiled with/in modern systems.</li>
|
||||
<li>Fixing Makefiles and code to allow for nearly all winning entries to run
|
||||
with/in modern systems.</li>
|
||||
<li>Reworking the Makefiles to use a consistent set of rules.</li>
|
||||
<li>Reworking the Makefiles specific to the gcc and clang C compilers.</li>
|
||||
<li>Replacing the various hint files with a index.html markdown (from README.md
|
||||
files) that is more consistent across IOCCC years.</li>
|
||||
<li>Generating HTML content from markdown files and JSON data files via a <a href="/bin/index.html">set of
|
||||
tools and scripts</a>.</li>
|
||||
<li>Setting up a system whereby authors of IOCCC entries may update their own
|
||||
contact information via a <a href="https://github.com/ioccc-src/temp-test-ioccc/pulls">GitHub pull
|
||||
request</a>.</li>
|
||||
<li>Setting up to generate the top level <a href="/years.html">years.html</a> file via the
|
||||
<a href="/bin/gen-years.sh">gen-years.sh</a> tool.</li>
|
||||
<li>Setting up to generate the top level <a href="/authors.html">authors.html file</a>, renamed
|
||||
from <code>winners.html</code>, via the <a href="/bin/gen-authors.sh">gen-authors.sh</a> tool.</li>
|
||||
<li>Making use of a new and improved <a href="/ioccc.css">IOCCC CSS</a> for web site consistency</li>
|
||||
<li>Etc.</li>
|
||||
</ul>
|
||||
<h4 id="y-mm-dd-the-great-fork-merge">202y mm dd The Great Fork Merge <!-- XXX - Fill in the date when Great Fork Merge happens --></h4>
|
||||
<p>As of 2024 Mar 5 <a href="https://github.com/ioccc-src/temp-test-ioccc">temp-test-ioccc
|
||||
@@ -599,7 +610,7 @@ repo</a>
|
||||
there were <a href="https://github.com/ioccc-src/winner/compare/master...ioccc-src:temp-test-ioccc:master">4513 commits ahead</a>
|
||||
of the <a href="https://github.com/ioccc-src/winner">IOCCC winner repo</a>.</p>
|
||||
<p>On 202y mm dd, the temporary repo was merged back into the <a href="https://github.com/ioccc-src/winner">IOCCC winner
|
||||
repo</a> resulting in substantial improvements
|
||||
repo</a> resulting in many, many substantial improvements
|
||||
to the <a href="https://www.ioccc.org">official IOCCC web site</a>.</p>
|
||||
<h3 id="faq-1.3-how-has-the-ioccc-size-limit-rule-changed-over-the-years"><a name="faq1_3"></a><a name="size_rule"></a>FAQ 1.3: How has the IOCCC size limit rule changed over the years?</h3>
|
||||
<p>The IOCCC size rule has changed over the years.</p>
|
||||
|
||||
@@ -563,26 +563,27 @@ edits to the [Official IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner) began.
|
||||
|
||||
The local [git](https://git-scm.com) repository of an [IOCCC
|
||||
judge](https://www.ioccc.org/judges.html) was edited starting [Wed
|
||||
judge](https://www.ioccc.org/judges.html) was [edited starting Wed
|
||||
Dec 30 16:57:03 2020
|
||||
-0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b)
|
||||
and was occasionally committed to the [Official IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner).
|
||||
|
||||
The [first accepted pull request](https://github.com/ioccc-src/winner/pull/2)
|
||||
to the [Official IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner) was made by [Yusuke Endoh](https://github.com/mame)
|
||||
on [2021 Jan 5](https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2).
|
||||
The [first accepted pull request](https://github.com/ioccc-src/winner/pull/2) to
|
||||
the [Official IOCCC winner repo](https://github.com/ioccc-src/winner) was made
|
||||
by [Yusuke Endoh](https://www.ioccc.org/winners.html#Yusuke_Endoh) on [2021 Jan
|
||||
5](https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2).
|
||||
|
||||
|
||||
Between [Wed Dec 30 16:57:03 2020
|
||||
-0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b)
|
||||
and [Sat Jan 29 21:56:53 2022
|
||||
-0800](https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002),
|
||||
an [IOCCC judge](https://www.ioccc.org/judges.html) made edits to
|
||||
their local repository with occasional the [Official IOCCC winner
|
||||
their local repository with occasional pushes to the [Official IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner) and the [Official
|
||||
www.ioccc.org web site](https://www.ioccc.org/index.html). After
|
||||
that time and until the **Great Fork Merge**, only a very few changes
|
||||
that time and until the **Great Fork Merge**, very few changes
|
||||
were made to the [Official IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner) and the [Official
|
||||
www.ioccc.org web site](https://www.ioccc.org/index.html) most of
|
||||
@@ -593,27 +594,31 @@ repo](https://github.com/ioccc-src/temp-test-ioccc) has history
|
||||
going back to [2020 Dec
|
||||
29](https://github.com/ioccc-src/temp-test-ioccc/commit/28efc67f5dd692a3544708bf7fa26286adb82dfb),
|
||||
the repo was forked on **Sun Sep 18 17:30:00 2022 -0700**. The
|
||||
first push into the temp-test-ioccc repo occurred on [Sun Sep 18 11:15:49 2022
|
||||
-0700](https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f).
|
||||
As this same time, the [temp-test-ioccc web site](https://ioccc-src.github.io/temp-test-ioccc/) went live.
|
||||
first [push into the temp-test-ioccc
|
||||
repo](https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f)
|
||||
occurred on Sun Sep 18 11:15:49 2022 -0700.
|
||||
|
||||
At this same time, the [temp-test-ioccc web site](https://ioccc-src.github.io/temp-test-ioccc/) went live.
|
||||
|
||||
Edits were made by an [IOCCC judge](https://www.ioccc.org/judges.html)
|
||||
to their local [git](https://git-scm.com) repository,
|
||||
were pushed onto the [temp-test-ioccc
|
||||
to their local [git](https://git-scm.com) repository and [were pushed into the temp-test-ioccc
|
||||
repo](https://github.com/ioccc-src/temp-test-ioccc/commit/2f20ae8451ada03f4601ac727d10e1d8630861a8)
|
||||
and to the [temp-test-ioccc web site](https://ioccc-src.github.io/temp-test-ioccc/).
|
||||
|
||||
The [first accepted pull request](https://github.com/ioccc-src/temp-test-ioccc/pull/15)
|
||||
made directly to the [temp-test-ioccc
|
||||
repo](https://github.com/ioccc-src/temp-test-ioccc) on
|
||||
[Wed Feb 22 05:44:55 2023 -0800](https://github.com/ioccc-src/temp-test-ioccc/commit/11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec)
|
||||
[Wed Feb 22 05:44:55 2023 -0800 with commit
|
||||
11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec](https://github.com/ioccc-src/temp-test-ioccc/commit/11bb36ac8ce790f32a9a3e5d2131ee12820fb8ec)
|
||||
by [Cody Boone
|
||||
Ferguson](https://www.ioccc.org/winners.html#Cody_Boone_Ferguson).
|
||||
|
||||
A [decision was made by the
|
||||
IOCCC](https://github.com/ioccc-src/temp-test-ioccc/discussions/1918) to
|
||||
mostly use frequent commits to individual components of the IOCCC,
|
||||
rather than to use occasional site wide massive updates in order
|
||||
to improve the tractability of changes made to components of the
|
||||
IOCCC such as IOCCC entries. Although occasionally site wide updated
|
||||
IOCCC such as IOCCC entries although occasionally site wide updates
|
||||
were performed in order to address an issue common to many IOCCC
|
||||
entries. And while some people prefer infrequent updates to a repo
|
||||
the [IOCCC judges](https://www.ioccc.org/judges.html) believe
|
||||
@@ -621,20 +626,28 @@ the ability to trace changes with commit messages is important.
|
||||
|
||||
Changes to the IOCCC content included things such as:
|
||||
|
||||
* Moving IOCCC entries into their own separate directories
|
||||
* Establishing a detailed manifest for an IOCCC winning entries
|
||||
* Fixing lots and lots of typos
|
||||
* Fixing Makefiles and code to allow for nearly all winning entries to be compiled modern systems
|
||||
* Fixing Makefiles and code to allow for nearly all winning entries to run modern systems
|
||||
* Reworking the Makefiles to use a consistent set of rules
|
||||
* Reworking the Makefiles specific to the gcc and clang C compilers
|
||||
* Replacing the various hint files with a index.html markdown that is more consistent across IOCCC years
|
||||
* Generating HTML content from markdown files and JSON data files via a set to tools and scripts
|
||||
* Setting up a system whereby authors of IOCCC entries may update their own contact information via a GitHub pull request
|
||||
* Setting up to generate the top level years.html file via a tool
|
||||
* Setting up to generate the top level authors.html file via a tool
|
||||
* Making use of an new and improved IOCCC CSS for web site consistency
|
||||
* etc.
|
||||
* Moving IOCCC entries into their own separate directories.
|
||||
* Establishing a detailed manifest for an IOCCC winning entries.
|
||||
* Fixing lots and lots of typos.
|
||||
* Fixing Makefiles and code to allow for nearly all winning entries to be
|
||||
compiled with/in modern systems.
|
||||
* Fixing Makefiles and code to allow for nearly all winning entries to run
|
||||
with/in modern systems.
|
||||
* Reworking the Makefiles to use a consistent set of rules.
|
||||
* Reworking the Makefiles specific to the gcc and clang C compilers.
|
||||
* Replacing the various hint files with a index.html markdown (from README.md
|
||||
files) that is more consistent across IOCCC years.
|
||||
* Generating HTML content from markdown files and JSON data files via a [set of
|
||||
tools and scripts](/bin/index.html).
|
||||
* Setting up a system whereby authors of IOCCC entries may update their own
|
||||
contact information via a [GitHub pull
|
||||
request](https://github.com/ioccc-src/temp-test-ioccc/pulls).
|
||||
* Setting up to generate the top level [years.html](/years.html) file via the
|
||||
[gen-years.sh](/bin/gen-years.sh) tool.
|
||||
* Setting up to generate the top level [authors.html file](/authors.html), renamed
|
||||
from `winners.html`, via the [gen-authors.sh](/bin/gen-authors.sh) tool.
|
||||
* Making use of a new and improved [IOCCC CSS](/ioccc.css) for web site consistency
|
||||
* Etc.
|
||||
|
||||
#### 202y mm dd The Great Fork Merge <!-- XXX - Fill in the date when Great Fork Merge happens -->
|
||||
|
||||
@@ -644,7 +657,7 @@ there were [4513 commits ahead](https://github.com/ioccc-src/winner/compare/mast
|
||||
of the [IOCCC winner repo](https://github.com/ioccc-src/winner).
|
||||
|
||||
On 202y mm dd, the temporary repo was merged back into the [IOCCC winner
|
||||
repo](https://github.com/ioccc-src/winner) resulting in substantial improvements
|
||||
repo](https://github.com/ioccc-src/winner) resulting in many, many substantial improvements
|
||||
to the [official IOCCC web site](https://www.ioccc.org).
|
||||
|
||||
|
||||
|
||||
+11
-5
@@ -2095,25 +2095,31 @@ use the original version)! :-)</p>
|
||||
file but a maze file. The extension <code>.maz</code> was not chosen to help with (some?)
|
||||
browsers knowing what to do with it.</p>
|
||||
<h2 id="burley-index.html"><a name="2004_burley"></a><a href="2004/burley/burley.c">2004/burley</a> (<a href="2004/burley/index.html%5D">index.html</a>)</h2>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile with clang and also fixed it to work.</p>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile with clang and to work with both gcc and
|
||||
clang (even after fixing it to compile with clang it did not work properly).</p>
|
||||
<p>For clang the problem was that <code>main()</code> had one arg, a <code>char *</code> and this is not
|
||||
allowed in any version of clang. In some versions it is allowed if the arg is an
|
||||
<code>int</code> but never if it’s anything else. To get it to work took numerous changes.</p>
|
||||
<p>First the inclusion of <code>setjmp.h</code> was necessary. Without this <code>longjmp(3)</code>
|
||||
implicitly returned <code>int</code> which was used for the purpose of binary expression but
|
||||
this no longer worked.</p>
|
||||
this no longer appeared to work (though it might be that if the extra function
|
||||
was added earlier on it would but this is unknown and the way it was changed is
|
||||
safer for the future).</p>
|
||||
<p>But by including <code>setjmp.h</code> it naturally made the binary expressions invalid (as
|
||||
it returns <code>void</code> which is not allowed in binary expressions) so the comma
|
||||
operator with <code>0</code> (<code>,0</code>) had to be used (<code>,1</code> was tried first but this did not
|
||||
work right).</p>
|
||||
work right so you can see that it had to be false in those places, though it is
|
||||
unknown by Cody if this is because it used to be allowed to have binary
|
||||
expression with <code>void</code> or if it is for some other reason).</p>
|
||||
<p><code>longjmp(3)</code> was being called with one arg which was an element
|
||||
of an <code>int[4][1000]</code> which had to be changed to a <code>jmp_buf p[4]</code> (this due to
|
||||
the prototype being included).</p>
|
||||
<p><code>main()</code> also called itself but this was a problem so it now calls another
|
||||
function <code>poke()</code> which calls itself instead (this is sometimes necessary
|
||||
nowadays).</p>
|
||||
nowadays and other entries had to have this same kind of change,
|
||||
<a href="/2001/anonymous/index.html">2001/anonymous</a> being a good example).</p>
|
||||
<p>Finally the optimiser cannot be enabled so the compiler flags were changed for
|
||||
this.</p>
|
||||
this, forcing <code>-O0</code>.</p>
|
||||
<h2 id="gavare-index.html"><a name="2004_gavare"></a><a href="2004/gavare/gavare.c">2004/gavare</a> (<a href="2004/gavare/index.html%5D">index.html</a>)</h2>
|
||||
<p><a href="#cody">Cody</a> added three different <a href="2004/gavare/index.html#alternate-code">alternate
|
||||
versions</a>:</p>
|
||||
|
||||
+11
-5
@@ -3012,7 +3012,8 @@ browsers knowing what to do with it.
|
||||
|
||||
## <a name="2004_burley"></a>[2004/burley](2004/burley/burley.c) ([index.html](2004/burley/index.html]))
|
||||
|
||||
[Cody](#cody) fixed this to compile with clang and also fixed it to work.
|
||||
[Cody](#cody) fixed this to compile with clang and to work with both gcc and
|
||||
clang (even after fixing it to compile with clang it did not work properly).
|
||||
|
||||
For clang the problem was that `main()` had one arg, a `char *` and this is not
|
||||
allowed in any version of clang. In some versions it is allowed if the arg is an
|
||||
@@ -3020,12 +3021,16 @@ allowed in any version of clang. In some versions it is allowed if the arg is an
|
||||
|
||||
First the inclusion of `setjmp.h` was necessary. Without this `longjmp(3)`
|
||||
implicitly returned `int` which was used for the purpose of binary expression but
|
||||
this no longer worked.
|
||||
this no longer appeared to work (though it might be that if the extra function
|
||||
was added earlier on it would but this is unknown and the way it was changed is
|
||||
safer for the future).
|
||||
|
||||
But by including `setjmp.h` it naturally made the binary expressions invalid (as
|
||||
it returns `void` which is not allowed in binary expressions) so the comma
|
||||
operator with `0` (`,0`) had to be used (`,1` was tried first but this did not
|
||||
work right).
|
||||
work right so you can see that it had to be false in those places, though it is
|
||||
unknown by Cody if this is because it used to be allowed to have binary
|
||||
expression with `void` or if it is for some other reason).
|
||||
|
||||
`longjmp(3)` was being called with one arg which was an element
|
||||
of an `int[4][1000]` which had to be changed to a `jmp_buf p[4]` (this due to
|
||||
@@ -3033,10 +3038,11 @@ the prototype being included).
|
||||
|
||||
`main()` also called itself but this was a problem so it now calls another
|
||||
function `poke()` which calls itself instead (this is sometimes necessary
|
||||
nowadays).
|
||||
nowadays and other entries had to have this same kind of change,
|
||||
[2001/anonymous](/2001/anonymous/index.html) being a good example).
|
||||
|
||||
Finally the optimiser cannot be enabled so the compiler flags were changed for
|
||||
this.
|
||||
this, forcing `-O0`.
|
||||
|
||||
|
||||
## <a name="2004_gavare"></a>[2004/gavare](2004/gavare/gavare.c) ([index.html](2004/gavare/index.html]))
|
||||
|
||||
Reference in new issue
Block a user