1 # $NetBSD: Makefile,v 1.34 2000/05/12 09:19:14 agc Exp $
2 # FreeBSD Id: Makefile,v 1.35 1997/08/19 07:10:01 fenner Exp
5 .include "mk/bsd.prefs.mk"
8 SUBDIR+= ${SITE_SPECIFIC_PKGS}
9 SUBDIR+= ${HOST_SPECIFIC_PKGS}
10 SUBDIR+= ${GROUP_SPECIFIC_PKGS}
11 SUBDIR+= ${USER_SPECIFIC_PKGS}
52 .include "mk/bsd.pkg.subdir.mk"
55 @rm -f ${.CURDIR}/INDEX
56 @${MAKE} ${.CURDIR}/INDEX
59 @echo -n "Generating INDEX - please wait.."
60 @${MAKE} describe ECHO_MSG="echo > /dev/null" > ${.CURDIR}/INDEX
63 print-index: ${.CURDIR}/INDEX
64 @awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArch:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10); }' < ${.CURDIR}/INDEX
66 search: ${.CURDIR}/INDEX
68 @echo "The search target requires a keyword parameter,"
69 @echo "e.g.: \"${MAKE} search key=somekeyword\""
71 @grep ${key} ${.CURDIR}/INDEX | awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArch:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10); }'
76 # Generate list of all packages by extracting information from
77 # the category/README.html pages
80 @if [ -f README-all.html ]; then \
81 mv README-all.html README-all.html.BAK ; \
83 @${MAKE} README-all.html
84 @if cmp -s README-all.html README-all.html.BAK ; then \
85 mv README-all.html.BAK README-all.html ; \
87 rm -f README-all.html.BAK ; \
93 @echo -n "Processing categories for $@:"
94 .for category in ${SUBDIR}
95 @if [ -f ${category}/README.html ]; then \
96 echo -n ' ${category}' ; \
97 grep '^<TR>' ${category}/README.html \
98 | sed -e 's|"|"${category}/|' \
99 -e 's| <TD>| <TD>(<A HREF="${category}/README.html">${category}</A>) <TD>|' \
100 -e 's|<TR>|<TR VALIGN=TOP>|' \
101 -e 's|<TD VALIGN=TOP>|<TD>|' \
106 @sort -f -t '">' +2 <$@.new >$@.newsorted
107 @wc -l $@.newsorted | awk '{ print $$1 }' >$@.npkgs
108 @cat templates/README.all \
110 -e '/%%NPKGS%%/r$@.npkgs' \
112 -e '/%%PKGS%%/r$@.newsorted' \
122 @if [ -f README-IPv6.html ]; then \
123 mv README-IPv6.html README-IPv6.html.BAK ; \
125 @${MAKE} README-IPv6.html
126 @if cmp -s README-IPv6.html README-IPv6.html.BAK ; then \
127 mv README-IPv6.html.BAK README-IPv6.html ; \
129 rm -f README-IPv6.html.BAK ; \
133 @grep -l '^BUILD_DEFS.*=.*USE_INET6' */*/Makefile \
134 | sed s,.Makefile,, >$@.pkgs
135 @fgrep -f $@.pkgs README-all.html | sort -t/ +1 >$@.trs
136 @cat templates/README.ipv6 \
138 -e '/%%TRS%%/r$@.trs' \
144 show-host-specific-pkgs:
145 @echo "HOST_SPECIFIC_PKGS= \\"; \
146 ${MAKE} show-pkgsrc-dir | awk '/^===/ { next; } { printf("%s \\\n", $$1) }'; \