[PATCH] Makefile globbing problems in 'make check'
Hi Everyone,
In the top-level Makefile, a bunch of variables are initialised by having
the shell expand a wildcard expression, for example:
kerneli386_compact := $(shell $(pathcmd:P=kernel-image-$(kver)-compact_*.deb))
pcmciai386_compact := $(shell $(pathcmd:P=pcmcia-modules-$(kver)-compact_*.deb))
kerneli386_udma66 := $(shell $(pathcmd:P=kernel-image-$(kver)-ide*.deb))
pcmciai386_udma66 := $(shell $(pathcmd:P=pcmcia-modules-$(kver)-ide*.deb))
kerneli386_idepci := $(shell $(pathcmd:P=kernel-image-$(kver)-idepci*.deb))
pcmciai386_idepci := $(shell $(pathcmd:P=pcmcia-modules-$(kver)-idepci*.deb))
However, in the check_kernel target there are actions like:
@[ -f "$(kerneli386_compact)" ] || \
( echo compact kernel is not available ; exit 1 )
If the glob didn't match any files, the variable will be "". Of course,
[ -f "" ] always succeeds, thus 'make check' fails positive.
The following patch covers the variables in the 'check' target - no
guarantees that I haven't missed any! Unfortunately, I cannot write
to CVS from here, so would someone kindly look over this and commit
it for me?
Regards,
Mark.
Index: Makefile
===================================================================
RCS file: /cvs/debian-boot/boot-floppies/Makefile,v
retrieving revision 1.266
diff -r1.266 Makefile
266c266
< @[ -f "$(pcmcia_package)" ] || \
---
> @[ -n "$(pcmcia_package)" -a -f "$(pcmcia_package)" ] || \
268c268
< @[ -f "$(kerneli386_compact)" ] || \
---
> @[ -n "$(kerneli386_compact)" -a -f "$(kerneli386_compact)" ] || \
270c270
< @[ -f "$(pcmciai386_compact)" ] || \
---
> @[ -n "$(pcmciai386_compact)" -a -f "$(pcmciai386_compact)" ] || \
272c272
< @[ -f "$(kerneli386_udma66)" ] || \
---
> @[ -n "$(kerneli386_udma66)" -a -f "$(kerneli386_udma66)" ] || \
274c274
< @[ -f "$(pcmciai386_udma66)" ] || \
---
> @[ -n "$(pcmciai386_udma66)" -a -f "$(pcmciai386_udma66)" ] || \
276c276
< @[ -f "$(kerneli386_idepci)" ] || \
---
> @[ -n "$(kerneli386_idepci)" -a -f "$(kerneli386_idepci)" ] || \
278c278
< @[ -f "$(pcmciai386_idepci)" ] || \
---
> @[ -n "$(pcmciai386_idepci)" -a -f "$(pcmciai386_idepci)" ] || \
282c282
< @[ -f "$(kernelatari)" ] || \
---
> @[ -n "$(kernelatari)" -a -f "$(kernelatari)" ] || \
284c284
< @[ -f "$(kernelamiga)" ] || \
---
> @[ -n "$(kernelamiga)" -a -f "$(kernelamiga)" ] || \
286c286
< @[ -f "$(kernelmac)" ] || \
---
> @[ -n "$(kernelmac)" -a -f "$(kernelmac)" ] || \
288c288
< @[ -f "$(kernelbvme6000)" ] || \
---
> @[ -n "$(kernelbvme6000)" -a -f "$(kernelbvme6000)" ] || \
290c290
< @[ -f "$(kernelmvme16x)" ] || \
---
> @[ -n "$(kernelmvme16x)" -a -f "$(kernelmvme16x)" ] || \
294c294
< @[ -f "$(kernelapus)" ] || \
---
> @[ -n "$(kernelapus)" -a -f "$(kernelapus)" ] || \
296c296
< @[ -f "$(kernelchrp)" ] || \
---
> @[ -n "$(kernelchrp)" -a -f "$(kernelchrp)" ] || \
298c298
< @[ -f "$(kernelpmac)" ] || \
---
> @[ -n "$(kernelpmac)" -a -f "$(kernelpmac)" ] || \
300c300
< @[ -f "$(kernelprep)" ] || \
---
> @[ -n "$(kernelprep)" -a -f "$(kernelprep)" ] || \
302c302
< @[ -f "$(kernelsource)" ] || \
---
> @[ -n "$(kernelsource)" -a -f "$(kernelsource)" ] || \
304c304
< @[ -f "$(kernelpatch)" ] || \
---
> @[ -n "$(kernelpatch)" -a -f "$(kernelpatch)" ] || \
308c308
< @[ -f "$(kernel)" ] || \
---
> @[ -n "$(kernel)" -a -f "$(kernel)" ] || \
310c310
< @[ -f "$(kernel64)" ] || \
---
> @[ -n "$(kernel64)" -a -f "$(kernel64)" ] || \
312c312
< @[ -f "$(kernelC)" ] || \
---
> @[ -n "$(kernelC)" -a -f "$(kernelC)" ] || \
316c316
< @[ -f "$(kernelalpha)" ] || \
---
> @[ -n "$(kernelalpha)" -a -f "$(kernelalpha)" ] || \
(end)
Reply to: