Skip site navigation (1)Skip section navigation (2)
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>