Sun, 23 Nov 2025 13:15:19 +0100
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 | 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 | SRC=$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
|
9 | LIB=$(basename $1) |
| 1484 | 10 | LIBDIR=$5$2 |
|
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
|
11 | LIBVERSION=$3 |
|
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 | LIBVERSION_MAJOR=$4 |
|
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
|
13 | |
|
1472
c48cf649c10f
fix install-lib.sh - relates #752
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
1471
diff
changeset
|
14 | cp -f "$SRC" "$LIBDIR/$LIB.$LIBVERSION" |
|
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
|
15 | |
|
1472
c48cf649c10f
fix install-lib.sh - relates #752
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
1471
diff
changeset
|
16 | rm -f "$LIBDIR/$LIB.$LIBVERSION_MAJOR" |
|
c48cf649c10f
fix install-lib.sh - relates #752
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
1471
diff
changeset
|
17 | rm -f "$LIBDIR/$LIB" |
|
c48cf649c10f
fix install-lib.sh - relates #752
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
1471
diff
changeset
|
18 | ln -s "$LIB.$LIBVERSION" "$LIBDIR/$LIB.$LIBVERSION_MAJOR" |
|
c48cf649c10f
fix install-lib.sh - relates #752
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
1471
diff
changeset
|
19 | ln -s "$LIB.$LIBVERSION_MAJOR" "$LIBDIR/$LIB" |