[Rd] build time dependency

Uwe Ligges ligges at statistik.tu-dortmund.de
Tue Sep 29 10:10:55 CEST 2009



Romain Francois wrote:
> On 09/29/2009 04:36 AM, Seth Falcon wrote:
>>
>> On Mon, Sep 28, 2009 at 11:25 AM, Romain Francois
>> <romain.francois at dbmail.com>  wrote:
>>> Hi Uwe,
>>>
>>> I think you are supposed to do this kind of sequence:
>>>
>>> R CMD roxygen yourRoxygenablePackage
>>> R CMD build yourRoxygenablePackage_roxygen
>>>
>>> ... but I don't like this because what you upload to cran is not the 
>>> actual
>>> source but somethingalready pre-processed. (This also applies to 
>>> packages
>>> shipping java code, most people just compile the java code on their 
>>> machine
>>> and only supply a jar of compiled code, but that's another story I 
>>> suppose
>>> ...)
>>>
>>> I'd prefer the roxygenation to be part of the standard build/INSTALL 
>>> system,
>>> so my plan is to write configure and configure.win which would call
>>> roxygenize to generate Rd.
>>
>> I can appreciate the desire to make the "true" sources available.  At
>> the same time, I think one should very carefully consider the expense
>> of external dependencies on a package.
>>
>> One could view doc generation along the same lines as configure script
>> generation -- a compilation step that can be done once instead of by
>> all those who install and as a result reduce the depencency burden of
>> those wanting to install the package.  Configure scripts are almost
>> universally included pre-built in distribution source packages so that
>> users do not need to have the right version of autoconf/automake.
> 
> The kind of configure[.win] scripts I am using are very simplistic and 
> do not come from autoconf, etc ...
> 
> something like this to compile the java source code using the ant package :
> 
> #!/bin/bash
> cd inst/java_src
> "${R_HOME}/bin/Rscript" -e "ant::ant()"
> 
>> In other words, are you sure you want to require folks to install
>> roxygen (or whatever) in order to install your package? Making it easy
>> to do so is great, but in general if you can find a way to reduce
>> dependencies and have your package work, that is better. :-)
> 
> That is exactly what I am trying to do here, those who build the package 
> are not necessarily the same as those who install it, so installation 
> would not depend on roxygen. And Uwe is very right that what I am 
> looking for is indeed __build__ time rather than __install__ time.

I think you should talk to Manuel whose intention really was the usage 
you mentioned above (i.e. before or at build time).

Best,
Uwe





>> + seth
>>
> 
>



More information about the R-devel mailing list