[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#663902: ghostscript: FTBFS on hurd-i386: extra gs_realloc in symbols file



Package: src:ghostscript
Version: 8.70~dfsg-2
Severity: important
Tags: patch
User: debian-hurd@lists.debian.org
Usertags: hurd

Hi,

as shown on [1], ghostscript fails to build on GNU/Hurd, because of a symbol
specified in the symbols file which is not compiled on GNU/Hurd.
The reason is basically the implementation of the gs_realloc() function: in
base/malloc_.h there is:
[...]
/* (At least some versions of) Linux don't have a working realloc.... */
#ifdef linux
#  define malloc__need_realloc
void *gs_realloc(void *, size_t, size_t);

#else
#  define gs_realloc(ptr, old_size, new_size) realloc(ptr, new_size)
#endif
[...]

which means gs_realloc() is a proper function only on Linux.
The proposed solution is to slightly change the symbol files, introducing a new
file with common Linux-only symbols, including it on Linux-only archs.
Tested, appears working on GNU/Hurd (obviously), and on current Squeeze.

[1] http://buildd.debian-ports.org/fetch.php?pkg=ghostscript&arch=hurd-i386&ver=8.70~dfsg-2&stamp=1251071245&file=log&as=raw

-- 
Pino Toscano
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.alpha
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.alpha	2009-09-10 15:30:50.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.alpha	2009-09-10 15:31:18.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.amd64
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.amd64	2009-09-10 15:30:50.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.amd64	2009-09-10 15:31:21.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.arm
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.arm	2009-09-10 15:30:50.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.arm	2009-09-10 15:31:30.000000000 +0200
@@ -1,3 +1,4 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.armel
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.armel	2009-09-10 15:30:51.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.armel	2009-09-10 15:31:34.000000000 +0200
@@ -1,3 +1,4 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.hppa
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.hppa	2009-09-10 15:30:51.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.hppa	2009-09-10 15:31:38.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.i386
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.i386	2009-09-10 15:30:52.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.i386	2009-09-10 15:31:45.000000000 +0200
@@ -1,3 +1,4 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.ia64
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.ia64	2009-09-10 15:30:53.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.ia64	2009-09-10 15:31:48.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.m68k
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.m68k	2009-09-10 15:30:53.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.m68k	2009-09-10 15:31:50.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.mips
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.mips	2009-09-10 15:30:53.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.mips	2009-09-10 15:31:52.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.mipsel
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.mipsel	2009-09-10 15:30:54.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.mipsel	2009-09-10 15:31:55.000000000 +0200
@@ -1,3 +1,4 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
 #include "symbols.common_le"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.powerpc
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.powerpc	2009-09-10 15:30:54.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.powerpc	2009-09-10 15:31:58.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.s390
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.s390	2009-09-10 15:30:55.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.s390	2009-09-10 15:32:00.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/libgs8.symbols.sparc
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/libgs8.symbols.sparc	2009-09-10 15:30:55.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/libgs8.symbols.sparc	2009-09-10 15:32:08.000000000 +0200
@@ -1,2 +1,3 @@
 #include "symbols.common"
+#include "symbols.common_linux"
 #include "symbols.common_32bit"
Index: ghostscript-8.70~dfsg/debian/symbols.common
===================================================================
--- ghostscript-8.70~dfsg.orig/debian/symbols.common	2009-09-10 15:30:05.000000000 +0200
+++ ghostscript-8.70~dfsg/debian/symbols.common	2009-09-10 15:30:40.000000000 +0200
@@ -1895,7 +1895,6 @@
  gs_r4081_device@Base 8.61.dfsg.1
  gs_raw_alloc_struct_immovable@Base 8.61.dfsg.1
  gs_rcurveto@Base 8.61.dfsg.1
- gs_realloc@Base 8.61.dfsg.1
  gs_rectappend@Base 8.61.dfsg.1
  gs_rectclip@Base 8.61.dfsg.1
  gs_rectfill@Base 8.61.dfsg.1
Index: ghostscript-8.70~dfsg/debian/symbols.common_linux
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ ghostscript-8.70~dfsg/debian/symbols.common_linux	2009-09-10 15:30:24.000000000 +0200
@@ -0,0 +1 @@
+ gs_realloc@Base 8.61.dfsg.1

Reply to: