Page MenuHomeFreeBSD

Various fixes to base/binutils and base/gcc6.
ClosedPublic

Authored by jhb on Dec 31 2019, 8:49 PM.

Details

Summary
  • Add --with-sysroot=/ to CONFIGURE_ARGS. base/binutils needs this so that ld honors --sysroot in linker scripts. base/gcc6 needs this so that the C++ include paths honor --sysroot.
  • Remove a hack from GCC's configure to force C++98 mode when building GCC with GCC. libc++ assumes C++11, so this hack was breaking the build of base/gcc6 natively when the system compiler was GCC.
  • Add toolchain makefiles installed to /usr/share/toolchains.

    These are suitable to be used by CROSS_TOOLCHAIN when doing a native arch build. These makefiles enable appropriate knobs so that the in-tree components that are replaced by each package are not built or installed. The freebsd-gcc toolchain makefile includes the binutils toolchain makefile if it is present.
Test Plan
  • native build/installworld cycle using freebsd-binutils and freebsd-gcc6 in an amd64 VM and CROSS_TOOLCHAIN=freebsd-gcc6 set in /etc/src.conf

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

jhb created this revision.Dec 31 2019, 8:49 PM
bapt accepted this revision.Jan 1 2020, 10:07 PM
This revision is now accepted and ready to land.Jan 1 2020, 10:07 PM
This revision was automatically updated to reflect the committed changes.