Control: tags -1 + patch upstream fixed-upstream
Control: forwarded -1 https://github.com/MLton/mlton/issues/3

On 2013-05-09 10:09:15, Lucas Nussbaum wrote:
> Relevant part:
> > gcc -std=gnu99  -I. -Iplatform  -fno-common -fvisibility=hidden -m64 -O2 
> > -fomit-frame-pointer   -pedantic -Wall -Wextra -Wformat=2 -Wswitch-default 
> > -Wswitch-enum -Wuninitialized -Winit-self -Wstrict-aliasing=2 -Wfloat-equal 
> > -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual 
> > -Wwrite-strings -Waggregate-return -Wstrict-prototypes 
> > -Wold-style-definition -Wmissing-prototypes -Wmissing-declarations 
> > -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-format-attribute 
> > -Wredundant-decls -Wnested-externs  -Wdisabled-optimization  -c -o gc.o gc.c
> > In file included from gc.c:44:0:
> > gc/int-inf.c:180:43: error: unknown type name '__gmp_const'
> > gc/int-inf.c:181:43: error: unknown type name '__gmp_const'
> > gc/int-inf.c: In function 'IntInf_add':
> > gc/int-inf.c:196:3: warning: implicit declaration of function 'binary' 
> > [-Wimplicit-function-declaration]
> > gc/int-inf.c:196:3: warning: nested extern declaration of 'binary' 
> > [-Wnested-externs]
> > gc/int-inf.c: At top level:
> > gc/int-inf.c:257:34: error: unknown type name '__gmp_const'
> > gc/int-inf.c: In function 'IntInf_neg':
> > gc/int-inf.c:271:3: warning: implicit declaration of function 'unary' 
> > [-Wimplicit-function-declaration]
> > gc/int-inf.c:271:3: warning: nested extern declaration of 'unary' 
> > [-Wnested-externs]
> > gc/int-inf.c: At top level:
> > gc/int-inf.c:283:34: error: unknown type name '__gmp_const'
> > gc/int-inf.c: In function 'IntInf_arshift':
> > gc/int-inf.c:299:3: warning: implicit declaration of function 'shary' 
> > [-Wimplicit-function-declaration]
> > gc/int-inf.c:299:3: warning: nested extern declaration of 'shary' 
> > [-Wnested-externs]
> > make[4]: *** [gc.o] Error 1

A fix is available from upstream:
https://github.com/caltry/mlton/commit/a658a1f4a76a01f568116598800f49b80cf8ee1a

Attached is a patch to the package that incorporates this fix. I don't
intend to upload it.

Regards
-- 
Sebastian Ramacher
diff -Nru mlton-20100608/debian/changelog mlton-20100608/debian/changelog
--- mlton-20100608/debian/changelog	2011-07-19 12:37:02.000000000 +0200
+++ mlton-20100608/debian/changelog	2013-06-25 18:06:55.000000000 +0200
@@ -1,3 +1,11 @@
+mlton (20100608-5.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * debian/patches/gmp5.patch: Apply patch from upstream to fix building with
+    gmp 5.x. (Closes: #707410)
+
+ -- Sebastian Ramacher <[email protected]>  Tue, 25 Jun 2013 18:06:53 +0200
+
 mlton (20100608-5) unstable; urgency=low
 
   * Newest gcc and binutils fix mips[el] jump problem
diff -Nru mlton-20100608/debian/patches/gmp5.patch mlton-20100608/debian/patches/gmp5.patch
--- mlton-20100608/debian/patches/gmp5.patch	1970-01-01 01:00:00.000000000 +0100
+++ mlton-20100608/debian/patches/gmp5.patch	2013-06-25 18:05:54.000000000 +0200
@@ -0,0 +1,38 @@
+Description: Fix FTBFS with recent gmp.
+Origin: upstream,
+ https://github.com/caltry/mlton/commit/a658a1f4a76a01f568116598800f49b80cf8ee1a
+Bug: https://github.com/MLton/mlton/issues/3
+Bug-Debian: http://bugs.debian.org/707410
+Last-Update: 2013-06-25
+
+--- mlton-20100608.orig/runtime/gc/int-inf.c
++++ mlton-20100608/runtime/gc/int-inf.c
+@@ -177,8 +177,8 @@ objptr finiIntInfRes (GC_state s, __mpz_
+ 
+ static inline objptr binary (objptr lhs, objptr rhs, size_t bytes,
+                              void(*binop)(__mpz_struct *resmpz,
+-                                          __gmp_const __mpz_struct *lhsspace,
+-                                          __gmp_const __mpz_struct *rhsspace)) {
++                                          const __mpz_struct *lhsspace,
++                                          const __mpz_struct *rhsspace)) {
+   __mpz_struct lhsmpz, rhsmpz, resmpz;
+   mp_limb_t lhsspace[LIMBS_PER_OBJPTR + 1], rhsspace[LIMBS_PER_OBJPTR + 1];
+ 
+@@ -254,7 +254,7 @@ objptr IntInf_xorb (objptr lhs, objptr r
+ 
+ static objptr unary (objptr arg, size_t bytes,
+                      void(*unop)(__mpz_struct *resmpz,
+-                                 __gmp_const __mpz_struct *argspace)) {
++                                 const __mpz_struct *argspace)) {
+   __mpz_struct argmpz, resmpz;
+  mp_limb_t argspace[LIMBS_PER_OBJPTR + 1];
+ 
+@@ -280,7 +280,7 @@ objptr IntInf_notb (objptr arg, size_t b
+ 
+ static objptr shary (objptr arg, Word32_t shift, size_t bytes,
+                      void(*shop)(__mpz_struct *resmpz,
+-                                 __gmp_const __mpz_struct *argspace,
++                                 const __mpz_struct *argspace,
+                                  unsigned long shift))
+ {
+   __mpz_struct argmpz, resmpz;
diff -Nru mlton-20100608/debian/patches/series mlton-20100608/debian/patches/series
--- mlton-20100608/debian/patches/series	2011-07-19 13:54:28.000000000 +0200
+++ mlton-20100608/debian/patches/series	2013-06-25 18:04:10.000000000 +0200
@@ -1,2 +1,3 @@
 11-fixes-20100608-to-20110319.patch
 22-fixes-20110319-to-20110719.patch
+gmp5.patch

Attachment: signature.asc
Description: Digital signature

Reply via email to