Date: Fri, 22 Feb 2019 11:45:58 -0800 (PST) From: "Rodney W. Grimes" <freebsd-rwg@pdx.rh.CN85.dnsmgr.net> To: John Baldwin <jhb@freebsd.org> Cc: "freebsd-toolchain@FreeBSD.org" <freebsd-toolchain@freebsd.org>, freebsd@bdragon.rtk0.net Subject: Re: External GCC Update Message-ID: <201902221945.x1MJjwlE026969@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <e8d1431f-cf99-1986-7f23-6ff0f4cd8314@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> I was recently able to install base/binutils and base/gcc into an amd64 VM > and do a self-hosted build and install. Some of the port patches have been > committed from this, but I have some source patches before the final ports > patches can be finished. > > The source patches are here: > https://github.com/bsdjhb/freebsd/compare/master...base_gcc Phabricator? > They do a couple of things I'd like some feedback on: > > 1) MK_GDB no longer depends on MK_BINUTILS so that /usr/libexec/gdb can > still be built/installed when WITHOUT_BINUTILS=yes is true > > 2) WITH_BASE_GCC and WITH_BASE_BINUTILS knobs can be set in src.conf to > ensure that 'make delete-old' doesn't delete files installed by the > base/* packages if you also set WITHOUT_BINUTILS=yes, and similar > knobs (because you don't want to build/install the ones from src) > > 3) I add support for an /etc/src.conf.d dir that can hold files that get > treated as if they are part of /etc/src.conf. The current patch on > github for this only fixes world and not yet kern.pre.mk and probably > needs the most review if we want to go forward with this route. With > this, I plan to have the base/* packages install suitable files in this > dir that disable build of the src-based components and also set > WITH_BASE_<foo> to make sure 'delete-old' DTRT. This last one should probably be broke out and also discussed on -arch, it effects more than just the tool chain. > The file for base/binutils would be: > > CROSS_BINUTILS_PREFIX=/usr/bin/ > WITH_BASE_BINUTILS=yes > WITHOUT_BINUTILS=yes > WITHOUT_LLD_IS_LD=yes > > The file for base/gcc would be: > > XCC=/usr/bin/cc > XCXX=/usr/bin/c++ > XCPP=/usr/bin/cpp > X_COMPILER_TYPE=gcc > WITH_BASE_GCC=yes > WITHOUT_GCC=yes > WITHOUT_CLANG_IS_CC=yes > > Thoughts? > > -- > John Baldwin -- Rod Grimes rgrimes@freebsd.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201902221945.x1MJjwlE026969>