Re: [PATCH] Makefile: add and use the ".DELETE_ON_ERROR" flag
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-06-29 08:20:08
On Wed, Jun 23 2021, Felipe Contreras wrote:
Ævar Arnfjörð Bjarmason wrote:quoted
On Wed, Jun 23 2021, Felipe Contreras wrote:quoted
Ævar Arnfjörð Bjarmason wrote:quoted
@@ -2243,7 +2253,6 @@ SCRIPT_DEFINES = $(SHELL_PATH_SQ):$(DIFF_SQ):$(GIT_VERSION):\ $(gitwebdir_SQ):$(PERL_PATH_SQ):$(SANE_TEXT_GREP):$(PAGER_ENV):\ $(perllibdir_SQ) define cmd_munge_script -$(RM) $@ $@+ && \ sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ -e 's|@SHELL_PATH@|$(SHELL_PATH_SQ)|' \ -e 's|@@DIFF@@|$(DIFF_SQ)|' \Any reason why the same isn't done for the $(BUILT_INS) target?quoted
@@ -2514,7 +2522,6 @@ endif ifeq ($(GENERATE_COMPILATION_DATABASE),yes) all:: compile_commands.json compile_commands.json: - @$(RM) $@ $(QUIET_GEN)sed -e '1s/^/[/' -e '$$s/,$$/]/' $(compdb_dir)/*.o.json > $@+ @if test -s $@+; then mv $@+ $@; else $(RM) $@+; fi endifWhat about these? $(REMOTE_CURL_ALIASES):Uses a chain of ln/ln -s/cp, would need to add "-f" flags.Why? Isn't "x && a || b || c" the same as "a || b || c" if x is always true?
It does:
rm x &&
ln y x || ln -s y x || cp y x
If you run that you'll get a hardlink the first time around, but the
second time around you'll fall back to the "cp" if you remove the "rm".
quoted
quoted
$(LIB_FILE):Can we rely on $(AR) happily clobbering things everywhere? Not knowing is why I skipped it.We have c (create) in ARFLAGS, so presumably yes.
Will change.
quoted
quoted
$(ETAGS_TARGET): tags: cscope:Addressed in the related: https://lore.kernel.org/git/YNH+zsXDnRsT3uvZ@nand.local/T/#t (local)I think ideally this patch should remove the $(RM) and the other patch should focus on the rest of the changes, but given the difficulty of landing chained patch series in git I understand the decision to clump them together. Cheers.