On 10/03/2023 00:53, Alejandro Colomar wrote:
Hi Pádraig,

On 3/9/23 21:38, Pádraig Brady wrote:
On 09/03/2023 16:31, Alejandro Colomar wrote:
Hi,

I'm working on the Linux man-pages Makefile, so that users can select
if they want their link manual pages (e.g., sprintf(3), which is just
a link to printf(3)) as symlinks or .so files (not shared objects, but
roff(7) files with a .so request; similar to C's #include).  Until now,
we only provided them as .so files, but many systems want their pages
as symlinks, so I'm trying to make it easy for them.

That should be easy: build the symlinks, and then install them.
However, that seems to be incompatible with install(1), which I've
been using until now.  It can't install a symlink --it follows it, and
copies the real file--.  Would it make sense to you to add some flag(s)
to do something similar to what cp(1) can do?  Otherwise, I should
replace install(1) with cp(1) + chmod(1), but I would prefer to use
install(1) in the Makefile, I think.

There was a previous proposal to support --preserve,

Did that proposal include a patch, or should I write one?

which would support this with --preserve=links.
It's not a very requested feature though,
but also not that invasive to implement.

There is another recent suggestion which may suffice for this.

  https://github.com/coreutils/coreutils/issues/115

I.e. to support the FreeBSD `install -l` option.
Then install -la (or --link=absolute) would effectively
propagate the symlinks to the destination,
assuming we'd resolve symlinks in the source (like we already do).

cheers,
Padraig

Reply via email to