make/install-lib.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: 1472
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 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
d72725216f37 add DESTDIR support
Mike Becker <universe@uap-core.de>
parents: 1472
diff changeset
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"

mercurial