Really thank you for the clearance. >From the link you provided,
"However, if the component is only needed for optional features, a project can provide the user with instructions on how to obtain and install the non-included work." I think this is exactly our case. We provide instructions on how to install GNU R and the Rcpp package. Besides, our case is very similar with Spark. The Spark R package includes "R.h" and "Rinternals.h", which are both LGPL ( https://github.com/apache/spark/blob/master/R/pkg/src-native/string_hash_code.c#L24-L25 ). Best wishes, Qiang Kou On Thu, Jul 6, 2017 at 6:09 PM, Felix Cheung <[email protected]> wrote: > I'm not the authority on this but a release from an ASF project is > different from releasing with the Apache 2.0 license. > > You can find more out this here > https://www.apache.org/legal/resolved.html#optional > > Specifically, quote: > "Optional means that the component is not required for standard use of the > product or for the product to achieve a desirable level of quality." > > Basically my interpretation is that if an ASF project cannot function > without a component, then it is required and such required component cannot > be one of the prohibited licenses. > > https://www.apache.org/legal/resolved.html#category-x > > Probably a good idea to start a thread with legal@ if there are more > questions. > > _____________________________ > From: Qiang Kou <[email protected]<mailto:[email protected]>> > Sent: Thursday, July 6, 2017 3:41 PM > Subject: Re: Rcpp licensing in Apache MXNet > To: <[email protected]<mailto:[email protected] > >> > > > Hi, Felix, > > I just want to make sure there is no misunderstanding between us. > > (1) The MXNet R package heavily used the Rcpp package, but we only include > the > header file, Rcpp.h, like https://github.com/dmlc/mxnet/ > blob/master/R-package/src/base.h#L11 > > The MXNet R package doesn't contain any source code from Rcpp and there is > no linking against Rcpp. > > (2) There is "LinkingTo: Rcpp" in the R package description ( > https://github.com/dmlc/mxnet/blob/master/R-package/DESCRIPTION#L32). > However, this only means we want to use the header files from Rcpp. > > "A package that wishes to make use of header files in other > packages needs to declare them as a > comma-separated list in the field ‘LinkingTo’ in the DESCRIPTION file. " > > More details can be found from R's official manual ( > https://cran.r-project.org/doc/manuals/r-release/R-exts. > html#Package-Dependencies). > > (3) Many R packages who use Rcpp to communicate with C++ have been released > under Apache License, like feather (https://github.com/wesm/ > feather/blob/master/R/DESCRIPTION). > > Best, > > Qiang Kou > > On Thu, Jul 6, 2017 at 1:20 AM, Felix Cheung <[email protected]< > mailto:[email protected]>> > wrote: > > > On a related note, Rcpp, used extensively in the R package, is > GPLv2/GPLv3 > > licensed. > > > > I'm not aware of any other R package available that supports R<->C++. > > > > https://www.apache.org/legal/resolved.html#category-x > > https://cran.r-project.org/web/packages/Rcpp/index.html > > > > > > > -- Qiang Kou [email protected] School of Informatics and Computing, Indiana University
