pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/databases/db4 Add support for mutexes on aarch64 with ...
details: https://anonhg.NetBSD.org/pkgsrc/rev/db805a17b3d3
branches: trunk
changeset: 329777:db805a17b3d3
user: thorpej <thorpej%pkgsrc.org@localhost>
date: Thu Feb 14 14:36:06 2019 +0000
description:
Add support for mutexes on aarch64 with GCC. Bump PKGREVISION to 1.
diffstat:
databases/db4/Makefile | 3 +-
databases/db4/distinfo | 7 +++--
databases/db4/patches/patch-ab | 45 +++++++++++++++++++++++++++++++++++++-
databases/db4/patches/patch-ae | 49 ++++++++++++++++++++++++++++++++++++++++-
databases/db4/patches/patch-af | 14 ++++++++++++
5 files changed, 111 insertions(+), 7 deletions(-)
diffs (173 lines):
diff -r 4a2bb4aa2698 -r db805a17b3d3 databases/db4/Makefile
--- a/databases/db4/Makefile Thu Feb 14 14:32:41 2019 +0000
+++ b/databases/db4/Makefile Thu Feb 14 14:36:06 2019 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.71 2017/09/03 08:36:51 wiz Exp $
+# $NetBSD: Makefile,v 1.72 2019/02/14 14:36:06 thorpej Exp $
#
# NOTE:
# When updating this package, a change in the minor (4.n -> 4.(n+1))
@@ -8,6 +8,7 @@
DISTNAME= db-4.8.30
PKGNAME= ${DISTNAME:S/db/db4/}
+PKGREVISION= 1
CATEGORIES= databases
MASTER_SITES= http://download.oracle.com/berkeley-db/
MASTER_SITES+= http://download-uk.oracle.com/berkeley-db/
diff -r 4a2bb4aa2698 -r db805a17b3d3 databases/db4/distinfo
--- a/databases/db4/distinfo Thu Feb 14 14:32:41 2019 +0000
+++ b/databases/db4/distinfo Thu Feb 14 14:36:06 2019 +0000
@@ -1,13 +1,14 @@
-$NetBSD: distinfo,v 1.46 2016/09/08 16:10:24 jperkin Exp $
+$NetBSD: distinfo,v 1.47 2019/02/14 14:36:06 thorpej Exp $
SHA1 (db-4.8.30.tar.gz) = ab36c170dda5b2ceaad3915ced96e41c6b7e493c
RMD160 (db-4.8.30.tar.gz) = dd2fcd4c9b857a91e2f491fd4fadb0c51b993a9c
SHA512 (db-4.8.30.tar.gz) = d1a3c52b0ab54ae3fd6792e6396c9f74d25f36b2eb9e853b67ef9c872508a58c784c7818108d06d184f59601b70cc877916e67dfea6f0ee1ca2b07468c1041f1
Size (db-4.8.30.tar.gz) = 22887305 bytes
SHA1 (patch-aa) = 1004feec022eefbf3fd57b6d9af99edc5a2bf17a
-SHA1 (patch-ab) = 961c4ef5ad84739bd7eae57f407b89f42864b66e
+SHA1 (patch-ab) = 397dcb7e7bd0cb0f266cd460b9d76c8339118bc5
SHA1 (patch-ac) = 045a3b83b9c6c164382ec546b06ae248620552cf
-SHA1 (patch-ae) = 43e574154de93dba60392b09d6ebddbca1036849
+SHA1 (patch-ae) = e47582c71470386a5226408e4d1db31adccadc29
+SHA1 (patch-af) = d9706895e538468f3b442fde3e8d6c9caceaaf4f
SHA1 (patch-db__sql_sqlite_sqliteInt.h) = 7e5579d6c55c8163e35718bdecbce079b1efde3e
SHA1 (patch-dbinc_atomic.h) = d68db1b7e07b35ec070a18f0195b9f3b386114dd
SHA1 (patch-dist_s__sig) = d891a6fabd27a07776bdaa21843563638ecb89f2
diff -r 4a2bb4aa2698 -r db805a17b3d3 databases/db4/patches/patch-ab
--- a/databases/db4/patches/patch-ab Thu Feb 14 14:32:41 2019 +0000
+++ b/databases/db4/patches/patch-ab Thu Feb 14 14:36:06 2019 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-ab,v 1.25 2014/06/07 08:19:14 obache Exp $
+$NetBSD: patch-ab,v 1.26 2019/02/14 14:36:06 thorpej Exp $
--- dist/configure.orig 2010-04-12 20:25:23.000000000 +0000
+++ dist/configure
@@ -173,3 +173,46 @@
hp*) _JNI_INC_SUBDIRS="hp-ux";;
linux*) _JNI_INC_SUBDIRS="linux genunix";;
osf*) _JNI_INC_SUBDIRS="alpha";;
+@@ -19567,6 +19609,31 @@ fi
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+
++# AARCH64/gcc: Linux
++if test "$db_cv_mutex" = no; then
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++
++int
++main ()
++{
++
++#if defined(__aarch64__) && defined(__GNUC__)
++ exit(0);
++#else
++ FAIL TO COMPILE/LINK
++#endif
++
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_compile "$LINENO"; then :
++ db_cv_mutex=AARCH64/gcc-assembly
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++fi
++
+ # MIPS/gcc: Linux
+ if test "$db_cv_mutex" = no; then
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+@@ -19862,6 +19929,10 @@ ARM/gcc-assembly) ADDITIONAL_OBJS="mut_t
+ $as_echo "#define HAVE_MUTEX_ARM_GCC_ASSEMBLY 1" >>confdefs.h
+
+ ;;
++AARCH64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS"
++ $as_echo "#define HAVE_MUTEX_AARCH64_GCC_ASSEMBLY 1" >>confdefs.h
++
++ ;;
+ HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS"
+ $as_echo "#define HAVE_MUTEX_HPPA_MSEM_INIT 1" >>confdefs.h
+
diff -r 4a2bb4aa2698 -r db805a17b3d3 databases/db4/patches/patch-ae
--- a/databases/db4/patches/patch-ae Thu Feb 14 14:32:41 2019 +0000
+++ b/databases/db4/patches/patch-ae Thu Feb 14 14:36:06 2019 +0000
@@ -1,10 +1,55 @@
-$NetBSD: patch-ae,v 1.1 2010/09/28 11:08:29 obache Exp $
+$NetBSD: patch-ae,v 1.2 2019/02/14 14:36:06 thorpej Exp $
+* adds support for mutexes on aarch64
* fixes build failure on MIPS arch with -mips1.
--- dbinc/mutex_int.h.orig 2010-04-12 20:25:22.000000000 +0000
+++ dbinc/mutex_int.h
-@@ -778,10 +778,14 @@ MUTEX_SET(tsl_t *tsl) {
+@@ -491,6 +491,43 @@ typedef unsigned char tsl_t;
+ #endif
+
+ /*********************************************************************
++ * AARCH64/gcc assembly.
++ *********************************************************************/
++
++#ifdef HAVE_MUTEX_AARCH64_GCC_ASSEMBLY
++typedef unsigned int tsl_t;
++
++#ifdef LOAD_ACTUAL_MUTEX_CODE
++static inline int
++MUTEX_SET(tsl_t *tsl) {
++ register tsl_t *__l = tsl;
++ register tsl_t __r;
++ __asm__ volatile(
++ "1: ldxr %w0,[%1]\n"
++ " cbnz %w0,2f\n"
++ " stxr %w0,%w2,[%1]\n"
++ " cbnz %w0,1b\n"
++ " dmb st\n"
++ "2:"
++ : "=&r"(__r)
++ : "r"(__l), "r"(1)
++ : "memory");
++
++ return !__r;
++}
++
++static inline int
++MUTEX_UNSET(tsl_t *tsl) {
++ __asm__ volatile(
++ " dsb sy\n" ::: "memory");
++ return *tsl = 0;
++}
++
++#define MUTEX_INIT(tsl) (MUTEX_UNSET(tsl), 0)
++#endif
++#endif
++
++/*********************************************************************
+ * HPPA/gcc assembly.
+ *********************************************************************/
+ #ifdef HAVE_MUTEX_HPPA_GCC_ASSEMBLY
+@@ -778,10 +815,14 @@ MUTEX_SET(tsl_t *tsl) {
static inline void
MUTEX_UNSET(tsl_t *tsl) {
__asm__ volatile(
diff -r 4a2bb4aa2698 -r db805a17b3d3 databases/db4/patches/patch-af
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/databases/db4/patches/patch-af Thu Feb 14 14:36:06 2019 +0000
@@ -0,0 +1,14 @@
+$NetBSD: patch-af,v 1.1 2019/02/14 14:36:06 thorpej Exp $
+
+--- dist/config.hin.orig 2010-04-12 20:25:23.000000000 +0000
++++ dist/config.hin
+@@ -212,6 +212,9 @@
+ /* Define to 1 to use the GCC compiler and ARM assembly language mutexes. */
+ #undef HAVE_MUTEX_ARM_GCC_ASSEMBLY
+
++/* Define to 1 to use the GCC compiler and AARCH64 assembly language mutexes. */
++#undef HAVE_MUTEX_AARCH64_GCC_ASSEMBLY
++
+ /* Define to 1 to use the Apple/Darwin _spin_lock_try mutexes. */
+ #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY
+
Home |
Main Index |
Thread Index |
Old Index