32 Commits
Author SHA1 Message Date
Landon Curt Noll f39c98749b complete TZ=UTC typo fix
Fixed all cases where `TZ=UTZ` was incorrectly used
and replaced with `TZ=UTC`.

Changed `bin/gen-sitemap.sh` VERSION from "2.0.2 2025-07-30"
to "2.0.3 2025-08-23".

Changed `bin/tar-entry.sh` VERSION from "2.0.0 2025-03-13"
to "2.0.1 2025-08-23".

Changed `bin/tar-year.sh` VERSION from "2.0.0 2025-03-13"
to "2.0.1 2025-08-23".
2025-08-23 16:39:00 -07:00
Landon Curt Noll d98a29a940 improve how the C locale is set
In conjunction with changes made to "the other repo",
we now set:

export LANG="C"
export LC_CTYPE="C"
export LC_NUMERIC="C"
export LC_TIME="C"
export LC_COLLATE="C"
export LC_MONETARY="C"
export LC_MESSAGES="C"
export LC_PAPER="C"
export LC_NAME="C"
export LC_ADDRESS="C"
export LC_TELEPHONE="C"
export LC_MEASUREMENT="C"
export LC_IDENTIFICATION="C"
export LC_ALL="C"

instead of just "$LC_ALL", "$LANG", "$LC_NUMERIC".
2025-03-14 17:59:04 -07:00
Landon Curt Noll bcdcbd58f9 set C locale
In all bin shell scripts, set `LC_ALL`, `LANG`, and `LC_NUMERIC` to "C".

Changed all bin shell script VERSION to "2.0.0 2025-03-13".

Tested the above via `make www` on macOS.  Only the sitemap was updated.
2025-03-13 18:56:27 -07:00
Landon Curt Noll 6b950a2e3c change references to post Great Fork Merge URLs
In preparation for the **Great Fork Merge**:

We change references for the repo from
`https://github.com/ioccc-src/temp-test-ioccc`
to `https://github.com/ioccc-src/winner`.

We change references for the web site from
`https://ioccc-src.github.io/temp-test-ioccc`
to `https://github.com/ioccc-src/winner`.

