commit:     1aa736843e87e105cbe479dd21dd09679dacfbaa
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  6 07:45:36 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun  6 23:18:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1aa73684

toolchain.eclass: allow forcefully disabling bootstrapping for development

Users should *absolutely not* do this. It's just useful for quickly
testing eclass changes.

The resultant compiler may not be safe to use. Especially so if
unusual flags and environment is used.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 164bb1b16190..8015c5b447ff 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1759,7 +1759,13 @@ gcc_do_make() {
                # resulting binaries natively
                GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
        else
-               if _tc_use_if_iuse pgo; then
+               if [[ ${EXTRA_ECONF} == *--disable-bootstrap* ]] ; then
+                       GCC_MAKE_TARGET=${GCC_MAKE_TARGET-all}
+
+                       ewarn "Disabling bootstrapping. ONLY recommended for 
development."
+                       ewarn "This is NOT a safe configuration for endusers!"
+                       ewarn "This compiler may not be safe or reliable for 
production use!"
+                elif _tc_use_if_iuse pgo; then
                        GCC_MAKE_TARGET=${GCC_MAKE_TARGET-profiledbootstrap}
                else
                        GCC_MAKE_TARGET=${GCC_MAKE_TARGET-bootstrap-lean}

Reply via email to