"Euan Thoms" <e...@potensol.com> writes: > do-build: > cd ${WRKSRC} && unset MAKEFLAGS && ${OPENSIPS_MAKE_ENV} > ${GMAKE} ${_MAKE_JOBS} ${ALL_TARGET}
Have you tried defining NOPRECIOUSMAKEVARS in the port's Makefile? MAKEFLAGS is used to propagate arguments to submake but the ports framework (ab)uses it to pass internal variables without making sure they do not poison vendors' Makefiles. For one, ffmpeg and anything that bundles it (e.g. handbrake, kodi) have to be careful ${ARCH} isn't overriden. $ make ARCH=amd64 $ cat BSDmakefile ARCH= amd64 .MAKEFLAGS: ARCH=${ARCH} all: @gmake --no-print-directory $ cat GNUmakefile ARCH= x86_64 all: @echo ARCH=${ARCH} which is the result of Mk/bsd.port.mk: (3) Serious speedup of bsd.port.mk startup. In particular, this helps cut down "make index" time from an hour and a half to 8 minutes on our system with a parallel make describe (see 2). Try to pass unchanged variables down from parent makes instead of rerunning commands to define them, etc. https://svnweb.freebsd.org/changeset/ports/20327 Why not follow PkgSrc in using MACHINE_ARCH? Index: Mk/bsd.port.mk =================================================================== --- Mk/bsd.port.mk (revision 402341) +++ Mk/bsd.port.mk (working copy) @@ -1131,10 +1131,7 @@ makepatch: MAINTAINER?= po...@freebsd.org # Get the architecture -.if !defined(ARCH) -ARCH!= ${UNAME} -p -.endif -_EXPORTED_VARS+= ARCH +ARCH?= ${MACHINE_ARCH} # Get the operating system type .if !defined(OPSYS) Once 9.x reaches EOL and the ports tree becomes bmake-only other variables can be (properly) fixed via .export. Index: Mk/bsd.port.mk =================================================================== --- Mk/bsd.port.mk (revision 402341) +++ Mk/bsd.port.mk (working copy) @@ -5051,11 +5051,7 @@ ${_t}: .if !defined(NOPRECIOUSMAKEVARS) # These won't change, so we can pass them through the environment -.for var in ${_EXPORTED_VARS} -.if empty(.MAKEFLAGS:M${var}=*) && !empty(${var}) -.MAKEFLAGS: ${var}=${${var}:Q} -.endif -.endfor +.export ${_EXPORTED_VARS} .endif .if !target(pre-check-config)
signature.asc
Description: PGP signature