This is an automated email from the ASF dual-hosted git repository. jimjag pushed a commit to branch AOO42X in repository https://gitbox.apache.org/repos/asf/openoffice.git
commit 103d435b7e25e9fa5b24e1cbff838bf87aef3ad6 Author: Jim Jagielski <[email protected]> AuthorDate: Thu Aug 6 15:12:02 2026 -0400 deliver.pl: fix greedy base-name match in the macOS dylib linklib regex \S matches dots, so the base name swallowed leading version components: libxslt.1.1.34.dylib keyed as libxslt.1.1 rather than libxslt, and the unversioned symlink was never created. Two-component names were unaffected. (cherry picked from commit 7d1f05704a41c80ce229e997907db3d6721f18a5) --- main/solenv/bin/deliver.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/main/solenv/bin/deliver.pl b/main/solenv/bin/deliver.pl index e950d71d82..0708151570 100755 --- a/main/solenv/bin/deliver.pl +++ b/main/solenv/bin/deliver.pl @@ -251,7 +251,9 @@ sub do_linklib } # libtool's macOS naming puts the version before the extension # (libfoo.4.dylib), unlike ELF's libfoo.so.4 -- same file, opposite order. - elsif ( $lib =~ /^(lib\S+)\.(\d+)(\.\d+)?(\.\d+)?(\.dylib)$/ ) + # Non-greedy: \S matches dots, so a greedy base would swallow leading + # version components (libxslt.1.1.34.dylib -> "libxslt.1.1"). + elsif ( $lib =~ /^(lib\S+?)\.(\d+)(\.\d+)?(\.\d+)?(\.dylib)$/ ) { push(@{$globbed_hash{"$1$5"}}, $lib); } @@ -268,7 +270,7 @@ sub do_linklib $lib_major = "$lib_base.$3"; $long = 1; } - elsif ( $lib =~ /^(lib\S+)\.(\d+)(\.\d+)?(\.\d+)?(\.dylib)$/ ) + elsif ( $lib =~ /^(lib\S+?)\.(\d+)(\.\d+)?(\.\d+)?(\.dylib)$/ ) { # macOS dylibs don't carry a separate major-only symlink; the # single unversioned name below is enough.
