summaryrefslogtreecommitdiffstats
path: root/share/mk/bsd.port.subdir.mk
diff options
context:
space:
mode:
authorasami <asami@FreeBSD.org>1996-04-01 11:13:00 +0000
committerasami <asami@FreeBSD.org>1996-04-01 11:13:00 +0000
commit1f5b975f613bfbc0cc1cac3902605a3701cda948 (patch)
treee76c5c48b11cd4243cffa79f4f2a148a9c01107b /share/mk/bsd.port.subdir.mk
parentcf73073520cca2ad9243944295ca9fd33bef8acb (diff)
downloadFreeBSD-src-1f5b975f613bfbc0cc1cac3902605a3701cda948.zip
FreeBSD-src-1f5b975f613bfbc0cc1cac3902605a3701cda948.tar.gz
Thanks for the overwhelming response (which can be only summarized by the
word: "zilch"). I guess the only way to get people try and comment on these kind of things is to shove it down their throat.... ;) Anyway, here's a set of changes required for auto-generation of READMEs in ports directories. Necessary changes and additions of templates to the ports tree will follow shortly. Eventually I'll commit all the generated READMEs to the tree, but that will be in the rather distant future. For now, I encourage anyone with a -current systam and a matching ports tree to do a "make readmes" at the top level and see what they get. Next step will be to add pkg/{COMMENT,DESCR} to all the categories.
Diffstat (limited to 'share/mk/bsd.port.subdir.mk')
-rw-r--r--share/mk/bsd.port.subdir.mk45
1 files changed, 44 insertions, 1 deletions
diff --git a/share/mk/bsd.port.subdir.mk b/share/mk/bsd.port.subdir.mk
index 416c332..cc0868c 100644
--- a/share/mk/bsd.port.subdir.mk
+++ b/share/mk/bsd.port.subdir.mk
@@ -1,5 +1,5 @@
# from: @(#)bsd.subdir.mk 5.9 (Berkeley) 2/1/91
-# $Id: bsd.port.subdir.mk,v 1.11 1995/03/21 03:59:13 jkh Exp $
+# $Id: bsd.port.subdir.mk,v 1.12 1996/03/24 00:41:10 wosch Exp $
.MAIN: all
@@ -105,3 +105,46 @@ tags: _SUBDIRUSE
.if !target(checksum)
checksum: _SUBDIRUSE
.endif
+
+.if !target(readmes)
+readmes: readme _SUBDIRUSE
+.endif
+
+.if !target(readme)
+readme:
+ @rm -f README.html
+ @make README.html
+.endif
+
+PORTSDIR ?= /usr/ports
+TEMPLATES ?= ${PORTSDIR}/templates
+.if defined(PORTSTOP)
+README= ${TEMPLATES}/README.top
+.else
+README= ${TEMPLATES}/README.category
+.endif
+
+README.html:
+ @echo "===> Creating README.html"
+ @> $@.tmp
+.for entry in ${SUBDIR}
+.if defined(PORTSTOP)
+ @echo -n '<a href="'${entry}/README.html'">${entry}</a>: ' >> $@.tmp
+.else
+ @echo -n '<a href="'${entry}/README.html'">'"`cd ${entry}; make package-name`</a>: " >> $@.tmp
+.endif
+.if exists(${entry}/pkg/COMMENT)
+ @cat ${entry}/pkg/COMMENT >> $@.tmp
+.else
+ @echo "(no description)" >> $@.tmp
+.endif
+.endfor
+ @sort -t '>' +1 -2 $@.tmp > $@.tmp2
+ @cat ${README} | \
+ sed -e 's%%CATEGORY%%'`echo ${.CURDIR} | sed -e 's.*/\([^/]*\)$$\1'`'g' \
+ -e '/%%DESCR%%/r${.CURDIR}/pkg/DESCR' \
+ -e '/%%DESCR%%/d' \
+ -e '/%%SUBDIR%%/r$@.tmp2' \
+ -e '/%%SUBDIR%%/d' \
+ > $@
+ @rm -f $@.tmp $@.tmp2
OpenPOWER on IntegriCloud