automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Patch to fix handling of source files names containing literal '$'


From: Alexandre Duret-Lutz
Subject: Re: Patch to fix handling of source files names containing literal '$'
Date: Fri, 09 Jan 2004 00:13:50 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

>>> "Anselm" == Anselm Kruis <address@hidden> writes:

 Anselm> Hi,

 Anselm> Problem: automake does'nt handle filenames containing
 Anselm> literal '$' very well. Example:

 Anselm> Consider compiling a file named 'filewith$dollar.c". Then Makefile.am
 Anselm> might contain thei line:

 Anselm> my_programm_SOURCES = \
 Anselm> filewith$$dollar.c \
 Anselm> other_source.c \
 Anselm> ...

 Anselm> config.status scans the Makefile and doesn't reduce the
 Anselm> double '$$' to a single '$ as make does.

 Anselm> The patch fixes this problem by adding an additional
 Anselm> sed expression to the code, that handles the DEP_FILES
 Anselm> definition from the Makefile.
[...]
 Anselm> ChangeLog:
 Anselm> * m4/depout.m4: reduce '$$' in file names to '$'.

Thanks for the patch and sorry for the long delay.

Unfortunately, such a change does not seem to be enough.  It will
let ./configure finish, however make will fail to compile 
filewith$dollar.c, because when the compiler is called as
   gcc -c -o filewith$dollar.obj filewith$dollar.c
$dollar will be interpreted by the shell.

For this to work, we should quote these filenames properly in
the rule.  Although it is not impossible, it's not easy to do in
the current (CVS) code because there are cases where automake
puts filenames in shell variables which are expected to be
interpreted...

Before spending time on this I'd really like to know why you
need `$' for.
-- 
Alexandre Duret-Lutz





reply via email to

[Prev in Thread] Current Thread [Next in Thread]