about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEunji Jeong <eun-ji.jeong@samsung.com>2015-01-22 21:39:06 +0900
committerEunji Jeong <eun-ji.jeong@samsung.com>2015-02-10 15:48:05 +0900
commit5cbdf1db9bde6ffb8da4327974c2f5bb105c108a (patch)
tree8e404a588d0e14cc094a9fcd652a3a8764db9b3a
parent134e00be7751a9fdc820981962e4fd7ea97bfff6 (diff)
downloadrust-5cbdf1db9bde6ffb8da4327974c2f5bb105c108a.tar.gz
rust-5cbdf1db9bde6ffb8da4327974c2f5bb105c108a.zip
Make aarch64-linux-android check with real target
-rw-r--r--mk/install.mk9
-rw-r--r--mk/tests.mk13
-rw-r--r--src/compiletest/compiletest.rs16
-rw-r--r--src/compiletest/runtest.rs12
-rw-r--r--src/librustc_back/target/mod.rs5
5 files changed, 29 insertions, 26 deletions
diff --git a/mk/install.mk b/mk/install.mk
index 60c0a6bb4c7..24a5c575bfb 100644
--- a/mk/install.mk
+++ b/mk/install.mk
@@ -65,7 +65,7 @@ CFG_ADB_DEVICE_STATUS=$(1)
 endef
 
 $(foreach target,$(CFG_TARGET), \
-  $(if $(findstring $(target),"arm-linux-androideabi"), \
+  $(if $(or $(findstring $(target),"arm-linux-androideabi"),$(findstring $(target),"aarch64-linux-android")), \
     $(if $(findstring adb,$(CFG_ADB)), \
       $(if $(findstring device,$(shell $(CFG_ADB) devices 2>/dev/null | grep -E '^[_A-Za-z0-9-]+[[:blank:]]+device')), \
         $(info install: install-runtime-target for $(target) enabled \
@@ -117,8 +117,11 @@ install-runtime-target-$(1)-cleanup:
 	    $$(call ADB_SHELL,rm,$$(CFG_RUNTIME_PUSH_DIR)/$$(call CFG_LIB_GLOB_$(1),$$(crate)));)
 endef
 
-$(eval $(call INSTALL_RUNTIME_TARGET_N,arm-linux-androideabi,$(CFG_BUILD)))
-$(eval $(call INSTALL_RUNTIME_TARGET_CLEANUP_N,arm-linux-androideabi))
+$(foreach target,$(CFG_TARGET), \
+ $(if $(findstring $(CFG_ADB_DEVICE_STATUS),"true"), \
+  $(eval $(call INSTALL_RUNTIME_TARGET_N,$(taget),$(CFG_BUILD))) \
+  $(eval $(call INSTALL_RUNTIME_TARGET_CLEANUP_N,arm-linux-$(target))) \
+  ))
 
 install-runtime-target: \
 	install-runtime-target-arm-linux-androideabi-cleanup \
diff --git a/mk/tests.mk b/mk/tests.mk
index d8d77db1e02..3e4bae02427 100644
--- a/mk/tests.mk
+++ b/mk/tests.mk
@@ -111,14 +111,15 @@ $(foreach target,$(CFG_TARGET), \
 # for arm-linux-androidabi
 define DEF_ADB_DEVICE_STATUS
 CFG_ADB_DEVICE_STATUS=$(1)
+CFG_ANDROID_TARGET_TRIPLE=$(2)
 endef
 
 $(foreach target,$(CFG_TARGET), \
-  $(if $(findstring $(target),"arm-linux-androideabi"), \
+  $(if $(or $(findstring $(target),"arm-linux-androideabi"),$(findstring $(target),"aarch64-linux-android")), \
     $(if $(findstring adb,$(CFG_ADB)), \
       $(if $(findstring device,$(shell $(CFG_ADB) devices 2>/dev/null | grep -E '^[:_A-Za-z0-9-]+[[:blank:]]+device')), \
         $(info check: android device attached) \
-        $(eval $(call DEF_ADB_DEVICE_STATUS, true)), \
+        $(eval $(call DEF_ADB_DEVICE_STATUS, true, $(target))), \
         $(info check: android device not attached) \
         $(eval $(call DEF_ADB_DEVICE_STATUS, false)) \
       ), \
@@ -138,7 +139,7 @@ $(info check: android device test dir $(CFG_ADB_TEST_DIR) ready \
  $(shell $(CFG_ADB) shell mkdir $(CFG_ADB_TEST_DIR)/tmp) \
  $(shell $(CFG_ADB) push $(S)src/etc/adb_run_wrapper.sh $(CFG_ADB_TEST_DIR) 1>/dev/null) \
  $(foreach crate,$(TARGET_CRATES), \
-    $(shell $(CFG_ADB) push $(TLIB2_T_arm-linux-androideabi_H_$(CFG_BUILD))/$(call CFG_LIB_GLOB_arm-linux-androideabi,$(crate)) \
+    $(shell $(CFG_ADB) push $(TLIB2_T_$(CFG_ANDROID_TARGET_TRIPLE)_H_$(CFG_BUILD))/$(call CFG_LIB_GLOB_$(CFG_ANDROID_TARGET_TRIPLE),$(crate)) \
                     $(CFG_ADB_TEST_DIR))) \
  )
 else
@@ -393,7 +394,7 @@ $$(call TEST_OK_FILE,$(1),$(2),$(3),$(4)): \
 	    && touch $$@
 endef
 
-define DEF_TEST_CRATE_RULES_arm-linux-androideabi
+define DEF_TEST_CRATE_RULES_android
 check-stage$(1)-T-$(2)-H-$(3)-$(4)-exec: $$(call TEST_OK_FILE,$(1),$(2),$(3),$(4))
 
 $$(call TEST_OK_FILE,$(1),$(2),$(3),$(4)): \
@@ -434,9 +435,9 @@ $(foreach host,$(CFG_HOST), \
    $(foreach crate, $(TEST_CRATES), \
     $(if $(findstring $(target),$(CFG_BUILD)), \
      $(eval $(call DEF_TEST_CRATE_RULES,$(stage),$(target),$(host),$(crate))), \
-     $(if $(findstring $(target),"arm-linux-androideabi"), \
+     $(if $(or $(findstring $(target),"arm-linux-androideabi"), $(findstring $(target),"aarch64-linux-android")), \
       $(if $(findstring $(CFG_ADB_DEVICE_STATUS),"true"), \
-       $(eval $(call DEF_TEST_CRATE_RULES_arm-linux-androideabi,$(stage),$(target),$(host),$(crate))), \
+       $(eval $(call DEF_TEST_CRATE_RULES_android,$(stage),$(target),$(host),$(crate))), \
        $(eval $(call DEF_TEST_CRATE_RULES_null,$(stage),$(target),$(host),$(crate))) \
       ), \
       $(eval $(call DEF_TEST_CRATE_RULES,$(stage),$(target),$(host),$(crate))) \
diff --git a/src/compiletest/compiletest.rs b/src/compiletest/compiletest.rs
index e6d2a691cf5..1e9f843db34 100644
--- a/src/compiletest/compiletest.rs
+++ b/src/compiletest/compiletest.rs
@@ -158,10 +158,8 @@ pub fn parse_config(args: Vec<String> ) -> Config {
         adb_path: opt_str2(matches.opt_str("adb-path")),
         adb_test_dir: opt_str2(matches.opt_str("adb-test-dir")),
         adb_device_status:
-            "arm-linux-androideabi" ==
-                opt_str2(matches.opt_str("target")) &&
-            "(none)" !=
-                opt_str2(matches.opt_str("adb-test-dir")) &&
+            opt_str2(matches.opt_str("target")).contains("android") &&
+            "(none)" != opt_str2(matches.opt_str("adb-test-dir")) &&
             !opt_str2(matches.opt_str("adb-test-dir")).is_empty(),
         lldb_python_dir: matches.opt_str("lldb-python-dir"),
         verbose: matches.opt_present("verbose"),
@@ -216,17 +214,17 @@ pub fn opt_str2(maybestr: Option<String>) -> String {
 }
 
 pub fn run_tests(config: &Config) {
-    if config.target == "arm-linux-androideabi" {
+    if config.target.contains("android") {
         match config.mode {
             DebugInfoGdb => {
-                println!("arm-linux-androideabi debug-info \
-                         test uses tcp 5039 port. please reserve it");
+                println!("{} debug-info test uses tcp 5039 port.\
+                         please reserve it", config.target);
             }
             _ =>{}
         }
 
-        //arm-linux-androideabi debug-info test uses remote debugger
-        //so, we test 1 task at once.
+        // android debug-info test uses remote debugger
+        // so, we test 1 task at once.
         // also trying to isolate problems with adb_run_wrapper.sh ilooping
         env::set_var("RUST_TEST_TASKS","1");
     }
diff --git a/src/compiletest/runtest.rs b/src/compiletest/runtest.rs
index 5a372fd7cdc..047d84f1eca 100644
--- a/src/compiletest/runtest.rs
+++ b/src/compiletest/runtest.rs
@@ -42,7 +42,7 @@ use test::MetricMap;
 pub fn run(config: Config, testfile: String) {
     match &*config.target {
 
-        "arm-linux-androideabi" => {
+        "arm-linux-androideabi" | "aarch64-linux-android" => {
             if !config.adb_device_status {
                 panic!("android device not available");
             }
@@ -382,7 +382,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
 
     let debugger_run_result;
     match &*config.target {
-        "arm-linux-androideabi" => {
+        "arm-linux-androideabi" | "aarch64-linux-android" => {
 
             cmds = cmds.replace("run", "continue").to_string();
 
@@ -470,7 +470,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
                      format!("-command={}", debugger_script.as_str().unwrap()));
 
             let mut gdb_path = tool_path;
-            gdb_path.push_str("/bin/arm-linux-androideabi-gdb");
+            gdb_path.push_str(&format!("/bin/{}-gdb", config.target));
             let procsrv::Result {
                 out,
                 err,
@@ -484,7 +484,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
                 .expect(&format!("failed to exec `{:?}`", gdb_path));
             let cmdline = {
                 let cmdline = make_cmdline("",
-                                           "arm-linux-androideabi-gdb",
+                                           &format!("{}-gdb", config.target),
                                            &debugger_opts);
                 logv(config, format!("executing {}", cmdline));
                 cmdline
@@ -1135,7 +1135,7 @@ fn exec_compiled_test(config: &Config, props: &TestProps,
 
     match &*config.target {
 
-        "arm-linux-androideabi" => {
+        "arm-linux-androideabi" | "aarch64-linux-android" => {
             _arm_exec_compiled_test(config, props, testfile, env)
         }
 
@@ -1200,7 +1200,7 @@ fn compose_and_run_compiler(
         }
 
         match &*config.target {
-            "arm-linux-androideabi" => {
+            "arm-linux-androideabi"  | "aarch64-linux-android" => {
                 _arm_push_aux_shared_library(config, testfile);
             }
             _ => {}
diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs
index afb5c948f18..c15e18168e5 100644
--- a/src/librustc_back/target/mod.rs
+++ b/src/librustc_back/target/mod.rs
@@ -345,11 +345,13 @@ impl Target {
             mips_unknown_linux_gnu,
             mipsel_unknown_linux_gnu,
             powerpc_unknown_linux_gnu,
-            arm_linux_androideabi,
             arm_unknown_linux_gnueabi,
             arm_unknown_linux_gnueabihf,
             aarch64_unknown_linux_gnu,
 
+            arm_linux_androideabi,
+            aarch64_linux_android,
+
             x86_64_unknown_freebsd,
 
             i686_unknown_dragonfly,
@@ -363,7 +365,6 @@ impl Target {
             i386_apple_ios,
             x86_64_apple_ios,
             aarch64_apple_ios,
-            aarch64_linux_android,
             armv7_apple_ios,
             armv7s_apple_ios,