* [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
@ 2009-12-19 22:26 Khem Raj
2009-12-19 22:26 ` [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES Khem Raj
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: Khem Raj @ 2009-12-19 22:26 UTC (permalink / raw)
To: openembedded-devel
* Newer gcc (4.4+) has implemented -mplt option to
enable PLT and copy relocation extentions of MIPS ABI
which makes shared code run a lot faster. This feature
is however controlled by DISTRO_FEATURES which should
add 'mplt' to DISTRO_FEATURES to enable it.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
recipes/gcc/gcc-3.3.4.inc | 2 +-
recipes/gcc/gcc-3.4.3.inc | 2 +-
recipes/gcc/gcc-3.4.4.inc | 2 +-
recipes/gcc/gcc-4.1.0.inc | 2 +-
recipes/gcc/gcc-4.1.1.inc | 2 +-
recipes/gcc/gcc-4.1.2.inc | 2 +-
recipes/gcc/gcc-4.2.2.inc | 2 +-
recipes/gcc/gcc-4.2.3.inc | 2 +-
recipes/gcc/gcc-4.2.4.inc | 2 +-
recipes/gcc/gcc-4.3.1.inc | 2 +-
recipes/gcc/gcc-4.3.2.inc | 2 +-
recipes/gcc/gcc-4.3.3.inc | 2 +-
recipes/gcc/gcc-4.3.4.inc | 2 +-
recipes/gcc/gcc-4.4.1.inc | 2 +-
recipes/gcc/gcc-4.4.2.inc | 2 +-
recipes/gcc/gcc-common.inc | 5 +++++
recipes/gcc/gcc-configure-common.inc | 5 ++++-
recipes/gcc/gcc-cross-initial.inc | 3 ++-
recipes/gcc/gcc-cross-intermediate.inc | 3 ++-
19 files changed, 28 insertions(+), 18 deletions(-)
diff --git a/recipes/gcc/gcc-3.3.4.inc b/recipes/gcc/gcc-3.3.4.inc
index 635e617..a3fbdde 100644
--- a/recipes/gcc/gcc-3.3.4.inc
+++ b/recipes/gcc/gcc-3.3.4.inc
@@ -1,6 +1,6 @@
require gcc-common.inc
-INC_PR = "r10"
+INC_PR = "r11"
SRC_URI = "${GNU_MIRROR}/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://arm-gotoff.dpatch;patch=1;pnum=0 \
diff --git a/recipes/gcc/gcc-3.4.3.inc b/recipes/gcc/gcc-3.4.3.inc
index 72f9042..febe0fc 100644
--- a/recipes/gcc/gcc-3.4.3.inc
+++ b/recipes/gcc/gcc-3.4.3.inc
@@ -1,6 +1,6 @@
require gcc-common.inc
-INC_PR = "r18"
+INC_PR = "r19"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://gcc34-reverse-compare.patch;patch=1 \
diff --git a/recipes/gcc/gcc-3.4.4.inc b/recipes/gcc/gcc-3.4.4.inc
index 9a02c5d..b87e1e3 100644
--- a/recipes/gcc/gcc-3.4.4.inc
+++ b/recipes/gcc/gcc-3.4.4.inc
@@ -1,6 +1,6 @@
require gcc-common.inc
-INC_PR = "r14"
+INC_PR = "r15"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://gcc34-reverse-compare.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.1.0.inc b/recipes/gcc/gcc-4.1.0.inc
index 7bb1a34..df0ae3f 100644
--- a/recipes/gcc/gcc-4.1.0.inc
+++ b/recipes/gcc/gcc-4.1.0.inc
@@ -1,6 +1,6 @@
require gcc-common.inc
-INC_PR = "r9"
+INC_PR = "r10"
DEFAULT_PREFERENCE = "-1"
diff --git a/recipes/gcc/gcc-4.1.1.inc b/recipes/gcc/gcc-4.1.1.inc
index 68323ac..a960b41 100644
--- a/recipes/gcc/gcc-4.1.1.inc
+++ b/recipes/gcc/gcc-4.1.1.inc
@@ -2,7 +2,7 @@ require gcc-common.inc
DEPENDS = "mpfr gmp"
-INC_PR = "r0"
+INC_PR = "r1"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://100-uclibc-conf.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.1.2.inc b/recipes/gcc/gcc-4.1.2.inc
index 911d2d9..21bf486 100644
--- a/recipes/gcc/gcc-4.1.2.inc
+++ b/recipes/gcc/gcc-4.1.2.inc
@@ -2,7 +2,7 @@ require gcc-common.inc
DEPENDS = "mpfr gmp"
-INC_PR = "r21"
+INC_PR = "r22"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://100-uclibc-conf.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.2.2.inc b/recipes/gcc/gcc-4.2.2.inc
index 0eb1223..931de9a 100644
--- a/recipes/gcc/gcc-4.2.2.inc
+++ b/recipes/gcc/gcc-4.2.2.inc
@@ -3,7 +3,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r15"
+INC_PR = "r16"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://100-uclibc-conf.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.2.3.inc b/recipes/gcc/gcc-4.2.3.inc
index 1501c7e..b2fb029 100644
--- a/recipes/gcc/gcc-4.2.3.inc
+++ b/recipes/gcc/gcc-4.2.3.inc
@@ -3,7 +3,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r12"
+INC_PR = "r17"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://100-uclibc-conf.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.2.4.inc b/recipes/gcc/gcc-4.2.4.inc
index 3249c09..e96122a 100644
--- a/recipes/gcc/gcc-4.2.4.inc
+++ b/recipes/gcc/gcc-4.2.4.inc
@@ -3,7 +3,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r9"
+INC_PR = "r10"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://100-uclibc-conf.patch;patch=1 \
diff --git a/recipes/gcc/gcc-4.3.1.inc b/recipes/gcc/gcc-4.3.1.inc
index 0b05f0a..3eaff45 100644
--- a/recipes/gcc/gcc-4.3.1.inc
+++ b/recipes/gcc/gcc-4.3.1.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r19"
+INC_PR = "r20"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
diff --git a/recipes/gcc/gcc-4.3.2.inc b/recipes/gcc/gcc-4.3.2.inc
index 5483b8f..8d40d72 100644
--- a/recipes/gcc/gcc-4.3.2.inc
+++ b/recipes/gcc/gcc-4.3.2.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r9"
+INC_PR = "r10"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
index 46d5e35..47bfbc6 100644
--- a/recipes/gcc/gcc-4.3.3.inc
+++ b/recipes/gcc/gcc-4.3.3.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r10"
+INC_PR = "r11"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
diff --git a/recipes/gcc/gcc-4.3.4.inc b/recipes/gcc/gcc-4.3.4.inc
index 2b1054c..ff02ac5 100644
--- a/recipes/gcc/gcc-4.3.4.inc
+++ b/recipes/gcc/gcc-4.3.4.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r7"
+INC_PR = "r8"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
diff --git a/recipes/gcc/gcc-4.4.1.inc b/recipes/gcc/gcc-4.4.1.inc
index 9daff95..cbf28dd 100644
--- a/recipes/gcc/gcc-4.4.1.inc
+++ b/recipes/gcc/gcc-4.4.1.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r7"
+INC_PR = "r8"
FILESPATHPKG .= ":gcc-$PV"
diff --git a/recipes/gcc/gcc-4.4.2.inc b/recipes/gcc/gcc-4.4.2.inc
index 514cc9f..1ef1359 100644
--- a/recipes/gcc/gcc-4.4.2.inc
+++ b/recipes/gcc/gcc-4.4.2.inc
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
-INC_PR = "r0"
+INC_PR = "r1"
FILESPATHPKG .= ":gcc-$PV"
diff --git a/recipes/gcc/gcc-common.inc b/recipes/gcc/gcc-common.inc
index 6e777e6..97b140c 100644
--- a/recipes/gcc/gcc-common.inc
+++ b/recipes/gcc/gcc-common.inc
@@ -15,6 +15,11 @@ def get_gcc_fpu_setting(bb, d):
return "--with-float=soft"
return ""
+def get_gcc_mips_plt_setting(bb, d):
+ if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'mips', 'mipsel' ] and 'mplt' in bb.data.getVar('DISTRO_FEATURES',d,1).split() :
+ return "--with-mips-plt"
+ return ""
+
# We really need HOST_SYS here for some packages and TARGET_SYS for others.
# For now, libgcc is most important so we fix for that - RP.
SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
diff --git a/recipes/gcc/gcc-configure-common.inc b/recipes/gcc/gcc-configure-common.inc
index 8a96326..ee6c0e7 100644
--- a/recipes/gcc/gcc-configure-common.inc
+++ b/recipes/gcc/gcc-configure-common.inc
@@ -13,6 +13,8 @@ OBJC_linux-uclibceabi ?= ""
OBJC_linux-uclibc ?= ""
OBJC_avr ?= ""
OBJC_nylon ?= ""
+OBJC_mips ?= ""
+OBJC_mipsel ?= ""
OBJC ?= ",objc"
# gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran'
@@ -36,7 +38,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d,
--program-prefix=${TARGET_PREFIX} \
${EXTRA_OECONF_BASE} \
${EXTRA_OECONF_FPU} \
- ${EXTRA_OECONF_PATHS}"
+ ${EXTRA_OECONF_PATHS} \
+ ${@get_gcc_mips_plt_setting(bb, d)}"
# Build uclibc compilers without cxa_atexit support
EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
index a2c4445..2ab1d7f 100644
--- a/recipes/gcc/gcc-cross-initial.inc
+++ b/recipes/gcc/gcc-cross-initial.inc
@@ -16,7 +16,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
--program-prefix=${TARGET_PREFIX} \
--with-sysroot=${STAGING_DIR_TARGET} \
--with-build-sysroot=${STAGING_DIR_TARGET} \
- ${@get_gcc_fpu_setting(bb, d)}"
+ ${@get_gcc_fpu_setting(bb, d)} \
+ ${@get_gcc_mips_plt_setting(bb, d)}"
do_install () {
:
diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
index ccfa2b4..50792b6 100644
--- a/recipes/gcc/gcc-cross-intermediate.inc
+++ b/recipes/gcc/gcc-cross-intermediate.inc
@@ -14,7 +14,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
--program-prefix=${TARGET_PREFIX} \
--with-sysroot=${STAGING_DIR_TARGET} \
--with-build-sysroot=${STAGING_DIR_TARGET} \
- ${@get_gcc_fpu_setting(bb, d)}"
+ ${@get_gcc_fpu_setting(bb, d)} \
+ ${@get_gcc_mips_plt_setting(bb, d)}"
do_stage_append () {
# get rid of dummy libc.so
--
1.6.3.3
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-19 22:26 [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Khem Raj
@ 2009-12-19 22:26 ` Khem Raj
2009-12-20 3:22 ` Holger Hans Peter Freyther
2009-12-20 3:22 ` [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Holger Hans Peter Freyther
2009-12-21 9:18 ` Koen Kooi
2 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2009-12-19 22:26 UTC (permalink / raw)
To: openembedded-devel
* As minimal-uclibc includes minimal conf the
distro features get inherited. mplt is not
supported on uclibc yet. So we should disable
it for uclibc/mips based distros.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
conf/distro/minimal-uclibc.conf | 8 ++++++++
conf/distro/minimal.conf | 6 ++++++
2 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/conf/distro/minimal-uclibc.conf b/conf/distro/minimal-uclibc.conf
index 9594622..62855ee 100644
--- a/conf/distro/minimal-uclibc.conf
+++ b/conf/distro/minimal-uclibc.conf
@@ -19,3 +19,11 @@ TARGET_FPU_armeb = "soft"
LIBC = "uclibc"
require conf/distro/minimal.conf
+
+# FEATURE SELECTION
+#############################################################################
+# We want images supporting the following features (for task-base)
+DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pci"
+# Following features are for ARM and E500 based machines
+DISTRO_FEATURES += "eabi"
+
diff --git a/conf/distro/minimal.conf b/conf/distro/minimal.conf
index 1e9eec2..00397db 100644
--- a/conf/distro/minimal.conf
+++ b/conf/distro/minimal.conf
@@ -28,6 +28,12 @@ DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget usbhost pc
# Following features are for ARM and E500 based machines
DISTRO_FEATURES += "eabi"
+# The following feature enables the MIPS ABI PLT extensions
+# This feature needs GCC 4.4 binutils 2.19 or glibc/eglibc 2.9
+# or higher
+
+DISTRO_FEATURES += "mplt"
+
#############################################################################
# LIBRARY NAMES
#############################################################################
--
1.6.3.3
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-19 22:26 ` [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES Khem Raj
@ 2009-12-20 3:22 ` Holger Hans Peter Freyther
2009-12-20 9:01 ` Khem Raj
0 siblings, 1 reply; 12+ messages in thread
From: Holger Hans Peter Freyther @ 2009-12-20 3:22 UTC (permalink / raw)
To: openembedded-devel
On Saturday 19 December 2009 23:26:36 Khem Raj wrote:
> * As minimal-uclibc includes minimal conf the
> distro features get inherited. mplt is not
> supported on uclibc yet. So we should disable
> it for uclibc/mips based distros.
> require conf/distro/minimal.conf
> +
> +# FEATURE SELECTION
> +##########################################################################
> ### +# We want images supporting the following features (for task-base)
> +DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget
> usbhost pci" +# Following features are for ARM and E500 based machines
> +DISTRO_FEATURES += "eabi"
maybe you want to use the oe filterout thing?
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-20 3:22 ` Holger Hans Peter Freyther
@ 2009-12-20 9:01 ` Khem Raj
2009-12-20 9:21 ` Holger Hans Peter Freyther
0 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2009-12-20 9:01 UTC (permalink / raw)
To: openembedded-devel
On Sat, Dec 19, 2009 at 7:22 PM, Holger Hans Peter Freyther
<holger+oe@freyther.de> wrote:
> On Saturday 19 December 2009 23:26:36 Khem Raj wrote:
>> * As minimal-uclibc includes minimal conf the
>> distro features get inherited. mplt is not
>> supported on uclibc yet. So we should disable
>> it for uclibc/mips based distros.
>
>> require conf/distro/minimal.conf
>> +
>> +# FEATURE SELECTION
>> +##########################################################################
>> ### +# We want images supporting the following features (for task-base)
>> +DISTRO_FEATURES = "nfs smbfs wifi ppp alsa ext2 vfat pcmcia usbgadget
>> usbhost pci" +# Following features are for ARM and E500 based machines
>> +DISTRO_FEATURES += "eabi"
>
> maybe you want to use the oe filterout thing?
I tried to use oe_filter_out but I did not succeed, I guess distro
conf files are too early for in place evaluation
and if I had to do lazy evaluation then it has to be done somewhere
later which I did not know what it could be
any ideas ?
Thanks
-Khem
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-20 9:01 ` Khem Raj
@ 2009-12-20 9:21 ` Holger Hans Peter Freyther
2009-12-20 17:52 ` Khem Raj
0 siblings, 1 reply; 12+ messages in thread
From: Holger Hans Peter Freyther @ 2009-12-20 9:21 UTC (permalink / raw)
To: openembedded-devel
On Sunday 20 December 2009 10:01:40 Khem Raj wrote:
> I tried to use oe_filter_out but I did not succeed, I guess distro
> conf files are too early for in place evaluation
> and if I had to do lazy evaluation then it has to be done somewhere
> later which I did not know what it could be
did you try with := ?
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-20 9:21 ` Holger Hans Peter Freyther
@ 2009-12-20 17:52 ` Khem Raj
2009-12-21 3:24 ` Holger Hans Peter Freyther
0 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2009-12-20 17:52 UTC (permalink / raw)
To: openembedded-devel
On Sun, Dec 20, 2009 at 1:21 AM, Holger Hans Peter Freyther
<holger+oe@freyther.de> wrote:
> On Sunday 20 December 2009 10:01:40 Khem Raj wrote:
>
>> I tried to use oe_filter_out but I did not succeed, I guess distro
>> conf files are too early for in place evaluation
>> and if I had to do lazy evaluation then it has to be done somewhere
>> later which I did not know what it could be
>
> did you try with := ?
DISTRO_FEATURES := "${@oe_filter_out('mplt',
bb.data.getVar('DISTRO_FEATURES', d, 1), d))}"
If I use := I get this
NameError: name 'oe_filter_out' is not defined
and if I use something like this
DISTRO_FEATURES = "${@bb.data.setVar('DISTRO_FEATURES',
oe_filter_out('mplt', bb.data.getVar('DISTRO_FEATURES', d, 1), d))}"
that ends up in same error too
-Khem
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES.
2009-12-20 17:52 ` Khem Raj
@ 2009-12-21 3:24 ` Holger Hans Peter Freyther
0 siblings, 0 replies; 12+ messages in thread
From: Holger Hans Peter Freyther @ 2009-12-21 3:24 UTC (permalink / raw)
To: openembedded-devel
On Sunday 20 December 2009 18:52:59 Khem Raj wrote:
> On Sun, Dec 20, 2009 at 1:21 AM, Holger Hans Peter Freyther
>
> <holger+oe@freyther.de> wrote:
> > On Sunday 20 December 2009 10:01:40 Khem Raj wrote:
> >> I tried to use oe_filter_out but I did not succeed, I guess distro
> >> conf files are too early for in place evaluation
> >> and if I had to do lazy evaluation then it has to be done somewhere
> >> later which I did not know what it could be
> >
> > did you try with := ?
>
> DISTRO_FEATURES := "${@oe_filter_out('mplt',
> bb.data.getVar('DISTRO_FEATURES', d, 1), d))}"
>
> If I use := I get this
>
> NameError: name 'oe_filter_out' is not defined
Ah right.... base.bbclass might or might not be parsed by then and
oe_filter_out not being known at this state. So we really have no other way
than copying the definition. Could you add a comment to the place where we
copied the stuff from hinting that -uclibc.conf needs to be updated too?
z.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
2009-12-19 22:26 [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Khem Raj
2009-12-19 22:26 ` [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES Khem Raj
@ 2009-12-20 3:22 ` Holger Hans Peter Freyther
2009-12-21 9:18 ` Koen Kooi
2 siblings, 0 replies; 12+ messages in thread
From: Holger Hans Peter Freyther @ 2009-12-20 3:22 UTC (permalink / raw)
To: openembedded-devel
On Saturday 19 December 2009 23:26:35 Khem Raj wrote:
> * Newer gcc (4.4+) has implemented -mplt option to
> enable PLT and copy relocation extentions of MIPS ABI
> which makes shared code run a lot faster. This feature
> is however controlled by DISTRO_FEATURES which should
> add 'mplt' to DISTRO_FEATURES to enable it.
Acked-by: Holger Hans Peter Freyther <zecke@selfish.org>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
2009-12-19 22:26 [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Khem Raj
2009-12-19 22:26 ` [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES Khem Raj
2009-12-20 3:22 ` [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Holger Hans Peter Freyther
@ 2009-12-21 9:18 ` Koen Kooi
2009-12-21 15:11 ` Khem Raj
2 siblings, 1 reply; 12+ messages in thread
From: Koen Kooi @ 2009-12-21 9:18 UTC (permalink / raw)
To: openembedded-devel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Why am I getting these errors:
NOTE: <type 'exceptions.NameError'>:name 'get_gcc_mips_plt_setting' is
not defined while evaluating:
when building kernel modules for an arm machine?
On 19-12-09 23:26, Khem Raj wrote:
> * Newer gcc (4.4+) has implemented -mplt option to
> enable PLT and copy relocation extentions of MIPS ABI
> which makes shared code run a lot faster. This feature
> is however controlled by DISTRO_FEATURES which should
> add 'mplt' to DISTRO_FEATURES to enable it.
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
> recipes/gcc/gcc-3.3.4.inc | 2 +-
> recipes/gcc/gcc-3.4.3.inc | 2 +-
> recipes/gcc/gcc-3.4.4.inc | 2 +-
> recipes/gcc/gcc-4.1.0.inc | 2 +-
> recipes/gcc/gcc-4.1.1.inc | 2 +-
> recipes/gcc/gcc-4.1.2.inc | 2 +-
> recipes/gcc/gcc-4.2.2.inc | 2 +-
> recipes/gcc/gcc-4.2.3.inc | 2 +-
> recipes/gcc/gcc-4.2.4.inc | 2 +-
> recipes/gcc/gcc-4.3.1.inc | 2 +-
> recipes/gcc/gcc-4.3.2.inc | 2 +-
> recipes/gcc/gcc-4.3.3.inc | 2 +-
> recipes/gcc/gcc-4.3.4.inc | 2 +-
> recipes/gcc/gcc-4.4.1.inc | 2 +-
> recipes/gcc/gcc-4.4.2.inc | 2 +-
> recipes/gcc/gcc-common.inc | 5 +++++
> recipes/gcc/gcc-configure-common.inc | 5 ++++-
> recipes/gcc/gcc-cross-initial.inc | 3 ++-
> recipes/gcc/gcc-cross-intermediate.inc | 3 ++-
> 19 files changed, 28 insertions(+), 18 deletions(-)
>
> diff --git a/recipes/gcc/gcc-3.3.4.inc b/recipes/gcc/gcc-3.3.4.inc
> index 635e617..a3fbdde 100644
> --- a/recipes/gcc/gcc-3.3.4.inc
> +++ b/recipes/gcc/gcc-3.3.4.inc
> @@ -1,6 +1,6 @@
> require gcc-common.inc
>
> -INC_PR = "r10"
> +INC_PR = "r11"
>
> SRC_URI = "${GNU_MIRROR}/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://arm-gotoff.dpatch;patch=1;pnum=0 \
> diff --git a/recipes/gcc/gcc-3.4.3.inc b/recipes/gcc/gcc-3.4.3.inc
> index 72f9042..febe0fc 100644
> --- a/recipes/gcc/gcc-3.4.3.inc
> +++ b/recipes/gcc/gcc-3.4.3.inc
> @@ -1,6 +1,6 @@
> require gcc-common.inc
>
> -INC_PR = "r18"
> +INC_PR = "r19"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://gcc34-reverse-compare.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-3.4.4.inc b/recipes/gcc/gcc-3.4.4.inc
> index 9a02c5d..b87e1e3 100644
> --- a/recipes/gcc/gcc-3.4.4.inc
> +++ b/recipes/gcc/gcc-3.4.4.inc
> @@ -1,6 +1,6 @@
> require gcc-common.inc
>
> -INC_PR = "r14"
> +INC_PR = "r15"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://gcc34-reverse-compare.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.1.0.inc b/recipes/gcc/gcc-4.1.0.inc
> index 7bb1a34..df0ae3f 100644
> --- a/recipes/gcc/gcc-4.1.0.inc
> +++ b/recipes/gcc/gcc-4.1.0.inc
> @@ -1,6 +1,6 @@
> require gcc-common.inc
>
> -INC_PR = "r9"
> +INC_PR = "r10"
>
> DEFAULT_PREFERENCE = "-1"
>
> diff --git a/recipes/gcc/gcc-4.1.1.inc b/recipes/gcc/gcc-4.1.1.inc
> index 68323ac..a960b41 100644
> --- a/recipes/gcc/gcc-4.1.1.inc
> +++ b/recipes/gcc/gcc-4.1.1.inc
> @@ -2,7 +2,7 @@ require gcc-common.inc
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r0"
> +INC_PR = "r1"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://100-uclibc-conf.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.1.2.inc b/recipes/gcc/gcc-4.1.2.inc
> index 911d2d9..21bf486 100644
> --- a/recipes/gcc/gcc-4.1.2.inc
> +++ b/recipes/gcc/gcc-4.1.2.inc
> @@ -2,7 +2,7 @@ require gcc-common.inc
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r21"
> +INC_PR = "r22"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://100-uclibc-conf.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.2.2.inc b/recipes/gcc/gcc-4.2.2.inc
> index 0eb1223..931de9a 100644
> --- a/recipes/gcc/gcc-4.2.2.inc
> +++ b/recipes/gcc/gcc-4.2.2.inc
> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r15"
> +INC_PR = "r16"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://100-uclibc-conf.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.2.3.inc b/recipes/gcc/gcc-4.2.3.inc
> index 1501c7e..b2fb029 100644
> --- a/recipes/gcc/gcc-4.2.3.inc
> +++ b/recipes/gcc/gcc-4.2.3.inc
> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r12"
> +INC_PR = "r17"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://100-uclibc-conf.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.2.4.inc b/recipes/gcc/gcc-4.2.4.inc
> index 3249c09..e96122a 100644
> --- a/recipes/gcc/gcc-4.2.4.inc
> +++ b/recipes/gcc/gcc-4.2.4.inc
> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r9"
> +INC_PR = "r10"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://100-uclibc-conf.patch;patch=1 \
> diff --git a/recipes/gcc/gcc-4.3.1.inc b/recipes/gcc/gcc-4.3.1.inc
> index 0b05f0a..3eaff45 100644
> --- a/recipes/gcc/gcc-4.3.1.inc
> +++ b/recipes/gcc/gcc-4.3.1.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r19"
> +INC_PR = "r20"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
> diff --git a/recipes/gcc/gcc-4.3.2.inc b/recipes/gcc/gcc-4.3.2.inc
> index 5483b8f..8d40d72 100644
> --- a/recipes/gcc/gcc-4.3.2.inc
> +++ b/recipes/gcc/gcc-4.3.2.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r9"
> +INC_PR = "r10"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
> diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
> index 46d5e35..47bfbc6 100644
> --- a/recipes/gcc/gcc-4.3.3.inc
> +++ b/recipes/gcc/gcc-4.3.3.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r10"
> +INC_PR = "r11"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
> diff --git a/recipes/gcc/gcc-4.3.4.inc b/recipes/gcc/gcc-4.3.4.inc
> index 2b1054c..ff02ac5 100644
> --- a/recipes/gcc/gcc-4.3.4.inc
> +++ b/recipes/gcc/gcc-4.3.4.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r7"
> +INC_PR = "r8"
>
> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
> diff --git a/recipes/gcc/gcc-4.4.1.inc b/recipes/gcc/gcc-4.4.1.inc
> index 9daff95..cbf28dd 100644
> --- a/recipes/gcc/gcc-4.4.1.inc
> +++ b/recipes/gcc/gcc-4.4.1.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r7"
> +INC_PR = "r8"
>
> FILESPATHPKG .= ":gcc-$PV"
>
> diff --git a/recipes/gcc/gcc-4.4.2.inc b/recipes/gcc/gcc-4.4.2.inc
> index 514cc9f..1ef1359 100644
> --- a/recipes/gcc/gcc-4.4.2.inc
> +++ b/recipes/gcc/gcc-4.4.2.inc
> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>
> DEPENDS = "mpfr gmp"
>
> -INC_PR = "r0"
> +INC_PR = "r1"
>
> FILESPATHPKG .= ":gcc-$PV"
>
> diff --git a/recipes/gcc/gcc-common.inc b/recipes/gcc/gcc-common.inc
> index 6e777e6..97b140c 100644
> --- a/recipes/gcc/gcc-common.inc
> +++ b/recipes/gcc/gcc-common.inc
> @@ -15,6 +15,11 @@ def get_gcc_fpu_setting(bb, d):
> return "--with-float=soft"
> return ""
>
> +def get_gcc_mips_plt_setting(bb, d):
> + if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'mips', 'mipsel' ] and 'mplt' in bb.data.getVar('DISTRO_FEATURES',d,1).split() :
> + return "--with-mips-plt"
> + return ""
> +
> # We really need HOST_SYS here for some packages and TARGET_SYS for others.
> # For now, libgcc is most important so we fix for that - RP.
> SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
> diff --git a/recipes/gcc/gcc-configure-common.inc b/recipes/gcc/gcc-configure-common.inc
> index 8a96326..ee6c0e7 100644
> --- a/recipes/gcc/gcc-configure-common.inc
> +++ b/recipes/gcc/gcc-configure-common.inc
> @@ -13,6 +13,8 @@ OBJC_linux-uclibceabi ?= ""
> OBJC_linux-uclibc ?= ""
> OBJC_avr ?= ""
> OBJC_nylon ?= ""
> +OBJC_mips ?= ""
> +OBJC_mipsel ?= ""
> OBJC ?= ",objc"
>
> # gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran'
> @@ -36,7 +38,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d,
> --program-prefix=${TARGET_PREFIX} \
> ${EXTRA_OECONF_BASE} \
> ${EXTRA_OECONF_FPU} \
> - ${EXTRA_OECONF_PATHS}"
> + ${EXTRA_OECONF_PATHS} \
> + ${@get_gcc_mips_plt_setting(bb, d)}"
>
> # Build uclibc compilers without cxa_atexit support
> EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
> diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
> index a2c4445..2ab1d7f 100644
> --- a/recipes/gcc/gcc-cross-initial.inc
> +++ b/recipes/gcc/gcc-cross-initial.inc
> @@ -16,7 +16,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
> --program-prefix=${TARGET_PREFIX} \
> --with-sysroot=${STAGING_DIR_TARGET} \
> --with-build-sysroot=${STAGING_DIR_TARGET} \
> - ${@get_gcc_fpu_setting(bb, d)}"
> + ${@get_gcc_fpu_setting(bb, d)} \
> + ${@get_gcc_mips_plt_setting(bb, d)}"
>
> do_install () {
> :
> diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
> index ccfa2b4..50792b6 100644
> --- a/recipes/gcc/gcc-cross-intermediate.inc
> +++ b/recipes/gcc/gcc-cross-intermediate.inc
> @@ -14,7 +14,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
> --program-prefix=${TARGET_PREFIX} \
> --with-sysroot=${STAGING_DIR_TARGET} \
> --with-build-sysroot=${STAGING_DIR_TARGET} \
> - ${@get_gcc_fpu_setting(bb, d)}"
> + ${@get_gcc_fpu_setting(bb, d)} \
> + ${@get_gcc_mips_plt_setting(bb, d)}"
>
> do_stage_append () {
> # get rid of dummy libc.so
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFLLz1KMkyGM64RGpERAplFAJ9ob37pjGpL+wgQvDnwrHscz+1/OgCeLBU8
1JNBG1js82rvv8vd0mC9qPk=
=F/BB
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
2009-12-21 9:18 ` Koen Kooi
@ 2009-12-21 15:11 ` Khem Raj
2009-12-21 15:40 ` Koen Kooi
0 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2009-12-21 15:11 UTC (permalink / raw)
To: openembedded-devel
On Mon, Dec 21, 2009 at 1:18 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Why am I getting these errors:
>
> NOTE: <type 'exceptions.NameError'>:name 'get_gcc_mips_plt_setting' is
> not defined while evaluating:
>
> when building kernel modules for an arm machine?
>
> On 19-12-09 23:26, Khem Raj wrote:
>> * Newer gcc (4.4+) has implemented -mplt option to
>> enable PLT and copy relocation extentions of MIPS ABI
>> which makes shared code run a lot faster. This feature
>> is however controlled by DISTRO_FEATURES which should
>> add 'mplt' to DISTRO_FEATURES to enable it.
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>> recipes/gcc/gcc-3.3.4.inc | 2 +-
>> recipes/gcc/gcc-3.4.3.inc | 2 +-
>> recipes/gcc/gcc-3.4.4.inc | 2 +-
>> recipes/gcc/gcc-4.1.0.inc | 2 +-
>> recipes/gcc/gcc-4.1.1.inc | 2 +-
>> recipes/gcc/gcc-4.1.2.inc | 2 +-
>> recipes/gcc/gcc-4.2.2.inc | 2 +-
>> recipes/gcc/gcc-4.2.3.inc | 2 +-
>> recipes/gcc/gcc-4.2.4.inc | 2 +-
>> recipes/gcc/gcc-4.3.1.inc | 2 +-
>> recipes/gcc/gcc-4.3.2.inc | 2 +-
>> recipes/gcc/gcc-4.3.3.inc | 2 +-
>> recipes/gcc/gcc-4.3.4.inc | 2 +-
>> recipes/gcc/gcc-4.4.1.inc | 2 +-
>> recipes/gcc/gcc-4.4.2.inc | 2 +-
>> recipes/gcc/gcc-common.inc | 5 +++++
>> recipes/gcc/gcc-configure-common.inc | 5 ++++-
>> recipes/gcc/gcc-cross-initial.inc | 3 ++-
>> recipes/gcc/gcc-cross-intermediate.inc | 3 ++-
>> 19 files changed, 28 insertions(+), 18 deletions(-)
>>
>> diff --git a/recipes/gcc/gcc-3.3.4.inc b/recipes/gcc/gcc-3.3.4.inc
>> index 635e617..a3fbdde 100644
>> --- a/recipes/gcc/gcc-3.3.4.inc
>> +++ b/recipes/gcc/gcc-3.3.4.inc
>> @@ -1,6 +1,6 @@
>> require gcc-common.inc
>>
>> -INC_PR = "r10"
>> +INC_PR = "r11"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://arm-gotoff.dpatch;patch=1;pnum=0 \
>> diff --git a/recipes/gcc/gcc-3.4.3.inc b/recipes/gcc/gcc-3.4.3.inc
>> index 72f9042..febe0fc 100644
>> --- a/recipes/gcc/gcc-3.4.3.inc
>> +++ b/recipes/gcc/gcc-3.4.3.inc
>> @@ -1,6 +1,6 @@
>> require gcc-common.inc
>>
>> -INC_PR = "r18"
>> +INC_PR = "r19"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://gcc34-reverse-compare.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-3.4.4.inc b/recipes/gcc/gcc-3.4.4.inc
>> index 9a02c5d..b87e1e3 100644
>> --- a/recipes/gcc/gcc-3.4.4.inc
>> +++ b/recipes/gcc/gcc-3.4.4.inc
>> @@ -1,6 +1,6 @@
>> require gcc-common.inc
>>
>> -INC_PR = "r14"
>> +INC_PR = "r15"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://gcc34-reverse-compare.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.1.0.inc b/recipes/gcc/gcc-4.1.0.inc
>> index 7bb1a34..df0ae3f 100644
>> --- a/recipes/gcc/gcc-4.1.0.inc
>> +++ b/recipes/gcc/gcc-4.1.0.inc
>> @@ -1,6 +1,6 @@
>> require gcc-common.inc
>>
>> -INC_PR = "r9"
>> +INC_PR = "r10"
>>
>> DEFAULT_PREFERENCE = "-1"
>>
>> diff --git a/recipes/gcc/gcc-4.1.1.inc b/recipes/gcc/gcc-4.1.1.inc
>> index 68323ac..a960b41 100644
>> --- a/recipes/gcc/gcc-4.1.1.inc
>> +++ b/recipes/gcc/gcc-4.1.1.inc
>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r0"
>> +INC_PR = "r1"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://100-uclibc-conf.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.1.2.inc b/recipes/gcc/gcc-4.1.2.inc
>> index 911d2d9..21bf486 100644
>> --- a/recipes/gcc/gcc-4.1.2.inc
>> +++ b/recipes/gcc/gcc-4.1.2.inc
>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r21"
>> +INC_PR = "r22"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://100-uclibc-conf.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.2.2.inc b/recipes/gcc/gcc-4.2.2.inc
>> index 0eb1223..931de9a 100644
>> --- a/recipes/gcc/gcc-4.2.2.inc
>> +++ b/recipes/gcc/gcc-4.2.2.inc
>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r15"
>> +INC_PR = "r16"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://100-uclibc-conf.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.2.3.inc b/recipes/gcc/gcc-4.2.3.inc
>> index 1501c7e..b2fb029 100644
>> --- a/recipes/gcc/gcc-4.2.3.inc
>> +++ b/recipes/gcc/gcc-4.2.3.inc
>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r12"
>> +INC_PR = "r17"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://100-uclibc-conf.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.2.4.inc b/recipes/gcc/gcc-4.2.4.inc
>> index 3249c09..e96122a 100644
>> --- a/recipes/gcc/gcc-4.2.4.inc
>> +++ b/recipes/gcc/gcc-4.2.4.inc
>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r9"
>> +INC_PR = "r10"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://100-uclibc-conf.patch;patch=1 \
>> diff --git a/recipes/gcc/gcc-4.3.1.inc b/recipes/gcc/gcc-4.3.1.inc
>> index 0b05f0a..3eaff45 100644
>> --- a/recipes/gcc/gcc-4.3.1.inc
>> +++ b/recipes/gcc/gcc-4.3.1.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r19"
>> +INC_PR = "r20"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>> diff --git a/recipes/gcc/gcc-4.3.2.inc b/recipes/gcc/gcc-4.3.2.inc
>> index 5483b8f..8d40d72 100644
>> --- a/recipes/gcc/gcc-4.3.2.inc
>> +++ b/recipes/gcc/gcc-4.3.2.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r9"
>> +INC_PR = "r10"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>> diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
>> index 46d5e35..47bfbc6 100644
>> --- a/recipes/gcc/gcc-4.3.3.inc
>> +++ b/recipes/gcc/gcc-4.3.3.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r10"
>> +INC_PR = "r11"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>> diff --git a/recipes/gcc/gcc-4.3.4.inc b/recipes/gcc/gcc-4.3.4.inc
>> index 2b1054c..ff02ac5 100644
>> --- a/recipes/gcc/gcc-4.3.4.inc
>> +++ b/recipes/gcc/gcc-4.3.4.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r7"
>> +INC_PR = "r8"
>>
>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>> diff --git a/recipes/gcc/gcc-4.4.1.inc b/recipes/gcc/gcc-4.4.1.inc
>> index 9daff95..cbf28dd 100644
>> --- a/recipes/gcc/gcc-4.4.1.inc
>> +++ b/recipes/gcc/gcc-4.4.1.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r7"
>> +INC_PR = "r8"
>>
>> FILESPATHPKG .= ":gcc-$PV"
>>
>> diff --git a/recipes/gcc/gcc-4.4.2.inc b/recipes/gcc/gcc-4.4.2.inc
>> index 514cc9f..1ef1359 100644
>> --- a/recipes/gcc/gcc-4.4.2.inc
>> +++ b/recipes/gcc/gcc-4.4.2.inc
>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>
>> DEPENDS = "mpfr gmp"
>>
>> -INC_PR = "r0"
>> +INC_PR = "r1"
>>
>> FILESPATHPKG .= ":gcc-$PV"
>>
>> diff --git a/recipes/gcc/gcc-common.inc b/recipes/gcc/gcc-common.inc
>> index 6e777e6..97b140c 100644
>> --- a/recipes/gcc/gcc-common.inc
>> +++ b/recipes/gcc/gcc-common.inc
>> @@ -15,6 +15,11 @@ def get_gcc_fpu_setting(bb, d):
>> return "--with-float=soft"
>> return ""
>>
>> +def get_gcc_mips_plt_setting(bb, d):
>> + if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'mips', 'mipsel' ] and 'mplt' in bb.data.getVar('DISTRO_FEATURES',d,1).split() :
>> + return "--with-mips-plt"
>> + return ""
>> +
>> # We really need HOST_SYS here for some packages and TARGET_SYS for others.
>> # For now, libgcc is most important so we fix for that - RP.
>> SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
>> diff --git a/recipes/gcc/gcc-configure-common.inc b/recipes/gcc/gcc-configure-common.inc
>> index 8a96326..ee6c0e7 100644
>> --- a/recipes/gcc/gcc-configure-common.inc
>> +++ b/recipes/gcc/gcc-configure-common.inc
>> @@ -13,6 +13,8 @@ OBJC_linux-uclibceabi ?= ""
>> OBJC_linux-uclibc ?= ""
>> OBJC_avr ?= ""
>> OBJC_nylon ?= ""
>> +OBJC_mips ?= ""
>> +OBJC_mipsel ?= ""
>> OBJC ?= ",objc"
>>
>> # gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran'
>> @@ -36,7 +38,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d,
>> --program-prefix=${TARGET_PREFIX} \
>> ${EXTRA_OECONF_BASE} \
>> ${EXTRA_OECONF_FPU} \
>> - ${EXTRA_OECONF_PATHS}"
>> + ${EXTRA_OECONF_PATHS} \
>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>
>> # Build uclibc compilers without cxa_atexit support
>> EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
>> diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
>> index a2c4445..2ab1d7f 100644
>> --- a/recipes/gcc/gcc-cross-initial.inc
>> +++ b/recipes/gcc/gcc-cross-initial.inc
>> @@ -16,7 +16,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>> --program-prefix=${TARGET_PREFIX} \
>> --with-sysroot=${STAGING_DIR_TARGET} \
>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>> - ${@get_gcc_fpu_setting(bb, d)}"
>> + ${@get_gcc_fpu_setting(bb, d)} \
>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>
>> do_install () {
>> :
>> diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
>> index ccfa2b4..50792b6 100644
>> --- a/recipes/gcc/gcc-cross-intermediate.inc
>> +++ b/recipes/gcc/gcc-cross-intermediate.inc
>> @@ -14,7 +14,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>> --program-prefix=${TARGET_PREFIX} \
>> --with-sysroot=${STAGING_DIR_TARGET} \
>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>> - ${@get_gcc_fpu_setting(bb, d)}"
>> + ${@get_gcc_fpu_setting(bb, d)} \
>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>
>> do_stage_append () {
>> # get rid of dummy libc.so
I did an arm build earlier and did not see this message at all.
which gcc version are you building ? my guess is that some version
does not include gcc-common.inc thats one reason it can happen
Thanks
-Khem
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
2009-12-21 15:11 ` Khem Raj
@ 2009-12-21 15:40 ` Koen Kooi
2009-12-21 15:54 ` Khem Raj
0 siblings, 1 reply; 12+ messages in thread
From: Koen Kooi @ 2009-12-21 15:40 UTC (permalink / raw)
To: openembedded-devel
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 21-12-09 16:11, Khem Raj wrote:
> On Mon, Dec 21, 2009 at 1:18 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Why am I getting these errors:
>>
>> NOTE: <type 'exceptions.NameError'>:name 'get_gcc_mips_plt_setting' is
>> not defined while evaluating:
>>
>> when building kernel modules for an arm machine?
>>
>> On 19-12-09 23:26, Khem Raj wrote:
>>> * Newer gcc (4.4+) has implemented -mplt option to
>>> enable PLT and copy relocation extentions of MIPS ABI
>>> which makes shared code run a lot faster. This feature
>>> is however controlled by DISTRO_FEATURES which should
>>> add 'mplt' to DISTRO_FEATURES to enable it.
>>>
>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>>> ---
>>> recipes/gcc/gcc-3.3.4.inc | 2 +-
>>> recipes/gcc/gcc-3.4.3.inc | 2 +-
>>> recipes/gcc/gcc-3.4.4.inc | 2 +-
>>> recipes/gcc/gcc-4.1.0.inc | 2 +-
>>> recipes/gcc/gcc-4.1.1.inc | 2 +-
>>> recipes/gcc/gcc-4.1.2.inc | 2 +-
>>> recipes/gcc/gcc-4.2.2.inc | 2 +-
>>> recipes/gcc/gcc-4.2.3.inc | 2 +-
>>> recipes/gcc/gcc-4.2.4.inc | 2 +-
>>> recipes/gcc/gcc-4.3.1.inc | 2 +-
>>> recipes/gcc/gcc-4.3.2.inc | 2 +-
>>> recipes/gcc/gcc-4.3.3.inc | 2 +-
>>> recipes/gcc/gcc-4.3.4.inc | 2 +-
>>> recipes/gcc/gcc-4.4.1.inc | 2 +-
>>> recipes/gcc/gcc-4.4.2.inc | 2 +-
>>> recipes/gcc/gcc-common.inc | 5 +++++
>>> recipes/gcc/gcc-configure-common.inc | 5 ++++-
>>> recipes/gcc/gcc-cross-initial.inc | 3 ++-
>>> recipes/gcc/gcc-cross-intermediate.inc | 3 ++-
>>> 19 files changed, 28 insertions(+), 18 deletions(-)
>>>
>>> diff --git a/recipes/gcc/gcc-3.3.4.inc b/recipes/gcc/gcc-3.3.4.inc
>>> index 635e617..a3fbdde 100644
>>> --- a/recipes/gcc/gcc-3.3.4.inc
>>> +++ b/recipes/gcc/gcc-3.3.4.inc
>>> @@ -1,6 +1,6 @@
>>> require gcc-common.inc
>>>
>>> -INC_PR = "r10"
>>> +INC_PR = "r11"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://arm-gotoff.dpatch;patch=1;pnum=0 \
>>> diff --git a/recipes/gcc/gcc-3.4.3.inc b/recipes/gcc/gcc-3.4.3.inc
>>> index 72f9042..febe0fc 100644
>>> --- a/recipes/gcc/gcc-3.4.3.inc
>>> +++ b/recipes/gcc/gcc-3.4.3.inc
>>> @@ -1,6 +1,6 @@
>>> require gcc-common.inc
>>>
>>> -INC_PR = "r18"
>>> +INC_PR = "r19"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://gcc34-reverse-compare.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-3.4.4.inc b/recipes/gcc/gcc-3.4.4.inc
>>> index 9a02c5d..b87e1e3 100644
>>> --- a/recipes/gcc/gcc-3.4.4.inc
>>> +++ b/recipes/gcc/gcc-3.4.4.inc
>>> @@ -1,6 +1,6 @@
>>> require gcc-common.inc
>>>
>>> -INC_PR = "r14"
>>> +INC_PR = "r15"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://gcc34-reverse-compare.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.1.0.inc b/recipes/gcc/gcc-4.1.0.inc
>>> index 7bb1a34..df0ae3f 100644
>>> --- a/recipes/gcc/gcc-4.1.0.inc
>>> +++ b/recipes/gcc/gcc-4.1.0.inc
>>> @@ -1,6 +1,6 @@
>>> require gcc-common.inc
>>>
>>> -INC_PR = "r9"
>>> +INC_PR = "r10"
>>>
>>> DEFAULT_PREFERENCE = "-1"
>>>
>>> diff --git a/recipes/gcc/gcc-4.1.1.inc b/recipes/gcc/gcc-4.1.1.inc
>>> index 68323ac..a960b41 100644
>>> --- a/recipes/gcc/gcc-4.1.1.inc
>>> +++ b/recipes/gcc/gcc-4.1.1.inc
>>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r0"
>>> +INC_PR = "r1"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://100-uclibc-conf.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.1.2.inc b/recipes/gcc/gcc-4.1.2.inc
>>> index 911d2d9..21bf486 100644
>>> --- a/recipes/gcc/gcc-4.1.2.inc
>>> +++ b/recipes/gcc/gcc-4.1.2.inc
>>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r21"
>>> +INC_PR = "r22"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://100-uclibc-conf.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.2.2.inc b/recipes/gcc/gcc-4.2.2.inc
>>> index 0eb1223..931de9a 100644
>>> --- a/recipes/gcc/gcc-4.2.2.inc
>>> +++ b/recipes/gcc/gcc-4.2.2.inc
>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r15"
>>> +INC_PR = "r16"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://100-uclibc-conf.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.2.3.inc b/recipes/gcc/gcc-4.2.3.inc
>>> index 1501c7e..b2fb029 100644
>>> --- a/recipes/gcc/gcc-4.2.3.inc
>>> +++ b/recipes/gcc/gcc-4.2.3.inc
>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r12"
>>> +INC_PR = "r17"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://100-uclibc-conf.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.2.4.inc b/recipes/gcc/gcc-4.2.4.inc
>>> index 3249c09..e96122a 100644
>>> --- a/recipes/gcc/gcc-4.2.4.inc
>>> +++ b/recipes/gcc/gcc-4.2.4.inc
>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r9"
>>> +INC_PR = "r10"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://100-uclibc-conf.patch;patch=1 \
>>> diff --git a/recipes/gcc/gcc-4.3.1.inc b/recipes/gcc/gcc-4.3.1.inc
>>> index 0b05f0a..3eaff45 100644
>>> --- a/recipes/gcc/gcc-4.3.1.inc
>>> +++ b/recipes/gcc/gcc-4.3.1.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r19"
>>> +INC_PR = "r20"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>> diff --git a/recipes/gcc/gcc-4.3.2.inc b/recipes/gcc/gcc-4.3.2.inc
>>> index 5483b8f..8d40d72 100644
>>> --- a/recipes/gcc/gcc-4.3.2.inc
>>> +++ b/recipes/gcc/gcc-4.3.2.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r9"
>>> +INC_PR = "r10"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>> diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
>>> index 46d5e35..47bfbc6 100644
>>> --- a/recipes/gcc/gcc-4.3.3.inc
>>> +++ b/recipes/gcc/gcc-4.3.3.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r10"
>>> +INC_PR = "r11"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>> diff --git a/recipes/gcc/gcc-4.3.4.inc b/recipes/gcc/gcc-4.3.4.inc
>>> index 2b1054c..ff02ac5 100644
>>> --- a/recipes/gcc/gcc-4.3.4.inc
>>> +++ b/recipes/gcc/gcc-4.3.4.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r7"
>>> +INC_PR = "r8"
>>>
>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>> diff --git a/recipes/gcc/gcc-4.4.1.inc b/recipes/gcc/gcc-4.4.1.inc
>>> index 9daff95..cbf28dd 100644
>>> --- a/recipes/gcc/gcc-4.4.1.inc
>>> +++ b/recipes/gcc/gcc-4.4.1.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r7"
>>> +INC_PR = "r8"
>>>
>>> FILESPATHPKG .= ":gcc-$PV"
>>>
>>> diff --git a/recipes/gcc/gcc-4.4.2.inc b/recipes/gcc/gcc-4.4.2.inc
>>> index 514cc9f..1ef1359 100644
>>> --- a/recipes/gcc/gcc-4.4.2.inc
>>> +++ b/recipes/gcc/gcc-4.4.2.inc
>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>
>>> DEPENDS = "mpfr gmp"
>>>
>>> -INC_PR = "r0"
>>> +INC_PR = "r1"
>>>
>>> FILESPATHPKG .= ":gcc-$PV"
>>>
>>> diff --git a/recipes/gcc/gcc-common.inc b/recipes/gcc/gcc-common.inc
>>> index 6e777e6..97b140c 100644
>>> --- a/recipes/gcc/gcc-common.inc
>>> +++ b/recipes/gcc/gcc-common.inc
>>> @@ -15,6 +15,11 @@ def get_gcc_fpu_setting(bb, d):
>>> return "--with-float=soft"
>>> return ""
>>>
>>> +def get_gcc_mips_plt_setting(bb, d):
>>> + if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'mips', 'mipsel' ] and 'mplt' in bb.data.getVar('DISTRO_FEATURES',d,1).split() :
>>> + return "--with-mips-plt"
>>> + return ""
>>> +
>>> # We really need HOST_SYS here for some packages and TARGET_SYS for others.
>>> # For now, libgcc is most important so we fix for that - RP.
>>> SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
>>> diff --git a/recipes/gcc/gcc-configure-common.inc b/recipes/gcc/gcc-configure-common.inc
>>> index 8a96326..ee6c0e7 100644
>>> --- a/recipes/gcc/gcc-configure-common.inc
>>> +++ b/recipes/gcc/gcc-configure-common.inc
>>> @@ -13,6 +13,8 @@ OBJC_linux-uclibceabi ?= ""
>>> OBJC_linux-uclibc ?= ""
>>> OBJC_avr ?= ""
>>> OBJC_nylon ?= ""
>>> +OBJC_mips ?= ""
>>> +OBJC_mipsel ?= ""
>>> OBJC ?= ",objc"
>>>
>>> # gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran'
>>> @@ -36,7 +38,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d,
>>> --program-prefix=${TARGET_PREFIX} \
>>> ${EXTRA_OECONF_BASE} \
>>> ${EXTRA_OECONF_FPU} \
>>> - ${EXTRA_OECONF_PATHS}"
>>> + ${EXTRA_OECONF_PATHS} \
>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>
>>> # Build uclibc compilers without cxa_atexit support
>>> EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
>>> diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
>>> index a2c4445..2ab1d7f 100644
>>> --- a/recipes/gcc/gcc-cross-initial.inc
>>> +++ b/recipes/gcc/gcc-cross-initial.inc
>>> @@ -16,7 +16,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>>> --program-prefix=${TARGET_PREFIX} \
>>> --with-sysroot=${STAGING_DIR_TARGET} \
>>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>>> - ${@get_gcc_fpu_setting(bb, d)}"
>>> + ${@get_gcc_fpu_setting(bb, d)} \
>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>
>>> do_install () {
>>> :
>>> diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
>>> index ccfa2b4..50792b6 100644
>>> --- a/recipes/gcc/gcc-cross-intermediate.inc
>>> +++ b/recipes/gcc/gcc-cross-intermediate.inc
>>> @@ -14,7 +14,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>>> --program-prefix=${TARGET_PREFIX} \
>>> --with-sysroot=${STAGING_DIR_TARGET} \
>>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>>> - ${@get_gcc_fpu_setting(bb, d)}"
>>> + ${@get_gcc_fpu_setting(bb, d)} \
>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>
>>> do_stage_append () {
>>> # get rid of dummy libc.so
>
> I did an arm build earlier and did not see this message at all.
> which gcc version are you building ? my guess is that some version
> does not include gcc-common.inc thats one reason it can happen
So you mean you broke gcc 4.3.3...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFLL5cIMkyGM64RGpERAgcMAKC50t+0uY87sloRWJ9azphpuAa0SQCgvDsf
JtckYxcIzz9Cz1yr/NUo0j4=
=t3de
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 12+ messages in thread* Re: [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt.
2009-12-21 15:40 ` Koen Kooi
@ 2009-12-21 15:54 ` Khem Raj
0 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2009-12-21 15:54 UTC (permalink / raw)
To: openembedded-devel
On Mon, Dec 21, 2009 at 7:40 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 21-12-09 16:11, Khem Raj wrote:
>> On Mon, Dec 21, 2009 at 1:18 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> Why am I getting these errors:
>>>
>>> NOTE: <type 'exceptions.NameError'>:name 'get_gcc_mips_plt_setting' is
>>> not defined while evaluating:
>>>
>>> when building kernel modules for an arm machine?
>>>
>>> On 19-12-09 23:26, Khem Raj wrote:
>>>> * Newer gcc (4.4+) has implemented -mplt option to
>>>> enable PLT and copy relocation extentions of MIPS ABI
>>>> which makes shared code run a lot faster. This feature
>>>> is however controlled by DISTRO_FEATURES which should
>>>> add 'mplt' to DISTRO_FEATURES to enable it.
>>>>
>>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>>>> ---
>>>> recipes/gcc/gcc-3.3.4.inc | 2 +-
>>>> recipes/gcc/gcc-3.4.3.inc | 2 +-
>>>> recipes/gcc/gcc-3.4.4.inc | 2 +-
>>>> recipes/gcc/gcc-4.1.0.inc | 2 +-
>>>> recipes/gcc/gcc-4.1.1.inc | 2 +-
>>>> recipes/gcc/gcc-4.1.2.inc | 2 +-
>>>> recipes/gcc/gcc-4.2.2.inc | 2 +-
>>>> recipes/gcc/gcc-4.2.3.inc | 2 +-
>>>> recipes/gcc/gcc-4.2.4.inc | 2 +-
>>>> recipes/gcc/gcc-4.3.1.inc | 2 +-
>>>> recipes/gcc/gcc-4.3.2.inc | 2 +-
>>>> recipes/gcc/gcc-4.3.3.inc | 2 +-
>>>> recipes/gcc/gcc-4.3.4.inc | 2 +-
>>>> recipes/gcc/gcc-4.4.1.inc | 2 +-
>>>> recipes/gcc/gcc-4.4.2.inc | 2 +-
>>>> recipes/gcc/gcc-common.inc | 5 +++++
>>>> recipes/gcc/gcc-configure-common.inc | 5 ++++-
>>>> recipes/gcc/gcc-cross-initial.inc | 3 ++-
>>>> recipes/gcc/gcc-cross-intermediate.inc | 3 ++-
>>>> 19 files changed, 28 insertions(+), 18 deletions(-)
>>>>
>>>> diff --git a/recipes/gcc/gcc-3.3.4.inc b/recipes/gcc/gcc-3.3.4.inc
>>>> index 635e617..a3fbdde 100644
>>>> --- a/recipes/gcc/gcc-3.3.4.inc
>>>> +++ b/recipes/gcc/gcc-3.3.4.inc
>>>> @@ -1,6 +1,6 @@
>>>> require gcc-common.inc
>>>>
>>>> -INC_PR = "r10"
>>>> +INC_PR = "r11"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://arm-gotoff.dpatch;patch=1;pnum=0 \
>>>> diff --git a/recipes/gcc/gcc-3.4.3.inc b/recipes/gcc/gcc-3.4.3.inc
>>>> index 72f9042..febe0fc 100644
>>>> --- a/recipes/gcc/gcc-3.4.3.inc
>>>> +++ b/recipes/gcc/gcc-3.4.3.inc
>>>> @@ -1,6 +1,6 @@
>>>> require gcc-common.inc
>>>>
>>>> -INC_PR = "r18"
>>>> +INC_PR = "r19"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://gcc34-reverse-compare.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-3.4.4.inc b/recipes/gcc/gcc-3.4.4.inc
>>>> index 9a02c5d..b87e1e3 100644
>>>> --- a/recipes/gcc/gcc-3.4.4.inc
>>>> +++ b/recipes/gcc/gcc-3.4.4.inc
>>>> @@ -1,6 +1,6 @@
>>>> require gcc-common.inc
>>>>
>>>> -INC_PR = "r14"
>>>> +INC_PR = "r15"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://gcc34-reverse-compare.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.1.0.inc b/recipes/gcc/gcc-4.1.0.inc
>>>> index 7bb1a34..df0ae3f 100644
>>>> --- a/recipes/gcc/gcc-4.1.0.inc
>>>> +++ b/recipes/gcc/gcc-4.1.0.inc
>>>> @@ -1,6 +1,6 @@
>>>> require gcc-common.inc
>>>>
>>>> -INC_PR = "r9"
>>>> +INC_PR = "r10"
>>>>
>>>> DEFAULT_PREFERENCE = "-1"
>>>>
>>>> diff --git a/recipes/gcc/gcc-4.1.1.inc b/recipes/gcc/gcc-4.1.1.inc
>>>> index 68323ac..a960b41 100644
>>>> --- a/recipes/gcc/gcc-4.1.1.inc
>>>> +++ b/recipes/gcc/gcc-4.1.1.inc
>>>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r0"
>>>> +INC_PR = "r1"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://100-uclibc-conf.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.1.2.inc b/recipes/gcc/gcc-4.1.2.inc
>>>> index 911d2d9..21bf486 100644
>>>> --- a/recipes/gcc/gcc-4.1.2.inc
>>>> +++ b/recipes/gcc/gcc-4.1.2.inc
>>>> @@ -2,7 +2,7 @@ require gcc-common.inc
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r21"
>>>> +INC_PR = "r22"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://100-uclibc-conf.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.2.2.inc b/recipes/gcc/gcc-4.2.2.inc
>>>> index 0eb1223..931de9a 100644
>>>> --- a/recipes/gcc/gcc-4.2.2.inc
>>>> +++ b/recipes/gcc/gcc-4.2.2.inc
>>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r15"
>>>> +INC_PR = "r16"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://100-uclibc-conf.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.2.3.inc b/recipes/gcc/gcc-4.2.3.inc
>>>> index 1501c7e..b2fb029 100644
>>>> --- a/recipes/gcc/gcc-4.2.3.inc
>>>> +++ b/recipes/gcc/gcc-4.2.3.inc
>>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r12"
>>>> +INC_PR = "r17"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://100-uclibc-conf.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.2.4.inc b/recipes/gcc/gcc-4.2.4.inc
>>>> index 3249c09..e96122a 100644
>>>> --- a/recipes/gcc/gcc-4.2.4.inc
>>>> +++ b/recipes/gcc/gcc-4.2.4.inc
>>>> @@ -3,7 +3,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r9"
>>>> +INC_PR = "r10"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://100-uclibc-conf.patch;patch=1 \
>>>> diff --git a/recipes/gcc/gcc-4.3.1.inc b/recipes/gcc/gcc-4.3.1.inc
>>>> index 0b05f0a..3eaff45 100644
>>>> --- a/recipes/gcc/gcc-4.3.1.inc
>>>> +++ b/recipes/gcc/gcc-4.3.1.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r19"
>>>> +INC_PR = "r20"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>>> diff --git a/recipes/gcc/gcc-4.3.2.inc b/recipes/gcc/gcc-4.3.2.inc
>>>> index 5483b8f..8d40d72 100644
>>>> --- a/recipes/gcc/gcc-4.3.2.inc
>>>> +++ b/recipes/gcc/gcc-4.3.2.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r9"
>>>> +INC_PR = "r10"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>>> diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
>>>> index 46d5e35..47bfbc6 100644
>>>> --- a/recipes/gcc/gcc-4.3.3.inc
>>>> +++ b/recipes/gcc/gcc-4.3.3.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r10"
>>>> +INC_PR = "r11"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>>> diff --git a/recipes/gcc/gcc-4.3.4.inc b/recipes/gcc/gcc-4.3.4.inc
>>>> index 2b1054c..ff02ac5 100644
>>>> --- a/recipes/gcc/gcc-4.3.4.inc
>>>> +++ b/recipes/gcc/gcc-4.3.4.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r7"
>>>> +INC_PR = "r8"
>>>>
>>>> SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>>>> file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
>>>> diff --git a/recipes/gcc/gcc-4.4.1.inc b/recipes/gcc/gcc-4.4.1.inc
>>>> index 9daff95..cbf28dd 100644
>>>> --- a/recipes/gcc/gcc-4.4.1.inc
>>>> +++ b/recipes/gcc/gcc-4.4.1.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r7"
>>>> +INC_PR = "r8"
>>>>
>>>> FILESPATHPKG .= ":gcc-$PV"
>>>>
>>>> diff --git a/recipes/gcc/gcc-4.4.2.inc b/recipes/gcc/gcc-4.4.2.inc
>>>> index 514cc9f..1ef1359 100644
>>>> --- a/recipes/gcc/gcc-4.4.2.inc
>>>> +++ b/recipes/gcc/gcc-4.4.2.inc
>>>> @@ -7,7 +7,7 @@ LICENSE = "GPLv3"
>>>>
>>>> DEPENDS = "mpfr gmp"
>>>>
>>>> -INC_PR = "r0"
>>>> +INC_PR = "r1"
>>>>
>>>> FILESPATHPKG .= ":gcc-$PV"
>>>>
>>>> diff --git a/recipes/gcc/gcc-common.inc b/recipes/gcc/gcc-common.inc
>>>> index 6e777e6..97b140c 100644
>>>> --- a/recipes/gcc/gcc-common.inc
>>>> +++ b/recipes/gcc/gcc-common.inc
>>>> @@ -15,6 +15,11 @@ def get_gcc_fpu_setting(bb, d):
>>>> return "--with-float=soft"
>>>> return ""
>>>>
>>>> +def get_gcc_mips_plt_setting(bb, d):
>>>> + if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'mips', 'mipsel' ] and 'mplt' in bb.data.getVar('DISTRO_FEATURES',d,1).split() :
>>>> + return "--with-mips-plt"
>>>> + return ""
>>>> +
>>>> # We really need HOST_SYS here for some packages and TARGET_SYS for others.
>>>> # For now, libgcc is most important so we fix for that - RP.
>>>> SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
>>>> diff --git a/recipes/gcc/gcc-configure-common.inc b/recipes/gcc/gcc-configure-common.inc
>>>> index 8a96326..ee6c0e7 100644
>>>> --- a/recipes/gcc/gcc-configure-common.inc
>>>> +++ b/recipes/gcc/gcc-configure-common.inc
>>>> @@ -13,6 +13,8 @@ OBJC_linux-uclibceabi ?= ""
>>>> OBJC_linux-uclibc ?= ""
>>>> OBJC_avr ?= ""
>>>> OBJC_nylon ?= ""
>>>> +OBJC_mips ?= ""
>>>> +OBJC_mipsel ?= ""
>>>> OBJC ?= ",objc"
>>>>
>>>> # gcc 3.x expects 'f77', 4.0 expects 'f95', 4.1 and 4.2 expect 'fortran'
>>>> @@ -36,7 +38,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d,
>>>> --program-prefix=${TARGET_PREFIX} \
>>>> ${EXTRA_OECONF_BASE} \
>>>> ${EXTRA_OECONF_FPU} \
>>>> - ${EXTRA_OECONF_PATHS}"
>>>> + ${EXTRA_OECONF_PATHS} \
>>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>>
>>>> # Build uclibc compilers without cxa_atexit support
>>>> EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
>>>> diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
>>>> index a2c4445..2ab1d7f 100644
>>>> --- a/recipes/gcc/gcc-cross-initial.inc
>>>> +++ b/recipes/gcc/gcc-cross-initial.inc
>>>> @@ -16,7 +16,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>>>> --program-prefix=${TARGET_PREFIX} \
>>>> --with-sysroot=${STAGING_DIR_TARGET} \
>>>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>>>> - ${@get_gcc_fpu_setting(bb, d)}"
>>>> + ${@get_gcc_fpu_setting(bb, d)} \
>>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>>
>>>> do_install () {
>>>> :
>>>> diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
>>>> index ccfa2b4..50792b6 100644
>>>> --- a/recipes/gcc/gcc-cross-intermediate.inc
>>>> +++ b/recipes/gcc/gcc-cross-intermediate.inc
>>>> @@ -14,7 +14,8 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
>>>> --program-prefix=${TARGET_PREFIX} \
>>>> --with-sysroot=${STAGING_DIR_TARGET} \
>>>> --with-build-sysroot=${STAGING_DIR_TARGET} \
>>>> - ${@get_gcc_fpu_setting(bb, d)}"
>>>> + ${@get_gcc_fpu_setting(bb, d)} \
>>>> + ${@get_gcc_mips_plt_setting(bb, d)}"
>>>>
>>>> do_stage_append () {
>>>> # get rid of dummy libc.so
>>
>> I did an arm build earlier and did not see this message at all.
>> which gcc version are you building ? my guess is that some version
>> does not include gcc-common.inc thats one reason it can happen
>
> So you mean you broke gcc 4.3.3...
eh not intentionally if its so... :)
gcc 4.3.3 recipes include gcc-common.inc so it should get
the function defined. I did not test it 4.3.3, but only with gcc
4.4 and 4.2 I will give it a shot in the next run and see if I can
reproduce it.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
>
> iD8DBQFLL5cIMkyGM64RGpERAgcMAKC50t+0uY87sloRWJ9azphpuAa0SQCgvDsf
> JtckYxcIzz9Cz1yr/NUo0j4=
> =t3de
> -----END PGP SIGNATURE-----
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2009-12-21 15:56 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-19 22:26 [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Khem Raj
2009-12-19 22:26 ` [PATCH 3/3] minimal: Add 'mplt' to DISTRO_FEATURES Khem Raj
2009-12-20 3:22 ` Holger Hans Peter Freyther
2009-12-20 9:01 ` Khem Raj
2009-12-20 9:21 ` Holger Hans Peter Freyther
2009-12-20 17:52 ` Khem Raj
2009-12-21 3:24 ` Holger Hans Peter Freyther
2009-12-20 3:22 ` [PATCH 2/3] gcc: Enable mips plt extentions if DISTRO_FEATURE has mplt Holger Hans Peter Freyther
2009-12-21 9:18 ` Koen Kooi
2009-12-21 15:11 ` Khem Raj
2009-12-21 15:40 ` Koen Kooi
2009-12-21 15:54 ` Khem Raj
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.