stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: missing build line for 22.locale.codecvt.out
Date Mon, 12 Mar 2007 19:35:14 GMT
Martin Sebor wrote:
> Andrew Black wrote:
>> Greetings Martin.
>>
>> I would hazard a guess that it has to do with the name of the test and 
>> our pattern rules.  In particular, the rules reading '%.out: %' and 
>> '%: %.cpp'.  I suspect that gmake is thinking that the target 
>> 22.locale.codecvt.out is dependent on 22.locale.codecvt, rather than 
>> 22.locale.codecvt.out.cpp.
> 
> Interesting idea. I hadn't thought of the .out pattern rules.
> 
> I just tried commenting out the rule and the behavior is the
> same. I think something else is going on. From the output of
> make 22.locale.codecvt.out printvars it looks like
> 22.locale.codecvt.out.cpp is in ALL_FILES and SRCS, and
> 22.locale.codecvt.out.o is in OBJS, but there is no
> 22.locale.codecvt.out.d in DEPS and no 22.locale.codecvt.out
> in TARGET. Very mysterious...

I wonder if the periods in the names of our tests have something
to do with it. We're using the GNU make $basename function which
strips everything including and after the first period from file
names.

[...experimenting...]

It looks like the implicit rules are somehow causing it. Passing
-r to make to disable them make it work:

$ rm -f 22.locale.codecvt.out.o 22.locale.codecvt.out; \
      make 22.locale.codecvt.out && ls -l 22.locale.codecvt.out \
   || rm -f 22.locale.codecvt.out.o 22.locale.codecvt.out; \
   make -r 22.locale.codecvt.out && ls -l 22.locale.codecvt.out
make: Nothing to be done for `22.locale.codecvt.out'.
22.locale.codecvt.out: No such file or directory
gcc -c -I/build/sebor/stdcxx/include/ansi -D_RWSTDDEBUG 
-D_RWSTD_USE_CONFIG -I/build/sebor/stdcxx/include 
-I/build/sebor/stdcxx-gcc-4.1.0-11s/include 
-I/build/sebor/stdcxx/../rwtest -I/build/sebor/stdcxx/../rwtest/include 
-I/build/sebor/stdcxx/tests/include  -pedantic -nostdinc++ -g  -W -Wall 
-Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long 
/build/sebor/stdcxx/tests/localization/22.locale.codecvt.out.cpp
gcc 22.locale.codecvt.out.o -o 22.locale.codecvt.out 
-L/build/sebor/stdcxx-gcc-4.1.0-11s/rwtest -lrwtest11s 
-L/build/sebor/stdcxx-gcc-4.1.0-11s/lib -lstd11s  -lsupc++ -lm
rm 22.locale.codecvt.out.o
-rwxr-xr-x   1 sebor    devel    3032001 Mar 12 12:31 22.locale.codecvt.out

Martin

Mime
View raw message