From d1d68b19ac6a09e10771cc369efab317400582fc Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Fri, 11 Sep 2015 10:57:14 -0700 Subject: [PATCH] Fix `LOCAL_CXX_STL := none` for Windows. We still need to link the various MSVC libraries even if we aren't using the STL. Bug: http://b/22953515 Change-Id: I73c35710a6162408e99480a4840eedd291adf7ab --- core/cxx_stl_setup.mk | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/core/cxx_stl_setup.mk b/core/cxx_stl_setup.mk index 72e91e7f1..bf492d53d 100644 --- a/core/cxx_stl_setup.mk +++ b/core/cxx_stl_setup.mk @@ -47,10 +47,14 @@ else endif # Yes, this is actually what the clang driver does. -HOST_linux_dynamic_gcclibs := -lgcc_s -lgcc -lc -lgcc_s -lgcc -HOST_linux_static_gcclibs := -Wl,--start-group -lgcc -lgcc_eh -lc -Wl,--end-group -HOST_darwin_dynamic_gcclibs := -lc -lSystem -HOST_darwin_static_gcclibs := NO_STATIC_HOST_BINARIES_ON_DARWIN +linux_dynamic_gcclibs := -lgcc_s -lgcc -lc -lgcc_s -lgcc +linux_static_gcclibs := -Wl,--start-group -lgcc -lgcc_eh -lc -Wl,--end-group +darwin_dynamic_gcclibs := -lc -lSystem +darwin_static_gcclibs := NO_STATIC_HOST_BINARIES_ON_DARWIN +windows_dynamic_gcclibs := \ + -lmsvcr110 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -ladvapi32 \ + -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt +windows_static_gcclibs := NO_STATIC_HOST_BINARIES_ON_WINDOWS my_link_type := dynamic ifdef LOCAL_IS_HOST_MODULE @@ -86,7 +90,7 @@ ifneq ($(filter $(my_cxx_stl),libc++ libc++_static),) my_cppflags += -nostdinc++ my_ldflags += -nodefaultlibs my_ldlibs += -lpthread -lm - my_ldlibs += $($(my_prefix)$(HOST_OS)_$(my_link_type)_gcclibs) + my_ldlibs += $($($(my_prefix)OS)_$(my_link_type)_gcclibs) else ifeq (arm,$($(my_prefix)$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)) my_static_libraries += libunwind_llvm @@ -116,7 +120,7 @@ else ifeq ($(my_cxx_stl),none) ifdef LOCAL_IS_HOST_MODULE my_cppflags += -nostdinc++ my_ldflags += -nodefaultlibs - my_ldlibs += $($(my_prefix)$(HOST_OS)_$(my_link_type)_gcclibs) + my_ldlibs += $($($(my_prefix)OS)_$(my_link_type)_gcclibs) endif else $(error $(LOCAL_PATH): $(LOCAL_MODULE): $(my_cxx_stl) is not a supported STL.) -- 2.11.0