Hi Stepan, Noah, Thanks to both of you for the analyses!
* Stepan Kasal wrote on Wed, Apr 12, 2006 at 02:17:53PM CEST: > > Problem A: > a script.sh.in starts with > > prefix = @prefix@ > doc = @docdir@ But maybe that would have to be prefix="@prefix@" doc="@docdir@" or similarly. This is the largest problem with fixing A: you don't know the language used in this file. It could reasonably be Shell, Perl, or C, or one of hundred other things, impossible to find out reasonably, much less so in a very hot code path of config.status. > this has to be fixed by adding `datarootdir = @datarootdir@' manually. > I made this change for several tools used in Gnome, but I'm sure there > are many tools which are not ready for this change, and will find out > only when their root file system will suddenly contain /doc, /man, /info, > and /locale. Yes, as manual change this is definitely the right thing to do. I don't see any viable way how you can add the value for `datarootdir' in a systematic way. IOW, I don't know of an approach that is more conservative than Bruno's idea (rewriting the substitutions for the values which contain `${datarootdir}', and AFAICS, it would fix both Automake-generated Makefile.ins, and work with other CONFIG_FILES. I'd be happy to be proven wrong, Surely, if the developer has AC_SUBST([my_other_datadir], ['${datarootdir}/whatever']) we still screw up, but then the we can reasonably expect a AC_PREREQ([2.60]) as well, which makes us safe again. Cheers, Ralf