svn commit: r328489 - head/sys/conf

Jason Harmening jason.harmening at gmail.com
Mon Jan 29 09:56:07 UTC 2018


> 
> This happens now if PORTS_MODULE=x11/nvidia-driver is defined in /etc/src.conf:
> 
> [...]
> --- kernel-install ---
> mkdir -p /boot/kernel
> install -p -m 555 -o root -g wheel kernel /boot/kernel/
> --- ports-install ---
> Variable OBJTOP is recursive.
> 
> make[8]: stopped
> in /usr/obj/usr/src/amd64.amd64/sys/FY/usr/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86_64-387.34/src/nvidia
> *** Error code 2
> 
> Stop.
> make[7]: stopped
> in /usr/obj/usr/src/amd64.amd64/sys/THOR/usr/ports/x11/nvidia-driver/work/NVIDIA-FreeBSD-x86_64-387.34/src
> *** Error code 1
> 

David sent me logs of the failing case; thanks David!

The failure happens when buildkernel and installkernel are run 
separately instead of all-up, e.g. 'make kernel'.  The installkernel 
step is leaving MK_AUTO_OBJ=no in the env passed to the port build.  It 
looks like at least one of the install stages of nvidia-driver needs to 
generate temporary output, which leads to confusion when the port isn't 
built as though it's an in-tree component.

Can you guys try out the attached patch?

-------------- next part --------------
Index: sys/conf/kern.post.mk
===================================================================
--- sys/conf/kern.post.mk	(revision 328489)
+++ sys/conf/kern.post.mk	(working copy)
@@ -70,7 +70,8 @@
 	-u CXX \
 	-u CPP \
 	-u MAKESYSPATH \
-	MAKEFLAGS="${MAKEFLAGS:M*:tW:S/^-m /-m_/g:S/ -m / -m_/g:tw:N-m_*}" \
+	MK_AUTO_OBJ=yes \
+	MAKEFLAGS="${MAKEFLAGS:M*:tW:S/^-m /-m_/g:S/ -m / -m_/g:tw:N-m_*:NMK_AUTO_OBJ=*}" \
 	SYSDIR=${SYSDIR} \
 	PATH=${PATH}:${LOCALBASE}/bin:${LOCALBASE}/sbin \
 	SRC_BASE=${SRC_BASE} \


More information about the svn-src-head mailing list