# HG changeset patch # User Olaf Wintermann # Date 1762368006 -3600 # Node ID 2309b553c60408cf5615a673d755184e064c36d7 # Parent c1a144db699fefed3e2da0878d60c16d690f9456 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support diff -r c1a144db699f -r 2309b553c604 configure --- a/configure Tue Nov 04 22:38:34 2025 +0100 +++ b/configure Wed Nov 05 19:40:06 2025 +0100 @@ -551,6 +551,9 @@ ARFLAGS=r STLIB_EXT=.a SHLIB_EXT=.dylib + +SHLIB_LDFLAGS=-dynamiclib -current_version \$(LIBVERSION) -compatibility_version \$(LIBVERSION) +INSTALL_LIB=\$(root_dir)/make/install-lib-macos.sh __EOF__ break done @@ -576,6 +579,7 @@ ARFLAGS=cr STLIB_EXT=.a SHLIB_EXT=.so +INSTALL_LIB=\$(root_dir)/make/install-lib.sh __EOF__ break done diff -r c1a144db699f -r 2309b553c604 make/install-lib-macos.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/install-lib-macos.sh Wed Nov 05 19:40:06 2025 +0100 @@ -0,0 +1,21 @@ +#!/bin/sh + +if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ] || [ -z "$4" ] ; then + echo "Usage: $0 " + exit 1 +fi + + +NAME=$(basename $1) +LIBNAME=${NAME/.dylib/.$4.dylib} + +SRC="$1" +DST="$2/$LIBNAME" +LN_DST="$2/$NAME" + +cp -f "$SRC" "$DST" + +install_name_tool -id "$DST" "$DST" + +rm -f $LN_DST +ln -s $LIBNAME $LN_DST diff -r c1a144db699f -r 2309b553c604 make/install-lib.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/install-lib.sh Wed Nov 05 19:40:06 2025 +0100 @@ -0,0 +1,19 @@ +#!/bin/sh + +if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ] || [ -z "$4" ] ; then + echo "Usage: $0 " + exit 1 +fi + +SRC=$1 +LIB=$(basename $1) +LIBDIR=$2 +LIBVERSION=$3 +LIBVERSION_MAJOR=$4 + +cp -f "$SRC" "$LIBDIR/$LIB.$(LIBVERSION)" + +rm -f "$(LIBDIR)/$LIB.$(LIBVERSION_MAJOR)" +rm -f "$(LIBDIR)/$LIB" +ln -s "$LIB.$(LIBVERSION)" "$(LIBDIR)/$LIB.$(LIBVERSION_MAJOR)" +ln -s "$LIB.$(LIBVERSION_MAJOR)" "$(LIBDIR)/$LIB" diff -r c1a144db699f -r 2309b553c604 make/project.xml --- a/make/project.xml Tue Nov 04 22:38:34 2025 +0100 +++ b/make/project.xml Wed Nov 05 19:40:06 2025 +0100 @@ -38,6 +38,9 @@ ARFLAGS=r STLIB_EXT=.a SHLIB_EXT=.dylib + + SHLIB_LDFLAGS=-dynamiclib -current_version \$(LIBVERSION) -compatibility_version \$(LIBVERSION) + INSTALL_LIB=\$(root_dir)/make/install-lib-macos.sh @@ -48,6 +51,7 @@ ARFLAGS=cr STLIB_EXT=.a SHLIB_EXT=.so + INSTALL_LIB=\$(root_dir)/make/install-lib.sh diff -r c1a144db699f -r 2309b553c604 src/Makefile --- a/src/Makefile Tue Nov 04 22:38:34 2025 +0100 +++ b/src/Makefile Wed Nov 05 19:40:06 2025 +0100 @@ -62,10 +62,8 @@ $(RMFILE) $(libdir)/libucx$(SHLIB_EXT).$(LIBVERSION_MAJOR) $(RMFILE) $(libdir)/libucx$(SHLIB_EXT) $(COPYFILE) $(build_dir)/libucx_static$(STLIB_EXT) $(libdir)/libucx_static$(STLIB_EXT) - $(COPYFILE) $(build_dir)/libucx$(SHLIB_EXT) $(libdir)/libucx$(SHLIB_EXT).$(LIBVERSION) + $(INSTALL_LIB) $(build_dir)/libucx$(SHLIB_EXT) $(libdir) $(LIBVERSION) $(LIBVERSION_MAJOR) $(COPYALL) $(root_dir)/src/cx $(includedir) - $(SYMLINK) libucx$(SHLIB_EXT).$(LIBVERSION) $(libdir)/libucx$(SHLIB_EXT).$(LIBVERSION_MAJOR) - $(SYMLINK) libucx$(SHLIB_EXT).$(LIBVERSION_MAJOR) $(libdir)/libucx$(SHLIB_EXT) $(SHELL) $(root_dir)/make/install-pc-file.sh "$(VERSION)" "$(libdir)" "$(includedir)" FORCE: