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]

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


Trevor, All,

Sorry for the delay... :-(

On 2014-02-26 11:15 -0500, Trevor Woerner spake thusly:
> # 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

There is already an escape-point a few lines above:
    if [ "${CT_CC_CORE_PASSES_NEEDED}" != "y" ]; then
        return 0
    fi

Also, LIBC == none or LIBC == newlib is only possible for bare-metal to
start with. So, this would be equivalent to not select CC_CORE_PASSES_NEEDED
for newlib, right?

Regards,
Yann E. MORIN.

> +        fi
> +    fi
> +
>      core_opts+=( "mode=static" )
>      core_opts+=( "host=${CT_BUILD}" )
>      core_opts+=( "complibs=${CT_BUILDTOOLS_PREFIX_DIR}" )

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

--
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]