Annotation of ports/Makefile, Revision 1.66
1.66 ! jasper 1: # $OpenBSD: Makefile,v 1.65 2010/08/20 23:11:07 espie Exp $
1.1 niklas 2: # $FreeBSD: Makefile,v 1.36 1997/10/04 15:54:31 jkh Exp $
3: #
4:
1.54 espie 5: PKGPATH =
6: MIRROR_MK ?= ${.CURDIR}/distfiles/Makefile
7: PORTSTOP ?= yes
8: DISTFILES_DB ?= ${.CURDIR}/infrastructure/db/locate.database
9:
10:
1.46 espie 11: .if defined(SUBDIR)
12: # nothing to do
13: .elif defined(key) || defined(name) || defined(category) || defined(author)
1.23 espie 14:
15: # set up subdirs from the index, assume it's up-to-date
1.64 espie 16: _CMD = perl ${.CURDIR}/infrastructure/bin/retrieve-index index='${.CURDIR}/INDEX'
1.54 espie 17: . if defined(key)
18: _CMD += key='${key}'
19: . endif
20: . if defined(name)
21: _CMD += maintainer='${name}'
22: . endif
23: . if defined(category)
24: _CMD += category='${category}'
25: . endif
26: . if defined(maintainer)
27: _CMD += maintainer='${maintainer}'
28: . endif
1.23 espie 29: SUBDIR != ${_CMD}
1.28 espie 30: .elif defined(SUBDIRLIST)
31: SUBDIR != sed -e 's,[ ]*\#.*,,' -e '/^[ ]*$$/d' ${SUBDIRLIST}
1.23 espie 32: .else
1.1 niklas 33: SUBDIR += archivers
1.2 angelos 34: SUBDIR += astro
1.3 niklas 35: SUBDIR += audio
1.1 niklas 36: SUBDIR += benchmarks
1.44 xsa 37: SUBDIR += biology
1.41 avsm 38: SUBDIR += books
1.11 marc 39: SUBDIR += cad
1.1 niklas 40: SUBDIR += chinese
41: SUBDIR += comms
1.9 angelos 42: SUBDIR += converters
1.1 niklas 43: SUBDIR += databases
44: SUBDIR += devel
45: SUBDIR += editors
1.31 naddy 46: SUBDIR += education
1.1 niklas 47: SUBDIR += emulators
1.66 ! jasper 48: SUBDIR += fonts
1.1 niklas 49: SUBDIR += games
1.53 ckuethe 50: SUBDIR += geo
1.1 niklas 51: SUBDIR += graphics
1.52 espie 52: SUBDIR += inputmethods
1.13 marc 53: SUBDIR += japanese
1.32 kevlo 54: SUBDIR += java
1.29 dugsong 55: SUBDIR += korean
1.6 niklas 56: SUBDIR += lang
1.1 niklas 57: SUBDIR += mail
1.10 angelos 58: SUBDIR += math
1.1 niklas 59: SUBDIR += misc
1.45 xsa 60: SUBDIR += multimedia
1.1 niklas 61: SUBDIR += net
62: SUBDIR += news
1.30 pvalchev 63: SUBDIR += palm
1.4 niklas 64: SUBDIR += plan9
1.7 angelos 65: SUBDIR += print
1.27 espie 66: SUBDIR += productivity
1.12 form 67: SUBDIR += russian
1.1 niklas 68: SUBDIR += security
69: SUBDIR += shells
70: SUBDIR += sysutils
1.47 jolan 71: SUBDIR += telephony
1.1 niklas 72: SUBDIR += textproc
73: SUBDIR += www
1.5 niklas 74: SUBDIR += x11
1.23 espie 75: .endif
1.1 niklas 76:
77: .include <bsd.port.subdir.mk>
78:
79: index:
80: @rm -f ${.CURDIR}/INDEX
1.63 espie 81: @${_MAKE} ${.CURDIR}/INDEX
1.1 niklas 82:
83: ${.CURDIR}/INDEX:
1.16 espie 84: @echo "Generating INDEX..."
1.63 espie 85: @${_MAKE} describe MACHINE_ARCH=i386 ECHO_MSG="echo 1>&2" > ${.CURDIR}/INDEX
1.16 espie 86: @echo "Done."
1.1 niklas 87:
88: print-index: ${.CURDIR}/INDEX
1.36 naddy 89: @awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10); }' < ${.CURDIR}/INDEX
1.17 turan 90:
91: print-licenses: ${.CURDIR}/INDEX
1.20 turan 92: @printf "Port PC PF DC DF Maint\n"
1.36 naddy 93: @awk -F\| '{printf("%-40.39s%-3.2s%-3.2s%-3.2s%-3.2s%-25.25s\n",$$2,$$12,$$13,$$14,$$15,$$6);}' < ${.CURDIR}/INDEX
1.1 niklas 94:
95: search: ${.CURDIR}/INDEX
1.40 pb 96: .if !defined(key) && !defined(name)
97: @echo "The search target requires a keyword or name parameter,"
98: @echo "e.g.: \"make search key=somekeyword\" \"make search name=somename\""
1.1 niklas 99: .else
1.54 espie 100: . if defined(key)
1.39 avsm 101: @egrep -i -- "${key}" ${.CURDIR}/INDEX | awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArchs:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10, $$11); }'
1.54 espie 102: . else
1.40 pb 103: @awk -F\| '$$1 ~ /${name}/ { printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArchs:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10, $$11); }' ${.CURDIR}/INDEX
1.54 espie 104: . endif
1.1 niklas 105: .endif
1.21 espie 106:
107: mirror-maker:
108: @mkdir -p ${MIRROR_MK:H}
1.57 espie 109: .if !empty(LOCKDIR)
1.59 espie 110: @echo "EXEC = " >${MIRROR_MK}
1.57 espie 111: @echo 'LOCKDIR = ${LOCKDIR}' >>${MIRROR_MK}
112: @echo 'PORTSDIR = ${PORTSDIR}' >>${MIRROR_MK}
1.65 espie 113: @echo 'LOCK_CMD = perl $${PORTSDIR}/infrastructure/bin/dolock' >>${MIRROR_MK}
1.57 espie 114: @echo 'UNLOCK_CMD = rm -f' >>${MIRROR_MK}
1.60 sturm 115: @echo 'SIMPLE_LOCK = $${LOCK_CMD} $${LOCKDIR}/$$$$lock.lock; trap "$${UNLOCK_CMD} $${LOCKDIR}/$$$$lock.lock" 0 1 2 3 13 15' >>${MIRROR_MK}
1.57 espie 116: .else
1.59 espie 117: @echo "EXEC = exec" >${MIRROR_MK}
1.57 espie 118: @echo 'SIMPLE_LOCK = :' >>${MIRROR_MK}
119: .endif
120:
121: @echo '' >>${MIRROR_MK}
1.25 espie 122: @echo "default:: ftp cdrom" >>${MIRROR_MK}
1.61 espie 123: @echo ".PHONY: default all ftp cdrom .FORCE" >>${MIRROR_MK}
124: @echo ".FORCE:" >>${MIRROR_MK}
1.43 espie 125: @_DONE_FILES=`mktemp /tmp/depends.XXXXXXXXX|| exit 1`; \
126: export _DONE_FILES; \
127: trap "rm -f $${_DONE_FILES}" 0 1 2 3 13 15; \
1.63 espie 128: ${_MAKE} fetch-makefile \
1.21 espie 129: ECHO_MSG='echo >&2' \
1.55 espie 130: _FETCH_MAKEFILE=${MIRROR_MK}
1.37 espie 131:
132: homepages.html:
133: @echo '<html><ul>' >$@
1.63 espie 134: @${_MAKE} homepage-links ECHO_MSG='echo >&2' >>$@
1.37 espie 135: @echo '</ul></html>' >>$@
1.22 espie 136:
137: distfiles-update-locatedb:
138: @PORTSDIR=${.CURDIR} /bin/sh ${.CURDIR}/infrastructure/fetch/distfiles-update-locatedb ${DISTFILES_DB}
139:
1.48 pvalchev 140: pkglocatedb:
1.62 espie 141: @pkg_mklocatedb -a -d ${.CURDIR}/packages/${MACHINE_ARCH}/all/ \
1.50 pvalchev 142: >${.CURDIR}/packages/${MACHINE_ARCH}/ftp/pkglocatedb
1.48 pvalchev 143:
1.22 espie 144: .PHONY: mirror-maker index search distfiles-update-locatedb \
1.48 pvalchev 145: pkglocatedb print-licenses print-index