fix bin/tar-entry.sh and bin/tar-year.sh, improve bin/README.md, update Makefile

It turns out that `sed -i ''` is not portable. **sigh** Replaced use of
`sed -i ''` with other portable commands in `bin/tar-year.sh`.

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

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

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

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

Added new `bin/untar-year.sh` bin tool.

Tested `make untar_year_tarball` under Linux.

Added `make sort_gitignore` to sort entry `.gitignore` files.
The `make quick_www` and `make www` actions perform `make sort_gitignore`.

Added notes to `bin/README.md` (and thus to `bin/index.html` with
recommendations of top level Makefile actions that use selected bin
tools over all entries or years).

Tested `make www form_entry_tarball form_year_tarball untar_entry_tarball
untar_year_tarball` under Linux.

TODO: Retest `make www form_entry_tarball form_year_tarball
      untar_entry_tarball untar_year_tarball` under macOS.
This commit is contained in:
Landon Curt Noll committed 2024-03-28 03:35:47 -07:00
1 parent f07fec3a98
commit e4a76879ba
7 files changed
+608 -63

No files matched your search

+104 -2
View File
@@ -45,6 +45,12 @@ Or for example:
bin/all-years.sh -v 1 bin/chk-entry.sh
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make verify_entry_files
```
### [chk-entry.sh](chk-entry.sh)
@@ -102,6 +108,7 @@ Usage:
bin/gen-other-html.sh -v 1
```
### [gen-sitemap.sh](gen-sitemap.sh)
Generate an XML sitemap for the IOCCC web site.
@@ -112,6 +119,12 @@ Usage:
bin/gen-sitemap.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make gen_sitemap
```
### [gen-status.sh](gen-status.sh)
@@ -144,6 +157,12 @@ To see other valid statuses:
bin/gen-status -h
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make gen_status
```
### [gen-top-html.sh](gen-top-html.sh)
@@ -170,6 +189,12 @@ Examples of top level HTML pages built by this tool include:
- [news.html](../news.html)
- [thanks-for-help.html](../thanks-for-help.html)
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make gen_top_html
```
### [gen-year-index.sh](gen-year-index.sh)
@@ -181,6 +206,12 @@ Usage:
bin/gen-year-index.sh -v 1 2020
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make gen_year_index
```
### [gen-years.sh](gen-years.sh)
@@ -192,6 +223,12 @@ Usage:
bin/gen-years.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make gen_years
```
### [md2html.sh](md2html.sh)
@@ -226,7 +263,7 @@ Wrapper tool to run pandoc.
### [quick-readme2index.sh](quick-readme2index.sh)
Runs [readme2index.sh](readme2index.sh) if the entry directory
Builds an entry's `index.html` file if the entry directory
does not have a non-empty `index.hmtl` file, or if either
`.entry.json` or `index.html` is newer than the `index.hmtl` file.
@@ -250,8 +287,10 @@ bin/all-run.sh -v 3 bin/quick-readme2index.sh -v 1
modification times for `index.hmtl`, `.entry.json`,
and `index.html` are correct. If in doubt, use:
We recommend that this tool be invoked via the top level `Makefile`:
```sh
bin/all-run.sh -v 3 bin/readme2index.sh -v 1
make quick_entry_index
```
@@ -259,6 +298,22 @@ bin/all-run.sh -v 3 bin/readme2index.sh -v 1
Convert an entry README.md into entry directory index.html.
```sh
bin/all-run.sh -v 3 bin/readme2index.sh -v 1
```
To build `index.html` files for all entries:
```sh
bin/all-run.sh -v 3 bin/readme2index.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make entry_index
```
### [status2html.sh](status2html.sh)
@@ -296,6 +351,12 @@ Suggested usage:
bin/all-run.sh bin/sort.gitignore.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make sort_gitignore
```
### [subst.default.sh](subst.default.sh)
@@ -349,6 +410,12 @@ Usage:
bin/tar-all.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make form_entry_tarball
```
## [tar-year.sh](tar-year.sh)
@@ -366,6 +433,12 @@ Suggested usage:
bin/all-years.sh -v 3 bin/tar-year.sh -v 1 -W
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make form_year_tarball
```
## [untar-entry.sh](untar-entry.sh)
@@ -383,6 +456,35 @@ Suggested usage:
bin/all-run.sh -v 3 bin/untar-entry.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make untar_entry_tarball
```
## [untar-year.sh](untar-year.sh)
Untar an IOCCC year's compressed tarball.
Usage:
```sh
bin/untar-year.sh -v 1 YYYY
```
Suggested usage:
```sh
bin/all-years.sh -v 3 bin/untar-year.sh -v 1
```
We recommend that this tool be invoked via the top level `Makefile`:
```sh
make untar_year_tarball
```
# <a name="how"></a>How IOCCC HTML content is built