Index: Mk/Uses/bdb.mk =================================================================== --- Mk/Uses/bdb.mk (revision 543816) +++ Mk/Uses/bdb.mk (working copy) @@ -59,19 +59,21 @@ _BDB_DEFAULT_save:=${BDB_DEFAULT} -_DB_PORTS= 5 6 +_DB_PORTS= 5 6 18 _DB_DEFAULTS= 5 # does not include 6 due to different licensing # but user can re-add it through WITH_BDB6_PERMITTED . if defined(WITH_BDB6_PERMITTED) -_DB_DEFAULTS+= 6 +_DB_DEFAULTS+= 6 18 . endif # Dependency lines for different db versions db5_DEPENDS= libdb-5.3.so:databases/db5 db6_DEPENDS= libdb-6.2.so:databases/db6 +db18_DEPENDS= libdb-18.1.so:databases/db18 # Detect db versions by finding some files db5_FIND= ${LOCALBASE}/include/db5/db.h db6_FIND= ${LOCALBASE}/include/db6/db.h +db18_FIND= ${LOCALBASE}/include/db18/db.h # Override the global BDB_DEFAULT with the # port specific _WITH_BDB_VER @@ -109,9 +111,9 @@ # 2. parse supported versions: # 2a. build list from _bdb_ARGS _SUPP_BDB_VER= -__bdb_ARGS:=${_bdb_ARGS:C,\+$,,:C/(.)(.)$/\1.\2/} +__bdb_ARGS:=${_bdb_ARGS:C,\+$,,} .if !empty(_bdb_ARGS:M*+) -. for bdb in ${_DB_PORTS:C/(.)(.)$/\1.\2/} +. for bdb in ${_DB_PORTS} . if ${__bdb_ARGS} <= ${bdb} _SUPP_BDB_VER+=${bdb:C/\.//} . endif @@ -121,9 +123,9 @@ .endif # 2b. expand INVALID_BDB_VER if given with "+": .if !empty(INVALID_BDB_VER:M*+) -_INV_BDB:=${INVALID_BDB_VER:C,\+$,,:C/(.)(.)$/\1.\2/} +_INV_BDB:=${INVALID_BDB_VER:C,\+$,,} _INV_BDB_VER:= -. for bdb in ${_DB_PORTS:C/(.)(.)$/\1.\2/} +. for bdb in ${_DB_PORTS} . if ${_INV_BDB} <= ${bdb} _INV_BDB_VER+=${bdb:C/\.//} . endif @@ -183,6 +185,10 @@ BDB_LIB_NAME= db-6.2 BDB_LIB_CXX_NAME= db_cxx-6.2 BDB_LIB_DIR= ${LOCALBASE}/lib/db6 +. elif ${_BDB_VER} == 18 +BDB_LIB_NAME= db-18.1 +BDB_LIB_CXX_NAME= db_cxx-18.1 +BDB_LIB_DIR= ${LOCALBASE}/lib/db18 . endif BDB_LIB_NAME?= db${_BDB_VER} BDB_LIB_CXX_NAME?= db${_BDB_VER}_cxx Index: Mk/bsd.default-versions.mk =================================================================== --- Mk/bsd.default-versions.mk (revision 543816) +++ Mk/bsd.default-versions.mk (working copy) @@ -35,7 +35,7 @@ # Possible values: 2.4 APACHE_DEFAULT?= 2.4 -# Possible values: 48, 5, 6 +# Possible values: 5, 6, 18 BDB_DEFAULT?= 5 # Possible values: 2, 3 COROSYNC_DEFAULT?= 2 Index: databases/Makefile =================================================================== --- databases/Makefile (revision 543816) +++ databases/Makefile (working copy) @@ -53,6 +53,7 @@ SUBDIR += dalmp SUBDIR += datamodeler SUBDIR += db + SUBDIR += db18 SUBDIR += db5 SUBDIR += db6 SUBDIR += dbf Index: databases/db18/Makefile =================================================================== --- databases/db18/Makefile (revision 543816) +++ databases/db18/Makefile (working copy) @@ -1,25 +1,25 @@ # Created by: Matthias Andree # $FreeBSD$ -PORTNAME= db6 -PORTVERSION= 6.2.32 -PORTREVISION= 1 +PORTNAME= db18 +PORTVERSION= 18.1.40 CATEGORIES= databases java -MASTER_SITES= https://download.oracle.com/berkeley-db/ +MASTER_SITES= https://github.com/yasuhirokimura/${PORTNAME}/releases/download/${PORTVERSION}/ PKGNAMEPREFIX?= # -# the distfiles aren't named db6-* but db-*: +# the distfiles aren't named db18-* but db-*: DISTNAME= db-${PORTVERSION} DIST_SUBDIR= bdb -DEPRECATED= latest 6.2.x version and newer not downloadable without registration -EXPIRATION_DATE=2020-12-02 +MAINTAINER= yasu@utahime.org +COMMENT= Oracle Berkeley DB, Release ${BDBVER} -MAINTAINER= mandree@FreeBSD.org -COMMENT= Oracle Berkeley DB, revision ${BDBVER} - -LICENSE= AGPLv3 +LICENSE= AGPLv3 BSD3CLAUSE UPL10 +LICENSE_COMB= multi +LICENSE_NAME_UPL10= The Universal Permissive License (UPL), Version 1.0 LICENSE_FILE= ${WRKSRC}/../LICENSE +LICENSE_FILE_UPL10= ${WRKSRC}/../EXAMPLES-LICENSE +LICENSE_PERMS_UPL10= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BROKEN_mips64= no usable MUTEX implementation, assy works only for MIPS32, POSIX mutexes are unshared @@ -32,7 +32,7 @@ --bindir=${PREFIX}/bin/${PORTNAME} CONFIGURE_SCRIPT= ../dist/configure GNU_CONFIGURE= yes -USES= gmake libtool +USES= gmake libtool ssl INSTALL_TARGET= install_include install_lib install_utilities WRKSRC= ${WRKDIR}/${DISTNAME}/build_unix PATCH_WRKSRC= ${WRKDIR}/${DISTNAME} @@ -40,12 +40,11 @@ PLIST_SUB= BDBMAJ=${BDBMAJ} BDBVER=${BDBVER} MAKE_ARGS+= docdir=${DOCSDIR} -OPTIONS_DEFINE= CRYPTO DEBUG L10N SQL JAVA TCL DOCS +OPTIONS_DEFINE= CRYPTO DEBUG L10N JAVA TCL DOCS OPTIONS_DEFAULT=CRYPTO OPTIONS_SUB= yes CRYPTO_DESC= Cryptography support L10N_DESC= Localization support (EXPERIMENTAL) -SQL_DESC= Enable SQL API (EXPERIMENTAL) PORTDOCS= * @@ -54,14 +53,8 @@ DEBUG_CONFIGURE_ENABLE= debug umrw CRYPTO_CONFIGURE_WITH= cryptography=yes L10N_CONFIGURE_ENABLE= localization -SQL_CONFIGURE_ENABLE= sql sql_codegen -SQL_VARS= DBLIBS+=libdb_sql JAVA_USE= java -# db6 is only compatible with openjdk 7 or 8, -# openjdk 11 or newer and cause IllegalArgument -# exceptions during build even if the version check -# in dist/configure is disabled or fixed: -JAVA_VARS= DBLIBS+=libdb_java JAVA_VERSION="7 8" +JAVA_VARS= DBLIBS+=libdb_java JAVA_VERSION="7+" JAVA_CONFIGURE_ENABLE= java JAVA_CPPFLAGS= -I"${JAVA_HOME}/include" JAVA_CONFIGURE_ENV= JAVAC="${JAVAC}" JAR="${JAR}" JAVA="${JAVA}" @@ -68,7 +61,7 @@ TCL_CONFIGURE_ENABLE= tcl TCL_USES= tcl TCL_CONFIGURE_WITH= tcl=${TCL_LIBDIR} -TCL_VARS= DBLIBS+=libdb_tcl +TCL_VARS= DBLIBS+=libdb_tcl DOCS_INSTALL_TARGET= install_docs .include @@ -77,13 +70,6 @@ CONFIGURE_ARGS+= --with-mutex=POSIX/pthreads .endif -post-patch: - ${REINPLACE_CMD} -e '/^DOCLIST/{s/csharp//;}' ${WRKSRC}/../dist/Makefile.in - ${REINPLACE_CMD} -Ee 's/[[:<:]]atomic_init[[:>:]]/db_atomic_init/g' \ - ${WRKSRC}/../src/mp/mp* ${WRKSRC}/../src/mutex/mut_* \ - ${WRKSRC}/../src/dbinc/atomic.h - ${REINPLACE_CMD} -e 's/%%BDBVER%%/${BDBVER}/' ${WRKSRC}/../lang/sql/upgrade61.sh - post-install: .for i in ${DBLIBS} ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/${i}-${BDBVER}.so @@ -100,13 +86,6 @@ ${RM} -r ${STAGEDIR}${DOCSDIR}/${i}/JAVA .endfor -post-install-SQL-off: - ${RM} -r ${STAGEDIR}${DOCSDIR}/bdb-sql - -post-install-SQL-on: - ${INSTALL_SCRIPT} ${WRKSRC}/../lang/sql/upgrade61.sh \ - ${STAGEDIR}${PREFIX}/bin/${PORTNAME}-upgrade61.sh - post-install-TCL-on: echo "package ifneeded Db_tcl ${BDBVER} \ [list load [file join $$dir libdb_tcl-${BDBVER}.so]] \ Index: databases/db18/distinfo =================================================================== --- databases/db18/distinfo (revision 543816) +++ databases/db18/distinfo (working copy) @@ -1,3 +1,3 @@ -TIMESTAMP = 1502528680 -SHA256 (bdb/db-6.2.32.tar.gz) = a9c5e2b004a5777aa03510cfe5cd766a4a3b777713406b02809c17c8e0e7a8fb -SIZE (bdb/db-6.2.32.tar.gz) = 45342417 +TIMESTAMP = 1595521725 +SHA256 (bdb/db-18.1.40.tar.gz) = 0cecb2ef0c67b166de93732769abdeba0555086d51de1090df325e18ee8da9c8 +SIZE (bdb/db-18.1.40.tar.gz) = 30763705 Index: databases/db18/files/patch-dist_Makefile.in =================================================================== --- databases/db18/files/patch-dist_Makefile.in (nonexistent) +++ databases/db18/files/patch-dist_Makefile.in (working copy) @@ -0,0 +1,13 @@ +--- dist/Makefile.in.orig 2020-05-29 17:58:22 UTC ++++ dist/Makefile.in +@@ -1299,8 +1299,8 @@ uninstall_utilities: + + # We install csharp docs even on UNIX so we don't have a + # broken link on the landing page. +-DOCLIST=api_reference articles bdb-sql collections csharp gsg \ +- gsg_db_rep gsg_db_server gsg_txn index.html installation \ ++DOCLIST=api_reference articles collections csharp gsg \ ++ gsg_db_rep gsg_txn index.html installation \ + java license porting programmer_reference upgrading + + install_docs: Index: databases/db18/files/patch-lang_sql_upgrade61.sh =================================================================== --- databases/db18/files/patch-lang_sql_upgrade61.sh (revision 543816) +++ databases/db18/files/patch-lang_sql_upgrade61.sh (working copy) @@ -1,27 +0,0 @@ ---- lang/sql/upgrade61.sh.orig 2016-03-28 19:45:53 UTC -+++ lang/sql/upgrade61.sh -@@ -1,12 +1,19 @@ - #!/bin/sh - # This script upgrades SQL databases from BDB 5.0 to early 6.1 - # to late 6.1 and up by reindexing them. -+# -+# Originally provided by Oracle as part of the Oracle BerkeleyDB -+# 12.1.6.* tarballs. - # -+# Bugfixed for proper quoting and error checking -+# by Matthias Andree - --for var in $@ -+rc=0 -+for var in "$@" - do -- echo Recovering database $var -- db_recover -f -h ${var}-journal -- echo Reindexing database $var -- echo .quit | dbsql -cmd REINDEX $var -+ echo "Recovering database $var" -+ db_recover-%%BDBVER%% -f -h "${var}-journal" || { rc=1 ; continue ; } -+ echo "Reindexing database $var" -+ echo .quit | dbsql-%%BDBVER%% -cmd REINDEX "$var" || rc=1 - done -+exit $rc Index: databases/db18/files/patch-src_dbinc_db.in =================================================================== --- databases/db18/files/patch-src_dbinc_db.in (revision 543816) +++ databases/db18/files/patch-src_dbinc_db.in (working copy) @@ -1,15 +0,0 @@ ---- src/dbinc/db.in.orig 2017-04-13 14:06:20 UTC -+++ src/dbinc/db.in -@@ -2997,11 +2997,11 @@ typedef struct { - #define dbmclose __db_dbm_close@DB_VERSION_UNIQUE_NAME@ - #if !defined(__cplusplus) - #define delete(a) __db_dbm_delete@DB_VERSION_UNIQUE_NAME@(a) -+#define store(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b) - #endif - #define fetch(a) __db_dbm_fetch@DB_VERSION_UNIQUE_NAME@(a) - #define firstkey __db_dbm_firstkey@DB_VERSION_UNIQUE_NAME@ - #define nextkey(a) __db_dbm_nextkey@DB_VERSION_UNIQUE_NAME@(a) --#define store(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b) - - /******************************************************* - * Hsearch historic interface. Index: databases/db18/files/patch-src_dbinc_mutex__int.h =================================================================== Index: databases/db18/pkg-descr =================================================================== --- databases/db18/pkg-descr (revision 543816) +++ databases/db18/pkg-descr (working copy) @@ -8,7 +8,4 @@ be confident that Oracle Berkeley DB will manage your persistence needs. -Note that Berkeley DB 6 changed license to the -Affero GNU General Public License v3 (AGPL v3). - -WWW: http://www.oracle.com/us/products/database/berkeley-db/db/ +WWW: https://www.oracle.com/database/berkeley-db/ Index: databases/db18/pkg-plist =================================================================== --- databases/db18/pkg-plist (revision 543816) +++ databases/db18/pkg-plist (working copy) @@ -10,13 +10,10 @@ bin/db%%BDBMAJ%%/db_printlog bin/db%%BDBMAJ%%/db_recover bin/db%%BDBMAJ%%/db_replicate -%%SQL%%bin/db%%BDBMAJ%%/db_sql_codegen bin/db%%BDBMAJ%%/db_stat bin/db%%BDBMAJ%%/db_tuner bin/db%%BDBMAJ%%/db_upgrade bin/db%%BDBMAJ%%/db_verify -%%SQL%%bin/db%%BDBMAJ%%-upgrade61.sh -%%SQL%%bin/db%%BDBMAJ%%/dbsql bin/db_archive-%%BDBVER%% bin/db_checkpoint-%%BDBVER%% bin/db_convert-%%BDBVER%% @@ -29,16 +26,13 @@ bin/db_printlog-%%BDBVER%% bin/db_recover-%%BDBVER%% bin/db_replicate-%%BDBVER%% -%%SQL%%bin/db_sql_codegen-%%BDBVER%% bin/db_stat-%%BDBVER%% bin/db_tuner-%%BDBVER%% bin/db_upgrade-%%BDBVER%% bin/db_verify-%%BDBVER%% -%%SQL%%bin/dbsql-%%BDBVER%% include/db%%BDBMAJ%%/db.h include/db%%BDBMAJ%%/db_185.h include/db%%BDBMAJ%%/db_cxx.h -%%SQL%%include/db%%BDBMAJ%%/dbsql.h include/db%%BDBMAJ%%/dbstl_base_iterator.h include/db%%BDBMAJ%%/dbstl_common.h include/db%%BDBMAJ%%/dbstl_container.h @@ -69,11 +63,6 @@ %%JAVA%%lib/db%%BDBMAJ%%/libdb_java.a %%JAVA%%lib/db%%BDBMAJ%%/libdb_java.so %%JAVA%%lib/db%%BDBMAJ%%/libdb_java-%%BDBMAJ%%.so -%%SQL%%lib/db%%BDBMAJ%%/libdb_sql-%%BDBVER%%.a -%%SQL%%lib/db%%BDBMAJ%%/libdb_sql-%%BDBVER%%.so -%%SQL%%lib/db%%BDBMAJ%%/libdb_sql.a -%%SQL%%lib/db%%BDBMAJ%%/libdb_sql.so -%%SQL%%lib/db%%BDBMAJ%%/libdb_sql-%%BDBMAJ%%.so lib/db%%BDBMAJ%%/libdb_stl-%%BDBVER%%.a lib/db%%BDBMAJ%%/libdb_stl-%%BDBVER%%.so lib/db%%BDBMAJ%%/libdb_stl-%%BDBMAJ%%.so @@ -85,8 +74,6 @@ lib/libdb_cxx-%%BDBMAJ%%.so %%JAVA%%lib/libdb_java-%%BDBVER%%.so %%JAVA%%lib/libdb_java-%%BDBMAJ%%.so -%%SQL%%lib/libdb_sql-%%BDBVER%%.so -%%SQL%%lib/libdb_sql-%%BDBMAJ%%.so lib/libdb_stl-%%BDBVER%%.so lib/libdb_stl-%%BDBMAJ%%.so %%TCL%%lib/db%%BDBMAJ%%/libdb_tcl-%%BDBVER%%.a