Re: [R-pkg-devel] portability question

2023-12-20 Thread Steven Scott
I think Dirk was just showing me an example of how to branch on OS, which would be relevant in the event that adding the 's' was harmful. In this case it sounds like adding the 's' is the right path forward, which is the advice I was hoping for. Thank you both! On Wed, Dec 20, 2023 at 12:51 PM S

Re: [R-pkg-devel] portability question

2023-12-20 Thread Dirk Eddelbuettel
The point of my email was that if [ `uname -s` = 'Darwin' ]; then ... allows for a clean branch between the (new here) macOS behaviour and (old, prior) behavior removing all concerns about 'portability' (per the Subject:). You missed 100% of that. Dirk -- dirk.eddelbuettel.com | @eddelbu

Re: [R-pkg-devel] portability question

2023-12-20 Thread Simon Urbanek
This has nothing to do with Steven's question since he is creating a *static* library whereas install_name_tool changes install name ID entry of a *dynamic* library. Also the data.table example is effectively a no-op, because changing the ID makes no difference as it can't be linked against dire

Re: [R-pkg-devel] portability question

2023-12-20 Thread Simon Urbanek
Steven, no, I'm not aware of any negative effect, in fact having an index in the archive is always a good idea - some linkers require it, some work faster with it and at the worst the linker ignores it. And as far as I can tell all current system "ar" implementations support the -s flag (even t

Re: [R-pkg-devel] portability question

2023-12-20 Thread Dirk Eddelbuettel
On 20 December 2023 at 11:10, Steven Scott wrote: | The Boom package builds a library against which other packages link. The | library is built using the Makevars mechanism using the line | | ${AR} rc $@ $^ | | A user has asked me to change 'rc' to 'rcs' so that 'ranlib' will be run on | the a

[R-pkg-devel] portability question

2023-12-20 Thread Steven Scott
The Boom package builds a library against which other packages link. The library is built using the Makevars mechanism using the line ${AR} rc $@ $^ A user has asked me to change 'rc' to 'rcs' so that 'ranlib' will be run on the archive. This is apparently needed for certain flavors of macs. I