|
@@ -135,6 +135,23 @@ define check_bin_arch
|
|
|
-a $(BR2_READELF_ARCH_NAME)
|
|
|
endef
|
|
|
|
|
|
+# Functions to remove conflicting and useless files
|
|
|
+
|
|
|
+# $1: base directory (target, staging, host)
|
|
|
+define remove-conflicting-useless-files
|
|
|
+ $(if $(strip $($(PKG)_DROP_FILES_OR_DIRS)),
|
|
|
+ $(Q)$(RM) -rf $(patsubst %, $(1)%, $($(PKG)_DROP_FILES_OR_DIRS)))
|
|
|
+endef
|
|
|
+define REMOVE_CONFLICTING_USELESS_FILES_IN_HOST
|
|
|
+ $(call remove-conflicting-useless-files,$(HOST_DIR))
|
|
|
+endef
|
|
|
+define REMOVE_CONFLICTING_USELESS_FILES_IN_STAGING
|
|
|
+ $(call remove-conflicting-useless-files,$(STAGING_DIR))
|
|
|
+endef
|
|
|
+define REMOVE_CONFLICTING_USELESS_FILES_IN_TARGET
|
|
|
+ $(call remove-conflicting-useless-files,$(TARGET_DIR))
|
|
|
+endef
|
|
|
+
|
|
|
################################################################################
|
|
|
# Implicit targets -- produce a stamp file for each step of a package build
|
|
|
################################################################################
|
|
@@ -823,6 +840,16 @@ $$(error "Package $(1) defines host variant before target variant!")
|
|
|
endif
|
|
|
endif
|
|
|
|
|
|
+# Globaly remove following conflicting and useless files
|
|
|
+$(2)_DROP_FILES_OR_DIRS += /share/info/dir
|
|
|
+
|
|
|
+ifeq ($$($(2)_TYPE),host)
|
|
|
+$(2)_POST_INSTALL_HOOKS += REMOVE_CONFLICTING_USELESS_FILES_IN_HOST
|
|
|
+else
|
|
|
+$(2)_POST_INSTALL_STAGING_HOOKS += REMOVE_CONFLICTING_USELESS_FILES_IN_STAGING
|
|
|
+$(2)_POST_INSTALL_TARGET_HOOKS += REMOVE_CONFLICTING_USELESS_FILES_IN_TARGET
|
|
|
+endif
|
|
|
+
|
|
|
# human-friendly targets and target sequencing
|
|
|
$(1): $(1)-install
|
|
|
$(1)-install: $$($(2)_TARGET_INSTALL)
|