[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Breaking out of a foreach loop
From: |
Bhatt, Milan C |
Subject: |
RE: Breaking out of a foreach loop |
Date: |
Fri, 27 Feb 2004 17:44:23 -0800 |
I want to be able to loop through a set of optional prerequisites and
search for these files through a list of directories.
This would seem like the perfect usage model for VPATH, but since the
files are optional, I can't statically set them as prereqs in the
Makefile.
I was thinking something like this:
$(foreach file,$(FILES),
$(foreach dir,$(DIRS),
$(if $(wildcard $(dir)/$(file)), $(dir)/$(file);
<break_to_next_file>)))
I'd like to have the break function so that in case the optional file is
located in more than one directory, it would only return the first one.
I suppose I could use the $(firstword) functionality or something like
it to filter out the duplicate files, but I'm trying to find a clean
one-pass approach first.
Hope this makes sense...
Thanks!
Milan
-----Original Message-----
From: Noel Yap [mailto:address@hidden
Sent: Friday, February 27, 2004 3:07 PM
To: Bhatt, Milan C
Cc: address@hidden
Subject: Re: Breaking out of a foreach loop
Think "functional programming language" rather than "procedural
programming language".
What exactly do you want to do? Maybe there's another way to do it.
Noel
> "Bhatt, Milan C" wrote:
>
> Hi Guys,
>
> I just had a quick question on whether there was any way to break out
of a foreach loop when a certain condition has been reached.
>
> I'd like to do the following:
>
> $(foreach dir, $(DIRS), \
> $(if <condition>, <statement>; \
> <break_out_of_loop>) )
>
> I wasn't able to find anything in the documentation that provided this
kind of functionality.
>
> Thanks,
> Milan
>
>
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
-------------
> _______________________________________________
> Help-make mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/help-make
--
NOTICE: If received in error, please destroy and notify sender. Sender
does not waive confidentiality or privilege, and use is prohibited.