diff options
| author | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-04-25 15:32:58 -0400 |
|---|---|---|
| committer | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-04-25 15:32:58 -0400 |
| commit | 5cb84ec742fd33f78c8022863fadaa8d0d93e176 (patch) | |
| tree | 1a81ca3665e6153923e40db7b0d988f8573ab59c /build | |
| parent | a59214f344567c037d5776879bcfc5fcc1d4d5f6 (diff) | |
feat: Added NetBSD man pages
Diffstat (limited to 'build')
| -rwxr-xr-x | build | 82 |
1 files changed, 53 insertions, 29 deletions
@@ -1,7 +1,8 @@ #!/usr/bin/env bash -SUBDIRS=(static/openbsd) +SUBDIRS=(static/openbsd static/netbsd) +create() { sqlite3 man.db <<EOF CREATE TABLE manpages ( os TEXT, @@ -12,44 +13,67 @@ CREATE TABLE manpages ( ); EOF -if [[ $? != 0 ]]; -then - printf "Error: error creating table.\n" >&2 - exit 1 -fi - -for SUBDIR in ${SUBDIRS[*]}; -do - make -j "$(nproc)" -C "$SUBDIR" - if [[ $? != 0 ]]; then - printf "Error: error building %s man pages.\n" "$SUBDIR" >&2 + printf "Error: error creating table.\n" >&2 exit 1 fi - HTML=$(find "$SUBDIR" -type f -name '*.html') - - for FILE in $HTML; + for SUBDIR in ${SUBDIRS[*]}; do - SECTION=$(basename "$FILE" | sed -E 's|.*\.([0-9])\..*|\1|') - NAME=$(basename "$FILE" | sed -E 's|(.*)\.[0-9]\.html|\1|') - OS=$(basename "$SUBDIR") - - if [[ -n "$(echo "$FILE" | grep "man$SECTION\.")" ]]; - then - NAME="$(echo "$FILE" | sed -E "s|.*man$SECTION\.(.*)/.*|\1|" ).$NAME" - fi - - echo "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" - sqlite3 man.db \ - "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + make -j "$(nproc)" -C "$SUBDIR" if [[ $? != 0 ]]; then - printf "Error: error inserting ('%s', '%s', '%s', '%s').\n" "$OS" "$NAME" "$SECTION" "$FILE" >&2 + printf "Error: error building %s man pages.\n" "$SUBDIR" >&2 exit 1 fi + + HTML=$(find "$SUBDIR" -type f -name '*.html') + + for FILE in $HTML; + do + SECTION=$(basename "$FILE" | sed -E 's|.*\.([0-9])\..*|\1|') + NAME=$(basename "$FILE" | sed -E 's|(.*)\.[0-9]\.html|\1|') + OS=$(basename "$SUBDIR") + + if [[ -n "$(echo "$FILE" | grep "man$SECTION\.")" ]]; + then + NAME="$(echo "$FILE" | sed -E "s|.*man$SECTION\.(.*)/.*|\1|" ).$NAME" + fi + + echo "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + sqlite3 man.db \ + "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + + if [[ $? != 0 ]]; + then + printf "Error: error inserting ('%s', '%s', '%s', '%s').\n" "$OS" "$NAME" "$SECTION" "$FILE" >&2 + exit 1 + fi + done done -done +} + +clean() { + for SUBDIR in ${SUBDIRS[*]}; + do + make -C "$SUBDIR" -j "$(nproc)" clean + done + + rm -f man.db +} + +case "$1" in + create) + create + ;; + clean) + clean + ;; + *) + printf "Error: \"%s\" not an option.\n" "$1" + exit 1 + ;; +esac |
