forked from openkylin/platform_build
Merge "Exclude libstdc++ and libgcc if libc++ is requested."
This commit is contained in:
commit
294301bb34
|
@ -128,6 +128,13 @@ my_whole_static_libraries := $(LOCAL_WHOLE_STATIC_LIBRARIES_$($(my_prefix)$(LOCA
|
|||
|
||||
my_cflags := $(filter-out $($(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)GLOBAL_UNSUPPORTED_CFLAGS),$(my_cflags))
|
||||
|
||||
|
||||
# Replace libstdc++ with libc++ if it's seen
|
||||
my_libcxx := $(filter libc++, $(my_shared_libraries))
|
||||
ifdef my_libcxx
|
||||
my_system_shared_libraries := $(filter-out libstdc++, $(my_system_shared_libraries))
|
||||
endif
|
||||
|
||||
# Add static HAL libraries
|
||||
ifdef LOCAL_HAL_STATIC_LIBRARIES
|
||||
$(foreach lib, $(LOCAL_HAL_STATIC_LIBRARIES), \
|
||||
|
@ -885,6 +892,7 @@ $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_IMPORT_INCLUDES := $(import_includes)
|
|||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_LDFLAGS := $(my_ldflags)
|
||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_LDLIBS := $(LOCAL_LDLIBS)
|
||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_NO_CRT := $(strip $(LOCAL_NO_CRT) $(LOCAL_NO_CRT_$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)))
|
||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_LIBCXX := $(my_libcxx)
|
||||
|
||||
# this is really the way to get the files onto the command line instead
|
||||
# of using $^, because then LOCAL_ADDITIONAL_DEPENDENCIES doesn't work
|
||||
|
|
|
@ -240,7 +240,7 @@ $(hide) $(PRIVATE_CXX) \
|
|||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -266,7 +266,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bdynamic -fPIE -pie \
|
|||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -288,7 +288,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bstatic \
|
|||
$(call normalize-target-libraries,$(filter %libc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(call normalize-target-libraries,$(filter %libc_nomalloc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
|
|
@ -178,7 +178,7 @@ $(hide) $(PRIVATE_CXX) \
|
|||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -204,7 +204,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bdynamic -fPIE -pie \
|
|||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -226,7 +226,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bstatic \
|
|||
$(call normalize-target-libraries,$(filter %libc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(call normalize-target-libraries,$(filter %libc_nomalloc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
|
|
@ -225,13 +225,13 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -251,13 +251,13 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bdynamic -fPIE -pie \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -279,7 +279,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bstatic \
|
|||
$(call normalize-target-libraries,$(filter %libc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(call normalize-target-libraries,$(filter %libc_nomalloc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
|
|
@ -234,13 +234,13 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -260,13 +260,13 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bdynamic -fPIE -pie \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_TARGET_GLOBAL_LDFLAGS) \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -288,7 +288,7 @@ $(hide) $(PRIVATE_CXX) -nostdlib -Bstatic \
|
|||
$(call normalize-target-libraries,$(filter %libc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(call normalize-target-libraries,$(filter %libc_nomalloc.a,$(PRIVATE_ALL_STATIC_LIBRARIES))) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
|
|
@ -190,12 +190,12 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -216,12 +216,12 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -241,7 +241,7 @@ $(hide) $(PRIVATE_CXX) \
|
|||
-Wl,--start-group \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
|
|
@ -195,12 +195,12 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_SO_O))
|
||||
endef
|
||||
|
||||
|
@ -220,12 +220,12 @@ $(hide) $(PRIVATE_CXX) \
|
|||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--start-group) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(TARGET_BUILD_APPS),$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
|
||||
-o $@ \
|
||||
$(PRIVATE_LDFLAGS) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
endef
|
||||
|
@ -245,7 +245,7 @@ $(hide) $(PRIVATE_CXX) \
|
|||
-Wl,--start-group \
|
||||
$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
|
||||
$(PRIVATE_TARGET_FDO_LIB) \
|
||||
$(PRIVATE_TARGET_LIBGCC) \
|
||||
$(if $(PRIVATE_LIBCXX),,$(PRIVATE_TARGET_LIBGCC)) \
|
||||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O)) \
|
||||
$(PRIVATE_LDLIBS)
|
||||
|
|
Loading…
Reference in New Issue