summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--share/mk/bsd.port.mk46
-rw-r--r--share/mk/bsd.port.subdir.mk45
2 files changed, 87 insertions, 4 deletions
diff --git a/share/mk/bsd.port.mk b/share/mk/bsd.port.mk
index 81440f4..d83674b 100644
--- a/share/mk/bsd.port.mk
+++ b/share/mk/bsd.port.mk
@@ -3,7 +3,7 @@
# bsd.port.mk - 940820 Jordan K. Hubbard.
# This file is in the public domain.
#
-# $Id: bsd.port.mk,v 1.197 1996/03/31 10:02:09 asami Exp $
+# $Id: bsd.port.mk,v 1.198 1996/03/31 10:35:26 asami Exp $
#
# Please view me with 4 column tabs!
@@ -198,6 +198,7 @@ LOCALBASE?= /usr/local
X11BASE?= /usr/X11R6
DISTDIR?= ${PORTSDIR}/distfiles/${DIST_SUBDIR}
PACKAGES?= ${PORTSDIR}/packages
+TEMPLATES?= ${PORTSDIR}/templates
.if !defined(NO_WRKDIR)
WRKDIR?= ${.CURDIR}/work
.else
@@ -323,6 +324,7 @@ PKG_SUFX?= .tgz
PKG_DBDIR?= /var/db/pkg
ECHO?= /bin/echo
+CAT+= /bin/cat
CP?= /bin/cp
ENV?= /usr/bin/env
RM?= /bin/rm
@@ -974,10 +976,8 @@ checksum: fetch
.if !target(package-name)
package-name:
-.if !defined(NO_PACKAGE)
@${ECHO} ${PKGNAME}
.endif
-.endif
# Show (recursively) all the packages this package depends on.
@@ -1172,6 +1172,46 @@ describe:
@${ECHO} ""
.endif
+.if !target(readmes)
+readmes: readme
+.endif
+
+.if !target(readme)
+readme:
+ @rm -f README.html
+ @make README.html
+.endif
+
+README.html:
+ @${ECHO_MSG} "===> Creating README.html for ${PKGNAME}"
+ @${CAT} ${TEMPLATES}/README.port | \
+ ${SED} -e 's%%PORT%%'`${ECHO} ${.CURDIR} | ${SED} -e 's.*/\([^/]*/[^/]*\)$$\1'`'g' \
+ -e 's%%PKG%%${PKGNAME}g' \
+ -e '/%%COMMENT%%/r${PKGDIR}/COMMENT' \
+ -e '/%%COMMENT%%/d' \
+ -e 's%%BUILD_DEPENDS%%'"`${MAKE} print-depends-list`"'' \
+ -e 's%%RUN_DEPENDS%%'"`${MAKE} print-package-depends`"'' \
+ >> $@
+
+.if !target(print-depends-list)
+print-depends-list:
+.if defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || \
+ defined(LIB_DEPENDS) || defined(DEPENDS)
+ @${ECHO} -n 'This port requires package(s) "'
+ @${ECHO} -n `make depends-list | sort | uniq`
+ @${ECHO} '" to build.'
+.endif
+.endif
+
+.if !target(print-package-depends)
+print-package-depends:
+.if defined(RUN_DEPENDS) || defined(LIB_DEPENDS) || defined(DEPENDS)
+ @${ECHO} -n 'This port requires package(s) "'
+ @${ECHO} -n `make package-depends | sort | uniq`
+ @${ECHO} '" to run.'
+.endif
+.endif
+
# Fake installation of package so that user can pkg_delete it later.
# Also, make sure that an installed port is recognized correctly in
# accordance to the @pkgdep directive in the packing lists
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