>From memory, you're correct. [[ is bourne shell syntax. Steve
On Fri, 06 Jun 2008 20:39:17 +1200 Delio Brignoli <[EMAIL PROTECTED]> wrote: > Hi, > > I think this: > > > until ([[ Reference.pdf -nt Reference.tex ]] && (diff -qs > > Reference.toc > > should be (one square bracket instead of two): > > > until ([ Reference.pdf -nt Reference.tex ] && (diff -qs Reference.toc > > > HTH > -- > Delio > > On 6/06/2008, at 8:27 PM, Aidan Gauland wrote: > > > Hello, > > > > I'm trying to figure out how to make this Makefile I have 100% POSIX > > compliant. > > > > Details: > > When run make with this Makefile, I get this error: > > > > /bin/sh: [[: not found > > This happens because there is no executable called '[['. You will find > that your system has an executable called '[' which is usually a > symlink to 'test' (running #man test will reveal more). > > > > > > > ...it still runs, but I get caught in an infinite loop. I think > > this line is > > the problem... > > > > until ([[ Reference.pdf -nt Reference.tex ]] && (diff -qs > > Reference.toc > > last/Reference.toc) && (diff -qs Reference.aux last/Reference.aux) > > && (diff > > -qs Reference.ind last/Reference.ind)); do \ > > > > The make file works if I force make to use bash, instead of the > > default > > /bin/sh (which, on my systen is a link to dash). > > > > Now, conditionals in bash (and the like) have always baffeled me, so > > I'm a bit > > lost here (now isn't that an understatement), and if any bash savvy > > system > > administrators here can help me out, that would be greatly > > appreciated. > > > > I've attached a copy of the Makefile in question, but it's from the > > Pipmak ( > > http://pipmak.sourceforge.net ) project, and you can get it with > > Subversion > > from... > > https://pipmak.svn.sourceforge.net/svnroot/pipmak/trunk/pipmak/documentation > > > > Thanks, > > Aidan > > > > > > <Makefile.gz> > -- Steve Holdoway <[EMAIL PROTECTED]>
