On Feb 22, 2011, at 7:35 PM, Dirk Eddelbuettel wrote: > > On 22 February 2011 at 18:56, Simon Urbanek wrote: > | > | On Feb 22, 2011, at 6:28 PM, Dirk Eddelbuettel wrote: > | > | > > | > Ken, > | > > | > Could you test the 0.9.1 tarball? Then in > | > inst/unitTests/runit.Module.client.package.R, apply the diff below: > | > > | > -- ie add the new .badOSX function (maybe I'll rename it 'oldOSX') > | > > | > | You have a typo in the call (.basOSX vs .badOSX) > > Yes, just corrected thanks to Baptiste. > > | and you got the test all wrong -- you're testing for anything but Darwin > > Ooops. Now corrected too. > > | and you have the versions wrong (only major matters and "bad" is anything > below 10). > > Based on the extensive discussion here it appears that > > 10.5.0 fails as evidenced by your setup and confirmation by other > > 10.6.0 passes > > so I want a test that screams if I 10.5 or lower. I don't care about major > 8, 9, ... > > | Why don't you just use my code ? ;) You can just copy my condition in > verbatim just after Rcpp:::capabilities()[["Rcpp modules"]] && - it was > designed that way ... > > I tested your code on static strings here and I fail to see how it > differentiates between 10.5.0 ("bad") and 10.6.0 ("good"). > > What am I missing here? >
The e-mailI sent about version numbers ;). OS X 10.5.n results in Sys.info()['release'] == 9.n and OS X 10.6.n in Sys.info()['release'] == 10.n because Sys.info() reports the Darwin version, not OS X version. Ken had 10.6.6 so incidentally that corresponds to Darwin (6+4).6 = 10.6 so the 6 there has nothing to do with the first 6 in 10.6.6 ;). Ah, don't we all love riddles? ;) Cheers, S > Dirk > > > | > | Cheers, > | S > | > | > | > -- change the test to add a && ! .badOSX() > | > > | > so that the test that barfs under g++ 4.2.1 is not getting run. > | > > | > If that passes everything, yet failed before, we would have ourselves a > new > | > version which may things better. > | > > | > Dirk > | > > | > > | > Index: runit.Module.client.package.R > | > =================================================================== > | > --- runit.Module.client.package.R (revision 2902) > | > +++ runit.Module.client.package.R (working copy) > | > @@ -22,8 +22,18 @@ > | > gc() > | > } > | > > | > -if( Rcpp:::capabilities()[["Rcpp modules"]] ) { > | > +.badOSX <- function() { # the unit test in this > file fails on OS X 10.5 > | > + val <- FALSE # assume we are not on > an old OS X > | > + if (Sys.info()['sysname'] != "Darwin") { # if on Darwin, let's > test > | > + vertxt <- Sys.info()['release'] # 10.5.0 or 10.6.0 or > .... > | > + osx <- as.numeric(strsplit(vertxt, "\\.")[[1]]) > | > + val <- osx[1] == 10 && osx[2] <= 5 # 10 and le 5 > will mark as bad > | > + } > | > + val > | > +} > | > > | > +if( Rcpp:::capabilities()[["Rcpp modules"]] && ! .basOSX() ) { > | > + > | > test.Module.package <- function( ){ > | > > | > td <- tempfile() > | > > | > On 22 February 2011 at 16:58, ken.willi...@thomsonreuters.com wrote: > | > | > | > | > | > | > | > | > | > | On 2/22/11 4:54 PM, "Dirk Eddelbuettel" <e...@debian.org> wrote: > | > | > | > | >What is in Sys.info(), particularly fields 1 and 2: > | > | > > | > | >R> Sys.info()[1:2] > | > | > sysname release > | > | > "Linux" "2.6.32-25-generic" > | > | > | > | That's probably the right way to do it, as Simon suggested too in the > | > | meantime. > | > | > | > | > Sys.info()[1:2] > | > | sysname release > | > | "Darwin" "10.6.0" > | > | > | > | > | > | > | > | > | > | > | > | > > | > | > > | > | >Else, .Platform() starts with 'Darwin', right? > | > | > | > | Nope: > | > | > | > | > .Platform[1] > | > | $OS.type > | > | [1] "unix" > | > | > | > | > | > | > | > | -- > | > | Ken Williams > | > | Senior Research Scientist > | > | Thomson Reuters > | > | http://labs.thomsonreuters.com > | > | > | > | > | > > | > -- > | > Dirk Eddelbuettel | e...@debian.org | http://dirk.eddelbuettel.com > | > > | > > | > > -- > Dirk Eddelbuettel | e...@debian.org | http://dirk.eddelbuettel.com > > _______________________________________________ Rcpp-devel mailing list Rcpp-devel@lists.r-forge.r-project.org https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel