A little bit more of a tongue-twisting command line
to do string replacement, but saves us from having
separate ceph.in files for cmake vs autotools.
Signed-off-by: John Spray <john.spray@redhat.com>
ceph: ceph.in ./ceph_ver.h Makefile
rm -f $@ $@.tmp
- echo "#!/usr/bin/env python" >$@.tmp
- grep "#define CEPH_GIT_NICE_VER" $(srcdir)/ceph_ver.h | \
- sed -e 's/#define \(.*VER\) /\1=/' >>$@.tmp
- grep "#define CEPH_GIT_VER" $(srcdir)/ceph_ver.h | \
- sed -e 's/#define \(.*VER\) /\1=/' -e 's/=\(.*\)$$/="\1"/' >>$@.tmp
+ cp $@.in $@.tmp
+ sed -i "s|@PYTHON_EXECUTABLE@|/usr/bin/env python|" $@.tmp
+ grep CEPH_GIT_NICE_VER ./ceph_ver.h | cut -f 3 -d " " | sed s/\"//g | xargs -I "{}" sed -i "s/@CEPH_GIT_NICE_VER@/{}/g" $@.tmp
+ grep CEPH_GIT_VER ./ceph_ver.h | cut -f 3 -d " " | sed s/\"//g | xargs -I "{}" sed -i "s/@CEPH_GIT_VER@/{}/g" $@.tmp
cat $(srcdir)/$@.in >>$@.tmp
chmod a+x $@.tmp
chmod a-w $@.tmp