[Pkg-libvirt-commits] [libguestfs] 16/66: aarch64: Add support to file_architecture API.

Hilko Bengen bengen at moszumanska.debian.org
Fri Oct 3 14:47:37 UTC 2014


This is an automated email from the git hooks/post-receive script.

bengen pushed a commit to annotated tag debian/1%1.27.54-1
in repository libguestfs.

commit 0869f579fd4373f9270128cebc9f35777f7022da
Author: Richard W.M. Jones <rjones at redhat.com>
Date:   Sat Sep 20 09:03:36 2014 +0100

    aarch64: Add support to file_architecture API.
    
    Add support for aarch64 to the file_architecture API, so we can
    detect aarch64 guests correctly.
    
    Add a test binary and library.  These were generated on an aarch64
    machine by doing:
    
      echo 'main(){}' > bin.c
      gcc bin.c -o bin-aarch64-dynamic
      strip --strip-all bin-aarch64-dynamic
      echo '' > lib.c
      gcc -shared lib.c -o lib-aarch64.so
      strip --strip-all lib-aarch64.so
---
 generator/actions.ml           |   4 ++++
 src/filearch.c                 |   2 ++
 tests/data/Makefile.am         |   4 ++++
 tests/data/bin-aarch64-dynamic | Bin 0 -> 4616 bytes
 tests/data/lib-aarch64.so      | Bin 0 -> 4488 bytes
 5 files changed, 10 insertions(+)

diff --git a/generator/actions.ml b/generator/actions.ml
index 37cd227..73dcd33 100644
--- a/generator/actions.ml
+++ b/generator/actions.ml
@@ -782,6 +782,8 @@ to specify the QEMU interface emulation to use at run time." };
     style = RString "arch", [Pathname "filename"], [];
     tests = [
       InitISOFS, Always, TestResultString (
+        [["file_architecture"; "/bin-aarch64-dynamic"]], "aarch64"), [];
+      InitISOFS, Always, TestResultString (
         [["file_architecture"; "/bin-i586-dynamic"]], "i386"), [];
       InitISOFS, Always, TestResultString (
         [["file_architecture"; "/bin-sparc-dynamic"]], "sparc"), [];
@@ -792,6 +794,8 @@ to specify the QEMU interface emulation to use at run time." };
       InitISOFS, Always, TestResultString (
         [["file_architecture"; "/bin-x86_64-dynamic"]], "x86_64"), [];
       InitISOFS, Always, TestResultString (
+        [["file_architecture"; "/lib-aarch64.so"]], "aarch64"), [];
+      InitISOFS, Always, TestResultString (
         [["file_architecture"; "/lib-i586.so"]], "i386"), [];
       InitISOFS, Always, TestResultString (
         [["file_architecture"; "/lib-sparc.so"]], "sparc"), [];
diff --git a/src/filearch.c b/src/filearch.c
index 17f9e38..f0365b6 100644
--- a/src/filearch.c
+++ b/src/filearch.c
@@ -101,6 +101,8 @@ canonical_elf_arch (guestfs_h *g, const char *elf_arch)
     r = "ppc64";
   else if (strstr (elf_arch, "PowerPC"))
     r = "ppc";
+  else if (strstr (elf_arch, "ARM aarch64"))
+    r = "aarch64";
   else
     r = elf_arch;
 
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 298519d..78cadbd 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -26,11 +26,13 @@ EXTRA_DIST = \
 	helloworld.tar.xz \
 	mbr-ext2-empty.img.gz \
 	empty known-1 known-2 known-3 known-4 known-5 \
+	bin-aarch64-dynamic \
 	bin-i586-dynamic \
 	bin-sparc-dynamic \
 	bin-win32.exe \
 	bin-win64.exe \
 	bin-x86_64-dynamic \
+	lib-aarch64.so \
 	lib-i586.so \
 	lib-sparc.so \
 	lib-win32.dll \
@@ -49,11 +51,13 @@ images_files_src = \
 	$(srcdir)/known-3 \
 	$(srcdir)/known-4 \
 	$(srcdir)/known-5 \
+	$(srcdir)/bin-aarch64-dynamic \
 	$(srcdir)/bin-i586-dynamic \
 	$(srcdir)/bin-sparc-dynamic \
 	$(srcdir)/bin-win32.exe \
 	$(srcdir)/bin-win64.exe \
 	$(srcdir)/bin-x86_64-dynamic \
+	$(srcdir)/lib-aarch64.so \
 	$(srcdir)/lib-i586.so \
 	$(srcdir)/lib-sparc.so \
 	$(srcdir)/lib-win32.dll \
diff --git a/tests/data/bin-aarch64-dynamic b/tests/data/bin-aarch64-dynamic
new file mode 100755
index 0000000..2693cdb
Binary files /dev/null and b/tests/data/bin-aarch64-dynamic differ
diff --git a/tests/data/lib-aarch64.so b/tests/data/lib-aarch64.so
new file mode 100755
index 0000000..eb813dd
Binary files /dev/null and b/tests/data/lib-aarch64.so differ

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-libvirt/libguestfs.git



More information about the Pkg-libvirt-commits mailing list