Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b4c2a640 authored by Ying Wang's avatar Ying Wang
Browse files

Set install name with absolute path for Mac host shared libraries.

Before this change, path of the install name is relative to the top dir.
That means you can execute dynamically-linked binaries only in the top dir.
With this change, you can execute dynamically-linked binaries anywhere.

Change-Id: I1c6441579ffb68505ea678296aceb2e66a6df1be
parent 324b3a8b
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -82,6 +82,12 @@ $(foreach lib,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES), \
    $(call _darwin-extract-and-include-single-whole-static-lib, $(lib)))
endef

ifeq (,$(filter /%,$(HOST_OUT_SHARED_LIBRARIES)))
ABP_HOST_OUT_SHARED_LIBRARIES := $(shell pwd)/$(HOST_OUT_SHARED_LIBRARIES)
else
ABP_HOST_OUT_SHARED_LIBRARIES := $(HOST_OUT_SHARED_LIBRARIES)
endif

define transform-host-o-to-shared-lib-inner
$(call darwin-extract-and-include-whole-static-libs)
$(hide) $(PRIVATE_CXX) \
@@ -96,6 +102,7 @@ $(hide) $(PRIVATE_CXX) \
        $(if $(PRIVATE_GROUP_STATIC_LIBRARIES),-Wl$(comma)--end-group) \
        $(PRIVATE_LDLIBS) \
        -o $@ \
        -install_name $(ABP_HOST_OUT_SHARED_LIBRARIES)/$(notdir $@) \
        $(PRIVATE_LDFLAGS) \
        $(HOST_LIBGCC)
endef