[GRASS-dev] compiling errors - grass65svn compiled in the
osgeo4w-stack
Glynn Clements
glynn at gclements.plus.com
Fri Jun 3 06:22:02 EDT 2011
Martin Landa wrote:
> > is an order-only dependency, which requires GNU make 3.81. In 6.x,
> > this syntax is normally conditional upon "ifneq ($(BROKEN_MAKE),)". It
> > appears that someone back-ported from 7.0 (where GNU make 3.81 is a
> > requirement) without changing this.
>
> lib/python/Makefile has been changed my me 10months ago [1]. I just
> wonder why it didn't fail on Helmut's machine earlier.
>
> Glynn: is it right just to remove "|" or it needs some special care?
The rule:
$(SCRIPTDIR)/%.py: %.py | $(SCRIPTDIR)
$(INSTALL) $< $@
should be changed to:
$(SCRIPTDIR)/%.py: %.py
$(MAKE) $(SCRIPTDIR)
$(INSTALL) $< $@
Simply removing the "|" will cause the directory to be treated as a
normal dependency, so the script will be re-installed whenever the
directory's timestamp is newer than the source file (i.e. always, as
executing the commands will update the directory's timestamp).
Order-only dependencies (those after the "|") don't affect whether the
target is considered out-of-date, but if it is out-of-date for other
reasons, any order-only dependencies will be re-made before executing
the commands.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list