[PATCH] VPATH build of viewres, xedit, xfd, xgc, and xgc fails

Peter Breitenlohner peb at mppmu.mpg.de
Mon Nov 10 00:23:59 PST 2008

On Sun, 9 Nov 2008, Peter Breitenlohner wrote:

> There is actually a much better way to avoid race conditions: whenever there
> are several app-default files, make them depend on a phony target that
> ensures the existence of ./app-defaults.  ....

The phony target I proposed yesterday was a bad idea. It certainly avoids
races but causes the files to be copied again and again. Also as part of
'make install' and that is really bad (root might have no write permissions
in the build tree (e.g., nfs filesystem with root_squashing).

the manual for Automake 1.10 says:

      If you are using Automake, there is normally no reason to call this
      macro, because `AM_INIT_AUTOMAKE' already does so.  However, make
      sure that the custom rules in your `Makefile's use `$(MKDIR_P)'
      and not `$(mkdir_p)'.  Even if both variables still work, the
      latter should be considered obsolete.

I suppose by now all developpers have at least automake-1.10 (released
2006-10-15), thus using $(MKDIR_P) should be safe.

There is, however, a radically different idea. Originally the app default
file, e.g., Xmessage was distributed as Xmessage.ad for the sake of case
insensitive filesystems in order not to cause conflict with the executable
xmessage.  Now the application defaults are distributed in the subdirectory
app-defaults and there is no reason not to distribute them under their final
name.  That would certainly simplify the Makefile.ams.  The problem to
create that subdirectory in the build tree would be restricted to cases such
as xedit where either Xedit-print or Xedit-noprint is installed as Xedit.

Peter Breitenlohner <peb at mppmu.mpg.de>

More information about the xorg mailing list