Re: getting the version of a package in the rules file.
Charles Plessy <charles-debian-nospam@plessy.org> writes:
> When ran in the shell or in a $$() construct,
> dpkg-parsechangelog | grep Ver | perl -ne '/\s(.*?)\-/ ; print $1'
> gives me the upstream version number of my package.
> Howerver, the following expression does not work as expected in
> debian/rules:
> VERSION=$(shell (dpkg-parsechangelog | grep Ver | perl -ne '/\s(.*?)\-/ ; print $1'))
> Apparently, the perl oneliner returns the whole string. Is there a
> cleaner method to get the upstream version number in debian/rules ?
I use:
version := $(shell dpkg-parsechangelog | grep ^Version: \
| cut -d' ' -f2 | cut -d- -f1)
I'm guessing the problem with the Perl one-liner is that you need to
double the $ in $1 since you're inside make.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: