Browse Source

icu: workaround toolchain bugs

Many of ARM Sourcery CodeBench toolchain have a bug when compiling
icu's translit.cpp source file. The bug is trigerred when there is a
combination of "-W -Wall" and "-Os", and causes an internal compiler
error. The bug has been reported to Mentor Graphics.

Even though it is clearly a toolchain bug, having a workaround for it
is trivial in this case. So it will avoid our users falling into this
internal compiler error, and allow our autobuilders to test more
packages using this Sourcery CodeBench toolchain.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Thomas Petazzoni 12 năm trước cách đây
mục cha
commit
867b986721
1 tập tin đã thay đổi với 36 bổ sung0 xóa
  1. 36 0
      package/icu/icu-workaround-toolchain-bugs.patch

+ 36 - 0
package/icu/icu-workaround-toolchain-bugs.patch

@@ -0,0 +1,36 @@
+Workaround toolchain bugs
+
+Many of ARM Sourcery CodeBench toolchain have a bug when compiling
+icu's translit.cpp source file. The bug is trigerred when there is a
+combination of "-W -Wall" and "-Os", and causes an internal compiler
+error. The bug has been reported to Mentor Graphics.
+
+Even though it is clearly a toolchain bug, having a workaround for it
+is trivial in this case. So it will avoid our users falling into this
+internal compiler error, and allow our autobuilders to test more
+packages using this Sourcery CodeBench toolchain.qq
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/source/configure
+===================================================================
+--- a/source/configure
++++ b/source/configure
+@@ -4320,7 +4320,7 @@
+                 echo "# Note: We are not using '-ansi' with HP/UX GCC because int64_t broke, see <http://bugs.icu-project.org/trac/ticket/8493>"
+                 CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long";;
+             *)
+-                CFLAGS="$CFLAGS -Wall -ansi -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long";;
++                CFLAGS="$CFLAGS -ansi -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long";;
+             esac
+         else
+             case "${host}" in
+@@ -4333,7 +4333,7 @@
+         fi
+         if test "$GXX" = yes
+         then
+-            CXXFLAGS="$CXXFLAGS -W -Wall -ansi -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
++            CXXFLAGS="$CXXFLAGS -ansi -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
+             case "${host}" in
+             *-*-solaris*)
+                 CXXFLAGS="$CXXFLAGS -D__STDC__=0";;