]> git.pld-linux.org Git - packages/SDL2_image.git/blame - relax-soname-pattern.patch
up to 2.6.0
[packages/SDL2_image.git] / relax-soname-pattern.patch
CommitLineData
bba13cd2
JP
1From e77f5ac322b24fbcde94a55ed99ba61755c983eb Mon Sep 17 00:00:00 2001
2From: Jan Palus <jpalus@fastmail.com>
3Date: Sun, 10 Jul 2022 18:02:46 +0200
4Subject: [PATCH] autotools: relax soname pattern for dynamic loading
5
6SDL makes assumption that each dynamically loaded library must have
7SONAME matching pattern <libname>.so.<digit>+ hence it discards any file
8that has two (or more) digits after ".so". in practice however SONAME
9might be in the form of ie <libname>.so.<major>.<minor>.
10
11as a solution keep requirement for dynamically loaded files to be named
12<libname>.so.* but consider all the possibilities and prefer the shortest
13one.
14
15Fixes: #289
16From: libsdl-org/SDL#5901
17---
18 configure.ac | 7 ++++++-
19 1 file changed, 6 insertions(+), 1 deletion(-)
20
21diff --git a/configure.ac b/configure.ac
22index ca1013a..9cff1e7 100644
23--- a/configure.ac
24+++ b/configure.ac
25@@ -67,6 +67,11 @@ AC_CHECK_TOOL(RC,[windres],[:])
26 AC_PROG_INSTALL
27 AC_PROG_MAKE_SET
28 PKG_PROG_PKG_CONFIG
29+AC_PROG_AWK
30+
31+if test -z "$AWK"; then
32+ AC_MSG_ERROR([*** Required awk tool not found!])
33+fi
34
35 case "$host" in
36 *-*-beos*)
37@@ -132,7 +137,7 @@ find_lib()
38 host_lib_path="$ac_default_prefix/$base_libdir $ac_default_prefix/$base_bindir /usr/$base_libdir /usr/local/$base_libdir"
39 fi
40 for path in $env_lib_path $gcc_bin_path $gcc_lib_path $host_lib_path; do
41- lib=[`ls -- $path/$1 2>/dev/null | sed -e '/\.so\..*\./d' -e 's,.*/,,' | sort | tail -1`]
42+ lib=[`ls -- $path/$1 2>/dev/null | sed -e 's,.*/,,' | $AWK '{print length() " " $0;}' | sort -n -r | tail -1 | sed 's/^[0-9]\+ //'`]
43 if test x$lib != x; then
44 echo $lib
45 return
46--
472.37.0
48
This page took 0.080202 seconds and 4 git commands to generate.