Makefile revision 1.27
11.27Sross# $NetBSD: Makefile,v 1.27 2004/02/06 00:06:53 ross Exp $ 21.1Stv 31.1StvMODULE= groff 41.1Stv 51.1StvALL_TARGET= src/include all 61.24SlukemMAKE_ARGS= bindir=${TOOLDIR}/lib/groff MAKEINFO=${TOOL_MAKEINFO:Q} \ 71.24Slukem INSTALL_INFO=${TOOL_INSTALL_INFO:Q} 81.6Sjmc 91.6SjmcTMACDIR= ${TOOLDIR}/share/groff/tmac 101.19SwizSITETMACDIR= ${TOOLDIR}/share/groff/site-tmac 111.2Stv 121.2Stv# Add gnuwrap hack directly to the Makefile. 131.2Stv_NOWRAPPER=1 141.14Spk 151.14Spk# Fixup build/Makefile. 161.14Spk# XXX - the groff distribution Makefiles don't get their dependencies right. 171.14Spk# We use internal knowledge to specify additional target ordering. 181.14Spk# This can be removed once our own make(1) can be invoked in true 191.14Spk# sequential (i.e. compatible) mode again for subdir makes. 201.14Spk# 211.21Smartin.configure_done: _post_conf 221.21Smartin_post_conf: .USE 231.21Smartin @(echo '.include "${.CURDIR}/../Makefile.gnuwrap"'; \ 241.21Smartin echo '.ORDER: $$(ALLDIRS) dot';\ 251.21Smartin echo '.ORDER: all install' ) >> build/Makefile 261.14Spk 271.1Stv 281.27Sross 291.1Stv.include "${.CURDIR}/../Makefile.gnuhost" 301.27SrossCOMPATOBJ!= cd ${.CURDIR}/../compat && ${PRINTOBJDIR} 311.27Sross.-include "${COMPATOBJ}/defs.mk" 321.1Stv 331.19Swiz.PATH: ${.CURDIR}/../../share/tmac ${.CURDIR}/../../gnu/usr.bin/groff/tmac 341.1Stv 351.9Stv_installtmac: .USE 361.23Slukem.if ${MKUPDATE} != "no" 371.9Stv @if ! cmp ${.ALLSRC} ${.TARGET} >/dev/null 2>&1; then \ 381.9Stv echo ${HOST_INSTALL_FILE:Q} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET}; \ 391.9Stv ${HOST_INSTALL_FILE} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET}; \ 401.1Stv fi 411.1Stv.else 421.9Stv ${HOST_INSTALL_FILE} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET} 431.1Stv.endif 441.9Stv 451.15Spk# 461.15Spk# Since ${TMACDIR} is created by the `realinstall' target, the `afterinstall' 471.15Spk# sources below that depend on it must wait until `realinstall' is done. 481.15Spk# 491.19Swiz#.for F in an andoc doc doc-ditroff doc-common doc-nroff doc-syms html html-end man man.local mdoc mdoc.local 501.19Swiz.for F in doc2html 511.19Swizafterinstall: ${TMACDIR}/${F}.tmac 521.19Swiz.PHONY: ${TMACDIR}/${F}.tmac 531.19Swiz${TMACDIR}/${F}.tmac: ${F} _installtmac 541.19Swiz.ORDER: realinstall ${TMACDIR}/${F}.tmac 551.19Swiz.endfor 561.19Swiz.for F in man.local mdoc.local 571.19Swizafterinstall: ${SITETMACDIR}/${F} 581.19Swiz.PHONY: ${SITETMACDIR}/${F} 591.25Swiz${SITETMACDIR}/${F}: ${F}-s _installtmac 601.19Swiz.ORDER: realinstall ${SITETMACDIR}/${F} 611.26SlukemCLEANFILES+=${F}-s 621.25Swiz${F}-s: ${F} 631.25Swiz sed -f ${.CURDIR}/../../gnu/dist/groff/tmac/strip.sed ${.ALLSRC} > ${.TARGET} 641.1Stv.endfor 651.4Stv 661.12Stv# The silly walk below is because sometimes the files begin with "g", 671.12Stv# and sometimes not, depending on what the host tool has at build time. 681.12Stv 691.12Stvafterinstall: install.grofflinks 701.15Spk.ORDER: realinstall install.grofflinks 711.12Stvinstall.grofflinks: 721.13Stv @cd ${.CURDIR} && ${MAKE} install.grofflinks.recurse 731.13Stv 741.27Sross.for F in eqn groff indxbib pic refer soelim tbl 751.27Srossinstall.grofflinks.recurse: ${TOOLDIR}/bin/${_TOOL_PREFIX}${F}${HOSTEXEEXT} 761.27Sross.if exists(${TOOLDIR}/lib/groff/g${F}${HOSTEXEEXT}) 771.27Sross${TOOLDIR}/bin/${_TOOL_PREFIX}${F}${HOSTEXEEXT}: ${TOOLDIR}/lib/groff/g${F}${HOSTEXEEXT} 781.27Sross.else 791.27Sross${TOOLDIR}/bin/${_TOOL_PREFIX}${F}${HOSTEXEEXT}: ${TOOLDIR}/lib/groff/${F}${HOSTEXEEXT} 801.27Sross.endif 811.27Sross ln -f ${.ALLSRC} ${.TARGET} 821.27Sross.endfor 831.27Sross 841.27Sross.for F in nroff 851.16Sthorpejinstall.grofflinks.recurse: ${TOOLDIR}/bin/${_TOOL_PREFIX}${F} 861.12Stv.if exists(${TOOLDIR}/lib/groff/g${F}) 871.16Sthorpej${TOOLDIR}/bin/${_TOOL_PREFIX}${F}: ${TOOLDIR}/lib/groff/g${F} 881.12Stv.else 891.16Sthorpej${TOOLDIR}/bin/${_TOOL_PREFIX}${F}: ${TOOLDIR}/lib/groff/${F} 901.12Stv.endif 911.4Stv ln -f ${.ALLSRC} ${.TARGET} 921.4Stv.endfor 93