* Make 'make-deinstall-all' check for moved ports. [1]

* Defined the installation directories PORTEXAMPLES and PORTDATA. [2]

* Add USE_MAKESELF knob is added for ports that use the makeself archiver. [3]

* Update the description of fetch-list; add targets fetch-required-list,
  fetch-url-list, and fetch-urlall-list. [4]

* Make 'make search' also search in ports/MOVED. [5]

* Move several Makevar definitions to the pre-makefile section:
  DATADIR, DOCSDIR, ETCDIR, EXAMPLESDIR, WWWDIR. [6]

* The target 'ignorelist-verbose' was added for portsmon. [7]

PR:	69965 [1], 78490 [2], 79398 [3], 86776 [4], 104161 [5], 110781 [6]

Submitted by:	Dancho Penev <dpenev at mnet dot bg> [1], mnag [2],
		jylefort [3], edwin [4], Lars Engels <lars dot engels
		at 0x20 dot net> [5], Alexander Logvinov <ports at
		logvinov dot com> [6], linimon [7]
This commit is contained in:
Mark Linimon 2007-05-25 00:09:37 +00:00
parent 586bee0412
commit 942838f1d5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=191668
3 changed files with 274 additions and 26 deletions

22
CHANGES
View File

@ -10,6 +10,28 @@ in the release notes.
All ports committers are allowed to commit to this file.
20070524:
AUTHOR: portmgr@FreeBSD.org
The following changes were made to the ports infrastructure:
* The 'make-deinstall-all' target now checks for moved ports.
* The installation directories PORTEXAMPLES and PORTDATA are now defined.
* The USE_MAKESELF knob is added for ports that use the makeself archiver.
* The description of fetch-list was updated. The targets fetch-required-list,
fetch-url-list, and fetch-urlall-list were added.
* 'make search' will also now search in ports/MOVED.
* The default method for 'make update' is now portsnap. Previously,
you had to manually select one of 3 methods: SUP_UPDATE, CVS_UPDATE,
or PORTSNAP_UPDATE. The latter is now obsolete.
* Several Makevar definitions have been moved to the pre-makefile section:
DATADIR, DOCSDIR, ETCDIR, EXAMPLESDIR, WWWDIR.
20070403:
AUTHOR: portmgr@FreeBSD.org
The following changes were made to the ports infrastructure:

View File

@ -94,7 +94,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# EXTRACT_SUFX - Suffix for archive names
# You never have to set both DISTFILES and EXTRACT_SUFX.
# Default: .tar.bz2 if USE_BZIP2 is set, .zip if USE_ZIP is
# set, .tar.gz otherwise.
# set, .run if USE_MAKESELF is set, .tar.gz otherwise).
# MASTER_SITES - Primary location(s) for distribution files if not found
# locally. See bsd.sites.mk for common choices for
# MASTER_SITES.
@ -298,6 +298,8 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# compression.
# USE_ZIP - If set, this port distfile uses zip, not tar w/[bg]zip
# for compression.
# USE_MAKESELF - If set, this port distfile uses makeself, not tar w/[bg]zip
# for compression.
# USE_DOS2UNIX - If set to "YES", remove the ^M from all files
# under ${WRKSRC}. If set to a string, remove in all
# files under ${WRKSRC} with one of these names the ^Ms.
@ -673,24 +675,51 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# installed (for example because NOPORTDOCS is defined).
# Useful for dynamically generated documentation.
#
# Set the following to specify all documentation your port installs into
# ${EXAMPLESDIR}
#
# PORTEXAMPLES - A list of files and directories relative to EXAMPLESDIR.
# Shell glob patterns can be used, directories include
# the entire subtree of contained files and directories.
# Should not be set when no examples files are
# installed (for example because NOPORTEXAMPLES is defined).
# Useful for dynamically generated examples.
#
# Set the following to specify all documentation your port installs into
# ${DATADIR}
#
# PORTDATA - A list of files and directories relative to DATADIR.
# Shell glob patterns can be used, directories include
# the entire subtree of contained files and directories.
# Should not be set when no data files are
# installed (for example because NOPORTDATA is defined).
# Useful for dynamically generated data files.
#
# Default targets and their behaviors:
#
# fetch - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined)
# into ${DISTDIR} as necessary.
# fetch-list - Show list of files that would be retrieved by fetch.
# fetch - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this
# port.
# fetch-list - Show list of commands to retrieve missing ${DISTFILES} and
# ${PATCHFILES} for this port.
# fetch-recursive
# - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
# for port and dependencies into ${DISTDIR} as necessary.
# - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this
# port and dependencies.
# fetch-recursive-list
# - Show list of files that would be retrieved by
# fetch-recursive.
# fetch-required-list
# - Show list of files that would be retrieved by
# fetch-required.
# - Show list of commands to retrieve missing ${DISTFILES} and
# ${PATCHFILES} for this port and dependencies.
# fetch-required
# - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
# for port and dependencies that are not already installed
# into ${DISTDIR}.
# - Retrieves missing ${DISTFILES} and ${PATCHFILES} for this
# port and dependencies.
# fetch-required-list
# - Show list of commands to retrieve missing ${DISTFILES} and
# ${PATCHFILES} for this port and dependencies.
# fetch-url-list
# - Show list of URLS to retrieve missing ${DISTFILES} and
# ${PATCHFILES} for this port.
# fetch-urlall-list
# - Show list of URLS to retrieve ${DISTFILES} and
# ${PATCHFILES} for this port.
#
# all-depends-list
# - Show all directories which are dependencies
# for this port.
@ -796,7 +825,8 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# For extract:
#
# EXTRACT_CMD - Command for extracting archive: "bzip2" if USE_BZIP2
# is set, "unzip" if USE_ZIP is set, "gzip" otherwise.
# is set, "unzip" if USE_ZIP is set, "unmakeself" if
# USE_MAKESELF if set, "gzip" otherwise.
# EXTRACT_BEFORE_ARGS
# - Arguments to ${EXTRACT_CMD} before filename.
# Default: "-dc"
@ -1160,6 +1190,7 @@ TR?= LANG=C /usr/bin/tr
TRUE?= true # Shell builtin
UNAME?= /usr/bin/uname
UNZIP_CMD?= ${LOCALBASE}/bin/unzip
UNMAKESELF_CMD?= ${LOCALBASE}/bin/unmakeself
WHICH?= /usr/bin/which
XARGS?= /usr/bin/xargs
YACC?= /usr/bin/yacc
@ -1378,6 +1409,12 @@ INDEXFILE?= INDEX-${OSVERSION:C/([0-9]).*/\1/}
TARGETDIR:= ${DESTDIR}${PREFIX}
DOCSDIR?= ${TARGETDIR}/share/doc/${PORTNAME}
EXAMPLESDIR?= ${TARGETDIR}/share/examples/${PORTNAME}
DATADIR?= ${TARGETDIR}/share/${PORTNAME}
WWWDIR?= ${TARGETDIR}/www/${PORTNAME}
ETCDIR?= ${TARGETDIR}/etc/${PORTNAME}
.if defined(USE_LINUX_RPM)
.include "${PORTSDIR}/Mk/bsd.linux-rpm.mk"
.endif
@ -1407,6 +1444,8 @@ X_WINDOW_SYSTEM ?= xfree86-4
EXTRACT_SUFX?= .tar.bz2
.elif defined(USE_ZIP)
EXTRACT_SUFX?= .zip
.elif defined(USE_MAKESELF)
EXTRACT_SUFX?= .run
.else
EXTRACT_SUFX?= .tar.gz
.endif
@ -1645,7 +1684,7 @@ PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE_REL} X11BASE=${X11BAS
DESTDIR=${DESTDIR} TARGETDIR=${TARGETDIR}
SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE_REL} X11BASE=${X11BASE_REL} \
DATADIR=${DATADIR} DOCSDIR=${DOCSDIR} EXAMPLESDIR=${EXAMPLESDIR} \
WWWDIR=${WWWDIR} DESTDIR=${DESTDIR} TARGETDIR=${TARGETDIR}
WWWDIR=${WWWDIR} ETCDIR=${ETCDIR} DESTDIR=${DESTDIR} TARGETDIR=${TARGETDIR}
PLIST_REINPLACE+= dirrmtry stopdaemon
PLIST_REINPLACE_DIRRMTRY=s!^@dirrmtry \(.*\)!@unexec rmdir %D/\1 2>/dev/null || true!
@ -1672,6 +1711,18 @@ PLIST_SUB+= PORTDOCS="@comment "
PLIST_SUB+= PORTDOCS=""
.endif
.if defined(NOPORTEXAMPLES)
PLIST_SUB+= PORTEXAMPLES="@comment "
.else
PLIST_SUB+= PORTEXAMPLES=""
.endif
.if defined(NOPORTDATA)
PLIST_SUB+= PORTDATA="@comment "
.else
PLIST_SUB+= PORTDATA=""
.endif
CONFIGURE_SHELL?= ${SH}
MAKE_SHELL?= ${SH}
@ -1702,6 +1753,9 @@ PATCH_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
.if defined(USE_ZIP)
EXTRACT_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
.endif
.if defined(USE_MAKESELF)
EXTRACT_DEPENDS+= unmakeself:${PORTSDIR}/archivers/unmakeself
.endif
.if defined(USE_GMAKE)
BUILD_DEPENDS+= gmake:${PORTSDIR}/devel/gmake
CONFIGURE_ENV+= MAKE=${GMAKE}
@ -2267,6 +2321,10 @@ TAR?= /usr/bin/tar
EXTRACT_CMD?= ${UNZIP_CMD}
EXTRACT_BEFORE_ARGS?= -qo
EXTRACT_AFTER_ARGS?= -d ${WRKDIR}
.elif defined(USE_MAKESELF)
EXTRACT_CMD?= ${UNMAKESELF_CMD}
EXTRACT_BEFORE_ARGS?=
EXTRACT_AFTER_ARGS?=
.else
EXTRACT_BEFORE_ARGS?= -dc
.if defined(EXTRACT_PRESERVE_OWNERSHIP)
@ -3035,19 +3093,17 @@ INFO_PATH?= share/info
INFO_PATH?= info
.endif
DOCSDIR?= ${TARGETDIR}/share/doc/${PORTNAME}
DOCSDIR_REL?= ${DOCSDIR:S,^${TARGETDIR}/,,}
EXAMPLESDIR?= ${TARGETDIR}/share/examples/${PORTNAME}
EXAMPLESDIR_REL?= ${EXAMPLESDIR:S,^${TARGETDIR}/,,}
DATADIR?= ${TARGETDIR}/share/${PORTNAME}
DATADIR_REL?= ${DATADIR:S,^${TARGETDIR}/,,}
WWWDIR?= ${TARGETDIR}/www/${PORTNAME}
WWWDIR_REL?= ${WWWDIR:S,^${TARGETDIR}/,,}
ETCDIR_REL?= ${ETCDIR:S,^${TARGETDIR}/,,}
PLIST_SUB+= DOCSDIR="${DOCSDIR_REL}" \
EXAMPLESDIR="${EXAMPLESDIR_REL}" \
DATADIR="${DATADIR_REL}" \
WWWDIR="${WWWDIR_REL}"
WWWDIR="${WWWDIR_REL}" \
ETCDIR="${ETCDIR_REL}"
DESKTOPDIR?= ${TARGETDIR}/share/applications
_DESKTOPDIR_REL= ${DESKTOPDIR:S,^${TARGETDIR}/,,}/
@ -3183,6 +3239,18 @@ ignorelist:
@${DO_NADA}
.endif
.if defined(IGNORE) || defined(NO_PACKAGE)
ignorelist-verbose:
.if defined(IGNORE)
@${ECHO_MSG} "${PKGNAME}|IGNORE: "${IGNORE:Q}
.else
@${ECHO_MSG} "${PKGNAME}|NO_PACKAGE: "${NO_PACKAGE:Q}
.endif
.else
ignorelist-verbose:
@${DO_NADA}
.endif
################################################################
# Clean directories for ftp or CDROM.
################################################################
@ -4202,7 +4270,8 @@ _INSTALL_SEQ= install-message check-conflicts \
_INSTALL_SUSEQ= check-umask install-mtree pre-su-install \
pre-su-install-script do-install install-desktop-entries \
post-install post-install-script add-plist-info \
add-plist-docs add-plist-post install-rc-script compress-man \
add-plist-docs add-plist-examples add-plist-data \
add-plist-post install-rc-script compress-man \
install-ldconfig-file fake-pkg security-check
_PACKAGE_DEP= install
_PACKAGE_SEQ= package-message pre-package pre-package-script \
@ -4422,6 +4491,9 @@ deinstall-all:
@${ECHO_MSG} "===> Deinstalling for ${PKGORIGIN} from ${DESTDIR}"
.endif
@deinstall_names=`${PKG_INFO} -q -O ${PKGORIGIN}`; \
for oldpkgorigin in $$(${GREP} "|${PKGORIGIN}|" ${PORTSDIR}/MOVED | ${CUT} -f 1 -d '|' | ${SORT} -u); do \
deinstall_names="$${deinstall_names} $$(${PKG_INFO} -q -O $${oldpkgorigin})"; \
done; \
if [ -n "$${deinstall_names}" ]; then \
for d in $${deinstall_names}; do \
if [ -z "${DESTDIR}" ] ; then \
@ -4590,6 +4662,83 @@ fetch-list:
.endif
.endif
.if !target(fetch-url-list-int)
fetch-url-list-int:
@${MKDIR} ${_DISTDIR}
@(cd ${_DISTDIR}; \
${_MASTER_SITES_ENV}; \
for _file in ${DISTFILES}; do \
file=`${ECHO_CMD} $$_file | ${SED} -E -e 's/:[^:]+$$//'` ; \
select=`${ECHO_CMD} $${_file#$${file}} | ${SED} -e 's/^://' -e 's/,/ /g'` ; \
if [ ! -z "${LISTALL}" -o ! -f $$file -a ! -f `${BASENAME} $$file` ]; then \
if [ ! -z "$$select" ] ; then \
__MASTER_SITES_TMP= ; \
for group in $$select; do \
if [ ! -z \$${_MASTER_SITES_$${group}} ] ; then \
eval ___MASTER_SITES_TMP=\$${_MASTER_SITES_$${group}} ; \
__MASTER_SITES_TMP="$${__MASTER_SITES_TMP} $${___MASTER_SITES_TMP}" ; \
fi \
done; \
___MASTER_SITES_TMP= ; \
SORTED_MASTER_SITES_CMD_TMP="${ECHO_CMD} ${_MASTER_SITE_OVERRIDE} `${ECHO_CMD} $${__MASTER_SITES_TMP} | ${AWK} '${MASTER_SORT_AWK:S|\\|\\\\|g}'` ${_MASTER_SITE_BACKUP}" ; \
else \
SORTED_MASTER_SITES_CMD_TMP="${SORTED_MASTER_SITES_DEFAULT_CMD}" ; \
fi ; \
for site in `eval $$SORTED_MASTER_SITES_CMD_TMP ${_RANDOMIZE_SITES}`; do \
DIR=${DIST_SUBDIR}; \
CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
case $${file} in \
*/*) args="-o $${file} $${site}$${file}";; \
*) args=$${site}$${file};; \
esac; \
${ECHO_CMD} $${args} ; \
done; \
fi \
done)
.if defined(PATCHFILES)
@(cd ${_DISTDIR}; \
${_PATCH_SITES_ENV} ; \
for _file in ${PATCHFILES}; do \
file=`${ECHO_CMD} $$_file | ${SED} -E -e 's/:[^:]+$$//'` ; \
select=`${ECHO_CMD} $${_file#$${file}} | ${SED} -e 's/^://' -e 's/,/ /g'` ; \
if [ ! -z "${LISTALL}" -o ! -f $$file -a ! -f `${BASENAME} $$file` ]; then \
if [ ! -z "$$select" ] ; then \
__PATCH_SITES_TMP= ; \
for group in $$select; do \
if [ ! -z \$${_PATCH_SITES_$${group}} ] ; then \
eval ___PATCH_SITES_TMP=\$${_PATCH_SITES_$${group}} ; \
__PATCH_SITES_TMP="$${__PATCH_SITES_TMP} $${___PATCH_SITES_TMP}" ; \
fi \
done; \
___PATCH_SITES_TMP= ; \
SORTED_PATCH_SITES_CMD_TMP="${ECHO_CMD} ${_MASTER_SITE_OVERRIDE} `${ECHO_CMD} $${__PATCH_SITES_TMP} | ${AWK} '${MASTER_SORT_AWK:S|\\|\\\\|g}'` ${_MASTER_SITE_BACKUP}" ; \
else \
SORTED_PATCH_SITES_CMD_TMP="${SORTED_PATCH_SITES_DEFAULT_CMD}" ; \
fi ; \
for site in `eval $$SORTED_PATCH_SITES_CMD_TMP ${_RANDOMIZE_SITES}`; do \
DIR=${DIST_SUBDIR}; \
CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
case $${file} in \
*/*) args="-o $${file} $${site}$${file}";; \
*) args=$${site}$${file};; \
esac; \
${ECHO_CMD} $${args} ; \
done; \
fi \
done)
.endif
.endif
.if !target(fetch-urlall-list)
fetch-urlall-list:
@LISTALL=yes ${MAKE} fetch-url-list-int
.endif
.if !target(fetch-url-list)
fetch-url-list:
@${MAKE} fetch-url-list-int
.endif
# Generates patches.
update-patches:
@ -5508,6 +5657,54 @@ add-plist-docs:
.endif
.endif
.if !target(add-plist-examples)
add-plist-examples:
.if defined(PORTEXAMPLES) && !defined(NOPORTEXAMPLES)
@if ${EGREP} -qe '^@cw?d' ${TMPPLIST} && \
[ "`${SED} -En -e '/^@cw?d[ ]*/s,,,p' ${TMPPLIST} | ${TAIL} -n 1`" != "${PREFIX}" ]; then \
${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST}; \
fi
.for x in ${PORTEXAMPLES}
@if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \
if [ ! -e ${EXAMPLESDIR}/${x} ]; then \
${ECHO_CMD} ${EXAMPLESDIR}/${x} | \
${SED} -e 's,^${PREFIX}/,,' >> ${TMPPLIST}; \
fi;fi
.endfor
@${FIND} -P ${PORTEXAMPLES:S/^/${EXAMPLESDIR}\//} ! -type d 2>/dev/null | \
${SED} -ne 's,^${PREFIX}/,,p' >> ${TMPPLIST}
@${FIND} -P -d ${PORTEXAMPLES:S/^/${EXAMPLESDIR}\//} -type d 2>/dev/null | \
${SED} -ne 's,^${PREFIX}/,@dirrm ,p' >> ${TMPPLIST}
@${ECHO_CMD} "@dirrm ${EXAMPLESDIR:S,^${PREFIX}/,,}" >> ${TMPPLIST}
.else
@${DO_NADA}
.endif
.endif
.if !target(add-plist-data)
add-plist-data:
.if defined(PORTDATA) && !defined(NOPORTDATA)
@if ${EGREP} -qe '^@cw?d' ${TMPPLIST} && \
[ "`${SED} -En -e '/^@cw?d[ ]*/s,,,p' ${TMPPLIST} | ${TAIL} -n 1`" != "${PREFIX}" ]; then \
${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST}; \
fi
.for x in ${PORTDATA}
@if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \
if [ ! -e ${DATADIR}/${x} ]; then \
${ECHO_CMD} ${DATADIR}/${x} | \
${SED} -e 's,^${PREFIX}/,,' >> ${TMPPLIST}; \
fi;fi
.endfor
@${FIND} -P ${PORTDATA:S/^/${DATADIR}\//} ! -type d 2>/dev/null | \
${SED} -ne 's,^${PREFIX}/,,p' >> ${TMPPLIST}
@${FIND} -P -d ${PORTDATA:S/^/${DATADIR}\//} -type d 2>/dev/null | \
${SED} -ne 's,^${PREFIX}/,@dirrm ,p' >> ${TMPPLIST}
@${ECHO_CMD} "@dirrm ${DATADIR:S,^${PREFIX}/,,}" >> ${TMPPLIST}
.else
@${DO_NADA}
.endif
.endif
.if !target(add-plist-info)
add-plist-info:
# Process GNU INFO files at package install/deinstall time

View File

@ -34,7 +34,8 @@
# clean-for-cdrom, clean-restricted,
# clean-for-cdrom-list, clean-restricted-list,
# configure, deinstall,
# depend, depends, describe, extract, fetch, fetch-list, ignorelist,
# depend, depends, describe, extract, fetch, fetch-list,
# ignorelist, ignorelist-verbose,
# install, maintainer, makesum, package, readmes, realinstall, reinstall,
# tags
#
@ -104,6 +105,7 @@ TARGETS+= extract
TARGETS+= fetch
TARGETS+= fetch-list
TARGETS+= ignorelist
TARGETS+= ignorelist-verbose
TARGETS+= makesum
TARGETS+= maintainer
TARGETS+= package
@ -271,6 +273,8 @@ INDEXFILE?= INDEX-${OSVERSION:C/([0-9]).*/\1/}
.else
INDEXFILE?= INDEX
.endif
MOVEDDIR?= ${PORTSDIR}
MOVEDFILE?= MOVED
HTMLIFY= sed -e 's/&/\&amp;/g' -e 's/>/\&gt;/g' -e 's/</\&lt;/g'
@ -330,6 +334,7 @@ PORTSEARCH_DISPLAY_FIELDS?=name,path,info,maint,index,bdeps,rdeps,www
PORTSEARCH_KEYLIM?=0
PORTSEARCH_XKEYLIM?=0
PORTSEARCH_IGNORECASE?=1
PORTSEARCH_MOVED?=1
_PORTSEARCH= \
here=${.CURDIR}; \
@ -408,11 +413,11 @@ _PORTSEARCH= \
split(display, d, /,[ \t]*/); \
split(xdisplay, xd, /,[ \t]*/); \
for (i in d) { \
toprint = 1;\
toprint = 1; \
for (j in xd) { \
if (d[i] == xd[j] ) { \
toprint=0; \
break;\
break; \
}\
} \
if (toprint == 1 ) disp[fields[d[i]]] = 1; \
@ -444,7 +449,31 @@ _PORTSEARCH= \
printf("%s:\t%s\n", names[i], $$i); \
print(""); \
}' ${INDEXDIR}/${INDEXFILE}; \
fi
if [ "$$name" -o "$$xname" ] && [ ${PORTSEARCH_MOVED} -gt 0 ]; \
then \
awk -F\| -v name="$$name" -v xname="$$xname" \
-v icase="$${icase:-${PORTSEARCH_IGNORECASE}}" \
'BEGIN { \
if (icase) { \
if (length(name)) name = tolower(name); if (length(xname)) xname = tolower(xname); \
} \
fields["name"] = 1; names[1] = "Port"; \
fields["destination"] = 2; names[2] = "Moved"; \
fields["date"] = 3; names[3] = "Date"; \
fileds["reason"] = 4; names[4] = "Reason"; \
} \
{ \
oldname = $$1; newname = $$2; \
sub(".*\/", "", oldname); newname = sub(".*\/", "", newname); \
if (((icase ? tolower(oldname) : oldname) ~ name) || ((icase ? tolower(newname) : newname) ~ name)) { \
for (i = 1; i <= 4; i++) { \
printf("%s:\t%s\n", names[i], $$i); \
} \
print(""); \
} \
}' ${MOVEDDIR}/${MOVEDFILE}; \
fi \
fi
search:
@${_PORTSEARCH}