Date: Mon, 18 Mar 2019 11:02:28 -0600 From: Dan Allen <danallen46@gmail.com> To: "freebsd-stable@freebsd.org Mailing FreeBSD-STABLE" <freebsd-stable@freebsd.org> Subject: ifuncs check flawed? Message-ID: <35A0AE5B-B25D-4067-86E3-325E65F3C1F4@gmail.com>
next in thread | raw e-mail | index | archive | help
I have been building FreeBSD for many years, as in since 2.2.8. Currently my amd64 build of 12-STABLE is built with the following = src.conf: WITHOUT_BHYVE=3D1 WITHOUT_CAPSICUM=3D1 WITHOUT_CDDL=3D1 WITHOUT_CLANG_EXTRAS=3D1 WITHOUT_CLANG_FULL=3D1 WITHOUT_CROSS_COMPILER=3D1 WITHOUT_DEBUG_FILES=3D1 WITHOUT_EXAMPLES=3D1 WITHOUT_HYPERV=3D1 WITHOUT_JAIL=3D1 WITHOUT_LOCALES=3D1 WITHOUT_PROFILE=3D1 WITHOUT_QUOTAS=3D1 WITHOUT_TESTS=3D1 And a make.conf of: BATCH=3Dyes MK_CDDL=3Dno MK_CLANG_EXTRAS=3Dno MK_DEBUG_FILES=3Dno MK_NO_PROFILE=3Dyes MK_TESTS=3Dno OPTIONS_UNSET=3DJAVA WITH_JADETEX=3Dno WITHOUT_CDDL=3Dyes WITHOUT_CLANG_FULL=3Dyes WITHOUT_CTF=3Dyes WITHOUT_CTM=3Dyes DISABLE_VULNERABILITIES=3Dyes So far, so good. (I do this to fit the whole thing onto a CD-image.) Fooling around, and using xhyve on my Mac, I want to build a i386 = version in a VM. So I grabbed the 20190314 snapshot of 12-STABLE, i386 flavor, and = installed it. Works great. Now to rebuild the world. The buildworld and buildkernel steps both immediately fail due to the = linker not supporting ifuncs. The code that stops the buildworld is this from = /usr/src/lib/libc/Makefile: --- .if (${LIBC_ARCH} =3D=3D amd64 || ${LIBC_ARCH} =3D=3D i386) && \ ${.TARGETS:Mall} =3D=3D all && \ defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc} =3D=3D "" .error ${LIBC_ARCH} libc requires linker ifunc support .endif --- However the linker on my system is the lld linker that supports ifuncs! = Why does this check fail? I am building on i386 but I am only building i386, as in I am not = building all targets or amd64. I edited the two Makefiles that have this check to remove the check and = the builds proceed just fine. So it appears that these checks are flawed, or I am soon to learn = something new about FreeBSD! Thanks, Dan Allen
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?35A0AE5B-B25D-4067-86E3-325E65F3C1F4>