Remove unused mips workarounds.

This was never really finished, and hasn't been supported for years.

Test: treehugger
Change-Id: I7668088d1449f33025aaf36fae0817894c84a877
This commit is contained in:
Elliott Hughes 2020-03-06 16:46:59 -08:00
parent 074d8e132b
commit f71c05a8e5
12 changed files with 10 additions and 162 deletions

View file

@ -110,19 +110,8 @@ ifneq ($(LOCAL_SDK_VERSION),)
# Make sure we've built the NDK. # Make sure we've built the NDK.
my_additional_dependencies += $(SOONG_OUT_DIR)/ndk_base.timestamp my_additional_dependencies += $(SOONG_OUT_DIR)/ndk_base.timestamp
# mips32r6 is not supported by the NDK. No released NDK contains these
# libraries, but the r10 in prebuilts/ndk had a local hack to add them :(
#
# We need to find a real solution to this problem, but until we do just drop
# mips32r6 things back to r10 to get the tree building again.
ifeq (mips32r6,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH_VARIANT))
ifeq ($(LOCAL_NDK_VERSION), current)
LOCAL_NDK_VERSION := r10
endif
endif
my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH) my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)
ifneq (,$(filter arm64 mips64 x86_64,$(my_arch))) ifneq (,$(filter arm64 x86_64,$(my_arch)))
my_min_sdk_version := 21 my_min_sdk_version := 21
else else
my_min_sdk_version := $(MIN_SUPPORTED_SDK_VERSION) my_min_sdk_version := $(MIN_SUPPORTED_SDK_VERSION)
@ -156,17 +145,11 @@ ifneq ($(LOCAL_SDK_VERSION),)
$(my_built_ndk)/sysroot/usr/include/$(my_ndk_triple) \ $(my_built_ndk)/sysroot/usr/include/$(my_ndk_triple) \
$(my_ndk_sysroot)/usr/include \ $(my_ndk_sysroot)/usr/include \
# x86_64 and and mips64 are both multilib toolchains, so their libraries are # x86_64 is a multilib toolchain, so their libraries are
# installed in /usr/lib64. Aarch64, on the other hand, is not a multilib # installed in /usr/lib64. Aarch64, on the other hand, is not a multilib
# compiler, so its libraries are in /usr/lib. # compiler, so its libraries are in /usr/lib.
# ifneq (,$(filter x86_64,$(my_arch)))
# Mips32r6 is yet another variation, with libraries installed in libr6.
#
# For the rest, the libraries are installed simply to /usr/lib.
ifneq (,$(filter x86_64 mips64,$(my_arch)))
my_ndk_libdir_name := lib64 my_ndk_libdir_name := lib64
else ifeq (mips32r6,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH_VARIANT))
my_ndk_libdir_name := libr6
else else
my_ndk_libdir_name := lib my_ndk_libdir_name := lib
endif endif
@ -180,11 +163,7 @@ ifneq ($(LOCAL_SDK_VERSION),)
# hashes (which are much faster!), but shipping to older devices requires # hashes (which are much faster!), but shipping to older devices requires
# the old style hash. Fortunately, we can build with both and it'll work # the old style hash. Fortunately, we can build with both and it'll work
# anywhere. # anywhere.
# my_ldflags += -Wl,--hash-style=both
# This is not currently supported on MIPS architectures.
ifeq (,$(filter mips mips64,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)))
my_ldflags += -Wl,--hash-style=both
endif
# We don't want to expose the relocation packer to the NDK just yet. # We don't want to expose the relocation packer to the NDK just yet.
LOCAL_PACK_MODULE_RELOCATIONS := false LOCAL_PACK_MODULE_RELOCATIONS := false
@ -195,9 +174,6 @@ ifneq ($(LOCAL_SDK_VERSION),)
my_ndk_stl_shared_lib_fullpath := my_ndk_stl_shared_lib_fullpath :=
my_ndk_stl_static_lib := my_ndk_stl_static_lib :=
my_cpu_variant := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)CPU_ABI) my_cpu_variant := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)CPU_ABI)
ifeq (mips32r6,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH_VARIANT))
my_cpu_variant := mips32r6
endif
LOCAL_NDK_STL_VARIANT := $(strip $(LOCAL_NDK_STL_VARIANT)) LOCAL_NDK_STL_VARIANT := $(strip $(LOCAL_NDK_STL_VARIANT))
ifeq (,$(LOCAL_NDK_STL_VARIANT)) ifeq (,$(LOCAL_NDK_STL_VARIANT))
LOCAL_NDK_STL_VARIANT := system LOCAL_NDK_STL_VARIANT := system

View file

@ -467,8 +467,6 @@ set to and some examples.</p>
<b>TARGET_ARCH</b><br/> <b>TARGET_ARCH</b><br/>
arm<br/> arm<br/>
arm64<br/> arm64<br/>
mips<br/>
mips64<br/>
x86<br/> x86<br/>
x86_64 x86_64
</td> </td>

View file

@ -1,9 +0,0 @@
$(clang_2nd_arch_prefix)RS_TRIPLE := renderscript32-linux-androideabi
$(clang_2nd_arch_prefix)RS_TRIPLE_CFLAGS :=
RS_COMPAT_TRIPLE := mipsel-linux-android
$(clang_2nd_arch_prefix)TARGET_LIBPROFILE_RT := $(LLVM_RTLIB_PATH)/libclang_rt.profile-mipsel-android.a
# Address sanitizer clang config
$(clang_2nd_arch_prefix)ADDRESS_SANITIZER_LINKER := /system/bin/linker_asan
$(clang_2nd_arch_prefix)ADDRESS_SANITIZER_LINKER_FILE := /system/bin/bootstrap/linker_asan

View file

@ -1,9 +0,0 @@
RS_TRIPLE := renderscript64-linux-android
RS_TRIPLE_CFLAGS :=
RS_COMPAT_TRIPLE := mips64el-linux-android
TARGET_LIBPROFILE_RT := $(LLVM_RTLIB_PATH)/libclang_rt.profile-mips64el-android.a
# Address sanitizer clang config
$(clang_2nd_arch_prefix)ADDRESS_SANITIZER_LINKER := /system/bin/linker_asan64
$(clang_2nd_arch_prefix)ADDRESS_SANITIZER_LINKER_FILE := /system/bin/bootstrap/linker_asan64

View file

@ -1,44 +0,0 @@
#
# Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Configuration for Linux on MIPS.
# Included by combo/select.mk
# You can set TARGET_ARCH_VARIANT to use an arch version other
# than mips32r2-fp. Each value should correspond to a file named
# $(BUILD_COMBOS)/arch/<name>.mk which must contain
# makefile variable definitions. Their
# purpose is to allow module Android.mk files to selectively compile
# different versions of code based upon the funtionality and
# instructions available in a given architecture version.
#
# The blocks also define specific arch_variant_cflags, which
# include defines, and compiler settings for the given architecture
# version.
#
ifeq ($(strip $(TARGET_$(combo_2nd_arch_prefix)ARCH_VARIANT)),)
TARGET_$(combo_2nd_arch_prefix)ARCH_VARIANT := mips32r2-fp
endif
include $(BUILD_SYSTEM)/combo/fdo.mk
define $(combo_var_prefix)transform-shared-lib-to-toc
$(call _gen_toc_command_for_elf,$(1),$(2))
endef
$(combo_2nd_arch_prefix)TARGET_PACK_MODULE_RELOCATIONS := true
$(combo_2nd_arch_prefix)TARGET_LINKER := /system/bin/linker

View file

@ -1,44 +0,0 @@
#
# Copyright (C) 2013 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Configuration for Linux on MIPS64.
# Included by combo/select.mk
# You can set TARGET_ARCH_VARIANT to use an arch version other
# than mips64r6. Each value should correspond to a file named
# $(BUILD_COMBOS)/arch/<name>.mk which must contain
# makefile variable definitions. Their
# purpose is to allow module Android.mk files to selectively compile
# different versions of code based upon the funtionality and
# instructions available in a given architecture version.
#
# The blocks also define specific arch_variant_cflags, which
# include defines, and compiler settings for the given architecture
# version.
#
ifeq ($(strip $(TARGET_ARCH_VARIANT)),)
TARGET_ARCH_VARIANT := mips64r6
endif
include $(BUILD_SYSTEM)/combo/fdo.mk
define $(combo_var_prefix)transform-shared-lib-to-toc
$(call _gen_toc_command_for_elf,$(1),$(2))
endef
TARGET_PACK_MODULE_RELOCATIONS := true
TARGET_LINKER := /system/bin/linker64

