diff options
Diffstat (limited to 'mk')
-rw-r--r-- | mk/Makefile | 10 | ||||
-rw-r--r-- | mk/mkc.init.mk | 15 | ||||
-rw-r--r-- | mk/mkc_imp.arch.mk | 16 | ||||
-rw-r--r-- | mk/mkc_imp.dep.mk | 33 | ||||
-rw-r--r-- | mk/mkc_imp.files.mk | 17 | ||||
-rw-r--r-- | mk/mkc_imp.final.mk | 23 | ||||
-rw-r--r-- | mk/mkc_imp.inc.mk | 9 | ||||
-rw-r--r-- | mk/mkc_imp.info.mk | 17 | ||||
-rw-r--r-- | mk/mkc_imp.intexts.mk | 3 | ||||
-rw-r--r-- | mk/mkc_imp.lib.mk | 12 | ||||
-rw-r--r-- | mk/mkc_imp.links.mk | 5 | ||||
-rw-r--r-- | mk/mkc_imp.man.mk | 16 | ||||
-rw-r--r-- | mk/mkc_imp.mk | 38 | ||||
-rw-r--r-- | mk/mkc_imp.pkg-config.mk | 6 | ||||
-rw-r--r-- | mk/mkc_imp.platform.sys.mk | 13 | ||||
-rw-r--r-- | mk/mkc_imp.prog.mk | 9 | ||||
-rw-r--r-- | mk/mkc_imp.scripts.mk | 16 | ||||
-rw-r--r-- | mk/mkc_imp.subprj.mk | 3 |
18 files changed, 124 insertions, 137 deletions
diff --git a/mk/Makefile b/mk/Makefile index e3ba4e2..90d43e2 100644 --- a/mk/Makefile +++ b/mk/Makefile @@ -24,16 +24,16 @@ MKC_CHECK_PROGS += makedepend .include <mkc.configure.mk> -.if ${HAVE_PROG.makedepend:U0} -makedepend_cmd = ${PROG.makedepend} -mkdep_cmd = mkdep -mkdep_type = makedepend -.elif !empty(CUSTOM.prog_nbmkdep) +.if !empty(CUSTOM.prog_nbmkdep) mkdep_cmd = ${CUSTOM.prog_nbmkdep} mkdep_type = nbmkdep .elif !empty(CUSTOM.prog_mkdep) mkdep_cmd = ${CUSTOM.prog_mkdep} mkdep_type = mkdep +.elif ${HAVE_PROG.makedepend:U0} +makedepend_cmd = ${PROG.makedepend} +mkdep_cmd = mkdep +mkdep_type = makedepend .else MKC_ERR_MSG += "mkdep(1) cannot be found" .endif diff --git a/mk/mkc.init.mk b/mk/mkc.init.mk index 3196242..7d7339f 100644 --- a/mk/mkc.init.mk +++ b/mk/mkc.init.mk @@ -283,13 +283,13 @@ DISTCLEANFILES += ${MKC_CACHEDIR}/_mkc_* ###### .if ${MKPIE:U:tl} == "yes" LDFLAGS.prog += ${LDFLAGS.pie} -CFLAGS += ${CFLAGS.pie} -CXXFLAGS += ${CXXFLAGS.pie} +_CFLAGS.pie += ${CFLAGS.pie} +_CXXFLAGS.pie += ${CXXFLAGS.pie} .endif .if ${USE_SSP:U:tl} == "yes" -CFLAGS += ${CFLAGS.ssp} -CXXFLAGS += ${CXXFLAGS.ssp} +_CFLAGS.ssp = ${CFLAGS.ssp} +_CXXFLAGS.ssp = ${CXXFLAGS.ssp} .endif .if ${USE_RELRO:U:tl} == "yes" @@ -325,12 +325,12 @@ MESSAGE.s ?= @${_MESSAGE} "AS: ${.IMPSRC}" CC ?= cc CFLAGS ?= -COMPILE.c ?= ${_V} ${CC_PREFIX} ${CC} ${CFLAGS} ${CPPFLAGS} ${CFLAGS.warnerr} -c +COMPILE.c ?= ${_V} ${CC_PREFIX} ${CC} ${CFLAGS} ${CPPFLAGS} ${_CFLAGS.ssp} ${_CFLAGS.pie} ${CFLAGS.warns} -c MESSAGE.c ?= @${_MESSAGE} "CC: ${.IMPSRC}" CXX ?= c++ CXXFLAGS += ${CFLAGS} -COMPILE.cc ?= ${_V} ${CXX_PREFIX} ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${CFLAGS.warnerr} -c +COMPILE.cc ?= ${_V} ${CXX_PREFIX} ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${_CXXFLAGS.ssp} ${_CXXFLAGS.pie} ${CXXFLAGS.warns} -c MESSAGE.cc ?= @${_MESSAGE} "CXX: ${.IMPSRC}" OBJC ?= ${CC} @@ -438,6 +438,9 @@ TARGETS += all install clean cleandir depend test \ installdirs uninstall errorcheck filelist obj TARGETS := ${TARGETS:O:u} +ALLTARGETS += all install clean cleandir depend uninstall installdirs \ + bin_tar bin_targz bin_tarbz2 bin_zip bin_deb + VERBOSE_ECHO ?= echo .endif # __initialized__ diff --git a/mk/mkc_imp.arch.mk b/mk/mkc_imp.arch.mk index fda3999..30554ad 100644 --- a/mk/mkc_imp.arch.mk +++ b/mk/mkc_imp.arch.mk @@ -1,4 +1,4 @@ -# Copyright (c) 2010 by Aleksey Cheusov +# Copyright (c) 2010-2014 by Aleksey Cheusov # # See LICENSE file in the distribution. ############################################################ @@ -10,27 +10,25 @@ rnd != echo $$$$ destdir = ${TMPDIR:U/tmp}/mkc.${rnd} basefile = ${.CURDIR}/${PROJECTNAME} -.PHONY: bin_cleanup bin_tar bin_targz bin_tarbz2 - -bin_cleanup: +bin_cleanup: .PHONY set -e; ${RM} -rf ${destdir}; ${MKDIR} -m 0700 ${destdir}; \ ${MAKE} ${MAKEFLAGS} all install DESTDIR=${destdir} -bin_tar: bin_cleanup +realdo_bin_tar: bin_cleanup set -e; ${RM} -f ${basefile}.tar; cd ${destdir}; \ ${TAR} -cf ${basefile}.tar .; cd /; ${RM} -rf ${destdir} -bin_targz: bin_tar +realdo_bin_targz: bin_tar ${GZIP} ${basefile}.tar -bin_tarbz2: bin_tar +realdo_bin_tarbz2: bin_tar ${BZIP2} ${basefile}.tar -bin_zip: bin_cleanup +realdo_bin_zip: bin_cleanup set -e; ${RM} -f ${basefile}.zip; cd ${destdir}; \ ${ZIP} -r ${basefile}.zip .; ${RM} -rf ${destdir} -bin_deb: DEBIAN/control bin_cleanup +realdo_bin_deb: DEBIAN/control bin_cleanup set -e; cp -rp DEBIAN ${destdir}; ${RM} -rf ${destdir}/DEBIAN/CVS; \ dpkg-deb -b ${destdir} ${.CURDIR:T:S/_/-/g}.deb; \ ${RM} -rf ${destdir} diff --git a/mk/mkc_imp.dep.mk b/mk/mkc_imp.dep.mk index bf5c512..85ee413 100644 --- a/mk/mkc_imp.dep.mk +++ b/mk/mkc_imp.dep.mk @@ -8,15 +8,13 @@ _MKC_IMP_DEP_MK := 1 DISTCLEANFILES += .depend ${__DPSRCS.d} ${CLEANDEPEND} ##### Basic targets -.PHONY: _beforedepend depend -_beforedepend .depend: # ensure existence - -.ORDER: _beforedepend .depend -depend: _beforedepend .depend +do_depend1 do_depend2: .PHONY # ensure existence +realdo_depend: do_depend1 .WAIT do_depend2 ##### Default values MKDEP ?= mkdep MKDEP_SUFFIXES ?= .o .os .op +MKDEP_CC ?= ${CC} ##### Build rules # some of the rules involve .h sources, so remove them from mkdep line @@ -27,7 +25,8 @@ __DPSRCS.all = ${_SRCS_ALL:C/\.(c|m|s|S|C|cc|cpp|cxx)$/.d/} \ __DPSRCS.d = ${__DPSRCS.all:O:u:M*.d} __DPSRCS.notd = ${__DPSRCS.all:O:u:N*.d} -_beforedepend: ${DPSRCS} +do_depend1: ${DPSRCS} +do_depend2: .depend MESSAGE.dep ?= @${_MESSAGE} "DEP: ${.TARGET}" @@ -44,22 +43,22 @@ ddash= .endif .if ${MKDEP_TYPE:U} == "makedepend" -MKDEP.c = @${MAKEDEPEND} -f- ${ddash} ${MKDEPFLAGS} \ +MKDEP.c = ${MAKEDEPEND} -f- ${ddash} ${MKDEPFLAGS} \ ${CFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} > ${.TARGET} -MKDEP.m = @${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ +MKDEP.m = ${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ ${OBJCFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} > ${.TARGET} -MKDEP.cc = @${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ +MKDEP.cc = ${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ ${CXXFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} > ${.TARGET} -MKDEP.s = @${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ +MKDEP.s = ${MKDEP} -f- ${ddash} ${MKDEPFLAGS} \ ${AFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} > ${.TARGET} .else -MKDEP.c = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ +MKDEP.c = ${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ ${CFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} -MKDEP.m = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ +MKDEP.m = ${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ ${OBJCFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} -MKDEP.cc = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ +MKDEP.cc = ${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ ${CXXFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} -MKDEP.s = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ +MKDEP.s = ${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ ${AFLAGS:C/-([IDU])[ ]*/-\1/Wg:M-[IDU]*} ${CPPFLAGS} .endif @@ -76,7 +75,7 @@ MKDEP.s = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ .c.d: ${MESSAGE.dep} - @${MKDEP.c} ${.IMPSRC} + @env CC=${MKDEP_CC} ${MKDEP.c} ${.IMPSRC} .m.d: ${MESSAGE.dep} @@ -84,11 +83,11 @@ MKDEP.s = @${MKDEP} -f ${.TARGET} ${ddash} ${MKDEPFLAGS} \ .s.d .S.d: ${MESSAGE.dep} - @${MKDEP.s} ${.IMPSRC} + @env CC=${MKDEP_CC} ${MKDEP.s} ${.IMPSRC} .C.d .cc.d .cpp.d .cxx.d: ${MESSAGE.dep} - @${MKDEP.cc} ${.IMPSRC} + @env CC=${MKDEP_CC} ${MKDEP.cc} ${.IMPSRC} .endif # defined(SRCS) diff --git a/mk/mkc_imp.files.mk b/mk/mkc_imp.files.mk index e1cb16f..40c9f53 100644 --- a/mk/mkc_imp.files.mk +++ b/mk/mkc_imp.files.mk @@ -1,4 +1,4 @@ -# Copyright (c) 2009-2010 by Aleksey Cheusov +# Copyright (c) 2009-2014 by Aleksey Cheusov # Copyright (c) 1994-2009 The NetBSD Foundation, Inc. # Copyright (c) 1988, 1989, 1993 The Regents of the University of California # Copyright (c) 1988, 1989 by Adam de Boor @@ -10,14 +10,15 @@ .if !defined(_BSD_FILES_MK) _BSD_FILES_MK := 1 +filesinstall: .PHONY # ensure existence + .include <mkc.init.mk> -.PHONY: filesinstall -realinstall: filesinstall +do_install1: .PHONY filesinstall .if defined(FILES) && !empty(FILES) -realall: ${FILES} +realdo_all: ${FILES} .if ${MKINSTALL:tl} == "yes" destination_files = ${FILES:@F@${DESTDIR}${FILESDIR_${F}:U${FILESDIR}}/${FILESNAME_${F}:U${FILESNAME:U${F:T}}}@} @@ -28,8 +29,8 @@ filesinstall: ${destination_files} __fileinstall: .USE ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} \ - -o ${FILESOWN_${.ALLSRC:T}:U${FILESOWN}} \ - -g ${FILESGRP_${.ALLSRC:T}:U${FILESGRP}} \ + -o ${FILESOWN_${.ALLSRC:T}:U${FILESOWN}:Q} \ + -g ${FILESGRP_${.ALLSRC:T}:U${FILESGRP}:Q} \ -m ${FILESMODE_${.ALLSRC:T}:U${FILESMODE}} \ ${.ALLSRC} ${.TARGET} @@ -42,8 +43,4 @@ INSTALLDIRS += ${destination_files:H} .endif # MKINSTALL .endif # FILES -.if !target(filesinstall) -filesinstall: -.endif - .endif # _BSD_FILES_MK diff --git a/mk/mkc_imp.final.mk b/mk/mkc_imp.final.mk index 1b96da3..02fb20d 100644 --- a/mk/mkc_imp.final.mk +++ b/mk/mkc_imp.final.mk @@ -29,11 +29,9 @@ export_cmd += MAKEOBJDIR=${.OBJDIR}/${.TARGET:C/^.*-//}; \ .endif ########## -.if !commands(clean) -clean: mkc_clean -.endif +realdo_clean: mkc_clean -mkc_clean: +mkc_clean: .PHONY .if ${CLEANFILES:U} != "" -${CLEANFILES_CMD} ${CLEANFILES} .endif @@ -43,9 +41,8 @@ mkc_clean: ##### distclean: cleandir -.if !commands(cleandir) -cleandir: mkc_cleandir -.endif + +realdo_cleandir: mkc_cleandir mkc_cleandir: .if ${CLEANFILES:U} != "" || ${DISTCLEANFILES:U} != "" @@ -56,5 +53,17 @@ mkc_cleandir: .endif ########## +# pre_, do_, post_ targets +.for t in ${ALLTARGETS} +${t}: pre_${t} .WAIT do_${t} .WAIT post_${t} +pre_${t} do_${t} realdo_${t} post_${t}: .PHONY # ensure existence +.if !commands(do_${t}) +do_${t}: realdo_${t} +.endif +.endfor + +${TARGETS}: .PHONY + +########## .endif # MKC_IMP.FINAL.MK diff --git a/mk/mkc_imp.inc.mk b/mk/mkc_imp.inc.mk index 0f0a8ba..49e0f6a 100644 --- a/mk/mkc_imp.inc.mk +++ b/mk/mkc_imp.inc.mk @@ -7,9 +7,8 @@ # See LICENSE file in the distribution. ############################################################ -.PHONY: incinstall -realinstall: incinstall -incinstall: # ensure existence +do_install1: incinstall +incinstall: .PHONY # ensure existence .if defined(INCS) INCSSRCDIR ?= . @@ -24,8 +23,8 @@ incinstall: ${destination_incs} __incinstall: .USE ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} \ - -o ${BINOWN} \ - -g ${BINGRP} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET} + -o ${BINOWN:Q} \ + -g ${BINGRP:Q} -m ${NONBINMODE} ${.ALLSRC} ${.TARGET} .for I in ${INCS:O:u} ${DESTDIR}${INCSDIR}/$I: ${"${INCSSRCDIR}" != ".":?${INCSSRCDIR}/$I:$I} __incinstall diff --git a/mk/mkc_imp.info.mk b/mk/mkc_imp.info.mk index 3a97ca5..7d3976d 100644 --- a/mk/mkc_imp.info.mk +++ b/mk/mkc_imp.info.mk @@ -10,14 +10,14 @@ .if !defined(_MKC_IMP_INFO_MK) && defined(TEXINFO) _MKC_IMP_INFO_MK := 1 +infoinstall: .PHONY + .include <mkc.init.mk> MAKEINFO ?= makeinfo INFOFLAGS ?= INSTALL_INFO ?= install-info -.PHONY: infoinstall - .SUFFIXES: .txi .texi .texinfo .info MESSAGE.texinfo ?= @${_MESSAGE} "TEXINFO: ${.TARGET}" @@ -27,32 +27,33 @@ MESSAGE.texinfo ?= @${_MESSAGE} "TEXINFO: ${.TARGET}" ${_V}${MAKEINFO} ${INFOFLAGS} --no-split -o $@ $< .if defined(TEXINFO) && !empty(TEXINFO) -realall: ${TEXINFO} +realdo_all: ${TEXINFO} + INFOFILES = ${TEXINFO:S/.texinfo/.info/g:S/.texi/.info/g:S/.txi/.info/g} .NOPATH: ${INFOFILES} .if ${MKINFO:tl} != "no" -realall: ${INFOFILES} +realdo_all: ${INFOFILES} CLEANFILES += ${INFOFILES} destination_infos = ${INFOFILES:@F@${DESTDIR}${INFODIR_${F}:U${INFODIR}}/${INFONAME_${F}:U${INFONAME:U${F:T}}}@} -infoinstall:: ${destination_infos} +infoinstall: ${destination_infos} .PRECIOUS: ${destination_infos} .PHONY: ${destination_infos} __infoinstall: .USE ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} \ - -o ${INFOOWN_${.ALLSRC:T}:U${INFOOWN}} \ - -g ${INFOGRP_${.ALLSRC:T}:U${INFOGRP}} \ + -o ${INFOOWN_${.ALLSRC:T}:U${INFOOWN}:Q} \ + -g ${INFOGRP_${.ALLSRC:T}:U${INFOGRP}:Q} \ -m ${INFOMODE_${.ALLSRC:T}:U${INFOMODE}} \ ${.ALLSRC} ${.TARGET} @${INSTALL_INFO} --remove --info-dir=${DESTDIR}${INFODIR} ${.TARGET} ${INSTALL_INFO} --info-dir=${DESTDIR}${INFODIR} ${.TARGET} .if ${MKINSTALL:tl} == "yes" -realinstall: infoinstall +do_install1: infoinstall .for F in ${INFOFILES:O:u} ${DESTDIR}${INFODIR_${F}:U${INFODIR}}/${INFONAME_${F}:U${INFONAME:U${F:T}}}: ${F} __infoinstall .endfor # F diff --git a/mk/mkc_imp.intexts.mk b/mk/mkc_imp.intexts.mk index cdfb2a4..225b17d 100644 --- a/mk/mkc_imp.intexts.mk +++ b/mk/mkc_imp.intexts.mk @@ -46,7 +46,8 @@ ${i:T} : ${i}.in .endfor CLEANFILES += ${INSCRIPTS:T} ${INFILES:T} -realall: ${INSCRIPTS:T} ${INFILES:T} + +realdo_all: ${INSCRIPTS:T} ${INFILES:T} ###################################################################### .endif # _MKC_IMP_INTEXTS_MK diff --git a/mk/mkc_imp.lib.mk b/mk/mkc_imp.lib.mk index 2ff6ab4..c5ea8d4 100644 --- a/mk/mkc_imp.lib.mk +++ b/mk/mkc_imp.lib.mk @@ -12,7 +12,7 @@ _MKC_IMP_LIB_MK := 1 .PHONY: libinstall .if ${MKINSTALL:tl} == "yes" -realinstall: libinstall +do_install1: libinstall INSTALLDIRS += ${DESTDIR}${LIBDIR} UNINSTALLFILES += ${UNINSTALLFILES.lib} .endif # MKINSTALL @@ -67,7 +67,7 @@ _LIBS += ${SHLIBFN} .NOPATH: ${_LIBS} -realall: ${SRCS} ${_LIBS} +realdo_all: ${SRCS} ${_LIBS} _SRCS_ALL = ${SRCS} @@ -78,8 +78,8 @@ __archivebuild: .USE ${RANLIB} ${.TARGET} __archiveinstall: .USE - ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o ${LIBOWN} \ - -g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${.TARGET} + ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o ${LIBOWN:Q} \ + -g ${LIBGRP:Q} -m ${LIBMODE} ${.ALLSRC} ${.TARGET} DPSRCS += ${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c} CLEANFILES += ${DPSRCS} @@ -166,8 +166,8 @@ UNINSTALLFILES.lib += ${DESTDIR}${LIBDIR}/lib${LIB}${SHLIB_EXT} \ .endif ${DESTDIR}${LIBDIR}/${SHLIBFN}: ${SHLIBFN} - ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o ${LIBOWN} \ - -g ${LIBGRP} -m ${SHLIBMODE} ${.ALLSRC} ${.TARGET} + ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o ${LIBOWN:Q} \ + -g ${LIBGRP:Q} -m ${SHLIBMODE} ${.ALLSRC} ${.TARGET} .if ${OBJECT_FMT} == "a.out" && !defined(DESTDIR) && ${MKDLL:tl} == "no" /sbin/ldconfig -m ${LIBDIR} .endif diff --git a/mk/mkc_imp.links.mk b/mk/mkc_imp.links.mk index c9f6eb3..00cbec1 100644 --- a/mk/mkc_imp.links.mk +++ b/mk/mkc_imp.links.mk @@ -6,10 +6,9 @@ .if !defined(_MKC_IMP_LINKS_MK) _MKC_IMP_LINKS_MK := 1 -.PHONY: linksinstall -linksinstall: +linksinstall: .PHONY # ensure existence -realinstall2: linksinstall +do_install2: linksinstall .if ${MKINSTALL:tl} == "yes" diff --git a/mk/mkc_imp.man.mk b/mk/mkc_imp.man.mk index 15203d4..c66f056 100644 --- a/mk/mkc_imp.man.mk +++ b/mk/mkc_imp.man.mk @@ -34,7 +34,7 @@ MKCATPAGES = no .PHONY: catinstall maninstall catpages manpages catlinks \ manlinks html installhtml .if ${MKMAN:tl} != "no" -realinstall: ${MANINSTALL} +do_install1: ${MANINSTALL} .endif MANTARGET ?= cat @@ -68,7 +68,7 @@ TBL ?= tbl .endif .if defined(MAN) && !empty(MAN) -realall: ${MAN} +realdo_all: ${MAN} MANPAGES = ${MAN} CATPAGES = ${MANPAGES:C/(.*).([1-9])/\1.cat\2/} CLEANFILES += ${CATPAGES} @@ -77,7 +77,7 @@ HTMLPAGES = ${MANPAGES:C/(.*).([1-9])/\1.html\2/} .endif MINSTALL = ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} \ - -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} + -o ${MANOWN:Q} -g ${MANGRP:Q} -m ${MANMODE} .if defined(MANZ) # chown and chmod are done afterward automatically @@ -92,7 +92,7 @@ __installpage: .USE .if defined(MCOMPRESS) && !empty(MCOMPRESS) @${RM} -f ${.TARGET} ${MCOMPRESS} ${.ALLSRC} > ${.TARGET} - @chown ${MANOWN}:${MANGRP} ${.TARGET} + @chown ${MANOWN:Q}:${MANGRP:Q} ${.TARGET} @chmod ${MANMODE} ${.TARGET} .else ${MINSTALL} ${.ALLSRC} ${.TARGET} @@ -101,7 +101,7 @@ __installpage: .USE # Rules for cat'ed man page installation .if defined(CATPAGES) && !empty(CATPAGES) && ${MKCATPAGES:tl} != "no" -realall: ${CATPAGES} +realdo_all: ${CATPAGES} .if ${MKINSTALL:tl} == "yes" destination_capages = ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@} @@ -177,13 +177,11 @@ installhtml: ${destination_htmls} CLEANFILES += ${HTMLPAGES} .if ${MKHTML:tl} == "yes" -realinstall: installhtml -realall: ${HTMLPAGES} +do_install1: installhtml +realdo_all: ${HTMLPAGES} UNINSTALLFILES += ${destination_htmls} INSTALLDIRS += ${destination_htmls:H} .endif # MKHTML .endif # HTMLPAGES -realall: - .endif # _MKC_IMP_MAN_MK diff --git a/mk/mkc_imp.mk b/mk/mkc_imp.mk index 1979748..def92ea 100644 --- a/mk/mkc_imp.mk +++ b/mk/mkc_imp.mk @@ -16,36 +16,32 @@ SUBPRJ += ${SUBPRJS} # for backward compatility only, use SUBPRJ! _use_prog := 1 .endif -.if defined(_use_prog) || defined(LIB) .include <mkc_imp.lua.mk> .include <mkc_imp.pod.mk> -.endif # _use_prog || LIB .include <mkc.init.mk> .include <mkc_imp.rules.mk> .include <mkc_imp.obj.mk> # Make sure all of the standard targets are defined, even if they do nothing. -.PHONY: ${TARGETS} realinstall realinstall2 realall -${TARGETS} realinstall realinstall2 realall: - -distclean: cleandir +do_install1 do_install2: .PHONY -all: realall +distclean: .PHONY cleandir .if ${MKINSTALLDIRS:tl} == "yes" -install: installdirs .WAIT realinstall .WAIT realinstall2 -.else -install: realinstall .WAIT realinstall2 +install: pre_installdirs .WAIT do_installdirs .WAIT post_installdirs .WAIT \ + pre_install .WAIT do_install .WAIT post_install .endif +realdo_install: do_install1 .WAIT do_install2 + # skip uninstalling files and creating destination dirs for mkc.subprj.mk .if !defined(SUBPRJ) -uninstall: +realdo_uninstall: -${UNINSTALL} ${UNINSTALLFILES} -installdirs: +realdo_installdirs: for d in _ ${INSTALLDIRS:O:u:S|/.$||}; do \ test "$$d" = _ || ${INSTALL} -d -m ${DIRMODE} "$$d"; \ done @@ -73,7 +69,7 @@ print-values2 : .endfor ########### -.PHONY: realall realerrorcheck +.PHONY: realerrorcheck __errorcheck: .USE @if test -n '${MKC_ERR_MSG}'; then \ @@ -87,7 +83,7 @@ __errorcheck: .USE exit $$ex; \ fi -realall : realerrorcheck +do_all : realerrorcheck realerrorcheck: __errorcheck .include <mkc_imp.checkprogs.mk> @@ -123,21 +119,11 @@ CFLAGS += ${MKC_FEATURES:D-I${FEATURESDIR}} ######################################## .if defined(SUBPRJ) .include <mkc_imp.subprj.mk> - -# -.PHONY: subprj-clean subprj-distclean -clean: subprj-clean -subprj-clean: - -${CLEANFILES_CMD} -f ${CLEANFILES} -cleandir: subprj-distclean -subprj-distclean: - -${CLEANFILES_CMD} ${DISTCLEANFILES} - .endif # SUBPRJ ######################################## .include <mkc_imp.arch.mk> -.include <mkc_imp.final.mk> -# .endif # MKC_ERR_MSG + +.include <mkc_imp.final.mk> diff --git a/mk/mkc_imp.pkg-config.mk b/mk/mkc_imp.pkg-config.mk index a77073a..85d5417 100644 --- a/mk/mkc_imp.pkg-config.mk +++ b/mk/mkc_imp.pkg-config.mk @@ -42,8 +42,8 @@ LDADD.pkg-config.${_ln} != env ${mkc.environ} mkc_check_custom \ ${PROG.pkg-config} --libs "${_lp}" .endif # LDADD.pkg-config.${l} -MKC_CPPFLAGS += ${CPPFLAGS.pkg-config.${_ln}} -MKC_LDADD += ${LDADD.pkg-config.${_ln}} +MKC_CPPFLAGS := ${MKC_CPPFLAGS} ${CPPFLAGS.pkg-config.${_ln}} +MKC_LDADD := ${MKC_LDADD} ${LDADD.pkg-config.${_ln}} .endif # PROGS || LIB .for i in ${PKG_CONFIG_VARS.${_ln}} @@ -54,7 +54,7 @@ PKG_CONFIG.var.${_ln}.${i} != env ${mkc.environ} mkc_check_custom \ .endif # PKG_CONFIG.var.${_ln}.${i} .endfor # i -MKC_CFLAGS += -DHAVE_PKCONFIG_${_id:S/-/_/g:S/+/P/g:S/./_/g}=1 +MKC_CFLAGS := ${MKC_CFLAGS} -DHAVE_PKGCONFIG_${_id:S/-/_/g:S/+/P/g:S/./_/g}=1 .elif !empty(MKC_REQUIRE_PKGCONFIG:M${l}) MKC_ERR_MSG := ${MKC_ERR_MSG} "%%%: ${MKC_CACHEDIR}/_mkc_pkgconfig_${_ln}.err" diff --git a/mk/mkc_imp.platform.sys.mk b/mk/mkc_imp.platform.sys.mk index bbf5aac..90fee7f 100644 --- a/mk/mkc_imp.platform.sys.mk +++ b/mk/mkc_imp.platform.sys.mk @@ -103,11 +103,12 @@ CPPFLAGS += ${CPPFLAGS.${TARGET_OPSYS}:U} ############################################################ # CC compiler type .if make(cleandir) || make(distclean) || make(clean) -.elif ${MKCHECKS:Uno:tl} == "yes" && !defined(CC_TYPE) && (defined(PROGS) || defined(LIB)) +.elif ${MKCHECKS:Uno:tl} == "yes" && !defined(CC_TYPE) && (defined(PROGS) || defined(LIB) || defined(MKC_CHECK_PROTOTYPES)) mkc.cc_type.environ = CC='${CC}' CXX='${CXX}' CPPFLAGS='${CPPFLAGS}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' LDADD='${LDADD}' MKC_CACHEDIR='${MKC_CACHEDIR}' MKC_DELETE_TMPFILES='${MKC_DELETE_TMPFILES}' MKC_SHOW_CACHED='${MKC_SHOW_CACHED}' MKC_NOCACHE='${MKC_NOCACHE}' MKC_VERBOSE=1 .if !empty(src_type:Mc) CC_TYPE != env ${mkc.cc_type.environ} mkc_check_compiler -.elif !empty(src_type:Mcxx) +.endif +.if !empty(src_type:Mcxx) CXX_TYPE != env ${mkc.cc_type.environ} mkc_check_compiler -x .endif # src_type .endif # cleandir|distclean|... @@ -120,11 +121,13 @@ CXX_TYPE ?= unknown # C CFLAGS.dflt.clang = -Qunused-arguments +CFLAGS.dflt.icc = -we147 # 147 is required for MKC_CHECK_PROTOTYPES CFLAGS += ${CFLAGS.dflt.${CC_TYPE}} # C++ CXXFLAGS.dflt.clang = ${CFLAGS.dflt.clang} +CXXFLAGS.dflt.icc = -we147 CXXFLAGS += ${CXXFLAGS.dflt.${CXX_TYPE}} @@ -208,8 +211,8 @@ CXXFLAGS.warns.hpc.4 = ${CFLAGS.warns.hpc.4} #################### -CFLAGS += ${CFLAGS.warns.${CC_TYPE}.${WARNS}} -CXXFLAGS += ${CXXFLAGS.warns.${CXX_TYPE}.${WARNS}} +CFLAGS.warns = ${CFLAGS.warns.${CC_TYPE}.${WARNS}} ${CFLAGS.warnerr} +CXXFLAGS.warns = ${CXXFLAGS.warns.${CXX_TYPE}.${WARNS}} ${CXXFLAGS.warnerr} #################### CFLAGS.pic.gcc.Interix = @@ -233,7 +236,7 @@ CFLAGS.pie.icc = -fPIE -DPIC CFLAGS.pie.clang = -fPIE -DPIC CFLAGS.pie ?= ${CFLAGS.pie.${CC_TYPE}.${TARGET_OPSYS}:U${CFLAGS.pie.${CC_TYPE}}:U${CFLAGS.pic}} -CXXFLAGS.pie ?= ${CFLAGS.pie.${CC_TYPE}.${TARGET_OPSYS}:U${CFLAGS.pie.${CC_TYPE}}:U${CXXFLAGS.pic}} +CXXFLAGS.pie ?= ${CFLAGS.pie.${CC_TYPE}.${TARGET_OPSYS}:U${CFLAGS.pie.${CXX_TYPE}}:U${CXXFLAGS.pic}} #################### CFLAGS.ssp.gcc = -fstack-protector -Wstack-protector --param ssp-buffer-size=1 diff --git a/mk/mkc_imp.prog.mk b/mk/mkc_imp.prog.mk index fc4f952..b634564 100644 --- a/mk/mkc_imp.prog.mk +++ b/mk/mkc_imp.prog.mk @@ -10,17 +10,16 @@ .if !defined(_MKC_IMP_PROG_MK) _MKC_IMP_PROG_MK := 1 -.PHONY: proginstall -proginstall: +proginstall: .PHONY # ensure existence CFLAGS += ${COPTS} __proginstall: .USE ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${STRIPFLAG} \ - -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} ${.ALLSRC} ${.TARGET} + -o ${BINOWN:Q} -g ${BINGRP:Q} -m ${BINMODE} ${.ALLSRC} ${.TARGET} .for p in ${PROGS} -realinstall: proginstall +do_install1: proginstall _SRCS_ALL += ${SRCS.${p}} @@ -71,7 +70,7 @@ CLEANFILES += ${OBJS.${p}} .endfor # ${PROGS} -realall: ${PROGS} +realdo_all: ${PROGS} CLEANFILES += ${PROGS} diff --git a/mk/mkc_imp.scripts.mk b/mk/mkc_imp.scripts.mk index f066275..1d53b48 100644 --- a/mk/mkc_imp.scripts.mk +++ b/mk/mkc_imp.scripts.mk @@ -1,4 +1,4 @@ -# Copyright (c) 2009-2010 by Aleksey Cheusov +# Copyright (c) 2009-2014 by Aleksey Cheusov # Copyright (c) 1994-2009 The NetBSD Foundation, Inc. # Copyright (c) 1988, 1989, 1993 The Regents of the University of California # Copyright (c) 1988, 1989 by Adam de Boor @@ -10,10 +10,10 @@ .if !defined(_MKC_IMP_SCRIPTS_MK) _MKC_IMP_SCRIPTS_MK := 1 -.PHONY: scriptsinstall -realinstall: scriptsinstall +scriptsinstall: .PHONY # ensure existence +do_install1: scriptsinstall -realall: ${SCRIPTS} +realdo_all: ${SCRIPTS} .if defined(SCRIPTS) .if ${MKINSTALL:tl} == "yes" @@ -22,14 +22,14 @@ UNINSTALLFILES += ${destination_scripts} INSTALLDIRS += ${destination_scripts:H} .endif # MKINSTALL -scriptsinstall:: ${destination_scripts} +scriptsinstall: ${destination_scripts} .PRECIOUS: ${destination_scripts} .PHONY: ${destination_scripts} __scriptinstall: .USE ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} \ - -o ${SCRIPTSOWN_${.ALLSRC:T}:U${SCRIPTSOWN}} \ - -g ${SCRIPTSGRP_${.ALLSRC:T}:U${SCRIPTSGRP}} \ + -o ${SCRIPTSOWN_${.ALLSRC:T}:U${SCRIPTSOWN}:Q} \ + -g ${SCRIPTSGRP_${.ALLSRC:T}:U${SCRIPTSGRP}:Q} \ -m ${SCRIPTSMODE_${.ALLSRC:T}:U${SCRIPTSMODE}} \ ${.ALLSRC} ${.TARGET} @@ -37,8 +37,6 @@ __scriptinstall: .USE ${DESTDIR}${SCRIPTSDIR_${S:S|/|_|g}:U${SCRIPTSDIR}}/${SCRIPTSNAME_${S:S|/|_|g}:U${SCRIPTSNAME:U${S:T}}}: ${S} __scriptinstall .endfor -.else # defined(SCRIPTS) -scriptsinstall: .endif # defined(SCRIPTS) .endif # _MKC_IMP_SCRIPTS_MK diff --git a/mk/mkc_imp.subprj.mk b/mk/mkc_imp.subprj.mk index d4beee3..4eb491e 100644 --- a/mk/mkc_imp.subprj.mk +++ b/mk/mkc_imp.subprj.mk @@ -93,9 +93,6 @@ _ALLTARGDEPS := ${_ALLTARGDEPS:N${excl}} ${prjtarg}: ${deptarg} .endfor -# Make sure all of the standard targets are defined, even if they do nothing. -${TARGETS}: - .PHONY: print_deps print_deps: .for i in ${_ALLTARGDEPS} ${_ALLTARGDEPS2} ${_ALLTARGDEPS3} ${TARGETS} |