diff options
author | Pav Lucistnik <pav@FreeBSD.org> | 2007-03-18 00:06:48 +0000 |
---|---|---|
committer | Pav Lucistnik <pav@FreeBSD.org> | 2007-03-18 00:06:48 +0000 |
commit | 0d7fdcd1dab28dc247b84b610fba45ed72ac1004 (patch) | |
tree | 4738405616f6e916b8e1441af2c7cf1473baa222 /ports-mgmt/portmk/Mk/bsd.port.mk | |
parent | 1396f8c3bf2b3604bffb47e0346426f9fabb7b43 (diff) | |
download | ports-0d7fdcd1dab28dc247b84b610fba45ed72ac1004.tar.gz ports-0d7fdcd1dab28dc247b84b610fba45ed72ac1004.zip |
Notes
Diffstat (limited to 'ports-mgmt/portmk/Mk/bsd.port.mk')
-rw-r--r-- | ports-mgmt/portmk/Mk/bsd.port.mk | 354 |
1 files changed, 196 insertions, 158 deletions
diff --git a/ports-mgmt/portmk/Mk/bsd.port.mk b/ports-mgmt/portmk/Mk/bsd.port.mk index c2004607ec7f..b17c58085afe 100644 --- a/ports-mgmt/portmk/Mk/bsd.port.mk +++ b/ports-mgmt/portmk/Mk/bsd.port.mk @@ -217,7 +217,8 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # NOT_FOR_ARCHS_REASON # NOT_FOR_ARCHS_REASON_${ARCH} # - Reason why it's not for ${NOT_FOR_ARCHS}s -# IA32_BINARY_PORT - Set this instead of ONLY_FOR_ARCHS if the given port +# IA32_BINARY_PORT +# - Set this instead of ONLY_FOR_ARCHS if the given port # fetches and installs compiled i386 binaries. # # Dependency checking. Use these if your port requires another port @@ -356,10 +357,10 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # versions for their nationality. # WITH_GHOSTSCRIPT_GPL # - If set, this port uses the GPL version of the ghostscript -# software instead of the GNU version, which is used otherwise. -# WITH_GHOSTSCRIPT_AFPL -# - If set, this port uses the AFPL version of the ghostscript -# software instead of the GNU version, which is used otherwise. +# software instead of the AFPL version, which is used otherwise. +# WITH_GHOSTSCRIPT_GNU +# - If set, this port uses the GNU version of the ghostscript +# software instead of the AFPL version, which is used otherwise. ## # USE_BISON - If set, this port uses bison for building. ## @@ -406,9 +407,12 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # (libtool, autoconf, autoheader, automake et al.) # See bsd.autotools.mk for more details. ## -# USE_SCONS - If set, this port uses the Python-based SCons build system +# USE_SCONS - If set, this port uses the Python-based SCons build system # See bsd.scons.mk for more details. ## +# USE_EFL - If set, this port use EFL libraries. +# Implies inclusion of bsd.efl.mk. (Also see +# that file for more information on USE_EFL_*). # USE_JAVA - If set, this port relies on the Java language. # Implies inclusion of bsd.java.mk. (Also see # that file for more information on USE_JAVA_*). @@ -541,8 +545,9 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # ${LINUXBASE_REL} if USE_LINUX_PREFIX is set, # otherwise ${LOCALBASE_REL} # -# IGNORE_PATH_CHECKS - There are some sanity checks against PREFIX and DESTDIR. -# You can diasble these checks with defining +# IGNORE_PATH_CHECKS +# - There are some sanity checks against PREFIX and DESTDIR. +# You can disable these checks with defining # this variable, but this is not recommended! # Only do this if you really know what you are # doing. These sanity checks are the following: @@ -728,7 +733,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # # Default sequence for "all" is: # -# check-sanity fetch checksum extract patch configure build +# check-sanity fetch checksum extract patch configure build # # Please read the comments in the targets section below; you # should be able to use the pre-* or post-* targets/scripts @@ -945,10 +950,18 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org # # DOCSDIR - Name of the directory to install the packages docs in. # Default: ${TARGETDIR}/share/doc/${PORTNAME} +# DOCSDIR_REL - The DOCSDIR relative to ${TARGETDIR} # EXAMPLESDIR - Name of the directory to install the packages examples in. # Default: ${TARGETDIR}/share/examples/${PORTNAME} +# EXAMPLESDIR_REL +# - The EXAMPLESDIR relative to ${TARGETDIR} # DATADIR - Name of the directory to install the packages shared data in. # Default: ${TARGETDIR}/share/${PORTNAME} +# DATADIR_REL - The DATADIR relative to ${TARGETDIR} +# +# WWWDIR - Name of the directory to install the packages www data in. +# Default: ${TARGETDIR}/www/${PORTNAME} +# WWWDIR_REL - The WWWDIR relative to ${TARGETDIR} # # DESKTOPDIR - Name of the directory to install ${DESKTOP_ENTRIES} in. # Default: ${TARGETDIR}/share/applications @@ -1305,7 +1318,7 @@ DOS2UNIX_REGEX?= .* .if defined(_PREMKINCLUDED) check-makefile:: - @${ECHO_CMD} "${PKGNAME}: Makefile error: you cannot include bsd.port[.pre].mk twice" + @${ECHO_MSG} "${PKGNAME}: Makefile error: you cannot include bsd.port[.pre].mk twice" @${FALSE} .endif @@ -1500,6 +1513,14 @@ PERL= ${LOCALBASE}/bin/perl .endif .endif +.if defined(USE_EFL) || defined(WANT_EFL) || defined(USE_EFL_ESMART) +.if exists(${DEVELPORTSDIR}/Mk/bsd.efl.mk) +.include "${DEVELPORTSDIR}/Mk/bsd.efl.mk" +.else +.include "${PORTSDIR}/Mk/bsd.efl.mk" +.endif +.endif + .if defined(USE_JAVA) .if exists(${DEVELPORTSDIR}/Mk/bsd.java.mk) .include "${DEVELPORTSDIR}/Mk/bsd.java.mk" @@ -1656,7 +1677,7 @@ WWWGRP?= www .if defined(_POSTMKINCLUDED) check-makefile:: - @${ECHO_CMD} "${PKGNAME}: Makefile error: you cannot include bsd.port[.post].mk twice" + @${ECHO_MSG} "${PKGNAME}: Makefile error: you cannot include bsd.port[.post].mk twice" @${FALSE} .endif @@ -1678,7 +1699,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} \ - DESTDIR=${DESTDIR} TARGETDIR=${TARGETDIR} + WWWDIR=${WWWDIR} DESTDIR=${DESTDIR} TARGETDIR=${TARGETDIR} PLIST_REINPLACE+= dirrmtry stopdaemon PLIST_REINPLACE_DIRRMTRY=s!^@dirrmtry \(.*\)!@unexec rmdir %D/\1 2>/dev/null || true! @@ -1700,9 +1721,9 @@ CFLAGS:= ${CFLAGS:N-O*:N-fno-strict*} ${DEBUG_FLAGS} .endif .if defined(NOPORTDOCS) -PLIST_SUB+= PORTDOCS="@comment " +PLIST_SUB+= PORTDOCS="@comment " .else -PLIST_SUB+= PORTDOCS="" +PLIST_SUB+= PORTDOCS="" .endif CONFIGURE_SHELL?= ${SH} @@ -1715,7 +1736,7 @@ MAKE_ENV+= SHELL=${SH} NO_LINT=YES .if ${MANCOMPRESSED} != yes && ${MANCOMPRESSED} != no && \ ${MANCOMPRESSED} != maybe check-makevars:: - @${ECHO_CMD} "${PKGNAME}: Makefile error: value of MANCOMPRESSED (is \"${MANCOMPRESSED}\") can only be \"yes\", \"no\" or \"maybe\"". + @${ECHO_MSG} "${PKGNAME}: Makefile error: value of MANCOMPRESSED (is \"${MANCOMPRESSED}\") can only be \"yes\", \"no\" or \"maybe\"". @${FALSE} .endif .endif @@ -2035,6 +2056,14 @@ RUN_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT} .endif .endif +.if defined(USE_EFL) || defined(WANT_EFL) || defined(USE_EFL_ESMART) +.if exists(${DEVELPORTSDIR}/Mk/bsd.efl.mk) +.include "${DEVELPORTSDIR}/Mk/bsd.efl.mk" +.else +.include "${PORTSDIR}/Mk/bsd.efl.mk" +.endif +.endif + .if defined(USE_JAVA) .if exists(${DEVELPORTSDIR}/Mk/bsd.java.mk) .include "${DEVELPORTSDIR}/Mk/bsd.java.mk" @@ -2159,20 +2188,20 @@ CONFIGURE_ARGS+=--x-libraries=${X11BASE}/lib --x-includes=${X11BASE}/include # Set the default for the installation of Postscript(TM)- # compatible functionality. .if !defined(WITHOUT_X11) -.if defined(WITH_GHOSTSCRIPT_AFPL) -GHOSTSCRIPT_PORT?= print/ghostscript-afpl +.if defined(WITH_GHOSTSCRIPT_GNU) +GHOSTSCRIPT_PORT?= print/ghostscript-gnu .elif defined(WITH_GHOSTSCRIPT_GPL) GHOSTSCRIPT_PORT?= print/ghostscript-gpl .else -GHOSTSCRIPT_PORT?= print/ghostscript-gnu +GHOSTSCRIPT_PORT?= print/ghostscript-afpl .endif .else -.if defined(WITH_GHOSTSCRIPT_AFPL) -GHOSTSCRIPT_PORT?= print/ghostscript-afpl-nox11 +.if defined(WITH_GHOSTSCRIPT_GNU) +GHOSTSCRIPT_PORT?= print/ghostscript-gnu-nox11 .elif defined(WITH_GHOSTSCRIPT_GPL) GHOSTSCRIPT_PORT?= print/ghostscript-gpl-nox11 .else -GHOSTSCRIPT_PORT?= print/ghostscript-gnu-nox11 +GHOSTSCRIPT_PORT?= print/ghostscript-afpl-nox11 .endif .endif @@ -2199,6 +2228,18 @@ RUN_DEPENDS+= cdrecord:${PORTSDIR}/sysutils/cdrtools REINPLACE_ARGS?= -i.bak REINPLACE_CMD?= ${SED} ${REINPLACE_ARGS} +# Macro for coping entire directory tree with correct permissions +COPYTREE_BIN= ${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1 >/dev/null \ + 2>&1) && \ + ${CHOWN} -R ${BINOWN}:${BINGRP} $$1 && \ + ${FIND} $$1 -type d -exec chmod 755 {} \; && \ + ${FIND} $$1 -type f -exec chmod ${BINMODE} {} \;' -- +COPYTREE_SHARE= ${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1 >/dev/null \ + 2>&1) && \ + ${CHOWN} -R ${SHAREOWN}:${SHAREGRP} $$1 && \ + ${FIND} $$1/ -type d -exec chmod 755 {} \; && \ + ${FIND} $$1/ -type f -exec chmod ${SHAREMODE} {} \;' -- + # Names of cookies used to skip already completed stages EXTRACT_COOKIE?= ${WRKDIR}/.extract_done.${PORTNAME}.${PREFIX:S/\//_/g} CONFIGURE_COOKIE?= ${WRKDIR}/.configure_done.${PORTNAME}.${PREFIX:S/\//_/g} @@ -2484,8 +2525,8 @@ _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: - @${ECHO_CMD} "Makefile error: the words all, ALL and default are reserved and cannot be" - @${ECHO_CMD} "used in group definitions. Please fix your MASTER_SITES" + @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" + @${ECHO_MSG} "used in group definitions. Please fix your MASTER_SITES" @${FALSE} . endif _MASTER_SITES_${_group}+= ${_S:C@^(.*/):[^/:]+$@\1@} @@ -2501,8 +2542,8 @@ _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: - @${ECHO_CMD} "The words all, ALL and default are reserved and cannot be" - @${ECHO_CMD} "used in group definitions. Please fix your PATCH_SITES" + @${ECHO_MSG} "The words all, ALL and default are reserved and cannot be" + @${ECHO_MSG} "used in group definitions. Please fix your PATCH_SITES" @${FALSE} . endif _PATCH_SITES_${_group}+= ${_S:C@^(.*/):[^/:]+$@\1@} @@ -2523,8 +2564,8 @@ _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: - @${ECHO_CMD} "Makefile error: the words all, ALL and default are reserved and cannot be" - @${ECHO_CMD} "used in group definitions. Please fix your MASTER_SITE_SUBDIR" + @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" + @${ECHO_MSG} "used in group definitions. Please fix your MASTER_SITE_SUBDIR" @${FALSE} . endif . if defined(_MASTER_SITES_${_group}) @@ -2544,8 +2585,8 @@ _S_TEMP= ${_S:S/^${_S:C@/:[^/:]+$@/@}//:S/^://} _G_TEMP= ${_group} . if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default check-makevars:: - @${ECHO_CMD} "Makefile error: the words all, ALL and default are reserved and cannot be" - @${ECHO_CMD} "used in group definitions. Please fix your PATCH_SITE_SUBDIR" + @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be" + @${ECHO_MSG} "used in group definitions. Please fix your PATCH_SITE_SUBDIR" @${FALSE} . endif . if defined(_PATCH_SITES_${_group}) @@ -2877,7 +2918,7 @@ check-makefile:: .if !defined(CATEGORIES) check-categories: - @${ECHO_CMD} "${PKGNAME}: Makefile error: CATEGORIES is mandatory." + @${ECHO_MSG} "${PKGNAME}: Makefile error: CATEGORIES is mandatory." @${FALSE} .else @@ -2901,7 +2942,7 @@ check-categories: @if ${ECHO_CMD} ${VALID_CATEGORIES} | ${GREP} -wq ${cat}; then \ ${TRUE}; \ else \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: category ${cat} not in list of valid categories."; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: category ${cat} not in list of valid categories."; \ ${FALSE}; \ fi .endfor @@ -2999,7 +3040,7 @@ __pmlinks!= ${ECHO_CMD} '${MLINKS:S/ / /}' | ${AWK} \ }' | ${SED} -e 's \([^/ ][^ ]*\.\(.\)[^. ]*\) $${MAN\2PREFIX}/$$$$$$$${__lang}/man\2/\1${MANEXT}g' -e 's/ //g' -e 's/MANlPREFIX/MANLPREFIX/g' -e 's/MANnPREFIX/MANNPREFIX/g' .if ${__pmlinks:Mbroken} == "broken" check-makevars:: - @${ECHO_CMD} "${PKGNAME}: Makefile error: unable to parse MLINKS." + @${ECHO_MSG} "${PKGNAME}: Makefile error: unable to parse MLINKS." @${FALSE} .endif _MLINKS= ${_MLINKS_PREPEND} @@ -3084,12 +3125,18 @@ 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}/,,} -PLIST_SUB+= DOCSDIR="${DOCSDIR:S,^${TARGETDIR}/,,}" \ - EXAMPLESDIR="${EXAMPLESDIR:S,^${TARGETDIR}/,,}" \ - DATADIR="${DATADIR:S,^${TARGETDIR}/,,}" +PLIST_SUB+= DOCSDIR="${DOCSDIR_REL}" \ + EXAMPLESDIR="${EXAMPLESDIR_REL}" \ + DATADIR="${DATADIR_REL}" \ + WWWDIR="${WWWDIR_REL}" DESKTOPDIR?= ${TARGETDIR}/share/applications _DESKTOPDIR_REL= ${DESKTOPDIR:S,^${TARGETDIR}/,,}/ @@ -3136,11 +3183,11 @@ LDCONFIG_RUNLIST!= ${ECHO_CMD} ${LDCONFIG_PLIST} | ${SED} -e "s!%D!${PREFIX}!g" .if defined(ONLY_FOR_ARCHS) .for __ARCH in ${ONLY_FOR_ARCHS} .if ${ARCH:M${__ARCH}} != "" -__ARCH_OK?= 1 +__ARCH_OK?= 1 .endif .endfor .else -__ARCH_OK?= 1 +__ARCH_OK?= 1 .endif .if defined(NOT_FOR_ARCHS) @@ -3416,15 +3463,20 @@ check-vulnerable: fi .endif +# set alg to any of SIZE, MD5, SHA256 (or any other checksum algorithm): +DISTINFO_DATA?= DIR=${DIST_SUBDIR}; ${AWK} -v alg=$$alg \ + -v file=$${DIR:+$$DIR/}$${file\#\#*/} \ + '$$1 == alg && $$2 == "(" file ")" {print $$4}' ${MD5_FILE} + # Fetch .if !target(do-fetch) do-fetch: @${MKDIR} ${_DISTDIR} - @(cd ${_DISTDIR}; \ + @cd ${_DISTDIR};\ ${_MASTER_SITES_ENV} ; \ for _file in ${DISTFILES}; do \ - file=`${ECHO_CMD} $$_file | ${SED} -E -e 's/:[^:]+$$//'` ; \ + file=$${_file%%:*}; \ select=`${ECHO_CMD} $${_file#$${file}} | ${SED} -e 's/^://' -e 's/,/ /g'` ; \ force_fetch=false; \ filebasename=`${BASENAME} $$file`; \ @@ -3435,8 +3487,6 @@ do-fetch: fi; \ done; \ if [ ! -f $$file -a ! -f $$filebasename -o "$$force_fetch" = "true" ]; then \ - DIR=${DIST_SUBDIR}; \ - pattern="$${DIR:+$$DIR/}`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \ if [ -L $$file -o -L $$filebasename ]; then \ ${ECHO_MSG} "=> ${_DISTDIR}/$$file is a broken symlink."; \ ${ECHO_MSG} "=> Perhaps a filesystem (most likely a CD) isn't mounted?"; \ @@ -3444,7 +3494,8 @@ do-fetch: exit 1; \ fi ; \ if [ -f ${MD5_FILE} -a "x${NO_CHECKSUM}" = "x" ]; then \ - if ! ${GREP} -q "^MD5 ($$pattern)" ${MD5_FILE}; then \ + _md5sum=`alg=MD5; ${DISTINFO_DATA}`; \ + if [ -z "$$_md5sum" ]; then \ ${ECHO_MSG} "=> $${DIR:+$$DIR/}$$file is not in ${MD5_FILE}."; \ ${ECHO_MSG} "=> Either ${MD5_FILE} is out of date, or"; \ ${ECHO_MSG} "=> $${DIR:+$$DIR/}$$file is spelled incorrectly."; \ @@ -3471,8 +3522,7 @@ do-fetch: fi ; \ for site in `eval $$SORTED_MASTER_SITES_CMD_TMP ${_RANDOMIZE_SITES}`; do \ ${ECHO_MSG} "=> Attempting to fetch from $${site}."; \ - DIR=${DIST_SUBDIR}; \ - CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \ + CKSIZE=`alg=SIZE; ${DISTINFO_DATA}`; \ case $${file} in \ */*) ${MKDIR} $${file%/*}; \ args="-o $${file} $${site}$${file}";; \ @@ -3486,10 +3536,10 @@ do-fetch: ${ECHO_MSG} "=> port manually into ${_DISTDIR} and try again."; \ exit 1; \ fi \ - done) + done .if defined(PATCHFILES) - @(cd ${_DISTDIR}; \ - ${_PATCH_SITES_ENV} ; \ + @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'` ; \ @@ -3524,9 +3574,7 @@ do-fetch: fi ; \ for site in `eval $$SORTED_PATCH_SITES_CMD_TMP`; do \ ${ECHO_MSG} "=> Attempting to fetch from $${site}."; \ - DIR=${DIST_SUBDIR}; \ - pattern="$${DIR:+$$DIR/}`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \ - CKSIZE=`${GREP} "^SIZE ($$pattern)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \ + CKSIZE=`alg=SIZE; ${DISTINFO_DATA}`; \ case $${file} in \ */*) ${MKDIR} $${file%/*}; \ args="-o $${file} $${site}$${file}";; \ @@ -3540,7 +3588,7 @@ do-fetch: ${ECHO_MSG} "=> port manually into ${_DISTDIR} and try again."; \ exit 1; \ fi \ - done) + done .endif .endif @@ -3680,7 +3728,7 @@ do-configure: INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ INSTALL_SCRIPT="${INSTALL_SCRIPT}" \ ${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}; then \ - ${ECHO_CMD} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \ + ${ECHO_MSG} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \ (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT} 75 79 ; \ ${FALSE}; \ fi) @@ -3886,22 +3934,22 @@ check-already-installed: if [ -d ${PKG_DBDIR}/${PKGNAME} -o -n "$${found_package}" ]; then \ if [ -d ${PKG_DBDIR}/${PKGNAME} ]; then \ if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ + ${ECHO_MSG} "===> ${PKGNAME} is already installed"; \ else \ ${ECHO_MSG} "===> ${PKGNAME} is already installed in ${DESTDIR}"; \ fi; \ else \ if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_CMD} "===> An older version of ${PKGORIGIN} is already installed ($${found_package})"; \ + ${ECHO_MSG} "===> An older version of ${PKGORIGIN} is already installed ($${found_package})"; \ else \ ${ECHO_MSG} "===> An older version of ${PKGORIGIN} is already installed in ${DESTDIR} ($${found_package})"; \ fi; \ fi; \ - ${ECHO_CMD} " You may wish to \`\`make deinstall'' and install this port again"; \ - ${ECHO_CMD} " by \`\`make reinstall'' to upgrade it properly."; \ - ${ECHO_CMD} " If you really wish to overwrite the old port of ${PKGORIGIN}"; \ - ${ECHO_CMD} " without deleting it first, set the variable \"FORCE_PKG_REGISTER\""; \ - ${ECHO_CMD} " in your environment or the \"make install\" command line."; \ + ${ECHO_MSG} " You may wish to \`\`make deinstall'' and install this port again"; \ + ${ECHO_MSG} " by \`\`make reinstall'' to upgrade it properly."; \ + ${ECHO_MSG} " If you really wish to overwrite the old port of ${PKGORIGIN}"; \ + ${ECHO_MSG} " without deleting it first, set the variable \"FORCE_PKG_REGISTER\""; \ + ${ECHO_MSG} " in your environment or the \"make install\" command line."; \ exit 1; \ fi .else @@ -3932,8 +3980,8 @@ install-mtree: .if !defined(NO_MTREE) @if [ `${ID} -u` = 0 ]; then \ if [ ! -f ${MTREE_FILE} ]; then \ - ${ECHO_CMD} "Error: mtree file \"${MTREE_FILE}\" is missing."; \ - ${ECHO_CMD} "Copy it from a suitable location (e.g., /usr/src/etc/mtree) and try again."; \ + ${ECHO_MSG} "Error: mtree file \"${MTREE_FILE}\" is missing."; \ + ${ECHO_MSG} "Copy it from a suitable location (e.g., /usr/src/etc/mtree) and try again."; \ exit 1; \ else \ ${MTREE_CMD} ${MTREE_ARGS} ${TARGETDIR}/ >/dev/null; \ @@ -4368,9 +4416,9 @@ pre-su-install-script: pretty-print-www-site: @www_site=$$(cd ${.CURDIR} && ${MAKE} ${__softMAKEFLAGS} www-site); \ if [ -n "$${www_site}" ]; then \ - ${ECHO_CMD} -n " and/or visit the "; \ - ${ECHO_CMD} -n "<a href=\"$${www_site}\">web site</a>"; \ - ${ECHO_CMD} " for futher informations"; \ + ${ECHO_MSG} -n " and/or visit the "; \ + ${ECHO_MSG} -n "<a href=\"$${www_site}\">web site</a>"; \ + ${ECHO_MSG} " for futher informations"; \ fi .endif @@ -4583,8 +4631,8 @@ fetch-list: continue; \ fi; \ fi; \ - DIR=${DIST_SUBDIR}; \ - CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \ + DIR=${DIST_SUBDIR};\ + CKSIZE=`alg=SIZE; ${DISTINFO_DATA}`; \ case $${file} in \ */*) args="-o $${file} $${site}$${file}";; \ *) args=$${site}$${file};; \ @@ -4615,8 +4663,7 @@ fetch-list: 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}'`; \ + CKSIZE=`alg=SIZE; ${DISTINFO_DATA}`; \ case $${file} in \ */*) args="-o $${file} $${site}$${file}";; \ *) args=$${site}$${file};; \ @@ -4651,8 +4698,8 @@ check-checksum-algorithms: for alg in ${CHECKSUM_ALGORITHMS:U}; do \ eval alg_executable=\$$$$alg; \ if [ -z "$$alg_executable" ]; then \ - ${ECHO_CMD} "Checksum algorithm $$alg: Couldn't find the executable."; \ - ${ECHO_CMD} "Set $$alg=/path/to/$$alg in /etc/make.conf and try again."; \ + ${ECHO_MSG} "Checksum algorithm $$alg: Couldn't find the executable."; \ + ${ECHO_MSG} "Set $$alg=/path/to/$$alg in /etc/make.conf and try again."; \ exit 1; \ fi; \ done; \ @@ -4693,15 +4740,10 @@ makesum: check-checksum-algorithms .if !target(checksum) checksum: fetch check-checksum-algorithms - @ \ - \ - ${checksum_init} \ - \ + @${checksum_init} \ if [ -f ${MD5_FILE} ]; then \ - ( cd ${DISTDIR}; OK=""; \ + cd ${DISTDIR}; OK="";\ for file in ${_CKSUMFILES}; do \ - pattern="`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \ - \ ignored="true"; \ for alg in ${CHECKSUM_ALGORITHMS:U}; do \ ignore="false"; \ @@ -4709,7 +4751,7 @@ checksum: fetch check-checksum-algorithms \ if [ $$alg_executable != "NO" ]; then \ MKSUM=`$$alg_executable < $$file`; \ - CKSUM=`${GREP} "^$$alg ($$pattern)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \ + CKSUM=`${DISTINFO_DATA}`; \ else \ ignore="true"; \ fi; \ @@ -4754,8 +4796,6 @@ checksum: fetch check-checksum-algorithms done; \ \ for file in ${_IGNOREFILES}; do \ - pattern="`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \ - \ ignored="true"; \ alreadymatched="false"; \ for alg in ${CHECKSUM_ALGORITHMS:U}; do \ @@ -4763,7 +4803,7 @@ checksum: fetch check-checksum-algorithms eval alg_executable=\$$$$alg; \ \ if [ $$alg_executable != "NO" ]; then \ - CKSUM=`${GREP} "^$$alg ($$pattern)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \ + CKSUM=`${DISTINFO_DATA}`; \ else \ ignore="true"; \ fi; \ @@ -4811,7 +4851,6 @@ checksum: fetch check-checksum-algorithms if [ "$$OK" != "true" ]; then \ exit 1; \ fi \ - ); \ elif [ -n "${_CKSUMFILES:M*}" ]; then \ ${ECHO_MSG} "=> No checksum file (${MD5_FILE})."; \ fi @@ -5129,62 +5168,60 @@ fetch-recursive-list: done .endif +# Used by fetch-required and fetch-required list, this script looks +# at each of the dependencies. If 3 items are specified in the tuple, +# such as foo:${PORTSDIR}/graphics/foo:extract, the first item (foo) +# is examined. Only if it begins with a / and does not exist on the +# file-system will ``make targ'' proceed. +# For more usual (dual-item) dependency tuples, the ``make targ'' +# proceeds, if the exact package, which the directory WOULD'VE installed, +# is not yet installed. +# This is the exact behaviour of the old code, and it may need +# revisiting. For example, the entire first case seems dubious, and in +# the second case we, probably, should be satisfied with _any_ (earlier) +# package, with the same origin as that of the dir. +# +# -mi +FETCH_LIST?= for i in $$deps; do \ + prog=$${i%%:*}; dir=$${i\#*:}; \ + case $$dir in \ + *:*) if [ $$prog != $${prog\#/} -o ! -e $$prog ]; then \ + dir=$${dir%%:*}; \ + else \ + continue; \ + fi;; \ + *) if [ -d ${PKG_DBDIR}/$$(cd $$dir; ${MAKE} -V PKGNAME) ]; then \ + continue; \ + fi;; \ + esac; \ + echo cd $$dir; ${MAKE} $$targ; \ + done + .if !target(fetch-required) fetch-required: fetch +.if defined(NO_DEPENDS) + @${ECHO_MSG} "===> NO_DEPENDS is set, not fetching any distfiles for ${PKG_NAME}" +.else @${ECHO_MSG} "===> Fetching all required distfiles for ${PKGNAME} and dependencies" .for deptype in EXTRACT PATCH FETCH BUILD RUN .if defined(${deptype}_DEPENDS) -.if !defined(NO_DEPENDS) - @for i in ${${deptype}_DEPENDS}; do \ - prog=`${ECHO_CMD} $$i | ${CUT} -f 1 -d ':'`; \ - dir=`${ECHO_CMD} $$i | ${CUT} -f 2-999 -d ':'`; \ - if ${EXPR} "$$dir" : '.*:' > /dev/null; then \ - dir=`${ECHO_CMD} $$dir | ${CUT} -f 1 -d ':'`; \ - if ${EXPR} "$$prog" : \\/ >/dev/null; then \ - if [ ! -e "$$prog" ]; then \ - (cd $$dir; ${MAKE} fetch); \ - fi; \ - fi; \ - else \ - (cd $$dir; \ - tmp=`${MAKE} -V PKGNAME`; \ - if [ ! -d ${PKG_DBDIR}/$${tmp} ]; then \ - ${MAKE} fetch; \ - fi ); \ - fi; \ - done -.endif + @targ=fetch; deps="${${deptype}_DEPENDS}"; ${FETCH_LIST} .endif .endfor .endif +.endif + .if !target(fetch-required-list) fetch-required-list: fetch-list +.if !defined(NO_DEPENDS) .for deptype in EXTRACT PATCH FETCH BUILD RUN .if defined(${deptype}_DEPENDS) -.if !defined(NO_DEPENDS) - @for i in ${${deptype}_DEPENDS}; do \ - prog=`${ECHO_CMD} $$i | ${CUT} -f 1 -d ':'`; \ - dir=`${ECHO_CMD} $$i | ${CUT} -f 2-999 -d ':'`; \ - if ${EXPR} "$$dir" : '.*:' > /dev/null; then \ - dir=`${ECHO_CMD} $$dir | ${CUT} -f 1 -d ':'`; \ - if ${EXPR} "$$prog" : \\/ >/dev/null; then \ - if [ ! -e "$$prog" ]; then \ - (cd $$dir; ${MAKE} fetch-list); \ - fi; \ - fi; \ - else \ - (cd $$dir; \ - tmp=`${MAKE} -V PKGNAME`; \ - if [ ! -d ${PKG_DBDIR}/$${tmp} ]; then \ - ${MAKE} fetch-list; \ - fi ); \ - fi; \ - done -.endif + @targ=fetch-list; deps="${${deptype}_DEPENDS}"; ${FETCH_LIST} .endif .endfor .endif +.endif .if !target(checksum-recursive) checksum-recursive: @@ -5202,7 +5239,7 @@ build-depends-list: .endif BUILD-DEPENDS-LIST= \ - for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | ${SORT} -u); do \ + for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${SED} -E -e 's,([^: ]*):([^: ]*)(:[^ ]*)?,\2,g' -e 'y/ /\n/'| ${SORT} -u); do \ if [ -d $$dir ]; then \ ${ECHO_CMD} $$dir; \ else \ @@ -5216,7 +5253,7 @@ run-depends-list: .endif RUN-DEPENDS-LIST= \ - for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':' | ${SORT} -u); do \ + for dir in $$(${ECHO_CMD} "${_LIB_RUN_DEPENDS:C,.*:([^:]*).*,\1,}" | ${SED} -e 'y/ /\n/' | ${SORT} -u); do \ if [ -d $$dir ]; then \ ${ECHO_CMD} $$dir; \ else \ @@ -5232,6 +5269,7 @@ package-depends-list: @${PACKAGE-DEPENDS-LIST} .endif +_LIB_RUN_DEPENDS= ${LIB_DEPENDS} ${RUN_DEPENDS} PACKAGE-DEPENDS-LIST?= \ if [ "${CHILD_DEPENDS}" ]; then \ installed=$$(${PKG_INFO} -qO ${PKGORIGIN} 2>/dev/null || \ @@ -5247,21 +5285,22 @@ PACKAGE-DEPENDS-LIST?= \ done; \ fi; \ checked="${PARENT_CHECKED}"; \ - for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':'); do \ + for dir in ${_LIB_RUN_DEPENDS:C,[^:]*:([^:]*):?.*,\1,}; do \ dir=$$(${REALPATH} $$dir); \ if [ -d $$dir ]; then \ - if (${ECHO_CMD} $$checked | ${GREP} -qwv "$$dir"); then \ - childout=$$(cd $$dir; ${MAKE} CHILD_DEPENDS=yes PARENT_CHECKED="$$checked" package-depends-list); \ - set -- $$childout; \ - childdir=""; \ - while [ $$\# != 0 ]; do \ - childdir="$$childdir $$2"; \ - ${ECHO_CMD} "$$1 $$2 $$3"; \ - shift 3; \ - done; \ - checked="$$dir $$childdir $$checked"; \ - fi; \ - else \ + case $$checked in \ + $$dir|$$dir\ *|*\ $$dir|*\ $$dir\ *) continue;; \ + esac; \ + childout=$$(cd $$dir; ${MAKE} CHILD_DEPENDS=yes PARENT_CHECKED="$$checked" package-depends-list); \ + set -- $$childout; \ + childdir=""; \ + while [ $$\# != 0 ]; do \ + childdir="$$childdir $$2"; \ + ${ECHO_CMD} "$$1 $$2 $$3"; \ + shift 3; \ + done; \ + checked="$$dir $$childdir $$checked"; \ + else \\ ${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \ fi; \ done @@ -5281,7 +5320,7 @@ package-recursive: package # Show missing dependiencies missing: @for dir in $$(${ALL-DEPENDS-LIST}); do \ - THISORIGIN=$$(${ECHO_CMD} $$dir | ${SED} 's,${PORTSDIR}/,,'); \ + THISORIGIN=$${dir##${PORTSDIR}/}; \ installed=$$(${PKG_INFO} -qO $${THISORIGIN}); \ if [ -z "$$installed" ]; then \ ${ECHO_CMD} $$THISORIGIN; \ @@ -5411,13 +5450,13 @@ ${.CURDIR}/README.html: _PRETTY_PRINT_DEPENDS_LIST=\ if [ ! -r ${INDEXDIR}/${INDEXFILE} ] ; then \ - ${ECHO_CMD} "${.TARGET} requires an INDEX file (${INDEXFILE}). Please run make index or make fetchindex."; \ + ${ECHO_MSG} "${.TARGET} requires an INDEX file (${INDEXFILE}). Please run make index or make fetchindex."; \ else \ target=${.TARGET:C/pretty-print-(.*)-depends-list/\1/} ; \ if [ "$$target" = "build" ] ; then fldnum=8 ; else fldnum=9 ; fi ; \ - ${ECHO_CMD} -n 'This port requires package(s) "' ; \ - ${ECHO_CMD} -n `${AWK} -F\| "\\$$1 ~ /^${PKGNAME}/ {print \\$$$${fldnum};}" ${INDEXDIR}/${INDEXFILE}` ; \ - ${ECHO_CMD} "\" to $$target."; \ + ${ECHO_MSG} -n 'This port requires package(s) "' ; \ + ${ECHO_MSG} -n `${AWK} -F\| "\\$$1 ~ /^${PKGNAME}/ {print \\$$$${fldnum};}" ${INDEXDIR}/${INDEXFILE}` ; \ + ${ECHO_MSG} "\" to $$target."; \ fi; @@ -5442,7 +5481,7 @@ apply-slist: .if defined(SUB_FILES) .for file in ${SUB_FILES} .if !exists(${FILESDIR}/${file}.in) - @${ECHO_CMD} "** Missing ${FILESDIR}/${file}.in for ${PKGNAME}."; exit 1 + @${ECHO_MSG} "** Missing ${FILESDIR}/${file}.in for ${PKGNAME}."; exit 1 .else @${SED} ${_SUB_LIST_TEMP} -e '/^@comment /d' ${FILESDIR}/${file}.in > ${WRKDIR}/${file} .endif @@ -5462,7 +5501,7 @@ ${i:S/-//:U}= ${WRKDIR}/${SUB_FILES:M${i}*} generate-plist: @${ECHO_MSG} "===> Generating temporary packing list" @${MKDIR} `${DIRNAME} ${TMPPLIST}` - @if [ ! -f ${DESCR} ]; then ${ECHO_CMD} "** Missing pkg-descr for ${PKGNAME}."; exit 1; fi + @if [ ! -f ${DESCR} ]; then ${ECHO_MSG} "** Missing pkg-descr for ${PKGNAME}."; exit 1; fi @>${TMPPLIST} @for file in ${PLIST_FILES}; do \ ${ECHO_CMD} $${file} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} >> ${TMPPLIST}; \ @@ -5484,7 +5523,7 @@ generate-plist: @${ECHO_CMD} '@cwd ${PREFIX}' >> ${TMPPLIST} .endif @for i in $$(${ECHO_CMD} ${__MANPAGES} ${_TMLINKS:M${_PREFIX}*:S|^${_PREFIX}/||} ' ' | ${SED} -E -e 's|man([1-9ln])/([^/ ]+) |cat\1/\2 |g'); do \ - ${ECHO_CMD} "@unexec rm -f %D/$${i%.gz} %D/$${i%.gz}.gz" >> ${TMPPLIST}; \ + ${ECHO_CMD} "@unexec rm -f %D/$$i %D/$${i%.gz} %D/$${i%.bz2} %D/$$i.gz %D/$$i.bz2" >> ${TMPPLIST}; \ done .endfor @if [ -f ${PLIST} ]; then \ @@ -5497,7 +5536,7 @@ generate-plist: .endfor .for dir in ${PLIST_DIRS} - @${ECHO_CMD} ${dir} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} | ${SED} -e 's,^,@dirrm ,' >> ${TMPPLIST} + @${ECHO_CMD} ${dir} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} -e 's,^,@dirrm ,' >> ${TMPPLIST} .endfor # To be removed once INSTALLS_SHLIB has been eradicated. .if defined(INSTALLS_SHLIB) && !defined(INSTALL_AS_USER) @@ -5540,15 +5579,14 @@ add-plist-docs: .for x in ${PORTDOCS} @if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \ if [ ! -e ${DOCSDIR}/${x} ]; then \ - ${ECHO_CMD} ${DOCSDIR}/${x} | \ - ${SED} -e 's,^${TARGETDIR}/,,' >> ${TMPPLIST}; \ + ${ECHO_CMD} ${DOCSDIR_REL}/${x} >> ${TMPPLIST}; \ fi;fi .endfor @${FIND} -P ${PORTDOCS:S/^/${DOCSDIR}\//} ! -type d 2>/dev/null | \ ${SED} -ne 's,^${TARGETDIR}/,,p' >> ${TMPPLIST} @${FIND} -P -d ${PORTDOCS:S/^/${DOCSDIR}\//} -type d 2>/dev/null | \ ${SED} -ne 's,^${TARGETDIR}/,@dirrm ,p' >> ${TMPPLIST} - @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${TARGETDIR}/,,}" >> ${TMPPLIST} + @${ECHO_CMD} "@dirrm ${DOCSDIR_REL}" >> ${TMPPLIST} .else @${DO_NADA} .endif @@ -5593,7 +5631,7 @@ add-plist-post: install-rc-script: .if defined(USE_RCORDER) || defined(USE_RC_SUBR) && ${USE_RC_SUBR:U} != "YES" .if defined(USE_RCORDER) - @${ECHO_CMD} "===> Installing early rc.d startup script(s)" + @${ECHO_MSG} "===> Installing early rc.d startup script(s)" @${ECHO_CMD} "@cwd /" >> ${TMPPLIST} @for i in ${USE_RCORDER}; do \ ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${DESTDIR}/etc/rc.d/$${i%.sh}; \ @@ -5602,7 +5640,7 @@ install-rc-script: @${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST} .endif .if defined(USE_RC_SUBR) && ${USE_RC_SUBR:U} != "YES" - @${ECHO_CMD} "===> Installing rc.d startup script(s)" + @${ECHO_MSG} "===> Installing rc.d startup script(s)" @${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST} @for i in ${USE_RC_SUBR}; do \ ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${TARGETDIR}/etc/rc.d/$${i%.sh}${RC_SUBR_SUFFIX}; \ @@ -5680,7 +5718,7 @@ fake-pkg: if [ -f ${PKGMESSAGE} ]; then \ ${CP} ${PKGMESSAGE} ${PKG_DBDIR}/${PKGNAME}/+DISPLAY; \ fi; \ - for dep in `${PKG_INFO} -qf ${PKGNAME} | ${GREP} -w ^@pkgdep | ${AWK} '{print $$2}' | ${SORT} -u`; do \ + for dep in `${PKG_INFO} -qf ${PKGNAME} | ${AWK} '/^@pkgdep / {print $$2}' | ${SORT} -u`; do \ if [ -d ${PKG_DBDIR}/$$dep -a -z `${ECHO_CMD} $$dep | ${GREP} -E ${PKG_IGNORE_DEPENDS}` ]; then \ if ! ${GREP} ^${PKGNAME}$$ ${PKG_DBDIR}/$$dep/+REQUIRED_BY \ >/dev/null 2>&1; then \ @@ -5982,11 +6020,11 @@ check-desktop-entries: entry="$$entry ($$1)"; \ fi; \ if [ -z "$$1" ]; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 1 (Name) is empty"; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 1 (Name) is empty"; \ exit 1; \ fi; \ if [ -z "$$4" ]; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 4 (Exec) is empty"; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 4 (Exec) is empty"; \ exit 1; \ fi; \ if [ -n "$$5" ]; then \ @@ -5997,21 +6035,21 @@ check-desktop-entries: fi; \ done; \ if ! ${ECHO_CMD} "$$5" | ${GREP} -q ';$$'; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 5 (Categories) does not end with a semicolon"; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 5 (Categories) does not end with a semicolon"; \ exit 1; \ fi; \ else \ if [ -z "`cd ${.CURDIR} && ${MAKE} ${__softMAKEFLAGS} desktop-categories`" ]; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 5 (Categories) is empty and could not be deduced from the CATEGORIES variable"; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 5 (Categories) is empty and could not be deduced from the CATEGORIES variable"; \ exit 1; \ fi; \ fi; \ if [ -z "$$6" ]; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 6 (StartupNotify) is empty"; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 6 (StartupNotify) is empty"; \ exit 1; \ fi; \ if [ "x$$6" != "xtrue" ] && [ "x$$6" != "xfalse" ]; then \ - ${ECHO_CMD} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 6 (StartupNotify) is not \"true\" or \"false\""; \ + ${ECHO_MSG} "${PKGNAME}: Makefile error: in desktop entry $$entry: field 6 (StartupNotify) is not \"true\" or \"false\""; \ exit 1; \ fi; \ shift 6; \ |