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

Bug#698344: libffi: missing autotools support and symbols file for arm64



Package: libffi
Version: 3.0.11-2
Severity: normal
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu ubuntu-patch raring

libffi fails to cross-build to arm64 because it's lacking some bits of
autotools support from upstream.  The following patch backports these
from git.

I also added a symbols file at the same time, generated by observing
what dpkg-gensymbols complained about and setting all the versions to
3.0.4, which seems to match what's been done for other architectures.

  * Add missing autotools support for arm64.
  * Add symbols file for arm64.

diff -Nru libffi-3.0.11/debian/libffi6.symbols.arm64 libffi-3.0.11/debian/libffi6.symbols.arm64
--- libffi-3.0.11/debian/libffi6.symbols.arm64	1970-01-01 01:00:00.000000000 +0100
+++ libffi-3.0.11/debian/libffi6.symbols.arm64	2013-01-17 10:38:50.000000000 +0000
@@ -0,0 +1,37 @@
+libffi.so.6 libffi6 #MINVER#
+ ffi_call@Base 3.0.4
+ ffi_call_SYSV@Base 3.0.4
+ ffi_closure_SYSV@Base 3.0.4
+ ffi_closure_SYSV_inner@Base 3.0.4
+ ffi_closure_alloc@Base 3.0.4
+ ffi_closure_free@Base 3.0.4
+ ffi_java_ptrarray_to_raw@Base 3.0.4
+ ffi_java_raw_call@Base 3.0.4
+ ffi_java_raw_size@Base 3.0.4
+ ffi_java_raw_to_ptrarray@Base 3.0.4
+ ffi_prep_cif@Base 3.0.4
+ ffi_prep_cif_machdep@Base 3.0.4
+ ffi_prep_cif_var@Base 3.0.4
+ ffi_prep_closure@Base 3.0.4
+ ffi_prep_closure_loc@Base 3.0.4
+ ffi_prep_java_raw_closure@Base 3.0.4
+ ffi_prep_java_raw_closure_loc@Base 3.0.4
+ ffi_prep_raw_closure@Base 3.0.4
+ ffi_prep_raw_closure_loc@Base 3.0.4
+ ffi_ptrarray_to_raw@Base 3.0.4
+ ffi_raw_call@Base 3.0.4
+ ffi_raw_size@Base 3.0.4
+ ffi_raw_to_ptrarray@Base 3.0.4
+ ffi_type_double@Base 3.0.4
+ ffi_type_float@Base 3.0.4
+ ffi_type_longdouble@Base 3.0.4
+ ffi_type_pointer@Base 3.0.4
+ ffi_type_sint16@Base 3.0.4
+ ffi_type_sint32@Base 3.0.4
+ ffi_type_sint64@Base 3.0.4
+ ffi_type_sint8@Base 3.0.4
+ ffi_type_uint16@Base 3.0.4
+ ffi_type_uint32@Base 3.0.4
+ ffi_type_uint64@Base 3.0.4
+ ffi_type_uint8@Base 3.0.4
+ ffi_type_void@Base 3.0.4
diff -Nru libffi-3.0.11/debian/patches/aarch64-build.diff libffi-3.0.11/debian/patches/aarch64-build.diff
--- libffi-3.0.11/debian/patches/aarch64-build.diff	1970-01-01 01:00:00.000000000 +0100
+++ libffi-3.0.11/debian/patches/aarch64-build.diff	2013-01-17 10:33:08.000000000 +0000
@@ -0,0 +1,294 @@
+Index: b/Makefile.am
+===================================================================
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -5,6 +5,7 @@
+ SUBDIRS = include testsuite man
+ 
+ EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj configure.host \
++	src/aarch64/ffi.c src/aarch64/ffitarget.h \
+ 	src/alpha/ffi.c src/alpha/osf.S src/alpha/ffitarget.h \
+ 	src/arm/ffi.c src/arm/sysv.S src/arm/ffitarget.h \
+ 	src/avr32/ffi.c src/avr32/sysv.S src/avr32/ffitarget.h \
+@@ -147,6 +148,9 @@
+ if POWERPC_FREEBSD
+ nodist_libffi_la_SOURCES += src/powerpc/ffi.c src/powerpc/sysv.S src/powerpc/ppc_closure.S
+ endif
++if AARCH64
++nodist_libffi_la_SOURCES += src/aarch64/sysv.S src/aarch64/ffi.c
++endif
+ if ARM
+ nodist_libffi_la_SOURCES += src/arm/sysv.S src/arm/ffi.c
+ if FFI_EXEC_TRAMPOLINE_TABLE
+Index: b/Makefile.in
+===================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -52,21 +52,22 @@
+ @POWERPC_AIX_TRUE@am__append_14 = src/powerpc/ffi_darwin.c src/powerpc/aix.S src/powerpc/aix_closure.S
+ @POWERPC_DARWIN_TRUE@am__append_15 = src/powerpc/ffi_darwin.c src/powerpc/darwin.S src/powerpc/darwin_closure.S
+ @POWERPC_FREEBSD_TRUE@am__append_16 = src/powerpc/ffi.c src/powerpc/sysv.S src/powerpc/ppc_closure.S
+-@ARM_TRUE@am__append_17 = src/arm/sysv.S src/arm/ffi.c
+-@ARM_TRUE@@FFI_EXEC_TRAMPOLINE_TABLE_TRUE@am__append_18 = src/arm/trampoline.S
+-@AVR32_TRUE@am__append_19 = src/avr32/sysv.S src/avr32/ffi.c
+-@LIBFFI_CRIS_TRUE@am__append_20 = src/cris/sysv.S src/cris/ffi.c
+-@FRV_TRUE@am__append_21 = src/frv/eabi.S src/frv/ffi.c
+-@MOXIE_TRUE@am__append_22 = src/moxie/eabi.S src/moxie/ffi.c
+-@S390_TRUE@am__append_23 = src/s390/sysv.S src/s390/ffi.c
+-@X86_64_TRUE@am__append_24 = src/x86/ffi64.c src/x86/unix64.S src/x86/ffi.c src/x86/sysv.S
+-@SH_TRUE@am__append_25 = src/sh/sysv.S src/sh/ffi.c
+-@SH64_TRUE@am__append_26 = src/sh64/sysv.S src/sh64/ffi.c
+-@PA_LINUX_TRUE@am__append_27 = src/pa/linux.S src/pa/ffi.c
+-@PA_HPUX_TRUE@am__append_28 = src/pa/hpux32.S src/pa/ffi.c
++@AARCH64_TRUE@am__append_17 = src/aarch64/sysv.S src/aarch64/ffi.c
++@ARM_TRUE@am__append_18 = src/arm/sysv.S src/arm/ffi.c
++@ARM_TRUE@@FFI_EXEC_TRAMPOLINE_TABLE_TRUE@am__append_19 = src/arm/trampoline.S
++@AVR32_TRUE@am__append_20 = src/avr32/sysv.S src/avr32/ffi.c
++@LIBFFI_CRIS_TRUE@am__append_21 = src/cris/sysv.S src/cris/ffi.c
++@FRV_TRUE@am__append_22 = src/frv/eabi.S src/frv/ffi.c
++@MOXIE_TRUE@am__append_23 = src/moxie/eabi.S src/moxie/ffi.c
++@S390_TRUE@am__append_24 = src/s390/sysv.S src/s390/ffi.c
++@X86_64_TRUE@am__append_25 = src/x86/ffi64.c src/x86/unix64.S src/x86/ffi.c src/x86/sysv.S
++@SH_TRUE@am__append_26 = src/sh/sysv.S src/sh/ffi.c
++@SH64_TRUE@am__append_27 = src/sh64/sysv.S src/sh64/ffi.c
++@PA_LINUX_TRUE@am__append_28 = src/pa/linux.S src/pa/ffi.c
++@PA_HPUX_TRUE@am__append_29 = src/pa/hpux32.S src/pa/ffi.c
+ # Build debug. Define FFI_DEBUG on the commandline so that, when building with
+ # MSVC, it can link against the debug CRT.
+-@FFI_DEBUG_TRUE@am__append_29 = -DFFI_DEBUG
++@FFI_DEBUG_TRUE@am__append_30 = -DFFI_DEBUG
+ subdir = .
+ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+ 	$(srcdir)/Makefile.in $(srcdir)/doc/stamp-vti \
+@@ -151,19 +152,20 @@
+ @POWERPC_FREEBSD_TRUE@am__objects_16 = src/powerpc/ffi.lo \
+ @POWERPC_FREEBSD_TRUE@	src/powerpc/sysv.lo \
+ @POWERPC_FREEBSD_TRUE@	src/powerpc/ppc_closure.lo
+-@ARM_TRUE@am__objects_17 = src/arm/sysv.lo src/arm/ffi.lo
+-@ARM_TRUE@@FFI_EXEC_TRAMPOLINE_TABLE_TRUE@am__objects_18 = src/arm/trampoline.lo
+-@AVR32_TRUE@am__objects_19 = src/avr32/sysv.lo src/avr32/ffi.lo
+-@LIBFFI_CRIS_TRUE@am__objects_20 = src/cris/sysv.lo src/cris/ffi.lo
+-@FRV_TRUE@am__objects_21 = src/frv/eabi.lo src/frv/ffi.lo
+-@MOXIE_TRUE@am__objects_22 = src/moxie/eabi.lo src/moxie/ffi.lo
+-@S390_TRUE@am__objects_23 = src/s390/sysv.lo src/s390/ffi.lo
+-@X86_64_TRUE@am__objects_24 = src/x86/ffi64.lo src/x86/unix64.lo \
++@AARCH64_TRUE@am__objects_17 = src/aarch64/sysv.lo src/aarch64/ffi.lo
++@ARM_TRUE@am__objects_18 = src/arm/sysv.lo src/arm/ffi.lo
++@ARM_TRUE@@FFI_EXEC_TRAMPOLINE_TABLE_TRUE@am__objects_19 = src/arm/trampoline.lo
++@AVR32_TRUE@am__objects_20 = src/avr32/sysv.lo src/avr32/ffi.lo
++@LIBFFI_CRIS_TRUE@am__objects_21 = src/cris/sysv.lo src/cris/ffi.lo
++@FRV_TRUE@am__objects_22 = src/frv/eabi.lo src/frv/ffi.lo
++@MOXIE_TRUE@am__objects_23 = src/moxie/eabi.lo src/moxie/ffi.lo
++@S390_TRUE@am__objects_24 = src/s390/sysv.lo src/s390/ffi.lo
++@X86_64_TRUE@am__objects_25 = src/x86/ffi64.lo src/x86/unix64.lo \
+ @X86_64_TRUE@	src/x86/ffi.lo src/x86/sysv.lo
+-@SH_TRUE@am__objects_25 = src/sh/sysv.lo src/sh/ffi.lo
+-@SH64_TRUE@am__objects_26 = src/sh64/sysv.lo src/sh64/ffi.lo
+-@PA_LINUX_TRUE@am__objects_27 = src/pa/linux.lo src/pa/ffi.lo
+-@PA_HPUX_TRUE@am__objects_28 = src/pa/hpux32.lo src/pa/ffi.lo
++@SH_TRUE@am__objects_26 = src/sh/sysv.lo src/sh/ffi.lo
++@SH64_TRUE@am__objects_27 = src/sh64/sysv.lo src/sh64/ffi.lo
++@PA_LINUX_TRUE@am__objects_28 = src/pa/linux.lo src/pa/ffi.lo
++@PA_HPUX_TRUE@am__objects_29 = src/pa/hpux32.lo src/pa/ffi.lo
+ nodist_libffi_la_OBJECTS = $(am__objects_1) $(am__objects_2) \
+ 	$(am__objects_3) $(am__objects_4) $(am__objects_5) \
+ 	$(am__objects_6) $(am__objects_7) $(am__objects_8) \
+@@ -173,17 +175,17 @@
+ 	$(am__objects_18) $(am__objects_19) $(am__objects_20) \
+ 	$(am__objects_21) $(am__objects_22) $(am__objects_23) \
+ 	$(am__objects_24) $(am__objects_25) $(am__objects_26) \
+-	$(am__objects_27) $(am__objects_28)
++	$(am__objects_27) $(am__objects_28) $(am__objects_29)
+ libffi_la_OBJECTS = $(am_libffi_la_OBJECTS) \
+ 	$(nodist_libffi_la_OBJECTS)
+ libffi_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+ 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ 	$(libffi_la_LDFLAGS) $(LDFLAGS) -o $@
+ libffi_convenience_la_LIBADD =
+-am__objects_29 = src/prep_cif.lo src/types.lo src/raw_api.lo \
++am__objects_30 = src/prep_cif.lo src/types.lo src/raw_api.lo \
+ 	src/java_raw_api.lo src/closures.lo
+-am_libffi_convenience_la_OBJECTS = $(am__objects_29)
+-am__objects_30 = $(am__objects_1) $(am__objects_2) $(am__objects_3) \
++am_libffi_convenience_la_OBJECTS = $(am__objects_30)
++am__objects_31 = $(am__objects_1) $(am__objects_2) $(am__objects_3) \
+ 	$(am__objects_4) $(am__objects_5) $(am__objects_6) \
+ 	$(am__objects_7) $(am__objects_8) $(am__objects_9) \
+ 	$(am__objects_10) $(am__objects_11) $(am__objects_12) \
+@@ -192,8 +194,8 @@
+ 	$(am__objects_19) $(am__objects_20) $(am__objects_21) \
+ 	$(am__objects_22) $(am__objects_23) $(am__objects_24) \
+ 	$(am__objects_25) $(am__objects_26) $(am__objects_27) \
+-	$(am__objects_28)
+-nodist_libffi_convenience_la_OBJECTS = $(am__objects_30)
++	$(am__objects_28) $(am__objects_29)
++nodist_libffi_convenience_la_OBJECTS = $(am__objects_31)
+ libffi_convenience_la_OBJECTS = $(am_libffi_convenience_la_OBJECTS) \
+ 	$(nodist_libffi_convenience_la_OBJECTS)
+ DEFAULT_INCLUDES = -I.@am__isrc@
+@@ -418,6 +420,7 @@
+ AUTOMAKE_OPTIONS = foreign subdir-objects
+ SUBDIRS = include testsuite man
+ EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj configure.host \
++	src/aarch64/ffi.c src/aarch64/ffitarget.h \
+ 	src/alpha/ffi.c src/alpha/osf.S src/alpha/ffitarget.h \
+ 	src/arm/ffi.c src/arm/sysv.S src/arm/ffitarget.h \
+ 	src/avr32/ffi.c src/avr32/sysv.S src/avr32/ffitarget.h \
+@@ -508,10 +511,10 @@
+ 	$(am__append_18) $(am__append_19) $(am__append_20) \
+ 	$(am__append_21) $(am__append_22) $(am__append_23) \
+ 	$(am__append_24) $(am__append_25) $(am__append_26) \
+-	$(am__append_27) $(am__append_28)
++	$(am__append_27) $(am__append_28) $(am__append_29)
+ libffi_convenience_la_SOURCES = $(libffi_la_SOURCES)
+ nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
+-AM_CFLAGS = -g $(am__append_29)
++AM_CFLAGS = -g $(am__append_30)
+ libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LTLDFLAGS) $(AM_LTLDFLAGS)
+ AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src -DFFI_BUILDING
+ AM_CCASFLAGS = $(AM_CPPFLAGS) -g
+@@ -737,6 +740,16 @@
+ 	src/powerpc/$(DEPDIR)/$(am__dirstamp)
+ src/powerpc/darwin_closure.lo: src/powerpc/$(am__dirstamp) \
+ 	src/powerpc/$(DEPDIR)/$(am__dirstamp)
++src/aarch64/$(am__dirstamp):
++	@$(MKDIR_P) src/aarch64
++	@: > src/aarch64/$(am__dirstamp)
++src/aarch64/$(DEPDIR)/$(am__dirstamp):
++	@$(MKDIR_P) src/aarch64/$(DEPDIR)
++	@: > src/aarch64/$(DEPDIR)/$(am__dirstamp)
++src/aarch64/sysv.lo: src/aarch64/$(am__dirstamp) \
++	src/aarch64/$(DEPDIR)/$(am__dirstamp)
++src/aarch64/ffi.lo: src/aarch64/$(am__dirstamp) \
++	src/aarch64/$(DEPDIR)/$(am__dirstamp)
+ src/arm/$(am__dirstamp):
+ 	@$(MKDIR_P) src/arm
+ 	@: > src/arm/$(am__dirstamp)
+@@ -838,6 +851,10 @@
+ 
+ mostlyclean-compile:
+ 	-rm -f *.$(OBJEXT)
++	-rm -f src/aarch64/ffi.$(OBJEXT)
++	-rm -f src/aarch64/ffi.lo
++	-rm -f src/aarch64/sysv.$(OBJEXT)
++	-rm -f src/aarch64/sysv.lo
+ 	-rm -f src/alpha/ffi.$(OBJEXT)
+ 	-rm -f src/alpha/ffi.lo
+ 	-rm -f src/alpha/osf.$(OBJEXT)
+@@ -966,6 +983,8 @@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/prep_cif.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/raw_api.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/types.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@src/aarch64/$(DEPDIR)/ffi.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@src/aarch64/$(DEPDIR)/sysv.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/alpha/$(DEPDIR)/ffi.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/alpha/$(DEPDIR)/osf.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@src/arm/$(DEPDIR)/ffi.Plo@am__quote@
+@@ -1074,6 +1093,7 @@
+ clean-libtool:
+ 	-rm -rf .libs _libs
+ 	-rm -rf src/.libs src/_libs
++	-rm -rf src/aarch64/.libs src/aarch64/_libs
+ 	-rm -rf src/alpha/.libs src/alpha/_libs
+ 	-rm -rf src/arm/.libs src/arm/_libs
+ 	-rm -rf src/avr32/.libs src/avr32/_libs
+@@ -1625,6 +1645,8 @@
+ 	-rm -f doc/$(am__dirstamp)
+ 	-rm -f src/$(DEPDIR)/$(am__dirstamp)
+ 	-rm -f src/$(am__dirstamp)
++	-rm -f src/aarch64/$(DEPDIR)/$(am__dirstamp)
++	-rm -f src/aarch64/$(am__dirstamp)
+ 	-rm -f src/alpha/$(DEPDIR)/$(am__dirstamp)
+ 	-rm -f src/alpha/$(am__dirstamp)
+ 	-rm -f src/arm/$(DEPDIR)/$(am__dirstamp)
+@@ -1670,7 +1692,7 @@
+ 
+ distclean: distclean-recursive
+ 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
+-	-rm -rf src/$(DEPDIR) src/alpha/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/x86/$(DEPDIR)
++	-rm -rf src/$(DEPDIR) src/aarch64/$(DEPDIR) src/alpha/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/x86/$(DEPDIR)
+ 	-rm -f Makefile
+ distclean-am: clean-am distclean-compile distclean-generic \
+ 	distclean-hdr distclean-libtool distclean-tags
+@@ -1790,7 +1812,7 @@
+ maintainer-clean: maintainer-clean-recursive
+ 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ 	-rm -rf $(top_srcdir)/autom4te.cache
+-	-rm -rf src/$(DEPDIR) src/alpha/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/x86/$(DEPDIR)
++	-rm -rf src/$(DEPDIR) src/aarch64/$(DEPDIR) src/alpha/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/x86/$(DEPDIR)
+ 	-rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-aminfo \
+ 	maintainer-clean-generic maintainer-clean-vti
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -53,6 +53,10 @@
+ 
+ TARGETDIR="unknown"
+ case "$host" in
++  aarch64*-*-*)
++	TARGET=AARCH64; TARGETDIR=aarch64
++	;;
++
+   alpha*-*-*)
+ 	TARGET=ALPHA; TARGETDIR=alpha;
+ 	# Support 128-bit long double, changeable via command-line switch.
+@@ -228,6 +232,7 @@
+ AM_CONDITIONAL(POWERPC_AIX, test x$TARGET = xPOWERPC_AIX)
+ AM_CONDITIONAL(POWERPC_DARWIN, test x$TARGET = xPOWERPC_DARWIN)
+ AM_CONDITIONAL(POWERPC_FREEBSD, test x$TARGET = xPOWERPC_FREEBSD)
++AM_CONDITIONAL(AARCH64, test x$TARGET = xAARCH64)
+ AM_CONDITIONAL(ARM, test x$TARGET = xARM)
+ AM_CONDITIONAL(AVR32, test x$TARGET = xAVR32)
+ AM_CONDITIONAL(LIBFFI_CRIS, test x$TARGET = xLIBFFI_CRIS)
+Index: b/configure
+===================================================================
+--- a/configure
++++ b/configure
+@@ -649,6 +649,8 @@
+ AVR32_TRUE
+ ARM_FALSE
+ ARM_TRUE
++AARCH64_FALSE
++AARCH64_TRUE
+ POWERPC_FREEBSD_FALSE
+ POWERPC_FREEBSD_TRUE
+ POWERPC_DARWIN_FALSE
+@@ -13128,6 +13130,10 @@
+ 
+ TARGETDIR="unknown"
+ case "$host" in
++  aarch64*-*-*)
++	TARGET=AARCH64; TARGETDIR=aarch64
++	;;
++
+   alpha*-*-*)
+ 	TARGET=ALPHA; TARGETDIR=alpha;
+ 	# Support 128-bit long double, changeable via command-line switch.
+@@ -13415,6 +13421,14 @@
+   POWERPC_FREEBSD_FALSE=
+ fi
+ 
++ if test x$TARGET = xAARCH64; then
++  AARCH64_TRUE=
++  AARCH64_FALSE='#'
++else
++  AARCH64_TRUE='#'
++  AARCH64_FALSE=
++fi
++
+  if test x$TARGET = xARM; then
+   ARM_TRUE=
+   ARM_FALSE='#'
+@@ -14799,6 +14813,10 @@
+   as_fn_error $? "conditional \"POWERPC_FREEBSD\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
+ fi
++if test -z "${AARCH64_TRUE}" && test -z "${AARCH64_FALSE}"; then
++  as_fn_error $? "conditional \"AARCH64\" was never defined.
++Usually this means the macro was only invoked conditionally." "$LINENO" 5
++fi
+ if test -z "${ARM_TRUE}" && test -z "${ARM_FALSE}"; then
+   as_fn_error $? "conditional \"ARM\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff -Nru libffi-3.0.11/debian/patches/series libffi-3.0.11/debian/patches/series
--- libffi-3.0.11/debian/patches/series	2012-10-10 13:12:46.000000000 +0100
+++ libffi-3.0.11/debian/patches/series	2013-01-17 10:18:13.000000000 +0000
@@ -3,3 +3,4 @@
 aarch64-libffi.diff
 aarch64-libffi-testsuite.diff
 aarch64-config.diff
+aarch64-build.diff

Thanks,

-- 
Colin Watson                                       [cjwatson@ubuntu.com]


Reply to: