Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Jan 2023 15:06:12 +0000
From:      qroxana <qroxana@protonmail.com>
To:        "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>
Cc:        Dimitry Andric <dim@FreeBSD.org>
Subject:   Re: buildworld failed after deleting /usr/obj
Message-ID:  <44ybMtpAl4lOcN0PqhC63MaFz0G7l0mD_6RBWLaFNqw7gs2uCbYRhxwcvOv5chBBPH3vSQetkVbwtxWZR14fJyWIMZZet8yU_yiMPa7J_yQ=@protonmail.com>
In-Reply-To: <Yxhgl82menkflpds5o1jchI4DqbSh-0NoygJ_cJxeqh1-5wQuwAhBuEqH4r8zkvjXT9QlI-3Qs5NHIrqPaaBDV8MHi7-fbmLwqpXUmuDWWE=@protonmail.com>
References:  <7cKQCx9PEwnnJE5MatS6g5KkKh5prIZTrTlqGL2RfM7Z4TDJGCfEATg9ejghBWDhx7WqDtVpxAA6wEisDAP2Y6c8g-ht2KbUW4YN0eek43g=@protonmail.com> <3CCFF1C8-D618-453F-8412-3D65F551C43C@FreeBSD.org> <Yxhgl82menkflpds5o1jchI4DqbSh-0NoygJ_cJxeqh1-5wQuwAhBuEqH4r8zkvjXT9QlI-3Qs5NHIrqPaaBDV8MHi7-fbmLwqpXUmuDWWE=@protonmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

------- Original Message -------
On Monday, January 23rd, 2023 at 1:44 PM, qroxana <qroxana@protonmail.com> =
wrote:


> ------- Original Message -------
> On Monday, January 23rd, 2023 at 10:02 AM, Dimitry Andric dim@FreeBSD.org=
 wrote:
>=20
>=20
>=20
> > On 23 Jan 2023, at 04:05, qroxana qroxana@protonmail.com wrote:
> >=20
> > > It seems ${MAKEOBJDIR} was not created for usr.bin/clang/llvm-objcopy=
.
> > >=20
> > > --- all_subdir_usr.bin ---
> > > --- objwarn ---
> > > Warning: Object directory not changed from original /usr/src/usr.bin/=
clang/llvm-objcopy
> >=20
> > This is usually an indication that your source directory contains objec=
t
> > files, e.g. is "dirty". Run "make clean" from the top level, or clean u=
p
> > your source checkout with something like "git clean".
> >=20
> > -Dimitry
>=20
>=20
> I had tried it with a clean source directory and empty /usr/obj
>=20
> # find /usr/src/usr.bin/clang/llvm-objcopy
> /usr/src/usr.bin/clang/llvm-objcopy
> /usr/src/usr.bin/clang/llvm-objcopy/llvm-objcopy.1
> /usr/src/usr.bin/clang/llvm-objcopy/Makefile
>=20
> and "make buildworld" still ended with the same error.
>=20
> In /usr/src/Makefile.inc1, the _NO_INCLUDE_COMPILERMK=3Dt option prevents=
 creating
> the obj directories for the stuff in usr.bin/clang/.
>=20
> 1098 _obj:
> 1099 @echo
> 1100 @echo "-------------------------------------------------------------=
-"
> 1101 @echo ">>> stage 2.2: rebuilding the object tree"
>=20
> 1102 @echo "-------------------------------------------------------------=
-"
> 1103 ${+}cd ${.CURDIR}; ${WMAKE} _NO_INCLUDE_COMPILERMK=3Dt obj
>=20
> > --- all_subdir_usr.bin ---
> > --- objwarn ---
> > Warning: Object directory not changed from original /usr/src/usr.bin/cl=
ang/llvm-objcopy
>=20
>=20
> This happens in stage 4.4, and there's no ${MAKEOBJDIR} directory created
> for usr.bin/clang/llvm-objcopy
>=20

It appears buildworld doesn't create the obj directory for usr.bin/clang/ll=
vm-objcopy in stage 2.2 after this commit.

commit adc3c128c6603054586a993d117e5dd808deac17
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: Fri Nov 18 20:12:28 2022 -0800
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: Fri Nov 18 20:12:28 2022 -0800

    src.opts.mk: Require C++20 for C++ support.
   =20
    libc++ requires C++20, so mark C++ (MK_CXX) as broken if the compiler
    does not support C++20.
   =20
    Reviewed by:    emaste
    Differential Revision:  https://reviews.freebsd.org/D36893

diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk
index f69208f21556..5089a034350d 100644
--- a/share/mk/src.opts.mk
+++ b/share/mk/src.opts.mk
@@ -348,6 +348,11 @@ __DEFAULT_YES_OPTIONS+=3DOPENMP
 __DEFAULT_NO_OPTIONS+=3DOPENMP
 .endif
=20
+# libc++ requires C++20
+.if !${COMPILER_FEATURES:Mc++20}
+BROKEN_OPTIONS+=3DCXX
+.endif
+
 .include <bsd.mkopt.mk>
=20
 #




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44ybMtpAl4lOcN0PqhC63MaFz0G7l0mD_6RBWLaFNqw7gs2uCbYRhxwcvOv5chBBPH3vSQetkVbwtxWZR14fJyWIMZZet8yU_yiMPa7J_yQ=>