On Fri, 1 Jun 2018 21:12:06 +0200 Sébastien Villemot <sebast...@debian.org> 
wrote:
> Package: src:rkward
> Version: 0.7.0-1
> Severity: serious
> Control: block 896667 by -1 
> 
> Dear Maintainer,
> 
> The R 3.5 transition has just started (see #896667), and consequently the
> rebuild of rkward has been triggered.
> 
> But the rebuild failed, apparently because the C compiler is not properly
> detected (I did not investigate whether this error is actually related to R 
> 3.5
> or is due to some other unrelated change):

For a build log of the failure, see the link "rbuild (41KB)" at [1].

It seems that the cmake invocation is causing trouble. Consider these forms:

1) CC='gcc -std=c99' cmake ...
2) CC='gcc -std=c99' cmake -DCMAKE_C_COMPILER='gcc -std=c99' ...

The first one is okay and CMake handles the extra -std=c99 argument properly, 
but
the second one causes "-- The C compiler identification is unknown".
This behavior is expected as CMAKE_C_COMPILER should be a full path.[6]

Debhelper[2] uses the second form when CC is set, as is done in rkward[3].
The change was introduced in [4], to fix #897083[5].
(Helmut Cc'd to notify of this unexpected breakage.)

On the other hand, maybe debian/rules of rkward needs to be changed. The comment
at [3] states that setting CC is required for "some installations of R", but is
it required in the Debian package specifically?

In this case, 'gcc -std=c99' comes from "/usr/bin/R CMD config CC".
I am also wondering why R should impose -std=c99. There exist many other 
possible
values for -std.[7]


Cheers,
Juhani


[1] 
https://tests.reproducible-buildds.org/debian/rb-pkg/unstable/armhf/rkward.html
[2] 
https://sources.debian.org/src/debhelper/11.3.2/lib/Debian/Debhelper/Buildsystem/cmake.pm/#L90
[3] https://sources.debian.org/src/rkward/0.7.0-1/debian/rules/#L25
[4] 
https://salsa.debian.org/debian/debhelper/commit/a5eb0dc3c3a16d12c7a26ac42b93a35b931188d3
[5] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897083
[6] https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER.html
[7] https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html

Reply via email to