Sorry, forgot to send this to bug-make as well. ---------- Forwarded message ---------- From: Tim Murphy <[EMAIL PROTECTED]> Date: 2008/6/6 Subject: Re: Help : how to use $(or condition ) & $(and condition ) in makefile To: [EMAIL PROTECTED]
Hi, # do "equal" by seeing if a subst returns the empty string: A_is_2:=$(if $(subst 2,,$(A)),,T) B_is_4:=$(if $(subst 4,,$(B)),,T) AandB:=$(and $(A_is_2),$(B_is_4)) # then you could do something based on this: ifneq ($(AandB),) # do something . . . . endif One could make it look nicer by making an equals macro: define eq $(if $(1:$(2)=),,$(if $(2:$(1)=),,T)) endef which you could use as follows: ifneq ($(and $(call eq,$(A),2),$(call eq,$(B),4)),) # do what you want to do when A=2 and B=4 # . . . .. . . endif Cheers, Tim 2008/6/6 rakesh aggarwal <[EMAIL PROTECTED]>: > Hi sam, > > Very very thanks for your valuable suggestion. > > I have one debut that I am explaining through this example. > > I have 2 variable (let assume A and B) which contain some value. > > I want to test A==2 and B==4 using $(and condition) function. > > How can I put this condition in function?? > > I want only different output for the situation when any of the condition is > wrong (either A != 2 or B != 4) and both are right (A ==2 and B==4 ). > > result := $(and condition ) > > $(warning result=$(result)) > > Regards > Rakesh > > > > --- On *Thu, 6/5/08, Sam Ravnborg <[EMAIL PROTECTED]>* wrote: > > From: Sam Ravnborg <[EMAIL PROTECTED]> > Subject: Re: Help : how to use $(or condition ) & $(and condition ) in > makefiles > To: "rakesh aggarwal" <[EMAIL PROTECTED]> > Cc: bug-make@gnu.org > Date: Thursday, June 5, 2008, 11:28 PM > > On Thu, Jun 05, 2008 at 05:36:56AM -0700, rakesh aggarwal wrote: > > Hi, > > > > > I read the GNU make manual and found there are $(or condition ) and $(and > condition ) functions. ( at > http://www.gnu.org/software/make/manual/make.html#Conditional-Functions ) > > > But i didnt get in which format i have to put conditions in these > functions. > > Notice that this is condition and not > expressions. > > Sample: > > havefile := $(if $(wildcard myfile.c), YES, NO) > > $(warning HAVEFILE=$(HAVEFILE)) > > > This will print > HAVEFILE=NO > > if no myfile.c exist (because the $(wildcard myfile.c) expands to an empty > > string > > Sam > > > > _______________________________________________ > Bug-make mailing list > Bug-make@gnu.org > http://lists.gnu.org/mailman/listinfo/bug-make > > -- You could help some brave and decent people to have access to uncensored news by making a donation at: http://www.thezimbabwean.co.uk/ -- You could help some brave and decent people to have access to uncensored news by making a donation at: http://www.thezimbabwean.co.uk/
_______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make