diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-06-18 19:48:47 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-06-18 19:48:47 +0100 |
commit | 1494784ae35c6fa7b6a92a80dea93265fc54ccd0 (patch) | |
tree | dbbb1b83e130750c3a55a4287c3a2ec2bbff7af8 /dev-db/kyotocabinet | |
parent | ee74b33422f15493c315bdacf20da95d5b936d3c (diff) |
gentoo auto-resync : 18:06:2023 - 19:48:47
Diffstat (limited to 'dev-db/kyotocabinet')
3 files changed, 134 insertions, 0 deletions
diff --git a/dev-db/kyotocabinet/Manifest b/dev-db/kyotocabinet/Manifest index b2e75496b59a..6eac8c0b94d5 100644 --- a/dev-db/kyotocabinet/Manifest +++ b/dev-db/kyotocabinet/Manifest @@ -2,8 +2,10 @@ AUX fix_configure-1.2.62.patch 1668 BLAKE2B 5a572607b5c848c3616fcccac1e936f9218a AUX kyotocabinet-1.2.76-configure-8-byte-atomics.patch 1250 BLAKE2B 882c4897a40609bbfa1183cb97e80e5ed6d95d0035c30c836e3f252962db822249f8b48934923e816a720d3cbf64a6f47f80cef77528216f3171f332ca3a350b SHA512 4833cecd6c67515e0c59d7161be6891df290ae816593de1bf35718e9c9d8691db221bec5078c5dc7cf56e55b0086d61c415e148a7ee63b2a47ac4885f6d0960e AUX kyotocabinet-1.2.76-flags.patch 894 BLAKE2B 50efb4b21f0101a942eb758213cf703460056a951617298057567d08b116c7e0a631d631eace992ff447bed5b74940d2b60a8adad373cb77fe42b8c40bfcc9fd SHA512 60a15c54994a5f338cf168feb831d858fdd2cadd16ea0c8001ef652e8502797f5920d3fed0a3ec4a6a2d817381b4690410878a18c7c859df34e26b033f48fe03 AUX kyotocabinet-1.2.79-configure-clang16.patch 505 BLAKE2B 86113c69eb70f3d44305566119af61b773252c1fa30857f34af71ff04bc6d6574de266fe6dd716ebf031e61282788e30a076177427bd379fa209df76e86b0bd2 SHA512 aa214f0a4f207dcb667541708af41444db9a5b2e19547e0fc03228173143ccc22cbf359c8214e677530ad746c29ebacb1c48989702dec6f503063ac44b22c871 +AUX kyotocabinet-1.2.79-initialize-parameter-error-clang16.patch 2453 BLAKE2B 42ea518397fdb464198e5701075b6bb92f5702cc4c03f1241851ef93a18ee760fc55c96242d7f4976909e1ebd6f47f3a83513aac3b62880be2458226ef0d9f03 SHA512 5ca4c9bfede8bdc59040707379c6cc5361d6dc5218969f6f45d0d12740d59a6a1fb74a7e277d453f551601228f602941f8af6093130f56f3ef782f433b2baff1 DIST kyotocabinet-1.2.77.tar.gz 949326 BLAKE2B faacde57e8c7fed3fb232ea6fd12b668f2d2ee352cd357d5e16e0d1740cd8f73e223964249efeae50f3ea5d0672117b2410b91ba557ebe1ac7ba4075ac28deab SHA512 f38794c11faa3f4b64097a2e314307e1a6b75ddc495103647ebe52786a689336754496e7083697417ea90436e7fad681f16440975abec9ae917874aa25153e0f DIST kyotocabinet-1.2.79.tar.gz 943804 BLAKE2B 8a12e6dd953a1ba995d5a60126fb2682a07be390698bf98535633af894573aafc63b55497dc869cad14eceb14824ceb4f8c471b9aa1dad51944c35eac0cf4912 SHA512 9243192c81d3aa37cc8c80eb3bdf235192a0919b134cededa2b4178be515d148916e7405e094cbcdd7dbf13bf38a569bf21863afac7cc05d6418cca5853a2ff4 EBUILD kyotocabinet-1.2.77.ebuild 1469 BLAKE2B 81e5c87898efcaa4d7a8d51229b92896975ba19d04d8359f77061e770953f0dac5543bf9d28f051b2ad17c35d45096c287efbc82bdbe263c9750911036ac7a8b SHA512 67eecba0c4beee2500bf897cddbfc583b6c0e184c0664f043a460ffd4458f0d3e7a027142b75ce30899b19fe6f81db6f4f1fed7665b8c3af1ccb79600c8c9e1a EBUILD kyotocabinet-1.2.79-r1.ebuild 1528 BLAKE2B ab359190d3e9183700fc90c5d0441a7e3da1a1d2d984fb264b3524fcf4c03e30d277543760a39e3663a3d6691d26321ebf265dacd4ddcaffea6b95b5b29b77a3 SHA512 3d26b05e066dc4dc7d2843a0c4edd97b4f010b54b50d74394e245871fe5e704dad66458b9b7305abcecc1f741ef292b1a7e308103e28a7d662185a78a0d95e50 +EBUILD kyotocabinet-1.2.79-r2.ebuild 1604 BLAKE2B 9599162786e05bc50f38803a16c8468632a506a8d4f4a406e704bcf60ffb99096f582e415c8b6d174bf64ef7812fbcafbea264fd5fd9ac1cdbc9f830f1e31ec0 SHA512 a81f7e73356a405693412e4932ea7da72e11c8528a14bd31e1f7ef8741205858b87c68dc664401c94d4286f362165589f20701fae25340d87da4bfadb76d7612 MISC metadata.xml 168 BLAKE2B 2e0e000b4c3b6ca04c12903fdbe278415c05a822623c52e9aa95cbbf3d50bcb1246b7edbda7d2f6b559af8950c6374e6e0a69b76319964cfe686bf50b0604a57 SHA512 4dcf45d1809e8390a2d8155c8ebfe0dd610203e392aeab0ccd8a10f42cc8532a4925eff32b35e7a6c35598a4efd288229034ec0732299dbd8cfa0acff705fed3 diff --git a/dev-db/kyotocabinet/files/kyotocabinet-1.2.79-initialize-parameter-error-clang16.patch b/dev-db/kyotocabinet/files/kyotocabinet-1.2.79-initialize-parameter-error-clang16.patch new file mode 100644 index 000000000000..4739a433ab40 --- /dev/null +++ b/dev-db/kyotocabinet/files/kyotocabinet-1.2.79-initialize-parameter-error-clang16.patch @@ -0,0 +1,62 @@ +Without the patch I'm getting the following error/s: +kcthread.cc:671:50: error: cannot initialize a parameter of type 'void *' with an rvalue of type 'int' + while (!__sync_bool_compare_and_swap(&opq_, 0, 1)) { + ^ +kcthread.cc:696:49: error: cannot initialize a parameter of type 'void *' with an rvalue of type 'int' + return __sync_bool_compare_and_swap(&opq_, 0, 1); +--- a/kcthread.cc ++++ b/kcthread.cc +@@ -668,7 +668,7 @@ void SpinLock::lock() { + #elif _KC_GCCATOMIC + _assert_(true); + uint32_t wcnt = 0; +- while (!__sync_bool_compare_and_swap(&opq_, 0, 1)) { ++ while (!__sync_bool_compare_and_swap(&opq_, 0, (void *)1)) { + if (wcnt >= LOCKBUSYLOOP) { + Thread::chill(); + } else { +@@ -693,7 +693,7 @@ bool SpinLock::lock_try() { + return ::InterlockedCompareExchange((LONG*)&opq_, 1, 0) == 0; + #elif _KC_GCCATOMIC + _assert_(true); +- return __sync_bool_compare_and_swap(&opq_, 0, 1); ++ return __sync_bool_compare_and_swap(&opq_, 0, (void *)1); + #else + _assert_(true); + ::pthread_spinlock_t* spin = (::pthread_spinlock_t*)opq_; +@@ -811,7 +811,7 @@ void SlottedSpinLock::lock(size_t idx) { + SlottedSpinLockCore* core = (SlottedSpinLockCore*)opq_; + uint32_t* lock = core->locks + idx; + uint32_t wcnt = 0; +- while (!__sync_bool_compare_and_swap(lock, 0, 1)) { ++ while (!__sync_bool_compare_and_swap(lock, 0, (unsigned int)1)) { + if (wcnt >= LOCKBUSYLOOP) { + Thread::chill(); + } else { +@@ -880,7 +880,7 @@ void SlottedSpinLock::lock_all() { + for (size_t i = 0; i < slotnum; i++) { + uint32_t* lock = locks + i; + uint32_t wcnt = 0; +- while (!__sync_bool_compare_and_swap(lock, 0, 1)) { ++ while (!__sync_bool_compare_and_swap(lock, 0, (unsigned int)1)) { + if (wcnt >= LOCKBUSYLOOP) { + Thread::chill(); + } else { +@@ -1449,7 +1449,7 @@ static void spinrwlocklock(SpinRWLockCore* core) { + } + #elif _KC_GCCATOMIC + _assert_(core); +- while (!__sync_bool_compare_and_swap(&core->sem, 0, 1)) { ++ while (!__sync_bool_compare_and_swap(&core->sem, 0, (unsigned int)1)) { + ::sched_yield(); + } + #else +@@ -1732,7 +1732,7 @@ static void slottedspinrwlocklock(SlottedSpinRWLockCore* core, size_t idx) { + } + #elif _KC_GCCATOMIC + _assert_(core); +- while (!__sync_bool_compare_and_swap(core->sems + idx, 0, 1)) { ++ while (!__sync_bool_compare_and_swap(core->sems + idx, 0, (unsigned int)1)) { + ::sched_yield(); + } + #else diff --git a/dev-db/kyotocabinet/kyotocabinet-1.2.79-r2.ebuild b/dev-db/kyotocabinet/kyotocabinet-1.2.79-r2.ebuild new file mode 100644 index 000000000000..fc4463ca0d3a --- /dev/null +++ b/dev-db/kyotocabinet/kyotocabinet-1.2.79-r2.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools toolchain-funcs + +DESCRIPTION="A straightforward implementation of DBM" +HOMEPAGE="https://dbmx.net/kyotocabinet/" +SRC_URI="https://dbmx.net/kyotocabinet/pkg/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="debug doc examples +lzma +lzo static-libs" + +DEPEND="sys-libs/zlib[static-libs?] + lzma? ( app-arch/xz-utils:=[static-libs?] ) + lzo? ( dev-libs/lzo:=[static-libs?] )" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/fix_configure-1.2.62.patch + "${FILESDIR}"/${PN}-1.2.76-configure-8-byte-atomics.patch + "${FILESDIR}"/${PN}-1.2.76-flags.patch + "${FILESDIR}"/${PN}-1.2.79-configure-clang16.patch + "${FILESDIR}"/${PN}-1.2.79-initialize-parameter-error-clang16.patch +) + +src_prepare() { + default + + sed -i -e "/DOCDIR/d" Makefile.in || die + tc-export AR + + mv configure.in configure.ac || die + eautoreconf +} + +src_configure() { + # We need to set LD_LIBRARY_PATH which will be assigned to RUNENV later + # used by test suite + LD_LIBRARY_PATH=. \ + econf $(use_enable debug) \ + $(use_enable static-libs static) \ + $(use_enable !static-libs shared) \ + $(use_enable lzma) \ + $(use_enable lzo) +} + +src_test() { + emake -j1 check +} + +src_install() { + default + + if ! use static-libs; then + find "${ED}" -name '*.a' -delete || die + fi + + if use doc; then + dodoc -r doc/* + fi + + if use examples; then + docinto example + dodoc example/* + fi +} |