Date: Mon, 3 Jun 2013 16:25:56 -0700 From: "Simon J. Gerraty" <sjg@juniper.net> To: Navdeep Parhar <nparhar@gmail.com> Cc: freebsd-hackers@freebsd.org, sjg@juniper.net Subject: Re: UNIVERSE_TARGET doesn't seem to work Message-ID: <20130603232556.B196958097@chaos.jnpr.net> In-Reply-To: <51AD0702.2060802@gmail.com> References: <20130531014320.GA22257@itx> <51AD0702.2060802@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 3 Jun 2013 14:13:38 -0700, Navdeep Parhar writes:
>On 05/30/13 18:43, Navdeep Parhar wrote:
>> I build kernel-toolchain and MAKE_JUST_KERNELS (often with NO_CLEAN, but
>> not this time) as part of my pre-commit checklist. It doesn't seem to
>> work after the switch to bmake. What am I missing? This on a system
>> at r251171 with nothing in make.conf or src.conf:
>>
>> # make -j12 universe UNIVERSE_TARGET=kernel-toolchain
>> --- universe_prologue ---
So not so much conflicting dependencies, but bmake seems to not like
.ORDER and explicit dependencies that effectively say the same thing.
That is since there is an explicit dependency:
universe_${target}: universe_${target}_prologue
it shouldn't be necessary to also express that in the .ORDER
This is probably a bug, but identifying exactly where and a fix could
take a while.
Moving the .ORDER out of the loop like:
@@ -373,9 +373,10 @@
.if defined(DOING_TINDERBOX)
@rm -f ${FAILFILE}
.endif
+.ORDER: universe_prologue upgrade_checks universe_targets universe_epilogue
.for target in ${TARGETS}
universe: universe_${target}
-.ORDER: universe_prologue upgrade_checks universe_${target}_prologue universe_${target} universe_epilogue
+universe_targets: universe_${target}
universe_${target}: universe_${target}_prologue
universe_${target}_prologue:
@echo ">> ${target} started on `LC_ALL=C date`"
would seem to make sense, but fmake runs universe_epilogue too early
(which is also a bug).
Thus the simplest patch which avoids an error and works for both
bmake and fmake is:
Index: Makefile
===================================================================
--- Makefile (revision 250971)
+++ Makefile (working copy)
@@ -375,7 +375,7 @@
.endif
.for target in ${TARGETS}
universe: universe_${target}
-.ORDER: universe_prologue upgrade_checks universe_${target}_prologue universe_${target} universe_epilogue
+.ORDER: universe_prologue upgrade_checks universe_${target} universe_epilogue
universe_${target}: universe_${target}_prologue
universe_${target}_prologue:
@echo ">> ${target} started on `LC_ALL=C date`"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130603232556.B196958097>
