[R] src/Makevars ignored ?

Martin Morgan martin.morgan at roswellpark.org
Tue Sep 27 10:38:14 CEST 2016


On 09/26/2016 07:46 AM, Eric Deveaud wrote:
>
>
>     Hello,
>
> as far as I understood the R library generic compilation mechanism,
> compilation of C//C++ sources is controlde
>
> 1) at system level by the ocntentos RHOME/etc/Makeconf
> 2) at user level by the content of ~/.R/Makevars
> 3) at package level by the content of src/Makevars
>
> Problem I have is that src/Makevars is ignored
>
>
> see following example:
>
> R is compiled and use the following CC and CFLAGS definition
>
> bigmess:epactsR/src > R CMD config CC
> gcc -std=gnu99
> bigmess:epactsR/src > R CMD config CFLAGS
> -Wall -g
>
> so building C sources lead to the following
>
> bigmess:epactsR/src > R CMD SHLIB index.c
> gcc -std=gnu99 -I/local/gensoft2/adm/lib64/R/include -DNDEBUG
> -I/usr/local/include    -fpic  -Wall -g  -c index.c -o index.o
>
> normal, it uses defintion from RHOME/etc/Makeconf
>
>
> when I set upp a ~/.R/Makevars that overwrite CC and CFLAGS definition.
>
> bigmess:epactsR/src > cat ~/.R/Makevars
> CC=gcc
> CFLAGS=-O3
> bigmess:epactsR/src > R CMD SHLIB index.c
> gcc -I/local/gensoft2/adm/lib64/R/include -DNDEBUG  -I/usr/local/include
>    -fpic  -O3 -c index.c -o index.o
> gcc -std=gnu99 -shared -L/usr/local/lib64 -o index.so index.o
>
>
> OK CC and CFLAGS are honored and set accordingly to ~/.R/Makevars
>
>
> but when I try to use src/Makevars, it is ignored
>
> bigmess:epactsR/src > cat ~/.R/Makevars
> cat: /home/edeveaud/.R/Makevars: No such file or directory
> bigmess:epactsR/src > cat ./Makevars
> CC = gcc
> CFLAGS=-O3
> bigmess:epactsR/src > R CMD SHLIB index.c
> gcc -std=gnu99 -I/local/gensoft2/adm/lib64/R/include -DNDEBUG
> -I/usr/local/include    -fpic  -Wall -g  -c index.c -o index.o
>
>
> what I have missed or is there something wrong ?

Use PKG_CFLAGS instead of CFLAGS; CC cannot be changed in Makevars. See 
https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Using-Makevars

Martin Morgan

>
>
> PS I tested the ssame behaviour with various version of R from R/2.15 to
> R/3.3
>
>     best regards
>
>     Eric
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.


This email message may contain legally privileged and/or...{{dropped:2}}



More information about the R-help mailing list