gcc-4.6: Some small performance tweaks

Submitted by Richard Purdie on Feb. 10, 2012, 12:06 a.m.

Details

Message ID 1328832372.10451.47.camel@ted
State Accepted
Commit a124a0883507caf4ffb7e25be666f6781b30abdd
Headers show

Commit Message

Richard Purdie Feb. 10, 2012, 12:06 a.m.
a) Use the system zlib to avoid building it for each gcc.
b) -initial and -intermediate don't need plugins or lto-plugin
   so disable them.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc
index 758c93e..ece378d 100644
--- a/meta/recipes-devtools/gcc/gcc-4.6.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.6.inc
@@ -23,7 +23,7 @@  BRANCH = "gcc-4_6-branch"
 FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/gcc-4.6' ], d)}"
 
 DEPENDS =+ "mpfr gmp libmpc"
-NATIVEDEPS = "mpfr-native gmp-native libmpc-native"
+NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
 
 LICENSE="GPL-3.0-with-GCC-exception & GPLv3"
 
@@ -86,16 +86,12 @@  B = "${WORKDIR}/${BRANCH}/build.${HOST_SYS}.${TARGET_SYS}"
 FORTRAN = ""
 JAVA = ""
 
-#EXTRA_OECONF_BASE = "  --enable-cheaders=c_std \
-#			--enable-libssp \
-#			--disable-bootstrap \
-#			--disable-libgomp \
-#			--disable-libmudflap"
 EXTRA_OECONF_BASE = " --enable-lto \
 			--enable-libssp \
 			--disable-bootstrap \
 			--disable-libgomp \
 			--disable-libmudflap \
+			--with-system-zlib \
 			--with-linker-hash-style=${LINKER_HASH_STYLE} \
 			--enable-cheaders=c_global "
 
@@ -103,11 +99,17 @@  EXTRA_OECONF_INITIAL = "--disable-libmudflap \
 			--disable-libgomp \
 			--disable-libssp \
 			--disable-libquadmath \
+			--with-system-zlib \
+			--disable-lto \
+			--disable-plugin \
 			--enable-decimal-float=no"
 
 EXTRA_OECONF_INTERMEDIATE = "--disable-libmudflap \
 				--disable-libgomp \
 				--disable-libquadmath \
+				--with-system-zlib \
+				--disable-lto \
+				--disable-plugin \
 				--disable-libssp"
 
 EXTRA_OECONF_append_linux-uclibc = " --disable-decimal-float "

Comments

Khem Raj Feb. 10, 2012, 12:39 a.m.
On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"


note that we will need to ship zlib-nativesdk as well if we do this
so hopefully that case is covered by this.

other changes look ok to me.
Richard Purdie Feb. 10, 2012, 1:40 p.m.
On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> >
> > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> 
> 
> note that we will need to ship zlib-nativesdk as well if we do this
> so hopefully that case is covered by this.

Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.

Cheers,

Richard
Khem Raj Feb. 11, 2012, 1:58 a.m.
On (10/02/12 13:40), Richard Purdie wrote:
> On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> > 
> > 
> > note that we will need to ship zlib-nativesdk as well if we do this
> > so hopefully that case is covered by this.
> 
> Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.

OK and this is bundled with meta-toolchain too right ?
> 
> Cheers,
> 
> Richard
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Richard Purdie Feb. 11, 2012, 4:24 p.m.
On Fri, 2012-02-10 at 17:58 -0800, Khem Raj wrote:
> On (10/02/12 13:40), Richard Purdie wrote:
> > On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> > > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > >
> > > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> > > 
> > > 
> > > note that we will need to ship zlib-nativesdk as well if we do this
> > > so hopefully that case is covered by this.
> > 
> > Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.
> 
> OK and this is bundled with meta-toolchain too right ?

By anything that depends on it by the shlibs code in the usual way, yes.

Cheers,

Richard
Martin Jansa Feb. 14, 2012, 12:16 p.m.
On Sat, Feb 11, 2012 at 5:24 PM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> On Fri, 2012-02-10 at 17:58 -0800, Khem Raj wrote:
>> On (10/02/12 13:40), Richard Purdie wrote:
>> > On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
>> > > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
>> > > <richard.purdie@linuxfoundation.org> wrote:
>> > > >
>> > > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
>> > >
>> > >
>> > > note that we will need to ship zlib-nativesdk as well if we do this
>> > > so hopefully that case is covered by this.
>> >
>> > Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.
>>
>> OK and this is bundled with meta-toolchain too right ?
>
> By anything that depends on it by the shlibs code in the usual way, yes.

But zlib is build time dependency, isn't it?

Now it fails to build target gcc because it depends only on
zlib-native not target zlib and zlib.h is not found.

Regards,
Khem Raj Feb. 14, 2012, 6:55 p.m.
On (14/02/12 13:16), Martin Jansa wrote:
> On Sat, Feb 11, 2012 at 5:24 PM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > On Fri, 2012-02-10 at 17:58 -0800, Khem Raj wrote:
> >> On (10/02/12 13:40), Richard Purdie wrote:
> >> > On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> >> > > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> >> > > <richard.purdie@linuxfoundation.org> wrote:
> >> > > >
> >> > > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> >> > >
> >> > >
> >> > > note that we will need to ship zlib-nativesdk as well if we do this
> >> > > so hopefully that case is covered by this.
> >> >
> >> > Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.
> >>
> >> OK and this is bundled with meta-toolchain too right ?
> >
> > By anything that depends on it by the shlibs code in the usual way, yes.
> 
> But zlib is build time dependency, isn't it?

yes it must be added to target gcc recipe

> 
> Now it fails to build target gcc because it depends only on
> zlib-native not target zlib and zlib.h is not found.

whats the exact error? usually zlib is needed for gcj. are you building
gcj ?
Martin Jansa Feb. 14, 2012, 7:08 p.m.
On Tue, Feb 14, 2012 at 10:55:06AM -0800, Khem Raj wrote:
> On (14/02/12 13:16), Martin Jansa wrote:
> > On Sat, Feb 11, 2012 at 5:24 PM, Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > > On Fri, 2012-02-10 at 17:58 -0800, Khem Raj wrote:
> > >> On (10/02/12 13:40), Richard Purdie wrote:
> > >> > On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> > >> > > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> > >> > > <richard.purdie@linuxfoundation.org> wrote:
> > >> > > >
> > >> > > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> > >> > >
> > >> > >
> > >> > > note that we will need to ship zlib-nativesdk as well if we do this
> > >> > > so hopefully that case is covered by this.
> > >> >
> > >> > Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.
> > >>
> > >> OK and this is bundled with meta-toolchain too right ?
> > >
> > > By anything that depends on it by the shlibs code in the usual way, yes.
> > 
> > But zlib is build time dependency, isn't it?
> 
> yes it must be added to target gcc recipe
> 
> > 
> > Now it fails to build target gcc because it depends only on
> > zlib-native not target zlib and zlib.h is not found.
> 
> whats the exact error? usually zlib is needed for gcj. are you building
> gcj ?

I don't have that log anymore, but I'm building default gcc
configuration from oe-core/meta-oe (iirc without gcj) and IIRC it was
from lto (gcc/lto-compress.c:#include <zlib.h>).

Cheers,

> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Khem Raj Feb. 14, 2012, 7:13 p.m.
On (14/02/12 20:08), Martin Jansa wrote:
> On Tue, Feb 14, 2012 at 10:55:06AM -0800, Khem Raj wrote:
> > On (14/02/12 13:16), Martin Jansa wrote:
> > > On Sat, Feb 11, 2012 at 5:24 PM, Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > > On Fri, 2012-02-10 at 17:58 -0800, Khem Raj wrote:
> > > >> On (10/02/12 13:40), Richard Purdie wrote:
> > > >> > On Thu, 2012-02-09 at 16:39 -0800, Khem Raj wrote:
> > > >> > > On Thu, Feb 9, 2012 at 4:06 PM, Richard Purdie
> > > >> > > <richard.purdie@linuxfoundation.org> wrote:
> > > >> > > >
> > > >> > > > +NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
> > > >> > >
> > > >> > >
> > > >> > > note that we will need to ship zlib-nativesdk as well if we do this
> > > >> > > so hopefully that case is covered by this.
> > > >> >
> > > >> > Yes, zlib has a BBCLASSEXTEND on zlib-nativesdk so this should be fine.
> > > >>
> > > >> OK and this is bundled with meta-toolchain too right ?
> > > >
> > > > By anything that depends on it by the shlibs code in the usual way, yes.
> > > 
> > > But zlib is build time dependency, isn't it?
> > 
> > yes it must be added to target gcc recipe
> > 
> > > 
> > > Now it fails to build target gcc because it depends only on
> > > zlib-native not target zlib and zlib.h is not found.
> > 
> > whats the exact error? usually zlib is needed for gcj. are you building
> > gcj ?
> 
> I don't have that log anymore, but I'm building default gcc
> configuration from oe-core/meta-oe (iirc without gcj) and IIRC it was
> from lto (gcc/lto-compress.c:#include <zlib.h>).


ah yes forgot lto :) and we do enable it so zlib dep is needed all the
time.