Merge "Add -static to static link command, for clang."

This commit is contained in:
Chih-Hung Hsieh
2015-01-24 01:03:02 +00:00
committed by Gerrit Code Review

View File

@@ -1425,11 +1425,16 @@ endef
## Commands for linking a static executable. In practice, ## Commands for linking a static executable. In practice,
## we only use this on arm, so the other platforms don't ## we only use this on arm, so the other platforms don't
## have transform-o-to-static-executable defined. ## have transform-o-to-static-executable defined.
## Clang driver needs -static to create static executable.
## However, bionic/linker uses -shared to overwrite.
## Linker for x86 targets does not allow coexistance of -static and -shared,
## so we add -static only if -shared is not used.
########################################################### ###########################################################
define transform-o-to-static-executable-inner define transform-o-to-static-executable-inner
$(hide) $(PRIVATE_CXX) \ $(hide) $(PRIVATE_CXX) \
-nostdlib -Bstatic \ -nostdlib -Bstatic \
$(if $(filter $(PRIVATE_LDFLAGS),-shared),,-static) \
-Wl,--gc-sections \ -Wl,--gc-sections \
-o $@ \ -o $@ \
$(PRIVATE_TARGET_GLOBAL_LD_DIRS) \ $(PRIVATE_TARGET_GLOBAL_LD_DIRS) \