4fd972b
Description: <short summary of the patch>
4fd972b
 TODO: Put a short summary on the line above and replace this paragraph
4fd972b
 with a longer explanation of this change. Complete the meta-information
4fd972b
 with other relevant fields (see below for details). To make it easier, the
4fd972b
 information below has been extracted from the changelog. Adjust it or drop
4fd972b
 it.
4fd972b
 .
4fd972b
 gcl (2.6.12-93) unstable; urgency=medium
4fd972b
 .
4fd972b
   * Version_2_6_13pre90
4fd972b
Author: Camm Maguire <camm@debian.org>
4fd972b
4fd972b
---
4fd972b
The information above should follow the Patch Tagging Guidelines, please
4fd972b
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
4fd972b
are templates for supplementary fields that you might want to add:
4fd972b
4fd972b
Origin: <vendor|upstream|other>, <url of original patch>
4fd972b
Bug: <url in upstream bugtracker>
4fd972b
Bug-Debian: https://bugs.debian.org/<bugnumber>
4fd972b
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
4fd972b
Forwarded: <no|not-needed|url proving that it has been forwarded>
4fd972b
Reviewed-By: <name and email of someone who approved the patch>
4fd972b
Last-Update: 2020-02-21
4fd972b
4fd972b
--- gcl-2.6.12.orig/configure
4fd972b
+++ gcl-2.6.12/configure
4fd972b
@@ -3974,7 +3974,7 @@ $as_echo "removing $1 from LDFLAGS" >&6;
4fd972b
 
4fd972b
 }
4fd972b
 
4fd972b
-add_args_to_cflags -fsigned-char -pipe \
4fd972b
+add_args_to_cflags -fsigned-char -pipe -fcommon \
4fd972b
                     -fno-builtin-malloc -fno-builtin-free \
4fd972b
                     -fno-PIE -fno-pie -fno-PIC -fno-pic \
4fd972b
 	            -Wall \
4fd972b
--- gcl-2.6.12.orig/configure.in
4fd972b
+++ gcl-2.6.12/configure.in
4fd972b
@@ -258,7 +258,7 @@ remove_arg_from_ldflags() {
4fd972b
     
4fd972b
 }
4fd972b
 
4fd972b
-add_args_to_cflags -fsigned-char -pipe \
4fd972b
+add_args_to_cflags -fsigned-char -pipe -fcommon \
4fd972b
                     -fno-builtin-malloc -fno-builtin-free \
4fd972b
                     -fno-PIE -fno-pie -fno-PIC -fno-pic \
4fd972b
 	            -Wall \
4fd972b
--- gcl-2.6.12.orig/o/main.c
4fd972b
+++ gcl-2.6.12/o/main.c
4fd972b
@@ -445,20 +445,21 @@ gcl_cleanup(int gc) {
4fd972b
 }
4fd972b
 
4fd972b
 /*gcc boolean expression tail position bug*/
4fd972b
+static char *stack_to_be_allocated;
4fd972b
 
4fd972b
-void *
4fd972b
-cclear_stack(unsigned long size) {
4fd972b
-  void *v=alloca(size);
4fd972b
-  memset(v,0,size);
4fd972b
-  return v;
4fd972b
+void
4fd972b
+get_stack_to_be_allocated(unsigned long size) {
4fd972b
+  stack_to_be_allocated=alloca(size);
4fd972b
 }
4fd972b
 
4fd972b
 DEFUN_NEW("EQUAL-TAIL-RECURSION-CHECK",object,fSequal_tail_recursion_check,SI,1,1,NONE,II,OO,OO,OO,(fixnum s),"") {
4fd972b
   object x0=make_list(s/sizeof(object)),x1=make_list(s/sizeof(object));
4fd972b
-  char *u=cclear_stack(s),*w;
4fd972b
+  char *w;
4fd972b
+  get_stack_to_be_allocated(s);
4fd972b
+  memset(stack_to_be_allocated,0,s);
4fd972b
   fLequal(x0,x1);
4fd972b
-  for (w=u;w
4fd972b
-  RETURN1((object)(w-u));
4fd972b
+  for (w=stack_to_be_allocated;w
4fd972b
+  RETURN1((object)(w-stack_to_be_allocated));
4fd972b
 }
4fd972b
 
4fd972b
 static int
4fd972b
--- gcl-2.6.12.orig/o/unixfsys.c
4fd972b
+++ gcl-2.6.12/o/unixfsys.c
4fd972b
@@ -537,7 +537,7 @@ un_mmap(void *v1,void *ve) {
4fd972b
 /* export these for AXIOM */
4fd972b
 int gcl_putenv(char *s) {return putenv(s);}
4fd972b
 char *gcl_strncpy(char *d,const char *s,size_t z) {return strncpy(d,s,z);}
4fd972b
-char *gcl_strncpy_chk(size_t z) {char a[10],b[10];return strncpy(a,b,z);}/*compile in __strncpy_chk with FORTIFY_SOURCE*/
4fd972b
+int gcl_strncpy_chk(char *a1,char *b1,size_t z) {char a[10],b[10];strncpy(a,a1,z);strncpy(b,b1,z);return strncmp(a,b,z);}/*compile in __strncpy_chk with FORTIFY_SOURCE*/
4fd972b
 #ifdef __MINGW32__
4fd972b
 #define uid_t int
4fd972b
 #endif