[scilab] Add patch to fix i686 build by using dynamic stack

Orion Poplawski orion at fedoraproject.org
Fri May 17 21:36:12 UTC 2013


commit 04533800a206bb2dfb10278ced656994dc8c2065
Author: Orion Poplawski <orion at nwra.com>
Date:   Fri May 17 15:36:10 2013 -0600

    Add patch to fix i686 build by using dynamic stack

 scilab-stack.patch |   45 +++++++++++++++++++++++++++++++++++++++++++++
 scilab.spec        |    9 ++++++++-
 2 files changed, 53 insertions(+), 1 deletions(-)
---
diff --git a/scilab-stack.patch b/scilab-stack.patch
new file mode 100644
index 0000000..18832fc
--- /dev/null
+++ b/scilab-stack.patch
@@ -0,0 +1,45 @@
+diff -up scilab-5.4.1/configure.stack scilab-5.4.1/configure
+--- scilab-5.4.1/configure.stack	2013-05-16 15:39:05.392421987 -0600
++++ scilab-5.4.1/configure	2013-05-17 15:22:16.642916279 -0600
+@@ -9653,15 +9653,8 @@ SCILIBS_CFLAGS=''
+ SCILIBS_CXXFLAGS=''
+ SCILIBS_FFLAGS=''
+ 
+-if test $IS_64_BITS_CPU = true -o "$MACOSX" = "1"; then
+-   if test $f90compatible = false; then
+-      as_fn_error $? "64 bits support needs a fortran 90 compiler (try --with-gfortran)." "$LINENO" 5
+-   fi
+-
+ $as_echo "#define USE_DYNAMIC_STACK /**/" >>confdefs.h
+ 
+-fi
+-
+  if test $IS_64_BITS_CPU = true; then
+   IS_64_BITS_CPU_TRUE=
+   IS_64_BITS_CPU_FALSE='#'
+@@ -9670,13 +9663,8 @@ else
+   IS_64_BITS_CPU_FALSE=
+ fi
+ 
+- if test $IS_64_BITS_CPU = true -o "$MACOSX" = "1"; then
+   USE_DYNAMIC_STACK_TRUE=
+   USE_DYNAMIC_STACK_FALSE='#'
+-else
+-  USE_DYNAMIC_STACK_TRUE='#'
+-  USE_DYNAMIC_STACK_FALSE=
+-fi
+ 
+ 
+ ################
+@@ -38934,11 +38922,7 @@ fi
+ 
+ 
+ # Generate stack.h
+-if test "$IS_64_BITS_CPU" = true -o "$MACOSX" = "1"; then
+    stack_h_cpp_flags=-DUSE_DYNAMIC_STACK
+-else
+-   stack_h_cpp_flags=
+-fi
+ 
+ ac_config_commands="$ac_config_commands modules/core/includes/stack.h"
+ 
diff --git a/scilab.spec b/scilab.spec
index c3d32b8..0fe5738 100644
--- a/scilab.spec
+++ b/scilab.spec
@@ -31,6 +31,9 @@ Source0:        http://www.scilab.org/download/%{version}/scilab-%{version}-src.
 
 # Bug 767102 - help() should suggest scilab-doc
 Patch1:         %{name}-0001-Use-pkcon-to-install-doc-package.patch
+# Bug 64307 - Use dynamic stack on 32-bit to avoid miscompilation
+# http://bugzilla.scilab.org/show_bug.cgi?id=12625
+Patch2:         %{name}-stack.patch
 
 # Dependencies are extracted from :
 # "http://wiki.scilab.org/Dependencies of Scilab 5.X"
@@ -188,6 +191,7 @@ This package provide test files for Scilab.
 %endif
 
 %patch1 -p2 -b .pkgcon
+%patch2 -p1 -b .stack
 
 # Update saxon dependency
 # http://bugzilla.scilab.org/show_bug.cgi?id=8479
@@ -203,7 +207,7 @@ mv COPYING.utf8 COPYING
 
 
 %build
-./configure --without-matio
+%configure --without-matio
 
 make %{?_smp_mflags}
 make %{?_smp_mflags} doc
@@ -292,6 +296,9 @@ fi
 %{_datadir}/%{name}/modules/*/tests
 
 %changelog
+* Fri May 17 2013 Orion Poplawski <orion at cora.nwra.com> - 5.4.1-3
+- Add patch to fix i686 build by using dynamic stack
+
 * Fri May 17 2013 Clément David <c.david86 at gmail.com> - 5.4.1-3
 - Fix the build, i686 built had failures on macro generation.
 


More information about the scm-commits mailing list