c make-файл с командами оболочки и переменными

Это из сценария bash, который я использовал для создания программы:

dateString=$(date +%Y/%m/%d\ %H:%M:%S)
revision=(`svn info | grep Revision | tr -d [:alpha:]':'`)
echo "#define VERSION_DATE \"$dateString\""     >  version.h
echo "#define VERSION_REVISION \"$revision\""   >> version.h

Я перешел с использования build.sh на make-файл:

version.h:
    dateString=$$(date +%Y/%m/%d\ %H:%M:%S)
    revision=(`svn info | grep Revision | tr -d [:alpha:]':'`)
    echo "#define VERSION_DATE \"$dateString\""    >  version.h.tmp
    echo "#define VERSION_REVISION \"$revision\""  >> version.h.tmp
    mv version.h.tmp version.h

Но файл version.h заканчивается следующим образом:

#define VERSION_DATE "\ateString"
#define VERSION_REVISION "\evision"

Кажется, я не могу правильно получить переменные оболочки. Я думаю, это потому, что они в конечном итоге являются варами Makefile. Если кто-нибудь знает, как это сделать, я бы не прочь узнать, как это сделать. Большое спасибо.

7
задан Paul Kersey 3 February 2011 в 21:39
поделиться