Date: Mon, 12 Feb 2018 13:27:56 -0800 From: Bryan Drewery <bdrewery@FreeBSD.org> To: Vladimir Zakharov <zakharov.vv@gmail.com>, David Wolfskill <david@catwhisker.org> Cc: freebsd-current@freebsd.org Subject: Re: buildkernel with PORTS_MODULES fails: Variable OBJTOP is recursive Message-ID: <fafe1a89-5c7d-b591-0a97-b61ce191996c@FreeBSD.org> In-Reply-To: <20180212145430.r5ygphq3yskm7gxi@vzakharov> References: <20180201091030.qmq4boyzvvvqkug6@vzakharov> <2e2d0a5d-b032-894b-b0a8-d2ab9163159c@FreeBSD.org> <20180212145430.r5ygphq3yskm7gxi@vzakharov>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--yn9XXJ8VpPX900SrDDfJzVyBMKzhzwCvB
Content-Type: multipart/mixed; boundary="uLCcFQvc19NLicarwfI9Epwvrk3UFQ5ep";
protected-headers="v1"
From: Bryan Drewery <bdrewery@FreeBSD.org>
To: Vladimir Zakharov <zakharov.vv@gmail.com>,
David Wolfskill <david@catwhisker.org>
Cc: freebsd-current@freebsd.org
Message-ID: <fafe1a89-5c7d-b591-0a97-b61ce191996c@FreeBSD.org>
Subject: Re: buildkernel with PORTS_MODULES fails: Variable OBJTOP is
recursive
References: <20180201091030.qmq4boyzvvvqkug6@vzakharov>
<2e2d0a5d-b032-894b-b0a8-d2ab9163159c@FreeBSD.org>
<20180212145430.r5ygphq3yskm7gxi@vzakharov>
In-Reply-To: <20180212145430.r5ygphq3yskm7gxi@vzakharov>
--uLCcFQvc19NLicarwfI9Epwvrk3UFQ5ep
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
On 2/12/2018 6:54 AM, Vladimir Zakharov wrote:
> Hello, Bryan!
>=20
> On Fri, Feb 09, 2018, Bryan Drewery wrote:
>> On 2/1/2018 1:10 AM, Vladimir Zakharov wrote:
>>> Hello!
>>>
>>> For some time (about a week) building and installing kernel fails wit=
h
>>> the error "Variable OBJTOP is recursive." when going to build/install=
>>> module from ports.
>>>
>>> Last successful build was at r328426. Next build at r328527 failed an=
d
>>> still broken at r328649.
>>>
>>> Without PORTS_MODULES building and installing kernel succeeds. Anothe=
r
>>> workaround: ignore error and build/install module directly from ports=
=2E
>>>
>>> # cat /etc/make.conf
>>> MALLOC_PRODUCTION=3Dyes
>>> KERNCONF=3DGENERIC-NODEBUG GENERIC
>>> #KERNCONF=3D GENERIC-NODEBUG
>>> CPUTYPE?=3Dnative
>>> #PORTS_MODULES =3D graphics/drm-next-kmod emulators/virtualbox-ose-km=
od
>>> PORTS_MODULES =3D graphics/drm-next-kmod=20
>>>
>>> DOC_LANG =3D en_US.ISO8859-1 ru_RU.KOI8-R=20
>>>
>>> WITH_DEBUG_PORTS =3D mail/neomutt
>>>
>>> WITH_CCACHE_BUILD=3Dyes
>>> CCACHE_DIR=3D/home/ccache
>>>
>>> #DEVELOPER=3Dyes
>>>
>>> ...
>>> Building /home/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG/kernel.ful=
l
>>> --- kernel.full ---
>>> linking kernel.full
>>> ctfmerge -L VERSION -g -o kernel.full ...
>>> text data bss dec hex filename
>>> 22584632 1376209 4748888 28709729 0x1b61361 kernel.full
>>> Building /home/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG/kernel.deb=
ug
>>> Building /home/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG/kernel
>>> --- all ---
>>> =3D=3D=3D> Ports module graphics/drm-next-kmod (all)
>>> cd ${PORTSDIR:-/usr/ports}/graphics/drm-next-kmod; env -u CC -u CXX=
>>> -u CPP -u MAKESYSPATH MAKEFLAGS=3D"-j 4 -J 15,16 -j 4 -J 15,16 -D
>>> NO_MODULES_OBJ .MAKE.LEVEL.ENV=3DMAKELEVEL KERNEL=3Dkernel TARGET=3Da=
md64
>>> TARGET_ARCH=3Damd64" SYSDIR=3D/usr/src/sys
>>> PATH=3D<long string omitted>
>>> SRC_BASE=3D/usr/src OSVERSION=3D1200056
>>> WRKDIRPREFIX=3D/home/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG make=
-B
>>> clean build
>>> =3D=3D=3D> Cleaning for drm-next-kmod-g20180117
>>> =3D=3D=3D> License BSD2CLAUSE MIT GPLv2 accepted by the user
>>> =3D=3D=3D> drm-next-kmod-g20180117 depends on file: /usr/local/sbin=
/pkg - found
>>> =3D=3D=3D> Fetching all distfiles required by drm-next-kmod-g20180117=
for building
>>> =3D=3D=3D> Extracting for drm-next-kmod-g20180117
>>> =3D> SHA256 Checksum OK for FreeBSDDesktop-kms-drm-g20180117-622fdd1_=
GH0.tar.gz.
>>> =3D=3D=3D> Patching for drm-next-kmod-g20180117
>>> =3D=3D=3D> drm-next-kmod-g20180117 depends on file: /usr/local/bin/=
ccache - found
>>> =3D=3D=3D> Configuring for drm-next-kmod-g20180117
>>> =3D=3D=3D> Building for drm-next-kmod-g20180117
>>> =3D=3D=3D> drm (all)
>>> Variable OBJTOP is recursive.
>>
>> For some reason I cannot recreate this issue.
>=20
> It seems, setting WITH_AUTO_OBJ in /etc/src-env.conf causes an error.
> At least, removing it fixes build for me.
>=20
> Build successful with the following settings:
> # cat /etc/src-env.conf
> WITH_META_MODE=3D
> #WITH_AUTO_OBJ=3D
>=20
> # env | grep MAKE
> MAKEOBJDIRPREFIX=3D/home/obj
>=20
> # cat /etc/make.conf
> MALLOC_PRODUCTION=3Dyes
> KERNCONF=3D GENERIC-NODEBUG
> CPUTYPE?=3Dnative
> PORTS_MODULES=3D graphics/drm-next-kmod=20
> DOC_LANG =3D en_US.ISO8859-1 ru_RU.KOI8-R=20
> WITH_DEBUG_PORTS =3D mail/neomutt
> WITH_CCACHE_BUILD=3Dyes
> CCACHE_DIR=3D/home/ccache
> DEVELOPER=3Dyes
>=20
Please try this patch (requires a buildkernel).
https://people.freebsd.org/~bdrewery/patches/kernel-portsmodules.diff
--=20
Regards,
Bryan Drewery
--uLCcFQvc19NLicarwfI9Epwvrk3UFQ5ep--
--yn9XXJ8VpPX900SrDDfJzVyBMKzhzwCvB
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBAgAGBQJaggbmAAoJEDXXcbtuRpfPzUkH/jCje82VTQvEKpiqnJE1BvpS
nG7VO7/1C2dY5ser/JDDUvxe/37pHHtMKk912TgIp2A/qSCc8t7DD58u95xSY7KT
IqT3vnmnwXK8a3Pgxex8qxO4BCnm8W3WdBW2LelFbRcvMyQk1Uya6g3xGUTnp9Nj
AIZkV3jo1Bz7D/FEvVQkpB8RhZixI5nMV9dwtUKgkqIwGxMbCxk3THmJ8j+rvyBu
caUU/kMlOlapQlZxmg6NloX8b6HUTkmbrjJf1mwvB4OWud+pkcsDE3Pmn5COJ4vW
P4pdAcpWRs/v6fkFrwgiU4NVUibsOl7+uataMguPVYNE4B7BbgzAwDw0KErkSAM=
=P7fM
-----END PGP SIGNATURE-----
--yn9XXJ8VpPX900SrDDfJzVyBMKzhzwCvB--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?fafe1a89-5c7d-b591-0a97-b61ce191996c>
