Date: Wed, 8 Apr 2009 08:45:04 +0200 From: Mel Flynn <mel.flynn+fbsd.questions@mailing.thruhere.net> To: freebsd-questions@freebsd.org Cc: Boris Samorodov <bsam@ipt.ru> Subject: Re: make, list and M pattern Message-ID: <200904080845.04576.mel.flynn%2Bfbsd.questions@mailing.thruhere.net> In-Reply-To: <37646522@h30.sp.ipt.ru> References: <37646522@h30.sp.ipt.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 07 April 2009 21:54:13 Boris Samorodov wrote: > Hello List, > > > I need to create a list with some valid values and check an input > value. Should this makefile work? > ----- > LIST=f8 f9 > > all: > @echo USE_LINUX=${USE_LINUX}, LIST=${LIST} > .if empty(LIST:M${USE_LINUX}) > @echo The value is invalid > .else > @echo The value is valid > .endif > ----- > % make USE_LINUX=f8 > USE_LINUX=f8, LIST=f8 f9 > The value is invalid > ----- Doesn't work because the match is not on words of the list but on the full list and you're not using globs. Aside from Giorgos' method, one might consider: LIST=f8 f9 LINUX_VER=invalid .for _VERSION in ${LIST} .if (${USE_LINUX} == "${_VERSION}") LINUX_VER=${_VERSION} .endif .endfor all: .if !empty(LINUX_VER:Minvalid) @echo "Invalid linux version: ${USE_LINUX}" .else @echo "Using linux version ${LINUX_VER}" .endif -- Mel
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904080845.04576.mel.flynn%2Bfbsd.questions>