Support to build executables for TARGET_2ND_ARCH

By default, an executable is built for TARGET_ARCH.
To build it for TARGET_2ND_ARCH in a 64bit product, use:
LOCAL_32BIT_ONLY := true
To skip a module for TARGET_2ND_ARCH, use:
LOCAL_NO_2ND_ARCH := true

Bug: 11654773
Change-Id: Ieb293d25b21024bfe1b554044df338e064ac7b46
diff --git a/core/shared_library.mk b/core/shared_library.mk
index d0d1a51..b3e319f 100644
--- a/core/shared_library.mk
+++ b/core/shared_library.mk
@@ -1,7 +1,12 @@
+ifneq ($(TARGET_IS_64_BIT)|$(LOCAL_32BIT_ONLY),true|true)
+# Build for TARGET_ARCH
+LOCAL_2ND_ARCH_VAR_PREFIX :=
 include $(BUILD_SYSTEM)/shared_library_internal.mk
+endif
 
 ifdef TARGET_2ND_ARCH
-
+ifneq ($(LOCAL_NO_2ND_ARCH),true)
+# Build for TARGET_2ND_ARCH
 OVERRIDE_BUILT_MODULE_PATH :=
 LOCAL_BUILT_MODULE :=
 LOCAL_INSTALLED_MODULE :=
@@ -14,4 +19,5 @@
 include $(BUILD_SYSTEM)/shared_library_internal.mk
 LOCAL_2ND_ARCH_VAR_PREFIX :=
 
-endif
+endif # LOCAL_NO_2ND_ARCH
+endif # TARGET_2ND_ARCH