Merge pull request #2265 from xexyl/burley04

This commit is contained in:
Landon Curt Noll authored and GitHub committed 2024-03-19 07:50:36 -07:00
commit 4dd58b6bcb
33 files changed
+429 -351

No files matched your search

+1 -1
View File
@@ -131,7 +131,7 @@ all: data ${TARGET}
sandwich supernova deep_magic magic charon pluto sandwich supernova deep_magic magic charon pluto
${PROG}: ${PROG}.c ${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." @echo "than a Vax-11 or pdp-11."
${CC} ${CFLAGS} $< -o $@ ${LDFLAGS} ${CC} ${CFLAGS} $< -o $@ ${LDFLAGS}
+1 -1
View File
@@ -40,7 +40,7 @@ include ../../var.mk
# #
CSILENCE= -Wno-bitwise-op-parentheses -Wno-char-subscripts -Wno-error \ CSILENCE= -Wno-bitwise-op-parentheses -Wno-char-subscripts -Wno-error \
-Wno-implicit-function-declaration -Wno-int-to-pointer-cast \ -Wno-implicit-function-declaration -Wno-int-to-pointer-cast \
-Wno-unused-value -Wno-unused-value -Wno-unused-parameter
# Common C compiler warning flags # Common C compiler warning flags
# #
+4 -5
View File
@@ -1,8 +1,8 @@
char a[80]; char a[80];
int e[4],g[5],c=100,h,i,j,k,b,f,s,t; int e[4],g[5],c=100,h,i,j,k,b,f,s,t;
jmp_buf p[4]; jmp_buf p[4];
int poke(char *d){ int pain(char *d){
return poke((char*)((srand(time((time_t*)&h)), return pain((char*)((srand(time((time_t*)&h)),
setjmp(p[2]), setjmp(p[2]),
(k=atoi((fgets(a,sizeof a, stdin), (k=atoi((fgets(a,sizeof a, stdin),
a+strspn(a," -")))) a+strspn(a," -"))))
@@ -89,6 +89,5 @@ i+=i+1,
longjmp(p[0],0)),0), longjmp(p[0],0)),0),
longjmp(p[2],3)),0)); longjmp(p[2],3)),0));
} }
int main(int argc, char**d){ int main(int argc,char**d){
(void)argc; return pain((char*)d);}
return poke((char*)d); }
+13 -10
View File
@@ -64,8 +64,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+12 -10
View File
@@ -63,8 +63,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+13 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+13 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+13 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+13 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+12 -10
View File
@@ -39,8 +39,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -10
View File
@@ -37,8 +37,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -10
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -87,8 +87,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -41,8 +41,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -41,8 +41,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+13 -12
View File
@@ -7,7 +7,7 @@
# #
# It is usually invoked by: # 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. # 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 # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -42,8 +42,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -44,8 +44,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -38,8 +38,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+13 -11
View File
@@ -50,8 +50,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
# setup bash file matching # setup bash file matching
# #
# We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables. # We must declare arrays with -ag or -Ag, and we need loops to "export" modified variables.
+12 -11
View File
@@ -39,8 +39,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -44,8 +44,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -44,8 +44,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -44,8 +44,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+12 -11
View File
@@ -35,8 +35,8 @@
# of bash between 4.2 and 5.1.7 might work. However, to be safe, we will require # 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. # bash version 5.1.8 or later.
# #
# WHY 5.1.8 and not 4.2? This safely is done because macOS homebrew bash we # 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 # 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 # 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 # 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 # 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 # 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 # 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, # 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), # (see https://brew.sh), and then run "brew install bash" which will
# and then arrange your $PATH so that "/opt/homebrew/bin" is ahead of "/bin". # 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 # 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 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 # to the MacPorts team as they do a commendable job. Nevertheless we ran
# into enough differences with MacPorts environments to suggest you # 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]} || if [[ -z ${BASH_VERSINFO[0]} ||
${BASH_VERSINFO[0]} -lt 5 || ${BASH_VERSINFO[0]} -lt 5 ||
${BASH_VERSINFO[0]} -eq 5 && ${BASH_VERSINFO[1]} -lt 1 || ${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 ${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: 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: 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)," \ echo "$0: Notice: For macOS users: install Homebrew (see https://brew.sh), then run" \
"then install homebrew bash (brew install bash), and then modify your \$PATH so that \"#!/usr/bin/env 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 "finds the Homebrew installed (usually /opt/homebrew/bin/bash) version of bash" 1>&2
exit 4 exit 4
fi fi
+40 -29
View File
@@ -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 edits to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
repo</a> began.</p> 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 <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 Dec 30 16:57:03 2020
-0800</a> -0800</a>
and was occasionally committed to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner and was occasionally committed to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner
repo</a>.</p> repo</a>.</p>
<p>The <a href="https://github.com/ioccc-src/winner/pull/2">first accepted pull request</a> <p>The <a href="https://github.com/ioccc-src/winner/pull/2">first accepted pull request</a> to
to the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner the <a href="https://github.com/ioccc-src/winner">Official IOCCC winner repo</a> was made
repo</a> was made by <a href="https://github.com/mame">Yusuke Endoh</a> 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
on <a href="https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2">2021 Jan 5</a>.</p> 5</a>.</p>
<p>Between <a href="https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b">Wed Dec 30 16:57:03 2020 <p>Between <a href="https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b">Wed Dec 30 16:57:03 2020
-0800</a> -0800</a>
and <a href="https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002">Sat Jan 29 21:56:53 2022 and <a href="https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002">Sat Jan 29 21:56:53 2022
-0800</a>, -0800</a>,
an <a href="https://www.ioccc.org/judges.html">IOCCC judge</a> made edits to 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 repo</a> and the <a href="https://www.ioccc.org/index.html">Official
www.ioccc.org web site</a>. After 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 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 repo</a> and the <a href="https://www.ioccc.org/index.html">Official
www.ioccc.org web site</a> most of 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 going back to <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/28efc67f5dd692a3544708bf7fa26286adb82dfb">2020 Dec
29</a>, 29</a>,
the repo was forked on <strong>Sun Sep 18 17:30:00 2022 -0700</strong>. The 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 first <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f">push into the temp-test-ioccc
-0700</a>. repo</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> 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> <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, 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
were pushed onto the <a href="https://github.com/ioccc-src/temp-test-ioccc/commit/2f20ae8451ada03f4601ac727d10e1d8630861a8">temp-test-ioccc
repo</a> repo</a>
and to the <a href="https://ioccc-src.github.io/temp-test-ioccc/">temp-test-ioccc web site</a>.</p> 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> <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 made directly to the <a href="https://github.com/ioccc-src/temp-test-ioccc">temp-test-ioccc
repo</a> on 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 <p>A <a href="https://github.com/ioccc-src/temp-test-ioccc/discussions/1918">decision was made by the
IOCCC</a> to IOCCC</a> to
mostly use frequent commits to individual components of the IOCCC, mostly use frequent commits to individual components of the IOCCC,
rather than to use occasional site wide massive updates in order rather than to use occasional site wide massive updates in order
to improve the tractability of changes made to components of the 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 were performed in order to address an issue common to many IOCCC
entries. And while some people prefer infrequent updates to a repo 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 <a href="https://www.ioccc.org/judges.html">IOCCC judges</a> believe
the ability to trace changes with commit messages is important.</p> the ability to trace changes with commit messages is important.</p>
<p>Changes to the IOCCC content included things such as:</p> <p>Changes to the IOCCC content included things such as:</p>
<ul> <ul>
<li>Moving IOCCC entries into their own separate directories</li> <li>Moving IOCCC entries into their own separate directories.</li>
<li>Establishing a detailed manifest for an IOCCC winning entries</li> <li>Establishing a detailed manifest for an IOCCC winning entries.</li>
<li>Fixing lots and lots of typos</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 be
<li>Fixing Makefiles and code to allow for nearly all winning entries to run modern systems</li> compiled with/in modern systems.</li>
<li>Reworking the Makefiles to use a consistent set of rules</li> <li>Fixing Makefiles and code to allow for nearly all winning entries to run
<li>Reworking the Makefiles specific to the gcc and clang C compilers</li> with/in modern systems.</li>
<li>Replacing the various hint files with a index.html markdown that is more consistent across IOCCC years</li> <li>Reworking the Makefiles to use a consistent set of rules.</li>
<li>Generating HTML content from markdown files and JSON data files via a set to tools and scripts</li> <li>Reworking the Makefiles specific to the gcc and clang C compilers.</li>
<li>Setting up a system whereby authors of IOCCC entries may update their own contact information via a GitHub pull request</li> <li>Replacing the various hint files with a index.html markdown (from README.md
<li>Setting up to generate the top level years.html file via a tool</li> files) that is more consistent across IOCCC years.</li>
<li>Setting up to generate the top level authors.html file via a tool</li> <li>Generating HTML content from markdown files and JSON data files via a <a href="/bin/index.html">set of
<li>Making use of an new and improved IOCCC CSS for web site consistency</li> tools and scripts</a>.</li>
<li>etc.</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> </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> <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 <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> 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> 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 <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> 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> <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> <p>The IOCCC size rule has changed over the years.</p>
+42 -29
View File
@@ -563,26 +563,27 @@ edits to the [Official IOCCC winner
repo](https://github.com/ioccc-src/winner) began. repo](https://github.com/ioccc-src/winner) began.
The local [git](https://git-scm.com) repository of an [IOCCC 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 Dec 30 16:57:03 2020
-0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b) -0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b)
and was occasionally committed to the [Official IOCCC winner and was occasionally committed to the [Official IOCCC winner
repo](https://github.com/ioccc-src/winner). repo](https://github.com/ioccc-src/winner).
The [first accepted pull request](https://github.com/ioccc-src/winner/pull/2) The [first accepted pull request](https://github.com/ioccc-src/winner/pull/2) to
to the [Official IOCCC winner the [Official IOCCC winner repo](https://github.com/ioccc-src/winner) was made
repo](https://github.com/ioccc-src/winner) was made by [Yusuke Endoh](https://github.com/mame) by [Yusuke Endoh](https://www.ioccc.org/winners.html#Yusuke_Endoh) on [2021 Jan
on [2021 Jan 5](https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2). 5](https://github.com/ioccc-src/winner/commit/84c62c4cbf56ac1351ea91e5019f51103615fda2).
Between [Wed Dec 30 16:57:03 2020 Between [Wed Dec 30 16:57:03 2020
-0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b) -0800](https://github.com/ioccc-src/winner/commit/c0663537cb88d39b74285a930ff1a668c6d5968b)
and [Sat Jan 29 21:56:53 2022 and [Sat Jan 29 21:56:53 2022
-0800](https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002), -0800](https://github.com/ioccc-src/winner/commit/098a3e7e04d43e480ecc4b5482c83274e1434002),
an [IOCCC judge](https://www.ioccc.org/judges.html) made edits to 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 repo](https://github.com/ioccc-src/winner) and the [Official
www.ioccc.org web site](https://www.ioccc.org/index.html). After 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 were made to the [Official IOCCC winner
repo](https://github.com/ioccc-src/winner) and the [Official repo](https://github.com/ioccc-src/winner) and the [Official
www.ioccc.org web site](https://www.ioccc.org/index.html) most of 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 going back to [2020 Dec
29](https://github.com/ioccc-src/temp-test-ioccc/commit/28efc67f5dd692a3544708bf7fa26286adb82dfb), 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 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 first [push into the temp-test-ioccc
-0700](https://github.com/ioccc-src/temp-test-ioccc/commit/edbc3089e1b755d85a020af7975bbc7df3737a5f). repo](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. 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) Edits were made by an [IOCCC judge](https://www.ioccc.org/judges.html)
to their local [git](https://git-scm.com) repository, to their local [git](https://git-scm.com) repository and [were pushed into the temp-test-ioccc
were pushed onto the [temp-test-ioccc
repo](https://github.com/ioccc-src/temp-test-ioccc/commit/2f20ae8451ada03f4601ac727d10e1d8630861a8) 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/). 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) The [first accepted pull request](https://github.com/ioccc-src/temp-test-ioccc/pull/15)
made directly to the [temp-test-ioccc made directly to the [temp-test-ioccc
repo](https://github.com/ioccc-src/temp-test-ioccc) on 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 A [decision was made by the
IOCCC](https://github.com/ioccc-src/temp-test-ioccc/discussions/1918) to IOCCC](https://github.com/ioccc-src/temp-test-ioccc/discussions/1918) to
mostly use frequent commits to individual components of the IOCCC, mostly use frequent commits to individual components of the IOCCC,
rather than to use occasional site wide massive updates in order rather than to use occasional site wide massive updates in order
to improve the tractability of changes made to components of the 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 were performed in order to address an issue common to many IOCCC
entries. And while some people prefer infrequent updates to a repo entries. And while some people prefer infrequent updates to a repo
the [IOCCC judges](https://www.ioccc.org/judges.html) believe 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: Changes to the IOCCC content included things such as:
* Moving IOCCC entries into their own separate directories * Moving IOCCC entries into their own separate directories.
* Establishing a detailed manifest for an IOCCC winning entries * Establishing a detailed manifest for an IOCCC winning entries.
* Fixing lots and lots of typos * 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 be
* Fixing Makefiles and code to allow for nearly all winning entries to run modern systems compiled with/in modern systems.
* Reworking the Makefiles to use a consistent set of rules * Fixing Makefiles and code to allow for nearly all winning entries to run
* Reworking the Makefiles specific to the gcc and clang C compilers with/in modern systems.
* Replacing the various hint files with a index.html markdown that is more consistent across IOCCC years * Reworking the Makefiles to use a consistent set of rules.
* Generating HTML content from markdown files and JSON data files via a set to tools and scripts * Reworking the Makefiles specific to the gcc and clang C compilers.
* Setting up a system whereby authors of IOCCC entries may update their own contact information via a GitHub pull request * Replacing the various hint files with a index.html markdown (from README.md
* Setting up to generate the top level years.html file via a tool files) that is more consistent across IOCCC years.
* Setting up to generate the top level authors.html file via a tool * Generating HTML content from markdown files and JSON data files via a [set of
* Making use of an new and improved IOCCC CSS for web site consistency tools and scripts](/bin/index.html).
* etc. * 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 --> #### 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). 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 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). to the [official IOCCC web site](https://www.ioccc.org).
+11 -5
View File
@@ -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?) 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> 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> <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 <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 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> <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> <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 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 <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 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 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 <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 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> the prototype being included).</p>
<p><code>main()</code> also called itself but this was a problem so it now calls another <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 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 <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> <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 <p><a href="#cody">Cody</a> added three different <a href="2004/gavare/index.html#alternate-code">alternate
versions</a>:</p> versions</a>:</p>
+11 -5
View File
@@ -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])) ## <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 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 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)` 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 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 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 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 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 `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 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 `main()` also called itself but this was a problem so it now calls another
function `poke()` which calls itself instead (this is sometimes necessary 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 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])) ## <a name="2004_gavare"></a>[2004/gavare](2004/gavare/gavare.c) ([index.html](2004/gavare/index.html]))