From ff8e7669d6c8f7e336879cf6be087faeba96c135 Mon Sep 17 00:00:00 2001 From: Max Laier Date: Sat, 18 Feb 2006 01:38:44 +0000 Subject: [PATCH] Use shell's version of if to check if the firmware really exists in the current directory to allow user rules to create the firmware (e.g. from a uuencoded blob). make's version of if is evaluated too early to catch this. Found-by: gallatin --- sys/conf/kmod.mk | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk index 86eb0f87e3c..67dcba4a725 100644 --- a/sys/conf/kmod.mk +++ b/sys/conf/kmod.mk @@ -137,13 +137,15 @@ CLEANFILES+= ${KMOD:S/$/.c/} .for _firmw in ${FIRMWS} ${_firmw:C/\:.*$/.fwo/}: ${_firmw:C/\:.*$//} @${ECHO} ${_firmw:C/\:.*$//} ${.ALLSRC:M*${_firmw:C/\:.*$//}} -.if !exists(${.CURDIR}/${_firmw:C/\:.*$//}) - ln -s ${.ALLSRC:M*${_firmw:C/\:.*$//}} ${_firmw:C/\:.*$//} - ${LD} -b binary ${LDFLAGS} -r -d -o ${.TARGET} ${_firmw:C/\:.*$//} - rm -f ${_firmw:C/\:.*$//} -.else - ${LD} -b binary ${LDFLAGS} -r -d -o ${.TARGET} ${_firmw:C/\:.*$//} -.endif + @if [ -e ${.CURDIR}/${_firmw:C/\:.*$//} ]; then \ + ${LD} -b binary ${LDFLAGS} -r -d -o ${.TARGET} \ + ${_firmw:C/\:.*$//}; \ + else \ + ln -s ${.ALLSRC:M*${_firmw:C/\:.*$//}} ${_firmw:C/\:.*$//}; \ + ${LD} -b binary ${LDFLAGS} -r -d -o ${.TARGET} \ + ${_firmw:C/\:.*$//}; \ + rm ${_firmw:C/\:.*$//}; \ + fi OBJS+= ${_firmw:C/\:.*$/.fwo/} .endfor