Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 673322 | Differences between
and this patch

Collapse All | Expand All

(-)a/eclass/db.eclass (-13 / +17 lines)
Lines 1-4 Link Here
1
# Copyright 1999-2020 Gentoo Authors
1
# Copyright 1999-2021 Gentoo Authors
2
# Distributed under the terms of the GNU General Public License v2
2
# Distributed under the terms of the GNU General Public License v2
3
3
4
# @ECLASS: db.eclass
4
# @ECLASS: db.eclass
Lines 23-35 db_fix_so() { Link Here
23
	cd "${LIB}" || die
23
	cd "${LIB}" || die
24
24
25
	# first clean up old symlinks
25
	# first clean up old symlinks
26
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so' -delete || die
26
	local soext=$(get_libname)
27
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so.[23]' -delete || die
27
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*'"${soext#.}" -delete || die
28
	soext=$(get_libname "[23]")
29
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*'"${soext#.}" -delete || die
28
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -delete || die
30
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -delete || die
29
31
30
	# now rebuild all the correct ones
32
	# now rebuild all the correct ones
31
	local ext
33
	local ext
32
	for ext in so a; do
34
	for ext in so dylib a; do
33
		for name in libdb libdb_{cxx,tcl,java,sql,stl}; do
35
		for name in libdb libdb_{cxx,tcl,java,sql,stl}; do
34
			target="$(find . -maxdepth 1 -type f -name "${name}-*.${ext}" |sort -V |tail -n 1)"
36
			target="$(find . -maxdepth 1 -type f -name "${name}-*.${ext}" |sort -V |tail -n 1)"
35
			[[ -n "${target}" ]] && ln -sf ${target//.\//} ${name}.${ext}
37
			[[ -n "${target}" ]] && ln -sf ${target//.\//} ${name}.${ext}
Lines 37-53 db_fix_so() { Link Here
37
	done;
39
	done;
38
40
39
	# db[23] gets some extra-special stuff
41
	# db[23] gets some extra-special stuff
40
	if [[ -f libdb1.so.2 ]]; then
42
	if [[ -f libdb1$(get_libname 2) ]]; then
41
		ln -sf libdb1.so.2 libdb.so.2
43
		ln -sf libdb1$(get_libname 2) libdb$(get_libname 2)
42
		ln -sf libdb1.so.2 libdb1.so
44
		ln -sf libdb1$(get_libname 2) libdb1$(get_libname)
43
		ln -sf libdb1.so.2 libdb-1.so
45
		ln -sf libdb1$(get_libname 2) libdb-1$(get_libname)
44
	fi
46
	fi
45
	# what do we do if we ever get 3.3 ?
47
	# what do we do if we ever get 3.3 ?
46
	local i
48
	local i
47
	for i in libdb libdb_{cxx,tcl,java,sql,stl}; do
49
	for i in libdb libdb_{cxx,tcl,java,sql,stl}; do
48
		if [[ -f ${i}-3.2.so ]]; then
50
		if [[ -f $i-3.2$(get_libname) ]]; then
49
			ln -sf ${i}-3.2.so ${i}-3.so
51
			ln -sf $i-3.2$(get_libname) $i-3$(get_libname)
50
			ln -sf ${i}-3.2.so ${i}.so.3
52
			ln -sf $i-3.2$(get_libname) $i$(get_libname 3)
51
		fi
53
		fi
52
	done
54
	done
53
55
Lines 143-150 db_src_install_usrlibcleanup() { Link Here
143
		mv "${LIB}/libdb_cxx.a" "${LIB}/libdb_cxx-${SLOT}.a" || die
145
		mv "${LIB}/libdb_cxx.a" "${LIB}/libdb_cxx-${SLOT}.a" || die
144
	fi
146
	fi
145
147
146
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so' -delete || die
148
	local soext=$(get_libname)
147
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*so.[23]' -delete || die
149
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*'"${soext#.}" -delete || die
150
	soext=$(get_libname "[23]")
151
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*'"${soext#.}" -delete || die
148
	einfo "removing unversioned static archives"
152
	einfo "removing unversioned static archives"
149
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -delete || die
153
	find "${LIB}" -maxdepth 1 -type l -name 'libdb[1._-]*a' -delete || die
150
154

Return to bug 673322