<short summary of the patch>
authorCamm Maguire <camm@debian.org>
Fri, 7 Mar 2025 16:04:42 +0000 (11:04 -0500)
committerCamm Maguire <camm@debian.org>
Fri, 7 Mar 2025 16:04:42 +0000 (11:04 -0500)
Bug-Debian: https://bugs.debian.org/1096165
Bug-Debian: https://bugs.debian.org/1096684

TODO: Put a short summary on the line above and replace this paragraph
with a longer explanation of this change. Complete the meta-information
with other relevant fields (see below for details). To make it easier, the
information below has been extracted from the changelog. Adjust it or drop
it.

gcl (2.6.14-17) unstable; urgency=medium

  * Version_2_6_15pre16
  * Bug fix: "ftbfs with GCC-15", thanks to Matthias Klose (Closes:
    #1096684).
  * Bug fix: "outdated debconf version constraint; inhibits support for
    debconf-2.0/cdebconf", thanks to Gioele Barabucci (Closes: #1096165).

Gbp-Pq: Name Version_2_6_15pre16

configure
configure.in
git.tag
h/386-gnu.h
h/mach64_i386_reloc.h
o/alloc.c
o/gmp_big.c
o/sfaslmacho.c

index 3366719fa1d93350d460801f700a6320233c3436..ce6fb3875d9b7b06b0e8cc8c1c58d3f01dbfad1a 100755 (executable)
--- a/configure
+++ b/configure
@@ -4547,6 +4547,7 @@ printf "%s\n" "removing $1 from LDFLAGS" >&6; }
 add_args_to_cflags  -fsigned-char -pipe -fcommon \
                     -fno-builtin-malloc -fno-builtin-free \
                     -fno-PIE -fno-pie -fno-PIC -fno-pic \
+                   -std=gnu17 \
                    -Wall \
                    -Wno-builtin-requires-header -Wno-empty-body -Wno-self-assign \
                    -Wno-unused-but-set-variable
index b6343351b42880fd07276872bda1fd96f3e5d56c..2eca41067a75acd4de073f583658bc8d2821ae74 100644 (file)
@@ -258,6 +258,7 @@ remove_arg_from_ldflags() {
 add_args_to_cflags  -fsigned-char -pipe -fcommon \
                     -fno-builtin-malloc -fno-builtin-free \
                     -fno-PIE -fno-pie -fno-PIC -fno-pic \
+                   -std=gnu17 \
                    -Wall \
                    -Wno-builtin-requires-header -Wno-empty-body -Wno-self-assign \
                    -Wno-unused-but-set-variable
diff --git a/git.tag b/git.tag
index 885a5f3da10f9ac8fab1a793099a897a8603d5ae..43276fcbe5590bac37c2f97984a6ee1b8e8012b7 100644 (file)
--- a/git.tag
+++ b/git.tag
@@ -1 +1 @@
-"Version_2_6_15pre15"
+"Version_2_6_15pre16"
index beccec370ce7b826314d497f22b622d6581dce26..522ee5b5dd62eda02a2d254202ef2ce47b96b50a 100755 (executable)
 #endif
 #define PATH_MAX 4096 /*fixme dynamic*/
 #define MAXPATHLEN 4096 /*fixme dynamic*/
-#define MAX_BRK 0x70000000 /*GNU Hurd fragmentation bug*/
+/* #define MAX_BRK 0x70000000 */ /*GNU Hurd fragmentation bug*/
 
 #define RELOC_H "elf32_i386_reloc.h"
 
 #define NEED_STACK_CHK_GUARD
 
 #undef HAVE_D_TYPE /*FIXME defined, but not implemented in readdir*/
-#define NO_FILE_LOCKING /*FIXME*/
+/* #define NO_FILE_LOCKING */ /*FIXME*/
+
+#define INITIALIZE_BRK                                                 \
+  massert(!brk(gcl_alloc_initialized ? core_end :                      \
+              ({extern ufixnum _end;(void *)ROUNDUP((ufixnum)&_end,PAGESIZE);})))
index a4614528664e7f4ebb106759dbf596599b6ebfe2..009bf1417348bf382f17ce3cc5911d321de42b70 100644 (file)
@@ -6,7 +6,7 @@
   case X86_64_RELOC_UNSIGNED:          // for absolute addresses
 
      if (ri->r_extern || !ri->r_pcrel) 
-      add_val(q,~0L,ri->r_pcrel ? a-rel : a);
+      store_val(q,~0L,ri->r_pcrel ? a-rel : a);
 
     break; 
   case X86_64_RELOC_GOT_LOAD:          // a MOVQ load of a GOT entry
index 1e1350a556fdf7fd0e6324097264371f1459052b..2f76ad1f4aac86d6995728255b3903a3b2770f11 100644 (file)
--- a/o/alloc.c
+++ b/o/alloc.c
@@ -1266,6 +1266,10 @@ gcl_init_alloc(void *cs_start) {
 
 #endif
 
+#ifdef INITIALIZE_BRK
+  INITIALIZE_BRK;
+#endif
+
   update_real_maxpage();
 
   if (gcl_alloc_initialized) {
index d3b0c2ebfc0f988bafb18c3901cca0709af1f5b2..a6341b4184099f70a32cbce08a1a114445a11121 100755 (executable)
@@ -461,7 +461,7 @@ integer_quotient_remainder_1(object x, object y, object *qp, object *rp,fixnum d
 
   if (type_of(x)==t_fixnum && type_of(y)==t_fixnum) {
     fixnum fx=fix(x),fy=fix(y);
-    if (fx!=-fx) {/*MOST_NEGATIVE_FIX*/
+    if (fx!=MOST_NEGATIVE_FIX) {
       if (qp) {
        fixnum z=fixnum_div(fx,fy,d);
        if (rp) *rp=make_fixnum(fx-fy*z);
index c39f52fadd8997fdd47b5ca17ea2db428e09b921..947192c4ae6e3407a5bfe00dd86961a3ded693e5 100644 (file)
@@ -65,14 +65,6 @@ store_val(ul *w,ul m,ul v) {
 
 }
 
-static int
-add_val(ul *w,ul m,ul v) {
-
-  return store_val(w,m,v+(*w&m));
-
-}
-
-
 #ifndef _LP64
 /*redirect trampolines gcc-4.0 gives no reloc for stub sections on x86 only*/
 static int