head 1.9; access; symbols pkgsrc-2026Q2:1.9.0.6 pkgsrc-2026Q2-base:1.9 pkgsrc-2026Q1:1.9.0.4 pkgsrc-2026Q1-base:1.9 pkgsrc-2025Q4:1.9.0.2 pkgsrc-2025Q4-base:1.9 pkgsrc-2025Q3:1.8.0.54 pkgsrc-2025Q3-base:1.8 pkgsrc-2025Q2:1.8.0.52 pkgsrc-2025Q2-base:1.8 pkgsrc-2025Q1:1.8.0.50 pkgsrc-2025Q1-base:1.8 pkgsrc-2024Q4:1.8.0.48 pkgsrc-2024Q4-base:1.8 pkgsrc-2024Q3:1.8.0.46 pkgsrc-2024Q3-base:1.8 pkgsrc-2024Q2:1.8.0.44 pkgsrc-2024Q2-base:1.8 pkgsrc-2024Q1:1.8.0.42 pkgsrc-2024Q1-base:1.8 pkgsrc-2023Q4:1.8.0.40 pkgsrc-2023Q4-base:1.8 pkgsrc-2023Q3:1.8.0.38 pkgsrc-2023Q3-base:1.8 pkgsrc-2023Q2:1.8.0.36 pkgsrc-2023Q2-base:1.8 pkgsrc-2023Q1:1.8.0.34 pkgsrc-2023Q1-base:1.8 pkgsrc-2022Q4:1.8.0.32 pkgsrc-2022Q4-base:1.8 pkgsrc-2022Q3:1.8.0.30 pkgsrc-2022Q3-base:1.8 pkgsrc-2022Q2:1.8.0.28 pkgsrc-2022Q2-base:1.8 pkgsrc-2022Q1:1.8.0.26 pkgsrc-2022Q1-base:1.8 pkgsrc-2021Q4:1.8.0.24 pkgsrc-2021Q4-base:1.8 pkgsrc-2021Q3:1.8.0.22 pkgsrc-2021Q3-base:1.8 pkgsrc-2021Q2:1.8.0.20 pkgsrc-2021Q2-base:1.8 pkgsrc-2021Q1:1.8.0.18 pkgsrc-2021Q1-base:1.8 pkgsrc-2020Q4:1.8.0.16 pkgsrc-2020Q4-base:1.8 pkgsrc-2020Q3:1.8.0.14 pkgsrc-2020Q3-base:1.8 pkgsrc-2020Q2:1.8.0.12 pkgsrc-2020Q2-base:1.8 pkgsrc-2020Q1:1.8.0.8 pkgsrc-2020Q1-base:1.8 pkgsrc-2019Q4:1.8.0.10 pkgsrc-2019Q4-base:1.8 pkgsrc-2019Q3:1.8.0.6 pkgsrc-2019Q3-base:1.8 pkgsrc-2019Q2:1.8.0.4 pkgsrc-2019Q2-base:1.8 pkgsrc-2019Q1:1.8.0.2 pkgsrc-2019Q1-base:1.8 pkgsrc-2018Q4:1.7.0.22 pkgsrc-2018Q4-base:1.7 pkgsrc-2018Q3:1.7.0.20 pkgsrc-2018Q3-base:1.7 pkgsrc-2018Q2:1.7.0.18 pkgsrc-2018Q2-base:1.7 pkgsrc-2018Q1:1.7.0.16 pkgsrc-2018Q1-base:1.7 pkgsrc-2017Q4:1.7.0.14 pkgsrc-2017Q4-base:1.7 pkgsrc-2017Q3:1.7.0.12 pkgsrc-2017Q3-base:1.7 pkgsrc-2017Q2:1.7.0.8 pkgsrc-2017Q2-base:1.7 pkgsrc-2017Q1:1.7.0.6 pkgsrc-2017Q1-base:1.7 pkgsrc-2016Q4:1.7.0.4 pkgsrc-2016Q4-base:1.7 pkgsrc-2016Q3:1.7.0.2 pkgsrc-2016Q3-base:1.7 pkgsrc-2016Q2:1.5.0.18 pkgsrc-2016Q2-base:1.5 pkgsrc-2016Q1:1.5.0.16 pkgsrc-2016Q1-base:1.5 pkgsrc-2015Q4:1.5.0.14 pkgsrc-2015Q4-base:1.5 pkgsrc-2015Q3:1.5.0.12 pkgsrc-2015Q3-base:1.5 pkgsrc-2015Q2:1.5.0.10 pkgsrc-2015Q2-base:1.5 pkgsrc-2015Q1:1.5.0.8 pkgsrc-2015Q1-base:1.5 pkgsrc-2014Q4:1.5.0.6 pkgsrc-2014Q4-base:1.5 pkgsrc-2014Q3:1.5.0.4 pkgsrc-2014Q3-base:1.5 pkgsrc-2014Q2:1.5.0.2 pkgsrc-2014Q2-base:1.5 pkgsrc-2014Q1:1.4.0.18 pkgsrc-2014Q1-base:1.4 pkgsrc-2013Q4:1.4.0.16 pkgsrc-2013Q4-base:1.4 pkgsrc-2013Q3:1.4.0.14 pkgsrc-2013Q3-base:1.4 pkgsrc-2013Q2:1.4.0.12 pkgsrc-2013Q2-base:1.4 pkgsrc-2013Q1:1.4.0.10 pkgsrc-2013Q1-base:1.4 pkgsrc-2012Q4:1.4.0.8 pkgsrc-2012Q4-base:1.4 pkgsrc-2012Q3:1.4.0.6 pkgsrc-2012Q3-base:1.4 pkgsrc-2012Q2:1.4.0.4 pkgsrc-2012Q2-base:1.4 pkgsrc-2012Q1:1.4.0.2 pkgsrc-2012Q1-base:1.4 pkgsrc-2011Q4:1.3.0.2 pkgsrc-2011Q4-base:1.3 pkgsrc-2011Q3:1.2.0.10 pkgsrc-2011Q3-base:1.2 pkgsrc-2011Q2:1.2.0.8 pkgsrc-2011Q2-base:1.2 pkgsrc-2011Q1:1.2.0.6 pkgsrc-2011Q1-base:1.2 pkgsrc-2010Q4:1.2.0.4 pkgsrc-2010Q4-base:1.2 pkgsrc-2010Q3:1.2.0.2 pkgsrc-2010Q3-base:1.2 pkgsrc-2010Q2:1.1.1.1.0.2 pkgsrc-2010Q2-base:1.1.1.1 pkgsrc-base:1.1.1.1 TNF:1.1.1; locks; strict; comment @# @; 1.9 date 2025.12.16.10.19.11; author hauke; state Exp; branches; next 1.8; commitid GK7VOSVRLvA5sCmG; 1.8 date 2019.02.19.15.18.19; author hauke; state Exp; branches; next 1.7; commitid 9TgW4fq8j2BVdocB; 1.7 date 2016.08.26.12.40.25; author richard; state Exp; branches; next 1.6; commitid EPUe6kdTR6sEuOjz; 1.6 date 2016.08.25.06.18.57; author richard; state Exp; branches; next 1.5; commitid aKml5RsNrE0PqEjz; 1.5 date 2014.04.22.14.42.35; author asau; state Exp; branches; next 1.4; commitid qmI4cM7iBG4FJGxx; 1.4 date 2012.01.18.13.46.50; author adam; state Exp; branches; next 1.3; 1.3 date 2011.10.03.10.54.46; author adam; state Exp; branches; next 1.2; 1.2 date 2010.09.16.07.53.32; author adam; state Exp; branches; next 1.1; 1.1 date 2010.06.02.12.08.53; author adam; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2010.06.02.12.08.53; author adam; state Exp; branches; next ; desc @@ 1.9 log @databases/db[45] -- Add mutex support for SPARC v[78] machines. Thanks go to John D. Baker for submitting an updated patch to the PR, and to Andrew Randrianasulu for bringing up the issue again and then testing the patches. Fixes PR pkg/43444. @ text @$NetBSD: patch-ab,v 1.8 2019/02/19 15:18:19 hauke Exp $ Fix bashisms. FreeBSD 10 is not FreeBSD 1. Add support for mutexes on aarch64 with GCC. Add support for mutexes on sparc v[789]. --- dist/configure.orig 2013-09-09 15:35:02.000000000 +0000 +++ dist/configure @@@@ -5112,7 +5112,7 @@@@ bsdi3*) CC=${CC-"shlicc2"} LIBSO_LIBS="$LIBSO_LIBS -lipc";; cygwin*) CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE -D_REENTRANT";; -freebsd*) +freebsd*|dragonfly*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" LDFLAGS="$LDFLAGS -pthread";; gnu*|k*bsd*-gnu|linux*) @@@@ -6905,7 +6905,7 @@@@ fi # we're using. case "$host_os" in sysv5UnixWare*|sysv5OpenUNIX8*) - if test "$GCC" == "yes"; then + if test "$GCC" = "yes"; then CPPFLAGS="$CPPFLAGS -pthread" LDFLAGS="$LDFLAGS -pthread" else @@@@ -12227,7 +12227,7 @@@@ fi hardcode_shlibpath_var=no ;; - freebsd1*) + freebsd1|freebsd1.*) ld_shlibs=no ;; @@@@ -13221,7 +13221,7 @@@@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) +freebsd1|freebsd1.*) dynamic_linker=no ;; @@@@ -13232,7 +13232,7 @@@@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[123]|freebsd[123].*) objformat=aout ;; *) objformat=elf ;; esac fi @@@@ -15190,7 +15190,7 @@@@ fi esac ;; - freebsd[12]*) + freebsd[12]|freebsd[12].*) # C++ shared libraries reported to be fairly broken before # switch to ELF ld_shlibs_CXX=no @@@@ -17054,7 +17054,7 @@@@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) +freebsd1|freebsd1.*) dynamic_linker=no ;; @@@@ -17065,7 +17065,7 @@@@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[123]|freebsd[123].*) objformat=aout ;; *) objformat=elf ;; esac fi @@@@ -17712,7 +17712,7 @@@@ LIBTOOL="./libtool" INSTALLER="\$(LIBTOOL) --mode=install cp -p" MAKEFILE_CC="\$(LIBTOOL) --mode=compile ${MAKEFILE_CC}" -MAKEFILE_SOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK} -avoid-version" +MAKEFILE_SOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK}" MAKEFILE_CCLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CCLINK}" MAKEFILE_CXX="\$(LIBTOOL) --mode=compile ${MAKEFILE_CXX}" MAKEFILE_XSOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CXXLINK} -avoid-version" @@@@ -18445,7 +18445,7 @@@@ if test "$_JTOPDIR" != "/usr"; then aix*) _JNI_INC_SUBDIRS="aix";; bsdi*) _JNI_INC_SUBDIRS="bsdos";; cygwin*) _JNI_INC_SUBDIRS="win32";; - freebsd*) _JNI_INC_SUBDIRS="freebsd";; + freebsd*|dragonfly*) _JNI_INC_SUBDIRS="freebsd";; hp*) _JNI_INC_SUBDIRS="hp-ux";; linux*) _JNI_INC_SUBDIRS="linux genunix";; osf*) _JNI_INC_SUBDIRS="alpha";; @@@@ -20565,7 +20565,7 @@@@ if test "$db_cv_mutex" = no; then # avoid these probes for multiprocess pthreads. ;; *) - if test "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then + if test "$ac_cv_lib_pthread_main" = yes -a "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then LIBS="$LIBS -lpthread" if test "$cross_compiling" = yes; then : @@@@ -21444,7 +21444,11 @@@@ main () { #if defined(__sparc__) && defined(__GNUC__) + #if defined(__sparc_v9__) asm volatile ("membar #StoreStore|#StoreLoad|#LoadStore"); + #else + asm volatile ("stbar"); + #endif exit(0); #else FAIL TO COMPILE/LINK @@@@ -21796,6 +21800,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 @@@@ -22124,6 +22153,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 @ 1.8 log @Add support for mutexes on aarch64 with GCC via databases/db4. @ text @d1 1 a1 1 $NetBSD$ d9 2 d112 13 a124 1 @@@@ -21796,6 +21796,31 @@@@ fi d156 1 a156 1 @@@@ -22124,6 +22149,10 @@@@ ARM/gcc-assembly) ADDITIONAL_OBJS="mut_t @ 1.7 log @revert configure patch update as the issue is related to ARM 64-bit support db6 has it, but apparently db5 hasn't specificially backported support yet. probably best to use db6 or try db4 until backporting is tested. @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.6 2016/08/25 06:18:57 richard Exp $ d3 7 a9 1 --- dist/configure.orig 2012-05-11 17:57:48.000000000 +0000 d110 43 @ 1.6 log @Modify conditions of a previous patch to setup.py which fixes build on aarch64 Linux Also add '--enable-dbm' to CONFIGURE_ARGS (legacy dbm interface) in order to be compatible with db4 builds which happens to fix obscure build errors on aarch64 Linux with packages such as python27. bump PKGREVISION to pick up change @ text @d1 1 a1 1 $NetBSD: patch-ab,v 1.5 2014/04/22 14:42:35 asau Exp $ d100 1 a100 1 + if test "$ac_cv_lib_pthread_main" = yes -o "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then @ 1.5 log @FreeBSD 10 is not FreeBSD 1. @ text @d1 1 a1 1 $NetBSD$ d100 1 a100 1 + if test "$ac_cv_lib_pthread_main" = yes -a "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then @ 1.4 log @Changes 5.3.15: * Added support for verifying named in-memory dbs. * Added an integer key comparison function to improve performance through the SQL API. * Support build on the platforms where pthread_t is a struct. * Added an API call so the user can specify the size of the region in a heap db. * Improved Replication Manager's ability to recover from the (perhaps rare) phenomenon of two sites trying to connect to each other simultaneously, which used to result in loss of both connections, requiring a retry after the CONNECTION_RETRY timeout period. * Enhanced the interface for copying databases for a hot backup. Added configure support for --enable-atomicfileread. * Enhaced the log reading routine to detect that a log file is missing rather than returning that a zero length record was found. * Added pragma bdbsql_shared_resources to set or report the maximum amount of memory to be used by shared structures in the main environment region and bdbsql_lock_tablesize to set or report the number of buckets in the lock object hash table. These are advanced tuning features for applications with large number of tables or needs to reduce locking on concurrent long running transactions. * Added set_metadata_dir() and get_metadata_dir() to enable storage of persistent metadata files in a location other than the environment home directory. * Improved the error handling through the SQL API. Errors can be sent to a file with the use of the BDBSQL_ERROR_FILE pragma. * Database handles can now be configured to give exclusive access to the database. * XA transactions will now use transaction snapshots if the XA databases they operate on were configured with DB_MULTIVERSION. * Added additional stats fields into the C# API * Added pragma bdbsql_single_process to keep the Berkeley DB environment information on the heap instead of in shared memory. This option cannot be used if the database is accessed from multiple processes. * Improved the ability of DB->compact to move DB_HASH database pages to the begining of the file. @ text @d3 1 a3 1 --- dist/configure.orig 2011-12-20 01:00:49.000000000 +0000 d23 54 @ 1.3 log @Changes 5.2.36: * Updated the JDBC version shipped with Berkeley DB to support Oracle Java Embedded Client. * Fixed several memory leaks in the Online Backup API. * Fix a bug in the SQL API when using a blob field with a lot of content and multiple concurrent connections to the database. * Update EID_MASTER to be public static final so that it will be exposed in Java docs. * Fixed a bug where BFile module crashes when using BFile handle for SQL expressions interface on 64 bit platforms. * Fixed a bug where, on systems without FTRUNCATE, db_verify will return an error for truncated heap databases. * Let ADO.NET solution building skip SQLite Designer and Linq by default. * Fixed a bug that could cause BDB to run out of avaliable mutexes when renaming many databases. * Fixed a bug where the metadata page in hash databases would not be flushed to disk. * Fixed a bug where printlog would fail on in-memory heap databases. * Fixed a bug that would cause verify to call the wrong compare function if there are user defined compare functions used and the database has multilevel off page sorted duplicate trees. * Fixed a bug where two processes accessing the same table and one of those drops the table and recreates, the second process can crash. * Fixed a bug where it was possible to panic a heap database without an error message being printed. * Fixed a bug where it would fail to put records with overflow keys into hash duplicate database. * Fixed a bug where multiple Replication Manager processes would sometimes not all conform to replication-group-aware log archiving. * more... @ text @d3 1 a3 1 --- dist/configure.orig 2011-09-14 14:30:12.000000000 +0000 d5 1 a5 1 @@@@ -5098,7 +5098,7 @@@@ bsdi3*) CC=${CC-"shlicc2"} d14 1 a14 1 @@@@ -6891,7 +6891,7 @@@@ fi d23 1 a23 1 @@@@ -17698,7 +17698,7 @@@@ LIBTOOL="./libtool" d32 1 a32 1 @@@@ -18431,7 +18431,7 @@@@ if test "$_JTOPDIR" != "/usr"; then d41 7 a47 7 @@@@ -20540,7 +20540,7 @@@@ if test "$db_cv_mutex" = no; then # If the user specified we use POSIX pthreads mutexes, and we fail to # find the full interface, try and configure for just intra-process # support. - if test "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then + if test "$ac_cv_lib_pthread_main" = yes -a "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then LIBS="$LIBS -lpthread" @ 1.2 log @Changes 5.1.19: * Added Performance event monitoring support for DTrace and SystemTap which can be enabled during configuration. Static probes have been defined where statistics values are updated, where mutex or transactional consistency lock waits occur, and where some other potentially lengthy operations may be initiated. * Added a new acknowledge policy - DB_REPMGR_ACKS_ALL_AVAILABLE. * Added transactional bulk loading optimization for non-nested transactions. * Added exclusive transaction support for the SQL API. * Added support for bulk update and delete in C# API. * Added a db_replicate utility. * Added an implementation of the Online Backup API. * Added support in Berkeley DB SQL for the vacuum and incremental vacuum pragmas. * Added an option to automatically convert SQLite databases to Berkeley DB on opening. * Added BDBSQL_SHARE_PRIVATE, an option to enable inter-process sharing of DB_PRIVATE environments using multiple-reader. * Added database-level locking to optimize single-threaded operations and remove locking limitations for database load operations. * Added support for DB_INIT_REP, DB_PRIVATE, DB_REGISTER and DB_THREAD in DB_CONFIG file. * Added support for the BDBSQL_DEFAULT_PAGE_SIZE pragma to override Berkeley DB's choice of page size depending on the filesystem. Use SQLITE_DEFAULT_PAGE_SIZE rather than a hard-coded default. * Added an extension that allows access to binary files stored outside of the database. What is stored in the database is a pointer to the binary file. * Added .stat command to dbsql shell to print environment, table, and index statistics. * Added enhancements to reduce the size of indexes in the SQL API by allowing duplicates in the index database and moving the rowid from the index key into the index data. * Added a compile time flag BDBSQL_FILE_PER_TABLE that causes each table to be created in a separate file. This flag replaces the BDBSQL_SPLIT_META_TABLE flag. * Added the handling of read only and read write open of the same database in BDB SQL. * Added an encryption implementation to the SQL API.pkg @ text @d3 1 a3 1 --- dist/configure.orig 2010-08-27 15:08:03.000000000 +0000 d5 1 a5 1 @@@@ -5131,7 +5131,7 @@@@ bsdi3*) CC=${CC-"shlicc2"} d14 1 a14 1 @@@@ -6893,7 +6893,7 @@@@ fi d23 1 a23 1 @@@@ -16772,7 +16772,7 @@@@ LIBTOOL="./libtool" d32 1 a32 1 @@@@ -17505,7 +17505,7 @@@@ if test "$_JTOPDIR" != "/usr"; then d41 1 a41 1 @@@@ -19634,7 +19634,7 @@@@ if test "$db_cv_mutex" = no; then @ 1.1 log @Initial revision @ text @d3 1 a3 1 --- dist/configure.orig 2010-03-30 17:36:10.000000000 +0000 d5 1 a5 1 @@@@ -5174,7 +5174,7 @@@@ bsdi3*) CC=${CC-"shlicc2"} d14 1 a14 1 @@@@ -6935,7 +6935,7 @@@@ fi d23 1 a23 1 @@@@ -16814,7 +16814,7 @@@@ LIBTOOL="./libtool" d32 1 a32 1 @@@@ -17543,7 +17543,7 @@@@ if test "$_JTOPDIR" != "/usr"; then d41 1 a41 1 @@@@ -19661,7 +19661,7 @@@@ if test "$db_cv_mutex" = no; then @ 1.1.1.1 log @Berkeley DB is an embeddable database system that supports keyed access to data. The software is distributed in source code form, and developers can compile and link the source code into a single library for inclusion directly in their applications. Developers may choose to store data in any of several different storage structures to satisfy the requirements of a particular application. In database terminology, these storage structures and the code that operates on them are called access methods. The library includes support for the following access methods: * B+tree: Stores keys in sorted order, using either a programmer-supplied ordering function or a default function that does lexicographical ordering of keys. Applications may perform equality or range searches. * Hashing: Stores records in a hash table for fast searches based on strict equality. Extended Linear Hashing modifies the hash function used by the table as new records are inserted, in order to keep buckets underfull in the steady state. * Fixed and Variable-Length Records: Stores fixed- or variable-length records in sequential order. Record numbers may be immutable or mutable, i.e., permitting new records to be inserted between existing records or requiring that new records be added only at the end of the database. @ text @@