View file

@ -134,12 +134,6 @@ ifneq ($(filter address,$(my_sanitize)),)
my_sanitize_diag := $(filter-out cfi,$(my_sanitize_diag)) my_sanitize_diag := $(filter-out cfi,$(my_sanitize_diag))
endif endif
# CFI needs gold linker, and mips toolchain does not have one.
ifneq ($(filter mips mips64,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)),)
my_sanitize := $(filter-out cfi,$(my_sanitize))
my_sanitize_diag := $(filter-out cfi,$(my_sanitize_diag))
endif
# Disable sanitizers which need the UBSan runtime for host targets. # Disable sanitizers which need the UBSan runtime for host targets.
ifdef LOCAL_IS_HOST_MODULE ifdef LOCAL_IS_HOST_MODULE
my_sanitize := $(filter-out cfi,$(my_sanitize)) my_sanitize := $(filter-out cfi,$(my_sanitize))

View file

@ -56,16 +56,6 @@ DEX2OAT_IMAGE_XMX := $(call get-product-default-property,dalvik.vm.image-dex2oat
DEX2OAT_XMS := $(call get-product-default-property,dalvik.vm.dex2oat-Xms) DEX2OAT_XMS := $(call get-product-default-property,dalvik.vm.dex2oat-Xms)
DEX2OAT_XMX := $(call get-product-default-property,dalvik.vm.dex2oat-Xmx) DEX2OAT_XMX := $(call get-product-default-property,dalvik.vm.dex2oat-Xmx)
ifeq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),mips mips64))
# MIPS specific overrides.
# For MIPS the ART image is loaded at a lower address. This causes issues
# with the image overlapping with memory on the host cross-compiling and
# building the image. We therefore limit the Xmx value. This isn't done
# via a property as we want the larger Xmx value if we're running on a
# MIPS device.
DEX2OAT_XMX := 128m
endif
ifeq ($(WRITE_SOONG_VARIABLES),true) ifeq ($(WRITE_SOONG_VARIABLES),true)
$(call json_start) $(call json_start)

View file

@ -101,7 +101,7 @@ TARGET_BUILD_APPS ?=
# --------------------------------------------------------------- # ---------------------------------------------------------------
# Set up configuration for host machine. We don't do cross- # Set up configuration for host machine. We don't do cross-
# compiles except for arm/mips, so the HOST is whatever we are # compiles except for arm, so the HOST is whatever we are
# running on # running on
# HOST_OS # HOST_OS

View file

@ -129,7 +129,7 @@ LOCAL_JNI_SHARED_LIBRARIES += libRSSupportIO
endif endif
my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH) my_arch := $(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)
ifneq (,$(filter arm64 mips64 x86_64,$(my_arch))) ifneq (,$(filter arm64 x86_64,$(my_arch)))
my_min_sdk_version := 21 my_min_sdk_version := 21
else else
my_min_sdk_version := $(MIN_SUPPORTED_SDK_VERSION) my_min_sdk_version := $(MIN_SUPPORTED_SDK_VERSION)

View file

@ -8,7 +8,7 @@ Invoke ". build/envsetup.sh" from your shell to add the following functions to y
Selects <product_name> as the product to build, and <build_variant> as the variant to Selects <product_name> as the product to build, and <build_variant> as the variant to
build, and stores those selections in the environment to be read by subsequent build, and stores those selections in the environment to be read by subsequent
invocations of 'm' etc. invocations of 'm' etc.
- tapas: tapas [<App1> <App2> ...] [arm|x86|mips|arm64|x86_64|mips64] [eng|userdebug|user] - tapas: tapas [<App1> <App2> ...] [arm|x86|arm64|x86_64] [eng|userdebug|user]
- croot: Changes directory to the top of the tree, or a subdirectory thereof. - croot: Changes directory to the top of the tree, or a subdirectory thereof.
- m: Makes from the top of the tree. - m: Makes from the top of the tree.
- mm: Builds and installs all of the modules in the current directory, and their - mm: Builds and installs all of the modules in the current directory, and their
@ -218,8 +218,6 @@ function setpaths()
arm64) toolchaindir=aarch64/aarch64-linux-android-$targetgccversion/bin; arm64) toolchaindir=aarch64/aarch64-linux-android-$targetgccversion/bin;
toolchaindir2=arm/arm-linux-androideabi-$targetgccversion2/bin toolchaindir2=arm/arm-linux-androideabi-$targetgccversion2/bin
;; ;;
mips|mips64) toolchaindir=mips/mips64el-linux-android-$targetgccversion/bin
;;
*) *)
echo "Can't find toolchain for unknown architecture: $ARCH" echo "Can't find toolchain for unknown architecture: $ARCH"
toolchaindir=xxxxxxxxx toolchaindir=xxxxxxxxx
@ -701,10 +699,10 @@ function _lunch()
function tapas() function tapas()
{ {
local showHelp="$(echo $* | xargs -n 1 echo | \grep -E '^(help)$' | xargs)" local showHelp="$(echo $* | xargs -n 1 echo | \grep -E '^(help)$' | xargs)"
local arch="$(echo $* | xargs -n 1 echo | \grep -E '^(arm|x86|mips|arm64|x86_64|mips64)$' | xargs)" local arch="$(echo $* | xargs -n 1 echo | \grep -E '^(arm|x86|arm64|x86_64)$' | xargs)"
local variant="$(echo $* | xargs -n 1 echo | \grep -E '^(user|userdebug|eng)$' | xargs)" local variant="$(echo $* | xargs -n 1 echo | \grep -E '^(user|userdebug|eng)$' | xargs)"
local density="$(echo $* | xargs -n 1 echo | \grep -E '^(ldpi|mdpi|tvdpi|hdpi|xhdpi|xxhdpi|xxxhdpi|alldpi)$' | xargs)" local density="$(echo $* | xargs -n 1 echo | \grep -E '^(ldpi|mdpi|tvdpi|hdpi|xhdpi|xxhdpi|xxxhdpi|alldpi)$' | xargs)"
local apps="$(echo $* | xargs -n 1 echo | \grep -E -v '^(user|userdebug|eng|arm|x86|mips|arm64|x86_64|mips64|ldpi|mdpi|tvdpi|hdpi|xhdpi|xxhdpi|xxxhdpi|alldpi)$' | xargs)" local apps="$(echo $* | xargs -n 1 echo | \grep -E -v '^(user|userdebug|eng|arm|x86|arm64|x86_64|ldpi|mdpi|tvdpi|hdpi|xhdpi|xxhdpi|xxxhdpi|alldpi)$' | xargs)"
if [ "$showHelp" != "" ]; then if [ "$showHelp" != "" ]; then
$(gettop)/build/make/tapasHelp.sh $(gettop)/build/make/tapasHelp.sh
@ -727,10 +725,8 @@ function tapas()
local product=aosp_arm local product=aosp_arm
case $arch in case $arch in
x86) product=aosp_x86;; x86) product=aosp_x86;;
mips) product=aosp_mips;;
arm64) product=aosp_arm64;; arm64) product=aosp_arm64;;
x86_64) product=aosp_x86_64;; x86_64) product=aosp_x86_64;;
mips64) product=aosp_mips64;;
esac esac
if [ -z "$variant" ]; then if [ -z "$variant" ]; then
variant=eng variant=eng

View file

@ -6,7 +6,7 @@ SCRIPT_DIR="${PWD}"
cd ../.. cd ../..
TOP="${PWD}" TOP="${PWD}"
message='usage: tapas [<App1> <App2> ...] [arm|x86|mips|arm64|x86_64|mips64] [eng|userdebug|user] message='usage: tapas [<App1> <App2> ...] [arm|x86|arm64|x86_64] [eng|userdebug|user]
tapas selects individual apps to be built by the Android build system. Unlike tapas selects individual apps to be built by the Android build system. Unlike
"lunch", "tapas" does not request the building of images for a device. "lunch", "tapas" does not request the building of images for a device.