Skip to content
Snippets Groups Projects
Commit 87f5fcf6 authored by Victor Chong's avatar Victor Chong
Browse files

common: Remove *_CLEAN_COMMON_FLAGS dependency on *_COMMON_FLAGS

Fixes https://github.com/OP-TEE/build/issues/28

.

In common.mk *_CLEAN_COMMON_FLAGS ?= *_COMMON_FLAGS but in the
platform makefiles (e.g. hikey.mk) they're defined as
such:
*_COMMON_FLAGS += x y z
*_CLEAN_COMMON_FLAGS += x

When expanded during a build, *_CLEAN_COMMON_FLAGS becomes
"x y z x". Variables can be repeated, which may be nothing more
than a cosmetic issue, but if any of those variables are make
targets, then 'make clean' will build them before cleaning.

To fix this, we remove the dependency of *_CLEAN_COMMON_FLAGS on
*_COMMON_FLAGS.

Signed-off-by: default avatarVictor Chong <victor.chong@linaro.org>
Tested-by: Victor Chong <victor.chong@linaro.org> (hikey)
parent b6962258
No related branches found
No related tags found
No related merge requests found
......@@ -61,7 +61,7 @@ busybox-clean-common:
busybox-cleaner-common:
rm -rf $(GEN_ROOTFS_PATH)/build
rm -rf $(GEN_ROOTFS_PATH)/filelist-final.txt
################################################################################
# Linux
################################################################################
......@@ -76,17 +76,19 @@ $(LINUX_PATH)/.config: $(LINUX_DEFCONFIG_COMMON_FILES)
scripts/kconfig/merge_config.sh $(LINUX_DEFCONFIG_COMMON_FILES)
linux-defconfig-clean-common:
@rm -f $(LINUX_PATH)/.config
rm -f $(LINUX_PATH)/.config
# LINUX_CLEAN_COMMON_FLAGS can be defined in specific makefiles (hikey.mk,...)
# if necessary
LINUX_CLEAN_COMMON_FLAGS ?= $(LINUX_COMMON_FLAGS)
linux-clean-common: linux-defconfig-clean
$(MAKE) -C $(LINUX_PATH) $(LINUX_CLEAN_COMMON_FLAGS) clean
LINUX_CLEANER_COMMON_FLAGS ?= $(LINUX_COMMON_FLAGS)
# LINUX_CLEANER_COMMON_FLAGS can be defined in specific makefiles (hikey.mk,...)
# if necessary
linux-cleaner-common: linux-defconfig-clean
$(MAKE) -C $(LINUX_PATH) $(LINUX_CLEAN_COMMON_FLAGS) distclean
$(MAKE) -C $(LINUX_PATH) $(LINUX_CLEANER_COMMON_FLAGS) distclean
################################################################################
# EDK2 / Tianocore
......@@ -118,7 +120,8 @@ OPTEE_OS_COMMON_FLAGS ?= CROSS_COMPILE=$(CROSS_COMPILE_S_USER) \
optee-os-common:
$(MAKE) -C $(OPTEE_OS_PATH) $(OPTEE_OS_COMMON_FLAGS)
OPTEE_OS_CLEAN_COMMON_FLAGS ?= $(OPTEE_OS_COMMON_FLAGS)
# OPTEE_OS_CLEAN_COMMON_FLAGS can be defined in specific makefiles
# (hikey.mk,...) if necessary
optee-os-clean-common: xtest-clean
$(MAKE) -C $(OPTEE_OS_PATH) $(OPTEE_OS_CLEAN_COMMON_FLAGS) clean
......@@ -128,7 +131,8 @@ OPTEE_CLIENT_COMMON_FLAGS ?= CROSS_COMPILE=$(CROSS_COMPILE_NS_USER)
optee-client-common:
$(MAKE) -C $(OPTEE_CLIENT_PATH) $(OPTEE_CLIENT_COMMON_FLAGS)
OPTEE_CLIENT_CLEAN_COMMON_FLAGS ?= $(OPTEE_CLIENT_COMMON_FLAGS)
# OPTEE_CLIENT_CLEAN_COMMON_FLAGS can be defined in specific makefiles
# (hikey.mk,...) if necessary
optee-client-clean-common:
$(MAKE) -C $(OPTEE_CLIENT_PATH) $(OPTEE_CLIENT_CLEAN_COMMON_FLAGS) \
......@@ -140,7 +144,8 @@ OPTEE_LINUXDRIVER_COMMON_FLAGS ?= CROSS_COMPILE=$(CROSS_COMPILE_NS_KERNEL) \
optee-linuxdriver-common: linux
$(MAKE) -C $(LINUX_PATH) $(OPTEE_LINUXDRIVER_COMMON_FLAGS) modules
OPTEE_LINUXDRIVER_CLEAN_COMMON_FLAGS ?= $(OPTEE_LINUXDRIVER_COMMON_FLAGS)
# OPTEE_LINUXDRIVER_CLEAN_COMMON_FLAGS can be defined in specific makefiles
# (hikey.mk,...) if necessary
optee-linuxdriver-clean-common:
$(MAKE) -C $(LINUX_PATH) $(OPTEE_LINUXDRIVER_CLEAN_COMMON_FLAGS) clean
......@@ -157,7 +162,7 @@ XTEST_COMMON_FLAGS ?= CROSS_COMPILE_HOST=$(CROSS_COMPILE_NS_USER)\
xtest-common: optee-os optee-client
$(MAKE) -C $(OPTEE_TEST_PATH) $(XTEST_COMMON_FLAGS)
XTEST_CLEAN_COMMON_FLAGS ?= $(XTEST_COMMON_FLAGS)
XTEST_CLEAN_COMMON_FLAGS ?= TA_DEV_KIT_DIR=$(OPTEE_OS_TA_DEV_KIT_DIR)
xtest-clean-common:
$(MAKE) -C $(OPTEE_TEST_PATH) $(XTEST_CLEAN_COMMON_FLAGS) clean
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment