On 7 March 2017 at 14:47, Gábor Csárdi wrote: | On Tue, Mar 7, 2017 at 2:45 PM, Dirk Eddelbuettel <e...@debian.org> wrote: | [...] | > | > Could you resort to preprocessor conditioning to only compile the code | > relevant for a particular platform while hiding away the inapplicable parts? | | Yes, I do exactly that. The problem is that the R code still has | | .Call(c_non_existent_function_on_this_platform, ...) | | and R CMD check picks up on that.
Silly me. Of course -- R code does not see the preprocessor. You could move up one level then and ... do it via configure, ie have 'hidden' files osx-init.c, lnx-init.c, win-init.c and copy in the one you need on a given platform. | But I just found that using string literals in .Call() works just | fine. Hopefully | this will still be allowed in the long run: | | .Call("c_non_existent_function_on_this_platform", ...) So you are adjusting the literals on the fly at compilation time? Dirk -- http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel