forked from openkylin/platform_build
Do not chmod the symlink target when a prebuilt binary is symlinked.
It may be in a source tree that isn't writable. Instead check that the target is executable. Test: m Test: chmod a-x system/sepolicy/tools/insertkeys.py && \ rm -rf out/host out/soong/host && \ m insertkeys.py Check that it fails with the expected error message. Fixes: 169375644 Change-Id: I402d029dba45783127586ad9749c90012afe891d
This commit is contained in:
parent
1fdef5f75a
commit
2cfce9380e
|
@ -149,11 +149,14 @@ endif
|
|||
$(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE)
|
||||
ifeq ($(LOCAL_IS_HOST_MODULE) $(if $(filter EXECUTABLES SHARED_LIBRARIES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),true,),true true)
|
||||
$(copy-or-link-prebuilt-to-target)
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
[ -x $@ ] || $(call echo-error,$@,Target of symlink is not executable)
|
||||
endif
|
||||
else
|
||||
$(transform-prebuilt-to-target)
|
||||
endif
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
$(hide) chmod +x $@
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
|
|
|
@ -59,11 +59,14 @@ endif
|
|||
$(LOCAL_BUILT_MODULE): $(LOCAL_PREBUILT_MODULE_FILE)
|
||||
ifeq ($(LOCAL_IS_HOST_MODULE) $(if $(filter EXECUTABLES SHARED_LIBRARIES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),true,),true true)
|
||||
$(copy-or-link-prebuilt-to-target)
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
[ -x $@ ] || $(call echo-error,$@,Target of symlink is not executable)
|
||||
endif
|
||||
else
|
||||
$(transform-prebuilt-to-target)
|
||||
endif
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
ifneq ($(filter EXECUTABLES NATIVE_TESTS,$(LOCAL_MODULE_CLASS)),)
|
||||
$(hide) chmod +x $@
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef LOCAL_IS_HOST_MODULE
|
||||
|
|
Loading…
Reference in New Issue