Package: r-base-dev Version: 3.0.0-2 Tags: patch After the call for all the r-cran packages to be updated for R 3.0, which is binary(?) incompatible with earlier versions, and the later reference to ${R:Depends} in the ongoing discussion, I realised that the ${R:Depends} is currently faulty: packages built under R 2.x have a generated Depends line which reads: r-base-core (>= 2.14.1-2) or similar, but actually, this should be tighter, and also specify r-base-core (<< 3), as it appears that packages built under R 2.x will not run under R 3.x. The attached patch modifies the r-cran.mk file to specify that r-base-core has to be less than the next major version, under the assumption that this is the only time that binary incompatibilities are introduced for packages built with earlier versions of R. This patch also assumes that there is no epoch, otherwise the expr command will fail.
Julian
--- /tmp/r-cran.mk.orig 2013-04-03 16:29:47.000000000 +0100 +++ /tmp/r-cran.mk 2013-04-09 09:11:48.000000000 +0100 @@ -61,6 +61,8 @@ # dpkg-parsechangelog -l- --count 1 | \ # awk '/^Version/ {print $$2}') rversion := $(shell dpkg-query -W -f='$${Version}' r-base-dev) +rmajorversion := $(shell echo $(rversion) | cut -d. -f1) +rnextmajorver := $(shell expr $(rmajorversion) + 1) ## we use these results for the to-be-installed-in directory debRlib := $(CURDIR)/debian/$(package)/$(debRdir) @@ -76,7 +78,7 @@ dh_installdirs $(debRdir) ## ## support ${R:Depends} via debian/${package}.substvars - echo "R:Depends=r-base-core (>= ${rversion})" >> debian/$(package).substvars + echo "R:Depends=r-base-core (>= ${rversion}), r-base-core (<< $(rnextmajorver))" >> debian/$(package).substvars ## ## call R to install the sources we're looking at ## use this inside xvfb-run if this wrapper is installed