NOTE: There will be a **LOT OF LINKS BROKEN**, because of the changes
to the REPO URL and the WEBSITE URL, until the **Great Fork Merge**
updates the+[official IOCCC website](https://www.ioccc.org).
2024-12-28 21:56:40 -08:00
Landon Curt Noll cad665c021 use $USAGE instead of print_usage to print usage
There is no real functionality change other than
to remove calls to print_usage that is most cases
would have generated an error.
2024-10-07 00:58:50 -07:00
Landon Curt Noll 0e5864b8b0 use yet even more bin/jval-wrapper.sh instead of direct grep of JSON files
We use the `bin/jval-wrapper.sh` tool to obtain information from JSON
files instead of attempting using a "GROSS HACK" that involved using
`grep(1)` (and friends) as those "GROSS HACK"s assumed that the layout of
the JSON was canonical.  The `bin/jval-wrapper.sh` tool is able to deal
with various layouts of JSON including non-canonical layouts.  Moreover,
by using the `bin/jval-wrapper.sh` tool we greatly reduce the places in
bin tools that contain "GROSS HACK"s.

Adjusted `bin/gen-status.sh` to use `bin/jval-wrapper.sh`.

Changed `bin/gen-status.sh` VERSION from "1.5.8 2024-08-05"
to "1.6 2024-08-17".

Performed `make gen_status` to test the above under macOS.

Adjusted `bin/gen-years.sh` to use `bin/jval-wrapper.sh`.

Changed `bin/gen-years.sh` VERSION from "1.3.7 2024-08-05"
to "1.4 2024-08-17".

Performed `make gen_years` to test the above under macOS.

Adjusted `bin/output-index-author.sh` to use `bin/jval-wrapper.sh`.

Changed `bin/output-index-author.sh` VERSION from "1.7.3 2024-08-05"
to "1.8 2024-08-17".

Performed `make entry_index` to test the above under macOS.

Added `make quick_year_index` to generate year level index.html files
when year level `YYYY/README.md` is newer.

The `make quick_www` calls `quick_year_index` instead of `make gen_year_index`.

The `bin` directory is now sat as `BIN_PATH=$TOPDIR/bin`, where
`$TOPDIR` is determined by top of the git repo (as determined by
the command: `git rev-parse --is-inside-work-tree`) and potentially
modified by `-d topdir`.  After `cd $TOPDIR`, we set `BIN_DIR=bin`.

All tools from this repo are now assumed to under "$BIN_DIR".  Removed
command like options such as `-T md2html.sh`, and `-p tool` that used
to be able to change the location of a `bin` tool.

Changed `bin/gen-authors.sh` VERSION from "1.11 2024-08-13"
to "1.12 2024-08-18".

Changed `bin/gen-location.sh` VERSION from "1.5 2024-08-17"
to "1.6 2024-08-18".

Changed `bin/readme2index.sh` VERSION from "1.2.7 2024-08-05"
to "1.3 2024-08-17".

Modified `bin/all-run.sh` to use the `bin` directory mechanism.
Modified `bin/all-years.sh` to use the `bin` directory mechanism.
Modified `bin/gen-other-html.sh` to use the `bin` directory mechanism.
Modified `bin/gen-year-index.sh` to use the `bin` directory mechanism.
Modified `bin/md2html.sh` to use the `bin` directory mechanism.
Modified `bin/quick-readme2index.sh` to use the `bin` directory mechanism.
Modified `bin/readme2index.sh` to use the `bin` directory mechanism.

Changed `bin/all-run.sh` VERSION from "1.3.6 2024-08-05"
to "1.4 2024-08-17".

Changed `bin/all-years.sh` VERSION from "1.0.5 2024-08-05"
to "1.1 2024-08-17".

Changed `bin/gen-other-html.sh` VERSION from "1.3 2024-08-11"
to "1.4 2024-08-17".

Changed `bin/gen-year-index.sh` VERSION from "1.1.2 2024-08-05"
to "1.2 2024-08-17".

Changed `bin/quick-readme2index.sh` VERSION from "1.1.7 2024-08-05"
to "1.2 2024-08-17".

Changed `bin/md2html.sh` VERSION from "1.5.5 2024-08-05"
to "1.6 2024-08-17".

Added some whitespace in the form of empty lines to tools.

Made checks for tools under `bin` directory more consistent.

When using `-Q` (quick mode) and the prerequisite files are newer,
we force the target to be touched so that a later run will not
have to build the target HTML file.

Performed `make quick_www` to test the above under macOS.

Performed `make www` to test the above under macOS.
2024-08-18 02:10:25 -07:00
Landon Curt Noll 86d5c8808e remove use of -u repo_top_url in bin tools
We have removed `-u repo_top_url` from tools.  When it comes time
to perform the **Great Fork Merge**, we will have to modify
the `$REPO_TOP_URL` variable default, so `-u repo_top_url` won't
help with the transition.

Changed `bin/all-run.sh` VERSION from "1.3.5 2024-07-28"
to "1.3.6 2024-08-05".

Changed `bin/all-years.sh` VERSION from "1.0.4 2024-07-28"
to "1.0.5 2024-08-05".

Changed `bin/chk-entry.sh` VERSION from to "1.1.9 2024-07-28"
to "1.1.10 2024-08-05".

Changed `bin/gen-authors.sh` VERSION from "1.10.6 2024-07-28"
to "1.10.7 2024-08-05".

Changed `bin/gen-location.sh` VERSION from "1.4.4 2024-07-28"
to "1.4.5 2024-08-05".

Changed `bin/gen-other-html.sh` VERSION from "1.2.5 2024-07-28"
to "1.2.6 2024-08-05".

Changed `bin/gen-sitemap.sh` VERSION from "1.3.12 2024-07-28"
to "1.3.13 2024-08-05".

Changed `bin/gen-status.sh` VERSION from "1.5.7 2024-07-28"
to "1.5.8 2024-08-05".

Changed `bin/gen-top-html.sh` VERSION from "1.4.7 2024-07-28"
to "1.4.8 2024-08-05".

Changed `bin/gen-year-index.sh` VERSION from "1.1.1 2024-07-28"
to "1.1.2 2024-08-05".

Changed `bin/gen-years.sh` VERSION from "1.3.6 2024-07-28"
to "1.3.7 2024-08-05".

Changed `jfmt-wrapper.sh` VERSION from "1.3.7 2024-08-05"
to "1.0.1 2024-08-05".

Changed `bin/jprint-wrapper.sh` VERSION from "1.0 2024-07-28"
to "1.0.1 2024-08-05".

Changed `bin/md2html.sh` VERSION from "1.5.4 2024-07-28"
to "1.5.5 2024-08-05".

Changed `bin/output-index-author.sh` VERSION from "1.7.2 2024-07-28"
to "1.7.3 2024-08-05".

Changed `bin/output-index-inventory.sh` VERSION from "1.4.2 2024-07-28"
to "1.4.3 2024-08-05".

Changed `bin/output-year-index.sh` VERSION from "1.4.3 2024-07-28"
to "1.4.4 2024-08-05".

Changed `bin/pandoc-wrapper.sh` VERSION from "1.7.1 2024-07-28"
to "1.7.2 2024-08-05".

Changed `bin/quick-readme2index.sh` VERSION from "1.1.6 2024-07-28"
to "1.1.7 2024-08-05".

Changed `bin/readme2index.sh` VERSION from "1.2.6 2024-07-28"
to "1.2.7 2024-08-05".

Changed `bin/status2html.sh` VERSION from "1.4.2 2024-07-28"
to "1.4.3 2024-08-05".

Changed `bin/subst.default.sh` VERSION from "1.3.1 2024-07-28"
to "1.3.2 2024-08-05".

Changed `bin/subst.entry-index.sh` VERSION from "1.3.4 2024-07-28"
to "1.3.5 2024-08-05".

Changed `bin/subst.year-index.sh` VERSION from "1.1.4 2024-07-28"
to "1.1.5 2024-08-05".

Changed `bin/tar-entry.sh` VERSION from "1.3.9 2024-07-28"
to "1.3.10 2024-08-05".

Changed `bin/tar-year.sh` VERSION from "1.2.7 2024-07-28"
to "1.2.8 2024-08-05".

Changed `bin/untar-year.sh` VERSION from "1.0.3 2024-07-28"
to "1.0.4 2024-08-05".

Changed `bin/untar-entry.sh` VERSION from "1.0.3 2024-07-28"
to "1.0.4 2024-08-05".

Performed `make www` to accomplish the above and to test under macOS.
2024-08-05 01:06:35 -07:00
Landon Curt Noll b01a23d735 corrected use of REPO_URL shell variable, added REPO_TOP_URL
The shell variable `$REPO_URL` was often set to
`https://github.com/ioccc-src/temp-test-ioccc/blob/master` which was
not consistent with the variable name.  In some cases the `$REPO_URL`
was used as the top level path for a git repo (w/o the `/blob/master`),
and in most cases was used as a GitHub URL path under which files may
be found (with `/blob/master`).

We change the shell variable `$REPO_URL` to be `$REPO_TOP_URL` and
use the value `https://github.com/ioccc-src/temp-test-ioccc`, w/o
the `/blob/master`, and adjust places where the GitHub URL path (with
`/blob/master`) is needed.  A new shell variable `$REPO_URL` will contain
the `https://github.com/ioccc-src/temp-test-ioccc/blob/master` (with
`/blob/master`).

In tools that use `-u` the option was changed from `repo_url` to
`repo_top_url`.  The `-u repo_top_url` will set the
 `$REPO_TOP_URL` shell variable (w/o the `/blob/master`), and then set
 the variable `$REPO_URL` as `$REPO_TOP_URL//blob/master`.

Fixed a shellcheck issue with `bin/tar-entry.sh`.

Corrected name of shell variable `$AUTHOR_GUTHUB_USERNAME` to be
`$AUTHOR_GITHUB_USERNAME`.

The substitution symbol `%%REPO_URL%%` has used in markdown
files remains as before.  That is, REPO_URL is set according
to the shell variable `$REPO_URL` which includes `/blob/master`).

Fixed broken `author_handle` links in `authors.html`.

NOTE: Except for correcting links `authors.html` as noted above,
no HTML content was modified by these changes.

Changed `bin/add-dir.sh`VERSION from "1.1 2024-07-23"
to "1.1.1 2024-07-28".

Changed `bin/all-run.sh`VERSION from "1.3.4 2024-05-24"
to "1.3.5 2024-07-28".

Changed `bin/all-years.sh`VERSION from "1.0.3 2024-04-13"
to "1.0.4 2024-07-28".

Changed `bin/chk-entry.sh`VERSION from "1.1.8 2024-07-06"
to "1.1.9 2024-07-28".

Changed `bin/cvt-submission.sh`VERSION from "1.0 2024-07-22"
to "1.0.1 2024-07-28".

Changed `bin/gen-authors.sh`VERSION from "1.10.4 2024-07-13"
to "1.10.5 2024-07-28".

Changed `bin/gen-location.sh`VERSION from "1.4.3 2024-07-13"
to "1.4.4 2024-07-28".

Changed `bin/gen-other-html.sh`VERSION from "1.2.4 2024-05-31"
to "1.2.5 2024-07-28".

Changed `bin/gen-sitemap.sh`VERSION from "1.3.11 2024-07-22"
to "1.3.12 2024-07-28".

Changed `bin/gen-status.sh`VERSION from "1.5.6 2024-07-22"
to "1.5.7 2024-07-28".

Changed `bin/gen-top-html.sh`VERSION from "1.4.6 2024-05-24"
to "1.4.7 2024-07-28".

Changed `bin/gen-year-index.sh`VERSION from "1.1 2024-04-16"
to "1.1.1 2024-07-28".

Changed `bin/gen-years.sh`VERSION from "1.3.5 2024-07-22"
to "1.3.6 2024-07-28".

Changed `bin/md2html.sh`VERSION from "1.5.3 2024-07-22"
to "1.5.4 2024-07-28".

Changed `bin/new-year.sh`VERSION from "1.3.1 2024-07-23"
to "1.3.2 2024-07-28".

Changed `bin/output-index-author.sh`VERSION from "1.7.1 2024-04-28"
to "1.7.2 2024-07-28".

Changed `bin/output-index-inventory.sh`VERSION from "1.4.1 2024-04-28"
to "1.4.2 2024-07-28".

Changed `bin/output-year-index.sh`VERSION from "1.4.2 2024-07-07"
to "1.4.3 2024-07-28".

Changed `bin/pandoc-wrapper.sh`VERSION from "1.7 2024-06-22"
to "1.7.1 2024-07-28".

Changed `bin/quick-readme2index.sh`VERSION from "1.1.5 2024-05-19"
to "1.1.6 2024-07-28".

Changed `bin/readme2index.sh`VERSION from "1.2.5 2024-05-19"
to "1.2.6 2024-07-28".

Changed `bin/sort.gitignore.sh`VERSION from "1.1.7 2024-04-28"
to "1.1.8 2024-07-28".

Changed `bin/status2html.sh`VERSION from "1.4.1 2024-04-28"
to "1.4.2 2024-07-28".

Changed `bin/subst.default.sh`VERSION from "1.3 2024-04-20"
to "1.3.1 2024-07-28".

Changed `bin/subst.entry-index.sh`VERSION from "1.3.3 2024-04-13"
to "1.3.4 2024-07-28".

Changed `bin/subst.year-index.sh`VERSION from "1.1.3 2024-04-13"
to "1.1.4 2024-07-28".

Changed `bin/tar-entry.sh`VERSION from "1.3.8 2024-07-23"
to "1.3.9 2024-07-28".

Changed `bin/tar-year.sh`VERSION from "1.2.6 2024-07-23"
to "1.2.7 2024-07-28".

Changed `bin/untar-entry.sh`VERSION from "1.0.2 2024-04-13"
to "1.0.3 2024-07-28".

Changed `bin/untar-year.sh`VERSION from "1.0.2 2024-04-14"
to "1.0.3 2024-07-28".

Performed `make www` to accomplish the above and to test under macOS.
2024-07-28 18:58:00 -07:00
Cody Boone Ferguson 681a8a362a Typo fix in several bin/ scripts 2024-07-26 09:32:44 -07:00
Landon Curt Noll dbf6921b3a use include 1337.mk to hold 1337 hacker rulz
Updated 1337 hacker rulz to version 7.

Added `1337.mk` to contain the updated 1337 hacker rulz (v7).

We use an optional include of `1337.mk` (or `../1337.mk`,
or `../../1337.mk`) to include the 1337 hacker rulz.

Changed `make deep_magic` to `make more_magic`.

Changed `bin/tar-entry.sh` VERSION from "1.3.7 2024-07-22"
to "1.3.8 2024-07-23".

Changed `bin/tar-year.sh` VERSION from "1.2.5 2024-07-22"
to "1.2.6 2024-07-23".

Add `make new_entry` to `YYYY/Makefile` and `template/Makefile.year`.

Change `make new_year` to use `sort -n -u`.

Made minor debug message fixes to `bin/new-year.sh`.

Changed `bin/new-year.sh` VERSION from "1.3 2024-07-23"
to "1.3.1 2024-07-23".

Improved `bin/add-dir.sh` to update `YYYY/Makefile` with
the new entry directory name.

Changed `bin/add-dir.sh` VERSION from "1.0 2024-07-21"
to "1.1 2024-07-23".

Performed `make www` to accomplish the above and to test under macOS.
2024-07-23 22:45:16 -07:00
Landon Curt Noll 354953b530 fix checking of command status
In the spirit of pr #2589, we correct similar cases where the string
"status" instead of `$status` was being tested for a value.

In `bin/csv2entry.sh` changed VERSION from "1.1 2024-07-20"
to "1.1.1 2024-07-22".

In `bin/entry2csv.sh` changed VERSION from "1.1 2024-07-20"
to "1.1.1 2024-07-22".

In `bin/gen-sitemap.sh` changed VERSION from "1.3.10 2024-07-18"
to "1.3.11 2024-07-22".

In `bin/gen-status.sh` changed VERSION from "1.5.5 2024-07-18"
to "1.5.6 2024-07-22".

In `bin/md2html.sh` changed VERSION from "1.5.2 2024-07-18"
to "1.5.3 2024-07-22".

In `bin/tar-entry.sh` changed VERSION from "1.3.6 2024-04-28"
to "1.3.7 2024-07-22".

In `bin/tar-year.sh` changed VERSION from "1.2.4 2024-04-28"
to "1.2.5 2024-07-22".

Performed `make www` to accomplish the above and to test under macOS.
2024-07-22 12:23:33 -07:00
Landon Curt Noll 96c113d225 complete All Done!!! All Done!!! -- Jessica Noll, Age 2 2024-07-04 13:53:10 -07:00
Landon Curt Noll b3afeeaddd improve tmp filenames in bin tools
Temporary files are now of the form:

```
export TMP_AB_CD=".tmp.NAME.AB_CD.$$.tmp"
```

Where `NAME` is the basename of the script, and `AB_CD` is the
part of the exported variable name after the "TMP_".

This will help avoid bugs such as that
commit c7dc9a9f6b had to fix.

Added `.tmp.*` to the top level `.gitignore` file.

Changed `bin/chk-entry.sh` VERSION from "1.1.6 2024-04-13"
to "1.1.7 2024-04-28".

Changed `bin/gen-authors.sh` VERSION from "1.9 2024-04-21"
to "1.9.1 2024-04-28".

Changed `bin/gen-location.sh` VERSION from "1.4 2024-04-21"
to "1.4.1 2024-04-28".

Changed `bin/gen-other-html.sh` VERSION from "1.2.2 2024-04-21"
to "1.2.3 2024-04-28".

Changed `bin/gen-sitemap.sh` VERSION from "1.3.7 2024-04-14"
to "1.3.8 2024-04-28".

Changed `bin/gen-status.sh` VERSION from "1.5 2024-04-22"
to "1.5.1 2024-04-28".

Changed `bin/gen-years.sh` VERSION from "1.3 2024-04-21"
to "1.3.1 2024-04-28".

Changed `bin/md2html.sh` VERSION from "1.5 2024-04-20"
to "1.5.1 2024-04-28".

Changed `bin/output-index-author.sh` VERSION from "1.7 2024-04-15"
to "1.7.1 2024-04-28".

Changed `bin/output-index-inventory.sh` VERSION from "1.4 2024-04-21"
to "1.4.1 2024-04-28".

Changed `bin/output-year-index.sh` VERSION from "1.4 2024-04-21"
to "1.4.1 2024-04-28".

Changed `bin/sort.gitignore.sh` VERSION from "1.1.6 2024-04-13"
to "1.1.7 2024-04-28".

Changed `bin/status2html.sh` VERSION from "1.4 2024-04-18"
to "1.4.1 2024-04-28".

Changed `bin/tar-entry.sh` VERSION from "1.3.5 2024-04-13"
to "1.3.6 2024-04-28".

Changed `bin/tar-year.sh` VERSION from "1.2.3 2024-04-13"
to "1.2.4 2024-04-28".

Ran `make www` to perform test the above under macOS.
2024-04-28 14:32:45 -07:00
Landon Curt Noll 311c97c8a6 fix links in built HTML files
Fixed the broken links for CC BY-SA 4.0 related icons.

Fixed broken Makefile and C code links in topnav bar
for entries.

Changed `bin/all-run.sh` VERSION from "1.3.2 2024-02-26"
to "1.3.3 2024-04-13"

Changed `bin/all-years.sh` VERSION from "1.0.2 2024-02-26"
to "1.0.3 2024-04-13"

Changed `bin/chk-entry.sh` VERSION from "1.1.5 2024-03-27"
to "1.1.6 2024-04-13"

Changed `bin/gen-authors.sh` VERSION from "1.3.2 2024-03-26"
to "1.3.3 2024-04-13"

Changed `bin/gen-location.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-04-13"

Changed `bin/gen-other-html.sh` VERSION from "1.0.3 2024-03-28"
to "1.0.4 2024-04-13"

Changed `bin/gen-sitemap.sh` VERSION from "1.3.5 2024-04-13"
to "1.3.6 2024-04-13"

Changed `bin/gen-status.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"

Changed `bin/gen-top-html.sh` VERSION from "1.2.3 2024-04-12"
to "1.2.4 2024-04-13"

Changed `bin/gen-year-index.sh` VERSION from "1.0.5 2024-03-28"
to "1.0.6 2024-04-13"

Changed `bin/gen-years.sh` VERSION from "1.1 2024-03-30"
to "1.1.1 2024-04-13"

Changed `bin/manifest.entry.json.awk` VERSION from "1.1 2024-02-11"
to "1.1.1 2024-04-13"

Changed `bin/md2html.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"

Changed `bin/output-index-author.sh` VERSION from "1.6 2024-03-31"
to "1.6.1 2024-04-13"

Changed `bin/output-index-inventory.sh` VERSION from "1.2.4 2024-03-27"
to "1.2.5 2024-04-13"

Changed `bin/output-year-index.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"

Changed `bin/pandoc-wrapper.sh` VERSION from "1.6 2024-03-31"
to "1.6.1 2024-04-13"

Changed `bin/quick-readme2index.sh` VERSION from "1.1.3 2024-03-26"
to "1.1.4 2024-04-13"

Changed `bin/readme2index.sh` VERSION from "1.2.2 2024-02-26"
to "1.2.3 2024-04-13"

Changed `bin/sort.gitignore.sh` VERSION from "1.1.5 2024-04-04"
to "1.1.6 2024-04-13"

Changed `bin/status2html.sh` VERSION from "1.1.3 2024-04-12"
to "1.1.4 2024-04-13"

Changed `bin/subst.default.sh` VERSION from "1.2.2 2024-02-26"
to "1.2.3 2024-04-13"

Changed `bin/subst.entry-index.sh` VERSION from "1.3.2 2024-03-26"
to "1.3.3 2024-04-13"

Changed `bin/subst.year-index.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-04-13"

Changed `bin/tar-entry.sh` VERSION from "1.3.4 2024-03-27"
to "1.3.5 2024-04-13"

Changed `bin/tar-year.sh` VERSION from "1.2.1 2024-03-28"
to "1.2.3 2024-04-13"

Changed `bin/untar-entry.sh` VERSION from "1.0.1 2024-03-26"
to "1.0.2 2024-04-13"

Changed `bin/untar-year.sh` VERSION from "1.0 2024-03-28"
to "1.0.1 2024-04-13"

Run `make www sitewap` to test and perform the above.
2024-04-13 18:22:03 -07:00
Landon Curt Noll f07fec3a98 fix tar-year.sh, removed use of .tar.tstamp files
Eliminated the need for the `.tar.tstamp` files.  It became intractable
to produce a tarball that was byte-for-byte identical to a tarball
on another platform.  We further simplified the process used by the
`bin/tar-year.sh` tool to no longer need `.tar.tstamp` files.
Removed `.tar.tstamp` files and updated the manifest.
Sorry (tm Canada 🇨🇦) for the "flip-flop".

The `bin/tar-year.sh` tool now uses a similar algorithm to how
`bin/tar-entry.sh` determines if a compressed tarball needs to be
rebuilt.

Changed `bin/tar-entry.sh` VERSION from "1.3.3 2024-03-27"
to "1.3.4 2024-03-27".

Changed `bin/tar-year.sh` VERSION from "1.1.3 2024-03-27"
to "1.2 2024-03-27".

Performed `make www` and `make form_entry_tarball`
and `make form_year_tarball` to complete the above
actions and test these changes under macOS.

TODO: Test the `bin/tar-year.sh` tool under Linux.

TODO: Address issues with building the top level `ioccc.tar.bz2`
      and the `bin/tar-all.sh` tool and the `make form_all_tarball` rule.

NOTE: The `bin/tar-all.sh` tool and the `make form_all_tarball` rule
and the `make tar` should **NOT** be used at this time.
2024-03-27 16:49:11 -07:00
Landon Curt Noll 73f41e9c74 fix chk-entry and sorting
Use of `sort(1)` with -u appears to be problematic.
As an example, using `sort -d -u` for both "c11" and "c++11"
will produce only "c11".  This where we do not strictly
need to do so, we do not use -u with `sort(1)`.

With the above, fixed `bin/chk-entry.sh -v 3 2018/burton2`
under Linux.

Changed `bin/chk-entry.sh` VERSION from "1.1.4 2024-03-26"
to "1.1.5 2024-03-27".

Changed `bin/gen-sitemap.sh` VERSION from "1.3.3 2024-03-26"
to "1.3.4 2024-03-27".

Changed `bin/output-index-inventory.sh` VERSION from "1.2.3 2024-03-26"
to "1.2.4 2024-03-27".

Changed `bin/tar-all.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-03-27".

Changed `bin/tar-year.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-03-27".

Ran `make www` to test the above.  The `index.html` for the
`2018/burton2` entry was updated.

Ran `make form_entry_tarball` to test the above.  Some recently
updated entries plus the `2018/burton2` entry was updated.

TODO: Test the results under Linux.

TODO: Update `bin/tar-year.sh`.  Update year level compressed tarballs.

TODO: Update `bin/tar-all.sh`.  Update top level compressed tarball.

TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
2024-03-27 02:03:28 -07:00
Landon Curt Noll c176b51cec improve bin tool script shell variable use
We export shell variables where needed.

We print debug messages of shell variables in the order they were
exported or declared, except for the USAGE shell variable, for those
shell variables that were exported or declared prior to the set of
debug messages of shell variables.

Changed `bin/chk-entry.sh` VERSION from "1.1.3 2024-03-18"
to "1.1.4 2024-03-26".

Changed `bin/gen-authors.sh` VERSION from "1.3.1 2024-03-18"
to "1.3.2 2024-03-26".

Changed `bin/gen-location.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".

Changed `bin/gen-other-html.sh` VERSION from "1.0.1 2024-03-08"
to "1.0.2 2024-03-26".

Changed `bin/gen-sitemap.sh` VERSION from "1.3.2 2024-03-18"
to "1.3.3 2024-03-26".

Changed `bin/gen-status.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".

Changed `bin/gen-years.sh` VERSION from "1.0.2 2024-03-13"
to "1.0.3 2024-03-26".

Changed `bin/md2html.sh` VERSION from "1.1.1 2024-03-09"
to "1.1.2 2024-03-26".

Changed `bin/output-index-author.sh` VERSION from "1.5.1 2024-03-19"
to "1.5.2 2024-03-26".

Changed `bin/output-index-inventory.sh` VERSION from "1.2.2 2024-03-19"
to "1.2.3 2024-03-26".

Changed `bin/output-year-index.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".

Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.2 2024-03-19"
to "1.5.3 2024-03-26".

Changed `bin/quick-readme2index.sh` VERSION from "1.1.2 2024-03-08"
to "1.1.3 2024-03-26".

Changed `bin/readme2index.sh` VERSION from "1.2.1 2024-02-23"
to "1.2.2 2024-02-26".

Changed `bin/sort.gitignore.sh` VERSION from "1.1.2 2024-03-18"
to "1.1.3 2024-03-26".

Changed `bin/status2html.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".

Changed `bin/subst.default.sh` VERSION from "1.2.1 2024-02-23"
to "1.2.2 2024-02-26".

Changed `bin/subst.entry-index.sh` VERSION from "1.3.1 2024-03-19"
to "1.3.2 2024-03-26".

Changed `bin/tar-all.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".

Changed `bin/tar-entry.sh` VERSION from "1.3.1 2024-03-25"
to "1.3.2 2024-03-26".

Changed `bin/tar-year.sh` VERSION from "1.1.1 2024-03-18"
to "1.1.2 2024-03-26".

Changed `bin/all-years.sh` VERSION from "1.0.1 2024-02-23"
to "1.0.2 2024-02-26".

Changed `bin/gen-top-html.sh` VERSION from "1.2.1 2024-03-08"
to "1.2.2 2024-03-26".

Changed `bin/gen-year-index.sh` VERSION from "1.0.3 2024-03-09"
to "1.0.4 2024-03-26".

Changed `bin/subst.year-index.sh` VERSION from "1.1.1 2024-03-19"
to "1.1.2 2024-03-26".

Changed `bin/untar-entry.sh` VERSION from "1.0 2024-03-25"
to "1.0.1 2024-03-26".
2024-03-27 01:12:23 -07:00
Landon Curt Noll e9c3ec7ce7 fix bin/tar-entry.sh
Fixed when the `.tar.tstamp` file is updated
by `bin/tar-entry.sh`.

Changed `bin/tar-entry.sh` VERSION from "1.3 2024-03-22"
to "1.3.1 2024-03-25".

Performed `make form_entry_tarball` to complete the test of the above.

TODO: Test the results under Linux.

TODO: Update `bin/tar-year.sh`.  Update year level compressed tarballs.

TODO: Update `bin/tar-all.sh`.  Update top level compressed tarball.

TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
2024-03-25 23:24:09 -07:00
Landon Curt Noll 9f57052020 rewrite bin/tar-entry.sh
We rewrote the `bin/tar-entry.sh` algorithm so that we do NOT have
to require Linux to produce a compressed tarball that is byte-for-byte
identical to a macOS compressed tarball for the same entry.

Changed `bin/tar-entry.sh` VERSION from "1.2 2024-03-22"
to "1.3 2024-03-25".

Added `bin/untar-entry.sh` to untar an entry from the
compressed tarball.

Added `make untar_entry_tarball` to untar all entry files.

Added `make untar_year_tarball` and `make untar_all_tarball`
stub Makefile rules.  The core it referred to does not yet exist.

Updated IOCCC manifest.  Updated `.entry.json` for `2004/sds`.

Performed `make www` to update web pages.  In most cases the
entry `index.html` added an inventory link for the new `.tar.tstamp` file.

Performed `form_entry_tarball` to complete the test of the above.

TODO: Test the results under Linux.

TODO: Update `bin/tar-year.sh`.  Update year level compressed tarballs.

TODO: Update `bin/tar-all.sh`.  Update top level compressed tarball.

TODO: Write `bin/untar-year.sh` and `bin/untar-all.sh`.
2024-03-25 22:44:34 -07:00
Landon Curt Noll bcc983efa7 update entry tarballs with timestamps
Updated `bin/tar-entry.sh` to build entry compressed tarballs using
`.tar.tstamp` timestamps.

Updated `bin/tar-entry.sh` VERSION from "1.1.1 2024-03-18"
to "1.2 2024-03-22".

Performed `make form_entry_tarball` to perform the above and test
it under macOS.

TODO: Test under RHEL 9.
2024-03-23 00:31:22 -07:00
Cody Boone Ferguson bba8f9a77e Improve bash version notes in bin/*.sh
The wording in the comments and the error message (in particular for
macOS) should now be clearer. Now in both places it shows how to install
bash in Homebrew. In commands I surrounded them like what was already
used, with " rather than 's, to make it consistent. There were other
cosmetic consistency changes as well.

Except in paths 'homebrew' was changed to 'Homebrew'.

In bin/output-year-index.sh there was a typo fix: it said to use it one
typically would do:

    -a bin/output-year-index.sh

which obviously is not correct.
2024-03-19 06:26:53 -07:00
Cody Boone Ferguson fc07925575 Typo fix and improve brew instructions in bin/
In particular the notice for macOS users now tells how to install bash
with Homebrew (brew install bash).
2024-03-18 11:08:38 -07:00
Landon Curt Noll 0833c3e4f0 fix how bin tools sort
We set LC_ALL=C when sorting in a bin tool.  This was done
to make the result of using `sort(1)` consistent.

Improved how the Primary files and Secondary files are
sorted by `bin/output-index-inventory.sh` to sort
with "-u -k 1n -k 3.2d".

The above will change `index.html` files for all entries.

Changed `bin/chk-entry.sh` VERSION from "1.1.2 2024-03-17"
to "1.1.3 2024-03-18".

Changed `bin/gen-authors.sh` VERSION from "1.3 2024-03-04"
to "1.3.1 2024-03-18".

Changed `bin/gen-location.sh` VERSION from "1.1 2024-03-04"
to "1.1.1 2024-03-18".

Changed `bin/gen-sitemap.sh` VERSION from "1.3 2024-03-16"
to "1.3.1 2024-03-18".

Changed `bin/output-index-inventory.sh` VERSION from "1.2 2024-02-27"
to "1.2.1 2024-03-18".

Changed `bin/pandoc-wrapper.sh` VERSION from "1.5 2024-03-18"
to "1.5.1 2024-03-18".

Changed `bin/sort.gitignore.sh` VERSION from "1.1.1 2024-02-23"
to "1.1.2 2024-03-18".

Changed `bin/tar-all.sh` VERSION from "1.1 2024-02-27"
to "1.1.1 2024-03-18".

Changed `bin/tar-year.sh` VERSION from "1.1 2024-02-27"
to "1.1.1 2024-03-18".

Performed `make www` to update all entry `index.html` files.
2024-03-18 02:43:03 -07:00
Landon Curt Noll d434295a7c fix bash version >= 5.1.8 check 2024-03-17 22:49:43 -07:00
Landon Curt Noll 4632b9d086 improve message to macOS users with a too old bash version 2024-03-17 12:48:10 -07:00
Landon Curt Noll 0773e2f31e enforce bash version >= 5.1.8
We explain why we test for bash version >= 5.1.8, suggest that
versions 4.2 thru 5.1.7 might work but are untested, and
suggest what macOS users might with to do.
2024-03-17 12:34:24 -07:00
Landon Curt Noll 4a3f5588ed remove use of shopt -s globskipdots in bin tools
The `shopt -s globskipdots` was not really needed in bin tools
and seems to cause porting issues between macOS and Linux.

We did a `make www` to check and the sitemap was updated.
2024-03-17 11:15:38 -07:00
Landon Curt Noll 21c3e89a2f improve tarballs
The `make quick_www` and `make www` rules in the top level `Makefile`
no longer build compressed tarballs.

The tools that form compressed tarballs now add _--no-xattrs --no-selinux_
when building compressed tarballs.

Changed `bin/tar-all.sh` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-02-27".

Changed `bin/tar-entry.sh` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-02-27".

Changed `bin/tar-year.sh` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-02-27".

Added `make tar` rule to the top level `Makefile` to create all
compressed tarballs.  In particular `make tar` calls:

* make clobber
* make genpath
* make genfilelist
* make verify_entry_files
* make form_entry_tarball
* make form_year_tarball
* make form_all_tarball

Performed `make tar` in an effort to see of tar warnings such as
have been fixed:

```
tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.quarantine'
```

**NOTE**: We to **NOT** plan to rebuild compressed tarballs while some of the
((**top priority**)) issues are active.  We only rebuilt the compressed tarballs
as a test.
2024-02-27 23:21:32 -08:00
Landon Curt Noll 09b8de5081 improve exit code use in bin scripts
The use of exit codes and exit code ranges has been
made more consistent across most bin tools.
2024-02-23 19:19:55 -08:00
Landon Curt Noll 6891c68a96 remove old year level hint.css
Remove, for IOCCC years 2011 thru 2020, the `hint.css` files.

Update year level `.filelist` accordingly.
2024-02-17 22:49:28 -08:00
Cody Boone Ferguson fa4d0ecf88 Typo fixes in bin/tar-entry.sh 2024-02-16 10:57:35 -08:00
Landon Curt Noll ecabb73bf6 add tools to compare entry's manifest with its files
Added `bin/bin/tar-entry.sh` to build a compressed tarball for an
entry.  The compressed tarball is formed by gnu tar with options
so that the same entry file content will always produce the same
compressed tarball, byte for byte.

As some files are missing from some entries, one should
use the `-W` option as in:

```sh
bin/tar-entry.sh -v 5 -W 2020/ferguson1
```

Added `make form_entry_tarball` to the top level `Makefile`
to build entry tarballs even when files are still missing.

Added `make verify_entry_files` to verify that all entries have all
of their files listed in their manifest, plus the top level ioccc.css
and var.mk files.  As file entry files are still missing (due to
HTML files that need to be built), the overall `make quick_www` and
`make www` do **NOT** (yet) exit when the `make verify_entry_files`
fails.

Improved `bin/chk-entry.sh` by removing some variables
that were not needed.

TODO: Improve `bin/` tool exit codes as the current use is a bit silly.

TODO: Clean out some variables used in `bin/` tools as some of then
are only set printed in debug statements.

TODO: Clean up usage messages, some of the options listed to not
match the `getopts(1)` parsing.  In some cases the option needs to
be parsed but needs to be ignored by the tool because another tool
automatically passes along certain options that really have no
effect.  Such ignored options need to be show as "This option is
ignored" in the usage message.
2024-02-13 03:29:54 -08:00