diff --git a/en/ports/Makefile b/en/ports/Makefile index 33fa77c27a..3645e30baa 100644 --- a/en/ports/Makefile +++ b/en/ports/Makefile @@ -1,95 +1,83 @@ -# $FreeBSD: www/en/ports/Makefile,v 1.37 2004/09/25 11:59:58 simon Exp $ +# $FreeBSD: www/en/ports/Makefile,v 1.38 2004/11/05 12:47:07 simon Exp $ .if exists(../Makefile.conf) .include "../Makefile.conf" .endif .if exists(../Makefile.inc) .include "../Makefile.inc" .endif .if exists(Makefile.inc) .include "Makefile.inc" .endif -CVS_READONLY?= YES -CVS_OPT+= -Q -.if !empty(CVS_READONLY) -CVS_OPT+= -R -.endif +FETCH_OPT?= -am # # Force NO_TIDY for the ports web pages, since it takes a long time to # run tidy on these huge HTML files, and the files are valid HTML when # generated by portindex, even without tidy. # NO_TIDY= YES -# -# This hack is allows to build www/ tree for case when ports/ located -# in other repository, for example Repository of Translation Project -# -.if defined(PORTSCVSROOT) && !empty(PORTSCVSROOT) -CVS_OPT+= -d ${PORTSCVSROOT} -.endif - .if defined(PINDEX_OVERRIDE) ${INDEX}: ${PINDEX_OVERRIDE} ${CP} ${PINDEX_OVERRIDE} ${INDEX} -.elif defined(NOPORTSCVS) +.elif defined(NOPORTSNET) ${INDEX}: $${PORTSBASE}/${PINDEX} ${CP} ${PORTSBASE}/${PINDEX} ${INDEX} .else ${INDEX}: - ${CVS} ${CVS_OPT} co -p ${PINDEX} > ${INDEX} + ${FETCH} ${FETCH_OPT} ${INDEXURI} .endif # build the list of available packages only on the # main FreeBSD machines hostname!= hostname # # don't build the packages links if NO_PACKAGES_LINK # is set and not empty. # # XXX: you can set NO_PACKAGES_LINK to your hostname to # test the packages link generation # .if defined(NO_PACKAGES_LINK) && !empty(NO_PACKAGES_LINK) hostname= ${NO_PACKAGES_LINK} .endif packages.exists: .if ${hostname} == "hub.freebsd.org" || ${hostname} == "freefall.freebsd.org" || ${hostname} == "www.freebsd.org" @if ${SH} ${.CURDIR}/packages > ${.TARGET}.temp; then \ ${MV} ${.TARGET}.temp ${.TARGET}; \ else \ ${RM} ${.TARGET}.temp; ${TOUCH} ${.TARGET}; \ fi; .else ${TOUCH} ${.TARGET} .endif Makefile.gen: index.sgml .NOTMAIN ${ECHO_CMD} DOCS= *.sgml > Makefile.gen .if defined(NO_TIDY) ${ECHO_CMD} NO_TIDY=${NO_TIDY} >> Makefile.gen .endif index.sgml: ${INDEX} categories packages.exists portindex ports.inc .NOTMAIN ${RM} -f *.sgml ${PORTINDEX} ${INDEX} ${.CURDIR} install: all beforeinstall all install clean: cd ${.CURDIR}; \ ${MAKE} ${MAKEFLAGS} -f ${.CURDIR}/Makefile.inc0 ${.TARGET} .if defined(WITH_PORTS_GROWTH) cd growth; \ ${MAKE} ${MAKEFLAGS} ${.TARGET} beforeinstall: .else beforeinstall: ${PERL} -pi -e 's/href=\"growth/href=\"http:\/\/www.FreeBSD.org\/ports\/growth/' index.html .endif .include "${WEB_PREFIX}/share/mk/web.site.mk" diff --git a/es/ports/Makefile b/es/ports/Makefile index 8ac652d75e..b50d600972 100644 --- a/es/ports/Makefile +++ b/es/ports/Makefile @@ -1,48 +1,50 @@ -# $FreeBSD: www/es/ports/Makefile,v 1.10 2001/12/06 12:28:23 phantom Exp $ +# $FreeBSD: www/es/ports/Makefile,v 1.11 2001/12/12 11:57:37 phantom Exp $ .if exists(../Makefile.conf) .include "../Makefile.conf" .endif .if exists(../Makefile.inc) .include "../Makefile.inc" .endif .if exists(Makefile.inc) .include "Makefile.inc" .endif +FETCH_OPT?= -am + .if defined(NOPORTSCVS) ${INDEX}: $${PORTSBASE}/${PINDEX} cp ${PORTSBASE}/${PINDEX} ${INDEX} .else ${INDEX}: - cvs -QR co -p ${PINDEX} > ${INDEX} + ${FETCH} ${FETCH_OPT} ${INDEXURI} .endif # build the list of available packages only on the # main FreeBSD machines hostname!= hostname packages.exists: .if ${hostname} == "hub.freebsd.org" || ${hostname} == "freefall.freebsd.org" .if exists(${.CURDIR}/../../en/ports/packages.exists) cp ${.CURDIR}/../../en/ports/${.TARGET} . .else sh ${.CURDIR}/packages > ${.TARGET} .endif .else touch ${.TARGET} .endif Makefile.gen: index.sgml .NOTMAIN echo DOCS= *.sgml > Makefile.gen index.sgml: ${INDEX} packages.exists portindex ports.inc .NOTMAIN rm -f *.sgml ${PORTINDEX} ${INDEX} ${.CURDIR} install: all all install clean: (cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} -f ${.CURDIR}/Makefile.inc0 ${.TARGET}) .include "${WEB_PREFIX}/share/mk/web.site.mk" diff --git a/ja/ports/Makefile b/ja/ports/Makefile index af9277706b..010de6884e 100644 --- a/ja/ports/Makefile +++ b/ja/ports/Makefile @@ -1,94 +1,82 @@ -# $FreeBSD: www/ja/ports/Makefile,v 1.25 2001/11/19 15:35:42 hrs Exp $ +# $FreeBSD: www/ja/ports/Makefile,v 1.26 2004/11/01 06:36:22 rushani Exp $ # The FreeBSD Japanese Documentation Project # Original revision: 1.37 .if exists(../Makefile.conf) .include "../Makefile.conf" .endif .if exists(../Makefile.inc) .include "../Makefile.inc" .endif .if exists(../../en/ports/Makefile.inc) .include "../../en/ports/Makefile.inc" .endif -CVS_READONLY?= YES -CVS_OPT+= -Q -.if !empty(CVS_READONLY) -CVS_OPT+= -R -.endif - -# -# This hack is allows to build www/ tree for case when ports/ located -# in other repository, for example Repository of Translation Project -# -.if defined(PORTSCVSROOT) && !empty(PORTSCVSROOT) -CVS_OPT+= -d ${PORTSCVSROOT} -.endif +FETCH_OPT?= -am .if defined(PINDEX_OVERRIDE) ${INDEX}: ${PINDEX_OVERRIDE} ${CP} ${PINDEX_OVERRIDE} ${INDEX} -.elif defined(NOPORTSCVS) +.elif defined(NOPORTSNET) ${INDEX}: $${PORTSBASE}/${PINDEX} ${CP} ${PORTSBASE}/${PINDEX} ${INDEX} .else ${INDEX}: - ${CVS} ${CVS_OPT} co -p ${PINDEX} > ${INDEX} + ${FETCH} ${FETCH_OPT} ${INDEXURI} .endif # build the list of available packages only on the # main FreeBSD machines hostname!= hostname # # don't build the packages links if NO_PACKAGES_LINK # is set and not empty. # # XXX: you can set NO_PACKAGES_LINK to your hostname to # test the packages link generation # .if defined(NO_PACKAGES_LINK) && !empty(NO_PACKAGES_LINK) hostname= ${NO_PACKAGES_LINK} .endif packages.exists: .if ${hostname} == "hub.freebsd.org" || ${hostname} == "freefall.freebsd.org" || ${hostname} == "www.freebsd.org" .if exists(${.CURDIR}/../../en/ports/packages.exists) cp ${.CURDIR}/../../en/ports/${.TARGET} . .else @if ${SH} ${.CURDIR}/../../en/ports/packages > ${.TARGET}.temp; then \ ${MV} ${.TARGET}.temp ${.TARGET}; \ else \ ${RM} ${.TARGET}.temp; ${TOUCH} ${.TARGET}; \ fi; .endif .else ${TOUCH} ${.TARGET} .endif Makefile.gen: index.sgml .NOTMAIN ${ECHO_CMD} DOCS= *.sgml > Makefile.gen index.sgml: ${INDEX} categories packages.exists portindex ports.inc .NOTMAIN ${RM} -f *.sgml ${PORTINDEX} ${INDEX} ${.CURDIR} install: all beforeinstall all install clean: cd ${.CURDIR}; \ ${MAKE} ${MAKEFLAGS} -f ${.CURDIR}/Makefile.inc0 ${.TARGET} .if defined(WITH_PORTS_GROWTH) # Because We refer www/ports/growth/status.png on web site from ports.inc, # don't need to have local version of the image file. # cd growth; \ # ${MAKE} ${MAKEFLAGS} ${.TARGET} beforeinstall: .else beforeinstall: ${PERL} -pi -e 's/href=\"growth/href=\"http:\/\/www.FreeBSD.org\/ports\/growth/' index.html .endif .include "${WEB_PREFIX}/share/mk/web.site.mk" diff --git a/ru/ports/Makefile b/ru/ports/Makefile index 4b17935a14..7fe9b62b16 100644 --- a/ru/ports/Makefile +++ b/ru/ports/Makefile @@ -1,94 +1,81 @@ # # The FreeBSD Russian Documentation Project # -# $FreeBSD$ +# $FreeBSD: www/ru/ports/Makefile,v 1.7 2004/03/23 23:04:23 phantom Exp $ # $FreeBSDru: frdp/www/ru/ports/Makefile,v 1.9 2004/03/23 21:09:19 phantom Exp $ # # Original revision: 1.36 # .if exists(../Makefile.conf) .include "../Makefile.conf" .endif .if exists(../Makefile.inc) .include "../Makefile.inc" .endif .if exists(Makefile.inc) .include "Makefile.inc" .endif -CVS_READONLY?= YES -CVS_OPT+= -Q -.if !empty(CVS_READONLY) -CVS_OPT+= -R -.endif - -# -# This hack is allows to build www/ tree for case when ports/ located -# in other repository, for example Repository of Translation Project -# -.if defined(PORTSCVSROOT) && !empty(PORTSCVSROOT) -CVS_OPT+= -d ${PORTSCVSROOT} -.endif +FETCH_OPT?= -am -.if defined(NOPORTSCVS) +.if defined(NOPORTSNET) ${INDEX}: $${PORTSBASE}/${PINDEX} ${CP} ${PORTSBASE}/${PINDEX} ${INDEX} .else ${INDEX}: - ${CVS} ${CVS_OPT} co -p ${PINDEX} > ${INDEX} || \ - (${RM} -f ${INDEX} && false) + ${FETCH} ${FETCH_OPT} ${INDEXURI} || (${RM} -f ${INDEX} && false) .endif # build the list of available packages only on the # main FreeBSD machines hostname!= hostname # # don't build the packages links if NO_PACKAGES_LINK # is set and not empty. # # XXX: you can set NO_PACKAGES_LINK to your hostname to # test the packages link generation # .if defined(NO_PACKAGES_LINK) && !empty(NO_PACKAGES_LINK) hostname= ${NO_PACKAGES_LINK} .endif packages.exists: .if ${hostname} == "hub.freebsd.org" || ${hostname} == "freefall.freebsd.org" || ${hostname} == "www.freebsd.org" .if exists(${.CURDIR}/../../en/ports/packages.exists) ${CP} ${.CURDIR}/../../en/ports/${.TARGET} ${.CURDIR} .else @if ${SH} ${.CURDIR}/../../en/ports/packages > ${.TARGET}.temp; then \ ${MV} ${.TARGET}.temp ${.TARGET}; \ else \ ${RM} ${.TARGET}.temp; ${TOUCH} ${.TARGET}; \ fi; .endif .else ${TOUCH} ${.TARGET} .endif Makefile.gen: index.sgml .NOTMAIN ${ECHO_CMD} DOCS= *.sgml > Makefile.gen index.sgml: ${INDEX} categories packages.exists portindex ports.inc .NOTMAIN ${RM} -f *.sgml ${PORTINDEX} ${INDEX} ${.CURDIR} install: all beforeinstall all install clean: cd ${.CURDIR}; \ ${MAKE} ${MAKEFLAGS} -f ${.CURDIR}/Makefile.inc0 ${.TARGET} #.if defined(WITH_PORTS_GROWTH) # cd growth; \ # ${MAKE} ${MAKEFLAGS} ${.TARGET} #beforeinstall: #.else beforeinstall: ${PERL} -pi -e 's/href=\"growth/href=\"http:\/\/www.FreeBSD.org\/ports\/growth/' index.html #.endif .include "${WEB_PREFIX}/share/mk/web.site.mk" diff --git a/share/mk/web.site.mk b/share/mk/web.site.mk index 2c8e7eb879..0f3cb40ca4 100644 --- a/share/mk/web.site.mk +++ b/share/mk/web.site.mk @@ -1,370 +1,376 @@ # bsd.web.mk -# $FreeBSD: www/share/mk/web.site.mk,v 1.61 2004/06/27 06:22:31 hrs Exp $ +# $FreeBSD: www/share/mk/web.site.mk,v 1.62 2004/06/27 14:40:04 simon Exp $ # # Build and install a web site. # # Basic targets: # # all (default) -- performs batch mode processing necessary # install -- installs everything # clean -- remove anything generated by processing # .if exists(${.CURDIR}/../Makefile.inc) .include "${.CURDIR}/../Makefile.inc" .endif WEBDIR?= ${.CURDIR:T} CGIDIR?= ${.CURDIR:T} DESTDIR?= ${HOME}/public_html WEBOWN?= ${USER} WEBGRP?= www WEBMODE?= 664 CGIOWN?= ${USER} CGIGRP?= www CGIMODE?= 775 CP?= /bin/cp CVS?= /usr/bin/cvs ECHO_CMD?= echo +FETCH?= /usr/bin/fetch FIND?= /usr/bin/find SETENV?= /usr/bin/env LN?= /bin/ln MKDIR?= /bin/mkdir MV?= /bin/mv PERL?= /usr/bin/perl5 .if !exists(${PERL}) && exists(/usr/local/bin/perl5) PERL= /usr/local/bin/perl5 .endif RM?= /bin/rm SED?= /usr/bin/sed SH?= /bin/sh SORT?= /usr/bin/sort TOUCH?= /usr/bin/touch TRUE?= /usr/bin/true LOCALBASE?= /usr/local PREFIX?= ${LOCALBASE} .if !defined(OPENJADE) SGMLNORM?= ${PREFIX}/bin/sgmlnorm .else SGMLNORM?= ${PREFIX}/bin/osgmlnorm .endif CATALOG?= ${PREFIX}/share/sgml/html/catalog SGMLNORMOPTS?= -d ${SGMLNORMFLAGS} -c ${CATALOG} -D ${.CURDIR} XSLTPROC?= ${PREFIX}/bin/xsltproc XSLTPROCOPTS?= ${XSLTPROCFLAGS} TIDY?= ${PREFIX}/bin/tidy .if defined(TIDY_VERBOSE) _TIDYLOGFILE= tidyerr.${.TARGET} CLEANFILES+= tidyerr.* .else _TIDYLOGFILE= /dev/null .endif TIDYOPTS?= -i -m -raw -preserve -f ${_TIDYLOGFILE} -asxml ${TIDYFLAGS} HTML2TXT?= ${PREFIX}/bin/w3m HTML2TXTOPTS?= -dump ${HTML2TXTFLAGS} ISPELL?= ispell ISPELLOPTS?= -l -p /usr/share/dict/freebsd ${ISPELLFLAGS} WEBCHECK?= ${PREFIX}/bin/webcheck WEBCHECKOPTS?= -ab ${WEBCHECKFLAGS} WEBCHECKDIR?= /webcheck WEBCHECKINSTALLDIR?= ${DESTDIR}${WEBCHECKDIR} .if !defined(WEBCHECKURL) WEBCHECKURL!= ${ECHO_CMD} http://www.FreeBSD.org/${WEBBASE:S/data//}/${WEBDIR:S/data//}/ | ${SED} -E "s%/+%/%g" .endif # # Install dirs derived from the above. # DOCINSTALLDIR= ${DESTDIR}${WEBBASE}/${WEBDIR} CGIINSTALLDIR= ${DESTDIR}${WEBBASE}/${CGIDIR} # # The orphan list contains sources specified in DOCS that there # is no transform rule for. We start out with all of them, and # each rule below removes the ones it knows about. If any are # left over at the end, the user is warned about them and build # breaks. # ORPHANS:= ${DOCS} # # Tell install(1) to always copy file being installed. # COPY= -C # # Where the ports live, if CVS isn't used (ie. NOPORTSCVS is defined) # PORTSBASE?= /usr +# +# URL where INDEX can be found (define NOPORTSNET to disable) +# +INDEXURI?= http://www.FreeBSD.org/ports/INDEX + # # Instruct bsd.subdir.mk to NOT to process SUBDIR directive. It is not # neccessary since web.site.mk do it using own rules. # NO_SUBDIR= YES # # for dependency # .if !defined(WITHOUT_DOC) # # When WITHOUT_DOC is not defined, we use doc.common.mk. # DOC_PREFIX?= ${WEB_PREFIX}/../doc .if exists(${DOC_PREFIX}/share/mk/doc.common.mk) .include "${DOC_PREFIX}/share/mk/doc.common.mk" .else .error ${DOC_PREFIX}/share/mk/doc.common.mk not found.\ Define $$WITHOUT_DOC for building without the doc/ module. .endif .else # !defined(WITHOUT_DOC) # # When WITHOUT_DOC is defined, we should not use files in doc/ module at all. # .if !defined(WWW_LANGCODE) || empty(WWW_LANGCODE) _WEB_PREFIX!= realpath ${WEB_PREFIX} WWW_LANGCODE:= ${.CURDIR:S,^${_WEB_PREFIX}/,,:C,^([^/]+)/.*,\1,} .undef _WEB_PREFIX .endif .endif # !defined(WITHOUT_DOC) XML_ADVISORIES?= ${WEB_PREFIX}/share/sgml/advisories.xml XML_NOTICES?= ${WEB_PREFIX}/share/sgml/notices.xml XML_NEWS_NEWS_MASTER= ${WEB_PREFIX}/en/news/news.xml XML_NEWS_NEWS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/news.xml XML_NEWS_PRESS_MASTER= ${WEB_PREFIX}/en/news/press.xml XML_NEWS_PRESS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/press.xml XML_NEWS_INCLUDES_MASTER= ${WEB_PREFIX}/en/news/includes.xsl XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl XML_NAVIGATION= ${WEB_PREFIX}/${WWW_LANGCODE}/navigation.xml XML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.xsl XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.header.xsl XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.misc.xsl XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.release.xsl XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/transtable-common.xsl XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.xsl SGML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.sgml SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.header.sgml SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.misc.sgml SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.release.sgml SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.sgml ################################################################## # Transformation rules ### # file.sgml --> file.html # # Runs file.sgml through spam to validate and expand some entity # references are expanded. file.html is added to the list of # things to install. .SUFFIXES: .sgml .html .if defined(REVCHECK) PREHTML?= ${WEB_PREFIX}/ja/prehtml CANONPREFIX0!= cd ${WEB_PREFIX}; ${ECHO_CMD} $${PWD}; CANONPREFIX= ${PWD:S/^${CANONPREFIX0}//:S/^\///} LOCALTOP!= ${ECHO_CMD} ${CANONPREFIX} | \ ${PERL} -pe 's@[^/]+@..@g; $$_.="/." if($$_ eq".."); s@^\.\./@@;' DIR_IN_LOCAL!= ${ECHO_CMD} ${CANONPREFIX} | ${PERL} -pe 's@^[^/]+/?@@;' PREHTMLOPTS?= -revcheck "${LOCALTOP}" "${DIR_IN_LOCAL}" ${PREHTMLFLAGS} .else DATESUBST?= 's///' PREHTML?= ${SED} -e ${DATESUBST} .endif GENDOCS+= ${DOCS:M*.sgml:S/.sgml$/.html/g} ORPHANS:= ${ORPHANS:N*.sgml} .sgml.html: ${SGML_INCLUDES} ${PREHTML} ${PREHTMLOPTS} ${.IMPSRC} | \ ${SETENV} SGML_CATALOG_FILES= \ ${SGMLNORM} ${SGMLNORMOPTS} > ${.TARGET} || \ (${RM} -f ${.TARGET} && false) .if !defined(NO_TIDY) -${TIDY} ${TIDYOPTS} ${.TARGET} .endif ################################################################## # Special Targets # # Spellcheck all generated documents in the current directory. # spellcheck: .for _entry in ${GENDOCS} @echo "Spellcheck ${_entry}" @${HTML2TXT} ${HTML2TXTOPTS} ${.OBJDIR}/${_entry} | ${ISPELL} ${ISPELLOPTS} .endfor # # Check installed page's hypertext references. Checking is done relatively # to ${.CURDIR} value, i.e. calling 'make webcheck' in www/ru/java # directory will force checking all URLs at http://www.FreeBSD.org/ru/java/ # # NOTE: webcheck's output always stored to ${DESTDIR}/webcheck directory. # webcheck: @[ -d ${WEBCHECKINSTALLDIR} ] || ${MKDIR} ${WEBCHECKINSTALLDIR} ${WEBCHECK} ${WEBCHECKOPTS} -o ${WEBCHECKINSTALLDIR} ${WEBCHECKURL} # # Check if all directories and files in current directory are listed in # Makefile as processing source. If anything not listed is found, then # user is warned about (it can be forgotten file or directory). # .if make(checkmissing) # skip printing '===> ...' while processing SUBDIRs ECHODIR= ${TRUE} # detect relative ${.CURDIR} _CURDIR!= realpath ${.CURDIR} _PFXDIR!= realpath ${WEB_PREFIX} CDIR= ${_CURDIR:S/${_PFXDIR}\///} # populate missing directories list based on $SUBDIR _DIREXCL= ! -name CVS .for entry in ${SUBDIR} _DIREXCL+= ! -name ${entry} .endfor MISSDIRS!= ${FIND} ./ -type d ${_DIREXCL} -maxdepth 1 | ${SED} "s%./%%g" # populate missing files list based on $DOCS, $DATA and $CGI _FILEEXCL= ! -name Makefile\* ! -name includes.\* .for entry in ${DOCS} ${DATA} ${CGI} _FILEEXCL+= ! -name ${entry} .endfor MISSFILES!= ${FIND} ./ -type f ${_FILEEXCL} -maxdepth 1 | ${SED} "s%./%%g" checkmissing: _PROGSUBDIR .if !empty(MISSDIRS) @${ECHO_CMD} "===> ${CDIR}" @${ECHO_CMD} "Directories not listed in SUBDIR:" .for entry in ${MISSDIRS} @${ECHO_CMD} " >>> ${entry}" .endfor .endif .if !empty(MISSFILES) @${ECHO_CMD} "===> ${CDIR}" @${ECHO_CMD} "Files not listed in DOCS/DATA/CGI:" .for entry in ${MISSFILES} @${ECHO_CMD} " >>> ${entry} " .endfor .endif .endif ################################################################## # Main Targets # # If no target is specified, .MAIN is made. # .MAIN: all # # Build most everything. # all: ${COOKIE} orphans ${GENDOCS} ${DATA} ${CGI} _PROGSUBDIR # # Warn about anything in DOCS that has no suffix translation rule. # .if !empty(ORPHANS) orphans: @${ECHO} Warning! I don\'t know what to do with: ${ORPHANS}; \ exit 1 .else orphans: .endif # # Clean things up. # .if !target(clean) clean: _PROGSUBDIR ${RM} -f Errs errs mklog ${GENDOCS} ${CLEANFILES} .endif # # Install targets: before, real, and after. # .if !target(install) .if !target(beforeinstall) beforeinstall: .endif .if !target(afterinstall) afterinstall: .endif INSTALL_WEB?= \ ${INSTALL} ${COPY} ${INSTALLFLAGS} \ -o ${WEBOWN} -g ${WEBGRP} -m ${WEBMODE} INSTALL_CGI?= \ ${INSTALL} ${COPY} ${INSTALLFLAGS} \ -o ${CGIOWN} -g ${CGIGRP} -m ${CGIMODE} _ALLINSTALL+= ${GENDOCS} ${DATA} realinstall: ${COOKIE} ${_ALLINSTALL} ${CGI} _PROGSUBDIR .if !empty(_ALLINSTALL) @${MKDIR} -p ${DOCINSTALLDIR} .for entry in ${_ALLINSTALL} .if exists(${.CURDIR}/${entry}) ${INSTALL_WEB} ${.CURDIR}/${entry} ${DOCINSTALLDIR} .else ${INSTALL_WEB} ${entry} ${DOCINSTALLDIR} .endif .endfor .if defined(INDEXLINK) && !empty(INDEXLINK) cd ${DOCINSTALLDIR}; ${LN} -fs ${INDEXLINK} index.html .endif .endif .if defined(CGI) && !empty(CGI) @${MKDIR} -p ${CGIINSTALLDIR} .for entry in ${CGI} ${INSTALL_CGI} ${.CURDIR}/${entry} ${CGIINSTALLDIR} .endfor .endif # Set up install dependencies so they happen in the correct order. install: afterinstall afterinstall: realinstall2 realinstall: beforeinstall realinstall2: realinstall .endif # # This recursively calls make in subdirectories. # _PROGSUBDIR: .USE .if defined(SUBDIR) && !empty(SUBDIR) .for entry in ${SUBDIR} @${ECHODIR} "===> ${DIRPRFX}${entry}" @cd ${.CURDIR}/${entry}; \ ${MAKE} ${.TARGET:S/realinstall/install/:S/.depend/depend/} \ DIRPRFX=${DIRPRFX}${entry}/ .endfor .endif .include # # Process 'make obj' recursively (should be declared *after* inclusion # of bsd.obj.mk) # obj: _PROGSUBDIR # THE END