[oe] [PATCH 1/2 v2] sh: provide patch of __set_fpscr prototype

Khem Raj raj.khem at gmail.com
Thu Sep 16 02:37:55 UTC 2010


On (16/09/10 10:01), Nobuhiro Iwamatsu wrote:
> When we compile a program that used _FPU_SETCW in sh4 in C++,
> become the error.
> his provides a patch revising this problem.

I can not apply the patch it says its malformed for both of your patches
I tried git am as well as applying manually. you can generate the patch
emails using guidelines here

http://wiki.openembedded.net/index.php/How_to_submit_a_patch_for_dummies

Thanks
-Khem

> 
> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj at renesas.com>
> ---
>  recipes/eglibc/eglibc_2.10.bb                 |    3 +-
>  recipes/eglibc/eglibc_2.11.bb                 |    3 +-
>  recipes/eglibc/eglibc_2.12.bb                 |    3 +-
>  recipes/eglibc/eglibc_2.9.bb                  |    7 +++--
>  recipes/eglibc/eglibc_svn.bb                  |    5 ++-
>  recipes/eglibc/files/sh4_set_fpscr.patch      |   23 +++++++++++++++++++
>  recipes/eglibc/files/sh4_set_fpscr_2.12.patch |   29 +++++++++++++++++++++++++
>  7 files changed, 65 insertions(+), 8 deletions(-)
>  create mode 100644 recipes/eglibc/files/sh4_set_fpscr.patch
>  create mode 100644 recipes/eglibc/files/sh4_set_fpscr_2.12.patch
> 
> diff --git a/recipes/eglibc/eglibc_2.10.bb b/recipes/eglibc/eglibc_2.10.bb
> index c10db7d..94835b6 100644
> --- a/recipes/eglibc/eglibc_2.10.bb
> +++ b/recipes/eglibc/eglibc_2.10.bb
> @@ -3,7 +3,7 @@ require eglibc.inc
>  DEPENDS += "gperf-native"
>  FILESPATHPKG =. "eglibc-svn:"
>  PV = "2.10"
> -PR = "${INC_PR}.9"
> +PR = "${INC_PR}.10"
>  PR_append = "+svnr${SRCPV}"
>  SRCREV="10152"
>  EGLIBC_BRANCH="eglibc-2_10"
> @@ -12,6 +12,7 @@ SRC_URI =
> "svn://svn.eglibc.org/branches;module=${EGLIBC_BRANCH};proto=svn \
>             file://armv4t-interworking.patch \
>             file://IO-acquire-lock-fix.patch \
>             file://shorten-build-commands.patch \
> +           file://sh4_set_fpscr.patch \
>             file://etc/ld.so.conf \
>             file://generate-supported.mk"
>  S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
> diff --git a/recipes/eglibc/eglibc_2.11.bb b/recipes/eglibc/eglibc_2.11.bb
> index bece90f..dafc301 100644
> --- a/recipes/eglibc/eglibc_2.11.bb
> +++ b/recipes/eglibc/eglibc_2.11.bb
> @@ -4,7 +4,7 @@ DEFAULT_PREFERENCE = "-1"
>  DEPENDS += "gperf-native"
>  FILESPATHPKG =. "eglibc-svn:"
>  PV = "2.11"
> -PR = "${INC_PR}.6"
> +PR = "${INC_PR}.7"
>  PR_append = "+svnr${SRCPV}"
>  SRCREV="10690"
>  EGLIBC_BRANCH="eglibc-2_11"
> @@ -12,6 +12,7 @@ SRC_URI =
> "svn://svn.eglibc.org/branches;module=${EGLIBC_BRANCH};proto=svn \
>             file://eglibc-svn-arm-lowlevellock-include-tls.patch \
>             file://IO-acquire-lock-fix.patch \
>             file://shorten-build-commands.patch \
> +           file://sh4_set_fpscr.patch \
>             file://etc/ld.so.conf \
>             file://generate-supported.mk"
>  S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
> diff --git a/recipes/eglibc/eglibc_2.12.bb b/recipes/eglibc/eglibc_2.12.bb
> index 0d08c56..e0a0ebe 100644
> --- a/recipes/eglibc/eglibc_2.12.bb
> +++ b/recipes/eglibc/eglibc_2.12.bb
> @@ -4,7 +4,7 @@ DEFAULT_PREFERENCE = "-1"
>  DEPENDS += "gperf-native"
>  FILESPATHPKG =. "eglibc-svn:"
>  PV = "2.12"
> -PR = "${INC_PR}.3"
> +PR = "${INC_PR}.4"
>  PR_append = "+svnr${SRCPV}"
>  SRCREV="11306"
>  EGLIBC_BRANCH="eglibc-2_12"
> @@ -12,6 +12,7 @@ SRC_URI =
> "svn://svn.eglibc.org/branches;module=${EGLIBC_BRANCH};proto=svn \
>             file://eglibc-svn-arm-lowlevellock-include-tls.patch \
>             file://IO-acquire-lock-fix.patch \
>             file://shorten-build-commands.patch \
> +           file://sh4_set_fpscr_2.12.patch \
>             file://etc/ld.so.conf \
>             file://generate-supported.mk"
>  S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
> diff --git a/recipes/eglibc/eglibc_2.9.bb b/recipes/eglibc/eglibc_2.9.bb
> index f83861e..39ee76d 100644
> --- a/recipes/eglibc/eglibc_2.9.bb
> +++ b/recipes/eglibc/eglibc_2.9.bb
> @@ -3,15 +3,16 @@ require eglibc.inc
>  DEPENDS += "gperf-native"
>  FILESPATHPKG =. "eglibc-svn:"
>  PV = "2.9"
> -PR = "${INC_PR}.9"
> +PR = "${INC_PR}.10"
>  PR_append = "+svnr${SRCPV}"
>  SRCREV="10153"
>  EGLIBC_BRANCH="eglibc-2_9"
>  SRC_URI = "svn://svn.eglibc.org/branches;module=${EGLIBC_BRANCH};proto=svn \
>             file://eglibc-svn-arm-lowlevellock-include-tls.patch \
> -	   file://armv4t-interworking.patch \
> -	   file://IO-acquire-lock-fix.patch \
> +           file://armv4t-interworking.patch \
> +           file://IO-acquire-lock-fix.patch \
>             file://shorten-build-commands.patch \
> +           file://sh4_set_fpscr.patch \
>             file://etc/ld.so.conf \
>             file://generate-supported.mk"
>  S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
> diff --git a/recipes/eglibc/eglibc_svn.bb b/recipes/eglibc/eglibc_svn.bb
> index 3b7fb84..a37c3ed 100644
> --- a/recipes/eglibc/eglibc_svn.bb
> +++ b/recipes/eglibc/eglibc_svn.bb
> @@ -5,11 +5,12 @@ SRCREV = "11461"
>  DEFAULT_PREFERENCE = "-1"
>  FILESPATHPKG =. "eglibc-svn:"
>  PV = "2.12+svnr${SRCPV}"
> -PR = "${INC_PR}.0"
> +PR = "${INC_PR}.1"
>  EGLIBC_BRANCH="trunk"
>  SRC_URI = "svn://svn.eglibc.org;module=${EGLIBC_BRANCH} \
>             file://eglibc-svn-arm-lowlevellock-include-tls.patch \
> -	   file://IO-acquire-lock-fix.patch \
> +           file://IO-acquire-lock-fix.patch \
> +           file://sh4_set_fpscr_2.12.patch \
>             file://etc/ld.so.conf \
>             file://generate-supported.mk"
>  S = "${WORKDIR}/${EGLIBC_BRANCH}/libc"
> diff --git a/recipes/eglibc/files/sh4_set_fpscr.patch
> b/recipes/eglibc/files/sh4_set_fpscr.patch
> new file mode 100644
> index 0000000..f3fd5c1
> --- /dev/null
> +++ b/recipes/eglibc/files/sh4_set_fpscr.patch
> @@ -0,0 +1,23 @@
> +# http://sourceware.org/ml/libc-alpha/2009-12/msg00009.html
> +# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=565369
> +---
> + sysdeps/sh/sh4/fpu/fpu_control.h |    8 ++++++++
> + 1 file changed, 8 insertions(+)
> +
> +--- a/sysdeps/sh/sh4/fpu/fpu_control.h
> ++++ b/sysdeps/sh/sh4/fpu/fpu_control.h
> +@@ -45,6 +45,14 @@
> + #define _FPU_GETCW(cw) __asm__ ("sts fpscr,%0" : "=r" (cw))
> +
> + #if defined __GNUC__
> ++/* Allow the use in C++ code.  */
> ++#ifdef __cplusplus
> ++extern "C" {
> ++#endif
> ++extern void __set_fpscr (unsigned long);
> ++#ifdef __cplusplus
> ++}
> ++#endif  /* C++ */
> + #define _FPU_SETCW(cw) __set_fpscr ((cw))
> + #else
> + #define _FPU_SETCW(cw) __asm__ ("lds %0,fpscr" : : "r" (cw))
> diff --git a/recipes/eglibc/files/sh4_set_fpscr_2.12.patch
> b/recipes/eglibc/files/sh4_set_fpscr_2.12.patch
> new file mode 100644
> index 0000000..19cccc0
> --- /dev/null
> +++ b/recipes/eglibc/files/sh4_set_fpscr_2.12.patch
> @@ -0,0 +1,29 @@
> +diff --git a/sysdeps/sh/sh4/fpu/fpu_control.h
> b/sysdeps/sh/sh4/fpu/fpu_control.h
> +index d1be46d..3ea37d3 100644
> +--- a/sysdeps/sh/sh4/fpu/fpu_control.h
> ++++ b/sysdeps/sh/sh4/fpu/fpu_control.h
> +@@ -1,5 +1,5 @@
> + /* FPU control word definitions.  SH version.
> +-   Copyright (C) 1999, 2000, 2009 Free Software Foundation, Inc.
> ++   Copyright (C) 1999, 2000, 2009, 2010 Free Software Foundation, Inc.
> +    This file is part of the GNU C Library.
> +
> +    The GNU C Library is free software; you can redistribute it and/or
> +@@ -46,7 +46,14 @@ typedef unsigned int fpu_control_t;
> +
> + #if defined __GNUC__
> + /* GCC provides this function.  */
> ++/* Allow the use in C++ code.  */
> ++#ifdef __cplusplus
> ++extern "C" {
> ++#endif
> + extern void __set_fpscr (unsigned long);
> ++#ifdef __cplusplus
> ++}
> ++#endif  /* C++ */
> + #define _FPU_SETCW(cw) __set_fpscr ((cw))
> + #else
> + #define _FPU_SETCW(cw) __asm__ ("lds %0,fpscr" : : "r" (cw))
> +--
> +1.7.1
> +
> -- 
> 1.7.1
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel




More information about the Openembedded-devel mailing list