This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See crosstool-NG for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] gcc: skip core pass 1 when it is unnecessary


# HG changeset patch
# User Trevor Woerner <trevor.woerner@linaro.org>
# Date 1393431218 18000
#      Wed Feb 26 11:13:38 2014 -0500
# Node ID e9f99d9bd902414c8e3f3c6fc36c0fc67f3a7593
# Parent  c727adf1b7bd2c1e891db512871dbe7b26797fa6
gcc: skip core pass 1 when it is unnecessary

If neither the Linux headers nor the libc start files are required, skip gcc's
core pass 1 since the build will simply move from pass 1 to pass 2 without
doing any work in between.

Signed-off-by: Trevor Woerner <trevor.woerner@linaro.org>

diff -r c727adf1b7bd -r e9f99d9bd902 scripts/build/cc/gcc.sh
--- a/scripts/build/cc/gcc.sh	Tue Feb 25 13:34:48 2014 -0500
+++ b/scripts/build/cc/gcc.sh	Wed Feb 26 11:13:38 2014 -0500
@@ -88,6 +88,14 @@
         return 0
     fi
 
+    # skip gcc pass 1 if there are no Linux kernel headers
+    # nor libc start files to build/process
+    if [ "${CT_LIBC}" = "none" -o "${CT_LIBC}" = "newlib" ]; then
+        if [ "${CT_BARE_METAL}" = "y" ]; then
+            return 0
+        fi
+    fi
+
     core_opts+=( "mode=static" )
     core_opts+=( "host=${CT_BUILD}" )
     core_opts+=( "complibs=${CT_BUILDTOOLS_PREFIX_DIR}" )

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]