This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: Use program_transform_name correctly



On Tue, 7 Oct 2003, Daniel Jacobowitz wrote:

> On Tue, Oct 07, 2003 at 04:41:35PM -0500, Jim Blandy wrote:
> >
> > It seems as if some Makefiles aren't properly using
> > program_transform_name.
> >
> > The same kind of weirdness corrected(?) in the patch below appears in
> > gdb/Makefile.in, so I'm not at all sure I'm not misunderstanding
> > what's going on.  If folks agree that the change below would be
> > correct, then I'll put together a larger patch that fixes the ones I
> > can find elsewhere, too.
> >
> > (Not sure why this hasn't come up before; Daniel J.'s recent posts on
> > the topic seem to be about setting program_transform_name, not on how
> > to use it.)
>
> That is _bizarre_.  Does it even give you anything but a sed error now?
>
> > 2003-10-07  Jim Blandy  <jimb@redhat.com>
> >
> > 	* Makefile.in (RUNTEST_FOR_TARGET): Pass the transformation to set
> > 	properly.
> >
> > Index: gdb/testsuite//Makefile.in
> > ===================================================================
> > RCS file: /cvs/cvsfiles/devo/gdb/testsuite/Makefile.in,v
> > retrieving revision 1.66
> > diff -c -r1.66 Makefile.in
> > *** gdb/testsuite//Makefile.in	9 Sep 2003 21:03:53 -0000	1.66
> > --- gdb/testsuite//Makefile.in	7 Oct 2003 21:33:22 -0000
> > ***************
> > *** 53,59 ****
> >       if [ "$(host_canonical)" = "$(target_canonical)" ]; then \
> >         echo runtest; \
> >       else \
> > !       t='$(program_transform_name)'; echo runtest | sed -e '' $$t; \
> >       fi; \
> >     fi`
> >
> > --- 53,59 ----
> >       if [ "$(host_canonical)" = "$(target_canonical)" ]; then \
> >         echo runtest; \
> >       else \
> > !       t='$(program_transform_name)'; echo runtest | sed -e '$$t'; \
> >       fi; \
> >     fi`
>
> That's certainly what it's supposed to look like.
>

You sure that the expression is right? I think the single quotes will
hide the expansion of $t in the shell. I ran a simple test on my
system with this make file fragment:

roth@knuth:/tmp$ cat Makefile
program_transform_name = s/^/avr-/

all:
        t='$(program_transform_name)'; echo runtest | sed -e '$$t'
        t='$(program_transform_name)'; echo runtest | sed -e "$$t"
roth@knuth:/tmp$ make
t='s/^/avr-/'; echo runtest | sed -e '$t'
runtest
t='s/^/avr-/'; echo runtest | sed -e "$t"
avr-runtest


Ted Roth


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]