Source: ffcall
Version: 1.10+cvs20100619-3
Severity: minor
Tags: patch
Control: block -1 by 727848

Hi,

I'm currently doing a mips archive rebuild using the mips32r2 ISA
instead of mips2 which Debian currently uses since we might switch to it
in the future.

ffcall fails to build because it contains an incorrect check for the N32
ABI in m4/general.m4. I've attached a patch which fixes this, but it
requires using dh-autoreconf since it modifies an m4 file. I tried to
add that but after running into lots of problems I gave up. The second
patch file (0003...) was the one I used to test that the other patch
works - don't actually use it though :)

Since this bug doesn't strictly affect the debian package yet, I've
marked it as minor.

Thanks,
James
Description: Fix MIPS N32 test
Author: James Cowgill <james...@cowgill.org.uk>
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/m4/general.m4
+++ b/m4/general.m4
@@ -97,11 +97,8 @@ dnl We should also check for (_MIPS_SZPT
     if test $ffcall_cv_host_mips64 = yes; then
       host_cpu_abi=mips64
     else
-dnl Strictly speaking, the MIPS ABI (-32 or -n32) is independent from the CPU
-dnl identification (-mips[12] or -mips[34]). But -n32 is commonly used together
-dnl with -mips3, and it's easier to test the CPU identification.
       FFCALL_SET_CPU_ABI([MIPS with n32 ABI], ffcall_cv_host_mipsn32,
-        [__mips >= 3], mipsn32, mips)
+        [defined(_ABIN32) && (_MIPS_SIM == _ABIN32)], mipsn32, mips)
     fi
     ;;
 dnl On powerpc64 systems, the C compiler may still be generating 32-bit code.
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -833,7 +833,7 @@ dnl Strictly speaking, the MIPS ABI (-32
 dnl identification (-mips[12] or -mips[34]). But -n32 is commonly used together
 dnl with -mips3, and it's easier to test the CPU identification.
       FFCALL_SET_CPU_ABI([MIPS with n32 ABI], ffcall_cv_host_mipsn32,
-        [__mips >= 3], mipsn32, mips)
+        [defined(_ABIN32) && (_MIPS_SIM == _ABIN32)], mipsn32, mips)
     fi
     ;;
 dnl On powerpc64 systems, the C compiler may still be generating 32-bit code.
--- a/avcall/configure
+++ b/avcall/configure
@@ -3884,7 +3884,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 
--- a/callback/configure
+++ b/callback/configure
@@ -3865,7 +3865,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 
--- a/callback/trampoline_r/configure
+++ b/callback/trampoline_r/configure
@@ -3907,7 +3907,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 
--- a/callback/vacall_r/configure
+++ b/callback/vacall_r/configure
@@ -3884,7 +3884,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 
--- a/trampoline/configure
+++ b/trampoline/configure
@@ -3703,7 +3703,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 
--- a/vacall/configure
+++ b/vacall/configure
@@ -3679,7 +3679,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#if __mips >= 3
+#if defined(_ABIN32) && (_MIPS_SIM == _ABIN32)
   yes
 #endif
 

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to