diff -urN -x CVS /usr/ports.ref/Mk/bsd.port.mk Mk/bsd.port.mk --- /usr/ports.ref/Mk/bsd.port.mk Tue Oct 15 22:53:38 2002 +++ Mk/bsd.port.mk Wed Oct 16 11:23:46 2002 @@ -256,6 +256,17 @@ # DEPENDS_TARGET - The default target to execute when a port is calling a # dependency (default: "install"). # +# Optional dependency checking. Use these if your port can use another +# port, but does not require require it. Controlled by WITH_ALL and +# WITH_NONE. WITH_NONE is implied by PACKAGE_BUILDING. +# +# These are tested for and if the dependency is statisfied they are +# converted into real dependencies. +# +# BUILD_OPTIONAL - Same syntax as BUILD_DEPENDS. +# RUN_OPTIONAL - Same syntax as RUN_DEPENDS. +# LIB_OPTIONAL - Same syntax as LIB_DEPENDS. +# # Various directory definitions and variables to control them. # You rarely need to redefine any of these except WRKSRC and NO_WRKSUBDIR. # @@ -518,10 +529,9 @@ # to turn them off (default: ${ECHO_CMD}). # PATCH_DEBUG - If set, print out more information about the patches as # it attempts to apply them. -# PKG_DBDIR - Where package installation is recorded (default: /var/db/pkg) # NO_PKG_REGISTER - Don't register a port installation as a package. # FORCE_PKG_REGISTER - If set, it will overwrite any existing package -# registration information in ${PKG_DBDIR}/${PKGNAME}. +# registration information. # NO_DEPENDS - Don't verify build of dependencies. # NO_CHECKSUM - Don't verify the checksum. Typically used when # when you noticed the distfile you just fetched has @@ -674,6 +684,18 @@ PKGNAME= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION}${_SUF1}${_SUF2} DISTNAME?= ${PORTNAME}-${PORTVERSION} +# Recurive dependency check... +PARENT_CHECKED?= "" +.if ${PARENT_CHECKED:S/${MASTERDIR}//}!=${PARENT_CHECKED} +pre-everything:: + @${ECHO_CMD} "Dependency list results in a recursive build of ${PKGNAME}." + @${ECHO_CMD} "If you're defining any USE_* variables on the command line or" + @${ECHO_CMD} "in /etc/make.conf, then you're probably doing something wrong..." + @${FALSE} +.else +PARENT_CHECKED+= ${MASTERDIR} +.endif + # These need to be absolute since we don't know how deep in the ports # tree we are and thus can't go relative. They can, of course, be overridden # by individual Makefiles or local system make configuration. @@ -817,7 +839,8 @@ _POSTMKINCLUDED= yes -WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/work +WRKDIRNAME?= work +WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/${WRKDIRNAME} .if defined(NO_WRKSUBDIR) WRKSRC?= ${WRKDIR} .else @@ -958,7 +981,6 @@ LIB_DEPENDS+= GL.14:${PORTSDIR}/graphics/Mesa3 .endif XAWVER= 6 -PKG_IGNORE_DEPENDS?= '^XFree86-3\.' .else .if defined(USE_IMAKE) BUILD_DEPENDS+= imake:${PORTSDIR}/devel/imake-4 @@ -973,7 +995,6 @@ LIB_DEPENDS+= glut.3:${PORTSDIR}/graphics/Mesa3 .endif XAWVER= 7 -PKG_IGNORE_DEPENDS?= 'this_port_does_not_exist' .endif PLIST_SUB+= XAWVER=${XAWVER} @@ -1104,7 +1125,7 @@ MAKE_FLAGS?= -f MAKEFILE?= Makefile -MAKE_ENV+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} MOTIFLIB="${MOTIFLIB}" LIBDIR="${LIBDIR}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" +MAKE_ENV+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} MOTIFLIB="${MOTIFLIB}" LIBDIR="${LIBDIR}" __MAKE_CONF=/dev/null CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" .if ${OSVERSION} < 500016 PTHREAD_CFLAGS= -D_THREAD_SAFE @@ -1250,11 +1271,12 @@ PKGORIGIN?= ${PKGCATEGORY}/${PORTDIRNAME} .endif -PKG_CMD?= /usr/sbin/pkg_create -PKG_DELETE?= /usr/sbin/pkg_delete -PKG_INFO?= /usr/sbin/pkg_info +PKG_ADD?= pkg_add +PKG_CREATE?= pkg_create +PKG_DELETE?= pkg_delete +PKG_INFO?= pkg_info .if !defined(PKG_ARGS) -PKG_ARGS= -v -c ${COMMENT} -d ${DESCR} -f ${TMPPLIST} -p ${PREFIX} -P "`${MAKE} package-depends | ${GREP} -v -E ${PKG_IGNORE_DEPENDS} | sort -u`" ${EXTRA_PKG_ARGS} +PKG_ARGS= -c ${COMMENT} -d ${DESCR} -f ${TMPPLIST} -p ${PREFIX} `${MAKE} package-depends-args` ${EXTRA_PKG_ARGS} .if exists(${PKGINSTALL}) PKG_ARGS+= -i ${PKGINSTALL} .endif @@ -1274,6 +1296,11 @@ PKG_ARGS+= -o ${PKGORIGIN} .endif .endif +.if defined(FORCE_PKG_REGISTER) +PKG_FORCE_ARG= -f +.else +PKG_FORCE_ARG= +.endif .if defined(PKG_NOCOMPRESS) PKG_SUFX?= .tar .else @@ -1283,8 +1310,6 @@ PKG_SUFX?= .tgz .endif .endif -# where pkg_add records its dirty deeds. -PKG_DBDIR?= /var/db/pkg MOTIFLIB?= -L${X11BASE}/lib -lXm -lXp @@ -1832,7 +1857,7 @@ .if exists(/var/db/port.mkversion) VERSIONFILE= /var/db/port.mkversion .else -VERSIONFILE= ${PKG_DBDIR}/.mkversion +VERSIONFILE= /var/db/pkg/.mkversion .endif .if exists(${VERSIONFILE}) .if !defined(SYSTEMVERSION) @@ -2345,7 +2370,7 @@ fi; \ fi @__softMAKEFLAGS='${__softMAKEFLAGS:S/'/'\''/g}'; \ - if ${PKG_CMD} ${PKG_ARGS} ${PKGFILE}; then \ + if ${PKG_CREATE} ${PKG_ARGS} ${PKGFILE}; then \ if [ -d ${PACKAGES} ]; then \ eval ${MAKE} $${__softMAKEFLAGS} package-links; \ fi; \ @@ -2414,7 +2439,7 @@ .if !target(check-already-installed) check-already-installed: .if !defined(NO_PKG_REGISTER) && !defined(FORCE_PKG_REGISTER) - @if [ -d ${PKG_DBDIR}/${PKGNAME} ]; then \ + @if `${PKG_INFO} -e ${PKGNAME}`; then \ ${ECHO_CMD} "===> ${PKGNAME} is already installed - perhaps an older version?"; \ ${ECHO_CMD} " If so, you may wish to \`\`make deinstall'' and install"; \ ${ECHO_CMD} " this port again by \`\`make reinstall'' to upgrade it properly."; \ @@ -2538,10 +2563,10 @@ post-build post-build-script _INSTALL_DEP= build _INSTALL_SEQ= install-message check-categories check-already-installed \ - check-umask run-depends lib-depends install-mtree pre-install \ - pre-install-script do-install generate-plist post-install \ - post-install-script compress-man run-ldconfig fake-pkg \ - security-check + check-umask check-plist-conflicts run-depends lib-depends \ + install-mtree pre-install pre-install-script do-install \ + generate-plist post-install post-install-script compress-man \ + run-ldconfig fake-pkg security-check _PACKAGE_DEP= install _PACKAGE_SEQ= package-message pre-package pre-package-script \ do-package post-package-script @@ -2650,7 +2675,7 @@ .if !target(patch-libtool) patch-libtool: .if defined(USE_LIBTOOL) - @(if ${LIBTOOL} --version | grep -vq "1\.3\.4-freebsd-ports"; then \ + @(if ${LIBTOOL} --version | grep -vq "1\.3\.5-freebsd-ports"; then \ (${ECHO_CMD} "Your libtool installation is out of date. Please remove"; \ ${ECHO_CMD} "and reinstall ${PORTSDIR}/devel/libtool."; \ exit 1); \ @@ -2699,7 +2724,7 @@ deinstall: @${ECHO_MSG} "===> Deinstalling for ${PKGNAME}" @if ${PKG_INFO} -e ${PKGNAME}; then \ - ${PKG_DELETE} -f ${PKGNAME}; \ + ${PKG_DELETE} ${PKG_FORCE_ARG} ${PKGNAME}; \ else \ ${ECHO_MSG} "===> ${PKGNAME} not installed, skipping"; \ fi @@ -2948,6 +2973,49 @@ # Dependency checking ################################################################ +.if defined(BUILD_OPTIONAL) && !(defined(WITH_NONE) || defined(PACKAGE_BUILDING)) +.if defined(WITH_ALL) +BUILD_DEPENDS+= ${BUILD_OPTIONAL} +.else +BUILD_DEPENDS+= `cd ${.CURDIR} && ${MAKE} ${__softMAKEFLAGS} \ + test-dep-optional TEST_DEP_OPTIONAL="${BUILD_OPTIONAL}"` +.endif +.endif + +.if defined(RUN_OPTIONAL) && !(defined(WITH_NONE) || defined(PACKAGE_BUILDING)) +.if defined(WITH_ALL) +RUN_DEPENDS+= ${RUN_OPTIONAL} +.else +RUN_DEPENDS+= `cd ${.CURDIR} && ${MAKE} ${__softMAKEFLAGS} \ + test-dep-optional TEST_DEP_OPTIONAL="${RUN_OPTIONAL}"` +.endif +.endif + +# Test for a executable or file +.if defined(TEST_DEP_OPTIONAL) +test-dep-optional: + @for i in ${TEST_DEP_OPTIONAL}; do \ + prog=`${ECHO} $$i | ${SED} -e 's/:.*//'`; \ + dir=`${ECHO} $$i | ${SED} -e 's/[^:]*://'`; \ + if ${EXPR} "$$dir" : '.*:' > /dev/null; then \ + target=`${ECHO} $$dir | ${SED} -e 's/.*://'`; \ + dir=`${ECHO} $$dir | ${SED} -e 's/:.*//'`; \ + else \ + target="${DEPENDS_TARGET}"; \ + depends_args="${DEPENDS_ARGS}"; \ + fi; \ + if ${EXPR} "$$prog" : \\/ >/dev/null; then \ + if [ -e "$$prog" ]; then \ + ${ECHO} $$i; \ + fi; \ + else \ + if ${WHICH} "$$prog" > /dev/null 2>&1 ; then \ + ${ECHO} $$i; \ + fi; \ + fi; \ + done +.endif + .if !target(depends) depends: lib-depends misc-depends fetch-depends build-depends run-depends @@ -3003,7 +3071,7 @@ if [ ! -d "$$dir" ]; then \ ${ECHO_MSG} " >> No directory for $$prog. Skipping.."; \ else \ - (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \ + (cd $$dir; ${MAKE} PARENT_CHECKED="${PARENT_CHECKED}" -DINSTALLS_DEPENDS $$target $$depends_args) ; \ ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \ fi; \ fi; \ @@ -3014,6 +3082,34 @@ .endif .endfor +.if defined(LIB_OPTIONAL) && !(defined(WITH_NONE) || defined(PACKAGE_BUILDING)) +.if defined(WITH_ALL) +LIB_DEPENDS+= ${LIB_OPTIONAL} +.else +LIB_DEPENDS+= `cd ${.CURDIR} && ${MAKE} ${__softMAKEFLAGS} \ + test-lib-optional TEST_LIB_OPTIONAL="${LIB_OPTIONAL}"` +.endif +.endif + +# Test for a library... +.if defined(TEST_LIB_OPTIONAL) +test-lib-optional: + @for i in ${TEST_LIB_OPTIONAL}; do \ + lib=`${ECHO} $$i | ${SED} -e 's/:.*//'`; \ + dir=`${ECHO} $$i | ${SED} -e 's/[^:]*://'`; \ + if ${EXPR} "$$dir" : '.*:' > /dev/null; then \ + target=`${ECHO} $$dir | ${SED} -e 's/.*://'`; \ + dir=`${ECHO} $$dir | ${SED} -e 's/:.*//'`; \ + else \ + target="${DEPENDS_TARGET}"; \ + depends_args="${DEPENDS_ARGS}"; \ + fi; \ + if ${LDCONFIG} -r | ${GREP} -qwF -e "-l$$lib"; then \ + ${ECHO} $$i; \ + fi; \ + done +.endif + lib-depends: .if defined(LIB_DEPENDS) .if !defined(NO_DEPENDS) @@ -3044,7 +3140,7 @@ if [ ! -d "$$dir" ]; then \ ${ECHO_MSG} " >> No directory for $$lib. Skipping.."; \ else \ - (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \ + (cd $$dir; ${MAKE} PARENT_CHECKED="${PARENT_CHECKED}" -DINSTALLS_DEPENDS $$target $$depends_args) ; \ ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \ if ${LDCONFIG} -r | ${GREP} -qwF -e "-l$$lib"; then \ ${TRUE}; \ @@ -3076,7 +3172,7 @@ if [ ! -d $$dir ]; then \ ${ECHO_MSG} " >> No directory for $$dir. Skipping.."; \ else \ - (cd $$dir; ${MAKE} $$target $$depends_args) ; \ + (cd $$dir; ${MAKE} PARENT_CHECKED="${PARENT_CHECKED}" $$target $$depends_args) ; \ fi \ done @${ECHO_MSG} "===> Returning to build of ${PKGNAME}" @@ -3173,49 +3269,40 @@ # Package (recursive runtime) dependency list. Print out both directory names # and package names. -package-depends-list: - @${PACKAGE-DEPENDS-LIST} - -PACKAGE-DEPENDS-LIST?= \ - if [ "${CHILD_DEPENDS}" ]; then \ - installed=$$(${PKG_INFO} -qO ${PKGORIGIN} 2>/dev/null || \ - ${TRUE}); \ - if [ "$$installed" ]; then \ - break; \ - fi; \ - if [ -z "$$installed" ]; then \ - installed="${PKGNAME}"; \ - fi; \ - for pkgname in $$installed; do \ - ${ECHO_CMD} "$$pkgname ${.CURDIR} ${PKGORIGIN}"; \ - done; \ - fi; \ - checked="${PARENT_CHECKED}"; \ - for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//') $$(${ECHO_CMD} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//'); do \ - 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 \ - ${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \ - fi; \ - done - # Print out package names. package-depends: -.if ${OSVERSION} >= 460102 - @${PACKAGE-DEPENDS-LIST} | ${AWK} '{print $$1":"$$3}' + @for i in ${LIB_DEPENDS}; do \ + pkgdep="$$pkgdep -S `${ECHO} $$i | ${SED} -e 's/:.*//'`"; \ + done; \ + for i in ${RUN_DEPENDS}; do \ + pkgdep="$$pkgdep -W `${ECHO} $$i | ${SED} -e 's/:.*//'`"; \ + done; \ + if [ "$$pkgdep" != "" ]; then \ + ${PKG_INFO} -q $$pkgdep; \ + fi | sort -u + +package-depends-args: + @for i in ${LIB_DEPENDS}; do \ + pkgdep=`${ECHO} $$i | ${SED} -e 's/:.*//'`; \ + ${ECHO} "-L $$pkgdep"; \ + done; \ + for i in ${RUN_DEPENDS}; do \ + pkgdep=`${ECHO} $$i | ${SED} -e 's/:.*//'`; \ + ${ECHO} "-R $$pkgdep"; \ + done | sort -u + +check-plist-conflicts: +.if !defined(FORCE_PKG_REGISTER) + @if (conflicts=$$( (${ECHO} "@cwd ${PREFIX}"; ${ECHO} "@name ${PKGNAME}"; \ + ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} ${PLIST}) | \ + ${PKG_INFO} -q -O - ) ); then \ + (${ECHO_MSG} "WARNING: This port will overwrite some" \ + "files installed by the following package(s):" \ + $${conflicts:-"unknown"}; false) \ + fi .else - @${PACKAGE-DEPENDS-LIST} | ${AWK} '{print $$1}' + @${DO_NADA} .endif ################################################################ @@ -3425,50 +3512,8 @@ .if !target(fake-pkg) fake-pkg: .if !defined(NO_PKG_REGISTER) - @if [ ! -d ${PKG_DBDIR} ]; then ${RM} -f ${PKG_DBDIR}; ${MKDIR} ${PKG_DBDIR}; fi - @${RM} -f /tmp/${PKGNAME}-required-by -.if defined(FORCE_PKG_REGISTER) - @if [ -e ${PKG_DBDIR}/${PKGNAME}/+REQUIRED_BY ]; then \ - ${CP} ${PKG_DBDIR}/${PKGNAME}/+REQUIRED_BY /tmp/${PKGNAME}-required-by; \ - fi - @${RM} -rf ${PKG_DBDIR}/${PKGNAME} -.endif - @if [ ! -d ${PKG_DBDIR}/${PKGNAME} ]; then \ - ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ - ${MKDIR} ${PKG_DBDIR}/${PKGNAME}; \ - ${PKG_CMD} ${PKG_ARGS} -O ${PKGFILE} > ${PKG_DBDIR}/${PKGNAME}/+CONTENTS; \ - ${CP} ${DESCR} ${PKG_DBDIR}/${PKGNAME}/+DESC; \ - ${CP} ${COMMENT} ${PKG_DBDIR}/${PKGNAME}/+COMMENT; \ - if [ -f ${PKGINSTALL} ]; then \ - ${CP} ${PKGINSTALL} ${PKG_DBDIR}/${PKGNAME}/+INSTALL; \ - fi; \ - if [ -f ${PKGDEINSTALL} ]; then \ - ${CP} ${PKGDEINSTALL} ${PKG_DBDIR}/${PKGNAME}/+DEINSTALL; \ - fi; \ - if [ -f ${PKGREQ} ]; then \ - ${CP} ${PKGREQ} ${PKG_DBDIR}/${PKGNAME}/+REQUIRE; \ - fi; \ - 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 \ - 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 \ - ${ECHO_CMD} ${PKGNAME} >> ${PKG_DBDIR}/$$dep/+REQUIRED_BY; \ - fi; \ - fi; \ - done; \ - fi -.if !defined(NO_MTREE) - @if [ -f ${MTREE_FILE} ]; then \ - ${CP} ${MTREE_FILE} ${PKG_DBDIR}/${PKGNAME}/+MTREE_DIRS; \ - fi -.endif - @if [ -e /tmp/${PKGNAME}-required-by ]; then \ - ${CAT} /tmp/${PKGNAME}-required-by >> ${PKG_DBDIR}/${PKGNAME}/+REQUIRED_BY; \ - ${RM} -f /tmp/${PKGNAME}-required-by; \ - fi + @${ECHO_MSG} "===> Registering installation for ${PKGNAME}" + @${PKG_CREATE} -v ${PKG_ARGS} -O ${PKGNAME} | ${PKG_ADD} ${PKG_FORCE_ARG} -O .else @${DO_NADA} .endif diff -urN -x CVS /usr/ports.ref/Mk/bsd.port.subdir.mk Mk/bsd.port.subdir.mk --- /usr/ports.ref/Mk/bsd.port.subdir.mk Wed Sep 11 01:04:28 2002 +++ Mk/bsd.port.subdir.mk Sun Sep 15 21:40:21 2002 @@ -94,18 +94,20 @@ TARGETS+= reinstall TARGETS+= tags +_SUBDIR= ${SUBDIR:S/ -D/,/} + .for __target in ${TARGETS} .if !target(${__target}) -${__target}: ${SUBDIR:S/$/.${__target}/} +${__target}: ${_SUBDIR:S/$/.${__target}/} .endif .endfor .for __target in ${TARGETS} checksubdirs readmes -${SUBDIR:S/$/.${__target}/}: _SUBDIRUSE +${_SUBDIR:S/$/.${__target}/}: _SUBDIRUSE .endfor _SUBDIRUSE: .USE - @OK=""; sub=${.TARGET:R}; \ + @OK=""; _sub=${.TARGET:R}; sub=$${_sub%%,*}; flags=$${_sub#$$sub}; \ for dud in $$DUDS; do \ if [ $${dud} = $$sub ]; then \ OK="false"; \ @@ -121,13 +123,15 @@ ${ECHO_MSG} "===> ${DIRPRFX}$${sub} non-existent"; \ fi; \ if [ "$$OK" = "" ]; then \ + make_flags=`echo $${flags} | sed -e 's/,/ -D/'`; \ + wrk_dir=`echo work$${flags} | sed -e 's/,/./'`; \ ${ECHO_MSG} "===> ${DIRPRFX}$${edir}"; \ cd ${.CURDIR}/$${edir}; \ - ${MAKE} -B ${.TARGET:E:realinstall=install} \ - DIRPRFX=${DIRPRFX}$$edir/; \ + ${MAKE} -B ${.TARGET:E:realinstall=install} $${make_flags}\ + DIRPRFX=${DIRPRFX}$$edir/ WRKDIRNAME=$${wrk_dir}; \ fi -${SUBDIR}:: ${SUBDIR:S/$/.all/} +${_SUBDIR}:: ${_SUBDIR:S/$/.all/} .if !target(install) .if !target(beforeinstall) @@ -138,14 +142,14 @@ .endif install: afterinstall afterinstall: realinstall -realinstall: beforeinstall ${SUBDIR:S/$/.realinstall/} +realinstall: beforeinstall ${_SUBDIR:S/$/.realinstall/} .endif IGNOREDIR= CVS Mk Templates Tools distfiles packages pkg .if !target(checksubdirs) .if defined(PORTSTOP) -checksubdirs: checksubdir ${SUBDIR:S/$/.checksubdirs/} +checksubdirs: checksubdir ${_SUBDIR:S/$/.checksubdirs/} .else checksubdirs: checksubdir .endif @@ -156,8 +160,8 @@ @for d in *; do \ if [ -d "$$d" ]; then \ found=0; \ - for s in ${SUBDIR} ${IGNOREDIR}; do \ - if [ "x$$s" = "x$$d" ]; then \ + for s in ${_SUBDIR} ${IGNOREDIR}; do \ + if [ "x$${s%%,*}" = "x$$d" ]; then \ found=1; \ break; \ fi; \ @@ -167,9 +171,9 @@ fi; \ fi; \ done - @for s in ${SUBDIR}; do \ - if ! [ -d ${.CURDIR}/$$s ]; then \ - ${ECHO} "Warning: directory $$s in SUBDIR does not exist"; \ + @for s in ${_SUBDIR}; do \ + if ! [ -d ${.CURDIR}/$${s%%,*} ]; then \ + ${ECHO} "Warning: directory $${s%%,*} in SUBDIR does not exist"; \ fi \ done .endif