[R-pkg-devel] SystemRequirements & configure check for FFTW with single precision support

Lukas Schneiderbauer |uk@@@@chne|derb@uer @end|ng |rom gm@||@com
Sat Jan 11 10:37:20 CET 2025


Hi list,

I am working on getting a package <https://github.com/lschneiderbauer/fCWTr> to
CRAN. It depends on the FFTW library <https://www.fftw.org/> that is built
with single precision support. I am stuck in the submission process and I
require your help.

Before I come to my questions, some key facts about the package:

The package has an autoconf configure script that uses (among other things,
like OpenMP checks, etc..) AC_SEARCH_LIBS to check whether required
functions of the library 'fftwf' exist, if yes, it adds the corresponding
compiler/linker flags; if no, it errs with a descriptive error message.

The CRAN Windows as well as Linux build service included fftwf in their
fftw build out of the box, and so building there was no problem, R CMD
Check passes there. In the past, building for MacOS was more trouble, since
its fftw package does not include a single-precision build. I reached out
to Simon Urbanek, and he was so kind as to add an appropriate new recipe
"fftw-s" that provided an fftw version with single precision support. As of
now, R CMD check also passes cleanly on the MacOS build service, thanks to
Simon Urbanek's efforts.

Now, I am stuck at submission for two reasons:
1. The SystemRequirements specification in the DESCRIPTION file is
incorrect.
2. It is said that "the package needs a configure check for fftwf".

Add 1.
Initially, I had no mention of the "single precision" version of fftw,
because I thought it is included everywhere by default. It was stated that
I need to add that information. I naturally complied.
This is my current version:
"SystemRequirements: fftw3 (including single precision support fftw3f),
fftw3f_omp (optional), OpenMP (optional)"
In the second subscription run, I was told to add "fftw-s" since I require
the fftw-s package on MacOS. This does not make much sense to me since
"fftw-s" is only the name of this package on Simon Urbanek's MacOS build
service. The library file itself is still called fftwf, like it is on any
other platform. If I added "fftw-s", I would also need to explain that this
is only valid for MacOS which seems to make the SystemRequirements
unnecessary verbose.
* Can someone explain the reason behind this request to me?
* How exactly should I add "fftw-s" to pass the submission process?

Add 2.
I tried to explain now for the second time in the submission notes, that a
check is already in place (see the AC_SEARCH_LIBS paragraph above). But my
explanation gets ignored.
* What am I doing wrong?
* What additional configure checks do I need to add to the package?

Thanks a lot for your help!
Sincerely, Lukas Schneiderbauer

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list