aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile29
-rwxr-xr-xman2html.sh51
2 files changed, 69 insertions, 11 deletions
diff --git a/Makefile b/Makefile
index 10b0ac9..14cccb4 100644
--- a/Makefile
+++ b/Makefile
@@ -2,14 +2,21 @@ DESTDIR ?= "/usr/local"
install:
install -m 0644 -D -t $(DESTDIR)/include mtest.h
- install -m 0644 -D -t $(DESTDIR)/share/man/man7 mtest_overview.7
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_assert.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_defs.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_defs_ext.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_fail.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_fok.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_ferr.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_assert.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_return.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_run.3
- install -m 0644 -D -t $(DESTDIR)/share/man/man3 mt_run_named.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man7 man/man7/mtest_overview.7
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_assert.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_defs.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_defs_ext.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_fail.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_fok.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_ferr.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_assert.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_return.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_run.3
+ install -m 0644 -D -t $(DESTDIR)/share/man/man3 man/man3/mt_run_named.3
+
+doc:
+ ./man2html.sh
+ $(MAKE) -C www
+
+clean:
+ $(MAKE) clean -C www
diff --git a/man2html.sh b/man2html.sh
new file mode 100755
index 0000000..45632d6
--- /dev/null
+++ b/man2html.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+hostname="http://mtest.kurwinet.pl"
+out="$(pwd)/www/manuals"
+root="$(pwd)"
+ftmp="/tmp/mtest-man2html"
+
+for n in {3,7}
+do
+ mkdir -p "${out}/man${n}"
+ cd "${root}/man/man${n}"
+
+ for m in *
+ do
+ man2html -r -H "${hostname}" "${m}" > "${ftmp}"
+
+ # get only body part of the file
+ body_only="$(sed -n '/<BODY>/,/<\/BODY>/p' "${ftmp}")"
+ echo "$body_only" > "${ftmp}"
+
+ # remove leftover <body> and <h1>man</h1> tags from beginning
+ tail -n+3 "${ftmp}" > tmp; mv tmp "${ftmp}"
+
+ # construct own h1 tag
+ name="$(basename ${m})"
+ name="${name%.*}"
+ sed -i "1s/^/<H1>${name}(${n})<\/H1>\n /" "${ftmp}"
+
+ # remove uneeded links to non-existing index
+ sed -i 's/<A HREF="\.\.\/index.html">Return to Main Contents<\/A><HR>//' "${ftmp}"
+ sed -i 's/<A HREF="#index">Index<\/A>//g' "${ftmp}"
+
+ # extract table of content and put it in the beginning of file
+ ## cache first two lines (h1 and info) and remove them from file
+ tmp="$(head -n2 ${ftmp})"
+ tail -n+3 "${ftmp}" > tmp; mv tmp "${ftmp}"
+
+ ## get table of content from file
+ toc="$(sed -n '/<DL>/,/<\/DL>/p' "${ftmp}")"
+
+ ## put table of content and first two lines into file and append hr
+ { echo -e "${tmp}\n${toc}\n<HR>"; cat "${ftmp}"; } > tmp; mv tmp "${ftmp}"
+
+ ## remove table of content and some uneeded info from bottom of file
+ sed -i '/^<A NAME="index">&nbsp;<\/A><H2>Index<\/H2>$/,$d' "${ftmp}"
+ head -n-3 "${ftmp}" > tmp; mv tmp "${ftmp}"
+
+ # move generated file into output directory for further processing
+ cp "${ftmp}" "${out}/man${n}/${m}.html"
+ done
+done