pkg-infra: improve reliability of foo-install
Running foo-uninstall has a high likelyhood of failing, because we remove a lot of directories from the target. To improve the reliability, remove the stamp files before calling the uninstall commands, and add the -k option to the sub-make. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
a23c0e5968
commit
5fe4b2c399
@ -285,10 +285,13 @@ endif
|
||||
#
|
||||
# Uninstall from target step. Only define it if not already defined
|
||||
# by the package .mk file.
|
||||
# Autotools Makefiles do uninstall with ( cd ...; rm -f ... )
|
||||
# Since we remove a lot of directories in target-finalize, this is likely
|
||||
# to fail. Therefore add -k flag.
|
||||
#
|
||||
ifndef $(2)_UNINSTALL_TARGET_CMDS
|
||||
define $(2)_UNINSTALL_TARGET_CMDS
|
||||
$$(TARGET_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_UNINSTALL_TARGET_OPT) -C $$($$(PKG)_SRCDIR)
|
||||
$$(TARGET_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) -k $$($$(PKG)_UNINSTALL_TARGET_OPT) -C $$($$(PKG)_SRCDIR)
|
||||
endef
|
||||
endif
|
||||
|
||||
|
@ -442,12 +442,13 @@ $(BUILD_DIR)/%/.stamp_cleaned:
|
||||
rm -f $(@D)/.stamp_built
|
||||
|
||||
# Uninstall package from target and staging
|
||||
# Uninstall commands tend to fail, so remove the stamp files first
|
||||
$(BUILD_DIR)/%/.stamp_uninstalled:
|
||||
@$(call MESSAGE,"Uninstalling")
|
||||
$($(PKG)_UNINSTALL_STAGING_CMDS)
|
||||
rm -f $($(PKG)_TARGET_INSTALL_STAGING)
|
||||
$($(PKG)_UNINSTALL_TARGET_CMDS)
|
||||
rm -f $($(PKG)_TARGET_INSTALL_TARGET)
|
||||
$($(PKG)_UNINSTALL_STAGING_CMDS)
|
||||
$($(PKG)_UNINSTALL_TARGET_CMDS)
|
||||
|
||||
# Remove package sources
|
||||
$(BUILD_DIR)/%/.stamp_dircleaned:
|
||||
|
Loading…
Reference in New Issue
Block a user