early-access version 2853
This commit is contained in:
278
externals/vcpkg/ports/berkeleydb/CMakeLists.txt
vendored
Executable file
278
externals/vcpkg/ports/berkeleydb/CMakeLists.txt
vendored
Executable file
@@ -0,0 +1,278 @@
|
||||
cmake_minimum_required(VERSION 3.8)
|
||||
project(berkeleydb C CXX)
|
||||
|
||||
option(INSTALL_HEADERS "Install header files" ON)
|
||||
|
||||
add_definitions(
|
||||
-DWIN32
|
||||
-D_WINDOWS
|
||||
-D_CRT_SECURE_NO_DEPRECATE
|
||||
-D_CRT_NONSTDC_NO_DEPRECATE
|
||||
-D_LIB
|
||||
-DUNICODE
|
||||
-D_UNICODE
|
||||
)
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
add_definitions(
|
||||
-DDB_CREATE_DLL
|
||||
-D_USRDLL
|
||||
)
|
||||
else()
|
||||
add_definitions(
|
||||
-D_LIB
|
||||
)
|
||||
endif()
|
||||
|
||||
add_library(libdb48
|
||||
btree/bt_compact.c
|
||||
btree/bt_compare.c
|
||||
btree/bt_compress.c
|
||||
btree/bt_conv.c
|
||||
btree/bt_curadj.c
|
||||
btree/bt_cursor.c
|
||||
btree/bt_delete.c
|
||||
btree/bt_method.c
|
||||
btree/bt_open.c
|
||||
btree/bt_put.c
|
||||
btree/bt_rec.c
|
||||
btree/bt_reclaim.c
|
||||
btree/bt_recno.c
|
||||
btree/bt_rsearch.c
|
||||
btree/bt_search.c
|
||||
btree/bt_split.c
|
||||
btree/bt_stat.c
|
||||
btree/bt_upgrade.c
|
||||
btree/bt_verify.c
|
||||
btree/btree_auto.c
|
||||
db/crdel_auto.c
|
||||
db/crdel_rec.c
|
||||
common/crypto_stub.c
|
||||
cxx/cxx_db.cpp
|
||||
cxx/cxx_dbc.cpp
|
||||
cxx/cxx_dbt.cpp
|
||||
cxx/cxx_env.cpp
|
||||
cxx/cxx_except.cpp
|
||||
cxx/cxx_lock.cpp
|
||||
cxx/cxx_logc.cpp
|
||||
cxx/cxx_mpool.cpp
|
||||
cxx/cxx_multi.cpp
|
||||
cxx/cxx_seq.cpp
|
||||
cxx/cxx_txn.cpp
|
||||
db/db.c
|
||||
db/db_am.c
|
||||
db/db_auto.c
|
||||
common/db_byteorder.c
|
||||
db/db_cam.c
|
||||
db/db_cds.c
|
||||
db/db_conv.c
|
||||
db/db_dispatch.c
|
||||
db/db_dup.c
|
||||
common/db_err.c
|
||||
common/db_getlong.c
|
||||
common/db_idspace.c
|
||||
common/db_compint.c
|
||||
db/db_iface.c
|
||||
db/db_join.c
|
||||
common/db_log2.c
|
||||
db/db_meta.c
|
||||
db/db_method.c
|
||||
db/db_open.c
|
||||
db/db_overflow.c
|
||||
db/db_ovfl_vrfy.c
|
||||
db/db_pr.c
|
||||
db/db_rec.c
|
||||
db/db_reclaim.c
|
||||
db/db_remove.c
|
||||
db/db_rename.c
|
||||
db/db_ret.c
|
||||
db/db_setid.c
|
||||
db/db_setlsn.c
|
||||
common/db_shash.c
|
||||
db/db_sort_multiple.c
|
||||
db/db_stati.c
|
||||
db/db_truncate.c
|
||||
db/db_upg.c
|
||||
db/db_upg_opd.c
|
||||
db/db_vrfy.c
|
||||
db/db_vrfyutil.c
|
||||
db/partition.c
|
||||
dbm/dbm.c
|
||||
dbreg/dbreg.c
|
||||
dbreg/dbreg_auto.c
|
||||
dbreg/dbreg_rec.c
|
||||
dbreg/dbreg_stat.c
|
||||
dbreg/dbreg_util.c
|
||||
common/dbt.c
|
||||
env/env_alloc.c
|
||||
env/env_config.c
|
||||
env/env_failchk.c
|
||||
env/env_file.c
|
||||
env/env_globals.c
|
||||
env/env_method.c
|
||||
env/env_name.c
|
||||
env/env_open.c
|
||||
env/env_recover.c
|
||||
env/env_region.c
|
||||
env/env_register.c
|
||||
env/env_sig.c
|
||||
env/env_stat.c
|
||||
fileops/fileops_auto.c
|
||||
fileops/fop_basic.c
|
||||
fileops/fop_rec.c
|
||||
fileops/fop_util.c
|
||||
hash/hash.c
|
||||
hash/hash_auto.c
|
||||
hash/hash_conv.c
|
||||
hash/hash_dup.c
|
||||
hash/hash_func.c
|
||||
hash/hash_meta.c
|
||||
hash/hash_method.c
|
||||
hash/hash_open.c
|
||||
hash/hash_page.c
|
||||
hash/hash_rec.c
|
||||
hash/hash_reclaim.c
|
||||
hash/hash_stat.c
|
||||
hash/hash_upgrade.c
|
||||
hash/hash_verify.c
|
||||
hmac/hmac.c
|
||||
hsearch/hsearch.c
|
||||
build_windows/libdb.def
|
||||
lock/lock.c
|
||||
lock/lock_deadlock.c
|
||||
lock/lock_failchk.c
|
||||
lock/lock_id.c
|
||||
lock/lock_list.c
|
||||
lock/lock_method.c
|
||||
lock/lock_region.c
|
||||
lock/lock_stat.c
|
||||
lock/lock_timer.c
|
||||
lock/lock_util.c
|
||||
log/log.c
|
||||
log/log_archive.c
|
||||
log/log_compare.c
|
||||
log/log_debug.c
|
||||
log/log_get.c
|
||||
log/log_method.c
|
||||
log/log_put.c
|
||||
log/log_stat.c
|
||||
common/mkpath.c
|
||||
mp/mp_alloc.c
|
||||
mp/mp_bh.c
|
||||
mp/mp_fget.c
|
||||
mp/mp_fmethod.c
|
||||
mp/mp_fopen.c
|
||||
mp/mp_fput.c
|
||||
mp/mp_fset.c
|
||||
mp/mp_method.c
|
||||
mp/mp_mvcc.c
|
||||
mp/mp_region.c
|
||||
mp/mp_register.c
|
||||
mp/mp_resize.c
|
||||
mp/mp_stat.c
|
||||
mp/mp_sync.c
|
||||
mp/mp_trickle.c
|
||||
mutex/mut_alloc.c
|
||||
mutex/mut_failchk.c
|
||||
mutex/mut_method.c
|
||||
mutex/mut_region.c
|
||||
mutex/mut_stat.c
|
||||
mutex/mut_win32.c
|
||||
common/openflags.c
|
||||
os/os_abort.c
|
||||
os/os_addrinfo.c
|
||||
os_windows/os_abs.c
|
||||
os/os_alloc.c
|
||||
os_windows/os_clock.c
|
||||
os_windows/os_config.c
|
||||
os_windows/os_cpu.c
|
||||
os/os_ctime.c
|
||||
os_windows/os_dir.c
|
||||
os_windows/os_errno.c
|
||||
os_windows/os_fid.c
|
||||
os_windows/os_flock.c
|
||||
os_windows/os_fsync.c
|
||||
os_windows/os_getenv.c
|
||||
os_windows/os_handle.c
|
||||
os_windows/os_map.c
|
||||
os_windows/os_mkdir.c
|
||||
os_windows/os_open.c
|
||||
os/os_pid.c
|
||||
os_windows/os_rename.c
|
||||
os/os_root.c
|
||||
os/os_rpath.c
|
||||
os_windows/os_rw.c
|
||||
os_windows/os_seek.c
|
||||
os/os_stack.c
|
||||
os_windows/os_stat.c
|
||||
os/os_tmpdir.c
|
||||
os_windows/os_truncate.c
|
||||
os/os_uid.c
|
||||
os_windows/os_unlink.c
|
||||
os_windows/os_yield.c
|
||||
qam/qam.c
|
||||
qam/qam_auto.c
|
||||
qam/qam_conv.c
|
||||
qam/qam_files.c
|
||||
qam/qam_method.c
|
||||
qam/qam_open.c
|
||||
qam/qam_rec.c
|
||||
qam/qam_stat.c
|
||||
qam/qam_upgrade.c
|
||||
qam/qam_verify.c
|
||||
rep/rep_auto.c
|
||||
rep/rep_backup.c
|
||||
rep/rep_elect.c
|
||||
rep/rep_lease.c
|
||||
rep/rep_log.c
|
||||
rep/rep_method.c
|
||||
rep/rep_record.c
|
||||
rep/rep_region.c
|
||||
rep/rep_stat.c
|
||||
rep/rep_util.c
|
||||
rep/rep_verify.c
|
||||
repmgr/repmgr_auto.c
|
||||
repmgr/repmgr_elect.c
|
||||
repmgr/repmgr_method.c
|
||||
repmgr/repmgr_msg.c
|
||||
repmgr/repmgr_net.c
|
||||
repmgr/repmgr_queue.c
|
||||
repmgr/repmgr_sel.c
|
||||
repmgr/repmgr_stat.c
|
||||
repmgr/repmgr_util.c
|
||||
repmgr/repmgr_windows.c
|
||||
sequence/seq_stat.c
|
||||
sequence/sequence.c
|
||||
hmac/sha1.c
|
||||
clib/strsep.c
|
||||
txn/txn.c
|
||||
txn/txn_auto.c
|
||||
txn/txn_chkpt.c
|
||||
txn/txn_failchk.c
|
||||
txn/txn_method.c
|
||||
txn/txn_rec.c
|
||||
txn/txn_recover.c
|
||||
txn/txn_region.c
|
||||
txn/txn_stat.c
|
||||
txn/txn_util.c
|
||||
common/os_method.c
|
||||
common/util_cache.c
|
||||
common/util_log.c
|
||||
common/util_sig.c
|
||||
common/zerofill.c
|
||||
)
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR} build_windows dbinc)
|
||||
|
||||
target_link_libraries(libdb48 PUBLIC ws2_32.lib)
|
||||
|
||||
install(TARGETS libdb48
|
||||
RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib
|
||||
)
|
||||
|
||||
if(INSTALL_HEADERS)
|
||||
file(GLOB HEADERS build_windows/*.h)
|
||||
install(FILES ${HEADERS} DESTINATION include)
|
||||
endif()
|
123
externals/vcpkg/ports/berkeleydb/fix-conflict-macro.patch
vendored
Executable file
123
externals/vcpkg/ports/berkeleydb/fix-conflict-macro.patch
vendored
Executable file
@@ -0,0 +1,123 @@
|
||||
diff --git a/dbinc/atomic.h b/dbinc/atomic.h
|
||||
index 0034dcc..2dd5e03 100644
|
||||
--- a/dbinc/atomic.h
|
||||
+++ b/dbinc/atomic.h
|
||||
@@ -70,7 +70,7 @@ typedef struct {
|
||||
* These have no memory barriers; the caller must include them when necessary.
|
||||
*/
|
||||
#define atomic_read(p) ((p)->value)
|
||||
-#define atomic_init(p, val) ((p)->value = (val))
|
||||
+#define bdb_atomic_init(p, val) ((p)->value = (val))
|
||||
|
||||
#ifdef HAVE_ATOMIC_SUPPORT
|
||||
|
||||
@@ -206,7 +206,7 @@ static inline int __atomic_compare_exchange(
|
||||
#define atomic_dec(env, p) (--(p)->value)
|
||||
#define atomic_compare_exchange(env, p, oldval, newval) \
|
||||
(DB_ASSERT(env, atomic_read(p) == (oldval)), \
|
||||
- atomic_init(p, (newval)), 1)
|
||||
+ bdb_atomic_init(p, (newval)), 1)
|
||||
#else
|
||||
#define atomic_inc(env, p) __atomic_inc(env, p)
|
||||
#define atomic_dec(env, p) __atomic_dec(env, p)
|
||||
diff --git a/mp/mp_fget.c b/mp/mp_fget.c
|
||||
index 5fdee5a..452ef17 100644
|
||||
--- a/mp/mp_fget.c
|
||||
+++ b/mp/mp_fget.c
|
||||
@@ -617,7 +617,7 @@ alloc: /* Allocate a new buffer header and data space. */
|
||||
|
||||
/* Initialize enough so we can call __memp_bhfree. */
|
||||
alloc_bhp->flags = 0;
|
||||
- atomic_init(&alloc_bhp->ref, 1);
|
||||
+ bdb_atomic_init(&alloc_bhp->ref, 1);
|
||||
#ifdef DIAGNOSTIC
|
||||
if ((uintptr_t)alloc_bhp->buf & (sizeof(size_t) - 1)) {
|
||||
__db_errx(env,
|
||||
@@ -911,7 +911,7 @@ alloc: /* Allocate a new buffer header and data space. */
|
||||
MVCC_MPROTECT(bhp->buf, mfp->stat.st_pagesize,
|
||||
PROT_READ);
|
||||
|
||||
- atomic_init(&alloc_bhp->ref, 1);
|
||||
+ bdb_atomic_init(&alloc_bhp->ref, 1);
|
||||
MUTEX_LOCK(env, alloc_bhp->mtx_buf);
|
||||
alloc_bhp->priority = bhp->priority;
|
||||
alloc_bhp->pgno = bhp->pgno;
|
||||
diff --git a/mp/mp_mvcc.c b/mp/mp_mvcc.c
|
||||
index 34467d2..b604388 100644
|
||||
--- a/mp/mp_mvcc.c
|
||||
+++ b/mp/mp_mvcc.c
|
||||
@@ -276,7 +276,7 @@ __memp_bh_freeze(dbmp, infop, hp, bhp, need_frozenp)
|
||||
#else
|
||||
memcpy(frozen_bhp, bhp, SSZA(BH, buf));
|
||||
#endif
|
||||
- atomic_init(&frozen_bhp->ref, 0);
|
||||
+ bdb_atomic_init(&frozen_bhp->ref, 0);
|
||||
if (mutex != MUTEX_INVALID)
|
||||
frozen_bhp->mtx_buf = mutex;
|
||||
else if ((ret = __mutex_alloc(env, MTX_MPOOL_BH,
|
||||
@@ -428,7 +428,7 @@ __memp_bh_thaw(dbmp, infop, hp, frozen_bhp, alloc_bhp)
|
||||
#endif
|
||||
alloc_bhp->mtx_buf = mutex;
|
||||
MUTEX_LOCK(env, alloc_bhp->mtx_buf);
|
||||
- atomic_init(&alloc_bhp->ref, 1);
|
||||
+ bdb_atomic_init(&alloc_bhp->ref, 1);
|
||||
F_CLR(alloc_bhp, BH_FROZEN);
|
||||
}
|
||||
|
||||
diff --git a/mp/mp_region.c b/mp/mp_region.c
|
||||
index e6cece9..e3e3382 100644
|
||||
--- a/mp/mp_region.c
|
||||
+++ b/mp/mp_region.c
|
||||
@@ -224,7 +224,7 @@ __memp_init(env, dbmp, reginfo_off, htab_buckets, max_nreg)
|
||||
MTX_MPOOL_FILE_BUCKET, 0, &htab[i].mtx_hash)) != 0)
|
||||
return (ret);
|
||||
SH_TAILQ_INIT(&htab[i].hash_bucket);
|
||||
- atomic_init(&htab[i].hash_page_dirty, 0);
|
||||
+ bdb_atomic_init(&htab[i].hash_page_dirty, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -269,7 +269,7 @@ __memp_init(env, dbmp, reginfo_off, htab_buckets, max_nreg)
|
||||
hp->mtx_hash = (mtx_base == MUTEX_INVALID) ? MUTEX_INVALID :
|
||||
mtx_base + i;
|
||||
SH_TAILQ_INIT(&hp->hash_bucket);
|
||||
- atomic_init(&hp->hash_page_dirty, 0);
|
||||
+ bdb_atomic_init(&hp->hash_page_dirty, 0);
|
||||
#ifdef HAVE_STATISTICS
|
||||
hp->hash_io_wait = 0;
|
||||
hp->hash_frozen = hp->hash_thawed = hp->hash_frozen_freed = 0;
|
||||
diff --git a/mutex/mut_method.c b/mutex/mut_method.c
|
||||
index 2588763..56b6723 100644
|
||||
--- a/mutex/mut_method.c
|
||||
+++ b/mutex/mut_method.c
|
||||
@@ -426,7 +426,7 @@ atomic_compare_exchange(env, v, oldval, newval)
|
||||
MUTEX_LOCK(env, mtx);
|
||||
ret = atomic_read(v) == oldval;
|
||||
if (ret)
|
||||
- atomic_init(v, newval);
|
||||
+ bdb_atomic_init(v, newval);
|
||||
MUTEX_UNLOCK(env, mtx);
|
||||
|
||||
return (ret);
|
||||
diff --git a/mutex/mut_tas.c b/mutex/mut_tas.c
|
||||
index f3922e0..934a654 100644
|
||||
--- a/mutex/mut_tas.c
|
||||
+++ b/mutex/mut_tas.c
|
||||
@@ -46,7 +46,7 @@ __db_tas_mutex_init(env, mutex, flags)
|
||||
|
||||
#ifdef HAVE_SHARED_LATCHES
|
||||
if (F_ISSET(mutexp, DB_MUTEX_SHARED))
|
||||
- atomic_init(&mutexp->sharecount, 0);
|
||||
+ bdb_atomic_init(&mutexp->sharecount, 0);
|
||||
else
|
||||
#endif
|
||||
if (MUTEX_INIT(&mutexp->tas)) {
|
||||
@@ -486,7 +486,7 @@ __db_tas_mutex_unlock(env, mutex)
|
||||
F_CLR(mutexp, DB_MUTEX_LOCKED);
|
||||
/* Flush flag update before zeroing count */
|
||||
MEMBAR_EXIT();
|
||||
- atomic_init(&mutexp->sharecount, 0);
|
||||
+ bdb_atomic_init(&mutexp->sharecount, 0);
|
||||
} else {
|
||||
DB_ASSERT(env, sharecount > 0);
|
||||
MEMBAR_EXIT();
|
23
externals/vcpkg/ports/berkeleydb/portfile.cmake
vendored
Executable file
23
externals/vcpkg/ports/berkeleydb/portfile.cmake
vendored
Executable file
@@ -0,0 +1,23 @@
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://download.oracle.com/berkeley-db/db-4.8.30.NC.zip"
|
||||
FILENAME "db-4.8.30.NC.zip"
|
||||
SHA512 59c1d2d5a3551f988ab1dc063900572b67ad087537e0d71760de34601f9ebd4d5c070a49b809bec4a599a62417e9a162683ce0f6442deb1a0dadb80764bf6eab
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${ARCHIVE}
|
||||
PATCHES fix-conflict-macro.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS_DEBUG -DINSTALL_HEADERS=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
8
externals/vcpkg/ports/berkeleydb/vcpkg.json
vendored
Executable file
8
externals/vcpkg/ports/berkeleydb/vcpkg.json
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "berkeleydb",
|
||||
"version": "4.8.30",
|
||||
"port-version": 8,
|
||||
"description": "BDB - A high-performance embedded database for key/value data.",
|
||||
"homepage": "https://download.oracle.com/",
|
||||
"supports": "!(uwp | linux | osx)"
|
||||
}
|
Reference in New Issue
Block a user