Commit 5fe4b2c3 authored by Arnout Vandecappelle (Essensium/Mind)'s avatar Arnout Vandecappelle (Essensium/Mind) Committed by Peter Korsgaard
Browse files

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: default avatarArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent a23c0e59
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -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

+3 −2
Original line number Diff line number Diff line
@@ -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: