diff options
-rw-r--r-- | config/cc.in | 3 | ||||
-rw-r--r-- | config/libc/eglibc.in | 1 | ||||
-rw-r--r-- | config/libc/glibc.in | 1 | ||||
-rw-r--r-- | config/libc/mingw.in | 1 | ||||
-rw-r--r-- | config/libc/newlib.in | 1 | ||||
-rw-r--r-- | config/libc/uClibc.in | 1 | ||||
-rw-r--r-- | scripts/build/cc/gcc.sh | 8 |
7 files changed, 16 insertions, 0 deletions
diff --git a/config/cc.in b/config/cc.in index 680afb96..d244e99f 100644 --- a/config/cc.in +++ b/config/cc.in @@ -8,6 +8,9 @@ config CC config CC_VERSION string +config CC_CORE_PASSES_NEEDED + bool + source "config.gen/cc.in" config CC_SUPPORT_CXX diff --git a/config/libc/eglibc.in b/config/libc/eglibc.in index 586b234f..4f6ed120 100644 --- a/config/libc/eglibc.in +++ b/config/libc/eglibc.in @@ -4,6 +4,7 @@ ## ## select LIBC_SUPPORT_NPTL ## select LIBC_SUPPORT_LINUXTHREADS +## select CC_CORE_PASSES_NEEDED ## ## help EGLIBC (Embedded GLIBC) is a variant of the standard GNU GLIBC ## help that is designed to work well on embedded systems. EGLIBC strives diff --git a/config/libc/glibc.in b/config/libc/glibc.in index e65c22b1..70780a3f 100644 --- a/config/libc/glibc.in +++ b/config/libc/glibc.in @@ -3,6 +3,7 @@ ## depends on ! WINDOWS && ! BARE_METAL && ARCH_USE_MMU ## ## select LIBC_SUPPORT_NPTL +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for Linux distributions. ## help Feature-rich, but large... Most usefull for desktop-like systems. diff --git a/config/libc/mingw.in b/config/libc/mingw.in index fddf1ed6..7e27ae03 100644 --- a/config/libc/mingw.in +++ b/config/libc/mingw.in @@ -3,6 +3,7 @@ ## depends on WINDOWS ## ## select LIBC_SUPPORT_WIN32THREADS +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for Mingw distributions. diff --git a/config/libc/newlib.in b/config/libc/newlib.in index 8350fba5..26eccd71 100644 --- a/config/libc/newlib.in +++ b/config/libc/newlib.in @@ -3,6 +3,7 @@ ## depends on BARE_METAL ## ## select LIBC_SUPPORT_THREADS_NONE +## select CC_CORE_PASSES_NEEDED ## ## help Newlib is a C library intended for use on embedded systems. It is a ## help conglomeration of several library parts, all under free software diff --git a/config/libc/uClibc.in b/config/libc/uClibc.in index dec99d1e..2ca056b3 100644 --- a/config/libc/uClibc.in +++ b/config/libc/uClibc.in @@ -4,6 +4,7 @@ ## ## select LIBC_SUPPORT_LINUXTHREADS ## select LIBC_SUPPORT_THREADS_NONE +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for embeded linux systems. ## help diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index d7ba6066..36a1a90e 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -83,6 +83,10 @@ cc_gcc_lang_list() { do_cc_core_pass_1() { local -a core_opts + if [ "${CT_CC_CORE_PASSES_NEEDED}" != "y" ]; then + return 0 + fi + core_opts+=( "mode=static" ) core_opts+=( "host=${CT_BUILD}" ) core_opts+=( "complibs=${CT_BUILDTOOLS_PREFIX_DIR}" ) @@ -104,6 +108,10 @@ do_cc_core_pass_1() { do_cc_core_pass_2() { local -a core_opts + if [ "${CT_CC_CORE_PASSES_NEEDED}" != "y" ]; then + return 0 + fi + # Common options: core_opts+=( "host=${CT_BUILD}" ) core_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" ) |