[Vm-dev] Make question

Bert Freudenberg bert at freudenbergs.de
Tue Sep 5 17:50:44 UTC 2006


this works for me:


foo: dest/foo/test

dest/%/test:
         @echo Trying to create $@
         @echo Wildcard is $(wildcard source/*/test)
ifeq ("source/foo/test", "$(wildcard source/*/test)")
         @echo Everything is fime
else
         @echo WHERE IS THE FILE???
endif


Andreas Raab schrieb:
> 
> Oh, I should have added that changing
> 
>     ifeq (source/$*/test, $(wildcard source/$*/test))
> 
> to
> 
>     ifeq (source/foo/test, $(wildcard source/foo/test))
> 
> works fine, but neither do
> 
>     ifeq (source/$*/test, $(wildcard source/foo/test))
>     ifeq (source/foo/test, $(wildcard source/$*/test))
> 
> Something special about $* in ifeq?
> 
> Cheers,
>   - Andreas
> 
> Andreas Raab wrote:
>>
>> I have simplified this a little and would appreciate if you could 
>> double-check to see if that's an issue with make or if I'm doing 
>> something stupid. Try this:
>> - Create directories source/foo/
>> - Create directories dest/foo/
>> - Add a file source/foo/test
>> - Create a Makefile containing:
>>
>> foo: dest/foo/test
>>
>> dest/%/test:
>>     @echo Trying to create $@
>>     @echo Wildcard is $(wildcard source/$*/test)
>> ifeq (source/$*/test, $(wildcard source/$*/test))
>>     @echo Everything is fime
>> else
>>     @echo WHERE IS THE FILE???
>> endif
>>
>>
>> - Run it via make foo to see the effect.
>>
>> In my understanding the ifeq *should* fire appropriately but it 
>> doesn't. Any ideas why?
>>
>> Cheers,
>>   - Andreas
>>
>>


-- 
- Bert -


More information about the Vm-dev mailing list