<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.26.0">
</HEAD>
<BODY>
<BR>
Thanks to Daniel Stone for providing the idea of using a .pc file. This provides a robust implementation to copy the INSTALL file from a single location to all xorg modules.&nbsp; It can be updated every release if need be with a single check-in.<BR>
<BR>
The time honoured behaviours of ChangeLog are replicated.&nbsp; When the file cannot be copied, the existing one, if any, is not overwritten. If none existed, an empty file is created so the tarball is created anyway. Similar to ChangeLog, if the file is deleted from a tarball and util-macros is not available, then it cannot be created. In that case, one would have to obtain it from the original tarball or from git.<BR>
<BR>
Note that xorg-macros.pc is installed in $prefix/share/pkgconfig because it is architecture independent. I recalled a discussion about libxtrans that could not cross compile.<BR>
<BR>
I will release an additional patch for each module&nbsp; to add both ChangeLog and INSTALL on the MAINTAINERCLEANFILES list.<BR>
<BR>
There has been questions as to what a module should do when additional information is required, now that the INSTALL is standard. Here is an excerpt fromthe INSTALL file:<BR>
<BR>
<TT>Basic Installation</TT><BR>
<TT>==================</TT><BR>
<BR>
<TT>&nbsp;&nbsp; Briefly, the shell commands `./configure; make; make install' should</TT><BR>
<TT>configure, build, and install this package.&nbsp; The following</TT><BR>
<TT>more-detailed instructions are generic; see the `README' file for</TT><BR>
<TT>instructions specific to this package.</TT><BR>
<BR>
<BR>
Thank you very much for all those who helped with this issue.<BR>
<BR>
The content of the XORG_INSTALL macro:<BR>
<BR>
<TT>AC_REQUIRE([PKG_PROG_PKG_CONFIG])</TT><BR>
<TT>macros_docdir=$($PKG_CONFIG --print-errors --variable=docdir xorg-macros)</TT><BR>
<TT>INSTALL_CMD=&quot;(cp -f &quot;$macros_docdir/INSTALL&quot; \$(top_srcdir)/.INSTALL.tmp &amp;&amp; \</TT><BR>
<TT>mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \</TT><BR>
<TT>|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \</TT><BR>
<TT>echo 'util-macros \&quot;docdir\&quot; from xorg-macros.pc not found: installing possibly empty INSTALL.' &gt;&amp;2)&quot;</TT><BR>
<BR>
The new xorg-macros.pc.in:<BR>
<BR>
<TT>prefix=@prefix@</TT><BR>
<TT>exec_prefix=@exec_prefix@</TT><BR>
<TT>libdir=@libdir@</TT><BR>
<TT>includedir=@includedir@</TT><BR>
<TT>datarootdir=@datarootdir@</TT><BR>
<TT>datadir=@datadir@</TT><BR>
<TT>PACKAGE_TARNAME=@PACKAGE_TARNAME@</TT><BR>
<TT># Used by XORG_INSTALL</TT><BR>
<TT>docdir=@docdir@</TT><BR>
<BR>
<TT>Name: X.Org Macros</TT><BR>
<TT>Description: A set of autoconf project macros for X.Org modules</TT><BR>
<TT>Version: @PACKAGE_VERSION@</TT><BR>
<BR>
To compare with XORG_CHANGELOG macro:<BR>
<BR>
<TT>CHANGELOG_CMD=&quot;(GIT_DIR=\$(top_srcdir)/.git git log &gt; \$(top_srcdir)/.changelog.tmp &amp;&amp; \</TT><BR>
<TT>mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \</TT><BR>
<TT>|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \</TT><BR>
<TT>echo 'git directory not found: installing possibly empty changelog.' &gt;&amp;2)&quot;</TT><BR>
<BR>
<BR>
<BR>
<BR>
</BODY>
</HTML>