Convert run-vixl-tests from Android.mk to Android.bp

Create cc_genrule for running vixl test and keep original phony target
run-vixl-tests. Also enable vixl-test-runner as the srcs of the
cc_genrule.

Bug: 320608980
Test: m run-vixl-tests
Test: m test-art-host-vixl
Change-Id: I8f992b35ee6fd25c2f91add79ccdbad5f39fe985
diff --git a/Android.bp b/Android.bp
index 0091c9f..ea33a68 100644
--- a/Android.bp
+++ b/Android.bp
@@ -233,7 +233,7 @@
         "test",
     ],
     exclude_srcs: [
-        "test/test-donkey.cc"
+        "test/test-donkey.cc",
     ],
     srcs: [
         "test/*.cc",
@@ -256,3 +256,43 @@
         },
     },
 }
+
+cc_genrule {
+    name: "vixl-test-timestamp",
+    srcs: [
+        ":libc++",
+        ":vixl-test-runner",
+        "test/test-trace-reference/**/*",
+    ],
+    compile_multilib: "first",
+    host_supported: true,
+    device_supported: false,
+    cmd: "echo 'Running vixl tests' && " +
+        "cp $(location :vixl-test-runner) $(genDir)/ && " +
+        // Copy needed share libs for vixl-test-runner
+        "cp $(location :libc++) $(genDir)/ && " +
+        "mkdir -p $(genDir)/test/test-trace-reference/ && " +
+        "cp $(locations test/test-trace-reference/**/*) $(genDir)/test/test-trace-reference/ && " +
+        "cd $(genDir) && " +
+        "./vixl-test-runner --run_all 2>&1 && " +
+        "./vixl-test-runner --run_all --debugger 2>&1 && " +
+        "echo 'vixl tests PASSED' && " +
+        "touch vixl-test-timestamp.txt",
+    out: ["vixl-test-timestamp.txt"],
+    enabled: false,
+    target: {
+        linux_glibc_x86_64: {
+            enabled: true,
+        },
+        linux_musl_x86_64: {
+            enabled: true,
+        },
+    },
+}
+
+phony_rule {
+    name: "run-vixl-tests",
+    phony_deps: [
+        "vixl-test-timestamp",
+    ],
+}
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index 6f87fcc..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright (C) 2016 The Android Open Source Project
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#  * Redistributions of source code must retain the above copyright
-#    notice, this list of conditions and the following disclaimer.
-#  * Redistributions in binary form must reproduce the above copyright
-#    notice, this list of conditions and the following disclaimer in
-#    the documentation and/or other materials provided with the
-#    distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
-# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
-# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-#
-#
-# Copyright (c) 2016 VIXL authors
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-#    notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-#    notice, this list of conditions and the following disclaimer in the
-#    documentation and/or other materials provided with the distribution.
-# 3. The name of the company may not be used to endorse or promote
-#    products derived from this software without specific prior written
-#    permission.
-#
-# THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-LOCAL_PATH:= $(call my-dir)
-
-vixl_timestamp := $(HOST_OUT_NATIVE_TESTS)/vixl-test-runner/test.timestamp
-$(vixl_timestamp): $(HOST_OUT_NATIVE_TESTS)/vixl-test-runner/vixl-test-runner
-	# TODO: Once available, use the appropriate option of vixl-test-runner
-	# to point to the trace files instead of running from the vixl root.
-	echo Running vixl tests
-	cd $(dir $<) && ./$(notdir $<) --run_all
-	cd $(dir $<) && ./$(notdir $<) --run_all --debugger
-	echo vixl tests PASSED
-	touch $@
-
-.PHONY: run-vixl-tests
-run-vixl-tests: $(vixl_timestamp)
-
-vixl_timestamp :=