r46403 - in /packages/scilab/branches/5.4/debian: changelog control patches/dynamic-stack.diff patches/newautomake.diff patches/series rules

sylvestre at users.alioth.debian.org sylvestre at users.alioth.debian.org
Tue Dec 3 17:08:22 UTC 2013


Author: sylvestre
Date: Tue Dec  3 17:08:21 2013
New Revision: 46403

URL: http://svn.debian.org/wsvn/debian-science/?sc=1&rev=46403
Log:
Backport of an upstream change in the 5.5.0 beta release (which I did)
Enabling the dynamic stack (a magic fortran work around). It makes
Scilab build with gcc 4.8 and fixes some other arch related bugs.
(Closes: #723644)

Added:
    packages/scilab/branches/5.4/debian/patches/dynamic-stack.diff
    packages/scilab/branches/5.4/debian/patches/newautomake.diff
Modified:
    packages/scilab/branches/5.4/debian/changelog
    packages/scilab/branches/5.4/debian/control
    packages/scilab/branches/5.4/debian/patches/series
    packages/scilab/branches/5.4/debian/rules

Modified: packages/scilab/branches/5.4/debian/changelog
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/changelog?rev=46403&op=diff
==============================================================================
--- packages/scilab/branches/5.4/debian/changelog	(original)
+++ packages/scilab/branches/5.4/debian/changelog	Tue Dec  3 17:08:21 2013
@@ -1,3 +1,12 @@
+scilab (5.4.1-5) unstable; urgency=low
+
+  * Backport of an upstream change in the 5.5.0 beta release (which I did)
+    Enabling the dynamic stack (a magic fortran work around). It makes
+    Scilab build with gcc 4.8 and fixes some other arch related bugs.
+    (Closes: #723644)
+
+ -- Sylvestre Ledru <sylvestre at debian.org>  Sat, 23 Nov 2013 12:09:16 +0100
+
 scilab (5.4.1-4) unstable; urgency=low
 
   * Fix the cyclic dependencies on libscilab2-java (Closes: #718135)

Modified: packages/scilab/branches/5.4/debian/control
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/control?rev=46403&op=diff
==============================================================================
--- packages/scilab/branches/5.4/debian/control	(original)
+++ packages/scilab/branches/5.4/debian/control	Tue Dec  3 17:08:21 2013
@@ -5,7 +5,7 @@
 Uploaders: Sylvestre Ledru <sylvestre at debian.org>
 Build-Depends: autoconf, automake, cdbs, debhelper (>= 7), gfortran,
  default-jdk, chrpath, ocaml-nox (>= 3.11.2-3), fakeroot,
- tcl8.5-dev, tk8.5-dev, libxml2-dev, libpcre3-dev,
+ tcl8.5-dev, tk8.5-dev, libxml2-dev, libpcre3-dev, dh-autoreconf,
  gettext, libreadline-dev, pkg-config, procps, dpkg-dev (>= 1.16.0),
 # numerical libraries
  libblas-dev | librefblas3-dev | libatlas-base-dev, liblapack-dev,

Added: packages/scilab/branches/5.4/debian/patches/dynamic-stack.diff
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/patches/dynamic-stack.diff?rev=46403&op=file
==============================================================================
--- packages/scilab/branches/5.4/debian/patches/dynamic-stack.diff	(added)
+++ packages/scilab/branches/5.4/debian/patches/dynamic-stack.diff	Tue Dec  3 17:08:21 2013
@@ -0,0 +1,266 @@
+Index: scilab-5.4.1/configure.ac
+===================================================================
+--- scilab-5.4.1.orig/configure.ac	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/configure.ac	2013-11-23 11:05:06.000000000 +0100
+@@ -709,11 +709,9 @@
+    if test $f90compatible = false; then
+       AC_MSG_ERROR([64 bits support needs a fortran 90 compiler (try --with-gfortran).])
+    fi
+-   AC_DEFINE([USE_DYNAMIC_STACK], [], [If we are building a 64 bits version])
+ fi
+ 
+ AM_CONDITIONAL(IS_64_BITS_CPU, test $IS_64_BITS_CPU = true)
+-AM_CONDITIONAL(USE_DYNAMIC_STACK, test $IS_64_BITS_CPU = true -o "$MACOSX" = "1")
+ 
+ ################
+ ## SSE
+@@ -1906,23 +1904,6 @@
+ # This script is used by Xcos in order to regenerate the function/block list
+ AC_CONFIG_COMMANDS_POST([chmod +x $SCI_SRCDIR_FULL/modules/scicos_blocks/src/scripts/GenBlocks.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/scicompile.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/compilerDetection.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/configure])
+ 
+-# 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([modules/core/includes/stack.h],
+-  [if ! $CPP $stack_h_cpp_flags - < $srcdir/modules/core/includes/stack.h.in |\
+-              $GREP -v '^#' > $srcdir/modules/core/includes/stack.h ; then
+-     AC_MSG_ERROR([stack.h generation failed])
+-   fi],
+-  [CPP="$CPP"
+-   GREP="$GREP"
+-   stack_h_cpp_flags="$stack_h_cpp_flags"
+-  ])
+-
+ AC_OUTPUT
+ 
+ # To distribution packager, you can uncomment this stuff is you want to
+Index: scilab-5.4.1/modules/core/Makefile.am
+===================================================================
+--- scilab-5.4.1.orig/modules/core/Makefile.am	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/Makefile.am	2013-11-23 11:05:06.000000000 +0100
+@@ -99,7 +99,8 @@
+ src/c/sci_mem_alloc.c \
+ src/c/hashtable/hashtable.c \
+ src/c/hashtable/hashtable_itr.c \
+-src/c/hashtable/hashtable_utility.c
++src/c/hashtable/hashtable_utility.c \
++src/c/scimem64.c
+ 
+ CORE_CXX_SOURCES = src/cpp/hashtable_core.cpp \
+ src/cpp/namstr.cpp \
+@@ -107,9 +108,7 @@
+ src/cpp/demangle.cpp \
+ src/cpp/backtrace_print.cpp
+ 
+-if USE_DYNAMIC_STACK
+-CORE_C_SOURCES += src/c/scimem64.c
+-endif
++
+ 
+ CORE_FORTRAN_SOURCES = src/fortran/clunit.f \
+ src/fortran/getlin.f \
+@@ -194,11 +193,8 @@
+ src/fortran/stackr2d.f \
+ src/fortran/stacki2d.f \
+ src/fortran/stackc2i.f \
+-src/fortran/isinstring.f
+-
+-if USE_DYNAMIC_STACK
+-CORE_FORTRAN_SOURCES += src/fortran/relocstack.f
+-endif
++src/fortran/isinstring.f \
++src/fortran/relocstack.f
+ 
+ GATEWAY_C_SOURCES = sci_gateway/c/sci_stacksize.c \
+ sci_gateway/c/sci_resume.c \
+Index: scilab-5.4.1/modules/core/includes/machine.h.in
+===================================================================
+--- scilab-5.4.1.orig/modules/core/includes/machine.h.in	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/includes/machine.h.in	2013-11-23 11:05:06.000000000 +0100
+@@ -473,9 +473,6 @@
+ /* If it is UMFPACK/Suitesparse or UMFPACK standalone */
+ #undef UMFPACK_SUITESPARSE
+ 
+-/* If we are building a 64 bits version */
+-#undef USE_DYNAMIC_STACK
+-
+ /* Version number of package */
+ #undef VERSION
+ 
+Index: scilab-5.4.1/modules/core/includes/stack-def.h
+===================================================================
+--- scilab-5.4.1.orig/modules/core/includes/stack-def.h	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/includes/stack-def.h	2013-11-23 11:21:39.000000000 +0100
+@@ -66,11 +66,7 @@
+  */
+ typedef struct 
+ {
+-#ifdef USE_DYNAMIC_STACK
+ 	double *Stk;
+-#else
+-	double Stk[vsiz];
+-#endif
+ } STACK_struct;
+ 
+ IMPORT STACK_struct C2F(stack);
+Index: scilab-5.4.1/modules/core/includes/stack.h.in
+===================================================================
+--- scilab-5.4.1.orig/modules/core/includes/stack.h.in	2013-11-23 11:04:55.000000000 +0100
++++ scilab-5.4.1/modules/core/includes/stack.h.in	2013-11-23 11:21:58.000000000 +0100
+@@ -37,7 +37,6 @@
+       integer intersiz
+       parameter (intersiz=1024)
+ c
+-#ifdef USE_DYNAMIC_STACK
+       integer, pointer :: stack_reserved_for_c__
+       double precision, pointer, dimension(:) ::  stk
+       integer,          pointer, dimension(:) :: istk
+@@ -46,21 +45,6 @@
+       complex*16,       pointer, dimension(:) :: zstk
+       common /stack/ stack_reserved_for_c__, stk,
+      $  istk, sstk, cstk, zstk
+-#else
+-      double precision stk(vsiz)
+-      common /stack/ stk
+-      integer istk(2*vsiz)
+-      equivalence (istk(1),stk(1))
+-
+-      real sstk(2*vsiz)
+-      equivalence (sstk(1),stk(1))
+-       
+-      character cstk*(4*vsiz)
+-      equivalence (cstk,stk(1))
+-
+-      complex*16 zstk(vsiz/2)
+-      equivalence (zstk(1),stk(1))
+-#endif
+ 
+       integer bot,top,idstk(nsiz,isizt),lstk(isizt),leps,bbot,bot0,isiz
+       integer gbot,gtop,infstk(isizt)
+Index: scilab-5.4.1/modules/core/src/c/getmaxMALLOC.c
+===================================================================
+--- scilab-5.4.1.orig/modules/core/src/c/getmaxMALLOC.c	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/src/c/getmaxMALLOC.c	2013-11-23 11:05:06.000000000 +0100
+@@ -24,7 +24,7 @@
+ #define LONG_MAX 2147483647L
+ #endif
+ 
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+ #ifndef MAXLONG32
+ #define MAXLONG32 2147483647L
+ #endif
+@@ -87,7 +87,7 @@
+ #else
+ unsigned long GetLargestFreeMemoryRegion(void)
+ {
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     /* we need to limit values to 32 bits for Scilab :( */
+     return MAXLONG32;
+ #else
+@@ -123,7 +123,7 @@
+     }
+ 
+     return largestSize;
+-#endif /* #ifdef USE_DYNAMIC_STACK */
++#endif /* #ifdef _MSC_VER (was: USE_DYNAMIC_STACK) */
+ }
+ #endif
+ /*-----------------------------------------------------------------------------------*/
+Index: scilab-5.4.1/modules/core/src/c/scimem.c
+===================================================================
+--- scilab-5.4.1.orig/modules/core/src/c/scimem.c	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/src/c/scimem.c	2013-11-23 11:05:06.000000000 +0100
+@@ -17,19 +17,12 @@
+ #include "localization.h"
+ #include "BOOL.h"
+ /*--------------------------------------------------------------------------*/
+-#ifdef USE_DYNAMIC_STACK
+ extern int scimem64(int *n, int newsize, BOOL isglobal);
+ extern void freemem64(BOOL isglobal);
+-#else
+-static char *the_p = NULL;
+-static char *the_ps = NULL;
+-static char *the_gp = NULL;
+-static char *the_gps = NULL;
+-#endif
+ /*--------------------------------------------------------------------------*/
+ int C2F(scimem) (int *newsize, int *ptr)
+ {
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     return scimem64(ptr, *newsize, FALSE);
+ #else
+     register char *p1 = NULL;
+@@ -68,7 +61,7 @@
+ /*--------------------------------------------------------------------------*/
+ int C2F(scigmem) (int *n, int *ptr)
+ {
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     return scimem64(ptr, *n, TRUE);
+ #else
+     register char *p1 = NULL;
+@@ -102,7 +95,7 @@
+ /*--------------------------------------------------------------------------*/
+ void C2F(freegmem) (void)
+ {
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     freemem64(TRUE);
+ #else
+     if (the_gps != NULL)
+@@ -113,7 +106,7 @@
+ /*--------------------------------------------------------------------------*/
+ void C2F(freemem) (void)
+ {
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     freemem64(FALSE);
+ #else
+     if (the_ps != NULL)
+Index: scilab-5.4.1/modules/core/src/c/stackinfo.c
+===================================================================
+--- scilab-5.4.1.orig/modules/core/src/c/stackinfo.c	2013-11-23 11:05:07.000000000 +0100
++++ scilab-5.4.1/modules/core/src/c/stackinfo.c	2013-11-23 11:16:27.000000000 +0100
+@@ -45,7 +45,7 @@
+ 
+ /* MAXLONG on 64 bits platform is not 2147483647 but 9223372036854775807 */
+ /* For scilab's stack size, we need to limit to 2147483647 */
+-#ifdef USE_DYNAMIC_STACK
++#ifndef _MSC_VER
+     #ifndef MAXLONG32
+         #define MAXLONG32 2147483647L
+     #endif
+@@ -88,7 +88,7 @@
+ /*--------------------------------------------------------------------------*/
+ BOOL is_a_valid_size_for_scilab_stack(int sizestack)
+ {
+-#if (defined(_MSC_VER) && defined(_WIN64)) || defined (USE_DYNAMIC_STACK)
++#if (defined(_MSC_VER) && defined(_WIN64)) || !defined (_MSC_VER)
+     /* On x64 with scilab's stack , we need to limit stack access */
+     if ((unsigned long)sizestack >= get_max_memory_for_scilab_stack() + 1)
+     {
+@@ -108,7 +108,7 @@
+ /*--------------------------------------------------------------------------*/
+ unsigned long get_max_memory_for_scilab_stack(void)
+ {
+-#if (defined(_MSC_VER) && defined(_WIN64)) || defined (USE_DYNAMIC_STACK)
++#if (defined(_MSC_VER) && defined(_WIN64)) || !defined (_MSC_VER)
+     return MAXLONG32/sizeof(double);
+ #else
+     return MAXLONG/sizeof(double);
+Index: scilab-5.4.1/modules/core/includes/stack.h
+===================================================================
+--- scilab-5.4.1.orig/modules/core/includes/stack.h	2013-03-29 16:46:06.000000000 +0100
++++ scilab-5.4.1/modules/core/includes/stack.h	2013-11-23 11:44:51.000000000 +0100
+@@ -1,4 +1,3 @@
+-c Scilab ( http:
+ c Copyright (C) INRIA
+ c
+ c This file must be used under the terms of the CeCILL.

Added: packages/scilab/branches/5.4/debian/patches/newautomake.diff
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/patches/newautomake.diff?rev=46403&op=file
==============================================================================
--- packages/scilab/branches/5.4/debian/patches/newautomake.diff	(added)
+++ packages/scilab/branches/5.4/debian/patches/newautomake.diff	Tue Dec  3 17:08:21 2013
@@ -0,0 +1,13 @@
+Index: scilab-5.4.1/Makefile.am
+===================================================================
+--- scilab-5.4.1.orig/Makefile.am	2013-03-29 16:46:01.000000000 +0100
++++ scilab-5.4.1/Makefile.am	2013-11-23 16:50:05.000000000 +0100
+@@ -103,7 +103,7 @@
+ 
+ # check is performed with scilab
+ TESTS_ENVIRONMENT = LANG=C $(top_builddir)/bin/scilab-cli -nb -noatomsautoload -f
+-TESTS = $(top_srcdir)/modules/development_tools/tests/unit_tests/test_run_level_1.tst
++TESTS = $(top_builddir)/modules/development_tools/tests/unit_tests/test_run_level_1.tst
+ 
+ all-local: $(TARGETS_ALL)
+ 

Modified: packages/scilab/branches/5.4/debian/patches/series
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/patches/series?rev=46403&op=diff
==============================================================================
--- packages/scilab/branches/5.4/debian/patches/series	(original)
+++ packages/scilab/branches/5.4/debian/patches/series	Tue Dec  3 17:08:21 2013
@@ -3,3 +3,6 @@
 missingaddchapter.diff
 0001-Port-to-matio-1.5.0.patch
 remove-deprecated-file.diff
+dynamic-stack.diff
+AM_PROG_AR.diff
+newautomake.diff

Modified: packages/scilab/branches/5.4/debian/rules
URL: http://svn.debian.org/wsvn/debian-science/packages/scilab/branches/5.4/debian/rules?rev=46403&op=diff
==============================================================================
--- packages/scilab/branches/5.4/debian/rules	(original)
+++ packages/scilab/branches/5.4/debian/rules	Tue Dec  3 17:08:21 2013
@@ -2,6 +2,7 @@
 include /usr/share/cdbs/1/rules/buildcore.mk
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/autotools.mk
+include /usr/share/cdbs/1/rules/autoreconf.mk
 
 # Detect the arch (with the naming of Sun)
 DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
@@ -45,8 +46,9 @@
 
 DEB_INSTALL_CHANGELOGS_ALL = CHANGES_5.3.X CHANGES_5.4.X
 
-#debian/stamp-autotools-files:
-#	autoreconf
+debian/stamp-autotools-files:
+	touch modules/scicos/.depend
+	autoreconf
 
 common-install-arch::
 # Remove empty directories




More information about the debian-science-commits mailing list