OSDN Git Service

Simplify LOCAL_NO_CRT.
authorYing Wang <wangying@google.com>
Thu, 2 Jul 2015 22:57:45 +0000 (15:57 -0700)
committerYing Wang <wangying@google.com>
Thu, 2 Jul 2015 22:58:34 +0000 (15:58 -0700)
Change-Id: If2486e4861071df6b225fe7f387530a38f554484

core/binary.mk
core/clear_vars.mk
core/definitions.mk
core/executable_internal.mk
core/shared_library_internal.mk

index ba55935..116e261 100644 (file)
@@ -1067,7 +1067,6 @@ $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_C_INCLUDES := $(my_c_includes)
 $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_IMPORT_INCLUDES := $(import_includes)
 $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_LDFLAGS := $(my_ldflags)
 $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_LDLIBS := $(my_ldlibs)
-$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_NO_CRT := $(strip $(LOCAL_NO_CRT) $(LOCAL_NO_CRT_$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)))
 
 # this is really the way to get the files onto the command line instead
 # of using $^, because then LOCAL_ADDITIONAL_DEPENDENCIES doesn't work
index bd6902c..9d6f91b 100644 (file)
@@ -192,7 +192,6 @@ LOCAL_CLANG_CPPFLAGS_$(TARGET_ARCH):=
 LOCAL_C_INCLUDES_$(TARGET_ARCH):=
 LOCAL_ASFLAGS_$(TARGET_ARCH):=
 LOCAL_CLANG_ASFLAGS_$(TARGET_ARCH):=
-LOCAL_NO_CRT_$(TARGET_ARCH):=
 LOCAL_LDFLAGS_$(TARGET_ARCH):=
 LOCAL_CLANG_LDFLAGS_$(TARGET_ARCH):=
 LOCAL_SHARED_LIBRARIES_$(TARGET_ARCH):=
@@ -211,7 +210,6 @@ LOCAL_CLANG_CPPFLAGS_$(TARGET_2ND_ARCH):=
 LOCAL_C_INCLUDES_$(TARGET_2ND_ARCH):=
 LOCAL_ASFLAGS_$(TARGET_2ND_ARCH):=
 LOCAL_CLANG_ASFLAGS_$(TARGET_2ND_ARCH):=
-LOCAL_NO_CRT_$(TARGET_2ND_ARCH):=
 LOCAL_LDFLAGS_$(TARGET_2ND_ARCH):=
 LOCAL_CLANG_LDFLAGS_$(TARGET_2ND_ARCH):=
 LOCAL_SHARED_LIBRARIES_$(TARGET_2ND_ARCH):=
@@ -230,7 +228,6 @@ LOCAL_CLANG_CPPFLAGS_$(HOST_ARCH):=
 LOCAL_C_INCLUDES_$(HOST_ARCH):=
 LOCAL_ASFLAGS_$(HOST_ARCH):=
 LOCAL_CLANG_ASFLAGS_$(HOST_ARCH):=
-LOCAL_NO_CRT_$(HOST_ARCH):=
 LOCAL_LDFLAGS_$(HOST_ARCH):=
 LOCAL_CLANG_LDFLAGS_$(HOST_ARCH):=
 LOCAL_SHARED_LIBRARIES_$(HOST_ARCH):=
@@ -248,7 +245,6 @@ LOCAL_CLANG_CPPFLAGS_$(HOST_2ND_ARCH):=
 LOCAL_C_INCLUDES_$(HOST_2ND_ARCH):=
 LOCAL_ASFLAGS_$(HOST_2ND_ARCH):=
 LOCAL_CLANG_ASFLAGS_$(HOST_2ND_ARCH):=
-LOCAL_NO_CRT_$(HOST_2ND_ARCH):=
 LOCAL_LDFLAGS_$(HOST_2ND_ARCH):=
 LOCAL_CLANG_LDFLAGS_$(HOST_2ND_ARCH):=
 LOCAL_SHARED_LIBRARIES_$(HOST_2ND_ARCH):=
index c1841dc..442501e 100644 (file)
@@ -831,7 +831,6 @@ define dump-module-variables
 @echo PRIVATE_ALL_STATIC_LIBRARIES=$(PRIVATE_ALL_STATIC_LIBRARIES);
 @echo PRIVATE_ALL_WHOLE_STATIC_LIBRARIES=$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES);
 @echo PRIVATE_ALL_OBJECTS=$(PRIVATE_ALL_OBJECTS);
-@echo PRIVATE_NO_CRT=$(PRIVATE_NO_CRT);
 endef
 
 ###########################################################
@@ -1443,7 +1442,7 @@ $(hide) $(PRIVATE_CXX) \
        -Wl,--gc-sections \
        $(if $(filter true,$(PRIVATE_CLANG)),-shared,-Wl$(comma)-shared) \
        $(PRIVATE_TARGET_GLOBAL_LD_DIRS) \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTBEGIN_SO_O)) \
+       $(PRIVATE_TARGET_CRTBEGIN_SO_O) \
        $(PRIVATE_ALL_OBJECTS) \
        -Wl,--whole-archive \
        $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
@@ -1459,7 +1458,7 @@ $(hide) $(PRIVATE_CXX) \
        -o $@ \
        $(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
        $(PRIVATE_LDFLAGS) \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
+       $(PRIVATE_TARGET_CRTEND_SO_O) \
        $(PRIVATE_LDLIBS)
 endef
 
@@ -1516,7 +1515,7 @@ $(hide) $(PRIVATE_CXX) -pie \
        -Wl,-z,nocopyreloc \
        $(PRIVATE_TARGET_GLOBAL_LD_DIRS) \
        -Wl,-rpath-link=$(PRIVATE_TARGET_OUT_INTERMEDIATE_LIBRARIES) \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTBEGIN_DYNAMIC_O)) \
+       $(PRIVATE_TARGET_CRTBEGIN_DYNAMIC_O) \
        $(PRIVATE_ALL_OBJECTS) \
        -Wl,--whole-archive \
        $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
@@ -1532,7 +1531,7 @@ $(hide) $(PRIVATE_CXX) -pie \
        -o $@ \
        $(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
        $(PRIVATE_LDFLAGS) \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
+       $(PRIVATE_TARGET_CRTEND_O) \
        $(PRIVATE_LDLIBS)
 endef
 
@@ -1560,7 +1559,7 @@ $(hide) $(PRIVATE_CXX) \
        -Wl,--gc-sections \
        -o $@ \
        $(PRIVATE_TARGET_GLOBAL_LD_DIRS) \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTBEGIN_STATIC_O)) \
+       $(PRIVATE_TARGET_CRTBEGIN_STATIC_O) \
        $(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
        $(PRIVATE_LDFLAGS) \
        $(PRIVATE_ALL_OBJECTS) \
@@ -1577,7 +1576,7 @@ $(hide) $(PRIVATE_CXX) \
        $(call normalize-target-libraries,$(filter %libcompiler_rt.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
        $(PRIVATE_TARGET_LIBGCC) \
        -Wl,--end-group \
-       $(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
+       $(PRIVATE_TARGET_CRTEND_O)
 endef
 
 define transform-o-to-static-executable
index cdaf293..1d576a2 100644 (file)
@@ -43,9 +43,15 @@ else
 my_target_libgcc := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_LIBGCC)
 endif
 my_target_libatomic := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_LIBATOMIC)
+ifeq ($(LOCAL_NO_CRT),true)
+my_target_crtbegin_dynamic_o :=
+my_target_crtbegin_static_o :=
+my_target_crtend_o :=
+else
 my_target_crtbegin_dynamic_o := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CRTBEGIN_DYNAMIC_O)
 my_target_crtbegin_static_o := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CRTBEGIN_STATIC_O)
 my_target_crtend_o := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CRTEND_O)
+endif
 ifdef LOCAL_SDK_VERSION
 # Make sure the prebuilt NDK paths are put ahead of the TARGET_GLOBAL_LD_DIRS,
 # so we don't have race condition when the system libraries (such as libc, libstdc++) are also built in the tree.
index e21cf5d..1507502 100644 (file)
@@ -48,8 +48,13 @@ else
 my_target_libgcc := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_LIBGCC)
 endif
 my_target_libatomic := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_LIBATOMIC)
+ifeq ($(LOCAL_NO_CRT),true)
+my_target_crtbegin_so_o :=
+my_target_crtend_so_o :=
+else
 my_target_crtbegin_so_o := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CRTBEGIN_SO_O)
 my_target_crtend_so_o := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_CRTEND_SO_O)
+endif
 ifdef LOCAL_SDK_VERSION
 # Make sure the prebuilt NDK paths are put ahead of the TARGET_GLOBAL_LD_DIRS,
 # so we don't have race condition when the system libraries (such as libc, libstdc++) are also built in the tree.