make/install-lib-macos.sh

Sun, 23 Nov 2025 13:15:19 +0100

author
Mike Becker <universe@uap-core.de>
date
Sun, 23 Nov 2025 13:15:19 +0100
changeset 1508
dfc0ddd9571e
parent 1484
d72725216f37
permissions
-rwxr-xr-x

optimize sorted insertion by using the infimum instead of the supremum

The reason is that the supremum returns the equal element with the smallest index, and we want the largest.
Therefore, we use the infimum, which already gives us the largest index when there are equal elements, and increase the index by one. The infimum is also guaranteed to exist in that case.

1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 #!/bin/sh
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ] || [ -z "$4" ] ; then
1484
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1473
diff changeset
4 echo "Usage: $0 <src> <libdir> <version> <major_version> [destdir]"
1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 exit 1
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 fi
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 NAME=$(basename $1)
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 LIBNAME=${NAME/.dylib/.$4.dylib}
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 SRC="$1"
1484
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1473
diff changeset
13 LIB_ID="$2/$LIBNAME"
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1473
diff changeset
14 DST="$5$2/$LIBNAME"
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1473
diff changeset
15 LN_DST="$5$2/$NAME"
1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 cp -f "$SRC" "$DST"
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18
1484
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1473
diff changeset
19 install_name_tool -id "$LIB_ID" "$DST"
1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20
1473
944f02992369 protect arguments of rm and ln commands with quotes
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
21 rm -f "$LN_DST"
944f02992369 protect arguments of rm and ln commands with quotes
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
22 ln -s "$LIBNAME" "$LN_DST"

mercurial