[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
too-aggressive clean rule
From: |
Ben Pfaff |
Subject: |
too-aggressive clean rule |
Date: |
Thu, 08 Oct 2009 20:10:57 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
Commit 99bafccc08919a5d640cb35962c4d730a2cad3a1 "Fix make
distcheck" introduces the following:
# This seems to be necessary as the libtool artifacts aren't removed
# Automake bug ?
tests_data_datasheet_test_CLEAN:
$(RM) -r tests/data
There are a couple of problems with this. First, $(RM) isn't
defined on every system, and so sometimes it expands to the null
string. I'm not sure where it's defined, in fact, but Automake
itself just uses "rm" all over, so I'm sure that it's OK to use
plain "rm". Second, if you run configure" in the source
directory then this deletes datasheet-test.c and
datasheet-test.sh, which is obviously a bad idea. Finally, I
think that -f is warranted in case the files in question haven't
been built.
I see a few other uses of $(RM) elsewhere, too:
perl-module/automake.mk: $(RM) $@
perl-module/automake.mk: $(RM) $(module_sources) ; \
perl-module/automake.mk: $(RM) perl-module/Makefile.old
po/automake.mk: $(RM)
$(DESTDIR)$(prefix)/share/locale/$$lang/LC_MESSAGES/$(DOMAIN).mo ; \
src/ui/gui/automake.mk: $(RM)
$(themedir)/$$size/$(context)/psppicon.png ; \
tests/automake.mk: $(RM) -r tests/data
Jason: This probably explains the problem you were seeing.
--
"...I've forgotten where I was going with this,
but you can bet it was scathing."
--DesiredUsername
- too-aggressive clean rule,
Ben Pfaff <=