Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Apr 2007 17:51:10 -0700
From:      "Kelly Jones" <kelly.terry.jones@gmail.com>
To:        nmlug@nmlug.org, nmosug-l@mailman.swcp.com, linuxusersgroup@googlegroups.com,  techtalk@linuxchix.org, freebsd-questions@freebsd.org
Subject:   Loop/wildcard-like syntax for GNU make?
Message-ID:  <26face530704171751r243ccf01sbb6d4572e8006a68@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Here's a Makefile that converts 3 GIFs to JPGs in a given directory:

1.jpg: 1.gif
       /usr/local/bin/convert 1.gif 1.jpg
2.jpg: 2.gif
       /usr/local/bin/convert 2.gif 2.jpg
3.jpg: 3.gif
       /usr/local/bin/convert 3.gif 3.jpg

How do I generalize this to apply to ALL the GIFs in a given
directory? I tried:

*.jpg: *.gif
       /usr/bin/local/bin/convert $1.gif $1.jpg

but this obviously doesn't work (I didn't really expect it to). Neither does

for $i (*.jpg) {
$i.jpg: $i.gif
        /usr/bin/local/bin/convert $i.gif $i.jpg
}

(again, didn't really expect it to, since you can't put shell looping
into a Makefile).

-- 
We're just a Bunch Of Regular Guys, a collective group that's trying
to understand and assimilate technology. We feel that resistance to
new ideas and technology is unwise and ultimately futile.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?26face530704171751r243ccf01sbb6d4572e8006a68>