summaryrefslogtreecommitdiff
path: root/sys-libs/db
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-11-19 03:03:00 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-11-19 03:03:00 +0000
commitf2e359c456b051f95efc92e21299d55a302e58ed (patch)
tree9d844c8fa1373b6f4244c1cfbe55eea7cdf62701 /sys-libs/db
parentf9f6fa91738181ebe9aca71b75d157d8b5df5335 (diff)
gentoo auto-resync : 19:11:2024 - 03:03:00
Diffstat (limited to 'sys-libs/db')
-rw-r--r--sys-libs/db/Manifest10
-rw-r--r--sys-libs/db/db-4.8.30-r9.ebuild6
-rw-r--r--sys-libs/db/db-5.3.28-r10.ebuild6
-rw-r--r--sys-libs/db/db-5.3.28-r11.ebuild240
-rw-r--r--sys-libs/db/db-5.3.28-r9.ebuild6
-rw-r--r--sys-libs/db/db-6.0.35-r5.ebuild8
-rw-r--r--sys-libs/db/files/db-5.3.28-modern-c.patch328
7 files changed, 587 insertions, 17 deletions
diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest
index 2afa983754af..6797556ca236 100644
--- a/sys-libs/db/Manifest
+++ b/sys-libs/db/Manifest
@@ -6,15 +6,17 @@ AUX db-4.8.30-tls-configure.patch 1934 BLAKE2B 0649b13b88b6fd999bcf94fd531c9b013
AUX db-5.1.29-rename-atomic-compare-exchange.patch 769 BLAKE2B a6110550327dbe154ad21a053f8ebcb2a37506228c34858337b1bf375b290a351cd75405f50f567b3b56da6a2871e1f166e6e3b972a92808f841fe6f64cfb159 SHA512 25121cb7aaa08d46fb206a1437bfb2e180c4c3f5866bb02550c49bc5084842b330f9e1c47df6fd2eda72003b9ab510199588ff05a0f2e115e91f3990805dcd8f
AUX db-5.2.28-sqlite-configure-path.patch 733 BLAKE2B 7324ab06fdf2b7c05ad03d4a91d9c62af8e0fe07db9474f3874cb3e8d50fd90e08d85a743d84062ef2ce1895d999572b3d862e3f525e719274614e2c3cf802cf SHA512 18f5fa82c236e6961711b0a41d43d2cd7b4a4b72759df69ba265a49a55023f17b1356b8a5d1c1c539d69eaaaaf4f525adbd7173acb3a8ab7eae838dd10f54021
AUX db-5.3.28-clang16.patch 7870 BLAKE2B f89e7699cc59ed692a7481ac7224e5c47aa480bb2eec5e8d074d0231d08e52a070acb8d77aa54c1aa7678dc36665375b513b95953cdadf777d95e0cddaecdc76 SHA512 47f1da85d015b803b38d8ebcedfc88fd1ef47d06fd2766e88cf05188504b4a502dbbe25ce480fb52cccc491ad1da4c475b33c75e120f2c8bbdc256ab4ee9f2e9
+AUX db-5.3.28-modern-c.patch 7995 BLAKE2B 460aeb995442df2e30a45fe73a4ac7afa732742daf3916d61b51cab68f3dc591e2322dcea94b4027c7b9fae9af1512802af86538975dc54b49c065b218c80af0 SHA512 e443593a475730d06aa07f1c65a6534f794975d8a76afa47affe6304b8b78be6ba46afeca1957701613df7c454b89d9332f0c562e4e1c811dbac5504dda02d55
AUX db-6.0.20-test-link.patch 1395 BLAKE2B 639f40b16fd225a57825387d75ac8bd961b11ffe653a8f2b9fa9526251713e48d8c877624e257f63c6d88a6c601e787ae44120477aa517c37c1e279298dfcaa8 SHA512 206bfe3fce4b4f8476c5d885fe8f004ce4437e42e33a6b8944de780c58bdbd8c0e7380e43113be5efeae86fcd50a12f8fca96ceb38539bb9624898a24395d408
AUX db-6.0.35-sqlite-configure-path.patch 748 BLAKE2B 570c499549fddd62fa4d14a6eb7830dea3da6b60a05c9be6e5e5169dd9ee7b2e032b4ba9669d8de3985a2717101f7b709e1c26efb5a3200d1aa0d6511bed5d16 SHA512 fd8a4eed5d54f3364c5d3509a238db1f1d62b3f13b75ba1e58a20659c83d038904562d32cc4cdde41b324623459e50071b507979b3fedbc85f2231e6784f1227
DIST db-4.8.30.tar.gz 22887305 BLAKE2B 10487580a371fa97ef5e468e1fcc4af68490934a82467da88b723f7d4ce403cd5f2b77bd95c218dda58161fe30bfef81f5093a8e5176f5ad5f482251c07c6423 SHA512 d1a3c52b0ab54ae3fd6792e6396c9f74d25f36b2eb9e853b67ef9c872508a58c784c7818108d06d184f59601b70cc877916e67dfea6f0ee1ca2b07468c1041f1
DIST db-5.3.28.tar.gz 35090431 BLAKE2B 5b77a4ec0945fa96ce6c2b452fb4b029295e037fa64d5ff8dcb3b5e01ee3501fd75d9a73b8f5fa54d8907717d93546fbb5348ee70119e877fa2f17d301ecf50d SHA512 e91bbe550fc147a8be7e69ade86fdb7066453814971b2b0223f7d17712bd029a8eff5b2b6b238042ff6ec1ffa6879d44cb95c5645a922fee305c26c3eeaee090
DIST db-6.0.35.tar.gz 36532251 BLAKE2B 22fbe557ccc13e4b936db8ca7d6ba11ce42e477bbf39f7e472067e06fb5910b1147fa58a44ac944c24a51ea839f1c61edda6bd8f3c450acac0c13d7fdba11e89 SHA512 002db1553def44efa715095b04b2bac2de7450cdc7142586d1d8b5d8ce79ee5e98f824b3bd276cd586ca932dc51ed35a9ffbed95b2b9847264f262cfa092479d
EBUILD db-4.8.30-r8.ebuild 4535 BLAKE2B 4277f044232d6cbf4a16f4afef428d5eec22a69c66d6404ee516525eed2c667bd442c8da2b85723b05c95e3fbb9e131ef8e308f9c17c7a9d6eb29e457f57dde8 SHA512 2f93ab8e19bfc04f41f2156a0fe8854dace97e37a6158197cf13321abd6bf7dc54541d6cf35670c5d6766f5298e9eea9f489c12634557f26b449e545206d50da
-EBUILD db-4.8.30-r9.ebuild 4588 BLAKE2B f8fa4f4e9c375d7e6e51f684627571afdc043704db66c64bbe4181249fa0db35f20936f38cf66b67b76fde2378169038406a6c6b8432ee4d14cbb670253c9e53 SHA512 2a7bcf3738beb9abffef180fbbae92fdbd3ed574fd556bd05cc1761960d00e1a5f68c2fa5b400c82ae64e550727b93ed8384a8835efeca08d87a33b687c08abc
-EBUILD db-5.3.28-r10.ebuild 6562 BLAKE2B ca35fe352b3d5fac8e3d1e8880439fc04b847106a52c527a0726577b8b2f5d6289ac67c56b0f00e5a2b246716712e7cf37f75a134c19f0c48d5e636cc22facb2 SHA512 8c3194c12085d6d4ed77184648c864c442f2ae56bf18ce92153662e8c0f50e96c8ee587406a1b313733159e592613e72a97f6dc470324dc2e26248477dc776ee
-EBUILD db-5.3.28-r9.ebuild 6509 BLAKE2B 177bc94e6d5d2daef95aaf1c2cb32af3a29471c81f00d8160795fd75d369e2ce3bfd03af9a4f1fd3421ea4b3b54ababefa5e8ea4f6ef934310e9ba27189e0a87 SHA512 f669507f0058241157fb5913d5c2acc4dd370a2875c63e8d818c1b59c9fee45265ccca5b4efeabf383971826c911c5f7723b3724a728621ec7d4b5bcb5f7ecc1
+EBUILD db-4.8.30-r9.ebuild 4591 BLAKE2B 5d79d0de9b21202b9cb7ec9e773bf99902612e0e1e504ac7bd42fdc8814f89348ae11934e1e880a6b4a1d138a4ba4af39dadb1a87c8f5d4d6b24e0c84c14702f SHA512 614f45a3d5e7f05b572a5c47ca55bc16f9106f0050cbc4384eec9d3ae2a8d5fc0a377827dcbe28fdcb90acd3728fe5744ccdd48bf6d877bf6e6fd027be4b9318
+EBUILD db-5.3.28-r10.ebuild 6565 BLAKE2B 9196f6f456b03ec3a5961e7c2932afe1d2b92965b5ce469104f39cf4debdb9567f12e35403ef979d64ab9f96935864195b6c972055cf9d63b0ae987cb16f01f3 SHA512 e4bc52d2ccd31cb57318c2cd7b97eaff8ed142fdf61d9d80fa3fed886786630cfb762be4e27075978fe29a7718e47fb849554a5f12b53060c5821652eae5d1e9
+EBUILD db-5.3.28-r11.ebuild 6569 BLAKE2B 99180b94d704cec204403b784003a447ffe1caf83b6ec113c9c23770c732328e8c6acf2f4c763edbf2c73ff30a63697a0e2bf2134357a96b6aa8bb25c03079d8 SHA512 56837ce25285574274136f6bd3915d77383f40c48fa3ad31b5615b47e0bb23664e254bf750ea9b987657e7450c1122a19ffe76bef8632edbff31c4a678579b70
+EBUILD db-5.3.28-r9.ebuild 6512 BLAKE2B 8b65b58d10b361d700fa30e66c7b9ff065d41103d2993ce1c86927a334cfa3352b6a976ace0e71f149d423fd6ddd8f575bb42e2b20e058b457ca89c512c51c72 SHA512 c63545695b583473539291946166a254ed71e527a1635dfc35c175114440a86c932f7e3828cd2bb447d611c284bbae6c478ddf93145a59d0821b0113860b1caf
EBUILD db-6.0.35-r4.ebuild 6369 BLAKE2B eb56540e960988d4448664b4d7e2d5830c5eec294a141da16123e355ef2f1e92b23ca09b08adf0ac09d662745d55731be5d4838a1cce49b827650b7f39c647a1 SHA512 afc368aee96ce55279e374016e15ffa118ff575638555c7e574a696789695dfec44fc301f1d7869f67344c31c8d743593921a5a199f59e3a17905653376ab671
-EBUILD db-6.0.35-r5.ebuild 6418 BLAKE2B 3260b73e4e6a9f58524681c94c5a021f28329c56b899f498e1f215daeab21428b46a6a1fd108d46e31844e7714a1fb93fb45c68bda7305554dbdef9e8ddfd098 SHA512 102623221838837762d345ba5349d475e3518f7ba1c23fd5d29adeffc560e4627c0adefe7f8f86c6102ed04a27102ba1b7ae06f1d47b48f2b5eacd1d84dc2dcf
+EBUILD db-6.0.35-r5.ebuild 6421 BLAKE2B 7d57041db8ba6299f1a15fa5aac6fadff0c8dea2d0bca1546919c3401b5e0669f5fdbdb25ba0073b97b06b51e91bdd82932b9cba5b4cf1122442093017bc9729 SHA512 4c271e1ce6227a90935926a5e8cdd93948adf2b01ecb6094053a0ccab7e0cb31cc7e10b73bceda79f21d5bd8107721406ca89e11b97e7757be825d04b9ce30af
MISC metadata.xml 1261 BLAKE2B 81cfdd965f4e2e0342d812c6c1fd602c43ca8bbbb23bd12f230444d26bee578f9ba2af781a8390bb754b66b4699c6aada379dea90397798f8a489a7fd11b85fb SHA512 08d43450d54a8718639ae2637f13da7626415e99a8fa5948c5107b7a973161f31b3b0cf58dc538dd48a18db996f020d57d20edefbcdd8e37c6e58c206c3aab6e
diff --git a/sys-libs/db/db-4.8.30-r9.ebuild b/sys-libs/db/db-4.8.30-r9.ebuild
index 1905edf0726f..fbc3bc584bbb 100644
--- a/sys-libs/db/db-4.8.30-r9.ebuild
+++ b/sys-libs/db/db-4.8.30-r9.ebuild
@@ -19,10 +19,10 @@ fi
S="${WORKDIR}/${MY_P}/build_unix"
DESCRIPTION="Oracle Berkeley DB"
-HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
-SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
+HOMEPAGE="https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+SRC_URI="https://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do
- SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
+ SRC_URI+=" https://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
done
LICENSE="Sleepycat"
diff --git a/sys-libs/db/db-5.3.28-r10.ebuild b/sys-libs/db/db-5.3.28-r10.ebuild
index c4d02b964a3e..3f343ede5d7f 100644
--- a/sys-libs/db/db-5.3.28-r10.ebuild
+++ b/sys-libs/db/db-5.3.28-r10.ebuild
@@ -21,10 +21,10 @@ RESTRICT="!test? ( test )"
S_BASE="${WORKDIR}/${MY_P}"
S="${S_BASE}/build_unix"
DESCRIPTION="Oracle Berkeley DB"
-HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
-SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
+HOMEPAGE="https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+SRC_URI="https://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do
- SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
+ SRC_URI+=" https://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
done
LICENSE="Sleepycat"
diff --git a/sys-libs/db/db-5.3.28-r11.ebuild b/sys-libs/db/db-5.3.28-r11.ebuild
new file mode 100644
index 000000000000..3cc8373601a7
--- /dev/null
+++ b/sys-libs/db/db-5.3.28-r11.ebuild
@@ -0,0 +1,240 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools db flag-o-matic multilib-minimal toolchain-funcs
+
+#Number of official patches
+#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"`
+PATCHNO="${PV/*.*.*_p}"
+if [[ ${PATCHNO} == "${PV}" ]] ; then
+ MY_PV="${PV}"
+ MY_P="${P}"
+ PATCHNO=0
+else
+ MY_PV="${PV/_p${PATCHNO}}"
+ MY_P="${PN}-${MY_PV}"
+fi
+
+RESTRICT="!test? ( test )"
+
+S_BASE="${WORKDIR}/${MY_P}"
+S="${S_BASE}/build_unix"
+DESCRIPTION="Oracle Berkeley DB"
+HOMEPAGE="https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+SRC_URI="https://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
+for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do
+ SRC_URI+=" https://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
+done
+
+LICENSE="Sleepycat"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc cxx tcl test"
+
+REQUIRED_USE="test? ( tcl )"
+
+# the entire testsuite needs the TCL functionality
+DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )
+ test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )"
+RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )"
+# bug #841698
+# Need binutils for tc-ld-force-bfd
+BDEPEND="
+ dev-build/autoconf-archive
+ sys-devel/binutils:*
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/db${SLOT}/db.h
+)
+
+PATCHES=(
+ # sqlite configure call has an extra leading ..
+ # upstreamed:5.2.36, missing in 5.3.x
+ "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch
+
+ # The upstream testsuite copies .lib and the binaries for each parallel test
+ # core, ~300MB each. This patch uses links instead, saves a lot of space.
+ "${FILESDIR}"/${PN}-6.0.20-test-link.patch
+
+ # Needed when compiling with clang
+ "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch
+ "${FILESDIR}"/${PN}-5.3.28-modern-c.patch
+ "${FILESDIR}"/${PN}-4.8.30-tls-configure.patch
+)
+
+src_prepare() {
+ cd "${S_BASE}" || die
+ for (( i=1 ; i<=${PATCHNO} ; i++ ))
+ do
+ eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}"
+ done
+
+ default
+
+ # Upstream release script grabs the dates when the script was run, so lets
+ # end-run them to keep the date the same.
+ export REAL_DB_RELEASE_DATE="$(awk \
+ '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \
+ "${S_BASE}"/dist/configure)"
+ sed -r \
+ -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \
+ -i dist/RELEASE || die
+
+ cd dist || die
+ rm aclocal/libtool.m4 || die
+ sed \
+ -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \
+ -i configure.ac || die
+ sed \
+ -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \
+ -i aclocal/programs.m4 || die
+
+ AT_M4DIR="aclocal" eautoreconf
+
+ # They do autoconf and THEN replace the version variables :(
+ . ./RELEASE
+ local v ev
+ for v in \
+ DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \
+ DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \
+ DB_VERSION \
+ DB_RELEASE_DATE ; do
+ ev="__EDIT_${v}__"
+ sed -e "s/${ev}/${!v}/g" -i configure || die
+ done
+
+ # This is a false positive skip in the tests as the test-reviewer code
+ # looks for 'Skipping\s'
+ sed \
+ -e '/db_repsite/s,Skipping:,Skipping,g' \
+ -i "${S_BASE}"/test/tcl/reputils.tcl || die
+}
+
+src_configure() {
+ # Force bfd before calling multilib_toolchain_setup
+ tc-ld-force-bfd #470634 #729510
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ # sql_compat will cause a collision with sqlite3
+ #--enable-sql_compat
+ # Don't --enable-sql* because we don't want to use bundled sqlite.
+ # See Gentoo bug #605688
+ --enable-compat185
+ --enable-dbm
+ --enable-o_direct
+ --without-uniquename
+ --disable-sql
+ --disable-sql_codegen
+ --disable-sql_compat
+ --disable-static
+ --disable-java
+ $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly)
+ $(use_enable cxx)
+ $(use_enable cxx stl)
+ $(use_enable test)
+ )
+
+ # compilation with -O0 fails on amd64, see bug #171231
+ if [[ ${ABI} == amd64 ]]; then
+ local CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
+ replace-flags -O0 -O2
+ is-flagq -O[s123] || append-flags -O2
+ fi
+
+ # Add linker versions to the symbols. Easier to do, and safer than header file
+ # mumbo jumbo.
+ append-ldflags -Wl,--default-symver
+
+ # Bug #270851: test needs TCL support
+ if use tcl || use test ; then
+ myconf+=(
+ --enable-tcl
+ --with-tcl="${EPREFIX}/usr/$(get_libdir)"
+ )
+ else
+ myconf+=(--disable-tcl )
+ fi
+
+ ECONF_SOURCE="${S_BASE}"/dist \
+ STRIP="true" \
+ econf "${myconf[@]}"
+
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ db_src_install_headerslot
+
+ db_src_install_usrlibcleanup
+}
+
+multilib_src_install_all() {
+ db_src_install_usrbinslot
+
+ db_src_install_doc
+
+ dodir /usr/sbin
+ # This file is not always built, and no longer exists as of db-4.8
+ if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then
+ mv "${ED}"/usr/bin/berkeley_db_svc \
+ "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die
+ fi
+
+ # no static libraries
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ multilib_foreach_abi db_fix_so
+}
+
+pkg_postrm() {
+ multilib_foreach_abi db_fix_so
+}
+
+src_test() {
+ # db_repsite is impossible to build, as upstream strips those sources.
+ # db_repsite is used directly in the setup_site_prog,
+ # setup_site_prog is called from open_site_prog
+ # which is called only from tests in the multi_repmgr group.
+ #sed -ri \
+ # -e '/set subs/s,multi_repmgr,,g' \
+ # "${S_BASE}/test/testparams.tcl"
+ sed -r \
+ -e '/multi_repmgr/d' \
+ -i "${S_BASE}/test/tcl/test.tcl" || die
+
+ # This is the only failure in 5.2.28 so far, and looks like a false positive.
+ # Repmgr018 (btree): Test of repmgr stats.
+ # Repmgr018.a: Start a master.
+ # Repmgr018.b: Start a client.
+ # Repmgr018.c: Run some transactions at master.
+ # Rep_test: btree 20 key/data pairs starting at 0
+ # Rep_test.a: put/get loop
+ # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1
+ sed -r \
+ -e '/set parms.*repmgr018/d' \
+ -e 's/repmgr018//g' \
+ -i "${S_BASE}/test/tcl/test.tcl" || die
+
+ multilib-minimal_src_test
+}
+
+multilib_src_test() {
+ multilib_is_native_abi || return
+
+ S="${BUILD_DIR}" db_src_test
+}
diff --git a/sys-libs/db/db-5.3.28-r9.ebuild b/sys-libs/db/db-5.3.28-r9.ebuild
index 9ccd5575ff57..a2d124a37b1d 100644
--- a/sys-libs/db/db-5.3.28-r9.ebuild
+++ b/sys-libs/db/db-5.3.28-r9.ebuild
@@ -21,10 +21,10 @@ RESTRICT="!test? ( test )"
S_BASE="${WORKDIR}/${MY_P}"
S="${S_BASE}/build_unix"
DESCRIPTION="Oracle Berkeley DB"
-HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
-SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
+HOMEPAGE="https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+SRC_URI="https://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do
- SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
+ SRC_URI+=" https://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
done
LICENSE="Sleepycat"
diff --git a/sys-libs/db/db-6.0.35-r5.ebuild b/sys-libs/db/db-6.0.35-r5.ebuild
index 5e4a1ba38433..7c0941edd6b2 100644
--- a/sys-libs/db/db-6.0.35-r5.ebuild
+++ b/sys-libs/db/db-6.0.35-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -21,10 +21,10 @@ RESTRICT="!test? ( test )"
S_BASE="${WORKDIR}/${MY_P}"
S="${S_BASE}/build_unix"
DESCRIPTION="Oracle Berkeley DB"
-HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
-SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
+HOMEPAGE="https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+SRC_URI="https://download.oracle.com/berkeley-db/${MY_P}.tar.gz"
for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do
- SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
+ SRC_URI+=" https://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}"
done
LICENSE="AGPL-3"
diff --git a/sys-libs/db/files/db-5.3.28-modern-c.patch b/sys-libs/db/files/db-5.3.28-modern-c.patch
new file mode 100644
index 000000000000..8c1755fe497f
--- /dev/null
+++ b/sys-libs/db/files/db-5.3.28-modern-c.patch
@@ -0,0 +1,328 @@
+https://bugs.gentoo.org/883413
+--- a/dist/aclocal/clock.m4
++++ b/dist/aclocal/clock.m4
+@@ -20,12 +20,14 @@ esac
+ # existence to mean the clock really exists.
+ AC_CACHE_CHECK([for clock_gettime monotonic clock], db_cv_clock_monotonic, [
+ AC_TRY_RUN([
++#include <time.h>
+ #include <sys/time.h>
+-main() {
++int main(void) {
+ struct timespec t;
+ return (clock_gettime(CLOCK_MONOTONIC, &t) != 0);
+ }], db_cv_clock_monotonic=yes, db_cv_clock_monotonic=no,
+ AC_TRY_LINK([
++#include <time.h>
+ #include <sys/time.h>], [
+ struct timespec t;
+ clock_gettime(CLOCK_MONOTONIC, &t);
+--- a/dist/aclocal/mmap.m4
++++ b/dist/aclocal/mmap.m4
+@@ -28,8 +28,10 @@ if test "$mmap_ok" = "yes" ; then
+ /* Not all these includes are needed, but the minimal set varies from
+ * system to system.
+ */
++ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
++ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>
+@@ -42,13 +44,12 @@ if test "$mmap_ok" = "yes" ; then
+ #define MAP_FAILED (-1)
+ #endif
+
+- int catch_sig(sig)
+- int sig;
++ void catch_sig(int sig)
+ {
+ exit(1);
+ }
+
+- main() {
++ int main(void) {
+ const char *underlying;
+ unsigned gapsize;
+ char *base;
+--- a/dist/aclocal/mutex.m4
++++ b/dist/aclocal/mutex.m4
+@@ -5,7 +5,7 @@ AC_DEFUN(AM_PTHREADS_SHARED, [
+ AC_TRY_RUN([
+ #include <stdlib.h>
+ #include <pthread.h>
+-main() {
++int main(void) {
+ pthread_cond_t cond;
+ pthread_mutex_t mutex;
+ pthread_condattr_t condattr;
+@@ -49,7 +49,7 @@ AC_DEFUN(AM_PTHREADS_PRIVATE, [
+ AC_TRY_RUN([
+ #include <stdlib.h>
+ #include <pthread.h>
+-main() {
++int main(void) {
+ pthread_cond_t cond;
+ pthread_mutex_t mutex;
+ pthread_condattr_t condattr;
+@@ -89,7 +89,7 @@ AC_DEFUN(AM_PTHREADS_CONDVAR_DUPINITCHK, [
+ AC_TRY_RUN([
+ #include <stdlib.h>
+ #include <pthread.h>
+-main() {
++int main(void) {
+ pthread_cond_t cond;
+ pthread_condattr_t condattr;
+ exit(pthread_condattr_init(&condattr) ||
+@@ -110,7 +110,7 @@ AC_DEFUN(AM_PTHREADS_RWLOCKVAR_DUPINITCHK, [
+ AC_TRY_RUN([
+ #include <stdlib.h>
+ #include <pthread.h>
+-main() {
++int main(void) {
+ pthread_rwlock_t rwlock;
+ pthread_rwlockattr_t rwlockattr;
+ exit(pthread_rwlockattr_init(&rwlockattr) ||
+@@ -227,6 +227,7 @@ if test "$db_cv_mutex" = no; then
+ # LWP threads: _lwp_XXX
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_LINK([
++ #include <stdlib.h>
+ #include <synch.h>],[
+ static lwp_mutex_t mi = SHAREDMUTEX;
+ static lwp_cond_t ci = SHAREDCV;
+@@ -243,6 +244,7 @@ if test "$db_cv_mutex" = no; then
+ LIBS="$LIBS -lthread"
+ AC_TRY_LINK([
+ #include <thread.h>
++ #include <stdlib.h>
+ #include <synch.h>],[
+ mutex_t mutex;
+ cond_t cond;
+@@ -258,6 +260,7 @@ if test "$db_cv_mutex" = no; then
+ if test "$db_cv_mutex" = no -o "$db_cv_mutex" = ui_only; then
+ AC_TRY_LINK([
+ #include <thread.h>
++ #include <stdlib.h>
+ #include <synch.h>],[
+ mutex_t mutex;
+ cond_t cond;
+@@ -282,7 +285,7 @@ if test "$db_cv_mutex" = no; then
+ # x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux
+ AC_TRY_COMPILE(,[
+ #if (defined(i386) || defined(__i386__)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -291,7 +294,7 @@ if test "$db_cv_mutex" = no; then
+ # x86_64/gcc: FreeBSD, NetBSD, BSD/OS, Linux
+ AC_TRY_COMPILE(,[
+ #if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -314,7 +317,7 @@ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__sparc__) && defined(__GNUC__)
+ asm volatile ("membar #StoreStore|#StoreLoad|#LoadStore");
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -356,7 +359,7 @@ AC_TRY_LINK([
+ msem_init(&x, 0);
+ msem_lock(&x, 0);
+ msem_unlock(&x, 0);
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -373,7 +376,7 @@ AC_TRY_LINK([
+ msem_init(&x, 0);
+ msem_lock(&x, 0);
+ msem_unlock(&x, 0);
+- exit(0);
++ return 0;
+ ], [db_cv_mutex=UNIX/msem_init])
+ fi
+
+@@ -395,7 +398,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__USLC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -452,7 +455,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__alpha) && defined(__DECC)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -463,7 +466,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__alpha) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -474,7 +477,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__arm__) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -485,7 +488,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if (defined(__mips) || defined(__mips__)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -496,7 +499,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -507,7 +510,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -518,7 +521,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if (defined(mc68020) || defined(sun3)) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -529,7 +532,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__MVS__) && defined(__IBMC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -540,7 +543,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__s390__) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -551,7 +554,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(__ia64) && defined(__GNUC__)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -562,7 +565,7 @@ fi
+ if test "$db_cv_mutex" = no; then
+ AC_TRY_COMPILE(,[
+ #if defined(_UTS)
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -910,9 +913,9 @@ fi
+ if test "$db_cv_atomic" = no; then
+ AC_TRY_COMPILE(,[
+ #if ((defined(i386) || defined(__i386__)) && defined(__GNUC__))
+- exit(0);
++ return 0;
+ #elif ((defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__))
+- exit(0);
++ return 0;
+ #else
+ FAIL TO COMPILE/LINK
+ #endif
+@@ -921,6 +924,7 @@ fi
+
+ if test "$db_cv_atomic" = no; then
+ AC_TRY_LINK([
++#include <stdlib.h>
+ #include <sys/atomic.h>],[
+ volatile unsigned val = 1;
+ exit (atomic_inc_uint_nv(&val) != 2 ||
+--- a/dist/aclocal/sequence.m4
++++ b/dist/aclocal/sequence.m4
+@@ -43,7 +43,9 @@ AC_DEFUN(AM_SEQUENCE_CONFIGURE, [
+ # test, which won't test for the appropriate printf format strings.
+ if test "$db_cv_build_sequence" = "yes"; then
+ AC_TRY_RUN([
+- main() {
++ #include <stdio.h>
++ #include <string.h>
++ int main(void) {
+ $db_cv_seq_type l;
+ unsigned $db_cv_seq_type u;
+ char buf@<:@100@:>@;
+@@ -59,7 +61,10 @@ AC_DEFUN(AM_SEQUENCE_CONFIGURE, [
+ return (1);
+ return (0);
+ }],, [db_cv_build_sequence="no"],
+- AC_TRY_LINK(,[
++ AC_TRY_LINK([
++ #include <stdio.h>
++ #include <string.h>
++ ],[
+ $db_cv_seq_type l;
+ unsigned $db_cv_seq_type u;
+ char buf@<:@100@:>@;
+--- a/dist/aclocal/types.m4
++++ b/dist/aclocal/types.m4
+@@ -69,7 +69,7 @@ AC_SUBST(stdint_h_decl)
+ AC_MSG_CHECKING(for stdint.h)
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
+ #include <stdint.h>
+- int main() {
++ int main(void) {
+ uint_least8_t x=0;
+ return x;
+ }])],[AC_MSG_RESULT(yes)
+@@ -77,7 +77,7 @@ if test "$db_cv_cxx" = "yes"; then
+ AC_MSG_CHECKING([if stdint.h can be used by C++])
+ AC_LANG_PUSH(C++)
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([#include <stdint.h>
+- int main() {
++ int main(void) {
+ uint_least8_t x=0;
+ return x;
+ }])],[AC_MSG_RESULT(yes)