[Rd] Detect UCRT-built R from within R sessions (and in configure.win)

Tomas Kalibera
2021-09-14T13:40:39Z

On 9/9/21 5:54 AM, Hiroaki Yutani wrote:
> Thank you for the prompt reply.
>
> > There in not such a mechanism, yet, but can be added, at least for
> > diagnostics.
>
> For example, can R.version somehow contain the information?
Yes, now added to the experimental builds. R.version$crt contains
"ucrt"
(and would contain "msvcrt" if R was built against
MSVCRT).
>
> > We could add support for configure.ucrt, which would take precedence
> > over configure.win on the UCRT builds (like Makevars.ucrt takes
> > precedence over Makevars.win). Would that work for you?
>
> Yes, configure.ucrt should work for me. There might be someone who
> prefers to switch by some envvar rather than creating another file,
> but I don't have a strong opinion here.

The experimental builds now support configure.ucrt and cleanup.ucrt files.

Best
Tomas

>
> Best,
> Hiroaki Yutani
>
> 2021?9?9?(?) 0:48 Tomas Kalibera <tomas.kalibera at gmail.com
> <mailto:tomas.kalibera at gmail.com>>:
>
>
>     On 9/8/21 2:08 PM, Hiroaki Yutani wrote:
>     > Hi,
>     >
>     > Are there any proper ways to know whether the session is running
on
>     > the R that is built with the UCRT toolchain or not? Checking if
the
>     > encoding is UTF-8 might do the trick, but I'm not sure if
it's
>     always
>     > reliable.
>
>     There in not such a mechanism, yet, but can be added, at least for
>     diagnostics.
>
>     You are right that checking for UTF-8 encoding would not always be
>     reliable. For example, the version of Windows may be too old to
>     allow R
>     use UTF-8 as native encoding (e.g. Windows server 2016), then R
>     will use
>     the native code page as it does today in the MSVCRT builds.
>
>     > Also, I'd like to know if there's any mechanism to detect
the
>     UCRT in
>     > configure.win. I know there are Makevars.ucrt and Makefile.ucrt,
but
>     > one might want to do some feature test that is specific to the
UCRT
>     > toolchain.
>
>     We could add support for configure.ucrt, which would take precedence
>     over configure.win on the UCRT builds (like Makevars.ucrt takes
>     precedence over Makevars.win). Would that work for you?
>
>     Best
>     Tomas
>
>     >
>     > Best,
>     > Hiroaki Yutani
>     >
>     > ______________________________________________
>     > R-devel at r-project.org <mailto:R-devel at r-project.org>
mailing list
>     > https://stat.ethz.ch/mailman/listinfo/r-devel
>     <https://stat.ethz.ch/mailman/listinfo/r-devel>
>

	[[alternative HTML version deleted]]