From cab228435bde1b5496522c03a4ce9840f2ef3701 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Mon, 30 Jul 2007 11:58:31 +0300 Subject: Update internal BDB to version 4.6.18. --- db/LICENSE | 25 +- db/README | 8 +- db/btree/bt_compact.c | 173 +- db/btree/bt_compare.c | 5 +- db/btree/bt_conv.c | 5 +- db/btree/bt_curadj.c | 11 +- db/btree/bt_cursor.c | 273 +- db/btree/bt_delete.c | 37 +- db/btree/bt_method.c | 5 +- db/btree/bt_open.c | 35 +- db/btree/bt_put.c | 21 +- db/btree/bt_rec.c | 187 +- db/btree/bt_reclaim.c | 7 +- db/btree/bt_recno.c | 53 +- db/btree/bt_rsearch.c | 20 +- db/btree/bt_search.c | 47 +- db/btree/bt_split.c | 245 +- db/btree/bt_stat.c | 32 +- db/btree/bt_upgrade.c | 5 +- db/btree/bt_verify.c | 14 +- db/btree/btree.src | 9 +- db/btree/btree_auto.c | 96 +- db/btree/btree_autop.c | 2 +- db/build_brew/bdb_brew.dsp | 625 + db/build_brew/bdb_brew.dsw | 29 + db/build_brew/bdbread.mak | 587 + db/build_brew/brew_db.h | 150 + db/build_brew/clib_port.h | 203 + db/build_brew/db.h | 2663 ++++ db/build_brew/db_config.h | 549 + db/build_brew/db_int.h | 775 ++ db/build_brew/errno.h | 188 + db/build_s60/bdb_s60.mmp | 183 + db/build_s60/clib_port.h | 203 + db/build_s60/db.h | 2646 ++++ db/build_s60/db_config.h | 548 + db/build_s60/db_int.h | 774 ++ db/build_vxworks/BerkeleyDB/Makefile.component | 2060 ---- db/build_vxworks/BerkeleyDB20.wpj | 183 +- db/build_vxworks/BerkeleyDB20small.wpj | 145 +- db/build_vxworks/BerkeleyDB22.wpj | 183 +- db/build_vxworks/BerkeleyDB22small.wpj | 145 +- db/build_vxworks/clib_port.h | 108 + db/build_vxworks/db.h | 557 +- db/build_vxworks/db_archive/db_archive.c | 9 +- .../db_archive/db_archive/Makefile.component | 433 - db/build_vxworks/db_checkpoint/db_checkpoint.c | 9 +- .../db_checkpoint/db_checkpoint/Makefile.component | 433 - db/build_vxworks/db_config.h | 115 +- db/build_vxworks/db_config_small.h | 115 +- db/build_vxworks/db_deadlock/db_deadlock.c | 16 +- .../db_deadlock/db_deadlock/Makefile.component | 433 - db/build_vxworks/db_dump/db_dump.c | 77 +- .../db_dump/db_dump/Makefile.component | 433 - db/build_vxworks/db_hotbackup/db_hotbackup.c | 337 +- db/build_vxworks/db_int.h | 108 +- db/build_vxworks/db_load/db_load.c | 42 +- .../db_load/db_load/Makefile.component | 433 - db/build_vxworks/db_printlog/db_printlog.c | 17 +- .../db_printlog/db_printlog/Makefile.component | 433 - db/build_vxworks/db_recover/db_recover.c | 47 +- .../db_recover/db_recover/Makefile.component | 433 - db/build_vxworks/db_stat/db_stat.c | 22 +- .../db_stat/db_stat/Makefile.component | 433 - db/build_vxworks/db_upgrade/db_upgrade.c | 9 +- .../db_upgrade/db_upgrade/Makefile.component | 433 - db/build_vxworks/db_verify/db_verify.c | 9 +- .../db_verify/db_verify/Makefile.component | 433 - db/build_vxworks/dbdemo/dbdemo.c | 11 +- db/build_vxworks/demo/DBdemo.wpj | 162 - db/build_vxworks/demo/README | 30 - db/build_vxworks/demo/dbdemo.c | 130 - db/build_vxworks/demo/demo/Makefile.component | 433 - db/build_vxworks/demo/demo/Makefile.custom | 51 - db/build_vxworks/demo/demo/component.cdf | 30 - db/build_vxworks/demo/demo/component.wpj | 607 - db/build_vxworks/ex_access/ex_access.wpj | 244 - db/build_vxworks/ex_btrec/ex_btrec.wpj | 250 - db/build_vxworks/ex_dbclient/ex_dbclient.wpj | 266 - db/build_vxworks/ex_env/ex_env.wpj | 248 - db/build_vxworks/ex_mpool/ex_mpool.wpj | 248 - db/build_vxworks/ex_tpcb/ex_tpcb.wpj | 261 - db/build_win32/Berkeley_DB.dsw | 539 - db/build_win32/app_dsp.src | 145 - db/build_win32/build_all.dsp | 96 - db/build_win32/db.h | 2242 ---- db/build_win32/db_archive.dsp | 148 - db/build_win32/db_buildall.dsp | 128 - db/build_win32/db_checkpoint.dsp | 148 - db/build_win32/db_config.h | 443 - db/build_win32/db_cxx.h | 1089 -- db/build_win32/db_deadlock.dsp | 148 - db/build_win32/db_dll.dsp | 880 -- db/build_win32/db_dump.dsp | 148 - db/build_win32/db_int.h | 592 - db/build_win32/db_java.dsp | 132 - db/build_win32/db_java_xa.dsp | 85 - db/build_win32/db_java_xaj.mak | 21 - db/build_win32/db_lib.dsp | 92 - db/build_win32/db_load.dsp | 148 - db/build_win32/db_perf.dsp | 224 - db/build_win32/db_printlog.dsp | 184 - db/build_win32/db_recover.dsp | 148 - db/build_win32/db_small.dsp | 720 -- db/build_win32/db_stat.dsp | 148 - db/build_win32/db_static.dsp | 864 -- db/build_win32/db_tcl.dsp | 148 - db/build_win32/db_test.dsp | 100 - db/build_win32/db_test.src | 97 - db/build_win32/db_upgrade.dsp | 148 - db/build_win32/db_verify.dsp | 148 - db/build_win32/dbkill.cpp | 131 - db/build_win32/dynamic_dsp.src | 93 - db/build_win32/ex_access.dsp | 148 - db/build_win32/ex_btrec.dsp | 148 - db/build_win32/ex_env.dsp | 148 - db/build_win32/ex_lock.dsp | 148 - db/build_win32/ex_mpool.dsp | 148 - db/build_win32/ex_repquote.dsp | 164 - db/build_win32/ex_repquote.src | 145 - db/build_win32/ex_tpcb.dsp | 148 - db/build_win32/excxx_access.dsp | 148 - db/build_win32/excxx_btrec.dsp | 148 - db/build_win32/excxx_env.dsp | 148 - db/build_win32/excxx_lock.dsp | 148 - db/build_win32/excxx_mpool.dsp | 148 - db/build_win32/excxx_tpcb.dsp | 148 - db/build_win32/include.tcl | 20 - db/build_win32/java_dsp.src | 129 - db/build_win32/libdb.def | 171 - db/build_win32/libdb.rc | 33 - db/build_win32/libdb_tcl.def | 7 - db/build_win32/libdbrc.src | 33 - db/build_win32/small_dsp.src | 85 - db/build_win32/srcfile_dsp.src | 4 - db/build_win32/static_dsp.src | 85 - db/build_win32/tcl_dsp.src | 93 - db/build_win32/win_db.h | 94 - db/build_win64/Berkeley_DB.dsw | 539 - db/build_win64/app_dsp.src | 145 - db/build_win64/build_all.dsp | 96 - db/build_win64/db.h | 2242 ---- db/build_win64/db_archive.dsp | 148 - db/build_win64/db_checkpoint.dsp | 148 - db/build_win64/db_config.h | 443 - db/build_win64/db_cxx.h | 1089 -- db/build_win64/db_deadlock.dsp | 148 - db/build_win64/db_dll.dsp | 880 -- db/build_win64/db_dump.dsp | 148 - db/build_win64/db_int.h | 592 - db/build_win64/db_java.dsp | 132 - db/build_win64/db_lib.dsp | 92 - db/build_win64/db_load.dsp | 148 - db/build_win64/db_perf.dsp | 224 - db/build_win64/db_printlog.dsp | 184 - db/build_win64/db_recover.dsp | 148 - db/build_win64/db_small.dsp | 720 -- db/build_win64/db_stat.dsp | 148 - db/build_win64/db_static.dsp | 864 -- db/build_win64/db_tcl.dsp | 148 - db/build_win64/db_test.dsp | 100 - db/build_win64/db_test.src | 97 - db/build_win64/db_upgrade.dsp | 148 - db/build_win64/db_verify.dsp | 148 - db/build_win64/dynamic_dsp.src | 93 - db/build_win64/ex_access.dsp | 148 - db/build_win64/ex_btrec.dsp | 148 - db/build_win64/ex_env.dsp | 148 - db/build_win64/ex_lock.dsp | 148 - db/build_win64/ex_mpool.dsp | 148 - db/build_win64/ex_repquote.dsp | 164 - db/build_win64/ex_repquote.src | 145 - db/build_win64/ex_tpcb.dsp | 148 - db/build_win64/excxx_access.dsp | 148 - db/build_win64/excxx_btrec.dsp | 148 - db/build_win64/excxx_env.dsp | 148 - db/build_win64/excxx_lock.dsp | 148 - db/build_win64/excxx_mpool.dsp | 148 - db/build_win64/excxx_tpcb.dsp | 148 - db/build_win64/java_dsp.src | 129 - db/build_win64/libdbrc.src | 33 - db/build_win64/small_dsp.src | 85 - db/build_win64/srcfile_dsp.src | 4 - db/build_win64/static_dsp.src | 85 - db/build_win64/tcl_dsp.src | 93 - db/build_win64/win_db.h | 94 - db/build_wince/Berkeley_DB.sln | 61 + db/build_wince/Berkeley_DB.vcw | 56 + db/build_wince/app_vcp.src | 181 + db/build_wince/app_vcproj.src | 433 + db/build_wince/clib_port.h | 205 + db/build_wince/db.h | 2698 ++++ db/build_wince/db_config.h | 561 + db/build_wince/db_int.h | 774 ++ db/build_wince/db_small.vcp | 858 ++ db/build_wince/db_small.vcproj | 7442 +++++++++++ db/build_wince/db_static.vcp | 970 ++ db/build_wince/db_static.vcproj | 8562 +++++++++++++ db/build_wince/errno.h | 188 + db/build_wince/rsrcfile_vcproj.src | 40 + db/build_wince/srcfile_vcp.src | 4 + db/build_wince/srcfile_vcproj.src | 40 + db/build_wince/static_vcp.src | 151 + db/build_wince/static_vcproj.src | 363 + db/build_wince/wce_tpcb.vcp | 192 + db/build_wince/wce_tpcb.vcproj | 552 + db/build_windows/Berkeley_DB.dsw | 15 + db/build_windows/app_dsp.src | 140 +- db/build_windows/build_all.dsp | 117 +- db/build_windows/clib_port.h | 108 + db/build_windows/db.h | 577 +- db/build_windows/db_archive.dsp | 164 +- db/build_windows/db_checkpoint.dsp | 164 +- db/build_windows/db_codegen.dsp | 372 + db/build_windows/db_config.h | 124 +- db/build_windows/db_cxx.h | 114 +- db/build_windows/db_deadlock.dsp | 164 +- db/build_windows/db_dll.dsp | 219 +- db/build_windows/db_dump.dsp | 164 +- db/build_windows/db_hotbackup.dsp | 164 +- db/build_windows/db_int.h | 105 +- db/build_windows/db_java.dsp | 247 +- db/build_windows/db_load.dsp | 164 +- db/build_windows/db_perf.dsp | 164 +- db/build_windows/db_printlog.dsp | 164 +- db/build_windows/db_recover.dsp | 164 +- db/build_windows/db_reptest.dsp | 164 +- db/build_windows/db_small.dsp | 200 +- db/build_windows/db_stat.dsp | 164 +- db/build_windows/db_static.dsp | 204 +- db/build_windows/db_tcl.dsp | 183 +- db/build_windows/db_test.dsp | 184 +- db/build_windows/db_upgrade.dsp | 164 +- db/build_windows/db_verify.dsp | 164 +- db/build_windows/dbkill.cpp | 5 +- db/build_windows/dynamic_dsp.src | 151 +- db/build_windows/ex_access.dsp | 164 +- db/build_windows/ex_btrec.dsp | 164 +- db/build_windows/ex_csvcode.dsp | 184 +- db/build_windows/ex_csvload.dsp | 164 +- db/build_windows/ex_csvquery.dsp | 164 +- db/build_windows/ex_env.dsp | 164 +- db/build_windows/ex_lock.dsp | 164 +- db/build_windows/ex_mpool.dsp | 164 +- db/build_windows/ex_rep_base.dsp | 164 +- db/build_windows/ex_rep_mgr.dsp | 164 +- db/build_windows/ex_sequence.dsp | 164 +- db/build_windows/ex_tpcb.dsp | 164 +- db/build_windows/ex_txnguide.dsp | 164 +- db/build_windows/ex_txnguide_inmem.dsp | 164 +- db/build_windows/example_database_load.dsp | 164 +- db/build_windows/example_database_read.dsp | 164 +- db/build_windows/excxx_access.dsp | 164 +- db/build_windows/excxx_btrec.dsp | 164 +- db/build_windows/excxx_env.dsp | 164 +- db/build_windows/excxx_example_database_load.dsp | 164 +- db/build_windows/excxx_example_database_read.dsp | 164 +- db/build_windows/excxx_lock.dsp | 164 +- db/build_windows/excxx_mpool.dsp | 164 +- db/build_windows/excxx_repquote.dsp | 164 +- db/build_windows/excxx_sequence.dsp | 164 +- db/build_windows/excxx_tpcb.dsp | 164 +- db/build_windows/excxx_txnguide.dsp | 164 +- db/build_windows/excxx_txnguide_inmem.dsp | 164 +- db/build_windows/include.tcl | 2 +- db/build_windows/libdb.def | 261 +- db/build_windows/libdb.rc | 20 +- db/build_windows/libdbrc.src | 6 +- db/build_windows/static_dsp.src | 128 +- db/build_windows/test_mutex.dsp | 364 + db/build_windows/tm.dsp | 256 - db/build_windows/win_db.h | 143 - db/clib/abort.c | 29 - db/clib/ctime.c | 5 +- db/clib/getaddrinfo.c | 21 +- db/clib/getcwd.c | 9 +- db/clib/getopt.c | 5 +- db/clib/isalpha.c | 5 +- db/clib/isdigit.c | 5 +- db/clib/isprint.c | 5 +- db/clib/isspace.c | 5 +- db/clib/memcmp.c | 5 +- db/clib/memmove.c | 5 +- db/clib/printf.c | 5 +- db/clib/qsort.c | 181 + db/clib/raise.c | 5 +- db/clib/rand.c | 8 +- db/clib/snprintf.c | 7 +- db/clib/strcasecmp.c | 83 +- db/clib/strerror.c | 252 +- db/common/crypto_stub.c | 5 +- db/common/db_byteorder.c | 5 +- db/common/db_clock.c | 31 - db/common/db_err.c | 155 +- db/common/db_getlong.c | 5 +- db/common/db_idspace.c | 5 +- db/common/db_log2.c | 5 +- db/common/db_shash.c | 104 + db/common/mkpath.c | 5 +- db/common/util_arg.c | 5 +- db/common/util_cache.c | 5 +- db/common/util_log.c | 5 +- db/common/util_sig.c | 5 +- db/crypto/aes_method.c | 5 +- db/crypto/crypto.c | 66 +- db/crypto/crypto.html | 2 +- db/crypto/mersenne/mt19937db.c | 13 +- db/cxx/cxx_app.cpp | 671 - db/cxx/cxx_db.cpp | 24 +- db/cxx/cxx_dbc.cpp | 16 +- db/cxx/cxx_dbt.cpp | 5 +- db/cxx/cxx_env.cpp | 27 +- db/cxx/cxx_except.cpp | 5 +- db/cxx/cxx_lock.cpp | 5 +- db/cxx/cxx_log.cpp | 125 - db/cxx/cxx_logc.cpp | 24 +- db/cxx/cxx_mpool.cpp | 14 +- db/cxx/cxx_multi.cpp | 5 +- db/cxx/cxx_seq.cpp | 7 +- db/cxx/cxx_table.cpp | 808 -- db/cxx/cxx_txn.cpp | 5 +- db/cxx/namemap.txt | 21 - db/db/Design.fileop | 452 - db/db/crdel.src | 5 +- db/db/crdel_auto.c | 32 +- db/db/crdel_rec.c | 30 +- db/db/db.c | 480 +- db/db/db.src | 13 +- db/db/db_am.c | 166 +- db/db/db_auto.c | 104 +- db/db/db_cam.c | 770 +- db/db/db_cds.c | 16 +- db/db/db_conv.c | 159 +- db/db/db_dispatch.c | 87 +- db/db/db_dup.c | 5 +- db/db/db_iface.c | 278 +- db/db/db_join.c | 68 +- db/db/db_meta.c | 137 +- db/db/db_method.c | 139 +- db/db/db_open.c | 38 +- db/db/db_overflow.c | 173 +- db/db/db_ovfl_vrfy.c | 10 +- db/db/db_pr.c | 36 +- db/db/db_rec.c | 239 +- db/db/db_reclaim.c | 16 +- db/db/db_remove.c | 71 +- db/db/db_rename.c | 56 +- db/db/db_ret.c | 6 +- db/db/db_setid.c | 53 +- db/db/db_setlsn.c | 13 +- db/db/db_stati.c | 27 +- db/db/db_truncate.c | 11 +- db/db/db_upg.c | 159 +- db/db/db_upg_opd.c | 5 +- db/db/db_vrfy.c | 162 +- db/db/db_vrfy_stub.c | 5 +- db/db/db_vrfyutil.c | 27 +- db/db185/db185.c | 30 +- db/db185/db185_int.h | 129 - db/db185/db185_int.in | 5 +- db/db_archive/db_archive.c | 9 +- db/db_checkpoint/db_checkpoint.c | 9 +- db/db_codegen/code_capi.c | 626 + db/db_codegen/code_parse.c | 338 + db/db_codegen/db_codegen.c | 116 + db/db_codegen/db_codegen.h | 59 + db/db_codegen/example1 | 16 + db/db_codegen/example2 | 27 + db/db_codegen/example3 | 25 + db/db_codegen/example4 | 26 + db/db_deadlock/db_deadlock.c | 16 +- db/db_dump/db_dump.c | 77 +- db/db_dump185/db_dump185.c | 9 +- db/db_hotbackup/db_hotbackup.c | 337 +- db/db_load/db_load.c | 42 +- db/db_printlog/db_printlog.c | 17 +- db/db_recover/db_recover.c | 47 +- db/db_stat/db_stat.c | 22 +- db/db_upgrade/db_upgrade.c | 9 +- db/db_verify/db_verify.c | 9 +- db/dbinc/btree.h | 5 +- db/dbinc/clock.h | 108 + db/dbinc/crypto.h | 5 +- db/dbinc/cxx_int.h | 5 +- db/dbinc/db.in | 561 +- db/dbinc/db_185.in | 5 +- db/dbinc/db_am.h | 44 +- db/dbinc/db_cxx.in | 114 +- db/dbinc/db_dispatch.h | 6 +- db/dbinc/db_int.in | 105 +- db/dbinc/db_join.h | 5 +- db/dbinc/db_page.h | 16 +- db/dbinc/db_server_int.h | 5 +- db/dbinc/db_shash.h | 81 - db/dbinc/db_swap.h | 5 +- db/dbinc/db_upgrade.h | 5 +- db/dbinc/db_verify.h | 5 +- db/dbinc/debug.h | 114 +- db/dbinc/fop.h | 5 +- db/dbinc/globals.h | 29 +- db/dbinc/hash.h | 21 +- db/dbinc/hmac.h | 5 +- db/dbinc/lock.h | 118 +- db/dbinc/log.h | 28 +- db/dbinc/mp.h | 218 +- db/dbinc/mutex.h | 91 +- db/dbinc/mutex_int.h | 102 +- db/dbinc/os.h | 23 +- db/dbinc/qam.h | 18 +- db/dbinc/region.h | 42 +- db/dbinc/rep.h | 317 +- db/dbinc/repmgr.h | 14 +- db/dbinc/shqueue.h | 9 +- db/dbinc/tcl_db.h | 7 +- db/dbinc/txn.h | 11 +- db/dbinc/win_db.h | 151 + db/dbinc/xa.h | 5 +- db/dbinc_auto/btree_ext.h | 18 +- db/dbinc_auto/clib_ext.h | 6 +- db/dbinc_auto/common_ext.h | 9 +- db/dbinc_auto/crypto_ext.h | 4 +- db/dbinc_auto/db_ext.h | 62 +- db/dbinc_auto/dbreg_ext.h | 11 +- db/dbinc_auto/env_ext.h | 64 +- db/dbinc_auto/fileops_auto.h | 1 + db/dbinc_auto/fileops_ext.h | 9 +- db/dbinc_auto/hash_ext.h | 19 +- db/dbinc_auto/int_def.in | 385 +- db/dbinc_auto/lock_ext.h | 39 +- db/dbinc_auto/log_ext.h | 18 +- db/dbinc_auto/mp_ext.h | 36 +- db/dbinc_auto/mutex_ext.h | 7 +- db/dbinc_auto/os_ext.h | 42 +- db/dbinc_auto/qam_ext.h | 8 +- db/dbinc_auto/rep_ext.h | 41 +- db/dbinc_auto/repmgr_ext.h | 44 +- db/dbinc_auto/rpc_client_ext.h | 30 +- db/dbinc_auto/rpc_server_ext.h | 18 +- db/dbinc_auto/tcl_ext.h | 3 + db/dbinc_auto/txn_auto.h | 2 +- db/dbinc_auto/txn_ext.h | 17 +- db/dbm/dbm.c | 11 +- db/dbreg/dbreg.c | 232 +- db/dbreg/dbreg.src | 5 +- db/dbreg/dbreg_auto.c | 8 +- db/dbreg/dbreg_rec.c | 39 +- db/dbreg/dbreg_stat.c | 6 +- db/dbreg/dbreg_util.c | 116 +- db/dist/Makefile.in | 146 +- db/dist/RELEASE | 6 +- db/dist/acconfig.h | 108 - db/dist/aclocal/config.ac | 22 - db/dist/aclocal/config.m4 | 22 + db/dist/aclocal/cxx.ac | 17 - db/dist/aclocal/cxx.m4 | 17 + db/dist/aclocal/gcc.ac | 36 - db/dist/aclocal/gcc.m4 | 36 + db/dist/aclocal/libtool.ac | 6397 ---------- db/dist/aclocal/libtool.m4 | 6397 ++++++++++ db/dist/aclocal/mutex.ac | 746 -- db/dist/aclocal/mutex.m4 | 921 +- db/dist/aclocal/options.ac | 291 - db/dist/aclocal/options.m4 | 273 +- db/dist/aclocal/programs.ac | 52 - db/dist/aclocal/programs.m4 | 76 +- db/dist/aclocal/rpc.ac | 77 - db/dist/aclocal/rpc.m4 | 77 + db/dist/aclocal/sequence.ac | 91 - db/dist/aclocal/sequence.m4 | 91 + db/dist/aclocal/socklen.m4 | 55 + db/dist/aclocal/sosuffix.ac | 76 - db/dist/aclocal/sosuffix.m4 | 76 + db/dist/aclocal/tcl.ac | 135 - db/dist/aclocal/tcl.m4 | 145 +- db/dist/aclocal/types.ac | 167 - db/dist/aclocal/types.m4 | 310 +- db/dist/aclocal_java/ac_check_class.ac | 107 - db/dist/aclocal_java/ac_check_class.m4 | 107 + db/dist/aclocal_java/ac_check_classpath.ac | 23 - db/dist/aclocal_java/ac_check_classpath.m4 | 23 + db/dist/aclocal_java/ac_check_junit.ac | 54 - db/dist/aclocal_java/ac_check_junit.m4 | 54 + db/dist/aclocal_java/ac_check_rqrd_class.ac | 26 - db/dist/aclocal_java/ac_check_rqrd_class.m4 | 26 + db/dist/aclocal_java/ac_java_options.ac | 32 - db/dist/aclocal_java/ac_java_options.m4 | 32 + db/dist/aclocal_java/ac_jni_include_dirs.ac | 114 - db/dist/aclocal_java/ac_jni_include_dirs.m4 | 114 + db/dist/aclocal_java/ac_prog_jar.ac | 36 - db/dist/aclocal_java/ac_prog_jar.m4 | 36 + db/dist/aclocal_java/ac_prog_java.ac | 79 - db/dist/aclocal_java/ac_prog_java.m4 | 79 + db/dist/aclocal_java/ac_prog_java_works.ac | 97 - db/dist/aclocal_java/ac_prog_java_works.m4 | 97 + db/dist/aclocal_java/ac_prog_javac.ac | 43 - db/dist/aclocal_java/ac_prog_javac.m4 | 43 + db/dist/aclocal_java/ac_prog_javac_works.ac | 35 - db/dist/aclocal_java/ac_prog_javac_works.m4 | 35 + db/dist/aclocal_java/ac_prog_javadoc.ac | 37 - db/dist/aclocal_java/ac_prog_javadoc.m4 | 37 + db/dist/aclocal_java/ac_prog_javah.ac | 26 - db/dist/aclocal_java/ac_prog_javah.m4 | 26 + db/dist/aclocal_java/ac_try_compile_java.ac | 39 - db/dist/aclocal_java/ac_try_compile_java.m4 | 39 + db/dist/aclocal_java/ac_try_run_javac.ac | 40 - db/dist/aclocal_java/ac_try_run_javac.m4 | 40 + db/dist/brew/bdb_brew.dsp | 115 + db/dist/brew/bdbread.mak | 418 + db/dist/brew/brew_config.in | 548 + db/dist/brew/brew_db.in | 150 + db/dist/brew/brew_make.in | 25 + db/dist/brew/brew_posix.h | 103 + db/dist/build/chk.code | 35 - db/dist/build/chk.def | 50 - db/dist/build/chk.define | 55 - db/dist/build/chk.offt | 19 - db/dist/build/chk.proto | 30 - db/dist/build/chk.srcfiles | 29 - db/dist/build/chk.str | 22 - db/dist/build/chk.tags | 39 - db/dist/build/script | 94 - db/dist/buildrel | 41 +- db/dist/clib_port.h | 97 - db/dist/clib_port.in | 205 + db/dist/config.guess | 34 +- db/dist/config.hin | 76 +- db/dist/config.sub | 24 +- db/dist/configure | 9660 ++++++--------- db/dist/configure.ac | 134 +- db/dist/configure.in | 501 - db/dist/errno.h | 8 +- db/dist/gen_rec.awk | 283 +- db/dist/gen_rpc.awk | 51 +- db/dist/ltconfig | 3136 ----- db/dist/pubdef.in | 46 +- db/dist/rec_ctemp | 62 - db/dist/s60/s60.mmp.1 | 7 + db/dist/s60/s60.mmp.2 | 7 + db/dist/s60/s60_config.in | 547 + db/dist/s60/s60_make.in | 25 + db/dist/s_all | 17 +- db/dist/s_brew | 142 + db/dist/s_brew_dsp | 65 + db/dist/s_brew_posix | 107 + db/dist/s_config | 4 +- db/dist/s_crypto | 6 +- db/dist/s_cscope | 17 + db/dist/s_include | 7 +- db/dist/s_java_stat | 12 +- db/dist/s_je2db | 4 +- db/dist/s_readme | 8 +- db/dist/s_s60 | 117 + db/dist/s_s60_mmp | 36 + db/dist/s_s60_posix | 65 + db/dist/s_symlink | 5 +- db/dist/s_tags | 3 +- db/dist/s_tcl | 53 - db/dist/s_vxworks | 57 +- db/dist/s_win32 | 153 - db/dist/s_win32_dsp | 118 - db/dist/s_windows | 76 +- db/dist/s_windows_dsp | 174 +- db/dist/srcfiles.in | 883 +- db/dist/tags | 4514 +++---- db/dist/template/db_server_proc | 148 +- db/dist/template/gen_client_ret | 46 +- db/dist/template/rec_ctemp | 6 +- db/dist/template/rec_fileops | 6 +- db/dist/template/rec_log | 137 - db/dist/vx_config.in | 109 +- db/dist/vx_setup/LICENSE.TXT | 3 +- db/dist/vx_setup/README.in | 6 +- db/dist/vx_setup/vx_setup.in | 6 +- db/dist/win_config.in | 118 +- db/dist/win_db.in | 143 - db/dist/win_exports.in | 11 +- db/dist/wince_config.in | 560 + db/dist/winmsi/files.in | 3 +- db/docs/.cvsignore | 9 + db/docs/api_c/api_core.html | 29 +- db/docs/api_c/c_pindex.html | 115 +- db/docs/api_c/db_associate.html | 69 +- db/docs/api_c/db_class.html | 5 +- db/docs/api_c/db_close.html | 5 +- db/docs/api_c/db_compact.html | 5 +- db/docs/api_c/db_cursor.html | 23 +- db/docs/api_c/db_del.html | 18 +- db/docs/api_c/db_err.html | 5 +- db/docs/api_c/db_exists.html | 81 + db/docs/api_c/db_fd.html | 5 +- db/docs/api_c/db_get.html | 41 +- db/docs/api_c/db_get_byteswapped.html | 5 +- db/docs/api_c/db_get_mpf.html | 5 +- db/docs/api_c/db_get_type.html | 5 +- db/docs/api_c/db_getenv.html | 5 +- db/docs/api_c/db_join.html | 31 +- db/docs/api_c/db_key_range.html | 19 +- db/docs/api_c/db_list.html | 10 +- db/docs/api_c/db_lsn.html | 36 - db/docs/api_c/db_open.html | 52 +- db/docs/api_c/db_put.html | 18 +- db/docs/api_c/db_remove.html | 5 +- db/docs/api_c/db_rename.html | 5 +- db/docs/api_c/db_set_alloc.html | 5 +- db/docs/api_c/db_set_append_recno.html | 5 +- db/docs/api_c/db_set_bt_compare.html | 7 +- db/docs/api_c/db_set_bt_minkey.html | 5 +- db/docs/api_c/db_set_bt_prefix.html | 5 +- db/docs/api_c/db_set_cachesize.html | 16 +- db/docs/api_c/db_set_dup_compare.html | 5 +- db/docs/api_c/db_set_encrypt.html | 5 +- db/docs/api_c/db_set_errcall.html | 5 +- db/docs/api_c/db_set_errfile.html | 26 +- db/docs/api_c/db_set_errpfx.html | 5 +- db/docs/api_c/db_set_feedback.html | 5 +- db/docs/api_c/db_set_flags.html | 9 +- db/docs/api_c/db_set_h_compare.html | 86 + db/docs/api_c/db_set_h_ffactor.html | 5 +- db/docs/api_c/db_set_h_hash.html | 5 +- db/docs/api_c/db_set_h_nelem.html | 5 +- db/docs/api_c/db_set_lorder.html | 5 +- db/docs/api_c/db_set_malloc.html | 98 - db/docs/api_c/db_set_msgcall.html | 5 +- db/docs/api_c/db_set_msgfile.html | 5 +- db/docs/api_c/db_set_pagesize.html | 5 +- db/docs/api_c/db_set_paniccall.html | 73 - db/docs/api_c/db_set_priority.html | 88 + db/docs/api_c/db_set_q_extentsize.html | 5 +- db/docs/api_c/db_set_re_delim.html | 5 +- db/docs/api_c/db_set_re_len.html | 5 +- db/docs/api_c/db_set_re_pad.html | 5 +- db/docs/api_c/db_set_re_source.html | 5 +- db/docs/api_c/db_set_realloc.html | 99 - db/docs/api_c/db_stat.html | 50 +- db/docs/api_c/db_sync.html | 5 +- db/docs/api_c/db_truncate.html | 18 +- db/docs/api_c/db_upgrade.html | 5 +- db/docs/api_c/db_verify.html | 5 +- db/docs/api_c/dbc_class.html | 7 +- db/docs/api_c/dbc_close.html | 25 +- db/docs/api_c/dbc_count.html | 21 +- db/docs/api_c/dbc_del.html | 23 +- db/docs/api_c/dbc_dup.html | 21 +- db/docs/api_c/dbc_get.html | 105 +- db/docs/api_c/dbc_list.html | 20 +- db/docs/api_c/dbc_put.html | 51 +- db/docs/api_c/dbc_set_priority.html | 87 + db/docs/api_c/dbm.html | 5 +- db/docs/api_c/dbt.html | 158 - db/docs/api_c/dbt_bulk.html | 19 +- db/docs/api_c/dbt_class.html | 25 +- db/docs/api_c/dbt_package.html | 5 +- db/docs/api_c/env_cdsgroup_begin.html | 5 +- db/docs/api_c/env_class.html | 5 +- db/docs/api_c/env_close.html | 5 +- db/docs/api_c/env_dbremove.html | 18 +- db/docs/api_c/env_dbrename.html | 18 +- db/docs/api_c/env_err.html | 5 +- db/docs/api_c/env_event_notify.html | 32 +- db/docs/api_c/env_failchk.html | 9 +- db/docs/api_c/env_fileid_reset.html | 5 +- db/docs/api_c/env_list.html | 5 +- db/docs/api_c/env_lsn_reset.html | 5 +- db/docs/api_c/env_open.html | 5 +- db/docs/api_c/env_remove.html | 12 +- db/docs/api_c/env_set_alloc.html | 5 +- db/docs/api_c/env_set_app_dispatch.html | 5 +- db/docs/api_c/env_set_cache_max.html | 91 + db/docs/api_c/env_set_cachesize.html | 40 +- db/docs/api_c/env_set_data_dir.html | 5 +- db/docs/api_c/env_set_encrypt.html | 5 +- db/docs/api_c/env_set_errcall.html | 5 +- db/docs/api_c/env_set_errfile.html | 26 +- db/docs/api_c/env_set_errpfx.html | 5 +- db/docs/api_c/env_set_feedback.html | 5 +- db/docs/api_c/env_set_flags.html | 60 +- db/docs/api_c/env_set_isalive.html | 5 +- db/docs/api_c/env_set_lg_bsize.html | 5 +- db/docs/api_c/env_set_lg_dir.html | 5 +- db/docs/api_c/env_set_lg_max.html | 5 +- db/docs/api_c/env_set_lg_mode.html | 5 +- db/docs/api_c/env_set_lg_regionmax.html | 5 +- db/docs/api_c/env_set_lk_conflicts.html | 5 +- db/docs/api_c/env_set_lk_detect.html | 5 +- db/docs/api_c/env_set_lk_max.html | 72 - db/docs/api_c/env_set_lk_max_lockers.html | 5 +- db/docs/api_c/env_set_lk_max_locks.html | 5 +- db/docs/api_c/env_set_lk_max_objects.html | 5 +- db/docs/api_c/env_set_mp_mmapsize.html | 5 +- db/docs/api_c/env_set_msgcall.html | 5 +- db/docs/api_c/env_set_msgfile.html | 5 +- db/docs/api_c/env_set_mutexlocks.html | 59 - db/docs/api_c/env_set_pageyield.html | 68 - db/docs/api_c/env_set_paniccall.html | 69 - db/docs/api_c/env_set_panicstate.html | 64 - db/docs/api_c/env_set_rec_init.html | 71 - db/docs/api_c/env_set_region_init.html | 77 - db/docs/api_c/env_set_rpc_server.html | 5 +- db/docs/api_c/env_set_server.html | 77 - db/docs/api_c/env_set_shm_key.html | 5 +- db/docs/api_c/env_set_tas_spins.html | 89 - db/docs/api_c/env_set_thread_count.html | 19 +- db/docs/api_c/env_set_thread_id.html | 5 +- db/docs/api_c/env_set_thread_id_string.html | 5 +- db/docs/api_c/env_set_timeout.html | 5 +- db/docs/api_c/env_set_tmp_dir.html | 5 +- db/docs/api_c/env_set_tx_max.html | 5 +- db/docs/api_c/env_set_tx_recover.html | 75 - db/docs/api_c/env_set_tx_timestamp.html | 5 +- db/docs/api_c/env_set_verbose.html | 17 +- db/docs/api_c/env_stat.html | 5 +- db/docs/api_c/env_strerror.html | 5 +- db/docs/api_c/env_version.html | 5 +- db/docs/api_c/frame.html | 8 +- db/docs/api_c/hsearch.html | 5 +- db/docs/api_c/lock_class.html | 5 +- db/docs/api_c/lock_detect.html | 11 +- db/docs/api_c/lock_get.html | 5 +- db/docs/api_c/lock_id.html | 5 +- db/docs/api_c/lock_id_free.html | 5 +- db/docs/api_c/lock_list.html | 5 +- db/docs/api_c/lock_put.html | 5 +- db/docs/api_c/lock_stat.html | 35 +- db/docs/api_c/lock_vec.html | 5 +- db/docs/api_c/log_archive.html | 5 +- db/docs/api_c/log_compare.html | 5 +- db/docs/api_c/log_cursor.html | 5 +- db/docs/api_c/log_file.html | 5 +- db/docs/api_c/log_flush.html | 5 +- db/docs/api_c/log_get.html | 114 - db/docs/api_c/log_list.html | 5 +- db/docs/api_c/log_printf.html | 5 +- db/docs/api_c/log_put.html | 5 +- db/docs/api_c/log_register.html | 64 - db/docs/api_c/log_stat.html | 9 +- db/docs/api_c/log_unregister.html | 59 - db/docs/api_c/logc_class.html | 5 +- db/docs/api_c/logc_close.html | 5 +- db/docs/api_c/logc_get.html | 5 +- db/docs/api_c/lsn_class.html | 5 +- db/docs/api_c/memp_fclose.html | 5 +- db/docs/api_c/memp_fcreate.html | 5 +- db/docs/api_c/memp_fget.html | 5 +- db/docs/api_c/memp_fopen.html | 5 +- db/docs/api_c/memp_fput.html | 35 +- db/docs/api_c/memp_fset.html | 65 - db/docs/api_c/memp_fsync.html | 14 +- db/docs/api_c/memp_list.html | 9 +- db/docs/api_c/memp_maxwrite.html | 15 +- db/docs/api_c/memp_openfd.html | 5 +- db/docs/api_c/memp_register.html | 5 +- db/docs/api_c/memp_set_clear_len.html | 5 +- db/docs/api_c/memp_set_fileid.html | 5 +- db/docs/api_c/memp_set_flags.html | 14 +- db/docs/api_c/memp_set_ftype.html | 5 +- db/docs/api_c/memp_set_lsn_offset.html | 5 +- db/docs/api_c/memp_set_maxsize.html | 5 +- db/docs/api_c/memp_set_pgcookie.html | 5 +- db/docs/api_c/memp_set_priority.html | 36 +- db/docs/api_c/memp_stat.html | 31 +- db/docs/api_c/memp_sync.html | 12 +- db/docs/api_c/memp_trickle.html | 5 +- db/docs/api_c/mempfile_class.html | 5 +- db/docs/api_c/mutex_alloc.html | 5 +- db/docs/api_c/mutex_free.html | 5 +- db/docs/api_c/mutex_list.html | 5 +- db/docs/api_c/mutex_lock.html | 5 +- db/docs/api_c/mutex_set_align.html | 5 +- db/docs/api_c/mutex_set_max.html | 5 +- db/docs/api_c/mutex_set_tas_spins.html | 5 +- db/docs/api_c/mutex_stat.html | 9 +- db/docs/api_c/mutex_unlock.html | 5 +- db/docs/api_c/object.html | 2 +- db/docs/api_c/pindex.src | 275 +- db/docs/api_c/rep_config.html | 9 +- db/docs/api_c/rep_elect.html | 28 +- db/docs/api_c/rep_limit.html | 11 +- db/docs/api_c/rep_list.html | 9 +- db/docs/api_c/rep_message.html | 16 +- db/docs/api_c/rep_nsites.html | 5 +- db/docs/api_c/rep_priority.html | 5 +- db/docs/api_c/rep_request.html | 93 + db/docs/api_c/rep_start.html | 5 +- db/docs/api_c/rep_stat.html | 14 +- db/docs/api_c/rep_sync.html | 12 +- db/docs/api_c/rep_timeout.html | 23 +- db/docs/api_c/rep_transport.html | 5 +- db/docs/api_c/repmgr_ack_policy.html | 5 +- db/docs/api_c/repmgr_local_site.html | 5 +- db/docs/api_c/repmgr_remote_site.html | 5 +- db/docs/api_c/repmgr_site_list.html | 5 +- db/docs/api_c/repmgr_start.html | 12 +- db/docs/api_c/repmgr_stat.html | 116 + db/docs/api_c/seq_class.html | 5 +- db/docs/api_c/seq_close.html | 5 +- db/docs/api_c/seq_get.html | 19 +- db/docs/api_c/seq_init_value.html | 60 - db/docs/api_c/seq_initial_value.html | 5 +- db/docs/api_c/seq_list.html | 5 +- db/docs/api_c/seq_open.html | 19 +- db/docs/api_c/seq_remove.html | 18 +- db/docs/api_c/seq_set_cachesize.html | 5 +- db/docs/api_c/seq_set_flags.html | 5 +- db/docs/api_c/seq_set_range.html | 5 +- db/docs/api_c/seq_stat.html | 11 +- db/docs/api_c/set_func_close.html | 5 +- db/docs/api_c/set_func_dirfree.html | 5 +- db/docs/api_c/set_func_dirlist.html | 5 +- db/docs/api_c/set_func_exists.html | 5 +- db/docs/api_c/set_func_free.html | 5 +- db/docs/api_c/set_func_fsync.html | 5 +- db/docs/api_c/set_func_ftruncate.html | 5 +- db/docs/api_c/set_func_ioinfo.html | 5 +- db/docs/api_c/set_func_malloc.html | 5 +- db/docs/api_c/set_func_map.html | 5 +- db/docs/api_c/set_func_open.html | 5 +- db/docs/api_c/set_func_pread.html | 5 +- db/docs/api_c/set_func_pwrite.html | 5 +- db/docs/api_c/set_func_read.html | 5 +- db/docs/api_c/set_func_realloc.html | 5 +- db/docs/api_c/set_func_rename.html | 5 +- db/docs/api_c/set_func_seek.html | 5 +- db/docs/api_c/set_func_sleep.html | 11 +- db/docs/api_c/set_func_unlink.html | 5 +- db/docs/api_c/set_func_unmap.html | 5 +- db/docs/api_c/set_func_write.html | 5 +- db/docs/api_c/set_func_yield.html | 5 +- db/docs/api_c/txn_abort.html | 5 +- db/docs/api_c/txn_begin.html | 44 +- db/docs/api_c/txn_checkpoint.html | 5 +- db/docs/api_c/txn_class.html | 5 +- db/docs/api_c/txn_commit.html | 5 +- db/docs/api_c/txn_discard.html | 5 +- db/docs/api_c/txn_id.html | 5 +- db/docs/api_c/txn_list.html | 5 +- db/docs/api_c/txn_prepare.html | 5 +- db/docs/api_c/txn_recover.html | 35 +- db/docs/api_c/txn_set_name.html | 5 +- db/docs/api_c/txn_set_timeout.html | 11 +- db/docs/api_c/txn_stat.html | 9 +- db/docs/api_cxx/api_core.html | 17 +- db/docs/api_cxx/cxx_index.html | 148 - db/docs/api_cxx/cxx_pindex.html | 65 +- db/docs/api_cxx/db_associate.html | 69 +- db/docs/api_cxx/db_class.html | 5 +- db/docs/api_cxx/db_close.html | 5 +- db/docs/api_cxx/db_compact.html | 5 +- db/docs/api_cxx/db_cursor.html | 23 +- db/docs/api_cxx/db_del.html | 18 +- db/docs/api_cxx/db_err.html | 5 +- db/docs/api_cxx/db_exists.html | 82 + db/docs/api_cxx/db_fd.html | 5 +- db/docs/api_cxx/db_get.html | 39 +- db/docs/api_cxx/db_get_byteswapped.html | 5 +- db/docs/api_cxx/db_get_mpf.html | 5 +- db/docs/api_cxx/db_get_type.html | 5 +- db/docs/api_cxx/db_getenv.html | 5 +- db/docs/api_cxx/db_join.html | 21 +- db/docs/api_cxx/db_key_range.html | 19 +- db/docs/api_cxx/db_list.html | 10 +- db/docs/api_cxx/db_open.html | 52 +- db/docs/api_cxx/db_put.html | 18 +- db/docs/api_cxx/db_remove.html | 5 +- db/docs/api_cxx/db_rename.html | 5 +- db/docs/api_cxx/db_set_alloc.html | 5 +- db/docs/api_cxx/db_set_append_recno.html | 5 +- db/docs/api_cxx/db_set_bt_compare.html | 7 +- db/docs/api_cxx/db_set_bt_minkey.html | 5 +- db/docs/api_cxx/db_set_bt_prefix.html | 5 +- db/docs/api_cxx/db_set_cachesize.html | 16 +- db/docs/api_cxx/db_set_dup_compare.html | 5 +- db/docs/api_cxx/db_set_encrypt.html | 5 +- db/docs/api_cxx/db_set_errcall.html | 5 +- db/docs/api_cxx/db_set_errfile.html | 26 +- db/docs/api_cxx/db_set_error_stream.html | 5 +- db/docs/api_cxx/db_set_errpfx.html | 5 +- db/docs/api_cxx/db_set_feedback.html | 5 +- db/docs/api_cxx/db_set_flags.html | 5 +- db/docs/api_cxx/db_set_h_compare.html | 92 + db/docs/api_cxx/db_set_h_ffactor.html | 5 +- db/docs/api_cxx/db_set_h_hash.html | 5 +- db/docs/api_cxx/db_set_h_nelem.html | 5 +- db/docs/api_cxx/db_set_lorder.html | 5 +- db/docs/api_cxx/db_set_malloc.html | 103 - db/docs/api_cxx/db_set_msg_stream.html | 5 +- db/docs/api_cxx/db_set_msgcall.html | 5 +- db/docs/api_cxx/db_set_msgfile.html | 5 +- db/docs/api_cxx/db_set_pagesize.html | 5 +- db/docs/api_cxx/db_set_paniccall.html | 75 - db/docs/api_cxx/db_set_priority.html | 71 + db/docs/api_cxx/db_set_q_extentsize.html | 5 +- db/docs/api_cxx/db_set_re_delim.html | 5 +- db/docs/api_cxx/db_set_re_len.html | 5 +- db/docs/api_cxx/db_set_re_pad.html | 5 +- db/docs/api_cxx/db_set_re_source.html | 5 +- db/docs/api_cxx/db_set_realloc.html | 103 - db/docs/api_cxx/db_stat.html | 50 +- db/docs/api_cxx/db_sync.html | 5 +- db/docs/api_cxx/db_truncate.html | 18 +- db/docs/api_cxx/db_upgrade.html | 5 +- db/docs/api_cxx/db_verify.html | 5 +- db/docs/api_cxx/dbc_class.html | 5 +- db/docs/api_cxx/dbc_close.html | 7 +- db/docs/api_cxx/dbc_count.html | 7 +- db/docs/api_cxx/dbc_del.html | 7 +- db/docs/api_cxx/dbc_dup.html | 7 +- db/docs/api_cxx/dbc_get.html | 35 +- db/docs/api_cxx/dbc_list.html | 8 +- db/docs/api_cxx/dbc_put.html | 27 +- db/docs/api_cxx/dbc_set_priority.html | 70 + db/docs/api_cxx/dbenv_class.html | 76 - db/docs/api_cxx/dbt_bulk_class.html | 5 +- db/docs/api_cxx/dbt_class.html | 27 +- db/docs/api_cxx/dbt_package.html | 5 +- db/docs/api_cxx/deadlock_class.html | 5 +- db/docs/api_cxx/env_cdsgroup_begin.html | 5 +- db/docs/api_cxx/env_class.html | 5 +- db/docs/api_cxx/env_close.html | 5 +- db/docs/api_cxx/env_dbremove.html | 18 +- db/docs/api_cxx/env_dbrename.html | 18 +- db/docs/api_cxx/env_err.html | 5 +- db/docs/api_cxx/env_event_notify.html | 32 +- db/docs/api_cxx/env_failchk.html | 9 +- db/docs/api_cxx/env_fileid_reset.html | 5 +- db/docs/api_cxx/env_list.html | 5 +- db/docs/api_cxx/env_lsn_reset.html | 5 +- db/docs/api_cxx/env_open.html | 5 +- db/docs/api_cxx/env_remove.html | 12 +- db/docs/api_cxx/env_set_alloc.html | 5 +- db/docs/api_cxx/env_set_app_dispatch.html | 5 +- db/docs/api_cxx/env_set_cache_max.html | 96 + db/docs/api_cxx/env_set_cachesize.html | 40 +- db/docs/api_cxx/env_set_data_dir.html | 5 +- db/docs/api_cxx/env_set_encrypt.html | 5 +- db/docs/api_cxx/env_set_errcall.html | 5 +- db/docs/api_cxx/env_set_errfile.html | 26 +- db/docs/api_cxx/env_set_error_stream.html | 5 +- db/docs/api_cxx/env_set_errpfx.html | 5 +- db/docs/api_cxx/env_set_feedback.html | 5 +- db/docs/api_cxx/env_set_flags.html | 62 +- db/docs/api_cxx/env_set_isalive.html | 5 +- db/docs/api_cxx/env_set_lg_bsize.html | 5 +- db/docs/api_cxx/env_set_lg_dir.html | 5 +- db/docs/api_cxx/env_set_lg_max.html | 5 +- db/docs/api_cxx/env_set_lg_mode.html | 5 +- db/docs/api_cxx/env_set_lg_regionmax.html | 5 +- db/docs/api_cxx/env_set_lk_conflicts.html | 5 +- db/docs/api_cxx/env_set_lk_detect.html | 5 +- db/docs/api_cxx/env_set_lk_max.html | 75 - db/docs/api_cxx/env_set_lk_max_lockers.html | 5 +- db/docs/api_cxx/env_set_lk_max_locks.html | 5 +- db/docs/api_cxx/env_set_lk_max_objects.html | 5 +- db/docs/api_cxx/env_set_mp_mmapsize.html | 5 +- db/docs/api_cxx/env_set_msg_stream.html | 5 +- db/docs/api_cxx/env_set_msgcall.html | 5 +- db/docs/api_cxx/env_set_msgfile.html | 5 +- db/docs/api_cxx/env_set_mutexlocks.html | 62 - db/docs/api_cxx/env_set_pageyield.html | 71 - db/docs/api_cxx/env_set_paniccall.html | 71 - db/docs/api_cxx/env_set_panicstate.html | 67 - db/docs/api_cxx/env_set_rec_init.html | 73 - db/docs/api_cxx/env_set_region_init.html | 80 - db/docs/api_cxx/env_set_rpc_server.html | 5 +- db/docs/api_cxx/env_set_server.html | 80 - db/docs/api_cxx/env_set_shm_key.html | 5 +- db/docs/api_cxx/env_set_tas_spins.html | 94 - db/docs/api_cxx/env_set_thread_count.html | 19 +- db/docs/api_cxx/env_set_thread_id.html | 5 +- db/docs/api_cxx/env_set_thread_id_string.html | 5 +- db/docs/api_cxx/env_set_timeout.html | 5 +- db/docs/api_cxx/env_set_tmp_dir.html | 5 +- db/docs/api_cxx/env_set_tx_max.html | 5 +- db/docs/api_cxx/env_set_tx_recover.html | 77 - db/docs/api_cxx/env_set_tx_timestamp.html | 5 +- db/docs/api_cxx/env_set_verbose.html | 17 +- db/docs/api_cxx/env_stat.html | 5 +- db/docs/api_cxx/env_strerror.html | 5 +- db/docs/api_cxx/env_version.html | 5 +- db/docs/api_cxx/exc_package.html | 5 +- db/docs/api_cxx/except_class.html | 5 +- db/docs/api_cxx/frame.html | 8 +- db/docs/api_cxx/get_dbt.html | 43 - db/docs/api_cxx/get_errno.html | 43 - db/docs/api_cxx/lock_class.html | 5 +- db/docs/api_cxx/lock_detect.html | 11 +- db/docs/api_cxx/lock_get.html | 5 +- db/docs/api_cxx/lock_id.html | 5 +- db/docs/api_cxx/lock_id_free.html | 5 +- db/docs/api_cxx/lock_list.html | 5 +- db/docs/api_cxx/lock_put.html | 5 +- db/docs/api_cxx/lock_stat.html | 35 +- db/docs/api_cxx/lock_vec.html | 5 +- db/docs/api_cxx/lockng_class.html | 5 +- db/docs/api_cxx/log_archive.html | 5 +- db/docs/api_cxx/log_compare.html | 5 +- db/docs/api_cxx/log_cursor.html | 5 +- db/docs/api_cxx/log_file.html | 5 +- db/docs/api_cxx/log_flush.html | 5 +- db/docs/api_cxx/log_get.html | 118 - db/docs/api_cxx/log_list.html | 5 +- db/docs/api_cxx/log_printf.html | 5 +- db/docs/api_cxx/log_put.html | 5 +- db/docs/api_cxx/log_register.html | 68 - db/docs/api_cxx/log_stat.html | 9 +- db/docs/api_cxx/log_unregister.html | 63 - db/docs/api_cxx/logc_class.html | 5 +- db/docs/api_cxx/logc_close.html | 5 +- db/docs/api_cxx/logc_get.html | 5 +- db/docs/api_cxx/lsn_class.html | 5 +- db/docs/api_cxx/mem_class.html | 54 - db/docs/api_cxx/memp_class.html | 9 +- db/docs/api_cxx/memp_fclose.html | 5 +- db/docs/api_cxx/memp_fcreate.html | 5 +- db/docs/api_cxx/memp_fget.html | 5 +- db/docs/api_cxx/memp_fopen.html | 5 +- db/docs/api_cxx/memp_fput.html | 34 +- db/docs/api_cxx/memp_fset.html | 69 - db/docs/api_cxx/memp_fsync.html | 14 +- db/docs/api_cxx/memp_list.html | 9 +- db/docs/api_cxx/memp_maxwrite.html | 15 +- db/docs/api_cxx/memp_openfd.html | 5 +- db/docs/api_cxx/memp_register.html | 5 +- db/docs/api_cxx/memp_set_clear_len.html | 5 +- db/docs/api_cxx/memp_set_fileid.html | 5 +- db/docs/api_cxx/memp_set_flags.html | 14 +- db/docs/api_cxx/memp_set_ftype.html | 5 +- db/docs/api_cxx/memp_set_lsn_offset.html | 5 +- db/docs/api_cxx/memp_set_maxsize.html | 5 +- db/docs/api_cxx/memp_set_pgcookie.html | 5 +- db/docs/api_cxx/memp_set_priority.html | 40 +- db/docs/api_cxx/memp_stat.html | 31 +- db/docs/api_cxx/memp_sync.html | 12 +- db/docs/api_cxx/memp_trickle.html | 5 +- db/docs/api_cxx/mempfile_class.html | 5 +- db/docs/api_cxx/mutex_alloc.html | 5 +- db/docs/api_cxx/mutex_free.html | 5 +- db/docs/api_cxx/mutex_list.html | 5 +- db/docs/api_cxx/mutex_lock.html | 5 +- db/docs/api_cxx/mutex_set_align.html | 5 +- db/docs/api_cxx/mutex_set_max.html | 5 +- db/docs/api_cxx/mutex_set_tas_spins.html | 5 +- db/docs/api_cxx/mutex_stat.html | 9 +- db/docs/api_cxx/mutex_unlock.html | 5 +- db/docs/api_cxx/object.html | 2 +- db/docs/api_cxx/pindex.src | 53 +- db/docs/api_cxx/rep_config.html | 9 +- db/docs/api_cxx/rep_elect.html | 28 +- db/docs/api_cxx/rep_limit.html | 11 +- db/docs/api_cxx/rep_list.html | 9 +- db/docs/api_cxx/rep_message.html | 16 +- db/docs/api_cxx/rep_nsites.html | 5 +- db/docs/api_cxx/rep_priority.html | 5 +- db/docs/api_cxx/rep_request.html | 98 + db/docs/api_cxx/rep_start.html | 5 +- db/docs/api_cxx/rep_stat.html | 14 +- db/docs/api_cxx/rep_sync.html | 12 +- db/docs/api_cxx/rep_timeout.html | 23 +- db/docs/api_cxx/rep_transport.html | 5 +- db/docs/api_cxx/repmgr_ack_policy.html | 5 +- db/docs/api_cxx/repmgr_local_site.html | 5 +- db/docs/api_cxx/repmgr_remote_site.html | 5 +- db/docs/api_cxx/repmgr_site_list.html | 5 +- db/docs/api_cxx/repmgr_start.html | 12 +- db/docs/api_cxx/repmgr_stat.html | 121 + db/docs/api_cxx/runrec_class.html | 5 +- db/docs/api_cxx/seq_class.html | 5 +- db/docs/api_cxx/seq_close.html | 5 +- db/docs/api_cxx/seq_get.html | 19 +- db/docs/api_cxx/seq_init_value.html | 64 - db/docs/api_cxx/seq_initial_value.html | 5 +- db/docs/api_cxx/seq_list.html | 5 +- db/docs/api_cxx/seq_open.html | 19 +- db/docs/api_cxx/seq_remove.html | 18 +- db/docs/api_cxx/seq_set_cachesize.html | 5 +- db/docs/api_cxx/seq_set_flags.html | 5 +- db/docs/api_cxx/seq_set_range.html | 5 +- db/docs/api_cxx/seq_stat.html | 11 +- db/docs/api_cxx/txn_abort.html | 5 +- db/docs/api_cxx/txn_begin.html | 46 +- db/docs/api_cxx/txn_checkpoint.html | 5 +- db/docs/api_cxx/txn_class.html | 5 +- db/docs/api_cxx/txn_commit.html | 5 +- db/docs/api_cxx/txn_discard.html | 5 +- db/docs/api_cxx/txn_id.html | 5 +- db/docs/api_cxx/txn_list.html | 5 +- db/docs/api_cxx/txn_prepare.html | 5 +- db/docs/api_cxx/txn_recover.html | 35 +- db/docs/api_cxx/txn_set_name.html | 5 +- db/docs/api_cxx/txn_set_timeout.html | 11 +- db/docs/api_cxx/txn_stat.html | 9 +- db/docs/api_cxx/what.html | 43 - db/docs/api_cxx/xml_close.html | 86 - db/docs/api_cxx/xml_declare.html | 121 - db/docs/api_cxx/xml_del.html | 81 - db/docs/api_cxx/xml_get.html | 90 - db/docs/api_cxx/xml_getname.html | 73 - db/docs/api_cxx/xml_index.html | 56 - db/docs/api_cxx/xml_open.html | 145 - db/docs/api_cxx/xml_put.html | 90 - db/docs/api_cxx/xml_xparse.html | 77 - db/docs/api_cxx/xml_xpath.html | 102 - db/docs/api_cxx/xmlcontainer_class.html | 85 - db/docs/api_cxx/xmldoc_getattr.html | 72 - db/docs/api_cxx/xmldoc_getcont.html | 70 - db/docs/api_cxx/xmldoc_getcontlen.html | 71 - db/docs/api_cxx/xmldoc_getdom.html | 78 - db/docs/api_cxx/xmldoc_getenc.html | 86 - db/docs/api_cxx/xmldoc_getid.html | 73 - db/docs/api_cxx/xmldoc_getname.html | 73 - db/docs/api_cxx/xmldoc_gettype.html | 72 - db/docs/api_cxx/xmldoc_setattr.html | 75 - db/docs/api_cxx/xmldoc_setcont.html | 70 - db/docs/api_cxx/xmldoc_setname.html | 69 - db/docs/api_cxx/xmldoc_settype.html | 71 - db/docs/api_cxx/xmldocument_class.html | 75 - db/docs/api_cxx/xmlq_clearname.html | 66 - db/docs/api_cxx/xmlq_getname.html | 75 - db/docs/api_cxx/xmlq_getvar.html | 72 - db/docs/api_cxx/xmlq_remname.html | 67 - db/docs/api_cxx/xmlq_seteval.html | 80 - db/docs/api_cxx/xmlq_setname.html | 67 - db/docs/api_cxx/xmlq_setret.html | 86 - db/docs/api_cxx/xmlq_setvar.html | 65 - db/docs/api_cxx/xmlquery_class.html | 74 - db/docs/api_cxx/xmlr_next.html | 71 - db/docs/api_cxx/xmlr_reset.html | 72 - db/docs/api_cxx/xmlresults_class.html | 79 - db/docs/api_cxx/xmlvalue_class.html | 97 - db/docs/api_cxx/xmlxpathexp_class.html | 67 - db/docs/api_cxx/xmlxpe_get.html | 65 - db/docs/api_java/dbenv_class.html | 65 - db/docs/api_java/env_set_lk_max.html | 74 - db/docs/api_java/env_set_mutexlocks.html | 59 - db/docs/api_java/env_set_pageyield.html | 69 - db/docs/api_java/env_set_panicstate.html | 65 - db/docs/api_java/env_set_rec_init.html | 78 - db/docs/api_java/env_set_region_init.html | 78 - db/docs/api_java/env_set_server.html | 77 - db/docs/api_java/env_set_tx_recover.html | 84 - db/docs/api_java/get_dbt.html | 43 - db/docs/api_java/get_errno.html | 46 - db/docs/api_java/java_index.html | 131 - db/docs/api_java/log_get.html | 117 - db/docs/api_java/log_register.html | 67 - db/docs/api_java/log_unregister.html | 62 - db/docs/api_java/mem_class.html | 48 - db/docs/api_java/memp_fget.html | 33 - db/docs/api_java/memp_fput.html | 33 - db/docs/api_java/memp_fset.html | 33 - db/docs/api_java/xml_close.html | 86 - db/docs/api_java/xml_declare.html | 121 - db/docs/api_java/xml_del.html | 81 - db/docs/api_java/xml_get.html | 90 - db/docs/api_java/xml_getname.html | 73 - db/docs/api_java/xml_index.html | 56 - db/docs/api_java/xml_open.html | 148 - db/docs/api_java/xml_put.html | 90 - db/docs/api_java/xml_xparse.html | 77 - db/docs/api_java/xml_xpath.html | 102 - db/docs/api_java/xmlcontainer_class.html | 85 - db/docs/api_java/xmldoc_getattr.html | 72 - db/docs/api_java/xmldoc_getcont.html | 70 - db/docs/api_java/xmldoc_getcontlen.html | 71 - db/docs/api_java/xmldoc_getdom.html | 78 - db/docs/api_java/xmldoc_getenc.html | 86 - db/docs/api_java/xmldoc_getid.html | 73 - db/docs/api_java/xmldoc_getname.html | 73 - db/docs/api_java/xmldoc_gettype.html | 72 - db/docs/api_java/xmldoc_setattr.html | 74 - db/docs/api_java/xmldoc_setcont.html | 70 - db/docs/api_java/xmldoc_setname.html | 69 - db/docs/api_java/xmldoc_settype.html | 71 - db/docs/api_java/xmldocument_class.html | 73 - db/docs/api_java/xmlq_clearname.html | 66 - db/docs/api_java/xmlq_getname.html | 75 - db/docs/api_java/xmlq_getvar.html | 72 - db/docs/api_java/xmlq_remname.html | 67 - db/docs/api_java/xmlq_seteval.html | 80 - db/docs/api_java/xmlq_setname.html | 66 - db/docs/api_java/xmlq_setret.html | 86 - db/docs/api_java/xmlq_setvar.html | 64 - db/docs/api_java/xmlquery_class.html | 72 - db/docs/api_java/xmlr_next.html | 71 - db/docs/api_java/xmlr_reset.html | 72 - db/docs/api_java/xmlresults_class.html | 73 - db/docs/api_java/xmlvalue_class.html | 88 - db/docs/api_java/xmlxpathexp_class.html | 65 - db/docs/api_java/xmlxpe_get.html | 65 - db/docs/api_tcl/api_tcl.html | 5 +- db/docs/api_tcl/db_close.html | 5 +- db/docs/api_tcl/db_count.html | 5 +- db/docs/api_tcl/db_cursor.html | 5 +- db/docs/api_tcl/db_del.html | 5 +- db/docs/api_tcl/db_get.html | 5 +- db/docs/api_tcl/db_get_join.html | 5 +- db/docs/api_tcl/db_get_type.html | 5 +- db/docs/api_tcl/db_is_byteswapped.html | 5 +- db/docs/api_tcl/db_join.html | 5 +- db/docs/api_tcl/db_open.html | 5 +- db/docs/api_tcl/db_put.html | 5 +- db/docs/api_tcl/db_remove.html | 5 +- db/docs/api_tcl/db_rename.html | 5 +- db/docs/api_tcl/db_stat.html | 5 +- db/docs/api_tcl/db_sync.html | 5 +- db/docs/api_tcl/db_truncate.html | 5 +- db/docs/api_tcl/dbc_close.html | 5 +- db/docs/api_tcl/dbc_del.html | 5 +- db/docs/api_tcl/dbc_dup.html | 5 +- db/docs/api_tcl/dbc_get.html | 5 +- db/docs/api_tcl/dbc_put.html | 5 +- db/docs/api_tcl/env_close.html | 5 +- db/docs/api_tcl/env_dbremove.html | 5 +- db/docs/api_tcl/env_dbrename.html | 5 +- db/docs/api_tcl/env_open.html | 5 +- db/docs/api_tcl/env_remove.html | 5 +- db/docs/api_tcl/txn.html | 5 +- db/docs/api_tcl/txn_abort.html | 5 +- db/docs/api_tcl/txn_checkpoint.html | 5 +- db/docs/api_tcl/txn_commit.html | 5 +- db/docs/api_tcl/version.html | 5 +- .../articles/inmemory/C/InMemoryDBApplication.pdf | Bin 0 -> 183024 bytes db/docs/articles/inmemory/C/gettingStarted.css | 41 + db/docs/articles/inmemory/C/index.html | 1165 ++ db/docs/collections/tutorial/BasicProgram.html | 58 +- .../tutorial/BerkeleyDB-Java-Collections.pdf | Bin 448647 -> 447906 bytes db/docs/collections/tutorial/Entity.html | 56 +- .../collections/tutorial/SerializableEntity.html | 48 +- .../tutorial/SerializedObjectStorage.html | 20 +- db/docs/collections/tutorial/Summary.html | 32 +- db/docs/collections/tutorial/Tuple.html | 32 +- .../collections/tutorial/UsingCollectionsAPI.html | 46 +- db/docs/collections/tutorial/UsingSecondaries.html | 28 +- .../tutorial/UsingStoredCollections.html | 196 +- .../collections/tutorial/addingdatabaseitems.html | 118 +- .../collections/tutorial/collectionOverview.html | 40 +- .../tutorial/collectionswithentities.html | 28 +- .../tutorial/createbindingscollections.html | 36 +- .../tutorial/creatingentitybindings.html | 24 +- db/docs/collections/tutorial/developing.html | 38 +- .../tutorial/entitieswithcollections.html | 119 +- .../collections/tutorial/handlingexceptions.html | 26 +- db/docs/collections/tutorial/implementingmain.html | 34 +- db/docs/collections/tutorial/index.html | 36 +- .../collections/tutorial/indexedcollections.html | 32 +- db/docs/collections/tutorial/intro.html | 46 +- db/docs/collections/tutorial/moreinfo.html | 18 +- db/docs/collections/tutorial/openclasscatalog.html | 28 +- db/docs/collections/tutorial/opendatabases.html | 26 +- .../collections/tutorial/opendbenvironment.html | 30 +- .../collections/tutorial/openingforeignkeys.html | 28 +- db/docs/collections/tutorial/preface.html | 28 +- .../tutorial/removingredundantvalueclasses.html | 22 +- .../collections/tutorial/retrievingbyindexkey.html | 78 +- .../tutorial/retrievingdatabaseitems.html | 84 +- .../collections/tutorial/sortedcollections.html | 26 +- .../tutorial/transientfieldsinbinding.html | 24 +- .../tutorial/tuple-serialentitybindings.html | 20 +- db/docs/collections/tutorial/tuplekeybindings.html | 24 +- .../tutorial/tupleswithkeycreators.html | 26 +- .../collections/tutorial/tutorialintroduction.html | 30 +- .../collections/tutorial/usingtransactions.html | 30 +- db/docs/gsg/C/BerkeleyDB-Core-C-GSG.pdf | Bin 456016 -> 461205 bytes db/docs/gsg/C/CoreCursorUsage.html | 60 +- db/docs/gsg/C/CoreDBAdmin.html | 30 +- db/docs/gsg/C/CoreDbUsage.html | 40 +- db/docs/gsg/C/CoreEnvUsage.html | 28 +- db/docs/gsg/C/Cursors.html | 28 +- db/docs/gsg/C/DB.html | 26 +- db/docs/gsg/C/DBEntry.html | 30 +- db/docs/gsg/C/DBOpenFlags.html | 22 +- db/docs/gsg/C/DbUsage.html | 52 +- db/docs/gsg/C/DeleteEntryWCursor.html | 42 +- db/docs/gsg/C/Positioning.html | 64 +- db/docs/gsg/C/PutEntryWCursor.html | 52 +- db/docs/gsg/C/ReplacingEntryWCursor.html | 34 +- db/docs/gsg/C/accessmethods.html | 20 +- db/docs/gsg/C/btree.html | 40 +- db/docs/gsg/C/cachesize.html | 38 +- db/docs/gsg/C/concepts.html | 22 +- db/docs/gsg/C/coredbclose.html | 22 +- db/docs/gsg/C/coreindexusage.html | 63 +- db/docs/gsg/C/cstructs.html | 32 +- db/docs/gsg/C/databaseLimits.html | 22 +- db/docs/gsg/C/dbErrorReporting.html | 28 +- db/docs/gsg/C/dbconfig.html | 24 +- db/docs/gsg/C/environments.html | 22 +- db/docs/gsg/C/gettingit.html | 22 +- db/docs/gsg/C/index.html | 41 +- db/docs/gsg/C/indexes.html | 39 +- db/docs/gsg/C/introduction.html | 24 +- db/docs/gsg/C/joins.html | 38 +- db/docs/gsg/C/keyCreator.html | 129 +- db/docs/gsg/C/preface.html | 49 +- db/docs/gsg/C/readSecondary.html | 22 +- db/docs/gsg/C/returns.html | 20 +- db/docs/gsg/C/secondaryCursor.html | 32 +- db/docs/gsg/C/secondaryDelete.html | 26 +- db/docs/gsg/C/usingDbt.html | 36 +- db/docs/gsg/CXX/BerkeleyDB-Core-Cxx-GSG.pdf | Bin 429750 -> 434577 bytes db/docs/gsg/CXX/CoreCursorUsage.html | 54 +- db/docs/gsg/CXX/CoreDBAdmin.html | 30 +- db/docs/gsg/CXX/CoreDbCXXUsage.html | 36 +- db/docs/gsg/CXX/CoreEnvUsage.html | 50 +- db/docs/gsg/CXX/Cursors.html | 24 +- db/docs/gsg/CXX/DB.html | 26 +- db/docs/gsg/CXX/DBEntry.html | 30 +- db/docs/gsg/CXX/DBOpenFlags.html | 22 +- db/docs/gsg/CXX/DbCXXUsage.html | 66 +- db/docs/gsg/CXX/DeleteEntryWCursor.html | 26 +- db/docs/gsg/CXX/Positioning.html | 52 +- db/docs/gsg/CXX/PutEntryWCursor.html | 48 +- db/docs/gsg/CXX/ReplacingEntryWCursor.html | 28 +- db/docs/gsg/CXX/accessmethods.html | 20 +- db/docs/gsg/CXX/btree.html | 30 +- db/docs/gsg/CXX/cachesize.html | 38 +- db/docs/gsg/CXX/concepts.html | 22 +- db/docs/gsg/CXX/coreExceptions.html | 20 +- db/docs/gsg/CXX/coredbclose.html | 22 +- db/docs/gsg/CXX/coreindexusage.html | 76 +- db/docs/gsg/CXX/databaseLimits.html | 22 +- db/docs/gsg/CXX/dbErrorReporting.html | 28 +- db/docs/gsg/CXX/dbconfig.html | 24 +- db/docs/gsg/CXX/environments.html | 22 +- db/docs/gsg/CXX/gettingit.html | 22 +- db/docs/gsg/CXX/index.html | 41 +- db/docs/gsg/CXX/indexes.html | 39 +- db/docs/gsg/CXX/introduction.html | 24 +- db/docs/gsg/CXX/joins.html | 30 +- db/docs/gsg/CXX/keyCreator.html | 123 +- db/docs/gsg/CXX/preface.html | 51 +- db/docs/gsg/CXX/readSecondary.html | 22 +- db/docs/gsg/CXX/returns.html | 20 +- db/docs/gsg/CXX/secondaryCursor.html | 28 +- db/docs/gsg/CXX/secondaryDelete.html | 26 +- db/docs/gsg/CXX/usingDbt.html | 32 +- db/docs/gsg/JAVA/BerkeleyDB-Core-JAVA-GSG.pdf | Bin 491548 -> 496895 bytes db/docs/gsg/JAVA/CoreEnvUsage.html | 26 +- db/docs/gsg/JAVA/CoreJavaUsage.html | 36 +- db/docs/gsg/JAVA/Cursors.html | 28 +- db/docs/gsg/JAVA/DB.html | 26 +- db/docs/gsg/JAVA/DBAdmin.html | 28 +- db/docs/gsg/JAVA/DBEntry.html | 40 +- db/docs/gsg/JAVA/DeleteEntryWCursor.html | 30 +- db/docs/gsg/JAVA/Positioning.html | 74 +- db/docs/gsg/JAVA/PutEntryWCursor.html | 40 +- db/docs/gsg/JAVA/ReplacingEntryWCursor.html | 26 +- db/docs/gsg/JAVA/accessmethods.html | 20 +- db/docs/gsg/JAVA/bindAPI.html | 60 +- db/docs/gsg/JAVA/btree.html | 30 +- db/docs/gsg/JAVA/cachesize.html | 38 +- db/docs/gsg/JAVA/concepts.html | 22 +- db/docs/gsg/JAVA/coreExceptions.html | 20 +- db/docs/gsg/JAVA/coredbclose.html | 22 +- db/docs/gsg/JAVA/cursorJavaUsage.html | 68 +- db/docs/gsg/JAVA/databaseLimits.html | 22 +- db/docs/gsg/JAVA/dbErrorReporting.html | 20 +- db/docs/gsg/JAVA/dbconfig.html | 24 +- db/docs/gsg/JAVA/dbtJavaUsage.html | 64 +- db/docs/gsg/JAVA/environments.html | 22 +- db/docs/gsg/JAVA/gettingit.html | 22 +- db/docs/gsg/JAVA/index.html | 43 +- db/docs/gsg/JAVA/indexes.html | 39 +- db/docs/gsg/JAVA/introduction.html | 24 +- db/docs/gsg/JAVA/javaindexusage.html | 56 +- db/docs/gsg/JAVA/joins.html | 34 +- db/docs/gsg/JAVA/keyCreator.html | 113 +- db/docs/gsg/JAVA/preface.html | 53 +- db/docs/gsg/JAVA/readSecondary.html | 24 +- db/docs/gsg/JAVA/returns.html | 20 +- db/docs/gsg/JAVA/secondaryCursor.html | 24 +- db/docs/gsg/JAVA/secondaryDelete.html | 26 +- db/docs/gsg/JAVA/secondaryProps.html | 20 +- db/docs/gsg/JAVA/usingDbt.html | 46 +- db/docs/gsg_db_rep/C/Replication-C-GSG.pdf | Bin 357663 -> 357213 bytes db/docs/gsg_db_rep/C/addfeatures.html | 24 +- db/docs/gsg_db_rep/C/apioverview.html | 20 +- db/docs/gsg_db_rep/C/bulk.html | 20 +- db/docs/gsg_db_rep/C/c2ctransfer.html | 20 +- db/docs/gsg_db_rep/C/elections.html | 20 +- db/docs/gsg_db_rep/C/electiontimes.html | 20 +- db/docs/gsg_db_rep/C/exampledoloop.html | 82 +- db/docs/gsg_db_rep/C/fmwrkconnectretry.html | 22 +- db/docs/gsg_db_rep/C/fwrkmasterreplica.html | 28 +- db/docs/gsg_db_rep/C/fwrkpermmessage.html | 26 +- db/docs/gsg_db_rep/C/index.html | 32 +- db/docs/gsg_db_rep/C/introduction.html | 28 +- db/docs/gsg_db_rep/C/manageblock.html | 22 +- db/docs/gsg_db_rep/C/noautoinit.html | 20 +- db/docs/gsg_db_rep/C/permmessages.html | 26 +- db/docs/gsg_db_rep/C/preface.html | 28 +- db/docs/gsg_db_rep/C/processingloop.html | 22 +- db/docs/gsg_db_rep/C/repadvantage.html | 24 +- db/docs/gsg_db_rep/C/repapp.html | 56 +- db/docs/gsg_db_rep/C/repmgr_init_example_c.html | 76 +- db/docs/gsg_db_rep/C/simpleprogramlisting.html | 76 +- db/docs/gsg_db_rep/C/txnapp.html | 24 +- db/docs/gsg_db_rep/CXX/Replication-CXX-GSG.pdf | Bin 362032 -> 361655 bytes db/docs/gsg_db_rep/CXX/addfeatures.html | 24 +- db/docs/gsg_db_rep/CXX/apioverview.html | 20 +- db/docs/gsg_db_rep/CXX/bulk.html | 20 +- db/docs/gsg_db_rep/CXX/c2ctransfer.html | 20 +- db/docs/gsg_db_rep/CXX/elections.html | 20 +- db/docs/gsg_db_rep/CXX/electiontimes.html | 20 +- db/docs/gsg_db_rep/CXX/exampledoloop.html | 60 +- db/docs/gsg_db_rep/CXX/fmwrkconnectretry.html | 22 +- db/docs/gsg_db_rep/CXX/fwrkmasterreplica.html | 26 +- db/docs/gsg_db_rep/CXX/fwrkpermmessage.html | 34 +- db/docs/gsg_db_rep/CXX/index.html | 32 +- db/docs/gsg_db_rep/CXX/introduction.html | 28 +- db/docs/gsg_db_rep/CXX/manageblock.html | 22 +- db/docs/gsg_db_rep/CXX/noautoinit.html | 20 +- db/docs/gsg_db_rep/CXX/permmessages.html | 26 +- db/docs/gsg_db_rep/CXX/preface.html | 28 +- db/docs/gsg_db_rep/CXX/processingloop.html | 30 +- db/docs/gsg_db_rep/CXX/repadvantage.html | 24 +- db/docs/gsg_db_rep/CXX/repapp.html | 48 +- db/docs/gsg_db_rep/CXX/repmgr_init_example_c.html | 100 +- db/docs/gsg_db_rep/CXX/simpleprogramlisting.html | 82 +- db/docs/gsg_db_rep/CXX/txnapp.html | 24 +- db/docs/gsg_db_rep/JAVA/Replication-JAVA-GSG.pdf | Bin 361196 -> 361551 bytes db/docs/gsg_db_rep/JAVA/addfeatures.html | 24 +- db/docs/gsg_db_rep/JAVA/apioverview.html | 20 +- db/docs/gsg_db_rep/JAVA/bulk.html | 20 +- db/docs/gsg_db_rep/JAVA/c2ctransfer.html | 20 +- db/docs/gsg_db_rep/JAVA/elections.html | 20 +- db/docs/gsg_db_rep/JAVA/electiontimes.html | 20 +- db/docs/gsg_db_rep/JAVA/exampledoloop.html | 52 +- db/docs/gsg_db_rep/JAVA/fmwrkconnectretry.html | 22 +- db/docs/gsg_db_rep/JAVA/fwrkmasterreplica.html | 28 +- db/docs/gsg_db_rep/JAVA/fwrkpermmessage.html | 26 +- db/docs/gsg_db_rep/JAVA/index.html | 36 +- db/docs/gsg_db_rep/JAVA/introduction.html | 28 +- db/docs/gsg_db_rep/JAVA/manageblock.html | 22 +- db/docs/gsg_db_rep/JAVA/noautoinit.html | 20 +- db/docs/gsg_db_rep/JAVA/permmessages.html | 26 +- db/docs/gsg_db_rep/JAVA/preface.html | 30 +- db/docs/gsg_db_rep/JAVA/processingloop.html | 22 +- db/docs/gsg_db_rep/JAVA/repadvantage.html | 24 +- db/docs/gsg_db_rep/JAVA/repapp.html | 44 +- db/docs/gsg_db_rep/JAVA/repmgr_init_example_c.html | 110 +- db/docs/gsg_db_rep/JAVA/simpleprogramlisting.html | 76 +- db/docs/gsg_db_rep/JAVA/txnapp.html | 24 +- db/docs/gsg_txn/C/BerkeleyDB-Core-C-Txn.pdf | Bin 651712 -> 613657 bytes db/docs/gsg_txn/C/abortresults.html | 22 +- db/docs/gsg_txn/C/architectrecovery.html | 24 +- db/docs/gsg_txn/C/autocommit.html | 44 +- db/docs/gsg_txn/C/backuprestore.html | 22 +- db/docs/gsg_txn/C/blocking_deadlocks.html | 24 +- db/docs/gsg_txn/C/enabletxn.html | 30 +- db/docs/gsg_txn/C/envopen.html | 52 +- db/docs/gsg_txn/C/filemanagement.html | 36 +- db/docs/gsg_txn/C/hotfailover.html | 20 +- db/docs/gsg_txn/C/index.html | 32 +- db/docs/gsg_txn/C/inmem_txnexample_c.html | 84 +- db/docs/gsg_txn/C/introduction.html | 46 +- db/docs/gsg_txn/C/isolation.html | 264 +- db/docs/gsg_txn/C/lockingsubsystem.html | 60 +- db/docs/gsg_txn/C/logconfig.html | 36 +- db/docs/gsg_txn/C/logfileremoval.html | 20 +- db/docs/gsg_txn/C/maxtxns.html | 36 +- db/docs/gsg_txn/C/nestedtxn.html | 20 +- db/docs/gsg_txn/C/perftune-intro.html | 22 +- db/docs/gsg_txn/C/preface.html | 28 +- db/docs/gsg_txn/C/readmodifywrite.html | 22 +- db/docs/gsg_txn/C/recovery-intro.html | 22 +- db/docs/gsg_txn/C/recovery.html | 38 +- db/docs/gsg_txn/C/reversesplit.html | 42 +- db/docs/gsg_txn/C/txn_ccursor.html | 36 +- db/docs/gsg_txn/C/txnconcurrency.html | 26 +- db/docs/gsg_txn/C/txncursor.html | 42 +- db/docs/gsg_txn/C/txnexample_c.html | 90 +- db/docs/gsg_txn/C/txnindices.html | 22 +- db/docs/gsg_txn/C/txnnowait.html | 22 +- db/docs/gsg_txn/C/usingtxns.html | 54 +- db/docs/gsg_txn/C/wrapup.html | 24 +- db/docs/gsg_txn/CXX/BerkeleyDB-Core-Cxx-Txn.pdf | Bin 621636 -> 589605 bytes db/docs/gsg_txn/CXX/abortresults.html | 22 +- db/docs/gsg_txn/CXX/architectrecovery.html | 24 +- db/docs/gsg_txn/CXX/autocommit.html | 38 +- db/docs/gsg_txn/CXX/backuprestore.html | 22 +- db/docs/gsg_txn/CXX/blocking_deadlocks.html | 24 +- db/docs/gsg_txn/CXX/enabletxn.html | 30 +- db/docs/gsg_txn/CXX/envopen.html | 46 +- db/docs/gsg_txn/CXX/filemanagement.html | 32 +- db/docs/gsg_txn/CXX/hotfailover.html | 20 +- db/docs/gsg_txn/CXX/index.html | 32 +- db/docs/gsg_txn/CXX/inmem_txnexample_c.html | 70 +- db/docs/gsg_txn/CXX/introduction.html | 46 +- db/docs/gsg_txn/CXX/isolation.html | 204 +- db/docs/gsg_txn/CXX/lockingsubsystem.html | 40 +- db/docs/gsg_txn/CXX/logconfig.html | 32 +- db/docs/gsg_txn/CXX/logfileremoval.html | 20 +- db/docs/gsg_txn/CXX/maxtxns.html | 26 +- db/docs/gsg_txn/CXX/nestedtxn.html | 20 +- db/docs/gsg_txn/CXX/perftune-intro.html | 22 +- db/docs/gsg_txn/CXX/preface.html | 28 +- db/docs/gsg_txn/CXX/readmodifywrite.html | 20 +- db/docs/gsg_txn/CXX/recovery-intro.html | 22 +- db/docs/gsg_txn/CXX/recovery.html | 30 +- db/docs/gsg_txn/CXX/reversesplit.html | 36 +- db/docs/gsg_txn/CXX/txn_ccursor.html | 26 +- db/docs/gsg_txn/CXX/txnconcurrency.html | 26 +- db/docs/gsg_txn/CXX/txncursor.html | 30 +- db/docs/gsg_txn/CXX/txnexample_c.html | 80 +- db/docs/gsg_txn/CXX/txnindices.html | 22 +- db/docs/gsg_txn/CXX/txnnowait.html | 20 +- db/docs/gsg_txn/CXX/usingtxns.html | 46 +- db/docs/gsg_txn/CXX/wrapup.html | 24 +- db/docs/gsg_txn/JAVA/BerkeleyDB-Core-JAVA-Txn.pdf | Bin 627919 -> 597330 bytes db/docs/gsg_txn/JAVA/abortresults.html | 22 +- db/docs/gsg_txn/JAVA/architectrecovery.html | 24 +- db/docs/gsg_txn/JAVA/autocommit.html | 32 +- db/docs/gsg_txn/JAVA/backuprestore.html | 22 +- db/docs/gsg_txn/JAVA/blocking_deadlocks.html | 24 +- db/docs/gsg_txn/JAVA/enabletxn.html | 30 +- db/docs/gsg_txn/JAVA/envopen.html | 30 +- db/docs/gsg_txn/JAVA/filemanagement.html | 46 +- db/docs/gsg_txn/JAVA/hotfailover.html | 20 +- db/docs/gsg_txn/JAVA/index.html | 34 +- db/docs/gsg_txn/JAVA/inmem_txnexample_java.html | 70 +- db/docs/gsg_txn/JAVA/introduction.html | 46 +- db/docs/gsg_txn/JAVA/isolation.html | 200 +- db/docs/gsg_txn/JAVA/lockingsubsystem.html | 30 +- db/docs/gsg_txn/JAVA/logconfig.html | 26 +- db/docs/gsg_txn/JAVA/logfileremoval.html | 20 +- db/docs/gsg_txn/JAVA/maxtxns.html | 24 +- db/docs/gsg_txn/JAVA/nestedtxn.html | 20 +- db/docs/gsg_txn/JAVA/perftune-intro.html | 22 +- db/docs/gsg_txn/JAVA/preface.html | 30 +- db/docs/gsg_txn/JAVA/readmodifywrite.html | 20 +- db/docs/gsg_txn/JAVA/recovery-intro.html | 22 +- db/docs/gsg_txn/JAVA/recovery.html | 26 +- db/docs/gsg_txn/JAVA/reversesplit.html | 28 +- db/docs/gsg_txn/JAVA/txn_ccursor.html | 24 +- db/docs/gsg_txn/JAVA/txnconcurrency.html | 26 +- db/docs/gsg_txn/JAVA/txncursor.html | 24 +- db/docs/gsg_txn/JAVA/txnexample_java.html | 78 +- db/docs/gsg_txn/JAVA/txnindices.html | 24 +- db/docs/gsg_txn/JAVA/txnnowait.html | 20 +- db/docs/gsg_txn/JAVA/usingtxns.html | 38 +- db/docs/gsg_txn/JAVA/wrapup.html | 24 +- db/docs/images/Oracle_BerkeleyDB_clr.bmp | Bin 523208 -> 0 bytes db/docs/images/sleepycat.gif | Bin 5422 -> 0 bytes db/docs/index.html | 249 +- db/docs/java/allclasses-frame.html | 22 +- db/docs/java/allclasses-noframe.html | 22 +- .../java/com/sleepycat/bind/ByteArrayBinding.html | 28 +- db/docs/java/com/sleepycat/bind/EntityBinding.html | 24 +- db/docs/java/com/sleepycat/bind/EntryBinding.html | 22 +- .../com/sleepycat/bind/RecordNumberBinding.html | 28 +- .../sleepycat/bind/class-use/ByteArrayBinding.html | 12 +- .../sleepycat/bind/class-use/EntityBinding.html | 12 +- .../com/sleepycat/bind/class-use/EntryBinding.html | 24 +- .../bind/class-use/RecordNumberBinding.html | 12 +- db/docs/java/com/sleepycat/bind/package-frame.html | 4 +- .../java/com/sleepycat/bind/package-summary.html | 12 +- db/docs/java/com/sleepycat/bind/package-tree.html | 14 +- db/docs/java/com/sleepycat/bind/package-use.html | 12 +- .../com/sleepycat/bind/serial/ClassCatalog.html | 28 +- .../java/com/sleepycat/bind/serial/SerialBase.html | 24 +- .../com/sleepycat/bind/serial/SerialBinding.html | 40 +- .../com/sleepycat/bind/serial/SerialInput.html | 100 +- .../com/sleepycat/bind/serial/SerialOutput.html | 60 +- .../sleepycat/bind/serial/SerialSerialBinding.html | 62 +- .../bind/serial/SerialSerialKeyCreator.html | 48 +- .../sleepycat/bind/serial/StoredClassCatalog.html | 40 +- .../sleepycat/bind/serial/TupleSerialBinding.html | 52 +- .../bind/serial/TupleSerialKeyCreator.html | 32 +- .../bind/serial/TupleSerialMarshalledBinding.html | 42 +- .../serial/TupleSerialMarshalledKeyCreator.html | 32 +- .../bind/serial/class-use/ClassCatalog.html | 38 +- .../bind/serial/class-use/SerialBase.html | 12 +- .../bind/serial/class-use/SerialBinding.html | 12 +- .../bind/serial/class-use/SerialInput.html | 12 +- .../bind/serial/class-use/SerialOutput.html | 12 +- .../bind/serial/class-use/SerialSerialBinding.html | 12 +- .../serial/class-use/SerialSerialKeyCreator.html | 12 +- .../bind/serial/class-use/StoredClassCatalog.html | 12 +- .../bind/serial/class-use/TupleSerialBinding.html | 12 +- .../serial/class-use/TupleSerialKeyCreator.html | 12 +- .../class-use/TupleSerialMarshalledBinding.html | 14 +- .../class-use/TupleSerialMarshalledKeyCreator.html | 16 +- .../com/sleepycat/bind/serial/package-frame.html | 4 +- .../com/sleepycat/bind/serial/package-summary.html | 12 +- .../com/sleepycat/bind/serial/package-tree.html | 22 +- .../com/sleepycat/bind/serial/package-use.html | 12 +- .../sleepycat/bind/tuple/BigIntegerBinding.html | 394 + .../com/sleepycat/bind/tuple/BooleanBinding.html | 34 +- .../java/com/sleepycat/bind/tuple/ByteBinding.html | 30 +- .../com/sleepycat/bind/tuple/CharacterBinding.html | 30 +- .../com/sleepycat/bind/tuple/DoubleBinding.html | 30 +- .../com/sleepycat/bind/tuple/FloatBinding.html | 30 +- .../com/sleepycat/bind/tuple/IntegerBinding.html | 30 +- .../java/com/sleepycat/bind/tuple/LongBinding.html | 30 +- .../sleepycat/bind/tuple/MarshalledTupleEntry.html | 12 +- .../bind/tuple/MarshalledTupleKeyEntity.html | 20 +- .../com/sleepycat/bind/tuple/ShortBinding.html | 30 +- .../sleepycat/bind/tuple/SortedDoubleBinding.html | 30 +- .../sleepycat/bind/tuple/SortedFloatBinding.html | 30 +- .../com/sleepycat/bind/tuple/StringBinding.html | 38 +- .../java/com/sleepycat/bind/tuple/TupleBase.html | 24 +- .../com/sleepycat/bind/tuple/TupleBinding.html | 40 +- .../java/com/sleepycat/bind/tuple/TupleInput.html | 238 +- .../sleepycat/bind/tuple/TupleInputBinding.html | 28 +- .../bind/tuple/TupleMarshalledBinding.html | 34 +- .../java/com/sleepycat/bind/tuple/TupleOutput.html | 140 +- .../sleepycat/bind/tuple/TupleTupleBinding.html | 42 +- .../sleepycat/bind/tuple/TupleTupleKeyCreator.html | 18 +- .../bind/tuple/TupleTupleMarshalledBinding.html | 38 +- .../bind/tuple/TupleTupleMarshalledKeyCreator.html | 22 +- .../bind/tuple/class-use/BigIntegerBinding.html | 140 + .../bind/tuple/class-use/BooleanBinding.html | 12 +- .../bind/tuple/class-use/ByteBinding.html | 12 +- .../bind/tuple/class-use/CharacterBinding.html | 12 +- .../bind/tuple/class-use/DoubleBinding.html | 12 +- .../bind/tuple/class-use/FloatBinding.html | 12 +- .../bind/tuple/class-use/IntegerBinding.html | 12 +- .../bind/tuple/class-use/LongBinding.html | 12 +- .../bind/tuple/class-use/MarshalledTupleEntry.html | 12 +- .../tuple/class-use/MarshalledTupleKeyEntity.html | 12 +- .../bind/tuple/class-use/ShortBinding.html | 12 +- .../bind/tuple/class-use/SortedDoubleBinding.html | 12 +- .../bind/tuple/class-use/SortedFloatBinding.html | 12 +- .../bind/tuple/class-use/StringBinding.html | 12 +- .../sleepycat/bind/tuple/class-use/TupleBase.html | 20 +- .../bind/tuple/class-use/TupleBinding.html | 22 +- .../sleepycat/bind/tuple/class-use/TupleInput.html | 62 +- .../bind/tuple/class-use/TupleInputBinding.html | 12 +- .../tuple/class-use/TupleMarshalledBinding.html | 12 +- .../bind/tuple/class-use/TupleOutput.html | 111 +- .../bind/tuple/class-use/TupleTupleBinding.html | 12 +- .../bind/tuple/class-use/TupleTupleKeyCreator.html | 12 +- .../class-use/TupleTupleMarshalledBinding.html | 14 +- .../class-use/TupleTupleMarshalledKeyCreator.html | 12 +- .../com/sleepycat/bind/tuple/package-frame.html | 6 +- .../com/sleepycat/bind/tuple/package-summary.html | 16 +- .../com/sleepycat/bind/tuple/package-tree.html | 20 +- .../java/com/sleepycat/bind/tuple/package-use.html | 12 +- .../sleepycat/collections/CurrentTransaction.html | 30 +- .../sleepycat/collections/MapEntryParameter.html | 72 +- .../sleepycat/collections/PrimaryKeyAssigner.html | 12 +- .../sleepycat/collections/StoredCollection.html | 164 +- .../sleepycat/collections/StoredCollections.html | 112 +- .../com/sleepycat/collections/StoredContainer.html | 86 +- .../com/sleepycat/collections/StoredEntrySet.html | 74 +- .../com/sleepycat/collections/StoredIterator.html | 106 +- .../com/sleepycat/collections/StoredKeySet.html | 56 +- .../java/com/sleepycat/collections/StoredList.html | 178 +- .../java/com/sleepycat/collections/StoredMap.html | 196 +- .../collections/StoredSortedEntrySet.html | 118 +- .../sleepycat/collections/StoredSortedKeySet.html | 116 +- .../com/sleepycat/collections/StoredSortedMap.html | 126 +- .../collections/StoredSortedValueSet.html | 116 +- .../com/sleepycat/collections/StoredValueSet.html | 58 +- .../sleepycat/collections/TransactionRunner.html | 28 +- .../sleepycat/collections/TransactionWorker.html | 16 +- .../sleepycat/collections/TupleSerialFactory.html | 44 +- .../collections/class-use/CurrentTransaction.html | 12 +- .../collections/class-use/MapEntryParameter.html | 12 +- .../collections/class-use/PrimaryKeyAssigner.html | 12 +- .../collections/class-use/StoredCollection.html | 12 +- .../collections/class-use/StoredCollections.html | 12 +- .../collections/class-use/StoredContainer.html | 14 +- .../collections/class-use/StoredEntrySet.html | 12 +- .../collections/class-use/StoredIterator.html | 14 +- .../collections/class-use/StoredKeySet.html | 12 +- .../collections/class-use/StoredList.html | 12 +- .../sleepycat/collections/class-use/StoredMap.html | 16 +- .../class-use/StoredSortedEntrySet.html | 12 +- .../collections/class-use/StoredSortedKeySet.html | 12 +- .../collections/class-use/StoredSortedMap.html | 16 +- .../class-use/StoredSortedValueSet.html | 12 +- .../collections/class-use/StoredValueSet.html | 12 +- .../collections/class-use/TransactionRunner.html | 12 +- .../collections/class-use/TransactionWorker.html | 12 +- .../collections/class-use/TupleSerialFactory.html | 12 +- .../com/sleepycat/collections/package-frame.html | 4 +- .../com/sleepycat/collections/package-summary.html | 12 +- .../com/sleepycat/collections/package-tree.html | 40 +- .../com/sleepycat/collections/package-use.html | 12 +- .../com/sleepycat/db/BtreePrefixCalculator.html | 12 +- db/docs/java/com/sleepycat/db/BtreeStats.html | 47 +- db/docs/java/com/sleepycat/db/CacheFile.html | 20 +- .../java/com/sleepycat/db/CacheFilePriority.html | 26 +- db/docs/java/com/sleepycat/db/CacheFileStats.html | 30 +- db/docs/java/com/sleepycat/db/CacheStats.html | 74 +- .../java/com/sleepycat/db/CheckpointConfig.html | 20 +- db/docs/java/com/sleepycat/db/CompactConfig.html | 45 +- db/docs/java/com/sleepycat/db/CompactStats.html | 26 +- db/docs/java/com/sleepycat/db/Cursor.html | 186 +- db/docs/java/com/sleepycat/db/CursorConfig.html | 22 +- db/docs/java/com/sleepycat/db/Database.html | 207 +- db/docs/java/com/sleepycat/db/DatabaseConfig.html | 199 +- db/docs/java/com/sleepycat/db/DatabaseEntry.html | 44 +- .../java/com/sleepycat/db/DatabaseException.html | 50 +- db/docs/java/com/sleepycat/db/DatabaseStats.html | 20 +- db/docs/java/com/sleepycat/db/DatabaseType.html | 26 +- .../java/com/sleepycat/db/DeadlockException.html | 28 +- db/docs/java/com/sleepycat/db/Environment.html | 293 +- .../java/com/sleepycat/db/EnvironmentConfig.html | 421 +- db/docs/java/com/sleepycat/db/ErrorHandler.html | 20 +- db/docs/java/com/sleepycat/db/EventHandler.html | 263 +- .../java/com/sleepycat/db/EventHandlerAdapter.html | 449 + db/docs/java/com/sleepycat/db/EventType.html | 367 - db/docs/java/com/sleepycat/db/FeedbackHandler.html | 16 +- db/docs/java/com/sleepycat/db/HashStats.html | 47 +- db/docs/java/com/sleepycat/db/Hasher.html | 12 +- db/docs/java/com/sleepycat/db/JoinConfig.html | 22 +- db/docs/java/com/sleepycat/db/JoinCursor.html | 32 +- db/docs/java/com/sleepycat/db/KeyRange.html | 20 +- db/docs/java/com/sleepycat/db/Lock.html | 20 +- db/docs/java/com/sleepycat/db/LockDetectMode.html | 26 +- db/docs/java/com/sleepycat/db/LockMode.html | 26 +- .../com/sleepycat/db/LockNotGrantedException.html | 28 +- db/docs/java/com/sleepycat/db/LockOperation.html | 26 +- db/docs/java/com/sleepycat/db/LockRequest.html | 20 +- db/docs/java/com/sleepycat/db/LockRequestMode.html | 30 +- db/docs/java/com/sleepycat/db/LockStats.html | 205 +- db/docs/java/com/sleepycat/db/LogCursor.html | 48 +- .../java/com/sleepycat/db/LogRecordHandler.html | 12 +- .../java/com/sleepycat/db/LogSequenceNumber.html | 20 +- db/docs/java/com/sleepycat/db/LogStats.html | 26 +- db/docs/java/com/sleepycat/db/MemoryException.html | 34 +- db/docs/java/com/sleepycat/db/MessageHandler.html | 16 +- .../java/com/sleepycat/db/MultipleDataEntry.html | 18 +- db/docs/java/com/sleepycat/db/MultipleEntry.html | 18 +- .../com/sleepycat/db/MultipleKeyDataEntry.html | 18 +- .../com/sleepycat/db/MultipleKeyNIODataEntry.html | 22 +- .../com/sleepycat/db/MultipleNIODataEntry.html | 22 +- .../com/sleepycat/db/MultipleRecnoDataEntry.html | 18 +- .../sleepycat/db/MultipleRecnoNIODataEntry.html | 22 +- db/docs/java/com/sleepycat/db/MutexStats.html | 26 +- db/docs/java/com/sleepycat/db/OperationStatus.html | 26 +- db/docs/java/com/sleepycat/db/PanicHandler.html | 12 +- .../java/com/sleepycat/db/PreparedTransaction.html | 20 +- db/docs/java/com/sleepycat/db/QueueStats.html | 24 +- .../com/sleepycat/db/RecordNumberAppender.html | 12 +- .../java/com/sleepycat/db/RecoveryOperation.html | 26 +- .../java/com/sleepycat/db/ReplicationConfig.html | 28 +- .../db/ReplicationDuplicateMasterException.html | 28 +- .../db/ReplicationHandleDeadException.html | 28 +- .../db/ReplicationHoldElectionException.html | 28 +- .../com/sleepycat/db/ReplicationHostAddress.html | 116 +- .../db/ReplicationJoinFailureException.html | 32 +- .../db/ReplicationLeaseExpiredException.html | 218 + .../db/ReplicationLeaseTimeoutException.html | 218 + .../sleepycat/db/ReplicationLockoutException.html | 32 +- .../sleepycat/db/ReplicationManagerAckPolicy.html | 26 +- .../db/ReplicationManagerStartPolicy.html | 55 +- .../com/sleepycat/db/ReplicationManagerStats.html | 338 + .../db/ReplicationSiteUnavailableException.html | 32 +- .../java/com/sleepycat/db/ReplicationStats.html | 51 +- .../java/com/sleepycat/db/ReplicationStatus.html | 50 +- .../com/sleepycat/db/ReplicationTimeoutType.html | 76 +- .../com/sleepycat/db/ReplicationTransport.html | 12 +- .../com/sleepycat/db/RunRecoveryException.html | 28 +- db/docs/java/com/sleepycat/db/SecondaryConfig.html | 86 +- db/docs/java/com/sleepycat/db/SecondaryCursor.html | 108 +- .../java/com/sleepycat/db/SecondaryDatabase.html | 46 +- .../java/com/sleepycat/db/SecondaryKeyCreator.html | 16 +- .../com/sleepycat/db/SecondaryMultiKeyCreator.html | 306 + db/docs/java/com/sleepycat/db/Sequence.html | 24 +- db/docs/java/com/sleepycat/db/SequenceConfig.html | 22 +- db/docs/java/com/sleepycat/db/SequenceStats.html | 26 +- db/docs/java/com/sleepycat/db/StatsConfig.html | 20 +- db/docs/java/com/sleepycat/db/Transaction.html | 84 +- .../java/com/sleepycat/db/TransactionConfig.html | 154 +- .../com/sleepycat/db/TransactionStats.Active.html | 61 +- .../java/com/sleepycat/db/TransactionStats.html | 31 +- .../com/sleepycat/db/UpdateConflictException.html | 219 - db/docs/java/com/sleepycat/db/VerboseConfig.html | 387 + db/docs/java/com/sleepycat/db/VerifyConfig.html | 24 +- .../com/sleepycat/db/VersionMismatchException.html | 28 +- .../db/class-use/BtreePrefixCalculator.html | 12 +- .../com/sleepycat/db/class-use/BtreeStats.html | 12 +- .../java/com/sleepycat/db/class-use/CacheFile.html | 12 +- .../sleepycat/db/class-use/CacheFilePriority.html | 44 +- .../com/sleepycat/db/class-use/CacheFileStats.html | 12 +- .../com/sleepycat/db/class-use/CacheStats.html | 12 +- .../sleepycat/db/class-use/CheckpointConfig.html | 12 +- .../com/sleepycat/db/class-use/CompactConfig.html | 12 +- .../com/sleepycat/db/class-use/CompactStats.html | 12 +- .../java/com/sleepycat/db/class-use/Cursor.html | 12 +- .../com/sleepycat/db/class-use/CursorConfig.html | 36 +- .../java/com/sleepycat/db/class-use/Database.html | 32 +- .../com/sleepycat/db/class-use/DatabaseConfig.html | 38 +- .../com/sleepycat/db/class-use/DatabaseEntry.html | 101 +- .../sleepycat/db/class-use/DatabaseException.html | 194 +- .../com/sleepycat/db/class-use/DatabaseStats.html | 12 +- .../com/sleepycat/db/class-use/DatabaseType.html | 12 +- .../sleepycat/db/class-use/DeadlockException.html | 12 +- .../com/sleepycat/db/class-use/Environment.html | 20 +- .../sleepycat/db/class-use/EnvironmentConfig.html | 16 +- .../com/sleepycat/db/class-use/ErrorHandler.html | 12 +- .../com/sleepycat/db/class-use/EventHandler.html | 30 +- .../db/class-use/EventHandlerAdapter.html | 140 + .../java/com/sleepycat/db/class-use/EventType.html | 237 - .../sleepycat/db/class-use/FeedbackHandler.html | 12 +- .../java/com/sleepycat/db/class-use/HashStats.html | 12 +- .../java/com/sleepycat/db/class-use/Hasher.html | 12 +- .../com/sleepycat/db/class-use/JoinConfig.html | 14 +- .../com/sleepycat/db/class-use/JoinCursor.html | 12 +- .../java/com/sleepycat/db/class-use/KeyRange.html | 12 +- db/docs/java/com/sleepycat/db/class-use/Lock.html | 12 +- .../com/sleepycat/db/class-use/LockDetectMode.html | 12 +- .../java/com/sleepycat/db/class-use/LockMode.html | 12 +- .../db/class-use/LockNotGrantedException.html | 12 +- .../com/sleepycat/db/class-use/LockOperation.html | 12 +- .../com/sleepycat/db/class-use/LockRequest.html | 12 +- .../sleepycat/db/class-use/LockRequestMode.html | 12 +- .../java/com/sleepycat/db/class-use/LockStats.html | 12 +- .../java/com/sleepycat/db/class-use/LogCursor.html | 12 +- .../sleepycat/db/class-use/LogRecordHandler.html | 12 +- .../sleepycat/db/class-use/LogSequenceNumber.html | 14 +- .../java/com/sleepycat/db/class-use/LogStats.html | 12 +- .../sleepycat/db/class-use/MemoryException.html | 12 +- .../com/sleepycat/db/class-use/MessageHandler.html | 12 +- .../sleepycat/db/class-use/MultipleDataEntry.html | 12 +- .../com/sleepycat/db/class-use/MultipleEntry.html | 12 +- .../db/class-use/MultipleKeyDataEntry.html | 12 +- .../db/class-use/MultipleKeyNIODataEntry.html | 12 +- .../db/class-use/MultipleNIODataEntry.html | 12 +- .../db/class-use/MultipleRecnoDataEntry.html | 12 +- .../db/class-use/MultipleRecnoNIODataEntry.html | 12 +- .../com/sleepycat/db/class-use/MutexStats.html | 12 +- .../sleepycat/db/class-use/OperationStatus.html | 21 +- .../com/sleepycat/db/class-use/PanicHandler.html | 12 +- .../db/class-use/PreparedTransaction.html | 12 +- .../com/sleepycat/db/class-use/QueueStats.html | 12 +- .../db/class-use/RecordNumberAppender.html | 12 +- .../sleepycat/db/class-use/RecoveryOperation.html | 12 +- .../sleepycat/db/class-use/ReplicationConfig.html | 12 +- .../ReplicationDuplicateMasterException.html | 12 +- .../class-use/ReplicationHandleDeadException.html | 12 +- .../ReplicationHoldElectionException.html | 12 +- .../db/class-use/ReplicationHostAddress.html | 12 +- .../class-use/ReplicationJoinFailureException.html | 12 +- .../ReplicationLeaseExpiredException.html | 140 + .../ReplicationLeaseTimeoutException.html | 140 + .../db/class-use/ReplicationLockoutException.html | 12 +- .../db/class-use/ReplicationManagerAckPolicy.html | 12 +- .../class-use/ReplicationManagerStartPolicy.html | 20 +- .../db/class-use/ReplicationManagerStats.html | 177 + .../ReplicationSiteUnavailableException.html | 12 +- .../sleepycat/db/class-use/ReplicationStats.html | 12 +- .../sleepycat/db/class-use/ReplicationStatus.html | 12 +- .../db/class-use/ReplicationTimeoutType.html | 30 +- .../db/class-use/ReplicationTransport.html | 12 +- .../db/class-use/RunRecoveryException.html | 12 +- .../sleepycat/db/class-use/SecondaryConfig.html | 20 +- .../sleepycat/db/class-use/SecondaryCursor.html | 12 +- .../sleepycat/db/class-use/SecondaryDatabase.html | 27 +- .../db/class-use/SecondaryKeyCreator.html | 12 +- .../db/class-use/SecondaryMultiKeyCreator.html | 195 + .../java/com/sleepycat/db/class-use/Sequence.html | 12 +- .../com/sleepycat/db/class-use/SequenceConfig.html | 12 +- .../com/sleepycat/db/class-use/SequenceStats.html | 12 +- .../com/sleepycat/db/class-use/StatsConfig.html | 20 +- .../com/sleepycat/db/class-use/Transaction.html | 50 +- .../sleepycat/db/class-use/TransactionConfig.html | 12 +- .../db/class-use/TransactionStats.Active.html | 12 +- .../sleepycat/db/class-use/TransactionStats.html | 12 +- .../db/class-use/UpdateConflictException.html | 140 - .../com/sleepycat/db/class-use/VerboseConfig.html | 253 + .../com/sleepycat/db/class-use/VerifyConfig.html | 18 +- .../db/class-use/VersionMismatchException.html | 12 +- db/docs/java/com/sleepycat/db/package-frame.html | 20 +- db/docs/java/com/sleepycat/db/package-summary.html | 48 +- db/docs/java/com/sleepycat/db/package-tree.html | 43 +- db/docs/java/com/sleepycat/db/package-use.html | 41 +- .../com/sleepycat/util/ExceptionUnwrapper.html | 36 +- .../java/com/sleepycat/util/ExceptionWrapper.html | 20 +- .../java/com/sleepycat/util/FastInputStream.html | 58 +- .../java/com/sleepycat/util/FastOutputStream.html | 72 +- .../com/sleepycat/util/IOExceptionWrapper.html | 46 +- db/docs/java/com/sleepycat/util/PackedInteger.html | 165 +- .../sleepycat/util/RuntimeExceptionWrapper.html | 46 +- db/docs/java/com/sleepycat/util/UtfOps.html | 64 +- .../util/class-use/ExceptionUnwrapper.html | 12 +- .../sleepycat/util/class-use/ExceptionWrapper.html | 12 +- .../sleepycat/util/class-use/FastInputStream.html | 12 +- .../sleepycat/util/class-use/FastOutputStream.html | 14 +- .../util/class-use/IOExceptionWrapper.html | 12 +- .../sleepycat/util/class-use/PackedInteger.html | 12 +- .../util/class-use/RuntimeExceptionWrapper.html | 12 +- .../java/com/sleepycat/util/class-use/UtfOps.html | 12 +- db/docs/java/com/sleepycat/util/package-frame.html | 4 +- .../java/com/sleepycat/util/package-summary.html | 12 +- db/docs/java/com/sleepycat/util/package-tree.html | 26 +- db/docs/java/com/sleepycat/util/package-use.html | 12 +- db/docs/java/constant-values.html | 48 +- db/docs/java/deprecated-list.html | 82 +- db/docs/java/help-doc.html | 12 +- db/docs/java/index-all.html | 455 +- db/docs/java/index.html | 4 +- db/docs/java/overview-frame.html | 6 +- db/docs/java/overview-summary.html | 12 +- db/docs/java/overview-tree.html | 83 +- db/docs/java/packages.html | 37 - db/docs/java/serialized-form.html | 49 +- db/docs/license/license_db.html | 111 +- db/docs/license/license_xml.html | 184 - db/docs/ref/am/close.html | 5 +- db/docs/ref/am/count.html | 7 +- db/docs/ref/am/curclose.html | 7 +- db/docs/ref/am/curdel.html | 9 +- db/docs/ref/am/curdup.html | 9 +- db/docs/ref/am/curget.html | 13 +- db/docs/ref/am/curput.html | 11 +- db/docs/ref/am/cursor.html | 30 +- db/docs/ref/am/delete.html | 5 +- db/docs/ref/am/error.html | 61 - db/docs/ref/am/get.html | 5 +- db/docs/ref/am/join.html | 5 +- db/docs/ref/am/open.html | 5 +- db/docs/ref/am/opensub.html | 64 +- db/docs/ref/am/ops.html | 10 +- db/docs/ref/am/partial.html | 134 - db/docs/ref/am/put.html | 5 +- db/docs/ref/am/second.html | 17 +- db/docs/ref/am/second.javas | 5 +- db/docs/ref/am/stability.html | 49 - db/docs/ref/am/stat.html | 5 +- db/docs/ref/am/sync.html | 5 +- db/docs/ref/am/truncate.html | 5 +- db/docs/ref/am/upgrade.html | 5 +- db/docs/ref/am/verify.html | 5 +- db/docs/ref/am_conf/bt_compare.html | 9 +- db/docs/ref/am_conf/bt_minkey.html | 5 +- db/docs/ref/am_conf/bt_prefix.html | 5 +- db/docs/ref/am_conf/bt_recnum.html | 9 +- db/docs/ref/am_conf/byteorder.html | 5 +- db/docs/ref/am_conf/cachesize.html | 5 +- db/docs/ref/am_conf/dup.html | 11 +- db/docs/ref/am_conf/extentsize.html | 5 +- db/docs/ref/am_conf/h_ffactor.html | 5 +- db/docs/ref/am_conf/h_hash.html | 5 +- db/docs/ref/am_conf/h_nelem.html | 5 +- db/docs/ref/am_conf/intro.html | 5 +- db/docs/ref/am_conf/logrec.html | 7 +- db/docs/ref/am_conf/malloc.html | 5 +- db/docs/ref/am_conf/pagesize.html | 5 +- db/docs/ref/am_conf/re_source.html | 5 +- db/docs/ref/am_conf/recno.html | 5 +- db/docs/ref/am_conf/renumber.html | 7 +- db/docs/ref/am_conf/select.html | 5 +- db/docs/ref/am_misc/align.html | 5 +- db/docs/ref/am_misc/dbsizes.html | 5 +- db/docs/ref/am_misc/diskspace.html | 5 +- db/docs/ref/am_misc/error.html | 5 +- db/docs/ref/am_misc/faq.html | 5 +- db/docs/ref/am_misc/get_bulk.html | 17 +- db/docs/ref/am_misc/partial.html | 5 +- db/docs/ref/am_misc/perm.html | 7 +- db/docs/ref/am_misc/stability.html | 5 +- db/docs/ref/am_misc/struct.html | 5 +- db/docs/ref/am_misc/tune.html | 5 +- db/docs/ref/apprec/auto.html | 5 +- db/docs/ref/apprec/config.html | 5 +- db/docs/ref/apprec/def.html | 36 +- db/docs/ref/apprec/intro.html | 11 +- db/docs/ref/arch/apis.html | 5 +- db/docs/ref/arch/bigpic.html | 5 +- db/docs/ref/arch/progmodel.html | 5 +- db/docs/ref/arch/script.html | 5 +- db/docs/ref/arch/utilities.html | 5 +- db/docs/ref/build_brew/intro.html | 108 + db/docs/ref/build_s60/intro.html | 68 + db/docs/ref/build_unix/aix.html | 5 +- db/docs/ref/build_unix/conf.html | 37 +- db/docs/ref/build_unix/flags.html | 7 +- db/docs/ref/build_unix/freebsd.html | 5 +- db/docs/ref/build_unix/hpux.html | 5 +- db/docs/ref/build_unix/install.html | 7 +- db/docs/ref/build_unix/intro.html | 11 +- db/docs/ref/build_unix/irix.html | 5 +- db/docs/ref/build_unix/linux.html | 5 +- db/docs/ref/build_unix/macosx.html | 5 +- db/docs/ref/build_unix/notes.html | 5 +- db/docs/ref/build_unix/osf1.html | 5 +- db/docs/ref/build_unix/qnx.html | 5 +- db/docs/ref/build_unix/sco.html | 5 +- db/docs/ref/build_unix/shlib.html | 7 +- db/docs/ref/build_unix/small.html | 21 +- db/docs/ref/build_unix/solaris.html | 12 +- db/docs/ref/build_unix/sunos.html | 5 +- db/docs/ref/build_unix/test.html | 5 +- db/docs/ref/build_unix/ultrix.html | 5 +- db/docs/ref/build_vxworks/faq.html | 5 +- db/docs/ref/build_vxworks/intro.html | 15 +- db/docs/ref/build_vxworks/introae.html | 5 +- db/docs/ref/build_vxworks/notes.html | 5 +- db/docs/ref/build_win/faq.html | 17 +- db/docs/ref/build_win/intro.html | 21 +- db/docs/ref/build_win/notes.html | 5 +- db/docs/ref/build_win/small.html | 9 +- db/docs/ref/build_win/test.html | 5 +- db/docs/ref/build_win/unicode.html | 40 - db/docs/ref/build_wince/faq.html | 28 + db/docs/ref/build_wince/intro.html | 84 + db/docs/ref/build_wince/notes.html | 34 + db/docs/ref/cam/app.html | 5 +- db/docs/ref/cam/fail.html | 5 +- db/docs/ref/cam/intro.html | 11 +- db/docs/ref/changelog/2.1.html | 84 + db/docs/ref/changelog/2.2.html | 348 + db/docs/ref/changelog/2.3.10.html | 27 + db/docs/ref/changelog/2.3.11.html | 22 + db/docs/ref/changelog/2.3.12.html | 66 + db/docs/ref/changelog/2.3.14.html | 67 + db/docs/ref/changelog/2.3.16.html | 165 + db/docs/ref/changelog/2.3.5.html | 36 + db/docs/ref/changelog/2.3.html | 184 + db/docs/ref/changelog/2.4.10.html | 473 + db/docs/ref/changelog/2.4.14.html | 198 + db/docs/ref/changelog/2.5.9.html | 644 + db/docs/ref/changelog/2.6.4.html | 201 + db/docs/ref/changelog/2.6.5.html | 17 + db/docs/ref/changelog/2.6.6.html | 80 + db/docs/ref/changelog/2.6.7.html | 55 + db/docs/ref/changelog/2.7.1.html | 40 + db/docs/ref/changelog/2.7.3.html | 59 + db/docs/ref/changelog/2.7.4.html | 102 + db/docs/ref/changelog/2.7.5.html | 38 + db/docs/ref/changelog/2.7.7.html | 51 + db/docs/ref/changelog/3.0.55.html | 945 ++ db/docs/ref/changelog/3.1.14.html | 300 + db/docs/ref/changelog/3.1.17.html | 213 + db/docs/ref/changelog/3.2.9.html | 324 + db/docs/ref/changelog/3.3.11.html | 295 + db/docs/ref/changelog/4.0.14.html | 246 + db/docs/ref/changelog/4.1.24.html | 409 + db/docs/ref/changelog/4.1.25.html | 16 + db/docs/ref/changelog/4.2.52.html | 811 ++ db/docs/ref/changelog/4.3.29.html | 524 + db/docs/ref/changelog/4.4.16.html | 444 + db/docs/ref/changelog/4.4.20.html | 51 + db/docs/ref/changelog/4.5.20.html | 322 + db/docs/ref/changelog/4.6.html | 366 + db/docs/ref/changelog/toc.html | 58 + db/docs/ref/debug/common.html | 148 - db/docs/ref/debug/compile.html | 5 +- db/docs/ref/debug/intro.html | 11 +- db/docs/ref/debug/printlog.html | 11 +- db/docs/ref/debug/runtime.html | 19 +- db/docs/ref/distrib/layout.html | 14 +- db/docs/ref/distrib/port.html | 5 +- db/docs/ref/dumpload/format.html | 5 +- db/docs/ref/dumpload/text.html | 5 +- db/docs/ref/dumpload/utility.html | 5 +- db/docs/ref/env/create.html | 5 +- db/docs/ref/env/db_config.html | 5 +- db/docs/ref/env/encrypt.html | 11 +- db/docs/ref/env/error.html | 5 +- db/docs/ref/env/faq.html | 5 +- db/docs/ref/env/intro.html | 5 +- db/docs/ref/env/naming.html | 5 +- db/docs/ref/env/open.html | 5 +- db/docs/ref/env/region.html | 5 +- db/docs/ref/env/remote.html | 5 +- db/docs/ref/env/security.html | 5 +- db/docs/ref/ext/mod.html | 18 +- db/docs/ref/ext/perl.html | 13 +- db/docs/ref/ext/php.html | 5 +- db/docs/ref/install/file.html | 5 +- db/docs/ref/install/multiple.html | 5 +- db/docs/ref/intro/data.html | 5 +- db/docs/ref/intro/dbis.html | 5 +- db/docs/ref/intro/dbisnot.html | 5 +- db/docs/ref/intro/distrib.html | 5 +- db/docs/ref/intro/need.html | 5 +- db/docs/ref/intro/products.html | 31 +- db/docs/ref/intro/terrain.html | 5 +- db/docs/ref/intro/what.html | 5 +- db/docs/ref/intro/where.html | 5 +- db/docs/ref/java/compat.html | 22 +- db/docs/ref/java/conf.html | 5 +- db/docs/ref/java/faq.html | 11 +- db/docs/ref/java/program.html | 9 +- db/docs/ref/lock/am_conv.html | 11 +- db/docs/ref/lock/cam_conv.html | 5 +- db/docs/ref/lock/config.html | 5 +- db/docs/ref/lock/dead.html | 5 +- db/docs/ref/lock/deaddbg.html | 5 +- db/docs/ref/lock/intro.html | 11 +- db/docs/ref/lock/max.html | 5 +- db/docs/ref/lock/nondb.html | 5 +- db/docs/ref/lock/notxn.html | 5 +- db/docs/ref/lock/page.html | 5 +- db/docs/ref/lock/stdmode.html | 5 +- db/docs/ref/lock/timeout.html | 5 +- db/docs/ref/lock/twopl.html | 5 +- db/docs/ref/log/config.html | 5 +- db/docs/ref/log/intro.html | 11 +- db/docs/ref/log/limits.html | 5 +- db/docs/ref/mp/config.html | 5 +- db/docs/ref/mp/intro.html | 24 +- db/docs/ref/pindex.src | 1 + db/docs/ref/program/appsignals.html | 5 +- db/docs/ref/program/byteorder.html | 31 - db/docs/ref/program/cache.html | 5 +- db/docs/ref/program/compatible.html | 5 +- db/docs/ref/program/copy.html | 5 +- db/docs/ref/program/dbsizes.html | 45 - db/docs/ref/program/diskspace.html | 145 - db/docs/ref/program/environ.html | 5 +- db/docs/ref/program/errorret.html | 5 +- db/docs/ref/program/extending.html | 242 - db/docs/ref/program/faq.html | 5 +- db/docs/ref/program/mt.html | 5 +- db/docs/ref/program/namespace.html | 5 +- db/docs/ref/program/ram.html | 5 +- db/docs/ref/program/recimp.html | 49 - db/docs/ref/program/runtime.html | 5 +- db/docs/ref/program/scope.html | 15 +- db/docs/ref/program/version.html | 45 - db/docs/ref/refs/bdb_usenix.html | 1120 -- db/docs/ref/refs/refs.html | 13 +- db/docs/ref/refs/witold.html | 5 +- db/docs/ref/rep/app.html | 14 +- db/docs/ref/rep/base_meth.html | 13 +- db/docs/ref/rep/bulk.html | 5 +- db/docs/ref/rep/comm.html | 15 +- db/docs/ref/rep/elect.html | 51 +- db/docs/ref/rep/ex.html | 7 +- db/docs/ref/rep/ex_comm.html | 5 +- db/docs/ref/rep/ex_rq.html | 5 +- db/docs/ref/rep/faq.html | 5 +- db/docs/ref/rep/id.html | 5 +- db/docs/ref/rep/init.html | 5 +- db/docs/ref/rep/intro.html | 15 +- db/docs/ref/rep/mastersync.html | 15 +- db/docs/ref/rep/mgr_meth.html | 5 +- db/docs/ref/rep/newsite.html | 5 +- db/docs/ref/rep/partition.html | 5 +- db/docs/ref/rep/pri.html | 5 +- db/docs/ref/rep/trans.html | 5 +- db/docs/ref/rpc/client.html | 5 +- db/docs/ref/rpc/faq.html | 5 +- db/docs/ref/rpc/intro.html | 11 +- db/docs/ref/rpc/server.html | 5 +- db/docs/ref/sequence/intro.html | 11 +- db/docs/ref/simple_tut/example.txt | 73 - db/docs/ref/tcl/error.html | 5 +- db/docs/ref/tcl/faq.html | 5 +- db/docs/ref/tcl/intro.html | 13 +- db/docs/ref/tcl/program.html | 5 +- db/docs/ref/tcl/using.html | 5 +- db/docs/ref/test/faq.html | 5 +- db/docs/ref/test/run.html | 11 +- db/docs/ref/toc.html | 85 +- db/docs/ref/transapp/admin.html | 5 +- db/docs/ref/transapp/app.html | 5 +- db/docs/ref/transapp/archival.html | 5 +- db/docs/ref/transapp/atomicity.html | 5 +- db/docs/ref/transapp/checkpoint.html | 7 +- db/docs/ref/transapp/cursor.html | 7 +- db/docs/ref/transapp/data_open.html | 5 +- db/docs/ref/transapp/deadlock.html | 5 +- db/docs/ref/transapp/env_open.html | 5 +- db/docs/ref/transapp/fail.html | 5 +- db/docs/ref/transapp/faq.html | 5 +- db/docs/ref/transapp/filesys.html | 5 +- db/docs/ref/transapp/hotfail.html | 5 +- db/docs/ref/transapp/inc.html | 5 +- db/docs/ref/transapp/intro.html | 11 +- db/docs/ref/transapp/logfile.html | 5 +- db/docs/ref/transapp/nested.html | 5 +- db/docs/ref/transapp/put.html | 5 +- db/docs/ref/transapp/read.html | 5 +- db/docs/ref/transapp/reclimit.html | 5 +- db/docs/ref/transapp/recovery.html | 5 +- db/docs/ref/transapp/term.html | 5 +- db/docs/ref/transapp/throughput.html | 5 +- db/docs/ref/transapp/transapp.cs | 2 +- db/docs/ref/transapp/transapp.txt | 492 - db/docs/ref/transapp/tune.html | 5 +- db/docs/ref/transapp/why.html | 5 +- db/docs/ref/transapp/writetest.txt | 100 - db/docs/ref/txn/config.html | 5 +- db/docs/ref/txn/intro.html | 11 +- db/docs/ref/txn/limits.html | 5 +- db/docs/ref/txn/nested.html | 66 - db/docs/ref/txn/other.html | 67 - db/docs/ref/upgrade.2.0/convert.html | 7 +- db/docs/ref/upgrade.2.0/disk.html | 5 +- db/docs/ref/upgrade.2.0/intro.html | 11 +- db/docs/ref/upgrade.2.0/system.html | 5 +- db/docs/ref/upgrade.2.0/toc.html | 11 +- db/docs/ref/upgrade.3.0/close.html | 5 +- db/docs/ref/upgrade.3.0/cxx.html | 5 +- db/docs/ref/upgrade.3.0/db.html | 5 +- db/docs/ref/upgrade.3.0/db_cxx.html | 5 +- db/docs/ref/upgrade.3.0/dbenv.html | 5 +- db/docs/ref/upgrade.3.0/dbenv_cxx.html | 5 +- db/docs/ref/upgrade.3.0/dbinfo.html | 5 +- db/docs/ref/upgrade.3.0/disk.html | 5 +- db/docs/ref/upgrade.3.0/eacces.html | 5 +- db/docs/ref/upgrade.3.0/eagain.html | 5 +- db/docs/ref/upgrade.3.0/envopen.html | 5 +- db/docs/ref/upgrade.3.0/func.html | 5 +- db/docs/ref/upgrade.3.0/intro.html | 5 +- db/docs/ref/upgrade.3.0/java.html | 5 +- db/docs/ref/upgrade.3.0/join.html | 5 +- db/docs/ref/upgrade.3.0/jump_set.html | 5 +- db/docs/ref/upgrade.3.0/lock_detect.html | 5 +- db/docs/ref/upgrade.3.0/lock_notheld.html | 5 +- db/docs/ref/upgrade.3.0/lock_put.html | 5 +- db/docs/ref/upgrade.3.0/lock_stat.html | 5 +- db/docs/ref/upgrade.3.0/log_register.html | 5 +- db/docs/ref/upgrade.3.0/log_stat.html | 5 +- db/docs/ref/upgrade.3.0/memp_stat.html | 5 +- db/docs/ref/upgrade.3.0/open.html | 5 +- db/docs/ref/upgrade.3.0/rmw.html | 5 +- db/docs/ref/upgrade.3.0/stat.html | 5 +- db/docs/ref/upgrade.3.0/toc.html | 11 +- db/docs/ref/upgrade.3.0/txn_begin.html | 5 +- db/docs/ref/upgrade.3.0/txn_commit.html | 5 +- db/docs/ref/upgrade.3.0/txn_stat.html | 5 +- db/docs/ref/upgrade.3.0/value_set.html | 5 +- db/docs/ref/upgrade.3.0/xa.html | 5 +- db/docs/ref/upgrade.3.1/btstat.html | 5 +- db/docs/ref/upgrade.3.1/config.html | 5 +- db/docs/ref/upgrade.3.1/disk.html | 5 +- db/docs/ref/upgrade.3.1/dup.html | 5 +- db/docs/ref/upgrade.3.1/env.html | 5 +- db/docs/ref/upgrade.3.1/intro.html | 5 +- db/docs/ref/upgrade.3.1/log_register.html | 5 +- db/docs/ref/upgrade.3.1/logalloc.html | 5 +- db/docs/ref/upgrade.3.1/memp_register.html | 5 +- db/docs/ref/upgrade.3.1/put.html | 5 +- db/docs/ref/upgrade.3.1/set_feedback.html | 5 +- db/docs/ref/upgrade.3.1/set_paniccall.html | 5 +- db/docs/ref/upgrade.3.1/set_tx_recover.html | 5 +- db/docs/ref/upgrade.3.1/sysmem.html | 5 +- db/docs/ref/upgrade.3.1/tcl.html | 5 +- db/docs/ref/upgrade.3.1/tmp.html | 5 +- db/docs/ref/upgrade.3.1/toc.html | 11 +- db/docs/ref/upgrade.3.1/txn_check.html | 5 +- db/docs/ref/upgrade.3.2/callback.html | 5 +- db/docs/ref/upgrade.3.2/db_dump.html | 5 +- db/docs/ref/upgrade.3.2/disk.html | 5 +- db/docs/ref/upgrade.3.2/handle.html | 5 +- db/docs/ref/upgrade.3.2/incomplete.html | 5 +- db/docs/ref/upgrade.3.2/intro.html | 5 +- db/docs/ref/upgrade.3.2/mutexlock.html | 5 +- db/docs/ref/upgrade.3.2/notfound.html | 5 +- db/docs/ref/upgrade.3.2/renumber.html | 5 +- db/docs/ref/upgrade.3.2/set_flags.html | 5 +- db/docs/ref/upgrade.3.2/toc.html | 11 +- db/docs/ref/upgrade.3.2/tx_recover.html | 5 +- db/docs/ref/upgrade.3.3/alloc.html | 5 +- db/docs/ref/upgrade.3.3/bigfile.html | 5 +- db/docs/ref/upgrade.3.3/conflict.html | 5 +- db/docs/ref/upgrade.3.3/disk.html | 5 +- db/docs/ref/upgrade.3.3/getswap.html | 5 +- db/docs/ref/upgrade.3.3/gettype.html | 5 +- db/docs/ref/upgrade.3.3/intro.html | 5 +- db/docs/ref/upgrade.3.3/memp_fget.html | 5 +- db/docs/ref/upgrade.3.3/rpc.html | 5 +- db/docs/ref/upgrade.3.3/shared.html | 5 +- db/docs/ref/upgrade.3.3/toc.html | 11 +- db/docs/ref/upgrade.3.3/txn_prepare.html | 5 +- db/docs/ref/upgrade.4.0/asr.html | 5 +- db/docs/ref/upgrade.4.0/cxx.html | 5 +- db/docs/ref/upgrade.4.0/deadlock.html | 5 +- db/docs/ref/upgrade.4.0/disk.html | 5 +- db/docs/ref/upgrade.4.0/env.html | 5 +- db/docs/ref/upgrade.4.0/intro.html | 5 +- db/docs/ref/upgrade.4.0/java.html | 7 +- db/docs/ref/upgrade.4.0/lock.html | 5 +- db/docs/ref/upgrade.4.0/lock_id_free.html | 5 +- db/docs/ref/upgrade.4.0/log.html | 5 +- db/docs/ref/upgrade.4.0/mp.html | 9 +- db/docs/ref/upgrade.4.0/rpc.html | 5 +- db/docs/ref/upgrade.4.0/set_lk_max.html | 5 +- db/docs/ref/upgrade.4.0/toc.html | 11 +- db/docs/ref/upgrade.4.0/txn.html | 5 +- db/docs/ref/upgrade.4.1/app_dispatch.html | 5 +- db/docs/ref/upgrade.4.1/checkpoint.html | 5 +- db/docs/ref/upgrade.4.1/cxx.html | 5 +- db/docs/ref/upgrade.4.1/disk.html | 13 +- db/docs/ref/upgrade.4.1/excl.html | 5 +- db/docs/ref/upgrade.4.1/fop.html | 5 +- db/docs/ref/upgrade.4.1/hash_nelem.html | 5 +- db/docs/ref/upgrade.4.1/incomplete.html | 5 +- db/docs/ref/upgrade.4.1/intro.html | 5 +- db/docs/ref/upgrade.4.1/java.html | 5 +- db/docs/ref/upgrade.4.1/log_register.html | 5 +- db/docs/ref/upgrade.4.1/log_stat.html | 5 +- db/docs/ref/upgrade.4.1/memp_sync.html | 5 +- db/docs/ref/upgrade.4.1/toc.html | 11 +- db/docs/ref/upgrade.4.2/cksum.html | 5 +- db/docs/ref/upgrade.4.2/client.html | 5 +- db/docs/ref/upgrade.4.2/del.html | 5 +- db/docs/ref/upgrade.4.2/disk.html | 5 +- db/docs/ref/upgrade.4.2/intro.html | 5 +- db/docs/ref/upgrade.4.2/java.html | 5 +- db/docs/ref/upgrade.4.2/lockng.html | 5 +- db/docs/ref/upgrade.4.2/nosync.html | 5 +- db/docs/ref/upgrade.4.2/priority.html | 5 +- db/docs/ref/upgrade.4.2/queue.html | 5 +- db/docs/ref/upgrade.4.2/repinit.html | 5 +- db/docs/ref/upgrade.4.2/tcl.html | 5 +- db/docs/ref/upgrade.4.2/toc.html | 13 +- db/docs/ref/upgrade.4.2/verify.html | 5 +- db/docs/ref/upgrade.4.3/cput.html | 7 +- db/docs/ref/upgrade.4.3/disk.html | 5 +- db/docs/ref/upgrade.4.3/enomem.html | 7 +- db/docs/ref/upgrade.4.3/err.html | 5 +- db/docs/ref/upgrade.4.3/fileopen.html | 5 +- db/docs/ref/upgrade.4.3/intro.html | 5 +- db/docs/ref/upgrade.4.3/java.html | 5 +- db/docs/ref/upgrade.4.3/log.html | 5 +- db/docs/ref/upgrade.4.3/repl.html | 5 +- db/docs/ref/upgrade.4.3/rtc.html | 5 +- db/docs/ref/upgrade.4.3/stat.html | 5 +- db/docs/ref/upgrade.4.3/toc.html | 15 +- db/docs/ref/upgrade.4.3/verb.html | 5 +- db/docs/ref/upgrade.4.4/autocommit.html | 5 +- db/docs/ref/upgrade.4.4/clear.html | 5 +- db/docs/ref/upgrade.4.4/disk.html | 5 +- db/docs/ref/upgrade.4.4/intro.html | 5 +- db/docs/ref/upgrade.4.4/isolation.html | 5 +- db/docs/ref/upgrade.4.4/joinenv.html | 5 +- db/docs/ref/upgrade.4.4/lockstat.html | 5 +- db/docs/ref/upgrade.4.4/mutex.html | 5 +- db/docs/ref/upgrade.4.4/toc.html | 11 +- db/docs/ref/upgrade.4.5/alive.html | 5 +- db/docs/ref/upgrade.4.5/applog.html | 5 +- db/docs/ref/upgrade.4.5/collect.html | 5 +- db/docs/ref/upgrade.4.5/config.html | 5 +- db/docs/ref/upgrade.4.5/deprecate.html | 5 +- db/docs/ref/upgrade.4.5/disk.html | 11 +- db/docs/ref/upgrade.4.5/elect.html | 5 +- db/docs/ref/upgrade.4.5/intro.html | 5 +- db/docs/ref/upgrade.4.5/memp.html | 16 +- db/docs/ref/upgrade.4.5/pagesize.html | 5 +- db/docs/ref/upgrade.4.5/paniccall.html | 5 +- db/docs/ref/upgrade.4.5/rep_event.html | 5 +- db/docs/ref/upgrade.4.5/rep_set.html | 5 +- db/docs/ref/upgrade.4.5/source.html | 11 +- db/docs/ref/upgrade.4.5/toc.html | 11 +- db/docs/ref/upgrade.4.6/cursor.html | 35 + db/docs/ref/upgrade.4.6/disk.html | 30 + db/docs/ref/upgrade.4.6/event.html | 50 + db/docs/ref/upgrade.4.6/full_election.html | 29 + db/docs/ref/upgrade.4.6/intro.html | 25 + db/docs/ref/upgrade.4.6/memp_fput.html | 28 + db/docs/ref/upgrade.4.6/memp_fset.html | 25 + db/docs/ref/upgrade.4.6/toc.html | 34 + db/docs/ref/upgrade.4.6/verb.html | 26 + db/docs/ref/upgrade.4.6/verbose.html | 47 + db/docs/ref/upgrade.4.6/win.html | 24 + db/docs/ref/upgrade/process.html | 11 +- db/docs/ref/upgrade/version.html | 5 +- db/docs/ref/xa/build.html | 5 +- db/docs/ref/xa/config.html | 79 - db/docs/ref/xa/faq.html | 11 +- db/docs/ref/xa/intro.html | 11 +- db/docs/ref/xa/xa_config.html | 5 +- db/docs/ref/xa/xa_intro.html | 5 +- db/docs/sleepycat/legal.html | 63 - db/docs/sleepycat/license.html | 114 - db/docs/utility/berkeley_db_svc.html | 7 +- db/docs/utility/db_archive.html | 7 +- db/docs/utility/db_checkpoint.html | 7 +- db/docs/utility/db_codegen.html | 189 + db/docs/utility/db_deadlock.html | 7 +- db/docs/utility/db_dump.html | 7 +- db/docs/utility/db_hotbackup.html | 69 +- db/docs/utility/db_load.html | 7 +- db/docs/utility/db_printlog.html | 7 +- db/docs/utility/db_recover.html | 11 +- db/docs/utility/db_stat.html | 7 +- db/docs/utility/db_upgrade.html | 7 +- db/docs/utility/db_verify.html | 7 +- db/docs/utility/index.html | 8 +- db/docs_src/api/frame.so | 20 + db/docs_src/api/object.so | 38 + db/docs_src/build | 194 + db/docs_src/db/db_associate.so | 185 + db/docs_src/db/db_class.so | 158 + db/docs_src/db/db_close.so | 76 + db/docs_src/db/db_compact.so | 123 + db/docs_src/db/db_cursor.so | 76 + db/docs_src/db/db_del.so | 42 + db/docs_src/db/db_err.so | 4 + db/docs_src/db/db_exists.so | 55 + db/docs_src/db/db_fd.so | 37 + db/docs_src/db/db_get.so | 172 + db/docs_src/db/db_get_byteswapped.so | 41 + db/docs_src/db/db_get_mpf.so | 20 + db/docs_src/db/db_get_type.so | 35 + db/docs_src/db/db_getenv.so | 20 + db/docs_src/db/db_join.so | 116 + db/docs_src/db/db_key_range.so | 71 + db/docs_src/db/db_list.so | 7 + db/docs_src/db/db_open.so | 245 + db/docs_src/db/db_put.so | 84 + db/docs_src/db/db_remove.so | 4 + db/docs_src/db/db_rename.so | 4 + db/docs_src/db/db_set_alloc.so | 4 + db/docs_src/db/db_set_append_recno.so | 72 + db/docs_src/db/db_set_bt_compare.so | 70 + db/docs_src/db/db_set_bt_minkey.so | 54 + db/docs_src/db/db_set_bt_prefix.so | 87 + db/docs_src/db/db_set_cachesize.so | 4 + db/docs_src/db/db_set_dup_compare.so | 83 + db/docs_src/db/db_set_encrypt.so | 4 + db/docs_src/db/db_set_errcall.so | 4 + db/docs_src/db/db_set_errfile.so | 4 + db/docs_src/db/db_set_error_stream.so | 4 + db/docs_src/db/db_set_errpfx.so | 4 + db/docs_src/db/db_set_feedback.so | 4 + db/docs_src/db/db_set_flags.so | 266 + db/docs_src/db/db_set_h_compare.so | 66 + db/docs_src/db/db_set_h_ffactor.so | 51 + db/docs_src/db/db_set_h_hash.so | 49 + db/docs_src/db/db_set_h_nelem.so | 51 + db/docs_src/db/db_set_lorder.so | 57 + db/docs_src/db/db_set_msg_stream.so | 4 + db/docs_src/db/db_set_msgcall.so | 4 + db/docs_src/db/db_set_msgfile.so | 4 + db/docs_src/db/db_set_pagesize.so | 54 + db/docs_src/db/db_set_priority.so | 24 + db/docs_src/db/db_set_q_extentsize.so | 50 + db/docs_src/db/db_set_re_delim.so | 50 + db/docs_src/db/db_set_re_len.so | 61 + db/docs_src/db/db_set_re_pad.so | 48 + db/docs_src/db/db_set_re_source.so | 102 + db/docs_src/db/db_stat.so | 259 + db/docs_src/db/db_sync.so | 44 + db/docs_src/db/db_truncate.so | 46 + db/docs_src/db/db_upgrade.so | 82 + db/docs_src/db/db_verify.so | 142 + db/docs_src/db/dbt_bulk.so | 83 + db/docs_src/db/dbt_bulk_class.so | 165 + db/docs_src/db/dbt_c.so | 176 + db/docs_src/db/dbt_class.so | 3 + db/docs_src/db/dbt_cxx.so | 341 + db/docs_src/db/m4.methods | 64 + db/docs_src/db_except/except_class.so | 53 + db/docs_src/db_except/runrec_class.so | 27 + db/docs_src/dbc/dbc_class.so | 26 + db/docs_src/dbc/dbc_close.so | 35 + db/docs_src/dbc/dbc_count.so | 30 + db/docs_src/dbc/dbc_del.so | 42 + db/docs_src/dbc/dbc_dup.so | 42 + db/docs_src/dbc/dbc_get.so | 336 + db/docs_src/dbc/dbc_list.so | 7 + db/docs_src/dbc/dbc_put.so | 140 + db/docs_src/dbc/dbc_set_priority.so | 64 + db/docs_src/dbc/m4.methods | 15 + db/docs_src/dbt/dbt_package.so | 19 + db/docs_src/env/api_core.so | 210 + db/docs_src/env/env_class.so | 123 + db/docs_src/env/env_close.so | 72 + db/docs_src/env/env_dbremove.so | 90 + db/docs_src/env/env_dbrename.so | 98 + db/docs_src/env/env_err.so | 106 + db/docs_src/env/env_event_notify.so | 113 + db/docs_src/env/env_failchk.so | 72 + db/docs_src/env/env_fileid_reset.so | 49 + db/docs_src/env/env_list.so | 7 + db/docs_src/env/env_lsn_reset.so | 57 + db/docs_src/env/env_open.so | 271 + db/docs_src/env/env_remove.so | 95 + db/docs_src/env/env_set_alloc.so | 123 + db/docs_src/env/env_set_app_dispatch.so | 105 + db/docs_src/env/env_set_cachesize.so | 131 + db/docs_src/env/env_set_data_dir.so | 59 + db/docs_src/env/env_set_encrypt.so | 84 + db/docs_src/env/env_set_errcall.so | 121 + db/docs_src/env/env_set_errfile.so | 116 + db/docs_src/env/env_set_error_stream.so | 70 + db/docs_src/env/env_set_errpfx.so | 67 + db/docs_src/env/env_set_feedback.so | 87 + db/docs_src/env/env_set_flags.so | 304 + db/docs_src/env/env_set_isalive.so | 62 + db/docs_src/env/env_set_msg_stream.so | 56 + db/docs_src/env/env_set_msgcall.so | 95 + db/docs_src/env/env_set_msgfile.so | 101 + db/docs_src/env/env_set_rpc_server.so | 68 + db/docs_src/env/env_set_shm_key.so | 70 + db/docs_src/env/env_set_thread_count.so | 65 + db/docs_src/env/env_set_thread_id.so | 108 + db/docs_src/env/env_set_thread_id_string.so | 65 + db/docs_src/env/env_set_timeout.so | 99 + db/docs_src/env/env_set_tmp_dir.so | 79 + db/docs_src/env/env_set_verbose.so | 99 + db/docs_src/env/env_stat.so | 19 + db/docs_src/env/env_strerror.so | 37 + db/docs_src/env/env_version.so | 35 + db/docs_src/env/m4.methods | 46 + db/docs_src/exc/exc_package.so | 15 + db/docs_src/historic/dbm.so | 239 + db/docs_src/historic/hsearch.so | 106 + db/docs_src/images/api.gif | Bin 0 -> 121 bytes db/docs_src/images/next.gif | Bin 0 -> 225 bytes db/docs_src/images/prev.gif | Bin 0 -> 234 bytes db/docs_src/images/ps.gif | Bin 0 -> 244 bytes db/docs_src/images/ref.gif | Bin 0 -> 119 bytes db/docs_src/index_db.html | 227 + db/docs_src/license/license_db.so | 15 + db/docs_src/lock/deadlock_class.so | 27 + db/docs_src/lock/env_cdsgroup_begin.so | 35 + db/docs_src/lock/env_set_lk_conflicts.so | 69 + db/docs_src/lock/env_set_lk_detect.so | 53 + db/docs_src/lock/env_set_lk_max_lockers.so | 51 + db/docs_src/lock/env_set_lk_max_locks.so | 51 + db/docs_src/lock/env_set_lk_max_objects.so | 52 + db/docs_src/lock/lock_class.so | 26 + db/docs_src/lock/lock_detect.so | 44 + db/docs_src/lock/lock_get.so | 78 + db/docs_src/lock/lock_id.so | 32 + db/docs_src/lock/lock_id_free.so | 31 + db/docs_src/lock/lock_list.so | 7 + db/docs_src/lock/lock_put.so | 29 + db/docs_src/lock/lock_stat.so | 162 + db/docs_src/lock/lock_vec.so | 173 + db/docs_src/lock/lockng_class.so | 72 + db/docs_src/lock/m4.methods | 26 + db/docs_src/log/env_set_lg_bsize.so | 68 + db/docs_src/log/env_set_lg_dir.so | 57 + db/docs_src/log/env_set_lg_max.so | 75 + db/docs_src/log/env_set_lg_mode.so | 55 + db/docs_src/log/env_set_lg_regionmax.so | 52 + db/docs_src/log/log_archive.so | 101 + db/docs_src/log/log_compare.so | 34 + db/docs_src/log/log_cursor.so | 29 + db/docs_src/log/log_file.so | 51 + db/docs_src/log/log_flush.so | 31 + db/docs_src/log/log_list.so | 7 + db/docs_src/log/log_printf.so | 45 + db/docs_src/log/log_put.so | 53 + db/docs_src/log/log_stat.so | 125 + db/docs_src/log/logc_class.so | 22 + db/docs_src/log/logc_close.so | 30 + db/docs_src/log/logc_get.so | 101 + db/docs_src/log/lsn_class.so | 21 + db/docs_src/log/m4.methods | 28 + db/docs_src/m4/m4.db | 514 + db/docs_src/m4/m4.err | 238 + db/docs_src/m4/m4.flags | 138 + db/docs_src/m4/m4.html | 389 + db/docs_src/m4/m4.init | 49 + db/docs_src/m4/m4.links | 802 ++ db/docs_src/m4/m4.ret | 68 + db/docs_src/m4/m4.seealso | 52 + db/docs_src/m4/m4.utility | 66 + db/docs_src/memp/env_set_cache_max.so | 62 + db/docs_src/memp/env_set_mp_mmapsize.so | 58 + db/docs_src/memp/m4.methods | 39 + db/docs_src/memp/memp_class.so | 40 + db/docs_src/memp/memp_fclose.so | 37 + db/docs_src/memp/memp_fcreate.so | 29 + db/docs_src/memp/memp_fget.so | 119 + db/docs_src/memp/memp_fopen.so | 84 + db/docs_src/memp/memp_fput.so | 51 + db/docs_src/memp/memp_fsync.so | 25 + db/docs_src/memp/memp_list.so | 7 + db/docs_src/memp/memp_maxwrite.so | 58 + db/docs_src/memp/memp_openfd.so | 41 + db/docs_src/memp/memp_register.so | 91 + db/docs_src/memp/memp_set_clear_len.so | 45 + db/docs_src/memp/memp_set_fileid.so | 76 + db/docs_src/memp/memp_set_flags.so | 67 + db/docs_src/memp/memp_set_ftype.so | 44 + db/docs_src/memp/memp_set_lsn_offset.so | 44 + db/docs_src/memp/memp_set_maxsize.so | 62 + db/docs_src/memp/memp_set_pgcookie.so | 45 + db/docs_src/memp/memp_set_priority.so | 24 + db/docs_src/memp/memp_stat.so | 219 + db/docs_src/memp/memp_sync.so | 40 + db/docs_src/memp/memp_trickle.so | 39 + db/docs_src/memp/mempfile_class.so | 58 + db/docs_src/mutex/m4.methods | 18 + db/docs_src/mutex/mutex_alloc.so | 48 + db/docs_src/mutex/mutex_free.so | 32 + db/docs_src/mutex/mutex_list.so | 7 + db/docs_src/mutex/mutex_lock.so | 34 + db/docs_src/mutex/mutex_set_align.so | 51 + db/docs_src/mutex/mutex_set_max.so | 105 + db/docs_src/mutex/mutex_set_tas_spins.so | 48 + db/docs_src/mutex/mutex_stat.so | 80 + db/docs_src/mutex/mutex_unlock.so | 33 + db/docs_src/ref/am/close.so | 36 + db/docs_src/ref/am/count.so | 14 + db/docs_src/ref/am/curclose.so | 14 + db/docs_src/ref/am/curdel.so | 13 + db/docs_src/ref/am/curdup.so | 22 + db/docs_src/ref/am/curget.cs | 78 + db/docs_src/ref/am/curget.so | 109 + db/docs_src/ref/am/curput.cs | 87 + db/docs_src/ref/am/curput.so | 48 + db/docs_src/ref/am/cursor.so | 32 + db/docs_src/ref/am/delete.so | 16 + db/docs_src/ref/am/get.so | 36 + db/docs_src/ref/am/join.cs | 82 + db/docs_src/ref/am/join.so | 166 + db/docs_src/ref/am/open.so | 52 + db/docs_src/ref/am/opensub.so | 90 + db/docs_src/ref/am/ops.so | 28 + db/docs_src/ref/am/put.so | 31 + db/docs_src/ref/am/second.javas | 155 + db/docs_src/ref/am/second.so | 158 + db/docs_src/ref/am/second1.cs | 84 + db/docs_src/ref/am/second2.cs | 51 + db/docs_src/ref/am/second3.cs | 38 + db/docs_src/ref/am/second4.cs | 38 + db/docs_src/ref/am/second5.cs | 43 + db/docs_src/ref/am/stat.so | 22 + db/docs_src/ref/am/sync.so | 29 + db/docs_src/ref/am/truncate.so | 10 + db/docs_src/ref/am/upgrade.so | 40 + db/docs_src/ref/am/verify.so | 42 + db/docs_src/ref/am_conf/bt_compare.so | 57 + db/docs_src/ref/am_conf/bt_compare1.cs | 35 + db/docs_src/ref/am_conf/bt_compare2.cs | 36 + db/docs_src/ref/am_conf/bt_minkey.so | 51 + db/docs_src/ref/am_conf/bt_prefix.cs | 43 + db/docs_src/ref/am_conf/bt_prefix.so | 44 + db/docs_src/ref/am_conf/bt_recnum.so | 36 + db/docs_src/ref/am_conf/bt_recnum1.cs | 202 + db/docs_src/ref/am_conf/bt_recnum2.cs | 197 + db/docs_src/ref/am_conf/byteorder.so | 29 + db/docs_src/ref/am_conf/cachesize.so | 89 + db/docs_src/ref/am_conf/dup.so | 76 + db/docs_src/ref/am_conf/extentsize.so | 35 + db/docs_src/ref/am_conf/h_ffactor.so | 22 + db/docs_src/ref/am_conf/h_hash.so | 31 + db/docs_src/ref/am_conf/h_nelem.so | 20 + db/docs_src/ref/am_conf/intro.so | 40 + db/docs_src/ref/am_conf/logrec.cs | 103 + db/docs_src/ref/am_conf/logrec.so | 62 + db/docs_src/ref/am_conf/malloc.so | 21 + db/docs_src/ref/am_conf/pagesize.so | 79 + db/docs_src/ref/am_conf/re_source.so | 59 + db/docs_src/ref/am_conf/recno.so | 70 + db/docs_src/ref/am_conf/renumber.so | 76 + db/docs_src/ref/am_conf/select.so | 129 + db/docs_src/ref/am_misc/align.so | 14 + db/docs_src/ref/am_misc/dbsizes.so | 38 + db/docs_src/ref/am_misc/diskspace.so | 190 + db/docs_src/ref/am_misc/error.so | 47 + db/docs_src/ref/am_misc/error1.cs | 29 + db/docs_src/ref/am_misc/error2.cs | 41 + db/docs_src/ref/am_misc/faq.so | 158 + db/docs_src/ref/am_misc/get_bulk.cs | 155 + db/docs_src/ref/am_misc/get_bulk.so | 74 + db/docs_src/ref/am_misc/partial.so | 148 + db/docs_src/ref/am_misc/perm.so | 26 + db/docs_src/ref/am_misc/stability.so | 48 + db/docs_src/ref/am_misc/struct.so | 103 + db/docs_src/ref/am_misc/tune.so | 132 + db/docs_src/ref/apprec/auto.so | 199 + db/docs_src/ref/apprec/config.so | 155 + db/docs_src/ref/apprec/def.so | 159 + db/docs_src/ref/apprec/intro.so | 84 + db/docs_src/ref/arch/apis.so | 82 + db/docs_src/ref/arch/bigpic.fig | 70 + db/docs_src/ref/arch/bigpic.gif | Bin 0 -> 2589 bytes db/docs_src/ref/arch/bigpic.pic | 31 + db/docs_src/ref/arch/bigpic.so | 110 + db/docs_src/ref/arch/bigpic1.cs | 25 + db/docs_src/ref/arch/bigpic2.cs | 55 + db/docs_src/ref/arch/progmodel.so | 33 + db/docs_src/ref/arch/script.so | 29 + db/docs_src/ref/arch/smallpic.fig | 35 + db/docs_src/ref/arch/smallpic.gif | Bin 0 -> 1613 bytes db/docs_src/ref/arch/smallpic.pic | 16 + db/docs_src/ref/arch/utilities.so | 75 + db/docs_src/ref/build_brew/intro.so | 135 + db/docs_src/ref/build_s60/intro.so | 86 + db/docs_src/ref/build_unix/aix.so | 104 + db/docs_src/ref/build_unix/conf.so | 245 + db/docs_src/ref/build_unix/flags.so | 83 + db/docs_src/ref/build_unix/freebsd.so | 68 + db/docs_src/ref/build_unix/hpux.so | 122 + db/docs_src/ref/build_unix/install.so | 77 + db/docs_src/ref/build_unix/intro.so | 72 + db/docs_src/ref/build_unix/irix.so | 23 + db/docs_src/ref/build_unix/linux.so | 42 + db/docs_src/ref/build_unix/macosx.so | 64 + db/docs_src/ref/build_unix/notes.so | 223 + db/docs_src/ref/build_unix/osf1.so | 23 + db/docs_src/ref/build_unix/qnx.so | 107 + db/docs_src/ref/build_unix/sco.so | 20 + db/docs_src/ref/build_unix/shlib.so | 126 + db/docs_src/ref/build_unix/small.so | 84 + db/docs_src/ref/build_unix/solaris.so | 150 + db/docs_src/ref/build_unix/sunos.so | 20 + db/docs_src/ref/build_unix/test.so | 64 + db/docs_src/ref/build_unix/ultrix.so | 17 + db/docs_src/ref/build_vxworks/faq.so | 198 + db/docs_src/ref/build_vxworks/intro.so | 112 + db/docs_src/ref/build_vxworks/introae.so | 153 + db/docs_src/ref/build_vxworks/notes.so | 67 + db/docs_src/ref/build_win/faq.so | 80 + db/docs_src/ref/build_win/intro.so | 430 + db/docs_src/ref/build_win/notes.so | 79 + db/docs_src/ref/build_win/small.so | 42 + db/docs_src/ref/build_win/test.so | 113 + db/docs_src/ref/build_wince/faq.so | 21 + db/docs_src/ref/build_wince/intro.so | 113 + db/docs_src/ref/build_wince/notes.so | 29 + db/docs_src/ref/cam/app.so | 250 + db/docs_src/ref/cam/fail.so | 87 + db/docs_src/ref/cam/intro.so | 136 + db/docs_src/ref/changelog/2.1.html | 84 + db/docs_src/ref/changelog/2.2.html | 348 + db/docs_src/ref/changelog/2.3.10.html | 27 + db/docs_src/ref/changelog/2.3.11.html | 22 + db/docs_src/ref/changelog/2.3.12.html | 66 + db/docs_src/ref/changelog/2.3.14.html | 67 + db/docs_src/ref/changelog/2.3.16.html | 165 + db/docs_src/ref/changelog/2.3.5.html | 36 + db/docs_src/ref/changelog/2.3.html | 184 + db/docs_src/ref/changelog/2.4.10.html | 473 + db/docs_src/ref/changelog/2.4.14.html | 198 + db/docs_src/ref/changelog/2.5.9.html | 644 + db/docs_src/ref/changelog/2.6.4.html | 201 + db/docs_src/ref/changelog/2.6.5.html | 17 + db/docs_src/ref/changelog/2.6.6.html | 80 + db/docs_src/ref/changelog/2.6.7.html | 55 + db/docs_src/ref/changelog/2.7.1.html | 40 + db/docs_src/ref/changelog/2.7.3.html | 59 + db/docs_src/ref/changelog/2.7.4.html | 102 + db/docs_src/ref/changelog/2.7.5.html | 38 + db/docs_src/ref/changelog/2.7.7.html | 51 + db/docs_src/ref/changelog/3.0.55.html | 945 ++ db/docs_src/ref/changelog/3.1.14.html | 300 + db/docs_src/ref/changelog/3.1.17.html | 213 + db/docs_src/ref/changelog/3.2.9.html | 324 + db/docs_src/ref/changelog/3.3.11.html | 295 + db/docs_src/ref/changelog/4.0.14.html | 246 + db/docs_src/ref/changelog/4.1.24.html | 409 + db/docs_src/ref/changelog/4.1.25.html | 16 + db/docs_src/ref/changelog/4.2.52.html | 811 ++ db/docs_src/ref/changelog/4.3.29.html | 524 + db/docs_src/ref/changelog/4.4.16.html | 444 + db/docs_src/ref/changelog/4.4.20.html | 51 + db/docs_src/ref/changelog/4.5.20.html | 322 + db/docs_src/ref/changelog/4.6.html | 366 + db/docs_src/ref/changelog/spell.ok | 613 + db/docs_src/ref/changelog/toc.so | 80 + db/docs_src/ref/debug/compile.so | 42 + db/docs_src/ref/debug/intro.so | 57 + db/docs_src/ref/debug/printlog.so | 207 + db/docs_src/ref/debug/runtime.so | 40 + db/docs_src/ref/distrib/layout.so | 80 + db/docs_src/ref/distrib/port.so | 108 + db/docs_src/ref/dumpload/format.so | 78 + db/docs_src/ref/dumpload/text.so | 24 + db/docs_src/ref/dumpload/utility.so | 43 + db/docs_src/ref/env/create.cs | 66 + db/docs_src/ref/env/create.so | 95 + db/docs_src/ref/env/db_config.so | 37 + db/docs_src/ref/env/encrypt.so | 97 + db/docs_src/ref/env/error.so | 45 + db/docs_src/ref/env/error1.cs | 19 + db/docs_src/ref/env/error2.cs | 27 + db/docs_src/ref/env/faq.so | 46 + db/docs_src/ref/env/intro.so | 44 + db/docs_src/ref/env/naming.so | 159 + db/docs_src/ref/env/naming1.cs | 17 + db/docs_src/ref/env/naming2.cs | 18 + db/docs_src/ref/env/naming3.cs | 19 + db/docs_src/ref/env/naming4.cs | 19 + db/docs_src/ref/env/open.cs | 82 + db/docs_src/ref/env/open.so | 25 + db/docs_src/ref/env/region.so | 83 + db/docs_src/ref/env/remote.so | 61 + db/docs_src/ref/env/security.so | 50 + db/docs_src/ref/ext/mod.so | 100 + db/docs_src/ref/ext/perl.so | 33 + db/docs_src/ref/ext/php.so | 118 + db/docs_src/ref/install/ARCHIVE/README | 8 + db/docs_src/ref/install/ARCHIVE/__B.BE.185 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__B.BE.186 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__B.BE.2 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__B.LE.185 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__B.LE.186 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__B.LE.2 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__H.BE.185 | Bin 0 -> 32768 bytes db/docs_src/ref/install/ARCHIVE/__H.BE.186 | Bin 0 -> 32768 bytes db/docs_src/ref/install/ARCHIVE/__H.BE.2 | Bin 0 -> 16384 bytes db/docs_src/ref/install/ARCHIVE/__H.LE.185 | Bin 0 -> 32768 bytes db/docs_src/ref/install/ARCHIVE/__H.LE.186 | Bin 0 -> 32768 bytes db/docs_src/ref/install/ARCHIVE/__H.LE.2 | Bin 0 -> 16384 bytes db/docs_src/ref/install/file.so | 28 + db/docs_src/ref/install/magic.s5.be.txt | 123 + db/docs_src/ref/install/magic.s5.le.txt | 123 + db/docs_src/ref/install/magic.txt | 63 + db/docs_src/ref/install/multiple.so | 51 + db/docs_src/ref/intro/data.so | 48 + db/docs_src/ref/intro/dbis.so | 188 + db/docs_src/ref/intro/dbisnot.so | 167 + db/docs_src/ref/intro/distrib.so | 14 + db/docs_src/ref/intro/need.so | 56 + db/docs_src/ref/intro/products.so | 69 + db/docs_src/ref/intro/terrain.so | 307 + db/docs_src/ref/intro/what.so | 52 + db/docs_src/ref/intro/where.so | 39 + db/docs_src/ref/java/compat.so | 11 + db/docs_src/ref/java/conf.so | 120 + db/docs_src/ref/java/faq.so | 120 + db/docs_src/ref/java/program.so | 86 + db/docs_src/ref/lock/am_conv.so | 131 + db/docs_src/ref/lock/cam_conv.so | 48 + db/docs_src/ref/lock/config.so | 35 + db/docs_src/ref/lock/dead.so | 77 + db/docs_src/ref/lock/deaddbg.so | 173 + db/docs_src/ref/lock/intro.so | 96 + db/docs_src/ref/lock/max.so | 114 + db/docs_src/ref/lock/nondb.so | 43 + db/docs_src/ref/lock/notxn.so | 35 + db/docs_src/ref/lock/page.so | 91 + db/docs_src/ref/lock/stdmode.so | 55 + db/docs_src/ref/lock/timeout.so | 66 + db/docs_src/ref/lock/twopl.so | 45 + db/docs_src/ref/log/config.so | 36 + db/docs_src/ref/log/intro.so | 61 + db/docs_src/ref/log/limits.so | 50 + db/docs_src/ref/mp/config.so | 45 + db/docs_src/ref/mp/intro.so | 93 + db/docs_src/ref/program/appsignals.so | 28 + db/docs_src/ref/program/cache.so | 23 + db/docs_src/ref/program/compatible.so | 21 + db/docs_src/ref/program/copy.so | 90 + db/docs_src/ref/program/environ.so | 29 + db/docs_src/ref/program/errorret.so | 132 + db/docs_src/ref/program/faq.so | 39 + db/docs_src/ref/program/mt.so | 92 + db/docs_src/ref/program/namespace.so | 51 + db/docs_src/ref/program/ram.so | 139 + db/docs_src/ref/program/runtime.so | 51 + db/docs_src/ref/program/scope.so | 80 + db/docs_src/ref/program/solaris.txt | 213 + db/docs_src/ref/refs/bdb_usenix.ps | 1441 +++ db/docs_src/ref/refs/embedded.html | 672 + db/docs_src/ref/refs/hash_usenix.ps | 12209 ++++++++++++++++++ db/docs_src/ref/refs/libtp_usenix.ps | 12340 +++++++++++++++++++ db/docs_src/ref/refs/refs.so | 102 + db/docs_src/ref/refs/witold.so | 9 + db/docs_src/ref/rep/app.so | 121 + db/docs_src/ref/rep/base_meth.so | 69 + db/docs_src/ref/rep/bulk.so | 35 + db/docs_src/ref/rep/comm.so | 104 + db/docs_src/ref/rep/elect.so | 164 + db/docs_src/ref/rep/ex.so | 85 + db/docs_src/ref/rep/ex_comm.so | 88 + db/docs_src/ref/rep/ex_rq.so | 58 + db/docs_src/ref/rep/faq.so | 122 + db/docs_src/ref/rep/id.so | 45 + db/docs_src/ref/rep/init.so | 62 + db/docs_src/ref/rep/intro.so | 95 + db/docs_src/ref/rep/mastersync.so | 132 + db/docs_src/ref/rep/mgr_meth.so | 79 + db/docs_src/ref/rep/newsite.so | 44 + db/docs_src/ref/rep/partition.so | 110 + db/docs_src/ref/rep/pri.so | 31 + db/docs_src/ref/rep/trans.so | 303 + db/docs_src/ref/rpc/client.so | 87 + db/docs_src/ref/rpc/faq.so | 20 + db/docs_src/ref/rpc/intro.so | 92 + db/docs_src/ref/rpc/server.so | 48 + db/docs_src/ref/sequence/intro.so | 40 + db/docs_src/ref/spell.ok | 1453 +++ db/docs_src/ref/tcl/error.so | 72 + db/docs_src/ref/tcl/faq.so | 60 + db/docs_src/ref/tcl/intro.so | 81 + db/docs_src/ref/tcl/program.so | 24 + db/docs_src/ref/tcl/using.so | 51 + db/docs_src/ref/test/faq.so | 20 + db/docs_src/ref/test/run.so | 63 + db/docs_src/ref/toc.html | 391 + db/docs_src/ref/transapp/admin.so | 38 + db/docs_src/ref/transapp/app.so | 249 + db/docs_src/ref/transapp/archival.cs | 53 + db/docs_src/ref/transapp/archival.so | 153 + db/docs_src/ref/transapp/atomicity.so | 55 + db/docs_src/ref/transapp/checkpoint.cs | 113 + db/docs_src/ref/transapp/checkpoint.so | 46 + db/docs_src/ref/transapp/cursor.cs | 169 + db/docs_src/ref/transapp/cursor.so | 24 + db/docs_src/ref/transapp/data_open.cs | 94 + db/docs_src/ref/transapp/data_open.so | 68 + db/docs_src/ref/transapp/deadlock.cs | 66 + db/docs_src/ref/transapp/deadlock.so | 65 + db/docs_src/ref/transapp/env_open.cs | 99 + db/docs_src/ref/transapp/env_open.so | 78 + db/docs_src/ref/transapp/fail.so | 74 + db/docs_src/ref/transapp/faq.so | 129 + db/docs_src/ref/transapp/filesys.so | 64 + db/docs_src/ref/transapp/hotfail.so | 92 + db/docs_src/ref/transapp/inc.cs | 144 + db/docs_src/ref/transapp/inc.so | 54 + db/docs_src/ref/transapp/intro.so | 30 + db/docs_src/ref/transapp/logfile.cs | 68 + db/docs_src/ref/transapp/logfile.so | 59 + db/docs_src/ref/transapp/nested.so | 61 + db/docs_src/ref/transapp/put.cs | 107 + db/docs_src/ref/transapp/put.so | 129 + db/docs_src/ref/transapp/put2.cs | 80 + db/docs_src/ref/transapp/read.so | 138 + db/docs_src/ref/transapp/reclimit.so | 166 + db/docs_src/ref/transapp/recovery.so | 112 + db/docs_src/ref/transapp/term.so | 67 + db/docs_src/ref/transapp/throughput.so | 148 + db/docs_src/ref/transapp/transapp.cs | 490 + db/docs_src/ref/transapp/tune.so | 165 + db/docs_src/ref/transapp/why.so | 34 + db/docs_src/ref/transapp/writetest.cs | 118 + db/docs_src/ref/txn/config.so | 30 + db/docs_src/ref/txn/intro.so | 88 + db/docs_src/ref/txn/limits.so | 48 + db/docs_src/ref/upgrade.2.0/convert.so | 81 + db/docs_src/ref/upgrade.2.0/disk.so | 15 + db/docs_src/ref/upgrade.2.0/intro.so | 21 + db/docs_src/ref/upgrade.2.0/system.so | 93 + db/docs_src/ref/upgrade.2.0/toc.so | 14 + db/docs_src/ref/upgrade.3.0/close.so | 24 + db/docs_src/ref/upgrade.3.0/cxx.so | 24 + db/docs_src/ref/upgrade.3.0/db.so | 44 + db/docs_src/ref/upgrade.3.0/db_cxx.so | 53 + db/docs_src/ref/upgrade.3.0/dbenv.so | 75 + db/docs_src/ref/upgrade.3.0/dbenv_cxx.so | 78 + db/docs_src/ref/upgrade.3.0/dbinfo.so | 78 + db/docs_src/ref/upgrade.3.0/disk.so | 19 + db/docs_src/ref/upgrade.3.0/eacces.so | 15 + db/docs_src/ref/upgrade.3.0/eagain.so | 25 + db/docs_src/ref/upgrade.3.0/envopen.so | 191 + db/docs_src/ref/upgrade.3.0/func.so | 80 + db/docs_src/ref/upgrade.3.0/intro.so | 13 + db/docs_src/ref/upgrade.3.0/java.so | 37 + db/docs_src/ref/upgrade.3.0/join.so | 17 + db/docs_src/ref/upgrade.3.0/jump_set.so | 39 + db/docs_src/ref/upgrade.3.0/lock_detect.so | 14 + db/docs_src/ref/upgrade.3.0/lock_notheld.so | 14 + db/docs_src/ref/upgrade.3.0/lock_put.so | 14 + db/docs_src/ref/upgrade.3.0/lock_stat.so | 12 + db/docs_src/ref/upgrade.3.0/log_register.so | 13 + db/docs_src/ref/upgrade.3.0/log_stat.so | 11 + db/docs_src/ref/upgrade.3.0/memp_stat.so | 16 + db/docs_src/ref/upgrade.3.0/open.so | 70 + db/docs_src/ref/upgrade.3.0/rmw.so | 22 + db/docs_src/ref/upgrade.3.0/stat.so | 12 + db/docs_src/ref/upgrade.3.0/toc.so | 41 + db/docs_src/ref/upgrade.3.0/txn_begin.so | 15 + db/docs_src/ref/upgrade.3.0/txn_commit.so | 15 + db/docs_src/ref/upgrade.3.0/txn_stat.so | 11 + db/docs_src/ref/upgrade.3.0/value_set.so | 31 + db/docs_src/ref/upgrade.3.0/xa.so | 24 + db/docs_src/ref/upgrade.3.1/btstat.so | 42 + db/docs_src/ref/upgrade.3.1/config.so | 24 + db/docs_src/ref/upgrade.3.1/disk.so | 26 + db/docs_src/ref/upgrade.3.1/dup.so | 21 + db/docs_src/ref/upgrade.3.1/env.so | 42 + db/docs_src/ref/upgrade.3.1/intro.so | 13 + db/docs_src/ref/upgrade.3.1/log_register.so | 16 + db/docs_src/ref/upgrade.3.1/logalloc.so | 15 + db/docs_src/ref/upgrade.3.1/memp_register.so | 18 + db/docs_src/ref/upgrade.3.1/put.so | 65 + db/docs_src/ref/upgrade.3.1/set_feedback.so | 17 + db/docs_src/ref/upgrade.3.1/set_paniccall.so | 17 + db/docs_src/ref/upgrade.3.1/set_tx_recover.so | 27 + db/docs_src/ref/upgrade.3.1/sysmem.so | 13 + db/docs_src/ref/upgrade.3.1/tcl.so | 20 + db/docs_src/ref/upgrade.3.1/tmp.so | 25 + db/docs_src/ref/upgrade.3.1/toc.so | 27 + db/docs_src/ref/upgrade.3.1/txn_check.so | 15 + db/docs_src/ref/upgrade.3.2/callback.so | 31 + db/docs_src/ref/upgrade.3.2/db_dump.so | 17 + db/docs_src/ref/upgrade.3.2/disk.so | 18 + db/docs_src/ref/upgrade.3.2/handle.so | 17 + db/docs_src/ref/upgrade.3.2/incomplete.so | 34 + db/docs_src/ref/upgrade.3.2/intro.so | 13 + db/docs_src/ref/upgrade.3.2/mutexlock.so | 16 + db/docs_src/ref/upgrade.3.2/notfound.so | 15 + db/docs_src/ref/upgrade.3.2/renumber.so | 29 + db/docs_src/ref/upgrade.3.2/set_flags.so | 25 + db/docs_src/ref/upgrade.3.2/toc.so | 21 + db/docs_src/ref/upgrade.3.2/tx_recover.so | 24 + db/docs_src/ref/upgrade.3.3/alloc.so | 66 + db/docs_src/ref/upgrade.3.3/bigfile.so | 16 + db/docs_src/ref/upgrade.3.3/conflict.so | 12 + db/docs_src/ref/upgrade.3.3/disk.so | 14 + db/docs_src/ref/upgrade.3.3/getswap.so | 16 + db/docs_src/ref/upgrade.3.3/gettype.so | 15 + db/docs_src/ref/upgrade.3.3/intro.so | 13 + db/docs_src/ref/upgrade.3.3/memp_fget.so | 26 + db/docs_src/ref/upgrade.3.3/rpc.so | 16 + db/docs_src/ref/upgrade.3.3/shared.so | 18 + db/docs_src/ref/upgrade.3.3/toc.so | 21 + db/docs_src/ref/upgrade.3.3/txn_prepare.so | 14 + db/docs_src/ref/upgrade.4.0/asr.so | 34 + db/docs_src/ref/upgrade.4.0/cxx.so | 46 + db/docs_src/ref/upgrade.4.0/deadlock.so | 13 + db/docs_src/ref/upgrade.4.0/disk.so | 15 + db/docs_src/ref/upgrade.4.0/env.so | 77 + db/docs_src/ref/upgrade.4.0/intro.so | 13 + db/docs_src/ref/upgrade.4.0/java.so | 28 + db/docs_src/ref/upgrade.4.0/lock.so | 40 + db/docs_src/ref/upgrade.4.0/lock_id_free.so | 13 + db/docs_src/ref/upgrade.4.0/log.so | 50 + db/docs_src/ref/upgrade.4.0/mp.so | 62 + db/docs_src/ref/upgrade.4.0/rpc.so | 14 + db/docs_src/ref/upgrade.4.0/set_lk_max.so | 14 + db/docs_src/ref/upgrade.4.0/toc.so | 24 + db/docs_src/ref/upgrade.4.0/txn.so | 41 + db/docs_src/ref/upgrade.4.1/app_dispatch.so | 19 + db/docs_src/ref/upgrade.4.1/checkpoint.so | 18 + db/docs_src/ref/upgrade.4.1/cxx.so | 41 + db/docs_src/ref/upgrade.4.1/disk.so | 22 + db/docs_src/ref/upgrade.4.1/excl.so | 13 + db/docs_src/ref/upgrade.4.1/fop.so | 149 + db/docs_src/ref/upgrade.4.1/hash_nelem.so | 12 + db/docs_src/ref/upgrade.4.1/incomplete.so | 21 + db/docs_src/ref/upgrade.4.1/intro.so | 13 + db/docs_src/ref/upgrade.4.1/java.so | 17 + db/docs_src/ref/upgrade.4.1/log_register.so | 13 + db/docs_src/ref/upgrade.4.1/log_stat.so | 13 + db/docs_src/ref/upgrade.4.1/memp_sync.so | 22 + db/docs_src/ref/upgrade.4.1/toc.so | 23 + db/docs_src/ref/upgrade.4.2/cksum.so | 16 + db/docs_src/ref/upgrade.4.2/client.so | 14 + db/docs_src/ref/upgrade.4.2/del.so | 22 + db/docs_src/ref/upgrade.4.2/disk.so | 15 + db/docs_src/ref/upgrade.4.2/intro.so | 13 + db/docs_src/ref/upgrade.4.2/java.so | 118 + db/docs_src/ref/upgrade.4.2/lockng.so | 45 + db/docs_src/ref/upgrade.4.2/nosync.so | 23 + db/docs_src/ref/upgrade.4.2/priority.so | 17 + db/docs_src/ref/upgrade.4.2/queue.so | 28 + db/docs_src/ref/upgrade.4.2/repinit.so | 37 + db/docs_src/ref/upgrade.4.2/tcl.so | 11 + db/docs_src/ref/upgrade.4.2/toc.so | 23 + db/docs_src/ref/upgrade.4.2/verify.so | 22 + db/docs_src/ref/upgrade.4.3/cput.so | 13 + db/docs_src/ref/upgrade.4.3/disk.so | 15 + db/docs_src/ref/upgrade.4.3/enomem.so | 38 + db/docs_src/ref/upgrade.4.3/err.so | 28 + db/docs_src/ref/upgrade.4.3/fileopen.so | 11 + db/docs_src/ref/upgrade.4.3/intro.so | 13 + db/docs_src/ref/upgrade.4.3/java.so | 72 + db/docs_src/ref/upgrade.4.3/log.so | 24 + db/docs_src/ref/upgrade.4.3/repl.so | 29 + db/docs_src/ref/upgrade.4.3/rtc.so | 12 + db/docs_src/ref/upgrade.4.3/stat.so | 15 + db/docs_src/ref/upgrade.4.3/toc.so | 23 + db/docs_src/ref/upgrade.4.3/verb.so | 22 + db/docs_src/ref/upgrade.4.4/autocommit.so | 34 + db/docs_src/ref/upgrade.4.4/clear.so | 21 + db/docs_src/ref/upgrade.4.4/disk.so | 15 + db/docs_src/ref/upgrade.4.4/intro.so | 13 + db/docs_src/ref/upgrade.4.4/isolation.so | 15 + db/docs_src/ref/upgrade.4.4/joinenv.so | 59 + db/docs_src/ref/upgrade.4.4/lockstat.so | 15 + db/docs_src/ref/upgrade.4.4/mutex.so | 23 + db/docs_src/ref/upgrade.4.4/toc.so | 18 + db/docs_src/ref/upgrade.4.5/alive.so | 19 + db/docs_src/ref/upgrade.4.5/applog.so | 25 + db/docs_src/ref/upgrade.4.5/collect.so | 18 + db/docs_src/ref/upgrade.4.5/config.so | 19 + db/docs_src/ref/upgrade.4.5/deprecate.so | 27 + db/docs_src/ref/upgrade.4.5/disk.so | 15 + db/docs_src/ref/upgrade.4.5/elect.so | 30 + db/docs_src/ref/upgrade.4.5/intro.so | 13 + db/docs_src/ref/upgrade.4.5/memp.so | 21 + db/docs_src/ref/upgrade.4.5/pagesize.so | 14 + db/docs_src/ref/upgrade.4.5/paniccall.so | 23 + db/docs_src/ref/upgrade.4.5/rep_event.so | 18 + db/docs_src/ref/upgrade.4.5/rep_set.so | 19 + db/docs_src/ref/upgrade.4.5/source.so | 28 + db/docs_src/ref/upgrade.4.5/toc.so | 24 + db/docs_src/ref/upgrade.4.6/cursor.so | 26 + db/docs_src/ref/upgrade.4.6/disk.so | 22 + db/docs_src/ref/upgrade.4.6/event.so | 46 + db/docs_src/ref/upgrade.4.6/full_election.so | 19 + db/docs_src/ref/upgrade.4.6/intro.so | 13 + db/docs_src/ref/upgrade.4.6/memp_fput.so | 18 + db/docs_src/ref/upgrade.4.6/memp_fset.so | 13 + db/docs_src/ref/upgrade.4.6/toc.so | 20 + db/docs_src/ref/upgrade.4.6/verb.so | 15 + db/docs_src/ref/upgrade.4.6/verbose.so | 41 + db/docs_src/ref/upgrade.4.6/win.so | 12 + db/docs_src/ref/upgrade/process.so | 186 + db/docs_src/ref/upgrade/version.so | 43 + db/docs_src/ref/xa/build.so | 210 + db/docs_src/ref/xa/faq.so | 73 + db/docs_src/ref/xa/intro.so | 44 + db/docs_src/ref/xa/xa_config.so | 107 + db/docs_src/ref/xa/xa_intro.so | 70 + db/docs_src/rep/m4.methods | 31 + db/docs_src/rep/rep_config.so | 87 + db/docs_src/rep/rep_elect.so | 117 + db/docs_src/rep/rep_limit.so | 60 + db/docs_src/rep/rep_list.so | 7 + db/docs_src/rep/rep_message.so | 114 + db/docs_src/rep/rep_nsites.so | 47 + db/docs_src/rep/rep_priority.so | 41 + db/docs_src/rep/rep_request.so | 69 + db/docs_src/rep/rep_start.so | 61 + db/docs_src/rep/rep_stat.so | 236 + db/docs_src/rep/rep_sync.so | 38 + db/docs_src/rep/rep_timeout.so | 94 + db/docs_src/rep/rep_transport.so | 113 + db/docs_src/rep/repmgr_ack_policy.so | 86 + db/docs_src/rep/repmgr_local_site.so | 33 + db/docs_src/rep/repmgr_remote_site.so | 48 + db/docs_src/rep/repmgr_site_list.so | 59 + db/docs_src/rep/repmgr_start.so | 93 + db/docs_src/rep/repmgr_stat.so | 76 + db/docs_src/rtc/set_func_close.so | 23 + db/docs_src/rtc/set_func_dirfree.so | 34 + db/docs_src/rtc/set_func_dirlist.so | 39 + db/docs_src/rtc/set_func_exists.so | 36 + db/docs_src/rtc/set_func_free.so | 23 + db/docs_src/rtc/set_func_fsync.so | 23 + db/docs_src/rtc/set_func_ftruncate.so | 34 + db/docs_src/rtc/set_func_ioinfo.so | 45 + db/docs_src/rtc/set_func_malloc.so | 23 + db/docs_src/rtc/set_func_map.so | 50 + db/docs_src/rtc/set_func_open.so | 23 + db/docs_src/rtc/set_func_pread.so | 23 + db/docs_src/rtc/set_func_pwrite.so | 23 + db/docs_src/rtc/set_func_read.so | 23 + db/docs_src/rtc/set_func_realloc.so | 23 + db/docs_src/rtc/set_func_rename.so | 23 + db/docs_src/rtc/set_func_seek.so | 40 + db/docs_src/rtc/set_func_sleep.so | 38 + db/docs_src/rtc/set_func_unlink.so | 23 + db/docs_src/rtc/set_func_unmap.so | 36 + db/docs_src/rtc/set_func_write.so | 24 + db/docs_src/rtc/set_func_yield.so | 47 + db/docs_src/seq/m4.methods | 21 + db/docs_src/seq/seq_class.so | 71 + db/docs_src/seq/seq_close.so | 31 + db/docs_src/seq/seq_get.so | 75 + db/docs_src/seq/seq_initial_value.so | 34 + db/docs_src/seq/seq_list.so | 7 + db/docs_src/seq/seq_open.so | 87 + db/docs_src/seq/seq_remove.so | 41 + db/docs_src/seq/seq_set_cachesize.so | 41 + db/docs_src/seq/seq_set_flags.so | 63 + db/docs_src/seq/seq_set_range.so | 57 + db/docs_src/seq/seq_stat.so | 95 + db/docs_src/spell.ok | 1240 ++ db/docs_src/support/Xindex | 53 + db/docs_src/support/check | 797 ++ db/docs_src/support/copy | 8 + db/docs_src/support/html.sed | 9 + db/docs_src/support/static.src | 3 + db/docs_src/support/suffix | 25 + db/docs_src/tcl/api_tcl.so | 51 + db/docs_src/tcl/db_close.so | 50 + db/docs_src/tcl/db_count.so | 18 + db/docs_src/tcl/db_cursor.so | 29 + db/docs_src/tcl/db_del.so | 37 + db/docs_src/tcl/db_get.so | 105 + db/docs_src/tcl/db_get_join.so | 31 + db/docs_src/tcl/db_get_type.so | 16 + db/docs_src/tcl/db_is_byteswapped.so | 20 + db/docs_src/tcl/db_join.so | 36 + db/docs_src/tcl/db_open.so | 359 + db/docs_src/tcl/db_put.so | 55 + db/docs_src/tcl/db_remove.so | 56 + db/docs_src/tcl/db_rename.so | 57 + db/docs_src/tcl/db_stat.so | 28 + db/docs_src/tcl/db_sync.so | 19 + db/docs_src/tcl/db_truncate.so | 29 + db/docs_src/tcl/dbc_close.so | 19 + db/docs_src/tcl/dbc_del.so | 21 + db/docs_src/tcl/dbc_dup.so | 33 + db/docs_src/tcl/dbc_get.so | 212 + db/docs_src/tcl/dbc_put.so | 130 + db/docs_src/tcl/env_close.so | 29 + db/docs_src/tcl/env_dbremove.so | 33 + db/docs_src/tcl/env_dbrename.so | 34 + db/docs_src/tcl/env_open.so | 147 + db/docs_src/tcl/env_remove.so | 54 + db/docs_src/tcl/m4.tcl | 178 + db/docs_src/tcl/txn.so | 61 + db/docs_src/tcl/txn_abort.so | 32 + db/docs_src/tcl/txn_checkpoint.so | 36 + db/docs_src/tcl/txn_commit.so | 68 + db/docs_src/tcl/version.so | 27 + db/docs_src/txn/env_set_tx_max.so | 61 + db/docs_src/txn/env_set_tx_timestamp.so | 55 + db/docs_src/txn/m4.methods | 26 + db/docs_src/txn/txn_abort.so | 38 + db/docs_src/txn/txn_begin.so | 150 + db/docs_src/txn/txn_checkpoint.so | 50 + db/docs_src/txn/txn_class.so | 61 + db/docs_src/txn/txn_commit.so | 72 + db/docs_src/txn/txn_discard.so | 41 + db/docs_src/txn/txn_id.so | 23 + db/docs_src/txn/txn_list.so | 7 + db/docs_src/txn/txn_prepare.so | 47 + db/docs_src/txn/txn_recover.so | 86 + db/docs_src/txn/txn_set_name.so | 48 + db/docs_src/txn/txn_set_timeout.so | 60 + db/docs_src/txn/txn_stat.so | 152 + db/docs_src/utility/berkeley_db_svc.so | 60 + db/docs_src/utility/db_archive.so | 84 + db/docs_src/utility/db_checkpoint.so | 70 + db/docs_src/utility/db_codegen.so | 279 + db/docs_src/utility/db_deadlock.so | 79 + db/docs_src/utility/db_dump.so | 133 + db/docs_src/utility/db_hotbackup.so | 148 + db/docs_src/utility/db_load.so | 186 + db/docs_src/utility/db_printlog.so | 45 + db/docs_src/utility/db_recover.so | 89 + db/docs_src/utility/db_stat.so | 110 + db/docs_src/utility/db_upgrade.so | 72 + db/docs_src/utility/db_verify.so | 59 + db/docs_src/utility/index.so | 30 + db/env/db_salloc.c | 356 - db/env/db_shash.c | 114 - db/env/env_alloc.c | 455 + db/env/env_config.c | 25 +- db/env/env_failchk.c | 79 +- db/env/env_file.c | 7 +- db/env/env_globals.c | 18 + db/env/env_method.c | 231 +- db/env/env_name.c | 262 + db/env/env_open.c | 530 +- db/env/env_recover.c | 142 +- db/env/env_region.c | 529 +- db/env/env_register.c | 12 +- db/env/env_stat.c | 66 +- db/examples_c/bench_001.c | 9 +- db/examples_c/csv/DbRecord.c | 5 +- db/examples_c/csv/README | 5 +- db/examples_c/csv/code.c | 5 +- db/examples_c/csv/csv.h | 13 +- db/examples_c/csv/csv_extern.h | 5 +- db/examples_c/csv/db.c | 5 +- db/examples_c/csv/load.c | 5 +- db/examples_c/csv/load_main.c | 5 +- db/examples_c/csv/query.c | 5 +- db/examples_c/csv/query_main.c | 5 +- db/examples_c/csv/util.c | 5 +- db/examples_c/ex_access.c | 11 +- db/examples_c/ex_apprec/ex_apprec.c | 5 +- db/examples_c/ex_apprec/ex_apprec.h | 5 +- db/examples_c/ex_apprec/ex_apprec.src | 5 +- db/examples_c/ex_apprec/ex_apprec_rec.c | 5 +- db/examples_c/ex_btrec.c | 17 +- db/examples_c/ex_dbclient.c | 5 +- db/examples_c/ex_env.c | 5 +- db/examples_c/ex_lock.c | 5 +- db/examples_c/ex_mpool.c | 7 +- db/examples_c/ex_rep/base/rep_base.c | 76 +- db/examples_c/ex_rep/base/rep_base.h | 20 +- db/examples_c/ex_rep/base/rep_msg.c | 69 +- db/examples_c/ex_rep/base/rep_net.c | 15 +- db/examples_c/ex_rep/common/rep_common.c | 133 +- db/examples_c/ex_rep/common/rep_common.h | 11 +- db/examples_c/ex_rep/mgr/rep_mgr.c | 74 +- db/examples_c/ex_repquote/ex_repquote.h | 128 - db/examples_c/ex_repquote/ex_rq_client.c | 274 - db/examples_c/ex_repquote/ex_rq_main.c | 322 - db/examples_c/ex_repquote/ex_rq_master.c | 169 - db/examples_c/ex_repquote/ex_rq_net.c | 749 -- db/examples_c/ex_repquote/ex_rq_util.c | 438 - db/examples_c/ex_sequence.c | 5 +- db/examples_c/ex_thread.c | 9 +- db/examples_c/ex_tpcb.c | 27 +- db/examples_c/ex_tpcb.h | 39 - .../getting_started/example_database_load.c | 3 +- .../getting_started/example_database_read.c | 13 +- .../getting_started/gettingstarted_common.c | 3 +- .../getting_started/gettingstarted_common.h | 3 +- db/examples_c/txn_guide/txn_guide.c | 4 +- db/examples_c/txn_guide/txn_guide_inmemory.c | 4 +- db/examples_cxx/AccessExample.cpp | 5 +- db/examples_cxx/BtRecExample.cpp | 5 +- db/examples_cxx/EnvExample.cpp | 5 +- db/examples_cxx/LockExample.cpp | 5 +- db/examples_cxx/MpoolExample.cpp | 7 +- db/examples_cxx/SequenceExample.cpp | 5 +- db/examples_cxx/TpcbExample.cpp | 5 +- db/examples_cxx/excxx_repquote/RepConfigInfo.cpp | 5 +- db/examples_cxx/excxx_repquote/RepConfigInfo.h | 6 +- db/examples_cxx/excxx_repquote/RepQuoteExample.cpp | 11 +- db/examples_cxx/wce_tpcb/Readme.txt | 6 + db/examples_cxx/wce_tpcb/TpcbExample.cpp | 546 + db/examples_cxx/wce_tpcb/TpcbExample.h | 63 + db/examples_cxx/wce_tpcb/TpcbUI.cpp | 478 + db/examples_cxx/wce_tpcb/newres.h | 38 + db/examples_cxx/wce_tpcb/oracle_bdb.bmp | Bin 0 -> 6278 bytes db/examples_cxx/wce_tpcb/resource.h | 57 + db/examples_cxx/wce_tpcb/wce_tpcb.ico | Bin 0 -> 1078 bytes db/examples_cxx/wce_tpcb/wce_tpcb.rc | 176 + .../src/collections/access/AccessExample.java | 5 +- .../src/collections/hello/HelloDatabaseWorld.java | 5 +- .../src/collections/ship/basic/PartData.java | 5 +- .../src/collections/ship/basic/PartKey.java | 5 +- .../src/collections/ship/basic/Sample.java | 5 +- .../src/collections/ship/basic/SampleDatabase.java | 5 +- .../src/collections/ship/basic/SampleViews.java | 5 +- .../src/collections/ship/basic/ShipmentData.java | 5 +- .../src/collections/ship/basic/ShipmentKey.java | 5 +- .../src/collections/ship/basic/SupplierData.java | 5 +- .../src/collections/ship/basic/SupplierKey.java | 5 +- .../src/collections/ship/basic/Weight.java | 5 +- .../src/collections/ship/entity/Part.java | 5 +- .../src/collections/ship/entity/PartData.java | 5 +- .../src/collections/ship/entity/PartKey.java | 5 +- .../src/collections/ship/entity/Sample.java | 5 +- .../collections/ship/entity/SampleDatabase.java | 5 +- .../src/collections/ship/entity/SampleViews.java | 5 +- .../src/collections/ship/entity/Shipment.java | 5 +- .../src/collections/ship/entity/ShipmentData.java | 5 +- .../src/collections/ship/entity/ShipmentKey.java | 5 +- .../src/collections/ship/entity/Supplier.java | 5 +- .../src/collections/ship/entity/SupplierData.java | 5 +- .../src/collections/ship/entity/SupplierKey.java | 5 +- .../src/collections/ship/entity/Weight.java | 5 +- .../src/collections/ship/factory/Part.java | 5 +- .../src/collections/ship/factory/PartKey.java | 5 +- .../src/collections/ship/factory/Sample.java | 5 +- .../collections/ship/factory/SampleDatabase.java | 5 +- .../src/collections/ship/factory/SampleViews.java | 5 +- .../src/collections/ship/factory/Shipment.java | 5 +- .../src/collections/ship/factory/ShipmentKey.java | 5 +- .../src/collections/ship/factory/Supplier.java | 5 +- .../src/collections/ship/factory/SupplierKey.java | 5 +- .../src/collections/ship/factory/Weight.java | 5 +- .../src/collections/ship/index/PartData.java | 5 +- .../src/collections/ship/index/PartKey.java | 5 +- .../src/collections/ship/index/Sample.java | 5 +- .../src/collections/ship/index/SampleDatabase.java | 5 +- .../src/collections/ship/index/SampleViews.java | 5 +- .../src/collections/ship/index/ShipmentData.java | 5 +- .../src/collections/ship/index/ShipmentKey.java | 5 +- .../src/collections/ship/index/SupplierData.java | 5 +- .../src/collections/ship/index/SupplierKey.java | 5 +- .../src/collections/ship/index/Weight.java | 5 +- .../collections/ship/marshal/MarshalledEnt.java | 5 +- .../collections/ship/marshal/MarshalledKey.java | 5 +- .../src/collections/ship/marshal/Part.java | 5 +- .../src/collections/ship/marshal/PartKey.java | 5 +- .../src/collections/ship/marshal/Sample.java | 5 +- .../collections/ship/marshal/SampleDatabase.java | 5 +- .../src/collections/ship/marshal/SampleViews.java | 5 +- .../src/collections/ship/marshal/Shipment.java | 5 +- .../src/collections/ship/marshal/ShipmentKey.java | 5 +- .../src/collections/ship/marshal/Supplier.java | 5 +- .../src/collections/ship/marshal/SupplierKey.java | 5 +- .../src/collections/ship/marshal/Weight.java | 5 +- .../src/collections/ship/sentity/Part.java | 5 +- .../src/collections/ship/sentity/PartKey.java | 5 +- .../src/collections/ship/sentity/Sample.java | 5 +- .../collections/ship/sentity/SampleDatabase.java | 5 +- .../src/collections/ship/sentity/SampleViews.java | 5 +- .../src/collections/ship/sentity/Shipment.java | 5 +- .../src/collections/ship/sentity/ShipmentKey.java | 5 +- .../src/collections/ship/sentity/Supplier.java | 5 +- .../src/collections/ship/sentity/SupplierKey.java | 5 +- .../src/collections/ship/sentity/Weight.java | 5 +- .../src/collections/ship/tuple/Part.java | 5 +- .../src/collections/ship/tuple/PartData.java | 5 +- .../src/collections/ship/tuple/PartKey.java | 5 +- .../src/collections/ship/tuple/Sample.java | 5 +- .../src/collections/ship/tuple/SampleDatabase.java | 5 +- .../src/collections/ship/tuple/SampleViews.java | 5 +- .../src/collections/ship/tuple/Shipment.java | 5 +- .../src/collections/ship/tuple/ShipmentData.java | 5 +- .../src/collections/ship/tuple/ShipmentKey.java | 5 +- .../src/collections/ship/tuple/Supplier.java | 5 +- .../src/collections/ship/tuple/SupplierData.java | 5 +- .../src/collections/ship/tuple/SupplierKey.java | 5 +- .../src/collections/ship/tuple/Weight.java | 5 +- .../examples/collections/access/AccessExample.java | 286 - .../collections/hello/HelloDatabaseWorld.java | 163 - .../examples/collections/ship/basic/PartData.java | 65 - .../examples/collections/ship/basic/PartKey.java | 41 - .../examples/collections/ship/basic/Sample.java | 267 - .../collections/ship/basic/SampleDatabase.java | 135 - .../collections/ship/basic/SampleViews.java | 123 - .../collections/ship/basic/ShipmentData.java | 42 - .../collections/ship/basic/ShipmentKey.java | 49 - .../collections/ship/basic/SupplierData.java | 58 - .../collections/ship/basic/SupplierKey.java | 41 - .../examples/collections/ship/basic/Weight.java | 50 - .../examples/collections/ship/entity/Part.java | 73 - .../examples/collections/ship/entity/PartData.java | 66 - .../examples/collections/ship/entity/PartKey.java | 41 - .../examples/collections/ship/entity/Sample.java | 250 - .../collections/ship/entity/SampleDatabase.java | 330 - .../collections/ship/entity/SampleViews.java | 307 - .../examples/collections/ship/entity/Shipment.java | 56 - .../collections/ship/entity/ShipmentData.java | 43 - .../collections/ship/entity/ShipmentKey.java | 49 - .../examples/collections/ship/entity/Supplier.java | 64 - .../collections/ship/entity/SupplierData.java | 59 - .../collections/ship/entity/SupplierKey.java | 41 - .../examples/collections/ship/entity/Weight.java | 50 - .../examples/collections/ship/factory/Part.java | 107 - .../examples/collections/ship/factory/PartKey.java | 61 - .../examples/collections/ship/factory/Sample.java | 248 - .../collections/ship/factory/SampleDatabase.java | 225 - .../collections/ship/factory/SampleViews.java | 143 - .../collections/ship/factory/Shipment.java | 103 - .../collections/ship/factory/ShipmentKey.java | 71 - .../collections/ship/factory/Supplier.java | 109 - .../collections/ship/factory/SupplierKey.java | 61 - .../examples/collections/ship/factory/Weight.java | 50 - .../examples/collections/ship/index/PartData.java | 65 - .../examples/collections/ship/index/PartKey.java | 41 - .../examples/collections/ship/index/Sample.java | 303 - .../collections/ship/index/SampleDatabase.java | 330 - .../collections/ship/index/SampleViews.java | 162 - .../collections/ship/index/ShipmentData.java | 42 - .../collections/ship/index/ShipmentKey.java | 49 - .../collections/ship/index/SupplierData.java | 58 - .../collections/ship/index/SupplierKey.java | 41 - .../examples/collections/ship/index/Weight.java | 50 - .../collections/ship/marshal/MarshalledEnt.java | 43 - .../collections/ship/marshal/MarshalledKey.java | 37 - .../examples/collections/ship/marshal/Part.java | 117 - .../examples/collections/ship/marshal/PartKey.java | 60 - .../examples/collections/ship/marshal/Sample.java | 250 - .../collections/ship/marshal/SampleDatabase.java | 259 - .../collections/ship/marshal/SampleViews.java | 277 - .../collections/ship/marshal/Shipment.java | 114 - .../collections/ship/marshal/ShipmentKey.java | 70 - .../collections/ship/marshal/Supplier.java | 119 - .../collections/ship/marshal/SupplierKey.java | 60 - .../examples/collections/ship/marshal/Weight.java | 50 - .../examples/collections/ship/sentity/Part.java | 91 - .../examples/collections/ship/sentity/PartKey.java | 39 - .../examples/collections/ship/sentity/Sample.java | 250 - .../collections/ship/sentity/SampleDatabase.java | 322 - .../collections/ship/sentity/SampleViews.java | 420 - .../collections/ship/sentity/Shipment.java | 76 - .../collections/ship/sentity/ShipmentKey.java | 47 - .../collections/ship/sentity/Supplier.java | 83 - .../collections/ship/sentity/SupplierKey.java | 39 - .../examples/collections/ship/sentity/Weight.java | 50 - .../examples/collections/ship/tuple/Part.java | 73 - .../examples/collections/ship/tuple/PartData.java | 66 - .../examples/collections/ship/tuple/PartKey.java | 39 - .../examples/collections/ship/tuple/Sample.java | 249 - .../collections/ship/tuple/SampleDatabase.java | 322 - .../collections/ship/tuple/SampleViews.java | 397 - .../examples/collections/ship/tuple/Shipment.java | 56 - .../collections/ship/tuple/ShipmentData.java | 43 - .../collections/ship/tuple/ShipmentKey.java | 47 - .../examples/collections/ship/tuple/Supplier.java | 64 - .../collections/ship/tuple/SupplierData.java | 59 - .../collections/ship/tuple/SupplierKey.java | 39 - .../examples/collections/ship/tuple/Weight.java | 50 - .../com/sleepycat/examples/db/AccessExample.java | 183 - .../com/sleepycat/examples/db/BtRecExample.java | 289 - .../sleepycat/examples/db/BulkAccessExample.java | 162 - .../src/com/sleepycat/examples/db/EnvExample.java | 116 - .../db/GettingStarted/ExampleDatabaseLoad.java | 228 - .../db/GettingStarted/ExampleDatabaseRead.java | 202 - .../examples/db/GettingStarted/Inventory.java | 62 - .../db/GettingStarted/InventoryBinding.java | 46 - .../db/GettingStarted/ItemNameKeyCreator.java | 37 - .../examples/db/GettingStarted/MyDbs.java | 157 - .../examples/db/GettingStarted/Vendor.java | 82 - .../examples/db/GettingStarted/inventory.txt | 800 -- .../examples/db/GettingStarted/vendors.txt | 6 - .../src/com/sleepycat/examples/db/LockExample.java | 212 - .../src/com/sleepycat/examples/db/RPCExample.java | 107 - .../com/sleepycat/examples/db/SequenceExample.java | 93 - .../src/com/sleepycat/examples/db/TpcbExample.java | 811 -- db/examples_java/src/db/AccessExample.java | 5 +- db/examples_java/src/db/BtRecExample.java | 5 +- db/examples_java/src/db/BulkAccessExample.java | 5 +- db/examples_java/src/db/BulkAccessNIOExample.java | 5 +- db/examples_java/src/db/EnvExample.java | 5 +- db/examples_java/src/db/LockExample.java | 5 +- db/examples_java/src/db/RPCExample.java | 5 +- db/examples_java/src/db/SequenceExample.java | 5 +- db/examples_java/src/db/TpcbExample.java | 5 +- db/examples_java/src/db/repquote/RepConfig.java | 5 +- .../src/db/repquote/RepQuoteEnvironment.java | 5 +- .../src/db/repquote/RepQuoteExample.java | 46 +- db/fileops/fileops.src | 14 +- db/fileops/fileops_auto.c | 88 +- db/fileops/fileops_autop.c | 3 + db/fileops/fop_basic.c | 55 +- db/fileops/fop_rec.c | 56 +- db/fileops/fop_util.c | 217 +- db/hash/hash.c | 468 +- db/hash/hash.src | 5 +- db/hash/hash_auto.c | 72 +- db/hash/hash_conv.c | 5 +- db/hash/hash_dup.c | 83 +- db/hash/hash_func.c | 5 +- db/hash/hash_meta.c | 10 +- db/hash/hash_method.c | 31 +- db/hash/hash_open.c | 49 +- db/hash/hash_page.c | 991 +- db/hash/hash_rec.c | 273 +- db/hash/hash_reclaim.c | 9 +- db/hash/hash_stat.c | 25 +- db/hash/hash_stub.c | 45 +- db/hash/hash_upgrade.c | 62 +- db/hash/hash_verify.c | 52 +- db/hmac/hmac.c | 5 +- db/hmac/sha1.c | 75 +- db/hsearch/hsearch.c | 5 +- db/include/btree.h | 317 - db/include/btree_auto.h | 267 - db/include/btree_ext.h | 122 - db/include/clib_ext.h | 38 - db/include/common_ext.h | 44 - db/include/crdel_auto.h | 88 - db/include/cxx_common.h | 45 - db/include/cxx_except.h | 78 - db/include/cxx_int.h | 96 - db/include/db.in | 1388 --- db/include/db.src | 1375 --- db/include/db_185.h | 175 - db/include/db_185.in | 165 - db/include/db_am.h | 131 - db/include/db_auto.h | 140 - db/include/db_cxx.h | 652 - db/include/db_dispatch.h | 95 - db/include/db_ext.h | 208 - db/include/db_int.in | 442 - db/include/db_int.src | 397 - db/include/db_join.h | 30 - db/include/db_page.h | 576 - db/include/db_server.h | 762 -- db/include/db_server_int.h | 85 - db/include/db_shash.h | 77 - db/include/db_swap.h | 115 - db/include/db_upgrade.h | 174 - db/include/db_verify.h | 191 - db/include/debug.h | 104 - db/include/env_ext.h | 35 - db/include/gen_client_ext.h | 121 - db/include/gen_server_ext.h | 106 - db/include/hash.h | 140 - db/include/hash_auto.h | 248 - db/include/hash_ext.h | 106 - db/include/lock.h | 190 - db/include/lock_ext.h | 39 - db/include/log_auto.h | 39 - db/include/log_ext.h | 33 - db/include/mp.h | 244 - db/include/mp_ext.h | 33 - db/include/mutex.h | 744 -- db/include/mutex_ext.h | 31 - db/include/os.h | 46 - db/include/os_ext.h | 62 - db/include/os_jump.h | 34 - db/include/qam.h | 150 - db/include/qam_auto.h | 129 - db/include/qam_ext.h | 56 - db/include/queue.h | 319 - db/include/region.h | 292 - db/include/rpc_client_ext.h | 19 - db/include/rpc_server_ext.h | 21 - db/include/shqueue.h | 337 - db/include/tcl_db.h | 219 - db/include/tcl_ext.h | 89 - db/include/txn.h | 150 - db/include/txn_auto.h | 114 - db/include/txn_ext.h | 24 - db/include/xa.h | 179 - db/include/xa_ext.h | 17 - db/include_auto/btree_auto.h | 209 - db/include_auto/btree_ext.h | 133 - db/include_auto/btree_ext.in | 256 - db/include_auto/clib_ext.h | 39 - db/include_auto/clib_ext.in | 48 - db/include_auto/common_ext.h | 40 - db/include_auto/common_ext.in | 64 - db/include_auto/crdel_auto.h | 63 - db/include_auto/db185_ext.in | 11 - db/include_auto/db185_uext.in | 12 - db/include_auto/db_auto.h | 108 - db/include_auto/db_ext.h | 205 - db/include_auto/db_ext.in | 400 - db/include_auto/db_server.h | 904 -- db/include_auto/db_server.in | 994 -- db/include_auto/env_ext.h | 34 - db/include_auto/env_ext.in | 58 - db/include_auto/global_ext.in | 124 - db/include_auto/global_uext.in | 213 - db/include_auto/hash_auto.h | 195 - db/include_auto/hash_ext.h | 121 - db/include_auto/hash_ext.in | 232 - db/include_auto/lock_ext.h | 34 - db/include_auto/lock_ext.in | 58 - db/include_auto/log_auto.h | 30 - db/include_auto/log_ext.h | 37 - db/include_auto/log_ext.in | 64 - db/include_auto/mp_ext.h | 32 - db/include_auto/mp_ext.in | 54 - db/include_auto/mutex_ext.h | 28 - db/include_auto/mutex_ext.in | 46 - db/include_auto/os_ext.h | 61 - db/include_auto/os_ext.in | 110 - db/include_auto/qam_auto.h | 95 - db/include_auto/qam_ext.h | 70 - db/include_auto/qam_ext.in | 130 - db/include_auto/rpc_client_ext.h | 153 - db/include_auto/rpc_client_ext.in | 296 - db/include_auto/rpc_defs.in | 4 - db/include_auto/rpc_server_ext.h | 110 - db/include_auto/rpc_server_ext.in | 165 - db/include_auto/tcl_ext.h | 66 - db/include_auto/tcl_ext.in | 118 - db/include_auto/txn_auto.h | 84 - db/include_auto/txn_ext.h | 47 - db/include_auto/txn_ext.in | 84 - db/include_auto/xa_ext.h | 17 - db/include_auto/xa_ext.in | 24 - .../src/com/sleepycat/bind/ByteArrayBinding.java | 5 +- db/java/src/com/sleepycat/bind/EntityBinding.java | 5 +- db/java/src/com/sleepycat/bind/EntryBinding.java | 5 +- .../com/sleepycat/bind/RecordNumberBinding.java | 5 +- .../com/sleepycat/bind/serial/ClassCatalog.java | 5 +- .../src/com/sleepycat/bind/serial/SerialBase.java | 5 +- .../com/sleepycat/bind/serial/SerialBinding.java | 7 +- .../src/com/sleepycat/bind/serial/SerialInput.java | 5 +- .../com/sleepycat/bind/serial/SerialOutput.java | 7 +- .../sleepycat/bind/serial/SerialSerialBinding.java | 5 +- .../bind/serial/SerialSerialKeyCreator.java | 5 +- .../sleepycat/bind/serial/StoredClassCatalog.java | 5 +- .../sleepycat/bind/serial/TupleSerialBinding.java | 5 +- .../bind/serial/TupleSerialKeyCreator.java | 5 +- .../bind/serial/TupleSerialMarshalledBinding.java | 7 +- .../serial/TupleSerialMarshalledKeyCreator.java | 5 +- .../sleepycat/bind/tuple/BigIntegerBinding.java | 71 + .../com/sleepycat/bind/tuple/BooleanBinding.java | 5 +- .../src/com/sleepycat/bind/tuple/ByteBinding.java | 5 +- .../com/sleepycat/bind/tuple/CharacterBinding.java | 5 +- .../com/sleepycat/bind/tuple/DoubleBinding.java | 5 +- .../src/com/sleepycat/bind/tuple/FloatBinding.java | 5 +- .../com/sleepycat/bind/tuple/IntegerBinding.java | 5 +- .../src/com/sleepycat/bind/tuple/LongBinding.java | 5 +- .../sleepycat/bind/tuple/MarshalledTupleEntry.java | 5 +- .../bind/tuple/MarshalledTupleKeyEntity.java | 5 +- .../src/com/sleepycat/bind/tuple/ShortBinding.java | 5 +- .../sleepycat/bind/tuple/SortedDoubleBinding.java | 5 +- .../sleepycat/bind/tuple/SortedFloatBinding.java | 5 +- .../com/sleepycat/bind/tuple/StringBinding.java | 5 +- .../src/com/sleepycat/bind/tuple/TupleBase.java | 5 +- .../src/com/sleepycat/bind/tuple/TupleBinding.java | 5 +- .../src/com/sleepycat/bind/tuple/TupleInput.java | 69 +- .../sleepycat/bind/tuple/TupleInputBinding.java | 5 +- .../bind/tuple/TupleMarshalledBinding.java | 7 +- .../src/com/sleepycat/bind/tuple/TupleOutput.java | 76 +- .../sleepycat/bind/tuple/TupleTupleBinding.java | 5 +- .../sleepycat/bind/tuple/TupleTupleKeyCreator.java | 5 +- .../bind/tuple/TupleTupleMarshalledBinding.java | 7 +- .../bind/tuple/TupleTupleMarshalledKeyCreator.java | 5 +- .../com/sleepycat/collections/BaseIterator.java | 5 +- .../com/sleepycat/collections/BlockIterator.java | 44 +- .../sleepycat/collections/CurrentTransaction.java | 20 +- .../src/com/sleepycat/collections/DataCursor.java | 33 +- .../src/com/sleepycat/collections/DataView.java | 5 +- .../src/com/sleepycat/collections/KeyRange.java | 299 - .../sleepycat/collections/KeyRangeException.java | 26 - .../sleepycat/collections/MapEntryParameter.java | 5 +- .../com/sleepycat/collections/MyRangeCursor.java | 5 +- .../sleepycat/collections/PrimaryKeyAssigner.java | 5 +- .../src/com/sleepycat/collections/RangeCursor.java | 874 -- .../sleepycat/collections/StoredCollection.java | 62 +- .../sleepycat/collections/StoredCollections.java | 5 +- .../com/sleepycat/collections/StoredContainer.java | 18 +- .../com/sleepycat/collections/StoredEntrySet.java | 5 +- .../com/sleepycat/collections/StoredIterator.java | 15 +- .../com/sleepycat/collections/StoredKeySet.java | 5 +- .../src/com/sleepycat/collections/StoredList.java | 9 +- .../src/com/sleepycat/collections/StoredMap.java | 13 +- .../com/sleepycat/collections/StoredMapEntry.java | 5 +- .../collections/StoredSortedEntrySet.java | 5 +- .../sleepycat/collections/StoredSortedKeySet.java | 5 +- .../com/sleepycat/collections/StoredSortedMap.java | 7 +- .../collections/StoredSortedValueSet.java | 5 +- .../com/sleepycat/collections/StoredValueSet.java | 5 +- .../sleepycat/collections/TransactionRunner.java | 18 +- .../sleepycat/collections/TransactionWorker.java | 5 +- .../sleepycat/collections/TupleSerialFactory.java | 5 +- db/java/src/com/sleepycat/collections/package.html | 7 +- db/java/src/com/sleepycat/compat/DbCompat.java | 13 +- .../com/sleepycat/db/BtreePrefixCalculator.java | 5 +- db/java/src/com/sleepycat/db/BtreeStats.java | 9 +- db/java/src/com/sleepycat/db/CacheFile.java | 5 +- .../src/com/sleepycat/db/CacheFilePriority.java | 6 +- db/java/src/com/sleepycat/db/CacheFileStats.java | 3 +- db/java/src/com/sleepycat/db/CacheStats.java | 29 +- db/java/src/com/sleepycat/db/CheckpointConfig.java | 5 +- db/java/src/com/sleepycat/db/CompactConfig.java | 5 +- db/java/src/com/sleepycat/db/CompactStats.java | 3 +- db/java/src/com/sleepycat/db/Cursor.java | 55 +- db/java/src/com/sleepycat/db/CursorConfig.java | 5 +- db/java/src/com/sleepycat/db/Database.java | 14 +- db/java/src/com/sleepycat/db/DatabaseConfig.java | 29 +- db/java/src/com/sleepycat/db/DatabaseEntry.java | 5 +- .../src/com/sleepycat/db/DatabaseException.java | 5 +- db/java/src/com/sleepycat/db/DatabaseStats.java | 9 +- db/java/src/com/sleepycat/db/DatabaseType.java | 5 +- db/java/src/com/sleepycat/db/DbRecoveryInit.java | 23 - db/java/src/com/sleepycat/db/DbTxnRecover.java | 22 - .../src/com/sleepycat/db/DeadlockException.java | 5 +- db/java/src/com/sleepycat/db/Environment.java | 28 +- .../src/com/sleepycat/db/EnvironmentConfig.java | 140 +- db/java/src/com/sleepycat/db/ErrorHandler.java | 5 +- db/java/src/com/sleepycat/db/EventHandler.java | 23 +- .../src/com/sleepycat/db/EventHandlerAdapter.java | 26 + db/java/src/com/sleepycat/db/EventType.java | 68 - db/java/src/com/sleepycat/db/FeedbackHandler.java | 5 +- db/java/src/com/sleepycat/db/HashStats.java | 9 +- db/java/src/com/sleepycat/db/Hasher.java | 5 +- db/java/src/com/sleepycat/db/JoinConfig.java | 5 +- db/java/src/com/sleepycat/db/JoinCursor.java | 5 +- db/java/src/com/sleepycat/db/KeyRange.java | 5 +- db/java/src/com/sleepycat/db/Lock.java | 5 +- db/java/src/com/sleepycat/db/LockDetectMode.java | 5 +- db/java/src/com/sleepycat/db/LockMode.java | 5 +- .../com/sleepycat/db/LockNotGrantedException.java | 5 +- db/java/src/com/sleepycat/db/LockOperation.java | 5 +- db/java/src/com/sleepycat/db/LockRequest.java | 5 +- db/java/src/com/sleepycat/db/LockRequestMode.java | 5 +- db/java/src/com/sleepycat/db/LockStats.java | 57 +- db/java/src/com/sleepycat/db/LogCursor.java | 11 +- db/java/src/com/sleepycat/db/LogRecordHandler.java | 5 +- .../src/com/sleepycat/db/LogSequenceNumber.java | 5 +- db/java/src/com/sleepycat/db/LogStats.java | 39 +- db/java/src/com/sleepycat/db/MemoryException.java | 5 +- db/java/src/com/sleepycat/db/MessageHandler.java | 5 +- .../src/com/sleepycat/db/MultipleDataEntry.java | 5 +- db/java/src/com/sleepycat/db/MultipleEntry.java | 5 +- .../src/com/sleepycat/db/MultipleKeyDataEntry.java | 5 +- .../com/sleepycat/db/MultipleKeyNIODataEntry.java | 5 +- .../src/com/sleepycat/db/MultipleNIODataEntry.java | 5 +- .../com/sleepycat/db/MultipleRecnoDataEntry.java | 5 +- .../sleepycat/db/MultipleRecnoNIODataEntry.java | 5 +- db/java/src/com/sleepycat/db/MutexStats.java | 3 +- db/java/src/com/sleepycat/db/OperationStatus.java | 5 +- db/java/src/com/sleepycat/db/PanicHandler.java | 5 +- .../src/com/sleepycat/db/PreparedTransaction.java | 5 +- db/java/src/com/sleepycat/db/QueueStats.java | 3 +- .../src/com/sleepycat/db/RecordNumberAppender.java | 5 +- .../src/com/sleepycat/db/RecoveryOperation.java | 5 +- .../src/com/sleepycat/db/ReplicationConfig.java | 5 +- .../db/ReplicationDuplicateMasterException.java | 5 +- .../db/ReplicationHandleDeadException.java | 5 +- .../db/ReplicationHoldElectionException.java | 5 +- .../com/sleepycat/db/ReplicationHostAddress.java | 13 +- .../db/ReplicationJoinFailureException.java | 5 +- .../db/ReplicationLeaseExpiredException.java | 18 + .../db/ReplicationLeaseTimeoutException.java | 18 + .../sleepycat/db/ReplicationLockoutException.java | 5 +- .../sleepycat/db/ReplicationManagerAckPolicy.java | 5 +- .../db/ReplicationManagerStartPolicy.java | 11 +- .../com/sleepycat/db/ReplicationManagerStats.java | 49 + .../db/ReplicationSiteUnavailableException.java | 5 +- db/java/src/com/sleepycat/db/ReplicationStats.java | 33 +- .../src/com/sleepycat/db/ReplicationStatus.java | 11 +- .../com/sleepycat/db/ReplicationTimeoutType.java | 15 +- .../src/com/sleepycat/db/ReplicationTransport.java | 5 +- .../src/com/sleepycat/db/RunRecoveryException.java | 5 +- db/java/src/com/sleepycat/db/SecondaryConfig.java | 36 +- db/java/src/com/sleepycat/db/SecondaryCursor.java | 5 +- .../src/com/sleepycat/db/SecondaryDatabase.java | 5 +- .../src/com/sleepycat/db/SecondaryKeyCreator.java | 5 +- .../com/sleepycat/db/SecondaryMultiKeyCreator.java | 27 + db/java/src/com/sleepycat/db/Sequence.java | 5 +- db/java/src/com/sleepycat/db/SequenceConfig.java | 5 +- db/java/src/com/sleepycat/db/SequenceStats.java | 3 +- db/java/src/com/sleepycat/db/StatsConfig.java | 5 +- db/java/src/com/sleepycat/db/Transaction.java | 11 +- .../src/com/sleepycat/db/TransactionConfig.java | 25 +- db/java/src/com/sleepycat/db/TransactionStats.java | 15 +- db/java/src/com/sleepycat/db/VerboseConfig.java | 47 + db/java/src/com/sleepycat/db/VerifyConfig.java | 5 +- .../com/sleepycat/db/VersionMismatchException.java | 5 +- db/java/src/com/sleepycat/db/internal/Db.java | 79 +- .../src/com/sleepycat/db/internal/DbClient.java | 17 - .../src/com/sleepycat/db/internal/DbConstants.java | 87 +- db/java/src/com/sleepycat/db/internal/DbEnv.java | 109 +- db/java/src/com/sleepycat/db/internal/DbLogc.java | 2 + db/java/src/com/sleepycat/db/internal/DbUtil.java | 5 +- db/java/src/com/sleepycat/db/internal/Dbc.java | 6 + .../src/com/sleepycat/db/internal/db_javaJNI.java | 75 +- db/java/src/com/sleepycat/db/package.html | 5 +- .../src/com/sleepycat/util/ExceptionUnwrapper.java | 5 +- .../src/com/sleepycat/util/ExceptionWrapper.java | 13 +- .../src/com/sleepycat/util/FastInputStream.java | 5 +- .../src/com/sleepycat/util/FastOutputStream.java | 5 +- .../src/com/sleepycat/util/IOExceptionWrapper.java | 5 +- db/java/src/com/sleepycat/util/PackedInteger.java | 223 +- .../sleepycat/util/RuntimeExceptionWrapper.java | 5 +- db/java/src/com/sleepycat/util/UtfOps.java | 5 +- .../src/com/sleepycat/util/keyrange/KeyRange.java | 16 +- .../sleepycat/util/keyrange/KeyRangeException.java | 5 +- .../com/sleepycat/util/keyrange/RangeCursor.java | 5 +- db/libdb_java/db.i | 122 +- db/libdb_java/db_java.i | 121 +- db/libdb_java/db_java_wrap.c | 801 +- db/libdb_java/java_callbacks.i | 154 +- db/libdb_java/java_except.i | 16 + db/libdb_java/java_stat.i | 1 + db/libdb_java/java_stat_auto.c | 41 +- db/libdb_java/java_typemaps.i | 10 - db/libdb_java/java_util.i | 163 +- db/lock/lock.c | 451 +- db/lock/lock_conflict.c | 34 - db/lock/lock_deadlock.c | 231 +- db/lock/lock_failchk.c | 14 +- db/lock/lock_id.c | 170 +- db/lock/lock_list.c | 10 +- db/lock/lock_method.c | 33 +- db/lock/lock_region.c | 140 +- db/lock/lock_stat.c | 158 +- db/lock/lock_stub.c | 491 + db/lock/lock_timer.c | 144 +- db/lock/lock_util.c | 5 +- db/log/log.c | 145 +- db/log/log.src | 46 - db/log/log_archive.c | 24 +- db/log/log_auto.c | 326 - db/log/log_compare.c | 37 +- db/log/log_debug.c | 5 +- db/log/log_findckp.c | 135 - db/log/log_get.c | 208 +- db/log/log_method.c | 17 +- db/log/log_put.c | 82 +- db/log/log_register.c | 433 - db/log/log_stat.c | 11 +- db/mod_db4/Makefile.in | 3 +- db/mod_db4/configure.in | 3 +- db/mod_db4/mm_hash.c | 3 +- db/mod_db4/mm_hash.h | 3 +- db/mod_db4/mod_db4.c | 3 +- db/mod_db4/mod_db4_export.h | 3 +- db/mod_db4/sem_utils.c | 3 +- db/mod_db4/sem_utils.h | 3 +- db/mod_db4/utils.c | 27 +- db/mod_db4/utils.h | 3 +- db/mp/Design | 52 - db/mp/mp_alloc.c | 118 +- db/mp/mp_bh.c | 47 +- db/mp/mp_fget.c | 84 +- db/mp/mp_fmethod.c | 22 +- db/mp/mp_fopen.c | 291 +- db/mp/mp_fput.c | 120 +- db/mp/mp_fset.c | 105 +- db/mp/mp_method.c | 243 +- db/mp/mp_mvcc.c | 63 +- db/mp/mp_region.c | 308 +- db/mp/mp_register.c | 5 +- db/mp/mp_resize.c | 559 + db/mp/mp_stat.c | 35 +- db/mp/mp_sync.c | 327 +- db/mp/mp_trickle.c | 19 +- db/mutex/mut_alloc.c | 6 +- db/mutex/mut_failchk.c | 5 +- db/mutex/mut_fcntl.c | 7 +- db/mutex/mut_method.c | 5 +- db/mutex/mut_pthread.c | 29 +- db/mutex/mut_region.c | 99 +- db/mutex/mut_stat.c | 99 +- db/mutex/mut_stub.c | 234 + db/mutex/mut_tas.c | 45 +- db/mutex/mut_win32.c | 24 +- db/mutex/mutex.c | 392 - db/mutex/test_mutex.c | 1041 ++ db/mutex/tm.c | 1010 -- db/mutex/uts4_cc.s | 5 +- db/os/os_abort.c | 30 + db/os/os_abs.c | 5 +- db/os/os_alloc.c | 45 +- db/os/os_clock.c | 48 +- db/os/os_config.c | 5 +- db/os/os_dir.c | 27 +- db/os/os_errno.c | 5 +- db/os/os_fid.c | 39 +- db/os/os_finit.c | 111 - db/os/os_flock.c | 10 +- db/os/os_fsync.c | 18 +- db/os/os_fzero.c | 8 +- db/os/os_getenv.c | 5 +- db/os/os_handle.c | 105 +- db/os/os_id.c | 89 - db/os/os_map.c | 20 +- db/os/os_method.c | 5 +- db/os/os_mkdir.c | 17 +- db/os/os_oflags.c | 33 +- db/os/os_open.c | 176 +- db/os/os_pid.c | 9 +- db/os/os_region.c | 5 +- db/os/os_rename.c | 20 +- db/os/os_root.c | 5 +- db/os/os_rpath.c | 5 +- db/os/os_rw.c | 25 +- db/os/os_seek.c | 10 +- db/os/os_sleep.c | 14 +- db/os/os_spin.c | 7 +- db/os/os_stat.c | 10 +- db/os/os_tmpdir.c | 57 +- db/os/os_truncate.c | 10 +- db/os/os_uid.c | 18 +- db/os/os_unlink.c | 16 +- db/os/os_yield.c | 7 +- db/os_brew/ctime.c | 81 + db/os_brew/fclose.c | 32 + db/os_brew/fgetc.c | 31 + db/os_brew/fgets.c | 42 + db/os_brew/fopen.c | 89 + db/os_brew/fwrite.c | 31 + db/os_brew/getcwd.c | 61 + db/os_brew/globals.c | 53 + db/os_brew/localtime.c | 78 + db/os_brew/os_abort.c | 25 + db/os_brew/os_abs.c | 22 + db/os_brew/os_config.c | 59 + db/os_brew/os_dir.c | 84 + db/os_brew/os_errno.c | 196 + db/os_brew/os_handle.c | 102 + db/os_brew/os_mkdir.c | 40 + db/os_brew/os_oflags.c | 27 + db/os_brew/os_open.c | 47 + db/os_brew/os_pid.c | 33 + db/os_brew/os_rename.c | 41 + db/os_brew/os_rw.c | 138 + db/os_brew/os_seek.c | 49 + db/os_brew/os_sleep.c | 30 + db/os_brew/os_stat.c | 89 + db/os_brew/os_truncate.c | 46 + db/os_brew/os_unlink.c | 35 + db/os_brew/time.c | 39 + db/os_qnx/os_qnx_open.c | 132 + db/os_s60/os_config.c | 55 + db/os_vxworks/os_abs.c | 45 - db/os_vxworks/os_finit.c | 57 - db/os_vxworks/os_map.c | 440 - db/os_vxworks/os_vx_abs.c | 5 +- db/os_vxworks/os_vx_config.c | 5 +- db/os_vxworks/os_vx_map.c | 7 +- db/os_vxworks/os_vx_rpath.c | 5 +- db/os_win32/os_abs.c | 31 - db/os_win32/os_clock.c | 34 - db/os_win32/os_config.c | 88 - db/os_win32/os_dir.c | 102 - db/os_win32/os_errno.c | 138 - db/os_win32/os_fid.c | 141 - db/os_win32/os_finit.c | 60 - db/os_win32/os_fsync.c | 48 - db/os_win32/os_handle.c | 131 - db/os_win32/os_map.c | 315 - db/os_win32/os_open.c | 228 - db/os_win32/os_rename.c | 72 - db/os_win32/os_rw.c | 291 - db/os_win32/os_seek.c | 92 - db/os_win32/os_sleep.c | 39 - db/os_win32/os_spin.c | 56 - db/os_win32/os_stat.c | 96 - db/os_win32/os_truncate.c | 99 - db/os_win32/os_unlink.c | 73 - db/os_windows/ce_ctime.c | 87 + db/os_windows/ce_time.c | 53 + db/os_windows/os_abs.c | 5 +- db/os_windows/os_clock.c | 28 +- db/os_windows/os_config.c | 21 +- db/os_windows/os_dir.c | 5 +- db/os_windows/os_errno.c | 28 +- db/os_windows/os_fid.c | 80 +- db/os_windows/os_flock.c | 22 +- db/os_windows/os_fsync.c | 8 +- db/os_windows/os_getenv.c | 11 +- db/os_windows/os_handle.c | 84 +- db/os_windows/os_map.c | 74 +- db/os_windows/os_mkdir.c | 42 + db/os_windows/os_open.c | 96 +- db/os_windows/os_rename.c | 16 +- db/os_windows/os_rw.c | 26 +- db/os_windows/os_seek.c | 9 +- db/os_windows/os_sleep.c | 18 +- db/os_windows/os_spin.c | 5 +- db/os_windows/os_stat.c | 9 +- db/os_windows/os_truncate.c | 10 +- db/os_windows/os_unlink.c | 13 +- db/os_windows/os_yield.c | 5 +- db/perl.BerkeleyDB/BerkeleyDB.pm | 1227 -- db/perl.BerkeleyDB/BerkeleyDB.pod | 1751 --- db/perl.BerkeleyDB/BerkeleyDB.pod.P | 1518 --- db/perl.BerkeleyDB/BerkeleyDB.xs | 3927 ------ db/perl.BerkeleyDB/BerkeleyDB/Btree.pm | 8 - db/perl.BerkeleyDB/BerkeleyDB/Hash.pm | 8 - db/perl.BerkeleyDB/Changes | 112 - db/perl.BerkeleyDB/MANIFEST | 49 - db/perl.BerkeleyDB/Makefile.PL | 112 - db/perl.BerkeleyDB/README | 464 - db/perl.BerkeleyDB/Todo | 57 - db/perl.BerkeleyDB/config.in | 51 - db/perl.BerkeleyDB/dbinfo | 109 - db/perl.BerkeleyDB/hints/irix_6_5.pl | 1 - db/perl.BerkeleyDB/hints/solaris.pl | 1 - db/perl.BerkeleyDB/mkconsts | 211 - db/perl.BerkeleyDB/mkpod | 146 - db/perl.BerkeleyDB/patches/5.004 | 44 - db/perl.BerkeleyDB/patches/5.004_01 | 217 - db/perl.BerkeleyDB/patches/5.004_02 | 217 - db/perl.BerkeleyDB/patches/5.004_03 | 223 - db/perl.BerkeleyDB/patches/5.004_04 | 209 - db/perl.BerkeleyDB/patches/5.004_05 | 209 - db/perl.BerkeleyDB/patches/5.005 | 209 - db/perl.BerkeleyDB/patches/5.005_01 | 209 - db/perl.BerkeleyDB/patches/5.005_02 | 264 - db/perl.BerkeleyDB/patches/5.005_03 | 250 - db/perl.BerkeleyDB/patches/5.6.0 | 294 - db/perl.BerkeleyDB/t/btree.t | 976 -- db/perl.BerkeleyDB/t/db-3.0.t | 128 - db/perl.BerkeleyDB/t/db-3.1.t | 172 - db/perl.BerkeleyDB/t/db-3.2.t | 90 - db/perl.BerkeleyDB/t/destroy.t | 141 - db/perl.BerkeleyDB/t/env.t | 279 - db/perl.BerkeleyDB/t/examples.t | 482 - db/perl.BerkeleyDB/t/examples.t.T | 496 - db/perl.BerkeleyDB/t/examples3.t | 213 - db/perl.BerkeleyDB/t/examples3.t.T | 217 - db/perl.BerkeleyDB/t/filter.t | 244 - db/perl.BerkeleyDB/t/hash.t | 777 -- db/perl.BerkeleyDB/t/join.t | 270 - db/perl.BerkeleyDB/t/mldbm.t | 166 - db/perl.BerkeleyDB/t/queue.t | 837 -- db/perl.BerkeleyDB/t/recno.t | 967 -- db/perl.BerkeleyDB/t/strict.t | 220 - db/perl.BerkeleyDB/t/subdb.t | 296 - db/perl.BerkeleyDB/t/txn.t | 354 - db/perl.BerkeleyDB/t/unknown.t | 212 - db/perl.BerkeleyDB/typemap | 275 - db/perl.DB_File/Changes | 343 - db/perl.DB_File/DB_File.pm | 2072 ---- db/perl.DB_File/DB_File.xs | 2072 ---- db/perl.DB_File/DB_File_BS | 6 - db/perl.DB_File/MANIFEST | 27 - db/perl.DB_File/Makefile.PL | 187 - db/perl.DB_File/README | 396 - db/perl.DB_File/config.in | 99 - db/perl.DB_File/dbinfo | 109 - db/perl.DB_File/hints/dynixptx.pl | 3 - db/perl.DB_File/hints/sco.pl | 2 - db/perl.DB_File/patches/5.004 | 44 - db/perl.DB_File/patches/5.004_01 | 217 - db/perl.DB_File/patches/5.004_02 | 217 - db/perl.DB_File/patches/5.004_03 | 223 - db/perl.DB_File/patches/5.004_04 | 209 - db/perl.DB_File/patches/5.004_05 | 209 - db/perl.DB_File/patches/5.005 | 209 - db/perl.DB_File/patches/5.005_01 | 209 - db/perl.DB_File/patches/5.005_02 | 264 - db/perl.DB_File/patches/5.005_03 | 250 - db/perl.DB_File/patches/5.6.0 | 294 - db/perl.DB_File/t/db-btree.t | 1306 -- db/perl.DB_File/t/db-hash.t | 753 -- db/perl.DB_File/t/db-recno.t | 899 -- db/perl.DB_File/typemap | 44 - db/perl.DB_File/version.c | 81 - db/perl/BerkeleyDB/BerkeleyDB.pm | 70 +- db/perl/BerkeleyDB/BerkeleyDB.pod | 12 +- db/perl/BerkeleyDB/BerkeleyDB.pod.P | 12 +- db/perl/BerkeleyDB/BerkeleyDB.xs | 300 +- db/perl/BerkeleyDB/Changes | 11 + db/perl/BerkeleyDB/MANIFEST | 1 + db/perl/BerkeleyDB/META.yml | 23 +- db/perl/BerkeleyDB/Makefile.PL | 5 + db/perl/BerkeleyDB/README | 6 +- db/perl/BerkeleyDB/constants.h | 1763 ++- db/perl/BerkeleyDB/mkconsts | 100 +- db/perl/BerkeleyDB/t/btree.t | 2 +- db/perl/BerkeleyDB/t/db-4.x.t | 56 + db/perl/BerkeleyDB/t/examples3.t | 16 +- db/perl/BerkeleyDB/t/examples3.t.T | 16 +- db/perl/BerkeleyDB/t/util.pm | 14 + db/perl/BerkeleyDB/typemap | 4 +- db/perl/DB_File/Changes | 8 + db/perl/DB_File/DB_File.pm | 12 +- db/perl/DB_File/DB_File.xs | 15 +- db/perl/DB_File/MANIFEST | 1 + db/perl/DB_File/META.yml | 23 +- db/perl/DB_File/Makefile.PL | 12 + db/perl/DB_File/README | 6 +- db/perl/DB_File/t/pod.t | 18 + db/php_db4/config.m4 | 5 +- db/php_db4/db4.cpp | 150 +- db/php_db4/php_db4.h | 3 +- db/qam/qam.c | 224 +- db/qam/qam.src | 5 +- db/qam/qam_auto.c | 40 +- db/qam/qam_conv.c | 5 +- db/qam/qam_files.c | 61 +- db/qam/qam_method.c | 29 +- db/qam/qam_open.c | 92 +- db/qam/qam_rec.c | 111 +- db/qam/qam_stat.c | 11 +- db/qam/qam_stub.c | 9 +- db/qam/qam_upgrade.c | 5 +- db/qam/qam_verify.c | 11 +- db/rep/mlease.html | 1219 ++ db/rep/rep.src | 5 +- db/rep/rep_backup.c | 1097 +- db/rep/rep_elect.c | 650 +- db/rep/rep_lease.c | 485 + db/rep/rep_log.c | 207 +- db/rep/rep_method.c | 604 +- db/rep/rep_record.c | 800 +- db/rep/rep_region.c | 203 +- db/rep/rep_stat.c | 33 +- db/rep/rep_stub.c | 68 +- db/rep/rep_util.c | 947 +- db/rep/rep_verify.c | 205 +- db/repmgr/repmgr_elect.c | 205 +- db/repmgr/repmgr_method.c | 45 +- db/repmgr/repmgr_msg.c | 180 +- db/repmgr/repmgr_net.c | 112 +- db/repmgr/repmgr_posix.c | 129 +- db/repmgr/repmgr_queue.c | 7 +- db/repmgr/repmgr_sel.c | 180 +- db/repmgr/repmgr_stat.c | 250 +- db/repmgr/repmgr_stub.c | 198 + db/repmgr/repmgr_util.c | 95 +- db/repmgr/repmgr_windows.c | 101 +- db/rpc_client/client.c | 11 +- db/rpc_client/gen_client.c | 579 +- db/rpc_client/gen_client_ret.c | 55 +- db/rpc_server/c/db_server_proc.c | 155 +- db/rpc_server/c/db_server_util.c | 9 +- db/rpc_server/c/gen_db_server.c | 282 +- db/rpc_server/cxx/db_server_cxxproc.cpp | 104 +- db/rpc_server/cxx/db_server_cxxutil.cpp | 5 +- db/rpc_server/db_server.sed | 5 - db/rpc_server/db_server.x | 146 +- db/rpc_server/db_server_proc.c | 1546 --- db/rpc_server/db_server_proc.sed | 418 - db/rpc_server/db_server_svc.c | 359 - db/rpc_server/db_server_svc.sed | 5 - db/rpc_server/db_server_util.c | 612 - db/rpc_server/db_server_xdr.c | 1149 -- db/rpc_server/gen_db_server.c | 703 -- db/rpc_server/java/AssociateCallbacks.java | 178 - db/rpc_server/java/Dispatcher.java | 721 -- db/rpc_server/java/FreeList.java | 101 - db/rpc_server/java/JoinCursorAdapter.java | 170 - db/rpc_server/java/LocalIterator.java | 23 - db/rpc_server/java/README | 27 - db/rpc_server/java/RpcDb.java | 780 -- db/rpc_server/java/RpcDbEnv.java | 369 - db/rpc_server/java/RpcDbTxn.java | 132 - db/rpc_server/java/RpcDbc.java | 317 - db/rpc_server/java/Server.java | 328 - db/rpc_server/java/Timer.java | 21 - db/rpc_server/java/Util.java | 172 - db/rpc_server/java/gen/ServerStubs.java | 657 - db/rpc_server/java/gen/__db_associate_msg.java | 41 - db/rpc_server/java/gen/__db_associate_reply.java | 32 - db/rpc_server/java/gen/__db_bt_maxkey_msg.java | 35 - db/rpc_server/java/gen/__db_bt_maxkey_reply.java | 32 - db/rpc_server/java/gen/__db_bt_minkey_msg.java | 35 - db/rpc_server/java/gen/__db_bt_minkey_reply.java | 32 - db/rpc_server/java/gen/__db_close_msg.java | 35 - db/rpc_server/java/gen/__db_close_reply.java | 32 - db/rpc_server/java/gen/__db_create_msg.java | 35 - db/rpc_server/java/gen/__db_create_reply.java | 35 - db/rpc_server/java/gen/__db_cursor_msg.java | 38 - db/rpc_server/java/gen/__db_cursor_reply.java | 35 - db/rpc_server/java/gen/__db_del_msg.java | 53 - db/rpc_server/java/gen/__db_del_reply.java | 32 - db/rpc_server/java/gen/__db_encrypt_msg.java | 38 - db/rpc_server/java/gen/__db_encrypt_reply.java | 32 - db/rpc_server/java/gen/__db_extentsize_msg.java | 35 - db/rpc_server/java/gen/__db_extentsize_reply.java | 32 - db/rpc_server/java/gen/__db_flags_msg.java | 35 - db/rpc_server/java/gen/__db_flags_reply.java | 32 - db/rpc_server/java/gen/__db_get_bt_minkey_msg.java | 32 - .../java/gen/__db_get_bt_minkey_reply.java | 35 - .../java/gen/__db_get_encrypt_flags_msg.java | 32 - .../java/gen/__db_get_encrypt_flags_reply.java | 35 - .../java/gen/__db_get_extentsize_msg.java | 32 - .../java/gen/__db_get_extentsize_reply.java | 35 - db/rpc_server/java/gen/__db_get_flags_msg.java | 32 - db/rpc_server/java/gen/__db_get_flags_reply.java | 35 - db/rpc_server/java/gen/__db_get_h_ffactor_msg.java | 32 - .../java/gen/__db_get_h_ffactor_reply.java | 35 - db/rpc_server/java/gen/__db_get_h_nelem_msg.java | 32 - db/rpc_server/java/gen/__db_get_h_nelem_reply.java | 35 - db/rpc_server/java/gen/__db_get_lorder_msg.java | 32 - db/rpc_server/java/gen/__db_get_lorder_reply.java | 35 - db/rpc_server/java/gen/__db_get_msg.java | 68 - db/rpc_server/java/gen/__db_get_name_msg.java | 32 - db/rpc_server/java/gen/__db_get_name_reply.java | 38 - .../java/gen/__db_get_open_flags_msg.java | 32 - .../java/gen/__db_get_open_flags_reply.java | 35 - db/rpc_server/java/gen/__db_get_pagesize_msg.java | 32 - .../java/gen/__db_get_pagesize_reply.java | 35 - db/rpc_server/java/gen/__db_get_re_delim_msg.java | 32 - .../java/gen/__db_get_re_delim_reply.java | 35 - db/rpc_server/java/gen/__db_get_re_len_msg.java | 32 - db/rpc_server/java/gen/__db_get_re_len_reply.java | 35 - db/rpc_server/java/gen/__db_get_re_pad_msg.java | 32 - db/rpc_server/java/gen/__db_get_re_pad_reply.java | 35 - db/rpc_server/java/gen/__db_get_reply.java | 38 - db/rpc_server/java/gen/__db_h_ffactor_msg.java | 35 - db/rpc_server/java/gen/__db_h_ffactor_reply.java | 32 - db/rpc_server/java/gen/__db_h_nelem_msg.java | 35 - db/rpc_server/java/gen/__db_h_nelem_reply.java | 32 - db/rpc_server/java/gen/__db_join_msg.java | 38 - db/rpc_server/java/gen/__db_join_reply.java | 35 - db/rpc_server/java/gen/__db_key_range_msg.java | 53 - db/rpc_server/java/gen/__db_key_range_reply.java | 41 - db/rpc_server/java/gen/__db_lorder_msg.java | 35 - db/rpc_server/java/gen/__db_lorder_reply.java | 32 - db/rpc_server/java/gen/__db_open_msg.java | 50 - db/rpc_server/java/gen/__db_open_reply.java | 41 - db/rpc_server/java/gen/__db_pagesize_msg.java | 35 - db/rpc_server/java/gen/__db_pagesize_reply.java | 32 - db/rpc_server/java/gen/__db_pget_msg.java | 83 - db/rpc_server/java/gen/__db_pget_reply.java | 41 - db/rpc_server/java/gen/__db_put_msg.java | 68 - db/rpc_server/java/gen/__db_put_reply.java | 35 - db/rpc_server/java/gen/__db_re_delim_msg.java | 35 - db/rpc_server/java/gen/__db_re_delim_reply.java | 32 - db/rpc_server/java/gen/__db_re_len_msg.java | 35 - db/rpc_server/java/gen/__db_re_len_reply.java | 32 - db/rpc_server/java/gen/__db_re_pad_msg.java | 35 - db/rpc_server/java/gen/__db_re_pad_reply.java | 32 - db/rpc_server/java/gen/__db_remove_msg.java | 41 - db/rpc_server/java/gen/__db_remove_reply.java | 32 - db/rpc_server/java/gen/__db_rename_msg.java | 44 - db/rpc_server/java/gen/__db_rename_reply.java | 32 - db/rpc_server/java/gen/__db_stat_msg.java | 38 - db/rpc_server/java/gen/__db_stat_reply.java | 35 - db/rpc_server/java/gen/__db_sync_msg.java | 35 - db/rpc_server/java/gen/__db_sync_reply.java | 32 - db/rpc_server/java/gen/__db_truncate_msg.java | 38 - db/rpc_server/java/gen/__db_truncate_reply.java | 35 - db/rpc_server/java/gen/__dbc_close_msg.java | 32 - db/rpc_server/java/gen/__dbc_close_reply.java | 32 - db/rpc_server/java/gen/__dbc_count_msg.java | 35 - db/rpc_server/java/gen/__dbc_count_reply.java | 35 - db/rpc_server/java/gen/__dbc_del_msg.java | 35 - db/rpc_server/java/gen/__dbc_del_reply.java | 32 - db/rpc_server/java/gen/__dbc_dup_msg.java | 35 - db/rpc_server/java/gen/__dbc_dup_reply.java | 35 - db/rpc_server/java/gen/__dbc_get_msg.java | 65 - db/rpc_server/java/gen/__dbc_get_reply.java | 38 - db/rpc_server/java/gen/__dbc_pget_msg.java | 80 - db/rpc_server/java/gen/__dbc_pget_reply.java | 41 - db/rpc_server/java/gen/__dbc_put_msg.java | 65 - db/rpc_server/java/gen/__dbc_put_reply.java | 35 - db/rpc_server/java/gen/__env_cachesize_msg.java | 41 - db/rpc_server/java/gen/__env_cachesize_reply.java | 32 - db/rpc_server/java/gen/__env_close_msg.java | 35 - db/rpc_server/java/gen/__env_close_reply.java | 32 - db/rpc_server/java/gen/__env_create_msg.java | 32 - db/rpc_server/java/gen/__env_create_reply.java | 35 - db/rpc_server/java/gen/__env_dbremove_msg.java | 44 - db/rpc_server/java/gen/__env_dbremove_reply.java | 32 - db/rpc_server/java/gen/__env_dbrename_msg.java | 47 - db/rpc_server/java/gen/__env_dbrename_reply.java | 32 - db/rpc_server/java/gen/__env_encrypt_msg.java | 38 - db/rpc_server/java/gen/__env_encrypt_reply.java | 32 - db/rpc_server/java/gen/__env_flags_msg.java | 38 - db/rpc_server/java/gen/__env_flags_reply.java | 32 - .../java/gen/__env_get_cachesize_msg.java | 32 - .../java/gen/__env_get_cachesize_reply.java | 41 - .../java/gen/__env_get_encrypt_flags_msg.java | 32 - .../java/gen/__env_get_encrypt_flags_reply.java | 35 - db/rpc_server/java/gen/__env_get_flags_msg.java | 32 - db/rpc_server/java/gen/__env_get_flags_reply.java | 35 - db/rpc_server/java/gen/__env_get_home_msg.java | 32 - db/rpc_server/java/gen/__env_get_home_reply.java | 35 - .../java/gen/__env_get_open_flags_msg.java | 32 - .../java/gen/__env_get_open_flags_reply.java | 35 - db/rpc_server/java/gen/__env_open_msg.java | 41 - db/rpc_server/java/gen/__env_open_reply.java | 35 - db/rpc_server/java/gen/__env_remove_msg.java | 38 - db/rpc_server/java/gen/__env_remove_reply.java | 32 - db/rpc_server/java/gen/__txn_abort_msg.java | 32 - db/rpc_server/java/gen/__txn_abort_reply.java | 32 - db/rpc_server/java/gen/__txn_begin_msg.java | 38 - db/rpc_server/java/gen/__txn_begin_reply.java | 35 - db/rpc_server/java/gen/__txn_commit_msg.java | 35 - db/rpc_server/java/gen/__txn_commit_reply.java | 32 - db/rpc_server/java/gen/__txn_discard_msg.java | 35 - db/rpc_server/java/gen/__txn_discard_reply.java | 32 - db/rpc_server/java/gen/__txn_prepare_msg.java | 35 - db/rpc_server/java/gen/__txn_prepare_reply.java | 32 - db/rpc_server/java/gen/__txn_recover_msg.java | 38 - db/rpc_server/java/gen/__txn_recover_reply.java | 41 - db/rpc_server/java/gen/db_server.java | 85 - db/rpc_server/java/jrpcgen.jar | Bin 57125 -> 0 bytes db/rpc_server/java/oncrpc.jar | Bin 84122 -> 0 bytes db/rpc_server/java/s_jrpcgen | 3 - db/rpc_server/rpc.src | 52 +- db/sequence/seq_stat.c | 5 +- db/sequence/sequence.c | 50 +- db/tcl/docs/db.html | 3 +- db/tcl/docs/env.html | 3 +- db/tcl/docs/historic.html | 3 +- db/tcl/docs/index.html | 3 +- db/tcl/docs/library.html | 3 +- db/tcl/docs/lock.html | 3 +- db/tcl/docs/log.html | 3 +- db/tcl/docs/mpool.html | 3 +- db/tcl/docs/rep.html | 3 +- db/tcl/docs/sequence.html | 1 + db/tcl/docs/test.html | 3 +- db/tcl/docs/txn.html | 3 +- db/tcl/tcl_compat.c | 7 +- db/tcl/tcl_db.c | 118 +- db/tcl/tcl_db_pkg.c | 193 +- db/tcl/tcl_dbcursor.c | 33 +- db/tcl/tcl_env.c | 150 +- db/tcl/tcl_internal.c | 33 +- db/tcl/tcl_lock.c | 20 +- db/tcl/tcl_log.c | 9 +- db/tcl/tcl_mp.c | 34 +- db/tcl/tcl_rep.c | 197 +- db/tcl/tcl_seq.c | 7 +- db/tcl/tcl_txn.c | 14 +- db/tcl/tcl_util.c | 7 +- db/test/README | 5 +- db/test/TESTS | 238 +- db/test/archive.tcl | 5 +- db/test/backup.tcl | 225 + db/test/bigfile.tcl | 84 - db/test/bigfile001.tcl | 5 +- db/test/bigfile002.tcl | 5 +- db/test/byteorder.tcl | 5 +- db/test/conscript.tcl | 5 +- db/test/dbm.tcl | 5 +- db/test/dbscript.tcl | 5 +- db/test/ddoyscript.tcl | 5 +- db/test/ddscript.tcl | 5 +- db/test/dead001.tcl | 5 +- db/test/dead002.tcl | 5 +- db/test/dead003.tcl | 5 +- db/test/dead004.tcl | 5 +- db/test/dead005.tcl | 5 +- db/test/dead006.tcl | 5 +- db/test/dead007.tcl | 5 +- db/test/env001.tcl | 5 +- db/test/env002.tcl | 5 +- db/test/env003.tcl | 5 +- db/test/env004.tcl | 5 +- db/test/env005.tcl | 5 +- db/test/env006.tcl | 5 +- db/test/env007.tcl | 7 +- db/test/env008.tcl | 5 +- db/test/env009.tcl | 5 +- db/test/env010.tcl | 5 +- db/test/env011.tcl | 5 +- db/test/env012.tcl | 31 +- db/test/env013.tcl | 5 +- db/test/env014.tcl | 5 +- db/test/env015.tcl | 19 +- db/test/envscript.tcl | 5 +- db/test/fop001.tcl | 175 +- db/test/fop002.tcl | 5 +- db/test/fop003.tcl | 5 +- db/test/fop004.tcl | 5 +- db/test/fop005.tcl | 5 +- db/test/fop006.tcl | 11 +- db/test/fop007.tcl | 5 +- db/test/fop008.tcl | 5 +- db/test/fopscript.tcl | 5 +- db/test/foputils.tcl | 5 +- db/test/hsearch.tcl | 5 +- db/test/join.tcl | 5 +- db/test/lock001.tcl | 5 +- db/test/lock002.tcl | 5 +- db/test/lock003.tcl | 5 +- db/test/lock004.tcl | 5 +- db/test/lock005.tcl | 5 +- db/test/lock006.tcl | 5 +- db/test/lockscript.tcl | 5 +- db/test/log.tcl | 337 - db/test/log001.tcl | 5 +- db/test/log002.tcl | 5 +- db/test/log003.tcl | 5 +- db/test/log004.tcl | 5 +- db/test/log005.tcl | 5 +- db/test/log006.tcl | 5 +- db/test/log007.tcl | 5 +- db/test/log008.tcl | 6 +- db/test/log008script.tcl | 5 +- db/test/log009.tcl | 5 +- db/test/logtrack.tcl | 5 +- db/test/mdbscript.tcl | 5 +- db/test/memp001.tcl | 5 +- db/test/memp002.tcl | 5 +- db/test/memp003.tcl | 5 +- db/test/memp004.tcl | 5 +- db/test/mpool.tcl | 420 - db/test/mpoolscript.tcl | 5 +- db/test/mutex.tcl | 225 - db/test/mutex001.tcl | 51 - db/test/mutex002.tcl | 94 - db/test/mutex003.tcl | 52 - db/test/mutexscript.tcl | 91 - db/test/ndbm.tcl | 5 +- db/test/parallel.tcl | 4 +- db/test/plat001.tcl | 5 +- db/test/recd001.tcl | 5 +- db/test/recd002.tcl | 5 +- db/test/recd003.tcl | 5 +- db/test/recd004.tcl | 5 +- db/test/recd005.tcl | 5 +- db/test/recd006.tcl | 5 +- db/test/recd007.tcl | 5 +- db/test/recd008.tcl | 5 +- db/test/recd009.tcl | 5 +- db/test/recd010.tcl | 5 +- db/test/recd011.tcl | 5 +- db/test/recd012.tcl | 5 +- db/test/recd013.tcl | 5 +- db/test/recd014.tcl | 5 +- db/test/recd015.tcl | 14 +- db/test/recd016.tcl | 7 +- db/test/recd017.tcl | 5 +- db/test/recd018.tcl | 5 +- db/test/recd019.tcl | 5 +- db/test/recd020.tcl | 5 +- db/test/recd021.tcl | 5 +- db/test/recd022.tcl | 7 +- db/test/recd023.tcl | 5 +- db/test/recd15scr.tcl | 5 +- db/test/recd15script.tcl | 66 - db/test/recdscript.tcl | 5 +- db/test/rep001.tcl | 48 +- db/test/rep002.tcl | 43 +- db/test/rep003.tcl | 27 +- db/test/rep005.tcl | 59 +- db/test/rep006.tcl | 31 +- db/test/rep007.tcl | 90 +- db/test/rep008.tcl | 32 +- db/test/rep009.tcl | 50 +- db/test/rep010.tcl | 37 +- db/test/rep011.tcl | 37 +- db/test/rep012.tcl | 32 +- db/test/rep013.tcl | 35 +- db/test/rep014.tcl | 29 +- db/test/rep015.tcl | 28 +- db/test/rep016.tcl | 46 +- db/test/rep017.tcl | 48 +- db/test/rep017script.tcl | 11 +- db/test/rep018.tcl | 27 +- db/test/rep018script.tcl | 10 +- db/test/rep019.tcl | 28 +- db/test/rep020.tcl | 44 +- db/test/rep021.tcl | 50 +- db/test/rep022.tcl | 46 +- db/test/rep023.tcl | 31 +- db/test/rep024.tcl | 50 +- db/test/rep025.tcl | 37 +- db/test/rep026.tcl | 73 +- db/test/rep027.tcl | 26 +- db/test/rep028.tcl | 29 +- db/test/rep029.tcl | 50 +- db/test/rep030.tcl | 68 +- db/test/rep031.tcl | 36 +- db/test/rep032.tcl | 36 +- db/test/rep033.tcl | 55 +- db/test/rep034.tcl | 398 +- db/test/rep035.tcl | 63 +- db/test/rep035script.tcl | 12 +- db/test/rep036.tcl | 38 +- db/test/rep036script.tcl | 15 +- db/test/rep037.tcl | 51 +- db/test/rep038.tcl | 39 +- db/test/rep039.tcl | 303 +- db/test/rep040.tcl | 24 +- db/test/rep040script.tcl | 11 +- db/test/rep041.tcl | 40 +- db/test/rep042.tcl | 30 +- db/test/rep042script.tcl | 11 +- db/test/rep043.tcl | 49 +- db/test/rep043script.tcl | 31 +- db/test/rep044.tcl | 34 +- db/test/rep045.tcl | 39 +- db/test/rep045script.tcl | 10 +- db/test/rep046.tcl | 82 +- db/test/rep047.tcl | 48 +- db/test/rep048.tcl | 56 +- db/test/rep048script.tcl | 11 +- db/test/rep049.tcl | 45 +- db/test/rep050.tcl | 59 +- db/test/rep051.tcl | 52 +- db/test/rep052.tcl | 54 +- db/test/rep053.tcl | 69 +- db/test/rep054.tcl | 43 +- db/test/rep055.tcl | 38 +- db/test/rep056.tcl | 5 +- db/test/rep057.tcl | 5 +- db/test/rep058.tcl | 26 +- db/test/rep059.tcl | 36 +- db/test/rep060.tcl | 74 +- db/test/rep061.tcl | 72 +- db/test/rep062.tcl | 55 +- db/test/rep063.tcl | 64 +- db/test/rep064.tcl | 23 +- db/test/rep065.tcl | 48 +- db/test/rep065script.tcl | 51 +- db/test/rep066.tcl | 45 +- db/test/rep067.tcl | 361 + db/test/rep068.tcl | 187 + db/test/rep069.tcl | 260 + db/test/rep070.tcl | 160 + db/test/rep071.tcl | 136 + db/test/rep072.tcl | 185 + db/test/rep073.tcl | 146 + db/test/rep074.tcl | 163 + db/test/rep075.tcl | 500 + db/test/rep076.tcl | 170 + db/test/rep077.tcl | 132 + db/test/rep078.tcl | 217 + db/test/repmgr001.tcl | 130 + db/test/reputils.tcl | 1075 +- db/test/reputilsnoenv.tcl | 486 + db/test/rpc001.tcl | 5 +- db/test/rpc002.tcl | 7 +- db/test/rpc003.tcl | 5 +- db/test/rpc004.tcl | 5 +- db/test/rpc005.tcl | 5 +- db/test/rpc006.tcl | 5 +- db/test/rsrc001.tcl | 5 +- db/test/rsrc002.tcl | 5 +- db/test/rsrc003.tcl | 5 +- db/test/rsrc004.tcl | 5 +- db/test/scr001/chk.code | 4 +- db/test/scr003/chk.define | 5 +- db/test/scr006/chk.offt | 9 +- db/test/scr008/chk.pubdef | 2 +- db/test/scr010/chk.str | 6 +- db/test/scr010/spell.ok | 258 + db/test/scr011/chk.tags | 5 +- db/test/scr013/chk.stats | 4 +- db/test/scr015/TestConstruct01.cpp | 5 +- db/test/scr015/TestGetSetMethods.cpp | 5 +- db/test/scr015/TestKeyRange.cpp | 5 +- db/test/scr015/TestLogc.cpp | 5 +- db/test/scr015/TestSimpleAccess.cpp | 5 +- db/test/scr015/TestTruncate.cpp | 5 +- db/test/scr016/CallbackTest.java | 83 - db/test/scr016/CallbackTest.testout | 54 - db/test/scr016/README | 37 +- db/test/scr016/TestAppendRecno.java | 258 - db/test/scr016/TestAppendRecno.testout | 82 - db/test/scr016/TestAssociate.java | 333 - db/test/scr016/TestAssociate.testout | 30 - db/test/scr016/TestCallback.java | 147 - db/test/scr016/TestCallback.testout | 12 - db/test/scr016/TestClosedDb.java | 62 - db/test/scr016/TestClosedDb.testout | 2 - db/test/scr016/TestConstruct01.java | 477 - db/test/scr016/TestConstruct01.testerr | 0 db/test/scr016/TestConstruct01.testout | 3 - db/test/scr016/TestConstruct02.java | 326 - db/test/scr016/TestConstruct02.testout | 3 - db/test/scr016/TestDbtFlags.java | 241 - db/test/scr016/TestDbtFlags.testerr | 54 - db/test/scr016/TestDbtFlags.testout | 78 - db/test/scr016/TestGetSetMethods.java | 99 - db/test/scr016/TestKeyRange.java | 205 - db/test/scr016/TestKeyRange.testout | 27 - db/test/scr016/TestLockVec.java | 249 - db/test/scr016/TestLockVec.testout | 8 - db/test/scr016/TestLogc.java | 100 - db/test/scr016/TestLogc.testout | 1 - db/test/scr016/TestOpenEmpty.java | 199 - db/test/scr016/TestOpenEmpty.testerr | 2 - db/test/scr016/TestReplication.java | 289 - db/test/scr016/TestRpcServer.java | 193 - db/test/scr016/TestSameDbt.java | 56 - db/test/scr016/TestSameDbt.testout | 2 - db/test/scr016/TestSimpleAccess.java | 37 - db/test/scr016/TestSimpleAccess.testout | 3 - db/test/scr016/TestStat.java | 94 - db/test/scr016/TestStat.testout | 18 - db/test/scr016/TestTruncate.java | 87 - db/test/scr016/TestTruncate.testout | 6 - db/test/scr016/TestUtil.java | 57 - db/test/scr016/TestXAServlet.java | 313 - db/test/scr016/chk.bdb | 76 + db/test/scr016/chk.javatests | 79 - db/test/scr016/ignore | 25 - db/test/scr016/makenewtest.sh | 117 + .../src/com/sleepycat/db/test/AppendRecnoTest.java | 209 + .../src/com/sleepycat/db/test/AssociateTest.java | 252 + .../src/com/sleepycat/db/test/CallbackTest.java | 159 + .../src/com/sleepycat/db/test/ClosedDbTest.java | 80 + .../src/com/sleepycat/db/test/DatabaseTest.java | 377 + .../src/com/sleepycat/db/test/EncryptTest.java | 132 + .../src/com/sleepycat/db/test/HashCompareTest.java | 125 + .../src/com/sleepycat/db/test/PartialGetTest.java | 264 + .../com/sleepycat/db/test/RepmgrConfigTest.java | 325 + .../com/sleepycat/db/test/RepmgrElectionTest.java | 199 + .../com/sleepycat/db/test/RepmgrStartupTest.java | 210 + .../src/com/sleepycat/db/test/TestUtils.java | 227 + .../com/sleepycat/db/test/VerboseConfigTest.java | 91 + db/test/scr016/testall | 32 - db/test/scr016/testone | 126 - db/test/scr017/t.c | 2 +- db/test/scr018/t.c | 2 +- db/test/scr019/chk.include | 6 +- db/test/scr021/chk.flags | 5 +- db/test/scr021/t.c | 2 +- db/test/scr023/q.c | 4 +- .../bind/serial/test/MarshalledObject.java | 5 +- .../bind/serial/test/NullClassCatalog.java | 7 +- .../bind/serial/test/SerialBindingTest.java | 5 +- .../bind/serial/test/TestClassCatalog.java | 5 +- .../com/sleepycat/bind/test/BindingSpeedTest.java | 15 +- .../bind/tuple/test/MarshalledObject.java | 5 +- .../bind/tuple/test/TupleBindingTest.java | 5 +- .../sleepycat/bind/tuple/test/TupleFormatTest.java | 63 +- .../bind/tuple/test/TupleOrderingTest.java | 9 +- .../com/sleepycat/collections/KeyRangeTest.java | 7 +- .../sleepycat/collections/test/CollectionTest.java | 13 +- .../com/sleepycat/collections/test/DbTestUtil.java | 5 +- .../collections/test/IterDeadlockTest.java | 5 +- .../com/sleepycat/collections/test/JoinTest.java | 5 +- .../collections/test/NullTransactionRunner.java | 5 +- .../collections/test/SecondaryDeadlockTest.java | 5 +- .../collections/test/TestDataBinding.java | 5 +- .../com/sleepycat/collections/test/TestEntity.java | 5 +- .../collections/test/TestEntityBinding.java | 5 +- .../com/sleepycat/collections/test/TestEnv.java | 5 +- .../collections/test/TestKeyAssigner.java | 5 +- .../sleepycat/collections/test/TestKeyCreator.java | 5 +- .../com/sleepycat/collections/test/TestStore.java | 9 +- .../collections/test/TransactionTest.java | 13 +- .../test/serial/CatalogCornerCaseTest.java | 5 +- .../test/serial/StoredClassCatalogTest.java | 5 +- .../test/serial/StoredClassCatalogTestInit.java | 5 +- .../collections/test/serial/TestSerial.java | 6 +- .../test/serial/TestSerial.java.original | 9 +- .../sleepycat/util/test/ExceptionWrapperTest.java | 5 +- .../sleepycat/util/test/FastOutputStreamTest.java | 5 +- .../com/sleepycat/util/test/PackedIntegerTest.java | 131 +- .../src/com/sleepycat/util/test/UtfTest.java | 5 +- db/test/scr026/chk.method | 19 +- db/test/scr030/chk.build | 32 +- db/test/scr031/chk.xa | 13 +- db/test/scr031/src/client.c | 2 +- db/test/scr031/src/hcommonxa.h | 8 +- db/test/scr031/src/hdbrec.h | 2 +- db/test/scr031/src/htimestampxa.h | 2 +- db/test/scr031/src/server.c | 2 +- db/test/scr033/chk.codegen | 43 + db/test/sdb001.tcl | 5 +- db/test/sdb002.tcl | 5 +- db/test/sdb003.tcl | 12 +- db/test/sdb004.tcl | 5 +- db/test/sdb005.tcl | 5 +- db/test/sdb006.tcl | 5 +- db/test/sdb007.tcl | 5 +- db/test/sdb008.tcl | 5 +- db/test/sdb009.tcl | 5 +- db/test/sdb010.tcl | 5 +- db/test/sdb011.tcl | 5 +- db/test/sdb012.tcl | 5 +- db/test/sdb013.tcl | 5 +- db/test/sdb014.tcl | 5 +- db/test/sdb015.tcl | 5 +- db/test/sdb016.tcl | 5 +- db/test/sdb017.tcl | 5 +- db/test/sdb018.tcl | 5 +- db/test/sdb019.tcl | 5 +- db/test/sdb020.tcl | 5 +- db/test/sdbscript.tcl | 5 +- db/test/sdbtest001.tcl | 5 +- db/test/sdbtest002.tcl | 5 +- db/test/sdbutils.tcl | 5 +- db/test/sec001.tcl | 5 +- db/test/sec002.tcl | 5 +- db/test/shelltest.tcl | 7 +- db/test/si001.tcl | 5 +- db/test/si002.tcl | 14 +- db/test/si003.tcl | 5 +- db/test/si004.tcl | 14 +- db/test/si005.tcl | 5 +- db/test/si006.tcl | 5 +- db/test/si007.tcl | 5 +- db/test/si008.tcl | 5 +- db/test/sijointest.tcl | 5 +- db/test/siutils.tcl | 136 +- db/test/sysscript.tcl | 5 +- db/test/t106script.tcl | 5 +- db/test/test.tcl | 41 +- db/test/test001.tcl | 5 +- db/test/test002.tcl | 5 +- db/test/test003.tcl | 5 +- db/test/test004.tcl | 5 +- db/test/test005.tcl | 5 +- db/test/test006.tcl | 5 +- db/test/test007.tcl | 5 +- db/test/test008.tcl | 5 +- db/test/test009.tcl | 5 +- db/test/test010.tcl | 5 +- db/test/test011.tcl | 5 +- db/test/test012.tcl | 5 +- db/test/test013.tcl | 5 +- db/test/test014.tcl | 5 +- db/test/test015.tcl | 5 +- db/test/test016.tcl | 5 +- db/test/test017.tcl | 5 +- db/test/test018.tcl | 5 +- db/test/test019.tcl | 5 +- db/test/test020.tcl | 5 +- db/test/test021.tcl | 5 +- db/test/test022.tcl | 5 +- db/test/test023.tcl | 5 +- db/test/test024.tcl | 5 +- db/test/test025.tcl | 5 +- db/test/test026.tcl | 5 +- db/test/test027.tcl | 5 +- db/test/test028.tcl | 5 +- db/test/test029.tcl | 5 +- db/test/test030.tcl | 31 +- db/test/test031.tcl | 5 +- db/test/test032.tcl | 5 +- db/test/test033.tcl | 5 +- db/test/test034.tcl | 5 +- db/test/test035.tcl | 5 +- db/test/test036.tcl | 5 +- db/test/test037.tcl | 5 +- db/test/test038.tcl | 5 +- db/test/test039.tcl | 5 +- db/test/test040.tcl | 5 +- db/test/test041.tcl | 5 +- db/test/test042.tcl | 5 +- db/test/test043.tcl | 5 +- db/test/test044.tcl | 5 +- db/test/test045.tcl | 5 +- db/test/test046.tcl | 5 +- db/test/test047.tcl | 5 +- db/test/test048.tcl | 5 +- db/test/test049.tcl | 5 +- db/test/test050.tcl | 5 +- db/test/test051.tcl | 5 +- db/test/test052.tcl | 5 +- db/test/test053.tcl | 5 +- db/test/test054.tcl | 5 +- db/test/test055.tcl | 5 +- db/test/test056.tcl | 5 +- db/test/test057.tcl | 5 +- db/test/test058.tcl | 5 +- db/test/test059.tcl | 5 +- db/test/test060.tcl | 5 +- db/test/test061.tcl | 5 +- db/test/test062.tcl | 5 +- db/test/test063.tcl | 5 +- db/test/test064.tcl | 5 +- db/test/test065.tcl | 5 +- db/test/test066.tcl | 5 +- db/test/test067.tcl | 5 +- db/test/test068.tcl | 5 +- db/test/test069.tcl | 5 +- db/test/test070.tcl | 5 +- db/test/test071.tcl | 5 +- db/test/test072.tcl | 5 +- db/test/test073.tcl | 5 +- db/test/test074.tcl | 5 +- db/test/test076.tcl | 5 +- db/test/test077.tcl | 5 +- db/test/test078.tcl | 5 +- db/test/test079.tcl | 5 +- db/test/test081.tcl | 5 +- db/test/test082.tcl | 5 +- db/test/test083.tcl | 5 +- db/test/test084.tcl | 5 +- db/test/test085.tcl | 5 +- db/test/test086.tcl | 5 +- db/test/test087.tcl | 5 +- db/test/test088.tcl | 5 +- db/test/test089.tcl | 5 +- db/test/test090.tcl | 5 +- db/test/test091.tcl | 5 +- db/test/test092.tcl | 5 +- db/test/test093.tcl | 109 +- db/test/test094.tcl | 5 +- db/test/test095.tcl | 5 +- db/test/test096.tcl | 5 +- db/test/test097.tcl | 7 +- db/test/test098.tcl | 5 +- db/test/test099.tcl | 5 +- db/test/test100.tcl | 5 +- db/test/test101.tcl | 5 +- db/test/test102.tcl | 5 +- db/test/test103.tcl | 5 +- db/test/test106.tcl | 6 +- db/test/test107.tcl | 5 +- db/test/test109.tcl | 5 +- db/test/test110.tcl | 5 +- db/test/test111.tcl | 5 +- db/test/test112.tcl | 5 +- db/test/test113.tcl | 5 +- db/test/test114.tcl | 5 +- db/test/test115.tcl | 13 +- db/test/test116.tcl | 15 +- db/test/test117.tcl | 5 +- db/test/test119.tcl | 5 +- db/test/test120.tcl | 7 +- db/test/test121.tcl | 7 +- db/test/test122.tcl | 7 +- db/test/testparams.tcl | 38 +- db/test/testutils.tcl | 70 +- db/test/txn.tcl | 181 - db/test/txn001.tcl | 5 +- db/test/txn002.tcl | 5 +- db/test/txn003.tcl | 16 +- db/test/txn004.tcl | 5 +- db/test/txn005.tcl | 5 +- db/test/txn006.tcl | 5 +- db/test/txn007.tcl | 5 +- db/test/txn008.tcl | 5 +- db/test/txn009.tcl | 5 +- db/test/txn010.tcl | 5 +- db/test/txn011.tcl | 5 +- db/test/txn012.tcl | 5 +- db/test/txn012script.tcl | 5 +- db/test/txn013.tcl | 5 +- db/test/txn014.tcl | 151 + db/test/txnscript.tcl | 5 +- db/test/update.tcl | 5 +- db/test/upgrade.tcl | 14 +- db/test/upgrade/README | 85 - db/test/upgrade/generate-2.X/pack-2.6.6.pl | 114 - db/test/upgrade/generate-2.X/test-2.6.patch | 379 - db/test/wrap.tcl | 7 +- db/test_micro/README | 92 + db/test_micro/SOURCE/LIST | 26 + db/test_micro/SOURCE/b_curalloc.c | 63 + db/test_micro/SOURCE/b_curwalk.c | 182 + db/test_micro/SOURCE/b_del.c | 149 + db/test_micro/SOURCE/b_get.c | 118 + db/test_micro/SOURCE/b_load.c | 147 + db/test_micro/SOURCE/b_open.c | 138 + db/test_micro/SOURCE/b_put.c | 195 + db/test_micro/SOURCE/b_recover.c | 134 + db/test_micro/SOURCE/b_txn.c | 89 + db/test_micro/SOURCE/b_txn_write.c | 154 + db/test_micro/SOURCE/b_workload.c | 622 + db/test_micro/SOURCE/b_workload.h | 159 + db/test_micro/SOURCE/bench.h | 148 + db/test_micro/SOURCE/inmem.c | 390 + db/test_micro/SOURCE/uname.c | 15 + db/test_micro/test_micro | 479 + db/txn/txn.c | 240 +- db/txn/txn.src | 28 +- db/txn/txn_auto.c | 48 +- db/txn/txn_autop.c | 20 +- db/txn/txn_chkpt.c | 93 +- db/txn/txn_failchk.c | 11 +- db/txn/txn_method.c | 17 +- db/txn/txn_rec.c | 71 +- db/txn/txn_recover.c | 72 +- db/txn/txn_region.c | 82 +- db/txn/txn_stat.c | 14 +- db/txn/txn_util.c | 132 +- db/xa/xa.c | 17 +- db/xa/xa_db.c | 5 +- db/xa/xa_map.c | 5 +- db/xa/xa_stub.c | 38 + rpmdb/Makefile.am | 2 +- 4874 files changed, 234537 insertions(+), 203998 deletions(-) create mode 100644 db/build_brew/bdb_brew.dsp create mode 100644 db/build_brew/bdb_brew.dsw create mode 100644 db/build_brew/bdbread.mak create mode 100644 db/build_brew/brew_db.h create mode 100644 db/build_brew/clib_port.h create mode 100644 db/build_brew/db.h create mode 100644 db/build_brew/db_config.h create mode 100644 db/build_brew/db_int.h create mode 100644 db/build_brew/errno.h create mode 100644 db/build_s60/bdb_s60.mmp create mode 100644 db/build_s60/clib_port.h create mode 100644 db/build_s60/db.h create mode 100644 db/build_s60/db_config.h create mode 100644 db/build_s60/db_int.h delete mode 100644 db/build_vxworks/BerkeleyDB/Makefile.component delete mode 100644 db/build_vxworks/db_archive/db_archive/Makefile.component delete mode 100644 db/build_vxworks/db_checkpoint/db_checkpoint/Makefile.component delete mode 100644 db/build_vxworks/db_deadlock/db_deadlock/Makefile.component delete mode 100644 db/build_vxworks/db_dump/db_dump/Makefile.component delete mode 100644 db/build_vxworks/db_load/db_load/Makefile.component delete mode 100644 db/build_vxworks/db_printlog/db_printlog/Makefile.component delete mode 100644 db/build_vxworks/db_recover/db_recover/Makefile.component delete mode 100644 db/build_vxworks/db_stat/db_stat/Makefile.component delete mode 100644 db/build_vxworks/db_upgrade/db_upgrade/Makefile.component delete mode 100644 db/build_vxworks/db_verify/db_verify/Makefile.component delete mode 100755 db/build_vxworks/demo/DBdemo.wpj delete mode 100644 db/build_vxworks/demo/README delete mode 100644 db/build_vxworks/demo/dbdemo.c delete mode 100644 db/build_vxworks/demo/demo/Makefile.component delete mode 100644 db/build_vxworks/demo/demo/Makefile.custom delete mode 100644 db/build_vxworks/demo/demo/component.cdf delete mode 100644 db/build_vxworks/demo/demo/component.wpj delete mode 100644 db/build_vxworks/ex_access/ex_access.wpj delete mode 100644 db/build_vxworks/ex_btrec/ex_btrec.wpj delete mode 100644 db/build_vxworks/ex_dbclient/ex_dbclient.wpj delete mode 100644 db/build_vxworks/ex_env/ex_env.wpj delete mode 100644 db/build_vxworks/ex_mpool/ex_mpool.wpj delete mode 100644 db/build_vxworks/ex_tpcb/ex_tpcb.wpj delete mode 100644 db/build_win32/Berkeley_DB.dsw delete mode 100644 db/build_win32/app_dsp.src delete mode 100644 db/build_win32/build_all.dsp delete mode 100644 db/build_win32/db.h delete mode 100644 db/build_win32/db_archive.dsp delete mode 100644 db/build_win32/db_buildall.dsp delete mode 100644 db/build_win32/db_checkpoint.dsp delete mode 100644 db/build_win32/db_config.h delete mode 100644 db/build_win32/db_cxx.h delete mode 100644 db/build_win32/db_deadlock.dsp delete mode 100644 db/build_win32/db_dll.dsp delete mode 100644 db/build_win32/db_dump.dsp delete mode 100644 db/build_win32/db_int.h delete mode 100644 db/build_win32/db_java.dsp delete mode 100644 db/build_win32/db_java_xa.dsp delete mode 100644 db/build_win32/db_java_xaj.mak delete mode 100644 db/build_win32/db_lib.dsp delete mode 100644 db/build_win32/db_load.dsp delete mode 100644 db/build_win32/db_perf.dsp delete mode 100644 db/build_win32/db_printlog.dsp delete mode 100644 db/build_win32/db_recover.dsp delete mode 100644 db/build_win32/db_small.dsp delete mode 100644 db/build_win32/db_stat.dsp delete mode 100644 db/build_win32/db_static.dsp delete mode 100644 db/build_win32/db_tcl.dsp delete mode 100644 db/build_win32/db_test.dsp delete mode 100644 db/build_win32/db_test.src delete mode 100644 db/build_win32/db_upgrade.dsp delete mode 100644 db/build_win32/db_verify.dsp delete mode 100644 db/build_win32/dbkill.cpp delete mode 100644 db/build_win32/dynamic_dsp.src delete mode 100644 db/build_win32/ex_access.dsp delete mode 100644 db/build_win32/ex_btrec.dsp delete mode 100644 db/build_win32/ex_env.dsp delete mode 100644 db/build_win32/ex_lock.dsp delete mode 100644 db/build_win32/ex_mpool.dsp delete mode 100644 db/build_win32/ex_repquote.dsp delete mode 100644 db/build_win32/ex_repquote.src delete mode 100644 db/build_win32/ex_tpcb.dsp delete mode 100644 db/build_win32/excxx_access.dsp delete mode 100644 db/build_win32/excxx_btrec.dsp delete mode 100644 db/build_win32/excxx_env.dsp delete mode 100644 db/build_win32/excxx_lock.dsp delete mode 100644 db/build_win32/excxx_mpool.dsp delete mode 100644 db/build_win32/excxx_tpcb.dsp delete mode 100644 db/build_win32/include.tcl delete mode 100644 db/build_win32/java_dsp.src delete mode 100644 db/build_win32/libdb.def delete mode 100644 db/build_win32/libdb.rc delete mode 100644 db/build_win32/libdb_tcl.def delete mode 100644 db/build_win32/libdbrc.src delete mode 100644 db/build_win32/small_dsp.src delete mode 100644 db/build_win32/srcfile_dsp.src delete mode 100644 db/build_win32/static_dsp.src delete mode 100644 db/build_win32/tcl_dsp.src delete mode 100644 db/build_win32/win_db.h delete mode 100644 db/build_win64/Berkeley_DB.dsw delete mode 100644 db/build_win64/app_dsp.src delete mode 100644 db/build_win64/build_all.dsp delete mode 100644 db/build_win64/db.h delete mode 100644 db/build_win64/db_archive.dsp delete mode 100644 db/build_win64/db_checkpoint.dsp delete mode 100644 db/build_win64/db_config.h delete mode 100644 db/build_win64/db_cxx.h delete mode 100644 db/build_win64/db_deadlock.dsp delete mode 100644 db/build_win64/db_dll.dsp delete mode 100644 db/build_win64/db_dump.dsp delete mode 100644 db/build_win64/db_int.h delete mode 100644 db/build_win64/db_java.dsp delete mode 100644 db/build_win64/db_lib.dsp delete mode 100644 db/build_win64/db_load.dsp delete mode 100644 db/build_win64/db_perf.dsp delete mode 100644 db/build_win64/db_printlog.dsp delete mode 100644 db/build_win64/db_recover.dsp delete mode 100644 db/build_win64/db_small.dsp delete mode 100644 db/build_win64/db_stat.dsp delete mode 100644 db/build_win64/db_static.dsp delete mode 100644 db/build_win64/db_tcl.dsp delete mode 100644 db/build_win64/db_test.dsp delete mode 100644 db/build_win64/db_test.src delete mode 100644 db/build_win64/db_upgrade.dsp delete mode 100644 db/build_win64/db_verify.dsp delete mode 100644 db/build_win64/dynamic_dsp.src delete mode 100644 db/build_win64/ex_access.dsp delete mode 100644 db/build_win64/ex_btrec.dsp delete mode 100644 db/build_win64/ex_env.dsp delete mode 100644 db/build_win64/ex_lock.dsp delete mode 100644 db/build_win64/ex_mpool.dsp delete mode 100644 db/build_win64/ex_repquote.dsp delete mode 100644 db/build_win64/ex_repquote.src delete mode 100644 db/build_win64/ex_tpcb.dsp delete mode 100644 db/build_win64/excxx_access.dsp delete mode 100644 db/build_win64/excxx_btrec.dsp delete mode 100644 db/build_win64/excxx_env.dsp delete mode 100644 db/build_win64/excxx_lock.dsp delete mode 100644 db/build_win64/excxx_mpool.dsp delete mode 100644 db/build_win64/excxx_tpcb.dsp delete mode 100644 db/build_win64/java_dsp.src delete mode 100644 db/build_win64/libdbrc.src delete mode 100644 db/build_win64/small_dsp.src delete mode 100644 db/build_win64/srcfile_dsp.src delete mode 100644 db/build_win64/static_dsp.src delete mode 100644 db/build_win64/tcl_dsp.src delete mode 100644 db/build_win64/win_db.h create mode 100644 db/build_wince/Berkeley_DB.sln create mode 100644 db/build_wince/Berkeley_DB.vcw create mode 100644 db/build_wince/app_vcp.src create mode 100644 db/build_wince/app_vcproj.src create mode 100644 db/build_wince/clib_port.h create mode 100644 db/build_wince/db.h create mode 100644 db/build_wince/db_config.h create mode 100644 db/build_wince/db_int.h create mode 100644 db/build_wince/db_small.vcp create mode 100644 db/build_wince/db_small.vcproj create mode 100644 db/build_wince/db_static.vcp create mode 100644 db/build_wince/db_static.vcproj create mode 100644 db/build_wince/errno.h create mode 100644 db/build_wince/rsrcfile_vcproj.src create mode 100644 db/build_wince/srcfile_vcp.src create mode 100644 db/build_wince/srcfile_vcproj.src create mode 100644 db/build_wince/static_vcp.src create mode 100644 db/build_wince/static_vcproj.src create mode 100644 db/build_wince/wce_tpcb.vcp create mode 100644 db/build_wince/wce_tpcb.vcproj create mode 100644 db/build_windows/db_codegen.dsp create mode 100644 db/build_windows/test_mutex.dsp delete mode 100644 db/build_windows/tm.dsp delete mode 100644 db/build_windows/win_db.h delete mode 100644 db/clib/abort.c create mode 100644 db/clib/qsort.c delete mode 100644 db/common/db_clock.c create mode 100644 db/common/db_shash.c delete mode 100644 db/cxx/cxx_app.cpp delete mode 100644 db/cxx/cxx_log.cpp delete mode 100644 db/cxx/cxx_table.cpp delete mode 100644 db/cxx/namemap.txt delete mode 100644 db/db/Design.fileop delete mode 100644 db/db185/db185_int.h create mode 100644 db/db_codegen/code_capi.c create mode 100644 db/db_codegen/code_parse.c create mode 100644 db/db_codegen/db_codegen.c create mode 100644 db/db_codegen/db_codegen.h create mode 100644 db/db_codegen/example1 create mode 100644 db/db_codegen/example2 create mode 100644 db/db_codegen/example3 create mode 100644 db/db_codegen/example4 create mode 100644 db/dbinc/clock.h delete mode 100644 db/dbinc/db_shash.h create mode 100644 db/dbinc/win_db.h delete mode 100644 db/dist/acconfig.h delete mode 100644 db/dist/aclocal/config.ac create mode 100644 db/dist/aclocal/config.m4 delete mode 100644 db/dist/aclocal/cxx.ac create mode 100644 db/dist/aclocal/cxx.m4 delete mode 100644 db/dist/aclocal/gcc.ac create mode 100644 db/dist/aclocal/gcc.m4 delete mode 100644 db/dist/aclocal/libtool.ac create mode 100644 db/dist/aclocal/libtool.m4 delete mode 100644 db/dist/aclocal/mutex.ac delete mode 100644 db/dist/aclocal/options.ac delete mode 100644 db/dist/aclocal/programs.ac delete mode 100644 db/dist/aclocal/rpc.ac create mode 100644 db/dist/aclocal/rpc.m4 delete mode 100644 db/dist/aclocal/sequence.ac create mode 100644 db/dist/aclocal/sequence.m4 create mode 100644 db/dist/aclocal/socklen.m4 delete mode 100644 db/dist/aclocal/sosuffix.ac create mode 100644 db/dist/aclocal/sosuffix.m4 delete mode 100644 db/dist/aclocal/tcl.ac delete mode 100644 db/dist/aclocal/types.ac delete mode 100644 db/dist/aclocal_java/ac_check_class.ac create mode 100644 db/dist/aclocal_java/ac_check_class.m4 delete mode 100644 db/dist/aclocal_java/ac_check_classpath.ac create mode 100644 db/dist/aclocal_java/ac_check_classpath.m4 delete mode 100644 db/dist/aclocal_java/ac_check_junit.ac create mode 100644 db/dist/aclocal_java/ac_check_junit.m4 delete mode 100644 db/dist/aclocal_java/ac_check_rqrd_class.ac create mode 100644 db/dist/aclocal_java/ac_check_rqrd_class.m4 delete mode 100644 db/dist/aclocal_java/ac_java_options.ac create mode 100644 db/dist/aclocal_java/ac_java_options.m4 delete mode 100644 db/dist/aclocal_java/ac_jni_include_dirs.ac create mode 100644 db/dist/aclocal_java/ac_jni_include_dirs.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_jar.ac create mode 100644 db/dist/aclocal_java/ac_prog_jar.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_java.ac create mode 100644 db/dist/aclocal_java/ac_prog_java.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_java_works.ac create mode 100644 db/dist/aclocal_java/ac_prog_java_works.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_javac.ac create mode 100644 db/dist/aclocal_java/ac_prog_javac.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_javac_works.ac create mode 100644 db/dist/aclocal_java/ac_prog_javac_works.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_javadoc.ac create mode 100644 db/dist/aclocal_java/ac_prog_javadoc.m4 delete mode 100644 db/dist/aclocal_java/ac_prog_javah.ac create mode 100644 db/dist/aclocal_java/ac_prog_javah.m4 delete mode 100644 db/dist/aclocal_java/ac_try_compile_java.ac create mode 100644 db/dist/aclocal_java/ac_try_compile_java.m4 delete mode 100644 db/dist/aclocal_java/ac_try_run_javac.ac create mode 100644 db/dist/aclocal_java/ac_try_run_javac.m4 create mode 100644 db/dist/brew/bdb_brew.dsp create mode 100644 db/dist/brew/bdbread.mak create mode 100644 db/dist/brew/brew_config.in create mode 100644 db/dist/brew/brew_db.in create mode 100644 db/dist/brew/brew_make.in create mode 100644 db/dist/brew/brew_posix.h delete mode 100644 db/dist/build/chk.code delete mode 100755 db/dist/build/chk.def delete mode 100755 db/dist/build/chk.define delete mode 100755 db/dist/build/chk.offt delete mode 100755 db/dist/build/chk.proto delete mode 100755 db/dist/build/chk.srcfiles delete mode 100644 db/dist/build/chk.str delete mode 100755 db/dist/build/chk.tags delete mode 100644 db/dist/build/script delete mode 100644 db/dist/clib_port.h create mode 100644 db/dist/clib_port.in delete mode 100644 db/dist/configure.in delete mode 100644 db/dist/ltconfig delete mode 100644 db/dist/rec_ctemp create mode 100644 db/dist/s60/s60.mmp.1 create mode 100644 db/dist/s60/s60.mmp.2 create mode 100644 db/dist/s60/s60_config.in create mode 100644 db/dist/s60/s60_make.in create mode 100644 db/dist/s_brew create mode 100644 db/dist/s_brew_dsp create mode 100644 db/dist/s_brew_posix create mode 100644 db/dist/s_cscope create mode 100644 db/dist/s_s60 create mode 100644 db/dist/s_s60_mmp create mode 100644 db/dist/s_s60_posix delete mode 100755 db/dist/s_tcl delete mode 100755 db/dist/s_win32 delete mode 100644 db/dist/s_win32_dsp delete mode 100644 db/dist/template/rec_log delete mode 100644 db/dist/win_db.in create mode 100644 db/dist/wince_config.in create mode 100644 db/docs/.cvsignore create mode 100644 db/docs/api_c/db_exists.html delete mode 100644 db/docs/api_c/db_lsn.html create mode 100644 db/docs/api_c/db_set_h_compare.html delete mode 100644 db/docs/api_c/db_set_malloc.html delete mode 100644 db/docs/api_c/db_set_paniccall.html create mode 100644 db/docs/api_c/db_set_priority.html delete mode 100644 db/docs/api_c/db_set_realloc.html create mode 100644 db/docs/api_c/dbc_set_priority.html delete mode 100644 db/docs/api_c/dbt.html create mode 100644 db/docs/api_c/env_set_cache_max.html delete mode 100644 db/docs/api_c/env_set_lk_max.html delete mode 100644 db/docs/api_c/env_set_mutexlocks.html delete mode 100644 db/docs/api_c/env_set_pageyield.html delete mode 100644 db/docs/api_c/env_set_paniccall.html delete mode 100644 db/docs/api_c/env_set_panicstate.html delete mode 100644 db/docs/api_c/env_set_rec_init.html delete mode 100644 db/docs/api_c/env_set_region_init.html delete mode 100644 db/docs/api_c/env_set_server.html delete mode 100644 db/docs/api_c/env_set_tas_spins.html delete mode 100644 db/docs/api_c/env_set_tx_recover.html delete mode 100644 db/docs/api_c/log_get.html delete mode 100644 db/docs/api_c/log_register.html delete mode 100644 db/docs/api_c/log_unregister.html delete mode 100644 db/docs/api_c/memp_fset.html create mode 100644 db/docs/api_c/rep_request.html create mode 100644 db/docs/api_c/repmgr_stat.html delete mode 100644 db/docs/api_c/seq_init_value.html delete mode 100644 db/docs/api_cxx/cxx_index.html create mode 100644 db/docs/api_cxx/db_exists.html create mode 100644 db/docs/api_cxx/db_set_h_compare.html delete mode 100644 db/docs/api_cxx/db_set_malloc.html delete mode 100644 db/docs/api_cxx/db_set_paniccall.html create mode 100644 db/docs/api_cxx/db_set_priority.html delete mode 100644 db/docs/api_cxx/db_set_realloc.html create mode 100644 db/docs/api_cxx/dbc_set_priority.html delete mode 100644 db/docs/api_cxx/dbenv_class.html create mode 100644 db/docs/api_cxx/env_set_cache_max.html delete mode 100644 db/docs/api_cxx/env_set_lk_max.html delete mode 100644 db/docs/api_cxx/env_set_mutexlocks.html delete mode 100644 db/docs/api_cxx/env_set_pageyield.html delete mode 100644 db/docs/api_cxx/env_set_paniccall.html delete mode 100644 db/docs/api_cxx/env_set_panicstate.html delete mode 100644 db/docs/api_cxx/env_set_rec_init.html delete mode 100644 db/docs/api_cxx/env_set_region_init.html delete mode 100644 db/docs/api_cxx/env_set_server.html delete mode 100644 db/docs/api_cxx/env_set_tas_spins.html delete mode 100644 db/docs/api_cxx/env_set_tx_recover.html delete mode 100644 db/docs/api_cxx/get_dbt.html delete mode 100644 db/docs/api_cxx/get_errno.html delete mode 100644 db/docs/api_cxx/log_get.html delete mode 100644 db/docs/api_cxx/log_register.html delete mode 100644 db/docs/api_cxx/log_unregister.html delete mode 100644 db/docs/api_cxx/mem_class.html delete mode 100644 db/docs/api_cxx/memp_fset.html create mode 100644 db/docs/api_cxx/rep_request.html create mode 100644 db/docs/api_cxx/repmgr_stat.html delete mode 100644 db/docs/api_cxx/seq_init_value.html delete mode 100644 db/docs/api_cxx/what.html delete mode 100644 db/docs/api_cxx/xml_close.html delete mode 100644 db/docs/api_cxx/xml_declare.html delete mode 100644 db/docs/api_cxx/xml_del.html delete mode 100644 db/docs/api_cxx/xml_get.html delete mode 100644 db/docs/api_cxx/xml_getname.html delete mode 100644 db/docs/api_cxx/xml_index.html delete mode 100644 db/docs/api_cxx/xml_open.html delete mode 100644 db/docs/api_cxx/xml_put.html delete mode 100644 db/docs/api_cxx/xml_xparse.html delete mode 100644 db/docs/api_cxx/xml_xpath.html delete mode 100644 db/docs/api_cxx/xmlcontainer_class.html delete mode 100644 db/docs/api_cxx/xmldoc_getattr.html delete mode 100644 db/docs/api_cxx/xmldoc_getcont.html delete mode 100644 db/docs/api_cxx/xmldoc_getcontlen.html delete mode 100644 db/docs/api_cxx/xmldoc_getdom.html delete mode 100644 db/docs/api_cxx/xmldoc_getenc.html delete mode 100644 db/docs/api_cxx/xmldoc_getid.html delete mode 100644 db/docs/api_cxx/xmldoc_getname.html delete mode 100644 db/docs/api_cxx/xmldoc_gettype.html delete mode 100644 db/docs/api_cxx/xmldoc_setattr.html delete mode 100644 db/docs/api_cxx/xmldoc_setcont.html delete mode 100644 db/docs/api_cxx/xmldoc_setname.html delete mode 100644 db/docs/api_cxx/xmldoc_settype.html delete mode 100644 db/docs/api_cxx/xmldocument_class.html delete mode 100644 db/docs/api_cxx/xmlq_clearname.html delete mode 100644 db/docs/api_cxx/xmlq_getname.html delete mode 100644 db/docs/api_cxx/xmlq_getvar.html delete mode 100644 db/docs/api_cxx/xmlq_remname.html delete mode 100644 db/docs/api_cxx/xmlq_seteval.html delete mode 100644 db/docs/api_cxx/xmlq_setname.html delete mode 100644 db/docs/api_cxx/xmlq_setret.html delete mode 100644 db/docs/api_cxx/xmlq_setvar.html delete mode 100644 db/docs/api_cxx/xmlquery_class.html delete mode 100644 db/docs/api_cxx/xmlr_next.html delete mode 100644 db/docs/api_cxx/xmlr_reset.html delete mode 100644 db/docs/api_cxx/xmlresults_class.html delete mode 100644 db/docs/api_cxx/xmlvalue_class.html delete mode 100644 db/docs/api_cxx/xmlxpathexp_class.html delete mode 100644 db/docs/api_cxx/xmlxpe_get.html delete mode 100644 db/docs/api_java/dbenv_class.html delete mode 100644 db/docs/api_java/env_set_lk_max.html delete mode 100644 db/docs/api_java/env_set_mutexlocks.html delete mode 100644 db/docs/api_java/env_set_pageyield.html delete mode 100644 db/docs/api_java/env_set_panicstate.html delete mode 100644 db/docs/api_java/env_set_rec_init.html delete mode 100644 db/docs/api_java/env_set_region_init.html delete mode 100644 db/docs/api_java/env_set_server.html delete mode 100644 db/docs/api_java/env_set_tx_recover.html delete mode 100644 db/docs/api_java/get_dbt.html delete mode 100644 db/docs/api_java/get_errno.html delete mode 100644 db/docs/api_java/java_index.html delete mode 100644 db/docs/api_java/log_get.html delete mode 100644 db/docs/api_java/log_register.html delete mode 100644 db/docs/api_java/log_unregister.html delete mode 100644 db/docs/api_java/mem_class.html delete mode 100644 db/docs/api_java/memp_fget.html delete mode 100644 db/docs/api_java/memp_fput.html delete mode 100644 db/docs/api_java/memp_fset.html delete mode 100644 db/docs/api_java/xml_close.html delete mode 100644 db/docs/api_java/xml_declare.html delete mode 100644 db/docs/api_java/xml_del.html delete mode 100644 db/docs/api_java/xml_get.html delete mode 100644 db/docs/api_java/xml_getname.html delete mode 100644 db/docs/api_java/xml_index.html delete mode 100644 db/docs/api_java/xml_open.html delete mode 100644 db/docs/api_java/xml_put.html delete mode 100644 db/docs/api_java/xml_xparse.html delete mode 100644 db/docs/api_java/xml_xpath.html delete mode 100644 db/docs/api_java/xmlcontainer_class.html delete mode 100644 db/docs/api_java/xmldoc_getattr.html delete mode 100644 db/docs/api_java/xmldoc_getcont.html delete mode 100644 db/docs/api_java/xmldoc_getcontlen.html delete mode 100644 db/docs/api_java/xmldoc_getdom.html delete mode 100644 db/docs/api_java/xmldoc_getenc.html delete mode 100644 db/docs/api_java/xmldoc_getid.html delete mode 100644 db/docs/api_java/xmldoc_getname.html delete mode 100644 db/docs/api_java/xmldoc_gettype.html delete mode 100644 db/docs/api_java/xmldoc_setattr.html delete mode 100644 db/docs/api_java/xmldoc_setcont.html delete mode 100644 db/docs/api_java/xmldoc_setname.html delete mode 100644 db/docs/api_java/xmldoc_settype.html delete mode 100644 db/docs/api_java/xmldocument_class.html delete mode 100644 db/docs/api_java/xmlq_clearname.html delete mode 100644 db/docs/api_java/xmlq_getname.html delete mode 100644 db/docs/api_java/xmlq_getvar.html delete mode 100644 db/docs/api_java/xmlq_remname.html delete mode 100644 db/docs/api_java/xmlq_seteval.html delete mode 100644 db/docs/api_java/xmlq_setname.html delete mode 100644 db/docs/api_java/xmlq_setret.html delete mode 100644 db/docs/api_java/xmlq_setvar.html delete mode 100644 db/docs/api_java/xmlquery_class.html delete mode 100644 db/docs/api_java/xmlr_next.html delete mode 100644 db/docs/api_java/xmlr_reset.html delete mode 100644 db/docs/api_java/xmlresults_class.html delete mode 100644 db/docs/api_java/xmlvalue_class.html delete mode 100644 db/docs/api_java/xmlxpathexp_class.html delete mode 100644 db/docs/api_java/xmlxpe_get.html create mode 100644 db/docs/articles/inmemory/C/InMemoryDBApplication.pdf create mode 100644 db/docs/articles/inmemory/C/gettingStarted.css create mode 100644 db/docs/articles/inmemory/C/index.html delete mode 100644 db/docs/images/Oracle_BerkeleyDB_clr.bmp delete mode 100644 db/docs/images/sleepycat.gif create mode 100644 db/docs/java/com/sleepycat/bind/tuple/BigIntegerBinding.html create mode 100644 db/docs/java/com/sleepycat/bind/tuple/class-use/BigIntegerBinding.html create mode 100644 db/docs/java/com/sleepycat/db/EventHandlerAdapter.html delete mode 100644 db/docs/java/com/sleepycat/db/EventType.html create mode 100644 db/docs/java/com/sleepycat/db/ReplicationLeaseExpiredException.html create mode 100644 db/docs/java/com/sleepycat/db/ReplicationLeaseTimeoutException.html create mode 100644 db/docs/java/com/sleepycat/db/ReplicationManagerStats.html create mode 100644 db/docs/java/com/sleepycat/db/SecondaryMultiKeyCreator.html delete mode 100644 db/docs/java/com/sleepycat/db/UpdateConflictException.html create mode 100644 db/docs/java/com/sleepycat/db/VerboseConfig.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/EventHandlerAdapter.html delete mode 100644 db/docs/java/com/sleepycat/db/class-use/EventType.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/ReplicationLeaseExpiredException.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/ReplicationLeaseTimeoutException.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/ReplicationManagerStats.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/SecondaryMultiKeyCreator.html delete mode 100644 db/docs/java/com/sleepycat/db/class-use/UpdateConflictException.html create mode 100644 db/docs/java/com/sleepycat/db/class-use/VerboseConfig.html delete mode 100644 db/docs/java/packages.html delete mode 100644 db/docs/license/license_xml.html delete mode 100644 db/docs/ref/am/error.html delete mode 100644 db/docs/ref/am/partial.html delete mode 100644 db/docs/ref/am/stability.html create mode 100644 db/docs/ref/build_brew/intro.html create mode 100644 db/docs/ref/build_s60/intro.html delete mode 100644 db/docs/ref/build_win/unicode.html create mode 100644 db/docs/ref/build_wince/faq.html create mode 100644 db/docs/ref/build_wince/intro.html create mode 100644 db/docs/ref/build_wince/notes.html create mode 100644 db/docs/ref/changelog/2.1.html create mode 100644 db/docs/ref/changelog/2.2.html create mode 100644 db/docs/ref/changelog/2.3.10.html create mode 100644 db/docs/ref/changelog/2.3.11.html create mode 100644 db/docs/ref/changelog/2.3.12.html create mode 100644 db/docs/ref/changelog/2.3.14.html create mode 100644 db/docs/ref/changelog/2.3.16.html create mode 100644 db/docs/ref/changelog/2.3.5.html create mode 100644 db/docs/ref/changelog/2.3.html create mode 100644 db/docs/ref/changelog/2.4.10.html create mode 100644 db/docs/ref/changelog/2.4.14.html create mode 100644 db/docs/ref/changelog/2.5.9.html create mode 100644 db/docs/ref/changelog/2.6.4.html create mode 100644 db/docs/ref/changelog/2.6.5.html create mode 100644 db/docs/ref/changelog/2.6.6.html create mode 100644 db/docs/ref/changelog/2.6.7.html create mode 100644 db/docs/ref/changelog/2.7.1.html create mode 100644 db/docs/ref/changelog/2.7.3.html create mode 100644 db/docs/ref/changelog/2.7.4.html create mode 100644 db/docs/ref/changelog/2.7.5.html create mode 100644 db/docs/ref/changelog/2.7.7.html create mode 100644 db/docs/ref/changelog/3.0.55.html create mode 100644 db/docs/ref/changelog/3.1.14.html create mode 100644 db/docs/ref/changelog/3.1.17.html create mode 100644 db/docs/ref/changelog/3.2.9.html create mode 100644 db/docs/ref/changelog/3.3.11.html create mode 100644 db/docs/ref/changelog/4.0.14.html create mode 100644 db/docs/ref/changelog/4.1.24.html create mode 100644 db/docs/ref/changelog/4.1.25.html create mode 100644 db/docs/ref/changelog/4.2.52.html create mode 100644 db/docs/ref/changelog/4.3.29.html create mode 100644 db/docs/ref/changelog/4.4.16.html create mode 100644 db/docs/ref/changelog/4.4.20.html create mode 100644 db/docs/ref/changelog/4.5.20.html create mode 100644 db/docs/ref/changelog/4.6.html create mode 100644 db/docs/ref/changelog/toc.html delete mode 100644 db/docs/ref/debug/common.html delete mode 100644 db/docs/ref/program/byteorder.html delete mode 100644 db/docs/ref/program/dbsizes.html delete mode 100644 db/docs/ref/program/diskspace.html delete mode 100644 db/docs/ref/program/extending.html delete mode 100644 db/docs/ref/program/recimp.html delete mode 100644 db/docs/ref/program/version.html delete mode 100644 db/docs/ref/refs/bdb_usenix.html delete mode 100644 db/docs/ref/simple_tut/example.txt delete mode 100644 db/docs/ref/transapp/transapp.txt delete mode 100644 db/docs/ref/transapp/writetest.txt delete mode 100644 db/docs/ref/txn/nested.html delete mode 100644 db/docs/ref/txn/other.html create mode 100644 db/docs/ref/upgrade.4.6/cursor.html create mode 100644 db/docs/ref/upgrade.4.6/disk.html create mode 100644 db/docs/ref/upgrade.4.6/event.html create mode 100644 db/docs/ref/upgrade.4.6/full_election.html create mode 100644 db/docs/ref/upgrade.4.6/intro.html create mode 100644 db/docs/ref/upgrade.4.6/memp_fput.html create mode 100644 db/docs/ref/upgrade.4.6/memp_fset.html create mode 100644 db/docs/ref/upgrade.4.6/toc.html create mode 100644 db/docs/ref/upgrade.4.6/verb.html create mode 100644 db/docs/ref/upgrade.4.6/verbose.html create mode 100644 db/docs/ref/upgrade.4.6/win.html delete mode 100644 db/docs/ref/xa/config.html delete mode 100644 db/docs/sleepycat/legal.html delete mode 100644 db/docs/sleepycat/license.html create mode 100644 db/docs/utility/db_codegen.html create mode 100644 db/docs_src/api/frame.so create mode 100644 db/docs_src/api/object.so create mode 100644 db/docs_src/build create mode 100644 db/docs_src/db/db_associate.so create mode 100644 db/docs_src/db/db_class.so create mode 100644 db/docs_src/db/db_close.so create mode 100644 db/docs_src/db/db_compact.so create mode 100644 db/docs_src/db/db_cursor.so create mode 100644 db/docs_src/db/db_del.so create mode 100644 db/docs_src/db/db_err.so create mode 100644 db/docs_src/db/db_exists.so create mode 100644 db/docs_src/db/db_fd.so create mode 100644 db/docs_src/db/db_get.so create mode 100644 db/docs_src/db/db_get_byteswapped.so create mode 100644 db/docs_src/db/db_get_mpf.so create mode 100644 db/docs_src/db/db_get_type.so create mode 100644 db/docs_src/db/db_getenv.so create mode 100644 db/docs_src/db/db_join.so create mode 100644 db/docs_src/db/db_key_range.so create mode 100644 db/docs_src/db/db_list.so create mode 100644 db/docs_src/db/db_open.so create mode 100644 db/docs_src/db/db_put.so create mode 100644 db/docs_src/db/db_remove.so create mode 100644 db/docs_src/db/db_rename.so create mode 100644 db/docs_src/db/db_set_alloc.so create mode 100644 db/docs_src/db/db_set_append_recno.so create mode 100644 db/docs_src/db/db_set_bt_compare.so create mode 100644 db/docs_src/db/db_set_bt_minkey.so create mode 100644 db/docs_src/db/db_set_bt_prefix.so create mode 100644 db/docs_src/db/db_set_cachesize.so create mode 100644 db/docs_src/db/db_set_dup_compare.so create mode 100644 db/docs_src/db/db_set_encrypt.so create mode 100644 db/docs_src/db/db_set_errcall.so create mode 100644 db/docs_src/db/db_set_errfile.so create mode 100644 db/docs_src/db/db_set_error_stream.so create mode 100644 db/docs_src/db/db_set_errpfx.so create mode 100644 db/docs_src/db/db_set_feedback.so create mode 100644 db/docs_src/db/db_set_flags.so create mode 100644 db/docs_src/db/db_set_h_compare.so create mode 100644 db/docs_src/db/db_set_h_ffactor.so create mode 100644 db/docs_src/db/db_set_h_hash.so create mode 100644 db/docs_src/db/db_set_h_nelem.so create mode 100644 db/docs_src/db/db_set_lorder.so create mode 100644 db/docs_src/db/db_set_msg_stream.so create mode 100644 db/docs_src/db/db_set_msgcall.so create mode 100644 db/docs_src/db/db_set_msgfile.so create mode 100644 db/docs_src/db/db_set_pagesize.so create mode 100644 db/docs_src/db/db_set_priority.so create mode 100644 db/docs_src/db/db_set_q_extentsize.so create mode 100644 db/docs_src/db/db_set_re_delim.so create mode 100644 db/docs_src/db/db_set_re_len.so create mode 100644 db/docs_src/db/db_set_re_pad.so create mode 100644 db/docs_src/db/db_set_re_source.so create mode 100644 db/docs_src/db/db_stat.so create mode 100644 db/docs_src/db/db_sync.so create mode 100644 db/docs_src/db/db_truncate.so create mode 100644 db/docs_src/db/db_upgrade.so create mode 100644 db/docs_src/db/db_verify.so create mode 100644 db/docs_src/db/dbt_bulk.so create mode 100644 db/docs_src/db/dbt_bulk_class.so create mode 100644 db/docs_src/db/dbt_c.so create mode 100644 db/docs_src/db/dbt_class.so create mode 100644 db/docs_src/db/dbt_cxx.so create mode 100644 db/docs_src/db/m4.methods create mode 100644 db/docs_src/db_except/except_class.so create mode 100644 db/docs_src/db_except/runrec_class.so create mode 100644 db/docs_src/dbc/dbc_class.so create mode 100644 db/docs_src/dbc/dbc_close.so create mode 100644 db/docs_src/dbc/dbc_count.so create mode 100644 db/docs_src/dbc/dbc_del.so create mode 100644 db/docs_src/dbc/dbc_dup.so create mode 100644 db/docs_src/dbc/dbc_get.so create mode 100644 db/docs_src/dbc/dbc_list.so create mode 100644 db/docs_src/dbc/dbc_put.so create mode 100644 db/docs_src/dbc/dbc_set_priority.so create mode 100644 db/docs_src/dbc/m4.methods create mode 100644 db/docs_src/dbt/dbt_package.so create mode 100644 db/docs_src/env/api_core.so create mode 100644 db/docs_src/env/env_class.so create mode 100644 db/docs_src/env/env_close.so create mode 100644 db/docs_src/env/env_dbremove.so create mode 100644 db/docs_src/env/env_dbrename.so create mode 100644 db/docs_src/env/env_err.so create mode 100644 db/docs_src/env/env_event_notify.so create mode 100644 db/docs_src/env/env_failchk.so create mode 100644 db/docs_src/env/env_fileid_reset.so create mode 100644 db/docs_src/env/env_list.so create mode 100644 db/docs_src/env/env_lsn_reset.so create mode 100644 db/docs_src/env/env_open.so create mode 100644 db/docs_src/env/env_remove.so create mode 100644 db/docs_src/env/env_set_alloc.so create mode 100644 db/docs_src/env/env_set_app_dispatch.so create mode 100644 db/docs_src/env/env_set_cachesize.so create mode 100644 db/docs_src/env/env_set_data_dir.so create mode 100644 db/docs_src/env/env_set_encrypt.so create mode 100644 db/docs_src/env/env_set_errcall.so create mode 100644 db/docs_src/env/env_set_errfile.so create mode 100644 db/docs_src/env/env_set_error_stream.so create mode 100644 db/docs_src/env/env_set_errpfx.so create mode 100644 db/docs_src/env/env_set_feedback.so create mode 100644 db/docs_src/env/env_set_flags.so create mode 100644 db/docs_src/env/env_set_isalive.so create mode 100644 db/docs_src/env/env_set_msg_stream.so create mode 100644 db/docs_src/env/env_set_msgcall.so create mode 100644 db/docs_src/env/env_set_msgfile.so create mode 100644 db/docs_src/env/env_set_rpc_server.so create mode 100644 db/docs_src/env/env_set_shm_key.so create mode 100644 db/docs_src/env/env_set_thread_count.so create mode 100644 db/docs_src/env/env_set_thread_id.so create mode 100644 db/docs_src/env/env_set_thread_id_string.so create mode 100644 db/docs_src/env/env_set_timeout.so create mode 100644 db/docs_src/env/env_set_tmp_dir.so create mode 100644 db/docs_src/env/env_set_verbose.so create mode 100644 db/docs_src/env/env_stat.so create mode 100644 db/docs_src/env/env_strerror.so create mode 100644 db/docs_src/env/env_version.so create mode 100644 db/docs_src/env/m4.methods create mode 100644 db/docs_src/exc/exc_package.so create mode 100644 db/docs_src/historic/dbm.so create mode 100644 db/docs_src/historic/hsearch.so create mode 100644 db/docs_src/images/api.gif create mode 100644 db/docs_src/images/next.gif create mode 100644 db/docs_src/images/prev.gif create mode 100644 db/docs_src/images/ps.gif create mode 100644 db/docs_src/images/ref.gif create mode 100644 db/docs_src/index_db.html create mode 100644 db/docs_src/license/license_db.so create mode 100644 db/docs_src/lock/deadlock_class.so create mode 100644 db/docs_src/lock/env_cdsgroup_begin.so create mode 100644 db/docs_src/lock/env_set_lk_conflicts.so create mode 100644 db/docs_src/lock/env_set_lk_detect.so create mode 100644 db/docs_src/lock/env_set_lk_max_lockers.so create mode 100644 db/docs_src/lock/env_set_lk_max_locks.so create mode 100644 db/docs_src/lock/env_set_lk_max_objects.so create mode 100644 db/docs_src/lock/lock_class.so create mode 100644 db/docs_src/lock/lock_detect.so create mode 100644 db/docs_src/lock/lock_get.so create mode 100644 db/docs_src/lock/lock_id.so create mode 100644 db/docs_src/lock/lock_id_free.so create mode 100644 db/docs_src/lock/lock_list.so create mode 100644 db/docs_src/lock/lock_put.so create mode 100644 db/docs_src/lock/lock_stat.so create mode 100644 db/docs_src/lock/lock_vec.so create mode 100644 db/docs_src/lock/lockng_class.so create mode 100644 db/docs_src/lock/m4.methods create mode 100644 db/docs_src/log/env_set_lg_bsize.so create mode 100644 db/docs_src/log/env_set_lg_dir.so create mode 100644 db/docs_src/log/env_set_lg_max.so create mode 100644 db/docs_src/log/env_set_lg_mode.so create mode 100644 db/docs_src/log/env_set_lg_regionmax.so create mode 100644 db/docs_src/log/log_archive.so create mode 100644 db/docs_src/log/log_compare.so create mode 100644 db/docs_src/log/log_cursor.so create mode 100644 db/docs_src/log/log_file.so create mode 100644 db/docs_src/log/log_flush.so create mode 100644 db/docs_src/log/log_list.so create mode 100644 db/docs_src/log/log_printf.so create mode 100644 db/docs_src/log/log_put.so create mode 100644 db/docs_src/log/log_stat.so create mode 100644 db/docs_src/log/logc_class.so create mode 100644 db/docs_src/log/logc_close.so create mode 100644 db/docs_src/log/logc_get.so create mode 100644 db/docs_src/log/lsn_class.so create mode 100644 db/docs_src/log/m4.methods create mode 100644 db/docs_src/m4/m4.db create mode 100644 db/docs_src/m4/m4.err create mode 100644 db/docs_src/m4/m4.flags create mode 100644 db/docs_src/m4/m4.html create mode 100644 db/docs_src/m4/m4.init create mode 100644 db/docs_src/m4/m4.links create mode 100644 db/docs_src/m4/m4.ret create mode 100644 db/docs_src/m4/m4.seealso create mode 100644 db/docs_src/m4/m4.utility create mode 100644 db/docs_src/memp/env_set_cache_max.so create mode 100644 db/docs_src/memp/env_set_mp_mmapsize.so create mode 100644 db/docs_src/memp/m4.methods create mode 100644 db/docs_src/memp/memp_class.so create mode 100644 db/docs_src/memp/memp_fclose.so create mode 100644 db/docs_src/memp/memp_fcreate.so create mode 100644 db/docs_src/memp/memp_fget.so create mode 100644 db/docs_src/memp/memp_fopen.so create mode 100644 db/docs_src/memp/memp_fput.so create mode 100644 db/docs_src/memp/memp_fsync.so create mode 100644 db/docs_src/memp/memp_list.so create mode 100644 db/docs_src/memp/memp_maxwrite.so create mode 100644 db/docs_src/memp/memp_openfd.so create mode 100644 db/docs_src/memp/memp_register.so create mode 100644 db/docs_src/memp/memp_set_clear_len.so create mode 100644 db/docs_src/memp/memp_set_fileid.so create mode 100644 db/docs_src/memp/memp_set_flags.so create mode 100644 db/docs_src/memp/memp_set_ftype.so create mode 100644 db/docs_src/memp/memp_set_lsn_offset.so create mode 100644 db/docs_src/memp/memp_set_maxsize.so create mode 100644 db/docs_src/memp/memp_set_pgcookie.so create mode 100644 db/docs_src/memp/memp_set_priority.so create mode 100644 db/docs_src/memp/memp_stat.so create mode 100644 db/docs_src/memp/memp_sync.so create mode 100644 db/docs_src/memp/memp_trickle.so create mode 100644 db/docs_src/memp/mempfile_class.so create mode 100644 db/docs_src/mutex/m4.methods create mode 100644 db/docs_src/mutex/mutex_alloc.so create mode 100644 db/docs_src/mutex/mutex_free.so create mode 100644 db/docs_src/mutex/mutex_list.so create mode 100644 db/docs_src/mutex/mutex_lock.so create mode 100644 db/docs_src/mutex/mutex_set_align.so create mode 100644 db/docs_src/mutex/mutex_set_max.so create mode 100644 db/docs_src/mutex/mutex_set_tas_spins.so create mode 100644 db/docs_src/mutex/mutex_stat.so create mode 100644 db/docs_src/mutex/mutex_unlock.so create mode 100644 db/docs_src/ref/am/close.so create mode 100644 db/docs_src/ref/am/count.so create mode 100644 db/docs_src/ref/am/curclose.so create mode 100644 db/docs_src/ref/am/curdel.so create mode 100644 db/docs_src/ref/am/curdup.so create mode 100644 db/docs_src/ref/am/curget.cs create mode 100644 db/docs_src/ref/am/curget.so create mode 100644 db/docs_src/ref/am/curput.cs create mode 100644 db/docs_src/ref/am/curput.so create mode 100644 db/docs_src/ref/am/cursor.so create mode 100644 db/docs_src/ref/am/delete.so create mode 100644 db/docs_src/ref/am/get.so create mode 100644 db/docs_src/ref/am/join.cs create mode 100644 db/docs_src/ref/am/join.so create mode 100644 db/docs_src/ref/am/open.so create mode 100644 db/docs_src/ref/am/opensub.so create mode 100644 db/docs_src/ref/am/ops.so create mode 100644 db/docs_src/ref/am/put.so create mode 100644 db/docs_src/ref/am/second.javas create mode 100644 db/docs_src/ref/am/second.so create mode 100644 db/docs_src/ref/am/second1.cs create mode 100644 db/docs_src/ref/am/second2.cs create mode 100644 db/docs_src/ref/am/second3.cs create mode 100644 db/docs_src/ref/am/second4.cs create mode 100644 db/docs_src/ref/am/second5.cs create mode 100644 db/docs_src/ref/am/stat.so create mode 100644 db/docs_src/ref/am/sync.so create mode 100644 db/docs_src/ref/am/truncate.so create mode 100644 db/docs_src/ref/am/upgrade.so create mode 100644 db/docs_src/ref/am/verify.so create mode 100644 db/docs_src/ref/am_conf/bt_compare.so create mode 100644 db/docs_src/ref/am_conf/bt_compare1.cs create mode 100644 db/docs_src/ref/am_conf/bt_compare2.cs create mode 100644 db/docs_src/ref/am_conf/bt_minkey.so create mode 100644 db/docs_src/ref/am_conf/bt_prefix.cs create mode 100644 db/docs_src/ref/am_conf/bt_prefix.so create mode 100644 db/docs_src/ref/am_conf/bt_recnum.so create mode 100644 db/docs_src/ref/am_conf/bt_recnum1.cs create mode 100644 db/docs_src/ref/am_conf/bt_recnum2.cs create mode 100644 db/docs_src/ref/am_conf/byteorder.so create mode 100644 db/docs_src/ref/am_conf/cachesize.so create mode 100644 db/docs_src/ref/am_conf/dup.so create mode 100644 db/docs_src/ref/am_conf/extentsize.so create mode 100644 db/docs_src/ref/am_conf/h_ffactor.so create mode 100644 db/docs_src/ref/am_conf/h_hash.so create mode 100644 db/docs_src/ref/am_conf/h_nelem.so create mode 100644 db/docs_src/ref/am_conf/intro.so create mode 100644 db/docs_src/ref/am_conf/logrec.cs create mode 100644 db/docs_src/ref/am_conf/logrec.so create mode 100644 db/docs_src/ref/am_conf/malloc.so create mode 100644 db/docs_src/ref/am_conf/pagesize.so create mode 100644 db/docs_src/ref/am_conf/re_source.so create mode 100644 db/docs_src/ref/am_conf/recno.so create mode 100644 db/docs_src/ref/am_conf/renumber.so create mode 100644 db/docs_src/ref/am_conf/select.so create mode 100644 db/docs_src/ref/am_misc/align.so create mode 100644 db/docs_src/ref/am_misc/dbsizes.so create mode 100644 db/docs_src/ref/am_misc/diskspace.so create mode 100644 db/docs_src/ref/am_misc/error.so create mode 100644 db/docs_src/ref/am_misc/error1.cs create mode 100644 db/docs_src/ref/am_misc/error2.cs create mode 100644 db/docs_src/ref/am_misc/faq.so create mode 100644 db/docs_src/ref/am_misc/get_bulk.cs create mode 100644 db/docs_src/ref/am_misc/get_bulk.so create mode 100644 db/docs_src/ref/am_misc/partial.so create mode 100644 db/docs_src/ref/am_misc/perm.so create mode 100644 db/docs_src/ref/am_misc/stability.so create mode 100644 db/docs_src/ref/am_misc/struct.so create mode 100644 db/docs_src/ref/am_misc/tune.so create mode 100644 db/docs_src/ref/apprec/auto.so create mode 100644 db/docs_src/ref/apprec/config.so create mode 100644 db/docs_src/ref/apprec/def.so create mode 100644 db/docs_src/ref/apprec/intro.so create mode 100644 db/docs_src/ref/arch/apis.so create mode 100644 db/docs_src/ref/arch/bigpic.fig create mode 100644 db/docs_src/ref/arch/bigpic.gif create mode 100644 db/docs_src/ref/arch/bigpic.pic create mode 100644 db/docs_src/ref/arch/bigpic.so create mode 100644 db/docs_src/ref/arch/bigpic1.cs create mode 100644 db/docs_src/ref/arch/bigpic2.cs create mode 100644 db/docs_src/ref/arch/progmodel.so create mode 100644 db/docs_src/ref/arch/script.so create mode 100644 db/docs_src/ref/arch/smallpic.fig create mode 100644 db/docs_src/ref/arch/smallpic.gif create mode 100644 db/docs_src/ref/arch/smallpic.pic create mode 100644 db/docs_src/ref/arch/utilities.so create mode 100644 db/docs_src/ref/build_brew/intro.so create mode 100644 db/docs_src/ref/build_s60/intro.so create mode 100644 db/docs_src/ref/build_unix/aix.so create mode 100644 db/docs_src/ref/build_unix/conf.so create mode 100644 db/docs_src/ref/build_unix/flags.so create mode 100644 db/docs_src/ref/build_unix/freebsd.so create mode 100644 db/docs_src/ref/build_unix/hpux.so create mode 100644 db/docs_src/ref/build_unix/install.so create mode 100644 db/docs_src/ref/build_unix/intro.so create mode 100644 db/docs_src/ref/build_unix/irix.so create mode 100644 db/docs_src/ref/build_unix/linux.so create mode 100644 db/docs_src/ref/build_unix/macosx.so create mode 100644 db/docs_src/ref/build_unix/notes.so create mode 100644 db/docs_src/ref/build_unix/osf1.so create mode 100644 db/docs_src/ref/build_unix/qnx.so create mode 100644 db/docs_src/ref/build_unix/sco.so create mode 100644 db/docs_src/ref/build_unix/shlib.so create mode 100644 db/docs_src/ref/build_unix/small.so create mode 100644 db/docs_src/ref/build_unix/solaris.so create mode 100644 db/docs_src/ref/build_unix/sunos.so create mode 100644 db/docs_src/ref/build_unix/test.so create mode 100644 db/docs_src/ref/build_unix/ultrix.so create mode 100644 db/docs_src/ref/build_vxworks/faq.so create mode 100644 db/docs_src/ref/build_vxworks/intro.so create mode 100644 db/docs_src/ref/build_vxworks/introae.so create mode 100644 db/docs_src/ref/build_vxworks/notes.so create mode 100644 db/docs_src/ref/build_win/faq.so create mode 100644 db/docs_src/ref/build_win/intro.so create mode 100644 db/docs_src/ref/build_win/notes.so create mode 100644 db/docs_src/ref/build_win/small.so create mode 100644 db/docs_src/ref/build_win/test.so create mode 100644 db/docs_src/ref/build_wince/faq.so create mode 100644 db/docs_src/ref/build_wince/intro.so create mode 100644 db/docs_src/ref/build_wince/notes.so create mode 100644 db/docs_src/ref/cam/app.so create mode 100644 db/docs_src/ref/cam/fail.so create mode 100644 db/docs_src/ref/cam/intro.so create mode 100644 db/docs_src/ref/changelog/2.1.html create mode 100644 db/docs_src/ref/changelog/2.2.html create mode 100644 db/docs_src/ref/changelog/2.3.10.html create mode 100644 db/docs_src/ref/changelog/2.3.11.html create mode 100644 db/docs_src/ref/changelog/2.3.12.html create mode 100644 db/docs_src/ref/changelog/2.3.14.html create mode 100644 db/docs_src/ref/changelog/2.3.16.html create mode 100644 db/docs_src/ref/changelog/2.3.5.html create mode 100644 db/docs_src/ref/changelog/2.3.html create mode 100644 db/docs_src/ref/changelog/2.4.10.html create mode 100644 db/docs_src/ref/changelog/2.4.14.html create mode 100644 db/docs_src/ref/changelog/2.5.9.html create mode 100644 db/docs_src/ref/changelog/2.6.4.html create mode 100644 db/docs_src/ref/changelog/2.6.5.html create mode 100644 db/docs_src/ref/changelog/2.6.6.html create mode 100644 db/docs_src/ref/changelog/2.6.7.html create mode 100644 db/docs_src/ref/changelog/2.7.1.html create mode 100644 db/docs_src/ref/changelog/2.7.3.html create mode 100644 db/docs_src/ref/changelog/2.7.4.html create mode 100644 db/docs_src/ref/changelog/2.7.5.html create mode 100644 db/docs_src/ref/changelog/2.7.7.html create mode 100644 db/docs_src/ref/changelog/3.0.55.html create mode 100644 db/docs_src/ref/changelog/3.1.14.html create mode 100644 db/docs_src/ref/changelog/3.1.17.html create mode 100644 db/docs_src/ref/changelog/3.2.9.html create mode 100644 db/docs_src/ref/changelog/3.3.11.html create mode 100644 db/docs_src/ref/changelog/4.0.14.html create mode 100644 db/docs_src/ref/changelog/4.1.24.html create mode 100644 db/docs_src/ref/changelog/4.1.25.html create mode 100644 db/docs_src/ref/changelog/4.2.52.html create mode 100644 db/docs_src/ref/changelog/4.3.29.html create mode 100644 db/docs_src/ref/changelog/4.4.16.html create mode 100644 db/docs_src/ref/changelog/4.4.20.html create mode 100644 db/docs_src/ref/changelog/4.5.20.html create mode 100644 db/docs_src/ref/changelog/4.6.html create mode 100644 db/docs_src/ref/changelog/spell.ok create mode 100644 db/docs_src/ref/changelog/toc.so create mode 100644 db/docs_src/ref/debug/compile.so create mode 100644 db/docs_src/ref/debug/intro.so create mode 100644 db/docs_src/ref/debug/printlog.so create mode 100644 db/docs_src/ref/debug/runtime.so create mode 100644 db/docs_src/ref/distrib/layout.so create mode 100644 db/docs_src/ref/distrib/port.so create mode 100644 db/docs_src/ref/dumpload/format.so create mode 100644 db/docs_src/ref/dumpload/text.so create mode 100644 db/docs_src/ref/dumpload/utility.so create mode 100644 db/docs_src/ref/env/create.cs create mode 100644 db/docs_src/ref/env/create.so create mode 100644 db/docs_src/ref/env/db_config.so create mode 100644 db/docs_src/ref/env/encrypt.so create mode 100644 db/docs_src/ref/env/error.so create mode 100644 db/docs_src/ref/env/error1.cs create mode 100644 db/docs_src/ref/env/error2.cs create mode 100644 db/docs_src/ref/env/faq.so create mode 100644 db/docs_src/ref/env/intro.so create mode 100644 db/docs_src/ref/env/naming.so create mode 100644 db/docs_src/ref/env/naming1.cs create mode 100644 db/docs_src/ref/env/naming2.cs create mode 100644 db/docs_src/ref/env/naming3.cs create mode 100644 db/docs_src/ref/env/naming4.cs create mode 100644 db/docs_src/ref/env/open.cs create mode 100644 db/docs_src/ref/env/open.so create mode 100644 db/docs_src/ref/env/region.so create mode 100644 db/docs_src/ref/env/remote.so create mode 100644 db/docs_src/ref/env/security.so create mode 100644 db/docs_src/ref/ext/mod.so create mode 100644 db/docs_src/ref/ext/perl.so create mode 100644 db/docs_src/ref/ext/php.so create mode 100644 db/docs_src/ref/install/ARCHIVE/README create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.BE.185 create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.BE.186 create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.BE.2 create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.LE.185 create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.LE.186 create mode 100644 db/docs_src/ref/install/ARCHIVE/__B.LE.2 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.BE.185 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.BE.186 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.BE.2 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.LE.185 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.LE.186 create mode 100644 db/docs_src/ref/install/ARCHIVE/__H.LE.2 create mode 100644 db/docs_src/ref/install/file.so create mode 100644 db/docs_src/ref/install/magic.s5.be.txt create mode 100644 db/docs_src/ref/install/magic.s5.le.txt create mode 100644 db/docs_src/ref/install/magic.txt create mode 100644 db/docs_src/ref/install/multiple.so create mode 100644 db/docs_src/ref/intro/data.so create mode 100644 db/docs_src/ref/intro/dbis.so create mode 100644 db/docs_src/ref/intro/dbisnot.so create mode 100644 db/docs_src/ref/intro/distrib.so create mode 100644 db/docs_src/ref/intro/need.so create mode 100644 db/docs_src/ref/intro/products.so create mode 100644 db/docs_src/ref/intro/terrain.so create mode 100644 db/docs_src/ref/intro/what.so create mode 100644 db/docs_src/ref/intro/where.so create mode 100644 db/docs_src/ref/java/compat.so create mode 100644 db/docs_src/ref/java/conf.so create mode 100644 db/docs_src/ref/java/faq.so create mode 100644 db/docs_src/ref/java/program.so create mode 100644 db/docs_src/ref/lock/am_conv.so create mode 100644 db/docs_src/ref/lock/cam_conv.so create mode 100644 db/docs_src/ref/lock/config.so create mode 100644 db/docs_src/ref/lock/dead.so create mode 100644 db/docs_src/ref/lock/deaddbg.so create mode 100644 db/docs_src/ref/lock/intro.so create mode 100644 db/docs_src/ref/lock/max.so create mode 100644 db/docs_src/ref/lock/nondb.so create mode 100644 db/docs_src/ref/lock/notxn.so create mode 100644 db/docs_src/ref/lock/page.so create mode 100644 db/docs_src/ref/lock/stdmode.so create mode 100644 db/docs_src/ref/lock/timeout.so create mode 100644 db/docs_src/ref/lock/twopl.so create mode 100644 db/docs_src/ref/log/config.so create mode 100644 db/docs_src/ref/log/intro.so create mode 100644 db/docs_src/ref/log/limits.so create mode 100644 db/docs_src/ref/mp/config.so create mode 100644 db/docs_src/ref/mp/intro.so create mode 100644 db/docs_src/ref/program/appsignals.so create mode 100644 db/docs_src/ref/program/cache.so create mode 100644 db/docs_src/ref/program/compatible.so create mode 100644 db/docs_src/ref/program/copy.so create mode 100644 db/docs_src/ref/program/environ.so create mode 100644 db/docs_src/ref/program/errorret.so create mode 100644 db/docs_src/ref/program/faq.so create mode 100644 db/docs_src/ref/program/mt.so create mode 100644 db/docs_src/ref/program/namespace.so create mode 100644 db/docs_src/ref/program/ram.so create mode 100644 db/docs_src/ref/program/runtime.so create mode 100644 db/docs_src/ref/program/scope.so create mode 100644 db/docs_src/ref/program/solaris.txt create mode 100644 db/docs_src/ref/refs/bdb_usenix.ps create mode 100644 db/docs_src/ref/refs/embedded.html create mode 100644 db/docs_src/ref/refs/hash_usenix.ps create mode 100644 db/docs_src/ref/refs/libtp_usenix.ps create mode 100644 db/docs_src/ref/refs/refs.so create mode 100644 db/docs_src/ref/refs/witold.so create mode 100644 db/docs_src/ref/rep/app.so create mode 100644 db/docs_src/ref/rep/base_meth.so create mode 100644 db/docs_src/ref/rep/bulk.so create mode 100644 db/docs_src/ref/rep/comm.so create mode 100644 db/docs_src/ref/rep/elect.so create mode 100644 db/docs_src/ref/rep/ex.so create mode 100644 db/docs_src/ref/rep/ex_comm.so create mode 100644 db/docs_src/ref/rep/ex_rq.so create mode 100644 db/docs_src/ref/rep/faq.so create mode 100644 db/docs_src/ref/rep/id.so create mode 100644 db/docs_src/ref/rep/init.so create mode 100644 db/docs_src/ref/rep/intro.so create mode 100644 db/docs_src/ref/rep/mastersync.so create mode 100644 db/docs_src/ref/rep/mgr_meth.so create mode 100644 db/docs_src/ref/rep/newsite.so create mode 100644 db/docs_src/ref/rep/partition.so create mode 100644 db/docs_src/ref/rep/pri.so create mode 100644 db/docs_src/ref/rep/trans.so create mode 100644 db/docs_src/ref/rpc/client.so create mode 100644 db/docs_src/ref/rpc/faq.so create mode 100644 db/docs_src/ref/rpc/intro.so create mode 100644 db/docs_src/ref/rpc/server.so create mode 100644 db/docs_src/ref/sequence/intro.so create mode 100644 db/docs_src/ref/spell.ok create mode 100644 db/docs_src/ref/tcl/error.so create mode 100644 db/docs_src/ref/tcl/faq.so create mode 100644 db/docs_src/ref/tcl/intro.so create mode 100644 db/docs_src/ref/tcl/program.so create mode 100644 db/docs_src/ref/tcl/using.so create mode 100644 db/docs_src/ref/test/faq.so create mode 100644 db/docs_src/ref/test/run.so create mode 100644 db/docs_src/ref/toc.html create mode 100644 db/docs_src/ref/transapp/admin.so create mode 100644 db/docs_src/ref/transapp/app.so create mode 100644 db/docs_src/ref/transapp/archival.cs create mode 100644 db/docs_src/ref/transapp/archival.so create mode 100644 db/docs_src/ref/transapp/atomicity.so create mode 100644 db/docs_src/ref/transapp/checkpoint.cs create mode 100644 db/docs_src/ref/transapp/checkpoint.so create mode 100644 db/docs_src/ref/transapp/cursor.cs create mode 100644 db/docs_src/ref/transapp/cursor.so create mode 100644 db/docs_src/ref/transapp/data_open.cs create mode 100644 db/docs_src/ref/transapp/data_open.so create mode 100644 db/docs_src/ref/transapp/deadlock.cs create mode 100644 db/docs_src/ref/transapp/deadlock.so create mode 100644 db/docs_src/ref/transapp/env_open.cs create mode 100644 db/docs_src/ref/transapp/env_open.so create mode 100644 db/docs_src/ref/transapp/fail.so create mode 100644 db/docs_src/ref/transapp/faq.so create mode 100644 db/docs_src/ref/transapp/filesys.so create mode 100644 db/docs_src/ref/transapp/hotfail.so create mode 100644 db/docs_src/ref/transapp/inc.cs create mode 100644 db/docs_src/ref/transapp/inc.so create mode 100644 db/docs_src/ref/transapp/intro.so create mode 100644 db/docs_src/ref/transapp/logfile.cs create mode 100644 db/docs_src/ref/transapp/logfile.so create mode 100644 db/docs_src/ref/transapp/nested.so create mode 100644 db/docs_src/ref/transapp/put.cs create mode 100644 db/docs_src/ref/transapp/put.so create mode 100644 db/docs_src/ref/transapp/put2.cs create mode 100644 db/docs_src/ref/transapp/read.so create mode 100644 db/docs_src/ref/transapp/reclimit.so create mode 100644 db/docs_src/ref/transapp/recovery.so create mode 100644 db/docs_src/ref/transapp/term.so create mode 100644 db/docs_src/ref/transapp/throughput.so create mode 100644 db/docs_src/ref/transapp/transapp.cs create mode 100644 db/docs_src/ref/transapp/tune.so create mode 100644 db/docs_src/ref/transapp/why.so create mode 100644 db/docs_src/ref/transapp/writetest.cs create mode 100644 db/docs_src/ref/txn/config.so create mode 100644 db/docs_src/ref/txn/intro.so create mode 100644 db/docs_src/ref/txn/limits.so create mode 100644 db/docs_src/ref/upgrade.2.0/convert.so create mode 100644 db/docs_src/ref/upgrade.2.0/disk.so create mode 100644 db/docs_src/ref/upgrade.2.0/intro.so create mode 100644 db/docs_src/ref/upgrade.2.0/system.so create mode 100644 db/docs_src/ref/upgrade.2.0/toc.so create mode 100644 db/docs_src/ref/upgrade.3.0/close.so create mode 100644 db/docs_src/ref/upgrade.3.0/cxx.so create mode 100644 db/docs_src/ref/upgrade.3.0/db.so create mode 100644 db/docs_src/ref/upgrade.3.0/db_cxx.so create mode 100644 db/docs_src/ref/upgrade.3.0/dbenv.so create mode 100644 db/docs_src/ref/upgrade.3.0/dbenv_cxx.so create mode 100644 db/docs_src/ref/upgrade.3.0/dbinfo.so create mode 100644 db/docs_src/ref/upgrade.3.0/disk.so create mode 100644 db/docs_src/ref/upgrade.3.0/eacces.so create mode 100644 db/docs_src/ref/upgrade.3.0/eagain.so create mode 100644 db/docs_src/ref/upgrade.3.0/envopen.so create mode 100644 db/docs_src/ref/upgrade.3.0/func.so create mode 100644 db/docs_src/ref/upgrade.3.0/intro.so create mode 100644 db/docs_src/ref/upgrade.3.0/java.so create mode 100644 db/docs_src/ref/upgrade.3.0/join.so create mode 100644 db/docs_src/ref/upgrade.3.0/jump_set.so create mode 100644 db/docs_src/ref/upgrade.3.0/lock_detect.so create mode 100644 db/docs_src/ref/upgrade.3.0/lock_notheld.so create mode 100644 db/docs_src/ref/upgrade.3.0/lock_put.so create mode 100644 db/docs_src/ref/upgrade.3.0/lock_stat.so create mode 100644 db/docs_src/ref/upgrade.3.0/log_register.so create mode 100644 db/docs_src/ref/upgrade.3.0/log_stat.so create mode 100644 db/docs_src/ref/upgrade.3.0/memp_stat.so create mode 100644 db/docs_src/ref/upgrade.3.0/open.so create mode 100644 db/docs_src/ref/upgrade.3.0/rmw.so create mode 100644 db/docs_src/ref/upgrade.3.0/stat.so create mode 100644 db/docs_src/ref/upgrade.3.0/toc.so create mode 100644 db/docs_src/ref/upgrade.3.0/txn_begin.so create mode 100644 db/docs_src/ref/upgrade.3.0/txn_commit.so create mode 100644 db/docs_src/ref/upgrade.3.0/txn_stat.so create mode 100644 db/docs_src/ref/upgrade.3.0/value_set.so create mode 100644 db/docs_src/ref/upgrade.3.0/xa.so create mode 100644 db/docs_src/ref/upgrade.3.1/btstat.so create mode 100644 db/docs_src/ref/upgrade.3.1/config.so create mode 100644 db/docs_src/ref/upgrade.3.1/disk.so create mode 100644 db/docs_src/ref/upgrade.3.1/dup.so create mode 100644 db/docs_src/ref/upgrade.3.1/env.so create mode 100644 db/docs_src/ref/upgrade.3.1/intro.so create mode 100644 db/docs_src/ref/upgrade.3.1/log_register.so create mode 100644 db/docs_src/ref/upgrade.3.1/logalloc.so create mode 100644 db/docs_src/ref/upgrade.3.1/memp_register.so create mode 100644 db/docs_src/ref/upgrade.3.1/put.so create mode 100644 db/docs_src/ref/upgrade.3.1/set_feedback.so create mode 100644 db/docs_src/ref/upgrade.3.1/set_paniccall.so create mode 100644 db/docs_src/ref/upgrade.3.1/set_tx_recover.so create mode 100644 db/docs_src/ref/upgrade.3.1/sysmem.so create mode 100644 db/docs_src/ref/upgrade.3.1/tcl.so create mode 100644 db/docs_src/ref/upgrade.3.1/tmp.so create mode 100644 db/docs_src/ref/upgrade.3.1/toc.so create mode 100644 db/docs_src/ref/upgrade.3.1/txn_check.so create mode 100644 db/docs_src/ref/upgrade.3.2/callback.so create mode 100644 db/docs_src/ref/upgrade.3.2/db_dump.so create mode 100644 db/docs_src/ref/upgrade.3.2/disk.so create mode 100644 db/docs_src/ref/upgrade.3.2/handle.so create mode 100644 db/docs_src/ref/upgrade.3.2/incomplete.so create mode 100644 db/docs_src/ref/upgrade.3.2/intro.so create mode 100644 db/docs_src/ref/upgrade.3.2/mutexlock.so create mode 100644 db/docs_src/ref/upgrade.3.2/notfound.so create mode 100644 db/docs_src/ref/upgrade.3.2/renumber.so create mode 100644 db/docs_src/ref/upgrade.3.2/set_flags.so create mode 100644 db/docs_src/ref/upgrade.3.2/toc.so create mode 100644 db/docs_src/ref/upgrade.3.2/tx_recover.so create mode 100644 db/docs_src/ref/upgrade.3.3/alloc.so create mode 100644 db/docs_src/ref/upgrade.3.3/bigfile.so create mode 100644 db/docs_src/ref/upgrade.3.3/conflict.so create mode 100644 db/docs_src/ref/upgrade.3.3/disk.so create mode 100644 db/docs_src/ref/upgrade.3.3/getswap.so create mode 100644 db/docs_src/ref/upgrade.3.3/gettype.so create mode 100644 db/docs_src/ref/upgrade.3.3/intro.so create mode 100644 db/docs_src/ref/upgrade.3.3/memp_fget.so create mode 100644 db/docs_src/ref/upgrade.3.3/rpc.so create mode 100644 db/docs_src/ref/upgrade.3.3/shared.so create mode 100644 db/docs_src/ref/upgrade.3.3/toc.so create mode 100644 db/docs_src/ref/upgrade.3.3/txn_prepare.so create mode 100644 db/docs_src/ref/upgrade.4.0/asr.so create mode 100644 db/docs_src/ref/upgrade.4.0/cxx.so create mode 100644 db/docs_src/ref/upgrade.4.0/deadlock.so create mode 100644 db/docs_src/ref/upgrade.4.0/disk.so create mode 100644 db/docs_src/ref/upgrade.4.0/env.so create mode 100644 db/docs_src/ref/upgrade.4.0/intro.so create mode 100644 db/docs_src/ref/upgrade.4.0/java.so create mode 100644 db/docs_src/ref/upgrade.4.0/lock.so create mode 100644 db/docs_src/ref/upgrade.4.0/lock_id_free.so create mode 100644 db/docs_src/ref/upgrade.4.0/log.so create mode 100644 db/docs_src/ref/upgrade.4.0/mp.so create mode 100644 db/docs_src/ref/upgrade.4.0/rpc.so create mode 100644 db/docs_src/ref/upgrade.4.0/set_lk_max.so create mode 100644 db/docs_src/ref/upgrade.4.0/toc.so create mode 100644 db/docs_src/ref/upgrade.4.0/txn.so create mode 100644 db/docs_src/ref/upgrade.4.1/app_dispatch.so create mode 100644 db/docs_src/ref/upgrade.4.1/checkpoint.so create mode 100644 db/docs_src/ref/upgrade.4.1/cxx.so create mode 100644 db/docs_src/ref/upgrade.4.1/disk.so create mode 100644 db/docs_src/ref/upgrade.4.1/excl.so create mode 100644 db/docs_src/ref/upgrade.4.1/fop.so create mode 100644 db/docs_src/ref/upgrade.4.1/hash_nelem.so create mode 100644 db/docs_src/ref/upgrade.4.1/incomplete.so create mode 100644 db/docs_src/ref/upgrade.4.1/intro.so create mode 100644 db/docs_src/ref/upgrade.4.1/java.so create mode 100644 db/docs_src/ref/upgrade.4.1/log_register.so create mode 100644 db/docs_src/ref/upgrade.4.1/log_stat.so create mode 100644 db/docs_src/ref/upgrade.4.1/memp_sync.so create mode 100644 db/docs_src/ref/upgrade.4.1/toc.so create mode 100644 db/docs_src/ref/upgrade.4.2/cksum.so create mode 100644 db/docs_src/ref/upgrade.4.2/client.so create mode 100644 db/docs_src/ref/upgrade.4.2/del.so create mode 100644 db/docs_src/ref/upgrade.4.2/disk.so create mode 100644 db/docs_src/ref/upgrade.4.2/intro.so create mode 100644 db/docs_src/ref/upgrade.4.2/java.so create mode 100644 db/docs_src/ref/upgrade.4.2/lockng.so create mode 100644 db/docs_src/ref/upgrade.4.2/nosync.so create mode 100644 db/docs_src/ref/upgrade.4.2/priority.so create mode 100644 db/docs_src/ref/upgrade.4.2/queue.so create mode 100644 db/docs_src/ref/upgrade.4.2/repinit.so create mode 100644 db/docs_src/ref/upgrade.4.2/tcl.so create mode 100644 db/docs_src/ref/upgrade.4.2/toc.so create mode 100644 db/docs_src/ref/upgrade.4.2/verify.so create mode 100644 db/docs_src/ref/upgrade.4.3/cput.so create mode 100644 db/docs_src/ref/upgrade.4.3/disk.so create mode 100644 db/docs_src/ref/upgrade.4.3/enomem.so create mode 100644 db/docs_src/ref/upgrade.4.3/err.so create mode 100644 db/docs_src/ref/upgrade.4.3/fileopen.so create mode 100644 db/docs_src/ref/upgrade.4.3/intro.so create mode 100644 db/docs_src/ref/upgrade.4.3/java.so create mode 100644 db/docs_src/ref/upgrade.4.3/log.so create mode 100644 db/docs_src/ref/upgrade.4.3/repl.so create mode 100644 db/docs_src/ref/upgrade.4.3/rtc.so create mode 100644 db/docs_src/ref/upgrade.4.3/stat.so create mode 100644 db/docs_src/ref/upgrade.4.3/toc.so create mode 100644 db/docs_src/ref/upgrade.4.3/verb.so create mode 100644 db/docs_src/ref/upgrade.4.4/autocommit.so create mode 100644 db/docs_src/ref/upgrade.4.4/clear.so create mode 100644 db/docs_src/ref/upgrade.4.4/disk.so create mode 100644 db/docs_src/ref/upgrade.4.4/intro.so create mode 100644 db/docs_src/ref/upgrade.4.4/isolation.so create mode 100644 db/docs_src/ref/upgrade.4.4/joinenv.so create mode 100644 db/docs_src/ref/upgrade.4.4/lockstat.so create mode 100644 db/docs_src/ref/upgrade.4.4/mutex.so create mode 100644 db/docs_src/ref/upgrade.4.4/toc.so create mode 100644 db/docs_src/ref/upgrade.4.5/alive.so create mode 100644 db/docs_src/ref/upgrade.4.5/applog.so create mode 100644 db/docs_src/ref/upgrade.4.5/collect.so create mode 100644 db/docs_src/ref/upgrade.4.5/config.so create mode 100644 db/docs_src/ref/upgrade.4.5/deprecate.so create mode 100644 db/docs_src/ref/upgrade.4.5/disk.so create mode 100644 db/docs_src/ref/upgrade.4.5/elect.so create mode 100644 db/docs_src/ref/upgrade.4.5/intro.so create mode 100644 db/docs_src/ref/upgrade.4.5/memp.so create mode 100644 db/docs_src/ref/upgrade.4.5/pagesize.so create mode 100644 db/docs_src/ref/upgrade.4.5/paniccall.so create mode 100644 db/docs_src/ref/upgrade.4.5/rep_event.so create mode 100644 db/docs_src/ref/upgrade.4.5/rep_set.so create mode 100644 db/docs_src/ref/upgrade.4.5/source.so create mode 100644 db/docs_src/ref/upgrade.4.5/toc.so create mode 100644 db/docs_src/ref/upgrade.4.6/cursor.so create mode 100644 db/docs_src/ref/upgrade.4.6/disk.so create mode 100644 db/docs_src/ref/upgrade.4.6/event.so create mode 100644 db/docs_src/ref/upgrade.4.6/full_election.so create mode 100644 db/docs_src/ref/upgrade.4.6/intro.so create mode 100644 db/docs_src/ref/upgrade.4.6/memp_fput.so create mode 100644 db/docs_src/ref/upgrade.4.6/memp_fset.so create mode 100644 db/docs_src/ref/upgrade.4.6/toc.so create mode 100644 db/docs_src/ref/upgrade.4.6/verb.so create mode 100644 db/docs_src/ref/upgrade.4.6/verbose.so create mode 100644 db/docs_src/ref/upgrade.4.6/win.so create mode 100644 db/docs_src/ref/upgrade/process.so create mode 100644 db/docs_src/ref/upgrade/version.so create mode 100644 db/docs_src/ref/xa/build.so create mode 100644 db/docs_src/ref/xa/faq.so create mode 100644 db/docs_src/ref/xa/intro.so create mode 100644 db/docs_src/ref/xa/xa_config.so create mode 100644 db/docs_src/ref/xa/xa_intro.so create mode 100644 db/docs_src/rep/m4.methods create mode 100644 db/docs_src/rep/rep_config.so create mode 100644 db/docs_src/rep/rep_elect.so create mode 100644 db/docs_src/rep/rep_limit.so create mode 100644 db/docs_src/rep/rep_list.so create mode 100644 db/docs_src/rep/rep_message.so create mode 100644 db/docs_src/rep/rep_nsites.so create mode 100644 db/docs_src/rep/rep_priority.so create mode 100644 db/docs_src/rep/rep_request.so create mode 100644 db/docs_src/rep/rep_start.so create mode 100644 db/docs_src/rep/rep_stat.so create mode 100644 db/docs_src/rep/rep_sync.so create mode 100644 db/docs_src/rep/rep_timeout.so create mode 100644 db/docs_src/rep/rep_transport.so create mode 100644 db/docs_src/rep/repmgr_ack_policy.so create mode 100644 db/docs_src/rep/repmgr_local_site.so create mode 100644 db/docs_src/rep/repmgr_remote_site.so create mode 100644 db/docs_src/rep/repmgr_site_list.so create mode 100644 db/docs_src/rep/repmgr_start.so create mode 100644 db/docs_src/rep/repmgr_stat.so create mode 100644 db/docs_src/rtc/set_func_close.so create mode 100644 db/docs_src/rtc/set_func_dirfree.so create mode 100644 db/docs_src/rtc/set_func_dirlist.so create mode 100644 db/docs_src/rtc/set_func_exists.so create mode 100644 db/docs_src/rtc/set_func_free.so create mode 100644 db/docs_src/rtc/set_func_fsync.so create mode 100644 db/docs_src/rtc/set_func_ftruncate.so create mode 100644 db/docs_src/rtc/set_func_ioinfo.so create mode 100644 db/docs_src/rtc/set_func_malloc.so create mode 100644 db/docs_src/rtc/set_func_map.so create mode 100644 db/docs_src/rtc/set_func_open.so create mode 100644 db/docs_src/rtc/set_func_pread.so create mode 100644 db/docs_src/rtc/set_func_pwrite.so create mode 100644 db/docs_src/rtc/set_func_read.so create mode 100644 db/docs_src/rtc/set_func_realloc.so create mode 100644 db/docs_src/rtc/set_func_rename.so create mode 100644 db/docs_src/rtc/set_func_seek.so create mode 100644 db/docs_src/rtc/set_func_sleep.so create mode 100644 db/docs_src/rtc/set_func_unlink.so create mode 100644 db/docs_src/rtc/set_func_unmap.so create mode 100644 db/docs_src/rtc/set_func_write.so create mode 100644 db/docs_src/rtc/set_func_yield.so create mode 100644 db/docs_src/seq/m4.methods create mode 100644 db/docs_src/seq/seq_class.so create mode 100644 db/docs_src/seq/seq_close.so create mode 100644 db/docs_src/seq/seq_get.so create mode 100644 db/docs_src/seq/seq_initial_value.so create mode 100644 db/docs_src/seq/seq_list.so create mode 100644 db/docs_src/seq/seq_open.so create mode 100644 db/docs_src/seq/seq_remove.so create mode 100644 db/docs_src/seq/seq_set_cachesize.so create mode 100644 db/docs_src/seq/seq_set_flags.so create mode 100644 db/docs_src/seq/seq_set_range.so create mode 100644 db/docs_src/seq/seq_stat.so create mode 100644 db/docs_src/spell.ok create mode 100644 db/docs_src/support/Xindex create mode 100644 db/docs_src/support/check create mode 100644 db/docs_src/support/copy create mode 100644 db/docs_src/support/html.sed create mode 100644 db/docs_src/support/static.src create mode 100644 db/docs_src/support/suffix create mode 100644 db/docs_src/tcl/api_tcl.so create mode 100644 db/docs_src/tcl/db_close.so create mode 100644 db/docs_src/tcl/db_count.so create mode 100644 db/docs_src/tcl/db_cursor.so create mode 100644 db/docs_src/tcl/db_del.so create mode 100644 db/docs_src/tcl/db_get.so create mode 100644 db/docs_src/tcl/db_get_join.so create mode 100644 db/docs_src/tcl/db_get_type.so create mode 100644 db/docs_src/tcl/db_is_byteswapped.so create mode 100644 db/docs_src/tcl/db_join.so create mode 100644 db/docs_src/tcl/db_open.so create mode 100644 db/docs_src/tcl/db_put.so create mode 100644 db/docs_src/tcl/db_remove.so create mode 100644 db/docs_src/tcl/db_rename.so create mode 100644 db/docs_src/tcl/db_stat.so create mode 100644 db/docs_src/tcl/db_sync.so create mode 100644 db/docs_src/tcl/db_truncate.so create mode 100644 db/docs_src/tcl/dbc_close.so create mode 100644 db/docs_src/tcl/dbc_del.so create mode 100644 db/docs_src/tcl/dbc_dup.so create mode 100644 db/docs_src/tcl/dbc_get.so create mode 100644 db/docs_src/tcl/dbc_put.so create mode 100644 db/docs_src/tcl/env_close.so create mode 100644 db/docs_src/tcl/env_dbremove.so create mode 100644 db/docs_src/tcl/env_dbrename.so create mode 100644 db/docs_src/tcl/env_open.so create mode 100644 db/docs_src/tcl/env_remove.so create mode 100644 db/docs_src/tcl/m4.tcl create mode 100644 db/docs_src/tcl/txn.so create mode 100644 db/docs_src/tcl/txn_abort.so create mode 100644 db/docs_src/tcl/txn_checkpoint.so create mode 100644 db/docs_src/tcl/txn_commit.so create mode 100644 db/docs_src/tcl/version.so create mode 100644 db/docs_src/txn/env_set_tx_max.so create mode 100644 db/docs_src/txn/env_set_tx_timestamp.so create mode 100644 db/docs_src/txn/m4.methods create mode 100644 db/docs_src/txn/txn_abort.so create mode 100644 db/docs_src/txn/txn_begin.so create mode 100644 db/docs_src/txn/txn_checkpoint.so create mode 100644 db/docs_src/txn/txn_class.so create mode 100644 db/docs_src/txn/txn_commit.so create mode 100644 db/docs_src/txn/txn_discard.so create mode 100644 db/docs_src/txn/txn_id.so create mode 100644 db/docs_src/txn/txn_list.so create mode 100644 db/docs_src/txn/txn_prepare.so create mode 100644 db/docs_src/txn/txn_recover.so create mode 100644 db/docs_src/txn/txn_set_name.so create mode 100644 db/docs_src/txn/txn_set_timeout.so create mode 100644 db/docs_src/txn/txn_stat.so create mode 100644 db/docs_src/utility/berkeley_db_svc.so create mode 100644 db/docs_src/utility/db_archive.so create mode 100644 db/docs_src/utility/db_checkpoint.so create mode 100644 db/docs_src/utility/db_codegen.so create mode 100644 db/docs_src/utility/db_deadlock.so create mode 100644 db/docs_src/utility/db_dump.so create mode 100644 db/docs_src/utility/db_hotbackup.so create mode 100644 db/docs_src/utility/db_load.so create mode 100644 db/docs_src/utility/db_printlog.so create mode 100644 db/docs_src/utility/db_recover.so create mode 100644 db/docs_src/utility/db_stat.so create mode 100644 db/docs_src/utility/db_upgrade.so create mode 100644 db/docs_src/utility/db_verify.so create mode 100644 db/docs_src/utility/index.so delete mode 100644 db/env/db_salloc.c delete mode 100644 db/env/db_shash.c create mode 100644 db/env/env_alloc.c create mode 100644 db/env/env_globals.c create mode 100644 db/env/env_name.c delete mode 100644 db/examples_c/ex_repquote/ex_repquote.h delete mode 100644 db/examples_c/ex_repquote/ex_rq_client.c delete mode 100644 db/examples_c/ex_repquote/ex_rq_main.c delete mode 100644 db/examples_c/ex_repquote/ex_rq_master.c delete mode 100644 db/examples_c/ex_repquote/ex_rq_net.c delete mode 100644 db/examples_c/ex_repquote/ex_rq_util.c delete mode 100644 db/examples_c/ex_tpcb.h create mode 100644 db/examples_cxx/wce_tpcb/Readme.txt create mode 100644 db/examples_cxx/wce_tpcb/TpcbExample.cpp create mode 100644 db/examples_cxx/wce_tpcb/TpcbExample.h create mode 100644 db/examples_cxx/wce_tpcb/TpcbUI.cpp create mode 100644 db/examples_cxx/wce_tpcb/newres.h create mode 100644 db/examples_cxx/wce_tpcb/oracle_bdb.bmp create mode 100644 db/examples_cxx/wce_tpcb/resource.h create mode 100644 db/examples_cxx/wce_tpcb/wce_tpcb.ico create mode 100644 db/examples_cxx/wce_tpcb/wce_tpcb.rc delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/access/AccessExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/hello/HelloDatabaseWorld.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/PartData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/ShipmentData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/SupplierData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/basic/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/Part.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/PartData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/Shipment.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/ShipmentData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/Supplier.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/SupplierData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/entity/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/Part.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/Shipment.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/Supplier.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/factory/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/PartData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/ShipmentData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/SupplierData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/index/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/MarshalledEnt.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/MarshalledKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/Part.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/Shipment.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/Supplier.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/marshal/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/Part.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/Shipment.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/Supplier.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/sentity/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/Part.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/PartData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/PartKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/Sample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/SampleDatabase.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/SampleViews.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/Shipment.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/ShipmentData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/ShipmentKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/Supplier.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/SupplierData.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/SupplierKey.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/collections/ship/tuple/Weight.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/AccessExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/BtRecExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/BulkAccessExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/EnvExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/ExampleDatabaseLoad.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/ExampleDatabaseRead.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/Inventory.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/InventoryBinding.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/ItemNameKeyCreator.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/MyDbs.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/Vendor.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/inventory.txt delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/GettingStarted/vendors.txt delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/LockExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/RPCExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/SequenceExample.java delete mode 100644 db/examples_java/src/com/sleepycat/examples/db/TpcbExample.java delete mode 100644 db/include/btree.h delete mode 100644 db/include/btree_auto.h delete mode 100644 db/include/btree_ext.h delete mode 100644 db/include/clib_ext.h delete mode 100644 db/include/common_ext.h delete mode 100644 db/include/crdel_auto.h delete mode 100644 db/include/cxx_common.h delete mode 100644 db/include/cxx_except.h delete mode 100644 db/include/cxx_int.h delete mode 100644 db/include/db.in delete mode 100644 db/include/db.src delete mode 100644 db/include/db_185.h delete mode 100644 db/include/db_185.in delete mode 100644 db/include/db_am.h delete mode 100644 db/include/db_auto.h delete mode 100644 db/include/db_cxx.h delete mode 100644 db/include/db_dispatch.h delete mode 100644 db/include/db_ext.h delete mode 100644 db/include/db_int.in delete mode 100644 db/include/db_int.src delete mode 100644 db/include/db_join.h delete mode 100644 db/include/db_page.h delete mode 100644 db/include/db_server.h delete mode 100644 db/include/db_server_int.h delete mode 100644 db/include/db_shash.h delete mode 100644 db/include/db_swap.h delete mode 100644 db/include/db_upgrade.h delete mode 100644 db/include/db_verify.h delete mode 100644 db/include/debug.h delete mode 100644 db/include/env_ext.h delete mode 100644 db/include/gen_client_ext.h delete mode 100644 db/include/gen_server_ext.h delete mode 100644 db/include/hash.h delete mode 100644 db/include/hash_auto.h delete mode 100644 db/include/hash_ext.h delete mode 100644 db/include/lock.h delete mode 100644 db/include/lock_ext.h delete mode 100644 db/include/log_auto.h delete mode 100644 db/include/log_ext.h delete mode 100644 db/include/mp.h delete mode 100644 db/include/mp_ext.h delete mode 100644 db/include/mutex.h delete mode 100644 db/include/mutex_ext.h delete mode 100644 db/include/os.h delete mode 100644 db/include/os_ext.h delete mode 100644 db/include/os_jump.h delete mode 100644 db/include/qam.h delete mode 100644 db/include/qam_auto.h delete mode 100644 db/include/qam_ext.h delete mode 100644 db/include/queue.h delete mode 100644 db/include/region.h delete mode 100644 db/include/rpc_client_ext.h delete mode 100644 db/include/rpc_server_ext.h delete mode 100644 db/include/shqueue.h delete mode 100644 db/include/tcl_db.h delete mode 100644 db/include/tcl_ext.h delete mode 100644 db/include/txn.h delete mode 100644 db/include/txn_auto.h delete mode 100644 db/include/txn_ext.h delete mode 100644 db/include/xa.h delete mode 100644 db/include/xa_ext.h delete mode 100644 db/include_auto/btree_auto.h delete mode 100644 db/include_auto/btree_ext.h delete mode 100644 db/include_auto/btree_ext.in delete mode 100644 db/include_auto/clib_ext.h delete mode 100644 db/include_auto/clib_ext.in delete mode 100644 db/include_auto/common_ext.h delete mode 100644 db/include_auto/common_ext.in delete mode 100644 db/include_auto/crdel_auto.h delete mode 100644 db/include_auto/db185_ext.in delete mode 100644 db/include_auto/db185_uext.in delete mode 100644 db/include_auto/db_auto.h delete mode 100644 db/include_auto/db_ext.h delete mode 100644 db/include_auto/db_ext.in delete mode 100644 db/include_auto/db_server.h delete mode 100644 db/include_auto/db_server.in delete mode 100644 db/include_auto/env_ext.h delete mode 100644 db/include_auto/env_ext.in delete mode 100644 db/include_auto/global_ext.in delete mode 100644 db/include_auto/global_uext.in delete mode 100644 db/include_auto/hash_auto.h delete mode 100644 db/include_auto/hash_ext.h delete mode 100644 db/include_auto/hash_ext.in delete mode 100644 db/include_auto/lock_ext.h delete mode 100644 db/include_auto/lock_ext.in delete mode 100644 db/include_auto/log_auto.h delete mode 100644 db/include_auto/log_ext.h delete mode 100644 db/include_auto/log_ext.in delete mode 100644 db/include_auto/mp_ext.h delete mode 100644 db/include_auto/mp_ext.in delete mode 100644 db/include_auto/mutex_ext.h delete mode 100644 db/include_auto/mutex_ext.in delete mode 100644 db/include_auto/os_ext.h delete mode 100644 db/include_auto/os_ext.in delete mode 100644 db/include_auto/qam_auto.h delete mode 100644 db/include_auto/qam_ext.h delete mode 100644 db/include_auto/qam_ext.in delete mode 100644 db/include_auto/rpc_client_ext.h delete mode 100644 db/include_auto/rpc_client_ext.in delete mode 100644 db/include_auto/rpc_defs.in delete mode 100644 db/include_auto/rpc_server_ext.h delete mode 100644 db/include_auto/rpc_server_ext.in delete mode 100644 db/include_auto/tcl_ext.h delete mode 100644 db/include_auto/tcl_ext.in delete mode 100644 db/include_auto/txn_auto.h delete mode 100644 db/include_auto/txn_ext.h delete mode 100644 db/include_auto/txn_ext.in delete mode 100644 db/include_auto/xa_ext.h delete mode 100644 db/include_auto/xa_ext.in create mode 100644 db/java/src/com/sleepycat/bind/tuple/BigIntegerBinding.java delete mode 100644 db/java/src/com/sleepycat/collections/KeyRange.java delete mode 100644 db/java/src/com/sleepycat/collections/KeyRangeException.java delete mode 100644 db/java/src/com/sleepycat/collections/RangeCursor.java delete mode 100644 db/java/src/com/sleepycat/db/DbRecoveryInit.java delete mode 100644 db/java/src/com/sleepycat/db/DbTxnRecover.java create mode 100644 db/java/src/com/sleepycat/db/EventHandlerAdapter.java delete mode 100644 db/java/src/com/sleepycat/db/EventType.java create mode 100644 db/java/src/com/sleepycat/db/ReplicationLeaseExpiredException.java create mode 100644 db/java/src/com/sleepycat/db/ReplicationLeaseTimeoutException.java create mode 100644 db/java/src/com/sleepycat/db/ReplicationManagerStats.java create mode 100644 db/java/src/com/sleepycat/db/SecondaryMultiKeyCreator.java create mode 100644 db/java/src/com/sleepycat/db/VerboseConfig.java delete mode 100644 db/java/src/com/sleepycat/db/internal/DbClient.java delete mode 100644 db/lock/lock_conflict.c create mode 100644 db/lock/lock_stub.c delete mode 100644 db/log/log.src delete mode 100644 db/log/log_auto.c delete mode 100644 db/log/log_findckp.c delete mode 100644 db/log/log_register.c delete mode 100644 db/mp/Design create mode 100644 db/mp/mp_resize.c create mode 100644 db/mutex/mut_stub.c delete mode 100644 db/mutex/mutex.c create mode 100644 db/mutex/test_mutex.c delete mode 100644 db/mutex/tm.c create mode 100644 db/os/os_abort.c delete mode 100644 db/os/os_finit.c delete mode 100644 db/os/os_id.c create mode 100644 db/os_brew/ctime.c create mode 100644 db/os_brew/fclose.c create mode 100644 db/os_brew/fgetc.c create mode 100644 db/os_brew/fgets.c create mode 100644 db/os_brew/fopen.c create mode 100644 db/os_brew/fwrite.c create mode 100644 db/os_brew/getcwd.c create mode 100644 db/os_brew/globals.c create mode 100644 db/os_brew/localtime.c create mode 100644 db/os_brew/os_abort.c create mode 100644 db/os_brew/os_abs.c create mode 100644 db/os_brew/os_config.c create mode 100644 db/os_brew/os_dir.c create mode 100644 db/os_brew/os_errno.c create mode 100644 db/os_brew/os_handle.c create mode 100644 db/os_brew/os_mkdir.c create mode 100644 db/os_brew/os_oflags.c create mode 100644 db/os_brew/os_open.c create mode 100644 db/os_brew/os_pid.c create mode 100644 db/os_brew/os_rename.c create mode 100644 db/os_brew/os_rw.c create mode 100644 db/os_brew/os_seek.c create mode 100644 db/os_brew/os_sleep.c create mode 100644 db/os_brew/os_stat.c create mode 100644 db/os_brew/os_truncate.c create mode 100644 db/os_brew/os_unlink.c create mode 100644 db/os_brew/time.c create mode 100644 db/os_qnx/os_qnx_open.c create mode 100644 db/os_s60/os_config.c delete mode 100644 db/os_vxworks/os_abs.c delete mode 100644 db/os_vxworks/os_finit.c delete mode 100644 db/os_vxworks/os_map.c delete mode 100644 db/os_win32/os_abs.c delete mode 100644 db/os_win32/os_clock.c delete mode 100644 db/os_win32/os_config.c delete mode 100644 db/os_win32/os_dir.c delete mode 100644 db/os_win32/os_errno.c delete mode 100644 db/os_win32/os_fid.c delete mode 100644 db/os_win32/os_finit.c delete mode 100644 db/os_win32/os_fsync.c delete mode 100644 db/os_win32/os_handle.c delete mode 100644 db/os_win32/os_map.c delete mode 100644 db/os_win32/os_open.c delete mode 100644 db/os_win32/os_rename.c delete mode 100644 db/os_win32/os_rw.c delete mode 100644 db/os_win32/os_seek.c delete mode 100644 db/os_win32/os_sleep.c delete mode 100644 db/os_win32/os_spin.c delete mode 100644 db/os_win32/os_stat.c delete mode 100644 db/os_win32/os_truncate.c delete mode 100644 db/os_win32/os_unlink.c create mode 100644 db/os_windows/ce_ctime.c create mode 100644 db/os_windows/ce_time.c create mode 100644 db/os_windows/os_mkdir.c delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB.pm delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB.pod delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB.pod.P delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB.xs delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB/Btree.pm delete mode 100644 db/perl.BerkeleyDB/BerkeleyDB/Hash.pm delete mode 100644 db/perl.BerkeleyDB/Changes delete mode 100644 db/perl.BerkeleyDB/MANIFEST delete mode 100644 db/perl.BerkeleyDB/Makefile.PL delete mode 100644 db/perl.BerkeleyDB/README delete mode 100644 db/perl.BerkeleyDB/Todo delete mode 100644 db/perl.BerkeleyDB/config.in delete mode 100755 db/perl.BerkeleyDB/dbinfo delete mode 100644 db/perl.BerkeleyDB/hints/irix_6_5.pl delete mode 100644 db/perl.BerkeleyDB/hints/solaris.pl delete mode 100644 db/perl.BerkeleyDB/mkconsts delete mode 100755 db/perl.BerkeleyDB/mkpod delete mode 100644 db/perl.BerkeleyDB/patches/5.004 delete mode 100644 db/perl.BerkeleyDB/patches/5.004_01 delete mode 100644 db/perl.BerkeleyDB/patches/5.004_02 delete mode 100644 db/perl.BerkeleyDB/patches/5.004_03 delete mode 100644 db/perl.BerkeleyDB/patches/5.004_04 delete mode 100644 db/perl.BerkeleyDB/patches/5.004_05 delete mode 100644 db/perl.BerkeleyDB/patches/5.005 delete mode 100644 db/perl.BerkeleyDB/patches/5.005_01 delete mode 100644 db/perl.BerkeleyDB/patches/5.005_02 delete mode 100644 db/perl.BerkeleyDB/patches/5.005_03 delete mode 100644 db/perl.BerkeleyDB/patches/5.6.0 delete mode 100644 db/perl.BerkeleyDB/t/btree.t delete mode 100644 db/perl.BerkeleyDB/t/db-3.0.t delete mode 100644 db/perl.BerkeleyDB/t/db-3.1.t delete mode 100644 db/perl.BerkeleyDB/t/db-3.2.t delete mode 100644 db/perl.BerkeleyDB/t/destroy.t delete mode 100644 db/perl.BerkeleyDB/t/env.t delete mode 100644 db/perl.BerkeleyDB/t/examples.t delete mode 100644 db/perl.BerkeleyDB/t/examples.t.T delete mode 100644 db/perl.BerkeleyDB/t/examples3.t delete mode 100644 db/perl.BerkeleyDB/t/examples3.t.T delete mode 100644 db/perl.BerkeleyDB/t/filter.t delete mode 100644 db/perl.BerkeleyDB/t/hash.t delete mode 100644 db/perl.BerkeleyDB/t/join.t delete mode 100644 db/perl.BerkeleyDB/t/mldbm.t delete mode 100644 db/perl.BerkeleyDB/t/queue.t delete mode 100644 db/perl.BerkeleyDB/t/recno.t delete mode 100644 db/perl.BerkeleyDB/t/strict.t delete mode 100644 db/perl.BerkeleyDB/t/subdb.t delete mode 100644 db/perl.BerkeleyDB/t/txn.t delete mode 100644 db/perl.BerkeleyDB/t/unknown.t delete mode 100644 db/perl.BerkeleyDB/typemap delete mode 100644 db/perl.DB_File/Changes delete mode 100644 db/perl.DB_File/DB_File.pm delete mode 100644 db/perl.DB_File/DB_File.xs delete mode 100644 db/perl.DB_File/DB_File_BS delete mode 100644 db/perl.DB_File/MANIFEST delete mode 100644 db/perl.DB_File/Makefile.PL delete mode 100644 db/perl.DB_File/README delete mode 100644 db/perl.DB_File/config.in delete mode 100644 db/perl.DB_File/dbinfo delete mode 100644 db/perl.DB_File/hints/dynixptx.pl delete mode 100644 db/perl.DB_File/hints/sco.pl delete mode 100644 db/perl.DB_File/patches/5.004 delete mode 100644 db/perl.DB_File/patches/5.004_01 delete mode 100644 db/perl.DB_File/patches/5.004_02 delete mode 100644 db/perl.DB_File/patches/5.004_03 delete mode 100644 db/perl.DB_File/patches/5.004_04 delete mode 100644 db/perl.DB_File/patches/5.004_05 delete mode 100644 db/perl.DB_File/patches/5.005 delete mode 100644 db/perl.DB_File/patches/5.005_01 delete mode 100644 db/perl.DB_File/patches/5.005_02 delete mode 100644 db/perl.DB_File/patches/5.005_03 delete mode 100644 db/perl.DB_File/patches/5.6.0 delete mode 100644 db/perl.DB_File/t/db-btree.t delete mode 100644 db/perl.DB_File/t/db-hash.t delete mode 100644 db/perl.DB_File/t/db-recno.t delete mode 100644 db/perl.DB_File/typemap delete mode 100644 db/perl.DB_File/version.c create mode 100644 db/perl/BerkeleyDB/t/db-4.x.t create mode 100644 db/perl/DB_File/t/pod.t create mode 100644 db/rep/mlease.html create mode 100644 db/rep/rep_lease.c create mode 100644 db/repmgr/repmgr_stub.c delete mode 100644 db/rpc_server/db_server.sed delete mode 100644 db/rpc_server/db_server_proc.c delete mode 100644 db/rpc_server/db_server_proc.sed delete mode 100644 db/rpc_server/db_server_svc.c delete mode 100644 db/rpc_server/db_server_svc.sed delete mode 100644 db/rpc_server/db_server_util.c delete mode 100644 db/rpc_server/db_server_xdr.c delete mode 100644 db/rpc_server/gen_db_server.c delete mode 100644 db/rpc_server/java/AssociateCallbacks.java delete mode 100644 db/rpc_server/java/Dispatcher.java delete mode 100644 db/rpc_server/java/FreeList.java delete mode 100644 db/rpc_server/java/JoinCursorAdapter.java delete mode 100644 db/rpc_server/java/LocalIterator.java delete mode 100644 db/rpc_server/java/README delete mode 100644 db/rpc_server/java/RpcDb.java delete mode 100644 db/rpc_server/java/RpcDbEnv.java delete mode 100644 db/rpc_server/java/RpcDbTxn.java delete mode 100644 db/rpc_server/java/RpcDbc.java delete mode 100644 db/rpc_server/java/Server.java delete mode 100644 db/rpc_server/java/Timer.java delete mode 100644 db/rpc_server/java/Util.java delete mode 100644 db/rpc_server/java/gen/ServerStubs.java delete mode 100644 db/rpc_server/java/gen/__db_associate_msg.java delete mode 100644 db/rpc_server/java/gen/__db_associate_reply.java delete mode 100644 db/rpc_server/java/gen/__db_bt_maxkey_msg.java delete mode 100644 db/rpc_server/java/gen/__db_bt_maxkey_reply.java delete mode 100644 db/rpc_server/java/gen/__db_bt_minkey_msg.java delete mode 100644 db/rpc_server/java/gen/__db_bt_minkey_reply.java delete mode 100644 db/rpc_server/java/gen/__db_close_msg.java delete mode 100644 db/rpc_server/java/gen/__db_close_reply.java delete mode 100644 db/rpc_server/java/gen/__db_create_msg.java delete mode 100644 db/rpc_server/java/gen/__db_create_reply.java delete mode 100644 db/rpc_server/java/gen/__db_cursor_msg.java delete mode 100644 db/rpc_server/java/gen/__db_cursor_reply.java delete mode 100644 db/rpc_server/java/gen/__db_del_msg.java delete mode 100644 db/rpc_server/java/gen/__db_del_reply.java delete mode 100644 db/rpc_server/java/gen/__db_encrypt_msg.java delete mode 100644 db/rpc_server/java/gen/__db_encrypt_reply.java delete mode 100644 db/rpc_server/java/gen/__db_extentsize_msg.java delete mode 100644 db/rpc_server/java/gen/__db_extentsize_reply.java delete mode 100644 db/rpc_server/java/gen/__db_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__db_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_bt_minkey_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_bt_minkey_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_encrypt_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_encrypt_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_extentsize_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_extentsize_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_h_ffactor_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_h_ffactor_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_h_nelem_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_h_nelem_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_lorder_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_lorder_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_name_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_name_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_open_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_open_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_pagesize_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_pagesize_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_delim_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_delim_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_len_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_len_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_pad_msg.java delete mode 100644 db/rpc_server/java/gen/__db_get_re_pad_reply.java delete mode 100644 db/rpc_server/java/gen/__db_get_reply.java delete mode 100644 db/rpc_server/java/gen/__db_h_ffactor_msg.java delete mode 100644 db/rpc_server/java/gen/__db_h_ffactor_reply.java delete mode 100644 db/rpc_server/java/gen/__db_h_nelem_msg.java delete mode 100644 db/rpc_server/java/gen/__db_h_nelem_reply.java delete mode 100644 db/rpc_server/java/gen/__db_join_msg.java delete mode 100644 db/rpc_server/java/gen/__db_join_reply.java delete mode 100644 db/rpc_server/java/gen/__db_key_range_msg.java delete mode 100644 db/rpc_server/java/gen/__db_key_range_reply.java delete mode 100644 db/rpc_server/java/gen/__db_lorder_msg.java delete mode 100644 db/rpc_server/java/gen/__db_lorder_reply.java delete mode 100644 db/rpc_server/java/gen/__db_open_msg.java delete mode 100644 db/rpc_server/java/gen/__db_open_reply.java delete mode 100644 db/rpc_server/java/gen/__db_pagesize_msg.java delete mode 100644 db/rpc_server/java/gen/__db_pagesize_reply.java delete mode 100644 db/rpc_server/java/gen/__db_pget_msg.java delete mode 100644 db/rpc_server/java/gen/__db_pget_reply.java delete mode 100644 db/rpc_server/java/gen/__db_put_msg.java delete mode 100644 db/rpc_server/java/gen/__db_put_reply.java delete mode 100644 db/rpc_server/java/gen/__db_re_delim_msg.java delete mode 100644 db/rpc_server/java/gen/__db_re_delim_reply.java delete mode 100644 db/rpc_server/java/gen/__db_re_len_msg.java delete mode 100644 db/rpc_server/java/gen/__db_re_len_reply.java delete mode 100644 db/rpc_server/java/gen/__db_re_pad_msg.java delete mode 100644 db/rpc_server/java/gen/__db_re_pad_reply.java delete mode 100644 db/rpc_server/java/gen/__db_remove_msg.java delete mode 100644 db/rpc_server/java/gen/__db_remove_reply.java delete mode 100644 db/rpc_server/java/gen/__db_rename_msg.java delete mode 100644 db/rpc_server/java/gen/__db_rename_reply.java delete mode 100644 db/rpc_server/java/gen/__db_stat_msg.java delete mode 100644 db/rpc_server/java/gen/__db_stat_reply.java delete mode 100644 db/rpc_server/java/gen/__db_sync_msg.java delete mode 100644 db/rpc_server/java/gen/__db_sync_reply.java delete mode 100644 db/rpc_server/java/gen/__db_truncate_msg.java delete mode 100644 db/rpc_server/java/gen/__db_truncate_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_close_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_close_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_count_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_count_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_del_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_del_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_dup_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_dup_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_get_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_get_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_pget_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_pget_reply.java delete mode 100644 db/rpc_server/java/gen/__dbc_put_msg.java delete mode 100644 db/rpc_server/java/gen/__dbc_put_reply.java delete mode 100644 db/rpc_server/java/gen/__env_cachesize_msg.java delete mode 100644 db/rpc_server/java/gen/__env_cachesize_reply.java delete mode 100644 db/rpc_server/java/gen/__env_close_msg.java delete mode 100644 db/rpc_server/java/gen/__env_close_reply.java delete mode 100644 db/rpc_server/java/gen/__env_create_msg.java delete mode 100644 db/rpc_server/java/gen/__env_create_reply.java delete mode 100644 db/rpc_server/java/gen/__env_dbremove_msg.java delete mode 100644 db/rpc_server/java/gen/__env_dbremove_reply.java delete mode 100644 db/rpc_server/java/gen/__env_dbrename_msg.java delete mode 100644 db/rpc_server/java/gen/__env_dbrename_reply.java delete mode 100644 db/rpc_server/java/gen/__env_encrypt_msg.java delete mode 100644 db/rpc_server/java/gen/__env_encrypt_reply.java delete mode 100644 db/rpc_server/java/gen/__env_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__env_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__env_get_cachesize_msg.java delete mode 100644 db/rpc_server/java/gen/__env_get_cachesize_reply.java delete mode 100644 db/rpc_server/java/gen/__env_get_encrypt_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__env_get_encrypt_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__env_get_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__env_get_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__env_get_home_msg.java delete mode 100644 db/rpc_server/java/gen/__env_get_home_reply.java delete mode 100644 db/rpc_server/java/gen/__env_get_open_flags_msg.java delete mode 100644 db/rpc_server/java/gen/__env_get_open_flags_reply.java delete mode 100644 db/rpc_server/java/gen/__env_open_msg.java delete mode 100644 db/rpc_server/java/gen/__env_open_reply.java delete mode 100644 db/rpc_server/java/gen/__env_remove_msg.java delete mode 100644 db/rpc_server/java/gen/__env_remove_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_abort_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_abort_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_begin_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_begin_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_commit_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_commit_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_discard_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_discard_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_prepare_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_prepare_reply.java delete mode 100644 db/rpc_server/java/gen/__txn_recover_msg.java delete mode 100644 db/rpc_server/java/gen/__txn_recover_reply.java delete mode 100644 db/rpc_server/java/gen/db_server.java delete mode 100644 db/rpc_server/java/jrpcgen.jar delete mode 100644 db/rpc_server/java/oncrpc.jar delete mode 100644 db/rpc_server/java/s_jrpcgen create mode 100644 db/test/backup.tcl delete mode 100644 db/test/bigfile.tcl delete mode 100644 db/test/log.tcl delete mode 100644 db/test/mpool.tcl delete mode 100644 db/test/mutex.tcl delete mode 100644 db/test/mutex001.tcl delete mode 100644 db/test/mutex002.tcl delete mode 100644 db/test/mutex003.tcl delete mode 100644 db/test/mutexscript.tcl delete mode 100644 db/test/recd15script.tcl create mode 100644 db/test/rep067.tcl create mode 100644 db/test/rep068.tcl create mode 100644 db/test/rep069.tcl create mode 100644 db/test/rep070.tcl create mode 100644 db/test/rep071.tcl create mode 100644 db/test/rep072.tcl create mode 100644 db/test/rep073.tcl create mode 100644 db/test/rep074.tcl create mode 100644 db/test/rep075.tcl create mode 100644 db/test/rep076.tcl create mode 100644 db/test/rep077.tcl create mode 100644 db/test/rep078.tcl create mode 100644 db/test/repmgr001.tcl create mode 100644 db/test/reputilsnoenv.tcl delete mode 100644 db/test/scr016/CallbackTest.java delete mode 100644 db/test/scr016/CallbackTest.testout delete mode 100644 db/test/scr016/TestAppendRecno.java delete mode 100644 db/test/scr016/TestAppendRecno.testout delete mode 100644 db/test/scr016/TestAssociate.java delete mode 100644 db/test/scr016/TestAssociate.testout delete mode 100644 db/test/scr016/TestCallback.java delete mode 100644 db/test/scr016/TestCallback.testout delete mode 100644 db/test/scr016/TestClosedDb.java delete mode 100644 db/test/scr016/TestClosedDb.testout delete mode 100644 db/test/scr016/TestConstruct01.java delete mode 100644 db/test/scr016/TestConstruct01.testerr delete mode 100644 db/test/scr016/TestConstruct01.testout delete mode 100644 db/test/scr016/TestConstruct02.java delete mode 100644 db/test/scr016/TestConstruct02.testout delete mode 100644 db/test/scr016/TestDbtFlags.java delete mode 100644 db/test/scr016/TestDbtFlags.testerr delete mode 100644 db/test/scr016/TestDbtFlags.testout delete mode 100644 db/test/scr016/TestGetSetMethods.java delete mode 100644 db/test/scr016/TestKeyRange.java delete mode 100644 db/test/scr016/TestKeyRange.testout delete mode 100644 db/test/scr016/TestLockVec.java delete mode 100644 db/test/scr016/TestLockVec.testout delete mode 100644 db/test/scr016/TestLogc.java delete mode 100644 db/test/scr016/TestLogc.testout delete mode 100644 db/test/scr016/TestOpenEmpty.java delete mode 100644 db/test/scr016/TestOpenEmpty.testerr delete mode 100644 db/test/scr016/TestReplication.java delete mode 100644 db/test/scr016/TestRpcServer.java delete mode 100644 db/test/scr016/TestSameDbt.java delete mode 100644 db/test/scr016/TestSameDbt.testout delete mode 100644 db/test/scr016/TestSimpleAccess.java delete mode 100644 db/test/scr016/TestSimpleAccess.testout delete mode 100644 db/test/scr016/TestStat.java delete mode 100644 db/test/scr016/TestStat.testout delete mode 100644 db/test/scr016/TestTruncate.java delete mode 100644 db/test/scr016/TestTruncate.testout delete mode 100644 db/test/scr016/TestUtil.java delete mode 100644 db/test/scr016/TestXAServlet.java create mode 100644 db/test/scr016/chk.bdb delete mode 100644 db/test/scr016/chk.javatests delete mode 100644 db/test/scr016/ignore create mode 100644 db/test/scr016/makenewtest.sh create mode 100644 db/test/scr016/src/com/sleepycat/db/test/AppendRecnoTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/AssociateTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/CallbackTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/ClosedDbTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/DatabaseTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/EncryptTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/HashCompareTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/PartialGetTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/RepmgrConfigTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/RepmgrElectionTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/RepmgrStartupTest.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/TestUtils.java create mode 100644 db/test/scr016/src/com/sleepycat/db/test/VerboseConfigTest.java delete mode 100644 db/test/scr016/testall delete mode 100644 db/test/scr016/testone create mode 100644 db/test/scr033/chk.codegen delete mode 100644 db/test/txn.tcl create mode 100644 db/test/txn014.tcl delete mode 100644 db/test/upgrade/README delete mode 100644 db/test/upgrade/generate-2.X/pack-2.6.6.pl delete mode 100644 db/test/upgrade/generate-2.X/test-2.6.patch create mode 100644 db/test_micro/README create mode 100644 db/test_micro/SOURCE/LIST create mode 100644 db/test_micro/SOURCE/b_curalloc.c create mode 100644 db/test_micro/SOURCE/b_curwalk.c create mode 100644 db/test_micro/SOURCE/b_del.c create mode 100644 db/test_micro/SOURCE/b_get.c create mode 100644 db/test_micro/SOURCE/b_load.c create mode 100644 db/test_micro/SOURCE/b_open.c create mode 100644 db/test_micro/SOURCE/b_put.c create mode 100644 db/test_micro/SOURCE/b_recover.c create mode 100644 db/test_micro/SOURCE/b_txn.c create mode 100644 db/test_micro/SOURCE/b_txn_write.c create mode 100644 db/test_micro/SOURCE/b_workload.c create mode 100644 db/test_micro/SOURCE/b_workload.h create mode 100644 db/test_micro/SOURCE/bench.h create mode 100644 db/test_micro/SOURCE/inmem.c create mode 100644 db/test_micro/SOURCE/uname.c create mode 100644 db/test_micro/test_micro create mode 100644 db/xa/xa_stub.c diff --git a/db/LICENSE b/db/LICENSE index ffe7f3e33..8bdd5c9d1 100644 --- a/db/LICENSE +++ b/db/LICENSE @@ -1,16 +1,15 @@ /*- - * $Id: LICENSE,v 12.4 2006/08/25 18:42:22 bostic Exp $ + * $Id: LICENSE,v 12.7 2007/05/17 15:14:46 bostic Exp $ */ The following is the license that applies to this copy of the Berkeley DB software. For a license to use the Berkeley DB software under conditions other than those described here, or to purchase support for this software, -please contact Oracle Corporation at berkeleydb-info_us@oracle.com. +please contact Oracle at berkeleydb-info_us@oracle.com. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= /* - * Copyright (c) 1990-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1990,2007 Oracle. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -31,17 +30,17 @@ please contact Oracle Corporation at berkeleydb-info_us@oracle.com. * files that typically accompany the major components of the operating * system on which the executable file runs. * - * THIS SOFTWARE IS PROVIDED BY ORACLE CORPORATION ``AS IS'' AND ANY EXPRESS - * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * THIS SOFTWARE IS PROVIDED BY ORACLE ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR - * NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL ORACLE CORPORATION - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL ORACLE BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - * THE POSSIBILITY OF SUCH DAMAGE. + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* * Copyright (c) 1990, 1993, 1994, 1995 diff --git a/db/README b/db/README index 0b084ff5b..42402df8a 100644 --- a/db/README +++ b/db/README @@ -1,5 +1,5 @@ -Berkeley DB 4.5.20: (September 20, 2006) +Berkeley DB 4.6.18: (July 17, 2007) -This is version 4.5.20 of Berkeley DB from Oracle Corporation. To view -the release and installation documentation, load the distribution file -docs/index.html into your web browser. +This is version 4.6.18 of Berkeley DB from Oracle. To view release and +installation documentation, load the distribution file docs/index.html +into your web browser. diff --git a/db/btree/bt_compact.c b/db/btree/bt_compact.c index c5fa483b1..aa45bc350 100644 --- a/db/btree/bt_compact.c +++ b/db/btree/bt_compact.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: bt_compact.c,v 12.53 2006/08/24 14:44:43 bostic Exp $ + * $Id: bt_compact.c,v 12.62 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -45,7 +44,7 @@ static int __bam_truncate_internal __P((DB *, DB_TXN *, DB_COMPACT *)); do { \ save_data = *c_data; \ ret = __db_retcopy(dbenv, \ - &save_start, end->data, end->size, \ + &save_start, current.data, current.size, \ &save_start.data, &save_start.ulen); \ } while (0) @@ -60,9 +59,9 @@ static int __bam_truncate_internal __P((DB *, DB_TXN *, DB_COMPACT *)); save_data.compact_pages_free; \ c_data->compact_levels = save_data.compact_levels; \ c_data->compact_truncate = save_data.compact_truncate; \ - ret = __db_retcopy(dbenv, end, \ + ret = __db_retcopy(dbenv, ¤t, \ save_start.data, save_start.size, \ - &end->data, &end->ulen); \ + ¤t.data, ¤t.ulen); \ } while (0) /* * __bam_compact -- compact a btree. @@ -83,38 +82,39 @@ __bam_compact(dbp, txn, start, stop, c_data, flags, end) DBC *dbc; DB_COMPACT save_data; DB_ENV *dbenv; - db_pgno_t last_pgno; - struct pglist *list; - u_int32_t factor, nelems, truncated; + u_int32_t factor; int deadlock, done, ret, span, t_ret, txn_local; +#ifdef HAVE_FTRUNCATE + struct pglist *list; + db_pgno_t last_pgno; + u_int32_t nelems, truncated; +#endif + dbenv = dbp->dbenv; memset(¤t, 0, sizeof(current)); memset(&save_start, 0, sizeof(save_start)); dbc = NULL; - deadlock = 0; - done = 0; factor = 0; - ret = 0; - span = 0; - truncated = 0; + deadlock = done = ret = span = 0; + +#ifdef HAVE_FTRUNCATE + list = NULL; last_pgno = 0; + nelems = truncated = 0; +#endif /* - * We pass "end" to the internal routine, indicating where - * that routine should begin its work and expecting that it - * will return to us the last key that it processed. + * We pass "current" to the internal routine, indicating where that + * routine should begin its work and expecting that it will return to + * us the last key that it processed. */ - if (end == NULL) - end = ¤t; if (start != NULL && (ret = __db_retcopy(dbenv, - end, start->data, start->size, &end->data, &end->ulen)) != 0) + ¤t, start->data, start->size, + ¤t.data, ¤t.ulen)) != 0) return (ret); - list = NULL; - nelems = 0; - if (IS_DB_AUTO_COMMIT(dbp, txn)) txn_local = 1; else @@ -201,7 +201,7 @@ no_free: if ((ret = __db_cursor(dbp, txn, &dbc, 0)) != 0) goto err; - if ((ret = __bam_compact_int(dbc, end, stop, factor, + if ((ret = __bam_compact_int(dbc, ¤t, stop, factor, &span, c_data, &done)) == DB_LOCK_DEADLOCK && txn_local) { /* * We retry on deadlock. Cancel the statistics @@ -213,7 +213,7 @@ no_free: RESTORE_START; } - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; err: if (txn_local && txn != NULL) { @@ -225,6 +225,9 @@ err: if (txn_local && txn != NULL) { } } while (ret == 0 && !done); + if (ret == 0 && end != NULL) + ret = __db_retcopy(dbenv, end, current.data, current.size, + &end->data, &end->ulen); if (current.data != NULL) __os_free(dbenv, current.data); if (save_start.data != NULL) @@ -246,7 +249,7 @@ done: if (LF_ISSET(DB_FREE_SPACE)) { if (ret == 0 && !LF_ISSET(DB_FREELIST_ONLY) && (t_ret = __memp_fget(dbp->mpf, &pgno, txn, 0, &meta)) == 0) { done = meta->free == PGNO_INVALID; - ret = __memp_fput(dbp->mpf, meta, 0); + ret = __memp_fput(dbp->mpf, meta, dbc->priority); } if (!done) @@ -260,8 +263,8 @@ done: if (LF_ISSET(DB_FREE_SPACE)) { __memp_fget(dbp->mpf, &pgno, txn, 0, &meta)) == 0) { c_data->compact_pages_truncated = truncated + last_pgno - meta->last_pgno; - if ((t_ret = - __memp_fput(dbp->mpf, meta, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput( + dbp->mpf, meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; } else if (ret == 0) ret = t_ret; @@ -496,7 +499,7 @@ next: /* dbc, &pg, factor, 0, c_data, &pgs_done)) != 0) goto err; npgno = NEXT_PGNO(pg); - if ((ret = __memp_fput(dbmp, pg, 0)) != 0) + if ((ret = __memp_fput(dbmp, pg, dbc->priority)) != 0) goto err; pg = NULL; /* @@ -549,7 +552,7 @@ next: /* /* Release the page so we don't deadlock getting its parent. */ if ((ret = __LPUT(dbc, cp->csp->lock)) != 0) goto err; - if ((ret = __memp_fput(dbmp, pg, 0)) != 0) + if ((ret = __memp_fput(dbmp, pg, dbc->priority)) != 0) goto err; BT_STK_CLR(cp); pg = NULL; @@ -607,7 +610,7 @@ next: /* /* case 3 -- different parents. */ if (*spanp) { CTRACE(dbc, "Span", "", start, 0); - if (ndbc == NULL && (ret = __db_c_dup(dbc, &ndbc, 0)) != 0) + if (ndbc == NULL && (ret = __dbc_dup(dbc, &ndbc, 0)) != 0) goto err; ncp = (BTREE_CURSOR *)ndbc->internal; ncp->recno = next_recno; @@ -633,8 +636,8 @@ next: /* } } - if ((ret = - __memp_dirty(dbp->mpf, &ncp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &ncp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; PTRACE(dbc, "SDups", PGNO(ncp->csp->page), start, 0); if (check_dups && (ret = __bam_compact_dups(ndbc, @@ -671,8 +674,8 @@ next: /* goto err1; } - if ((ret = - __memp_dirty(dbp->mpf, &cp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &cp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err1; pg = cp->csp->page; npgno = NEXT_PGNO(pg); @@ -749,7 +752,7 @@ next: /* goto next_page; if ((ret = __memp_dirty(dbp->mpf, &cp->csp->page, - dbc->txn, 0)) != 0) + dbc->txn, dbc->priority, 0)) != 0) goto err; pg = cp->csp->page; @@ -780,9 +783,9 @@ next: /* goto next_page; /* If they have the same parent, just dup the cursor */ - if (ndbc != NULL && (ret = __db_c_close(ndbc)) != 0) + if (ndbc != NULL && (ret = __dbc_close(ndbc)) != 0) goto err1; - if ((ret = __db_c_dup(dbc, &ndbc, DB_POSITION)) != 0) + if ((ret = __dbc_dup(dbc, &ndbc, DB_POSITION)) != 0) goto err1; ncp = (BTREE_CURSOR *)ndbc->internal; @@ -888,7 +891,7 @@ next_no_release: */ if (pgs_done != 0 && *spanp) { deleted: if (((ret = __bam_stkrel(ndbc, 0)) != 0 || - (ret = __db_c_close(ndbc)) != 0)) + (ret = __dbc_close(ndbc)) != 0)) goto err; *donep = 0; return (0); @@ -916,13 +919,15 @@ err: if (dbc != NULL && if (ndbc != NULL) { if ((t_ret = __bam_stkrel(ndbc, STK_CLRDBC)) != 0 && ret == 0) ret = t_ret; - else if ((t_ret = __db_c_close(ndbc)) != 0 && ret == 0) + else if ((t_ret = __dbc_close(ndbc)) != 0 && ret == 0) ret = t_ret; } - if (pg != NULL && (t_ret = __memp_fput(dbmp, pg, 0) != 0) && ret == 0) + if (pg != NULL && (t_ret = + __memp_fput(dbmp, pg, dbc->priority) != 0) && ret == 0) ret = t_ret; - if (npg != NULL && (t_ret = __memp_fput(dbmp, npg, 0) != 0) && ret == 0) + if (npg != NULL && (t_ret = + __memp_fput(dbmp, npg, dbc->priority) != 0) && ret == 0) ret = t_ret; *donep = done; @@ -1213,8 +1218,10 @@ noprefix: /* Loop through the records and move them from npg to pg. */ no_check: is_dup = first_dup = next_dup = 0; - if ((ret = __memp_dirty(dbp->mpf, &cp->csp->page, dbc->txn, 0)) != 0 || - (ret = __memp_dirty(dbp->mpf, &ncp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &cp->csp->page, dbc->txn, dbc->priority, 0)) != 0 || + (ret = __memp_dirty(dbp->mpf, + &ncp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; pg = cp->csp->page; npg = ncp->csp->page; @@ -1338,8 +1345,10 @@ __bam_merge_pages(dbc, ndbc, c_data) if (nent == 0) goto free; - if ((ret = __memp_dirty(dbp->mpf, &cp->csp->page, dbc->txn, 0)) != 0 || - (ret = __memp_dirty(dbp->mpf, &ncp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &cp->csp->page, dbc->txn, dbc->priority, 0)) != 0 || + (ret = __memp_dirty(dbp->mpf, + &ncp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; pg = cp->csp->page; npg = ncp->csp->page; @@ -1415,7 +1424,7 @@ free: /* goto err; if (level == LEVEL(npg)) level = 0; - if ((ret = __memp_fput(dbmp, npg, 0)) != 0) + if ((ret = __memp_fput(dbmp, npg, dbc->priority)) != 0) goto err; npg = NULL; if (level != 0) { @@ -1495,8 +1504,10 @@ __bam_merge_internal(dbc, ndbc, level, c_data, merged) if (npg == pg) goto done; - if ((ret = __memp_dirty(dbmp, &cp->csp->page, dbc->txn, 0)) != 0 || - (ret = __memp_dirty(dbmp, &ncp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbmp, + &cp->csp->page, dbc->txn, dbc->priority, 0)) != 0 || + (ret = __memp_dirty(dbmp, + &ncp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; pg = cp->csp->page; npg = ncp->csp->page; @@ -1672,7 +1683,8 @@ fits: memset(&bi, 0, sizeof(bi)); * anything to them. */ do { - if ((ret = __memp_fput(dbmp, nsave_csp->page, 0)) != 0) + if ((ret = + __memp_fput(dbmp, nsave_csp->page, dbc->priority)) != 0) goto err; if ((ret = __LPUT(dbc, nsave_csp->lock)) != 0) goto err; @@ -1706,7 +1718,8 @@ fits: memset(&bi, 0, sizeof(bi)); goto err; if (level == LEVEL(npg)) level = 0; - if ((ret = __memp_fput(dbmp, npg, 0)) != 0) + if ((ret = + __memp_fput(dbmp, npg, dbc->priority)) != 0) goto err; npg = NULL; if (level != 0) { @@ -1776,7 +1789,7 @@ __bam_compact_dups(dbc, ppg, factor, have_lock, c_data, donep) goto err; have_lock = 1; if ((ret = __memp_dirty(dbp->mpf, ppg, - dbc->txn, 0)) != 0) + dbc->txn, dbc->priority, 0)) != 0) goto err; pg = *ppg; } @@ -1803,11 +1816,11 @@ __bam_compact_dups(dbc, ppg, factor, have_lock, c_data, donep) goto err; level = dpg->level; - if ((ret = __memp_fput(dbmp, dpg, 0)) != 0) + if ((ret = __memp_fput(dbmp, dpg, dbc->priority)) != 0) goto err; if (level == LEAFLEVEL) continue; - if ((ret = __db_c_newopd(dbc, bo->pgno, NULL, &opd)) != 0) + if ((ret = __dbc_newopd(dbc, bo->pgno, NULL, &opd)) != 0) return (ret); if (!have_lock) { if ((ret = __db_lget(dbc, 0, @@ -1815,7 +1828,7 @@ __bam_compact_dups(dbc, ppg, factor, have_lock, c_data, donep) goto err; have_lock = 1; if ((ret = __memp_dirty(dbp->mpf, ppg, - dbc->txn, 0)) != 0) + dbc->txn, dbc->priority, 0)) != 0) goto err; pg = *ppg; } @@ -1833,13 +1846,13 @@ __bam_compact_dups(dbc, ppg, factor, have_lock, c_data, donep) if (ret != 0) goto err; - ret = __db_c_close(opd); + ret = __dbc_close(opd); opd = NULL; if (ret != 0) goto err; } -err: if (opd != NULL && (t_ret = __db_c_close(opd)) != 0 && ret == 0) +err: if (opd != NULL && (t_ret = __dbc_close(opd)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -1896,7 +1909,8 @@ __bam_truncate_page(dbc, pgp, update_parent) return (__db_free(dbc, newpage)); } - if ((ret = __memp_dirty(dbp->mpf, &newpage, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &newpage, dbc->txn, dbc->priority, 0)) != 0) goto err; /* Log if necessary. */ @@ -1927,7 +1941,8 @@ __bam_truncate_page(dbc, pgp, update_parent) LSN(newpage) = lsn; /* Empty the old page. */ - if ((ret = __memp_dirty(dbp->mpf, pgp, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + pgp, dbc->txn, dbc->priority, 0)) != 0) goto err; if (TYPE(*pgp) == P_OVERFLOW) OV_LEN(*pgp) = 0; @@ -1970,7 +1985,8 @@ __bam_truncate_page(dbc, pgp, update_parent) /* Update the parent. */ epg = &cp->csp[-1]; - if ((ret = __memp_dirty(dbp->mpf, &epg->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &epg->page, dbc->txn, dbc->priority, 0)) != 0) return (ret); switch (TYPE(epg->page)) { @@ -1997,7 +2013,7 @@ __bam_truncate_page(dbc, pgp, update_parent) done: return (0); -err: (void)__memp_fput(dbp->mpf, newpage, 0); +err: (void)__memp_fput(dbp->mpf, newpage, dbc->priority); return (ret); } @@ -2028,7 +2044,7 @@ __bam_truncate_overflow(dbc, pgno, pg_lock, c_data) return (ret); while ((pgno = NEXT_PGNO(page)) != PGNO_INVALID) { - if ((ret = __memp_fput(dbp->mpf, page, 0)) != 0) + if ((ret = __memp_fput(dbp->mpf, page, dbc->priority)) != 0) return (ret); if ((ret = __memp_fget(dbp->mpf, &pgno, dbc->txn, 0, &page)) != 0) @@ -2046,7 +2062,8 @@ __bam_truncate_overflow(dbc, pgno, pg_lock, c_data) } if (page != NULL && - (t_ret = __memp_fput(dbp->mpf, page, 0)) != 0 && ret == 0) + (t_ret = __memp_fput( + dbp->mpf, page, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; @@ -2132,7 +2149,7 @@ __bam_truncate_root_page(dbc, pg, indx, c_data) *pgnop = newpgno; err: if (page != NULL && (t_ret = - __memp_fput(dbp->mpf, page, 0)) != 0 && ret == 0) + __memp_fput(dbp->mpf, page, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -2312,7 +2329,7 @@ new_txn: break; } while (pgno != cp->root); - if ((ret = __db_c_close(dbc)) != 0) + if ((ret = __dbc_close(dbc)) != 0) goto err; dbc = NULL; if (local_txn) { @@ -2325,7 +2342,7 @@ new_txn: err: if (dbc != NULL && (t_ret = __bam_stkrel(dbc, 0)) != 0 && ret == 0) ret = t_ret; - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; if (local_txn && txn != NULL && (t_ret = __txn_abort(txn)) != 0 && ret == 0) @@ -2363,10 +2380,10 @@ __bam_free_freelist(dbp, txn) { DBC *dbc; DB_LOCK lock; - int ret, t_ret; + int auto_commit, ret, t_ret; LOCK_INIT(lock); - ret = 0; + auto_commit = ret = 0; /* * If we are not in a transaction then we need to get @@ -2376,8 +2393,21 @@ __bam_free_freelist(dbp, txn) dbc = NULL; if (IS_DB_AUTO_COMMIT(dbp, txn)) { + /* + * We must not timeout the lock or we will not free the list. + * We ignore errors from txn_begin as there is little that + * the application can do with the error and we want to + * get the lock and free the list if at all possible. + */ + if (__txn_begin(dbp->dbenv, NULL, &txn, 0) == 0) { + (void)__lock_set_timeout(dbp->dbenv, + txn->locker, 0, DB_SET_TXN_TIMEOUT); + (void)__lock_set_timeout(dbp->dbenv, + txn->locker, 0, DB_SET_LOCK_TIMEOUT); + auto_commit = 1; + } /* Get a cursor so we can call __db_lget. */ - if ((ret = __db_cursor(dbp, NULL, &dbc, 0)) != 0) + if ((ret = __db_cursor(dbp, txn, &dbc, 0)) != 0) return (ret); if ((ret = __db_lget(dbc, @@ -2390,7 +2420,10 @@ __bam_free_freelist(dbp, txn) err: if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) + ret = t_ret; + + if (auto_commit && __txn_abort(txn) != 0 && ret == 0) ret = t_ret; return (ret); diff --git a/db/btree/bt_compare.c b/db/btree/bt_compare.c index 17950a664..3b35a37e3 100644 --- a/db/btree/bt_compare.c +++ b/db/btree/bt_compare.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_compare.c,v 12.7 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_compare.c,v 12.9 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" diff --git a/db/btree/bt_conv.c b/db/btree/bt_conv.c index 04de0688c..3ba6fd116 100644 --- a/db/btree/bt_conv.c +++ b/db/btree/bt_conv.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_conv.c,v 12.5 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_conv.c,v 12.7 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" diff --git a/db/btree/bt_curadj.c b/db/btree/bt_curadj.c index 950d2bfac..40f037e5e 100644 --- a/db/btree/bt_curadj.c +++ b/db/btree/bt_curadj.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_curadj.c,v 12.11 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_curadj.c,v 12.14 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -229,11 +228,11 @@ __bam_opd_cursor(dbp, dbc, first, tpgno, ti) * If duplicates aren't sorted, we've just created a Recno tree. * * Note that in order to get here at all, there shouldn't be - * an old off-page dup cursor--to augment the checking db_c_newopd + * an old off-page dup cursor--to augment the checking dbc_newopd * will do, assert this. */ DB_ASSERT(dbp->dbenv, orig_cp->opd == NULL); - if ((ret = __db_c_newopd(dbc, tpgno, orig_cp->opd, &dbc_nopd)) != 0) + if ((ret = __dbc_newopd(dbc, tpgno, orig_cp->opd, &dbc_nopd)) != 0) return (ret); cp = (BTREE_CURSOR *)dbc_nopd->internal; @@ -391,7 +390,7 @@ loop: MUTEX_LOCK(dbenv, dbp->mutex); MVCC_SKIP_CURADJ(dbc, fpgno)) continue; MUTEX_UNLOCK(dbenv, dbp->mutex); - if ((ret = __db_c_close(orig_cp->opd)) != 0) + if ((ret = __dbc_close(orig_cp->opd)) != 0) goto err; orig_cp->opd = NULL; orig_cp->indx = fi; diff --git a/db/btree/bt_cursor.c b/db/btree/bt_cursor.c index dbcda5a40..7239145d8 100644 --- a/db/btree/bt_cursor.c +++ b/db/btree/bt_cursor.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_cursor.c,v 12.23 2006/09/14 23:55:24 bostic Exp $ + * $Id: bt_cursor.c,v 12.29 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -16,18 +15,18 @@ #include "dbinc/mp.h" static int __bam_bulk __P((DBC *, DBT *, u_int32_t)); -static int __bam_c_close __P((DBC *, db_pgno_t, int *)); -static int __bam_c_del __P((DBC *)); -static int __bam_c_destroy __P((DBC *)); -static int __bam_c_get __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); -static int __bam_c_getstack __P((DBC *)); -static int __bam_c_next __P((DBC *, int, int)); -static int __bam_c_physdel __P((DBC *)); -static int __bam_c_prev __P((DBC *)); -static int __bam_c_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); -static int __bam_c_search __P((DBC *, +static int __bamc_close __P((DBC *, db_pgno_t, int *)); +static int __bamc_del __P((DBC *)); +static int __bamc_destroy __P((DBC *)); +static int __bamc_get __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); +static int __bamc_getstack __P((DBC *)); +static int __bamc_next __P((DBC *, int, int)); +static int __bamc_physdel __P((DBC *)); +static int __bamc_prev __P((DBC *)); +static int __bamc_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); +static int __bamc_search __P((DBC *, db_pgno_t, const DBT *, u_int32_t, int *)); -static int __bam_c_writelock __P((DBC *)); +static int __bamc_writelock __P((DBC *)); static int __bam_getboth_finddatum __P((DBC *, DBT *, u_int32_t)); static int __bam_getbothc __P((DBC *, DBT *)); static int __bam_get_prev __P((DBC *)); @@ -49,7 +48,7 @@ static int __bam_isopd __P((DBC *, db_pgno_t *)); #define ACQUIRE(dbc, mode, lpgno, lock, fpgno, pagep, flags, ret) do { \ DB_MPOOLFILE *__mpf = (dbc)->dbp->mpf; \ if ((pagep) != NULL) { \ - ret = __memp_fput(__mpf, pagep, 0); \ + ret = __memp_fput(__mpf, pagep, dbc->priority); \ pagep = NULL; \ } else \ ret = 0; \ @@ -99,7 +98,7 @@ static int __bam_isopd __P((DBC *, db_pgno_t *)); DB_MPOOLFILE *__mpf = (dbc)->dbp->mpf; \ int __t_ret; \ if ((__cp->page) != NULL) { \ - __t_ret = __memp_fput(__mpf, __cp->page, 0); \ + __t_ret = __memp_fput(__mpf, __cp->page, dbc->priority);\ __cp->page = NULL; \ } else \ __t_ret = 0; \ @@ -140,13 +139,13 @@ static int __bam_isopd __P((DBC *, db_pgno_t *)); IS_DUPLICATE(dbc, (dbc)->internal->indx, orig_indx))) /* - * __bam_c_init -- + * __bamc_init -- * Initialize the access private portion of a cursor * - * PUBLIC: int __bam_c_init __P((DBC *, DBTYPE)); + * PUBLIC: int __bamc_init __P((DBC *, DBTYPE)); */ int -__bam_c_init(dbc, dbtype) +__bamc_init(dbc, dbtype) DBC *dbc; DBTYPE dbtype; { @@ -161,42 +160,42 @@ __bam_c_init(dbc, dbtype) return (ret); /* Initialize methods. */ - dbc->c_close = __db_c_close_pp; - dbc->c_count = __db_c_count_pp; - dbc->c_del = __db_c_del_pp; - dbc->c_dup = __db_c_dup_pp; - dbc->c_get = __db_c_get_pp; - dbc->c_pget = __db_c_pget_pp; - dbc->c_put = __db_c_put_pp; + dbc->close = dbc->c_close = __dbc_close_pp; + dbc->count = dbc->c_count = __dbc_count_pp; + dbc->del = dbc->c_del = __dbc_del_pp; + dbc->dup = dbc->c_dup = __dbc_dup_pp; + dbc->get = dbc->c_get = __dbc_get_pp; + dbc->pget = dbc->c_pget = __dbc_pget_pp; + dbc->put = dbc->c_put = __dbc_put_pp; if (dbtype == DB_BTREE) { - dbc->c_am_bulk = __bam_bulk; - dbc->c_am_close = __bam_c_close; - dbc->c_am_del = __bam_c_del; - dbc->c_am_destroy = __bam_c_destroy; - dbc->c_am_get = __bam_c_get; - dbc->c_am_put = __bam_c_put; - dbc->c_am_writelock = __bam_c_writelock; + dbc->am_bulk = __bam_bulk; + dbc->am_close = __bamc_close; + dbc->am_del = __bamc_del; + dbc->am_destroy = __bamc_destroy; + dbc->am_get = __bamc_get; + dbc->am_put = __bamc_put; + dbc->am_writelock = __bamc_writelock; } else { - dbc->c_am_bulk = __bam_bulk; - dbc->c_am_close = __bam_c_close; - dbc->c_am_del = __ram_c_del; - dbc->c_am_destroy = __bam_c_destroy; - dbc->c_am_get = __ram_c_get; - dbc->c_am_put = __ram_c_put; - dbc->c_am_writelock = __bam_c_writelock; + dbc->am_bulk = __bam_bulk; + dbc->am_close = __bamc_close; + dbc->am_del = __ramc_del; + dbc->am_destroy = __bamc_destroy; + dbc->am_get = __ramc_get; + dbc->am_put = __ramc_put; + dbc->am_writelock = __bamc_writelock; } return (0); } /* - * __bam_c_refresh + * __bamc_refresh * Set things up properly for cursor re-use. * - * PUBLIC: int __bam_c_refresh __P((DBC *)); + * PUBLIC: int __bamc_refresh __P((DBC *)); */ int -__bam_c_refresh(dbc) +__bamc_refresh(dbc) DBC *dbc; { BTREE *t; @@ -258,11 +257,11 @@ __bam_c_refresh(dbc) } /* - * __bam_c_close -- + * __bamc_close -- * Close down the cursor. */ static int -__bam_c_close(dbc, root_pgno, rmroot) +__bamc_close(dbc, root_pgno, rmroot) DBC *dbc; db_pgno_t root_pgno; int *rmroot; @@ -362,7 +361,7 @@ __bam_c_close(dbc, root_pgno, rmroot) case DB_UNKNOWN: default: ret = __db_unknown_type(dbp->dbenv, - "__bam_c_close", dbc->dbtype); + "__bamc_close", dbc->dbtype); goto err; } } @@ -378,7 +377,7 @@ __bam_c_close(dbc, root_pgno, rmroot) if ((ret = __memp_fget(mpf, &cp->pgno, dbc->txn, 0, &h)) != 0) goto err; root_pgno = GET_BOVERFLOW(dbp, h, cp->indx + O_INDX)->pgno; - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbc->priority)) != 0) goto err; dbc_c = dbc_opd; @@ -402,7 +401,7 @@ __bam_c_close(dbc, root_pgno, rmroot) case DB_UNKNOWN: default: ret = __db_unknown_type( - dbp->dbenv, "__bam_c_close", dbc->dbtype); + dbp->dbenv, "__bamc_close", dbc->dbtype); goto err; } } @@ -487,7 +486,7 @@ delete: /* if ((ret = __memp_fget(mpf, &cp_c->pgno, dbc->txn, DB_MPOOL_DIRTY, &cp_c->page)) != 0) goto err; - if ((ret = __bam_c_physdel(dbc_c)) != 0) + if ((ret = __bamc_physdel(dbc_c)) != 0) goto err; } @@ -516,7 +515,7 @@ delete: /* if ((ret = __db_free(dbc, h)) != 0) goto err; } else { - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbc->priority)) != 0) goto err; goto done; } @@ -537,7 +536,7 @@ delete: /* if ((ret = __memp_fget(mpf, &cp->pgno, dbc->txn, DB_MPOOL_DIRTY, &cp->page)) != 0) goto err; - if ((ret = __bam_c_physdel(dbc)) != 0) + if ((ret = __bamc_physdel(dbc)) != 0) goto err; } else *rmroot = 1; @@ -559,11 +558,11 @@ done: /* } /* - * __bam_c_destroy -- + * __bamc_destroy -- * Close a single cursor -- internal version. */ static int -__bam_c_destroy(dbc) +__bamc_destroy(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -579,13 +578,13 @@ __bam_c_destroy(dbc) } /* - * __bam_c_count -- + * __bamc_count -- * Return a count of on and off-page duplicates. * - * PUBLIC: int __bam_c_count __P((DBC *, db_recno_t *)); + * PUBLIC: int __bamc_count __P((DBC *, db_recno_t *)); */ int -__bam_c_count(dbc, recnop) +__bamc_count(dbc, recnop) DBC *dbc; db_recno_t *recnop; { @@ -661,18 +660,18 @@ __bam_c_count(dbc, recnop) *recnop = recno; - ret = __memp_fput(mpf, cp->page, 0); + ret = __memp_fput(mpf, cp->page, dbc->priority); cp->page = NULL; return (ret); } /* - * __bam_c_del -- + * __bamc_del -- * Delete using a cursor. */ static int -__bam_c_del(dbc) +__bamc_del(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -704,7 +703,7 @@ __bam_c_del(dbc) * we lock the single page. */ if (F_ISSET(cp, C_RECNUM)) { - if ((ret = __bam_c_getstack(dbc)) != 0) + if ((ret = __bamc_getstack(dbc)) != 0) goto err; cp->page = cp->csp->page; } else { @@ -714,7 +713,8 @@ __bam_c_del(dbc) } /* Mark the page dirty. */ - if ((ret = __memp_dirty(mpf, &cp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &cp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; /* Log the change. */ @@ -742,7 +742,8 @@ err: /* (void)__bam_stkrel(dbc, 0); } else if (cp->page != NULL && - (t_ret = __memp_fput(mpf, cp->page, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, + cp->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; cp->page = NULL; @@ -758,14 +759,14 @@ err: /* } /* - * __bam_c_dup -- + * __bamc_dup -- * Duplicate a btree cursor, such that the new one holds appropriate * locks for the position of the original. * - * PUBLIC: int __bam_c_dup __P((DBC *, DBC *)); + * PUBLIC: int __bamc_dup __P((DBC *, DBC *)); */ int -__bam_c_dup(orig_dbc, new_dbc) +__bamc_dup(orig_dbc, new_dbc) DBC *orig_dbc, *new_dbc; { BTREE_CURSOR *orig, *new; @@ -781,11 +782,11 @@ __bam_c_dup(orig_dbc, new_dbc) } /* - * __bam_c_get -- + * __bamc_get -- * Get using a cursor (btree). */ static int -__bam_c_get(dbc, key, data, flags, pgnop) +__bamc_get(dbc, key, data, flags, pgnop) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -825,14 +826,14 @@ __bam_c_get(dbc, key, data, flags, pgnop) break; case DB_FIRST: newopd = 1; - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, flags, &exact)) != 0) goto err; break; case DB_GET_BOTH: case DB_GET_BOTH_RANGE: /* - * There are two ways to get here based on DBcursor->c_get + * There are two ways to get here based on DBcursor->get * with the DB_GET_BOTH/DB_GET_BOTH_RANGE flags set: * * 1. Searching a sorted off-page duplicate tree: do a tree @@ -845,7 +846,7 @@ __bam_c_get(dbc, key, data, flags, pgnop) * with an on-page search. */ if (F_ISSET(dbc, DBC_OPD)) { - if ((ret = __bam_c_search( + if ((ret = __bamc_search( dbc, PGNO_INVALID, data, flags, &exact)) != 0) goto err; if (flags == DB_GET_BOTH) { @@ -864,10 +865,10 @@ __bam_c_get(dbc, key, data, flags, pgnop) */ if ((cp->indx == NUM_ENT(cp->page) || IS_CUR_DELETED(dbc)) && - (ret = __bam_c_next(dbc, 1, 0)) != 0) + (ret = __bamc_next(dbc, 1, 0)) != 0) goto err; } else { - if ((ret = __bam_c_search( + if ((ret = __bamc_search( dbc, PGNO_INVALID, key, flags, &exact)) != 0) return (ret); if (!exact) { @@ -890,22 +891,22 @@ __bam_c_get(dbc, key, data, flags, pgnop) break; case DB_LAST: newopd = 1; - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, flags, &exact)) != 0) goto err; break; case DB_NEXT: newopd = 1; if (cp->pgno == PGNO_INVALID) { - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, DB_FIRST, &exact)) != 0) goto err; } else - if ((ret = __bam_c_next(dbc, 1, 0)) != 0) + if ((ret = __bamc_next(dbc, 1, 0)) != 0) goto err; break; case DB_NEXT_DUP: - if ((ret = __bam_c_next(dbc, 1, 0)) != 0) + if ((ret = __bamc_next(dbc, 1, 0)) != 0) goto err; if (!IS_CUR_DUPLICATE(dbc, orig_pgno, orig_indx)) { ret = DB_NOTFOUND; @@ -915,47 +916,55 @@ __bam_c_get(dbc, key, data, flags, pgnop) case DB_NEXT_NODUP: newopd = 1; if (cp->pgno == PGNO_INVALID) { - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, DB_FIRST, &exact)) != 0) goto err; } else do { - if ((ret = __bam_c_next(dbc, 1, 0)) != 0) + if ((ret = __bamc_next(dbc, 1, 0)) != 0) goto err; } while (IS_CUR_DUPLICATE(dbc, orig_pgno, orig_indx)); break; case DB_PREV: newopd = 1; if (cp->pgno == PGNO_INVALID) { - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, DB_LAST, &exact)) != 0) goto err; } else - if ((ret = __bam_c_prev(dbc)) != 0) + if ((ret = __bamc_prev(dbc)) != 0) goto err; break; + case DB_PREV_DUP: + if ((ret = __bamc_prev(dbc)) != 0) + goto err; + if (!IS_CUR_DUPLICATE(dbc, orig_pgno, orig_indx)) { + ret = DB_NOTFOUND; + goto err; + } + break; case DB_PREV_NODUP: newopd = 1; if (cp->pgno == PGNO_INVALID) { - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, NULL, DB_LAST, &exact)) != 0) goto err; } else do { - if ((ret = __bam_c_prev(dbc)) != 0) + if ((ret = __bamc_prev(dbc)) != 0) goto err; } while (IS_CUR_DUPLICATE(dbc, orig_pgno, orig_indx)); break; case DB_SET: case DB_SET_RECNO: newopd = 1; - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, key, flags, &exact)) != 0) goto err; break; case DB_SET_RANGE: newopd = 1; - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, PGNO_INVALID, key, flags, &exact)) != 0) goto err; @@ -966,11 +975,11 @@ __bam_c_get(dbc, key, data, flags, pgnop) * the next entry. */ if (cp->indx == NUM_ENT(cp->page) || IS_CUR_DELETED(dbc)) - if ((ret = __bam_c_next(dbc, 0, 0)) != 0) + if ((ret = __bamc_next(dbc, 0, 0)) != 0) goto err; break; default: - ret = __db_unknown_flag(dbp->dbenv, "__bam_c_get", flags); + ret = __db_unknown_flag(dbp->dbenv, "__bamc_get", flags); goto err; } @@ -983,8 +992,8 @@ __bam_c_get(dbc, key, data, flags, pgnop) err: /* * Regardless of whether we were successful or not, if the cursor - * moved, clear the delete flag, DBcursor->c_get never references - * a deleted key, if it moved at all. + * moved, clear the delete flag, DBcursor->get never references a + * deleted key, if it moved at all. */ if (F_ISSET(cp, C_DELETED) && (cp->pgno != orig_pgno || cp->indx != orig_indx)) @@ -1002,14 +1011,14 @@ __bam_get_prev(dbc) db_pgno_t pgno; int ret; - if ((ret = __bam_c_prev(dbc)) != 0) + if ((ret = __bamc_prev(dbc)) != 0) return (ret); if (__bam_isopd(dbc, &pgno)) { cp = (BTREE_CURSOR *)dbc->internal; - if ((ret = __db_c_newopd(dbc, pgno, cp->opd, &cp->opd)) != 0) + if ((ret = __dbc_newopd(dbc, pgno, cp->opd, &cp->opd)) != 0) return (ret); - if ((ret = cp->opd->c_am_get(cp->opd, + if ((ret = cp->opd->am_get(cp->opd, &key, &data, DB_LAST, NULL)) != 0) return (ret); } @@ -1329,7 +1338,7 @@ get_space: /* If we are off the page then try to the next page. */ if (ret == 0 && next_key && indx >= NUM_ENT(pg)) { cp->indx = indx; - ret = __bam_c_next(dbc, 0, 1); + ret = __bamc_next(dbc, 0, 1); if (ret == 0) goto next_pg; if (ret != DB_NOTFOUND) @@ -1428,10 +1437,10 @@ __bam_bulk_duplicates(dbc, pgno, dbuf, keyoff, offpp, dpp, spacep, no_dup) opd = cp->opd; if (opd == NULL) { - if ((ret = __db_c_newopd(dbc, pgno, NULL, &opd)) != 0) + if ((ret = __dbc_newopd(dbc, pgno, NULL, &opd)) != 0) return (ret); cp->opd = opd; - if ((ret = opd->c_am_get(opd, + if ((ret = opd->am_get(opd, &key, &data, DB_FIRST, NULL)) != 0) goto close_opd; } @@ -1452,7 +1461,7 @@ __bam_bulk_duplicates(dbc, pgno, dbuf, keyoff, offpp, dpp, spacep, no_dup) do { /* Fetch the current record. No initial move. */ - if ((ret = __bam_c_next(opd, 0, 0)) != 0) + if ((ret = __bamc_next(opd, 0, 0)) != 0) break; pg = cp->page; indx = cp->indx; @@ -1554,7 +1563,7 @@ contin: } else if (indx != 0) cp->indx--; else { - t_ret = __bam_c_prev(opd); + t_ret = __bamc_prev(opd); if (t_ret == DB_NOTFOUND) goto close_opd; if (t_ret != 0) @@ -1568,7 +1577,7 @@ contin: close_opd: if (ret == DB_NOTFOUND) ret = 0; - if ((t_ret = __db_c_close(opd)) != 0 && ret == 0) + if ((t_ret = __dbc_close(opd)) != 0 && ret == 0) ret = t_ret; ((BTREE_CURSOR *)dbc->internal)->opd = NULL; } @@ -1625,16 +1634,16 @@ __bam_getbothc(dbc, data) return (DB_NOTFOUND); /* Discard the current page, we're going to do a full search. */ - if ((ret = __memp_fput(mpf, cp->page, 0)) != 0) + if ((ret = __memp_fput(mpf, cp->page, dbc->priority)) != 0) return (ret); cp->page = NULL; - return (__bam_c_search(dbc, + return (__bamc_search(dbc, PGNO_INVALID, data, DB_GET_BOTH, &exact)); } /* - * We're doing a DBC->c_get(DB_GET_BOTHC) and we're already searching + * We're doing a DBC->get(DB_GET_BOTHC) and we're already searching * a set of on-page duplicates (either sorted or unsorted). Continue * a linear search from after the current position. * @@ -1753,11 +1762,11 @@ __bam_getboth_finddatum(dbc, data, flags) } /* - * __bam_c_put -- + * __bamc_put -- * Put using a cursor. */ static int -__bam_c_put(dbc, key, data, flags, pgnop) +__bamc_put(dbc, key, data, flags, pgnop) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -1805,13 +1814,13 @@ split: ret = stack = 0; own = 0; /* * Searching off-page, sorted duplicate tree: do a tree search - * for the correct item; __bam_c_search returns the smallest + * for the correct item; __bamc_search returns the smallest * slot greater than the key, use it. * * See comment below regarding where we can start the search. */ if (F_ISSET(dbc, DBC_OPD)) { - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, F_ISSET(cp, C_RECNUM) ? cp->root : root_pgno, data, flags, &exact)) != 0) goto err; @@ -1839,7 +1848,7 @@ split: ret = stack = 0; * numbering. In that case, we'll need the true root page * in order to adjust the record count. */ - if ((ret = __bam_c_search(dbc, + if ((ret = __bamc_search(dbc, F_ISSET(cp, C_RECNUM) ? cp->root : root_pgno, key, flags == DB_KEYFIRST || dbp->dup_compare != NULL ? DB_KEYFIRST : DB_KEYLAST, &exact)) != 0) @@ -1847,7 +1856,7 @@ split: ret = stack = 0; stack = 1; /* - * If we don't have an exact match, __bam_c_search returned + * If we don't have an exact match, __bamc_search returned * the smallest slot greater than the key, use it. */ if (!exact) { @@ -1931,7 +1940,7 @@ split: ret = stack = 0; } break; default: - ret = __db_unknown_flag(dbp->dbenv, "__bam_c_put", flags); + ret = __db_unknown_flag(dbp->dbenv, "__bamc_put", flags); goto err; } @@ -2046,13 +2055,13 @@ done: /* } /* - * __bam_c_rget -- + * __bamc_rget -- * Return the record number for a cursor. * - * PUBLIC: int __bam_c_rget __P((DBC *, DBT *)); + * PUBLIC: int __bamc_rget __P((DBC *, DBT *)); */ int -__bam_c_rget(dbc, data) +__bamc_rget(dbc, data) DBC *dbc; DBT *data; { @@ -2078,7 +2087,7 @@ __bam_c_rget(dbc, data) if ((ret = __db_ret(dbp, dbc->txn, cp->page, cp->indx, &dbt, &dbc->my_rkey.data, &dbc->my_rkey.ulen)) != 0) goto err; - ret = __memp_fput(mpf, cp->page, 0); + ret = __memp_fput(mpf, cp->page, dbc->priority); cp->page = NULL; if (ret != 0) return (ret); @@ -2099,11 +2108,11 @@ err: if ((t_ret = __bam_stkrel(dbc, 0)) != 0 && ret == 0) } /* - * __bam_c_writelock -- + * __bamc_writelock -- * Upgrade the cursor to a write lock. */ static int -__bam_c_writelock(dbc) +__bamc_writelock(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -2125,11 +2134,11 @@ __bam_c_writelock(dbc) } /* - * __bam_c_next -- + * __bamc_next -- * Move to the next record. */ static int -__bam_c_next(dbc, initial_move, deleted_okay) +__bamc_next(dbc, initial_move, deleted_okay) DBC *dbc; int initial_move, deleted_okay; { @@ -2175,8 +2184,7 @@ __bam_c_next(dbc, initial_move, deleted_okay) * NUM_ENT, we may have incremented indx before the test. */ if (cp->indx >= NUM_ENT(cp->page)) { - if ((pgno - = NEXT_PGNO(cp->page)) == PGNO_INVALID) + if ((pgno = NEXT_PGNO(cp->page)) == PGNO_INVALID) return (DB_NOTFOUND); ACQUIRE_CUR(dbc, lock_mode, pgno, 0, ret); @@ -2195,11 +2203,11 @@ __bam_c_next(dbc, initial_move, deleted_okay) } /* - * __bam_c_prev -- + * __bamc_prev -- * Move to the previous record. */ static int -__bam_c_prev(dbc) +__bamc_prev(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -2258,11 +2266,11 @@ __bam_c_prev(dbc) } /* - * __bam_c_search -- + * __bamc_search -- * Move to a specified record. */ static int -__bam_c_search(dbc, root_pgno, key, flags, exactp) +__bamc_search(dbc, root_pgno, key, flags, exactp) DBC *dbc; db_pgno_t root_pgno; const DBT *key; @@ -2480,7 +2488,7 @@ search: if ((ret = __bam_search(dbc, root_pgno, return (ret); break; default: - return (__db_unknown_flag(dbp->dbenv, "__bam_c_search", flags)); + return (__db_unknown_flag(dbp->dbenv, "__bamc_search", flags)); } /* Initialize the cursor from the stack. */ cp->page = cp->csp->page; @@ -2492,22 +2500,22 @@ search: if ((ret = __bam_search(dbc, root_pgno, /* If on an empty page or a deleted record, move to the next one. */ if (flags == DB_FIRST && (NUM_ENT(cp->page) == 0 || IS_CUR_DELETED(dbc))) - if ((ret = __bam_c_next(dbc, 0, 0)) != 0) + if ((ret = __bamc_next(dbc, 0, 0)) != 0) return (ret); if (flags == DB_LAST && (NUM_ENT(cp->page) == 0 || IS_CUR_DELETED(dbc))) - if ((ret = __bam_c_prev(dbc)) != 0) + if ((ret = __bamc_prev(dbc)) != 0) return (ret); return (0); } /* - * __bam_c_physdel -- + * __bamc_physdel -- * Physically remove an item from the page. */ static int -__bam_c_physdel(dbc) +__bamc_physdel(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -2547,7 +2555,7 @@ __bam_c_physdel(dbc) * the last key the page held. * * !!! - * Note that because __bam_c_physdel is always called from a cursor + * Note that because __bamc_physdel is always called from a cursor * close, it should be safe to use the cursor's own "my_rkey" memory * to temporarily hold this key. We shouldn't own any returned-data * memory of interest--if we do, we're in trouble anyway. @@ -2573,7 +2581,8 @@ __bam_c_physdel(dbc) * Delete the key item first, otherwise the on-page duplicate checks * in __bam_ditem() won't work! */ - if ((ret = __memp_dirty(dbp->mpf, &cp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &cp->page, dbc->txn, dbc->priority, 0)) != 0) return (ret); if (TYPE(cp->page) == P_LBTREE) { if ((ret = __bam_ditem(dbc, cp->page, cp->indx)) != 0) @@ -2622,11 +2631,11 @@ __bam_c_physdel(dbc) } /* - * __bam_c_getstack -- + * __bamc_getstack -- * Acquire a full stack for a cursor. */ static int -__bam_c_getstack(dbc) +__bamc_getstack(dbc) DBC *dbc; { BTREE_CURSOR *cp; @@ -2660,7 +2669,7 @@ __bam_c_getstack(dbc) &dbt, SR_KEYFIRST, 1, NULL, &exact); err: /* Discard the key and the page. */ - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -2716,7 +2725,7 @@ __bam_opd_exists(dbc, pgno) else ret = DB_KEYEXIST; - (void)__memp_fput(dbc->dbp->mpf, h, 0); + (void)__memp_fput(dbc->dbp->mpf, h, dbc->priority); return (ret); } diff --git a/db/btree/bt_delete.c b/db/btree/bt_delete.c index 04efaafa2..3eadb461c 100644 --- a/db/btree/bt_delete.c +++ b/db/btree/bt_delete.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_delete.c,v 12.21 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_delete.c,v 12.25 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -274,7 +273,8 @@ __bam_dpages(dbc, use_top, update) * transactions, this lets the rest of the tree get back to business * immediately. */ - if ((ret = __memp_dirty(mpf, &epg->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &epg->page, dbc->txn, dbc->priority, 0)) != 0) goto discard; if ((ret = __bam_ditem(dbc, epg->page, epg->indx)) != 0) goto discard; @@ -293,7 +293,7 @@ __bam_dpages(dbc, use_top, update) pgno = PGNO(epg->page); nitems = NUM_ENT(epg->page); - ret = __memp_fput(mpf, epg->page, 0); + ret = __memp_fput(mpf, epg->page, dbc->priority); if ((t_ret = __TLPUT(dbc, epg->lock)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -301,7 +301,8 @@ __bam_dpages(dbc, use_top, update) /* Then, discard any pages that we don't care about. */ discard: for (epg = cp->sp; epg < stack_epg; ++epg) { - if ((t_ret = __memp_fput(mpf, epg->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + epg->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; epg->page = NULL; if ((t_ret = __TLPUT(dbc, epg->lock)) != 0 && ret == 0) @@ -312,7 +313,8 @@ discard: for (epg = cp->sp; epg < stack_epg; ++epg) { /* Free the rest of the pages in the stack. */ while (++epg <= cp->csp) { - if ((ret = __memp_dirty(mpf, &epg->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &epg->page, dbc->txn, dbc->priority, 0)) != 0) goto err; /* * Delete page entries so they will be restored as part of @@ -350,7 +352,8 @@ discard: for (epg = cp->sp; epg < stack_epg; ++epg) { err_inc: ++epg; err: for (; epg <= cp->csp; ++epg) { if (epg->page != NULL) - (void)__memp_fput(mpf, epg->page, 0); + (void)__memp_fput(mpf, + epg->page, dbc->priority); (void)__TLPUT(dbc, epg->lock); } BT_STK_CLR(cp); @@ -470,12 +473,14 @@ stop: done = 1; if ((t_ret = __TLPUT(dbc, p_lock)) != 0 && ret == 0) ret = t_ret; if (parent != NULL && - (t_ret = __memp_fput(mpf, parent, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, + parent, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, c_lock)) != 0 && ret == 0) ret = t_ret; if (child != NULL && - (t_ret = __memp_fput(mpf, child, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, + child, dbc->priority)) != 0 && ret == 0) ret = t_ret; } @@ -558,7 +563,7 @@ __bam_relink(dbc, pagep, new_pgno) np->prev_pgno = pagep->prev_pgno; else np->prev_pgno = new_pgno; - ret = __memp_fput(mpf, np, 0); + ret = __memp_fput(mpf, np, dbc->priority); if ((t_ret = __TLPUT(dbc, npl)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -570,7 +575,7 @@ __bam_relink(dbc, pagep, new_pgno) pp->next_pgno = pagep->next_pgno; else pp->next_pgno = new_pgno; - ret = __memp_fput(mpf, pp, 0); + ret = __memp_fput(mpf, pp, dbc->priority); if ((t_ret = __TLPUT(dbc, ppl)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -579,10 +584,10 @@ __bam_relink(dbc, pagep, new_pgno) return (0); err: if (np != NULL) - (void)__memp_fput(mpf, np, 0); + (void)__memp_fput(mpf, np, dbc->priority); (void)__TLPUT(dbc, npl); if (pp != NULL) - (void)__memp_fput(mpf, pp, 0); + (void)__memp_fput(mpf, pp, dbc->priority); (void)__TLPUT(dbc, ppl); return (ret); } @@ -615,12 +620,12 @@ __bam_pupdate(dbc, lpg) */ for (epg = &cp->csp[-1]; epg >= cp->sp; epg--) { if ((ret = __memp_dirty(dbc->dbp->mpf, - &epg->page, dbc->txn, 0)) != 0) + &epg->page, dbc->txn, dbc->priority, 0)) != 0) return (ret); if ((ret = __bam_ditem(dbc, epg->page, epg->indx)) != 0) return (ret); epg->indx--; - if ((ret = __bam_pinsert(dbc, epg, + if ((ret = __bam_pinsert(dbc, epg, 0, lpg, epg[1].page, BPI_NORECNUM)) != 0) { if (ret == DB_NEEDSPLIT) { /* This should not happen. */ diff --git a/db/btree/bt_method.c b/db/btree/bt_method.c index ba71116e0..8cc4e516d 100644 --- a/db/btree/bt_method.c +++ b/db/btree/bt_method.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: bt_method.c,v 12.6 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_method.c,v 12.8 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" diff --git a/db/btree/bt_open.c b/db/btree/bt_open.c index 916223258..e3df123a0 100644 --- a/db/btree/bt_open.c +++ b/db/btree/bt_open.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_open.c,v 12.12 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_open.c,v 12.18 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -329,12 +328,12 @@ __bam_read_root(dbp, txn, base_pgno, flags) err: /* Put the metadata page back. */ if (meta != NULL && - (t_ret = __memp_fput(mpf, meta, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __LPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -445,7 +444,7 @@ __bam_new_file(dbp, txn, fhp, name) if ((ret = __db_log_page(dbp, txn, &lsn, pgno, (PAGE *)meta)) != 0) goto err; - ret = __memp_fput(mpf, meta, 0); + ret = __memp_fput(mpf, meta, dbp->priority); meta = NULL; if (ret != 0) goto err; @@ -461,7 +460,7 @@ __bam_new_file(dbp, txn, fhp, name) if ((ret = __db_log_page(dbp, txn, &root->lsn, pgno, root)) != 0) goto err; - ret = __memp_fput(mpf, root, 0); + ret = __memp_fput(mpf, root, dbp->priority); root = NULL; if (ret != 0) goto err; @@ -511,10 +510,12 @@ err: if (buf != NULL) __os_free(dbenv, buf); else { if (meta != NULL && - (t_ret = __memp_fput(mpf, meta, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, + meta, dbp->priority)) != 0 && ret == 0) ret = t_ret; if (root != NULL && - (t_ret = __memp_fput(mpf, root, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, + root, dbp->priority)) != 0 && ret == 0) ret = t_ret; } return (ret); @@ -572,6 +573,10 @@ __bam_new_subdb(mdbp, dbp, txn) root->level = LEAFLEVEL; if (DBENV_LOGGING(dbenv) && +#if !defined(DEBUG_WOP) + txn != NULL && +#endif + (ret = __bam_root_log(mdbp, txn, &meta->dbmeta.lsn, 0, meta->dbmeta.pgno, root->pgno, &meta->dbmeta.lsn)) != 0) goto err; @@ -582,23 +587,25 @@ __bam_new_subdb(mdbp, dbp, txn) goto err; /* Release the metadata and root pages. */ - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, meta, dbc->priority)) != 0) goto err; meta = NULL; - if ((ret = __memp_fput(mpf, root, 0)) != 0) + if ((ret = __memp_fput(mpf, root, dbc->priority)) != 0) goto err; root = NULL; err: if (meta != NULL) - if ((t_ret = __memp_fput(mpf, meta, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; if (root != NULL) - if ((t_ret = __memp_fput(mpf, root, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + root, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __LPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; if (dbc != NULL) - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); } diff --git a/db/btree/bt_put.c b/db/btree/bt_put.c index 6665341e2..7e543ef67 100644 --- a/db/btree/bt_put.c +++ b/db/btree/bt_put.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_put.c,v 12.21 2006/09/06 20:37:00 ubell Exp $ + * $Id: bt_put.c,v 12.25 2007/05/25 15:37:48 bostic Exp $ */ #include "db_config.h" @@ -84,7 +83,6 @@ __bam_iitem(dbc, key, data, op, flags) int cmp, bigkey, bigdata, del, dupadjust; int padrec, replace, ret, t_ret, was_deleted; - COMPQUIET(bk, NULL); COMPQUIET(cnt, 0); dbp = dbc->dbp; @@ -247,19 +245,12 @@ __bam_iitem(dbc, key, data, op, flags) return (__db_space_err(dbp)); } - if ((ret = __memp_dirty(mpf, &h, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, &h, dbc->txn, dbc->priority, 0)) != 0) return (ret); if (cp->csp->page == cp->page) cp->csp->page = h; cp->page = h; - /* - * Recalculate this pointer -- the page pointer (h) may have - * changed during the update. - */ - bk = GET_BKEYDATA(dbp, h, - indx + (TYPE(h) == P_LBTREE ? O_INDX : 0)); - /* * The code breaks it up into five cases: * @@ -324,9 +315,9 @@ __bam_iitem(dbc, key, data, op, flags) if ((ret = __bam_ca_delete(dbp, PGNO(h), indx, 0, NULL)) != 0) return (ret); - if (TYPE(h) == P_LBTREE) { + if (TYPE(h) == P_LBTREE) ++indx; - } + bk = GET_BKEYDATA(dbp, h, indx); /* * In a Btree deleted records aren't counted (deleted records @@ -874,7 +865,7 @@ __bam_dup_convert(dbc, h, indx, cnt) ret = __bam_ca_di(dbc, PGNO(h), first + P_INDX, (int)(first + P_INDX - indx)); -err: if ((t_ret = __memp_fput(mpf, dp, 0)) != 0 && ret == 0) +err: if ((t_ret = __memp_fput(mpf, dp, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); diff --git a/db/btree/bt_rec.c b/db/btree/bt_rec.c index 45df8d7c1..2937824bc 100644 --- a/db/btree/bt_rec.c +++ b/db/btree/bt_rec.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_rec.c,v 12.21 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_rec.c,v 12.28 2007/05/17 17:17:40 bostic Exp $ */ #include "db_config.h" @@ -44,7 +43,6 @@ __bam_split_recover(dbenv, dbtp, lsnp, op, info) u_int32_t ptype; int cmp, l_update, p_update, r_update, rc, ret, rootsplit, t_ret; - COMPQUIET(info, NULL); REC_PRINT(__bam_split_print); mpf = NULL; @@ -141,19 +139,21 @@ do_left: if (lp != NULL) { goto out; if (l_update) { - REC_DIRTY(mpf, &lp); + REC_DIRTY(mpf, file_dbp->priority, &lp); memcpy(lp, _lp, file_dbp->pgsize); lp->lsn = *lsnp; - if ((ret = __memp_fput(mpf, lp, 0)) != 0) + if ((ret = + __memp_fput(mpf, lp, file_dbp->priority)) != 0) goto out; lp = NULL; } if (r_update) { - REC_DIRTY(mpf, &rp); + REC_DIRTY(mpf, file_dbp->priority, &rp); memcpy(rp, _rp, file_dbp->pgsize); rp->lsn = *lsnp; - if ((ret = __memp_fput(mpf, rp, 0)) != 0) + if ((ret = + __memp_fput(mpf, rp, file_dbp->priority)) != 0) goto out; rp = NULL; } @@ -173,14 +173,15 @@ do_left: if (lp != NULL) { rc = 1; } - REC_DIRTY(mpf, &pp); + REC_DIRTY(mpf, file_dbp->priority, &pp); P_INIT(pp, file_dbp->pgsize, root_pgno, PGNO_INVALID, PGNO_INVALID, _lp->level + 1, ptype); RE_NREC_SET(pp, rc ? __bam_total(file_dbp, _lp) + __bam_total(file_dbp, _rp) : 0); pp->lsn = *lsnp; - if ((ret = __memp_fput(mpf, pp, 0)) != 0) + if ((ret = + __memp_fput(mpf, pp, file_dbp->priority)) != 0) goto out; pp = NULL; } @@ -209,11 +210,11 @@ check_next: /* cmp = LOG_COMPARE(&LSN(np), &argp->nlsn); CHECK_LSN(dbenv, op, cmp, &LSN(np), &argp->nlsn); if (cmp == 0) { - REC_DIRTY(mpf, &np); + REC_DIRTY(mpf, file_dbp->priority, &np); PREV_PGNO(np) = argp->right; np->lsn = *lsnp; - if ((ret = - __memp_fput(mpf, np, 0)) != 0) + if ((ret = __memp_fput(mpf, + np, file_dbp->priority)) != 0) goto out; np = NULL; } @@ -232,9 +233,10 @@ check_next: /* goto lrundo; } if (LOG_COMPARE(lsnp, &LSN(pp)) == 0) { - REC_DIRTY(mpf, &pp); + REC_DIRTY(mpf, file_dbp->priority, &pp); memcpy(pp, argp->pg.data, argp->pg.size); - if ((ret = __memp_fput(mpf, pp, 0)) != 0) + if ((ret = + __memp_fput(mpf, pp, file_dbp->priority)) != 0) goto out; pp = NULL; } @@ -250,19 +252,19 @@ check_next: /* lrundo: if ((rootsplit && lp != NULL) || rp != NULL) { if (rootsplit && lp != NULL && LOG_COMPARE(lsnp, &LSN(lp)) == 0) { - REC_DIRTY(mpf, &lp); + REC_DIRTY(mpf, file_dbp->priority, &lp); lp->lsn = argp->llsn; - if ((ret = - __memp_fput(mpf, lp, 0)) != 0) + if ((ret = __memp_fput(mpf, + lp, file_dbp->priority)) != 0) goto out; lp = NULL; } if (rp != NULL && LOG_COMPARE(lsnp, &LSN(rp)) == 0) { - REC_DIRTY(mpf, &rp); + REC_DIRTY(mpf, file_dbp->priority, &rp); rp->lsn = argp->rlsn; - if ((ret = - __memp_fput(mpf, rp, 0)) != 0) + if ((ret = __memp_fput(mpf, + rp, file_dbp->priority)) != 0) goto out; rp = NULL; } @@ -283,10 +285,10 @@ lrundo: if ((rootsplit && lp != NULL) || rp != NULL) { goto done; } if (LOG_COMPARE(lsnp, &LSN(np)) == 0) { - REC_DIRTY(mpf, &np); + REC_DIRTY(mpf, file_dbp->priority, &np); PREV_PGNO(np) = argp->left; np->lsn = argp->nlsn; - if (__memp_fput(mpf, np, 0)) + if (__memp_fput(mpf, np, file_dbp->priority)) goto out; np = NULL; } @@ -297,13 +299,17 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: /* Free any pages that weren't dirtied. */ - if (pp != NULL && (t_ret = __memp_fput(mpf, pp, 0)) != 0 && ret == 0) + if (pp != NULL && + (t_ret = __memp_fput(mpf, pp, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; - if (lp != NULL && (t_ret = __memp_fput(mpf, lp, 0)) != 0 && ret == 0) + if (lp != NULL && + (t_ret = __memp_fput(mpf, lp, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; - if (np != NULL && (t_ret = __memp_fput(mpf, np, 0)) != 0 && ret == 0) + if (np != NULL && + (t_ret = __memp_fput(mpf, np, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; - if (rp != NULL && (t_ret = __memp_fput(mpf, rp, 0)) != 0 && ret == 0) + if (rp != NULL && + (t_ret = __memp_fput(mpf, rp, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; /* Free any allocated space. */ @@ -343,7 +349,6 @@ __bam_rsplit_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_rsplit_print); REC_INTRO(__bam_rsplit_read, 1, 1); @@ -373,7 +378,7 @@ __bam_rsplit_recover(dbenv, dbtp, lsnp, op, info) * that's not really necessary since the field is not used * otherwise. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); rcnt = RE_NREC(pagep); memcpy(pagep, argp->pgdbt.data, argp->pgdbt.size); if (LEVEL(pagep) > LEAFLEVEL) @@ -382,7 +387,7 @@ __bam_rsplit_recover(dbenv, dbtp, lsnp, op, info) pagep->lsn = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, root_pgno, argp->nrec, PGNO_INVALID, pagep->level + 1, IS_BTREE_PAGE(pagep) ? P_IBTREE : P_IRECNO); @@ -391,7 +396,7 @@ __bam_rsplit_recover(dbenv, dbtp, lsnp, op, info) goto out; pagep->lsn = argp->rootlsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; do_page: @@ -418,14 +423,14 @@ do_page: CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), ©_lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); pagep->lsn = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); memcpy(pagep, argp->pgdbt.data, argp->pgdbt.size); } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; pagep = NULL; @@ -433,7 +438,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); REC_CLOSE; } @@ -460,7 +465,6 @@ __bam_adj_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_adj_print); REC_INTRO(__bam_adj_read, 1, 1); @@ -483,7 +487,7 @@ __bam_adj_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if ((ret = __bam_adjindx(dbc, pagep, argp->indx, argp->indx_copy, argp->is_insert)) != 0) goto out; @@ -491,14 +495,14 @@ __bam_adj_recover(dbenv, dbtp, lsnp, op, info) LSN(pagep) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if ((ret = __bam_adjindx(dbc, pagep, argp->indx, argp->indx_copy, !argp->is_insert)) != 0) goto out; LSN(pagep) = argp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; pagep = NULL; @@ -506,7 +510,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); REC_CLOSE; } @@ -534,7 +538,6 @@ __bam_cadjust_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_cadjust_print); REC_INTRO(__bam_cadjust_read, 1, 0); @@ -557,7 +560,7 @@ __bam_cadjust_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); if (IS_BTREE_PAGE(pagep)) { GET_BINTERNAL(file_dbp, pagep, argp->indx)->nrecs += argp->adjust; @@ -573,7 +576,7 @@ __bam_cadjust_recover(dbenv, dbtp, lsnp, op, info) LSN(pagep) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); if (IS_BTREE_PAGE(pagep)) { GET_BINTERNAL(file_dbp, pagep, argp->indx)->nrecs -= argp->adjust; @@ -587,7 +590,7 @@ __bam_cadjust_recover(dbenv, dbtp, lsnp, op, info) } LSN(pagep) = argp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -595,7 +598,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -623,7 +626,6 @@ __bam_cdel_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_cdel_print); REC_INTRO(__bam_cdel_read, 1, 0); @@ -646,14 +648,14 @@ __bam_cdel_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); indx = argp->indx + (TYPE(pagep) == P_LBTREE ? O_INDX : 0); B_DSET(GET_BKEYDATA(file_dbp, pagep, indx)->type); LSN(pagep) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); indx = argp->indx + (TYPE(pagep) == P_LBTREE ? O_INDX : 0); B_DCLR(GET_BKEYDATA(file_dbp, pagep, indx)->type); @@ -663,7 +665,7 @@ __bam_cdel_recover(dbenv, dbtp, lsnp, op, info) LSN(pagep) = argp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -671,7 +673,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -701,7 +703,6 @@ __bam_repl_recover(dbenv, dbtp, lsnp, op, info) u_int8_t *p; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_repl_print); REC_INTRO(__bam_repl_read, 1, 1); @@ -729,7 +730,7 @@ __bam_repl_recover(dbenv, dbtp, lsnp, op, info) * * Re-build the replacement item. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); memset(&dbt, 0, sizeof(dbt)); dbt.size = argp->prefix + argp->suffix + argp->repl.size; if ((ret = __os_malloc(dbenv, dbt.size, &dbt.data)) != 0) @@ -753,7 +754,7 @@ __bam_repl_recover(dbenv, dbtp, lsnp, op, info) * * Re-build the original item. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); memset(&dbt, 0, sizeof(dbt)); dbt.size = argp->prefix + argp->suffix + argp->orig.size; if ((ret = __os_malloc(dbenv, dbt.size, &dbt.data)) != 0) @@ -776,7 +777,7 @@ __bam_repl_recover(dbenv, dbtp, lsnp, op, info) LSN(pagep) = argp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; pagep = NULL; @@ -784,7 +785,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); REC_CLOSE; } @@ -811,7 +812,6 @@ __bam_root_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; meta = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_root_print); REC_INTRO(__bam_root_read, 0, 0); @@ -833,16 +833,16 @@ __bam_root_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(meta), &argp->meta_lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); meta->root = argp->root_pgno; meta->dbmeta.lsn = *lsnp; ((BTREE *)file_dbp->bt_internal)->bt_root = meta->root; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Nothing to undo except lsn. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); meta->dbmeta.lsn = argp->meta_lsn; } - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; meta = NULL; @@ -850,7 +850,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, file_dbp->priority); REC_CLOSE; } @@ -876,7 +876,6 @@ __bam_curadj_recover(dbenv, dbtp, lsnp, op, info) DB_MPOOLFILE *mpf; int ret; - COMPQUIET(info, NULL); COMPQUIET(mpf, NULL); REC_PRINT(__bam_curadj_print); @@ -938,7 +937,6 @@ __bam_rcuradj_recover(dbenv, dbtp, lsnp, op, info) DB_MPOOLFILE *mpf; int ret, t_ret; - COMPQUIET(info, NULL); COMPQUIET(mpf, NULL); rdbc = NULL; @@ -995,7 +993,7 @@ __bam_rcuradj_recover(dbenv, dbtp, lsnp, op, info) } done: *lsnp = argp->prev_lsn; -out: if (rdbc != NULL && (t_ret = __db_c_close(rdbc)) != 0 && ret == 0) +out: if (rdbc != NULL && (t_ret = __dbc_close(rdbc)) != 0 && ret == 0) ret = t_ret; REC_CLOSE; } @@ -1023,7 +1021,6 @@ __bam_relink_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_relink_print); REC_INTRO(__bam_relink_read, 1, 0); @@ -1051,7 +1048,7 @@ __bam_relink_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn_next); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the remove or replace. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); if (argp->new_pgno == PGNO_INVALID) pagep->prev_pgno = argp->prev; else @@ -1060,13 +1057,13 @@ __bam_relink_recover(dbenv, dbtp, lsnp, op, info) pagep->lsn = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Undo the remove or replace. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->prev_pgno = argp->pgno; pagep->lsn = argp->lsn_next; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1087,7 +1084,7 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn_prev); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); if (argp->new_pgno == PGNO_INVALID) pagep->next_pgno = argp->next; else @@ -1096,12 +1093,12 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, pagep->lsn = *lsnp; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Undo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->pgno; pagep->lsn = argp->lsn_prev; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1109,7 +1106,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -1139,8 +1136,6 @@ __bam_merge_recover(dbenv, dbtp, lsnp, op, info) u_int8_t *bp; int cmp_n, cmp_p, i, ret; - COMPQUIET(info, NULL); - REC_PRINT(__bam_merge_print); REC_INTRO(__bam_merge_read, 1, 1); @@ -1167,7 +1162,7 @@ __bam_merge_recover(dbenv, dbtp, lsnp, op, info) * needed data. */ DB_ASSERT(dbenv, argp->hdr.size == 0 || NUM_ENT(pagep) == 0); - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if (argp->hdr.size != 0) { P_INIT(pagep, file_dbp->pgsize, pagep->pgno, PREV_PGNO(argp->hdr.data), @@ -1203,7 +1198,7 @@ __bam_merge_recover(dbenv, dbtp, lsnp, op, info) * the proper number of items from the logical end * of the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); for (i = 0; i < (int)(argp->ind.size / sizeof(*ninp)); i++) { indx = NUM_ENT(pagep) - 1; if (P_INP(file_dbp, pagep)[indx] == @@ -1240,7 +1235,7 @@ __bam_merge_recover(dbenv, dbtp, lsnp, op, info) pagep->lsn = argp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; next: if ((ret = __memp_fget(mpf, &argp->npgno, NULL, @@ -1262,13 +1257,13 @@ next: if ((ret = __memp_fget(mpf, &argp->npgno, NULL, if (cmp_p == 0 && DB_REDO(op)) { /* Need to truncate the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); HOFFSET(pagep) = file_dbp->pgsize; NUM_ENT(pagep) = 0; pagep->lsn = *lsnp; } else if (cmp_n == 0 && !DB_REDO(op)) { /* Need to put the data back on the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if (TYPE(pagep) == P_OVERFLOW) { OV_REF(pagep) = OV_REF(argp->hdr.data); OV_LEN(pagep) = OV_LEN(argp->hdr.data); @@ -1291,7 +1286,7 @@ next: if ((ret = __memp_fget(mpf, &argp->npgno, NULL, pagep->lsn = argp->nlsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; done: *lsnp = argp->prev_lsn; @@ -1324,8 +1319,6 @@ __bam_pgno_recover(dbenv, dbtp, lsnp, op, info) db_pgno_t *pgnop; int cmp_n, cmp_p, ret; - COMPQUIET(info, NULL); - REC_PRINT(__bam_pgno_print); REC_INTRO(__bam_pgno_read, 1, 0); @@ -1352,7 +1345,8 @@ __bam_pgno_recover(dbenv, dbtp, lsnp, op, info) &((BOVERFLOW *)(bi->data))->pgno; else pgnop = &bi->pgno; - if ((ret = __memp_fput(mpf, npagep, 0)) != 0) + if ((ret = __memp_fput(mpf, + npagep, file_dbp->priority)) != 0) goto out; break; } @@ -1370,17 +1364,17 @@ __bam_pgno_recover(dbenv, dbtp, lsnp, op, info) if (DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); *pgnop = argp->npgno; pagep->lsn = *lsnp; } else { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); *pgnop = argp->opgno; pagep->lsn = argp->lsn; } } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; done: @@ -1413,7 +1407,6 @@ __bam_relink_43_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, modified, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__bam_relink_43_print); REC_INTRO(__bam_relink_43_read, 1, 0); @@ -1434,23 +1427,21 @@ __bam_relink_43_recover(dbenv, dbtp, lsnp, op, info) } else goto next2; } - modified = 0; cmp_p = LOG_COMPARE(&LSN(pagep), &argp->lsn); CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the relink. */ + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->lsn = *lsnp; - modified = 1; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Undo the relink. */ + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->next; pagep->prev_pgno = argp->prev; - pagep->lsn = argp->lsn; - modified = 1; } - if ((ret = __memp_fput(mpf, pagep, modified ? DB_MPOOL_DIRTY : 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1472,12 +1463,12 @@ next2: if ((ret = __memp_fget(mpf, &argp->next, NULL, 0, &pagep)) != 0) { CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn_next); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the remove or undo the add. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->prev_pgno = argp->prev; modified = 1; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Undo the remove or redo the add. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->prev_pgno = argp->pgno; modified = 1; } @@ -1487,7 +1478,7 @@ next2: if ((ret = __memp_fget(mpf, &argp->next, NULL, 0, &pagep)) != 0) { else pagep->lsn = *lsnp; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1508,12 +1499,12 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, 0, &pagep)) != 0) { CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn_prev); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->next; modified = 1; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Undo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->pgno; modified = 1; } @@ -1523,7 +1514,7 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, 0, &pagep)) != 0) { else pagep->lsn = *lsnp; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1531,6 +1522,6 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } diff --git a/db/btree/bt_reclaim.c b/db/btree/bt_reclaim.c index d48c9dfcf..98d206a52 100644 --- a/db/btree/bt_reclaim.c +++ b/db/btree/bt_reclaim.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: bt_reclaim.c,v 12.6 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_reclaim.c,v 12.9 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -47,7 +46,7 @@ __bam_reclaim(dbp, txn) __TLPUT(dbc, meta_lock); /* Discard the cursor. */ -err: if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) +err: if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); diff --git a/db/btree/bt_recno.c b/db/btree/bt_recno.c index e0a8b393b..5402c531d 100644 --- a/db/btree/bt_recno.c +++ b/db/btree/bt_recno.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: bt_recno.c,v 12.28 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_recno.c,v 12.35 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -141,7 +140,7 @@ __ram_open(dbp, txn, name, base_pgno, flags) ret = 0; /* Discard the cursor. */ - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; } @@ -174,7 +173,7 @@ __ram_append(dbc, key, data) ret = __ram_add(dbc, &cp->recno, data, DB_APPEND, 0); /* Return the record number. */ - if (ret == 0) + if (ret == 0 && key != NULL) ret = __db_retcopy(dbc->dbp->dbenv, key, &cp->recno, sizeof(cp->recno), &dbc->rkey->data, &dbc->rkey->ulen); @@ -182,13 +181,13 @@ __ram_append(dbc, key, data) } /* - * __ram_c_del -- - * Recno cursor->c_del function. + * __ramc_del -- + * Recno DBC->del function. * - * PUBLIC: int __ram_c_del __P((DBC *)); + * PUBLIC: int __ramc_del __P((DBC *)); */ int -__ram_c_del(dbc) +__ramc_del(dbc) DBC *dbc; { BKEYDATA bk; @@ -228,7 +227,8 @@ __ram_c_del(dbc) stack = 1; /* Copy the page into the cursor. */ - if ((ret = __memp_dirty(dbp->mpf, &cp->csp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(dbp->mpf, + &cp->csp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; STACK_TO_CURSOR(cp, ret); if (ret != 0) @@ -313,14 +313,14 @@ err: if (stack && (t_ret = __bam_stkrel(dbc, STK_CLRDBC)) != 0 && ret == 0) } /* - * __ram_c_get -- - * Recno cursor->c_get function. + * __ramc_get -- + * Recno DBC->get function. * - * PUBLIC: int __ram_c_get + * PUBLIC: int __ramc_get * PUBLIC: __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); */ int -__ram_c_get(dbc, key, data, flags, pgnop) +__ramc_get(dbc, key, data, flags, pgnop) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -386,6 +386,16 @@ retry: switch (flags) { flags = DB_NEXT; cp->recno = 1; break; + case DB_PREV_DUP: + /* + * If we're not in an off-page dup set, we know there's no + * previous duplicate since recnos don't have them. If we + * are in an off-page dup set, the previous item assuredly + * is a dup, so we set flags to DB_PREV and keep going. + */ + if (!F_ISSET(dbc, DBC_OPD)) + return (DB_NOTFOUND); + /* FALLTHROUGH */ case DB_PREV_NODUP: /* * Recno databases don't have duplicates, set flags to DB_PREV @@ -451,7 +461,7 @@ retry: switch (flags) { goto err; break; default: - ret = __db_unknown_flag(dbp->dbenv, "__ram_c_get", flags); + ret = __db_unknown_flag(dbp->dbenv, "__ramc_get", flags); goto err; } @@ -550,13 +560,13 @@ err: CD_CLR(cp); } /* - * __ram_c_put -- - * Recno cursor->c_put function. + * __ramc_put -- + * Recno DBC->put function. * - * PUBLIC: int __ram_c_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + * PUBLIC: int __ramc_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); */ int -__ram_c_put(dbc, key, data, flags, pgnop) +__ramc_put(dbc, key, data, flags, pgnop) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -707,7 +717,8 @@ split: if ((ret = __bam_rsearch(dbc, &cp->recno, SR_INSERT, 1, &exact)) != 0) } /* Return the key if we've created a new record. */ - if (!F_ISSET(dbc, DBC_OPD) && (flags == DB_AFTER || flags == DB_BEFORE)) + if (!F_ISSET(dbc, DBC_OPD) && + (flags == DB_AFTER || flags == DB_BEFORE) && key != NULL) ret = __db_retcopy(dbenv, key, &cp->recno, sizeof(cp->recno), &dbc->rkey->data, &dbc->rkey->ulen); @@ -1132,7 +1143,7 @@ done: /* Close the file descriptor. */ } /* Discard the cursor. */ - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; /* Discard memory allocated to hold the data items. */ diff --git a/db/btree/bt_rsearch.c b/db/btree/bt_rsearch.c index 8a916c117..fc08714c4 100644 --- a/db/btree/bt_rsearch.c +++ b/db/btree/bt_rsearch.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -36,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_rsearch.c,v 12.11 2006/08/24 14:44:44 bostic Exp $ + * $Id: bt_rsearch.c,v 12.14 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -134,7 +133,7 @@ __bam_rsearch(dbc, recnop, flags, stop, exactp) * eliminate any concurrency. A possible fix * would be to lock the last leaf page instead. */ - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, h, dbc->priority); if ((t_ret = __TLPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; @@ -170,7 +169,8 @@ __bam_rsearch(dbc, recnop, flags, stop, exactp) *exactp = 0; if (!LF_ISSET(SR_PAST_EOF) || recno > t_recno + 1) { - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, + h, dbc->priority); h = NULL; if ((t_ret = __TLPUT(dbc, lock)) != 0 && ret == 0) @@ -255,7 +255,7 @@ __bam_rsearch(dbc, recnop, flags, stop, exactp) (LEVEL(h) - 1) == LEAFLEVEL) stack = 1; - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbc->priority)) != 0) goto err; h = NULL; @@ -278,7 +278,8 @@ __bam_rsearch(dbc, recnop, flags, stop, exactp) } /* NOTREACHED */ -err: if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) +err: if (h != NULL && + (t_ret = __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; BT_STK_POP(cp); @@ -315,7 +316,8 @@ __bam_adjust(dbc, adjust) for (epg = cp->sp; epg <= cp->csp; ++epg) { h = epg->page; if (TYPE(h) == P_IBTREE || TYPE(h) == P_IRECNO) { - if ((ret = __memp_dirty(mpf, &h, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &h, dbc->txn, dbc->priority, 0)) != 0) return (ret); epg->page = h; if (DBC_LOGGING(dbc)) { @@ -371,7 +373,7 @@ __bam_nrecs(dbc, rep) *rep = RE_NREC(h); - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, h, dbc->priority); if ((t_ret = __TLPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; diff --git a/db/btree/bt_search.c b/db/btree/bt_search.c index e125b9f9b..2135d8041 100644 --- a/db/btree/bt_search.c +++ b/db/btree/bt_search.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_search.c,v 12.24 2006/08/24 14:44:45 bostic Exp $ + * $Id: bt_search.c,v 12.30 2007/05/17 17:17:40 bostic Exp $ */ #include "db_config.h" @@ -114,7 +113,7 @@ try_again: (LF_ISSET(SR_START) && slevel == LEVEL(h)))) { if (!STD_LOCKING(dbc)) goto no_relock; - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, h, dbc->priority); if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -132,7 +131,7 @@ try_again: (LF_ISSET(SR_WRITE) && LEVEL(h) == LEAFLEVEL) || (LF_ISSET(SR_START) && slevel == LEVEL(h)))) { /* Someone else split the root, start over. */ - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, h, dbc->priority); if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -236,9 +235,8 @@ __bam_search(dbc, root_pgno, key, flags, slevel, recnop, exactp) * page, they're an index per page item. If we find an exact * match on a leaf page, we're done. */ - for (base = 0, - lim = NUM_ENT(h) / (db_indx_t)adjust; lim != 0; lim >>= 1) { - indx = base + ((lim >> 1) * adjust); + DB_BINARY_SEARCH_FOR(base, lim, h, adjust) { + DB_BINARY_SEARCH_INCR(indx, base, lim, adjust); if ((ret = __bam_cmp(dbp, dbc->txn, key, h, indx, func, &cmp)) != 0) goto err; @@ -252,10 +250,9 @@ __bam_search(dbc, root_pgno, key, flags, slevel, recnop, exactp) } goto next; } - if (cmp > 0) { - base = indx + adjust; - --lim; - } + if (cmp > 0) + DB_BINARY_SEARCH_SHIFT_BASE(indx, base, + lim, adjust); } /* @@ -280,8 +277,8 @@ __bam_search(dbc, root_pgno, key, flags, slevel, recnop, exactp) if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = - __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + h, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -302,7 +299,8 @@ get_next: /* */ if ((ret = __LPUT(dbc, lock)) != 0) goto err; - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = + __memp_fput(mpf, h, dbc->priority)) != 0) goto err; h = NULL; LF_SET(SR_MIN); @@ -367,13 +365,13 @@ next: if (recnop != NULL) if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = - __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + h, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } BT_STK_NUMPUSH(dbenv, cp, h, indx, ret); - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbc->priority); h = NULL; if ((ret = __db_lget(dbc, LCK_COUPLE_ALWAYS, pg, lock_mode, 0, &lock)) != 0) { @@ -439,7 +437,8 @@ next: if (recnop != NULL) * edge, then drop the subtree. */ if (!LF_ISSET(SR_DEL | SR_NEXT)) { - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = + __memp_fput(mpf, h, dbc->priority)) != 0) goto err; goto lock_next; } @@ -579,7 +578,8 @@ found: *exactp = 1; BT_STK_NUM(dbenv, cp, h, indx, ret); if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; } else { if (LF_ISSET(SR_DEL) && cp->csp == cp->sp) @@ -591,7 +591,8 @@ found: *exactp = 1; return (0); -err: if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) +err: if (h != NULL && (t_ret = + __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; /* Keep any not-found page locked for serializability. */ @@ -637,8 +638,8 @@ __bam_stkrel(dbc, flags) cp->page = NULL; LOCK_INIT(cp->lock); } - if ((t_ret = - __memp_fput(mpf, epg->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + epg->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; /* * XXX diff --git a/db/btree/bt_split.c b/db/btree/bt_split.c index 9c2a12f9f..dd9541f21 100644 --- a/db/btree/bt_split.c +++ b/db/btree/bt_split.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -36,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: bt_split.c,v 12.16 2006/09/08 18:41:05 bostic Exp $ + * $Id: bt_split.c,v 12.24 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -47,7 +46,7 @@ #include "dbinc/mp.h" #include "dbinc/btree.h" -static int __bam_broot __P((DBC *, PAGE *, PAGE *, PAGE *)); +static int __bam_broot __P((DBC *, PAGE *, u_int32_t, PAGE *, PAGE *)); static int __bam_page __P((DBC *, EPG *, EPG *)); static int __bam_psplit __P((DBC *, EPG *, PAGE *, PAGE *, db_indx_t *)); static int __bam_root __P((DBC *, EPG *)); @@ -190,7 +189,8 @@ __bam_root(dbc, cp) goto err; } - if ((ret = __memp_dirty(mpf, &cp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &cp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; /* Create new left and right pages for the split. */ @@ -229,20 +229,23 @@ __bam_root(dbc, cp) /* Clean up the new root page. */ if ((ret = (dbc->dbtype == DB_RECNO ? __ram_root(dbc, cp->page, lp, rp) : - __bam_broot(dbc, cp->page, lp, rp))) != 0) + __bam_broot(dbc, cp->page, split, lp, rp))) != 0) goto err; /* Adjust any cursors. */ ret = __bam_ca_split(dbc, cp->page->pgno, lp->pgno, rp->pgno, split, 1); /* Success or error: release pages and locks. */ -err: if ((t_ret = __memp_fput(mpf, cp->page, 0)) != 0 && ret == 0) +err: if ((t_ret = + __memp_fput(mpf, cp->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, cp->lock)) != 0 && ret == 0) ret = t_ret; - if (lp != NULL && (t_ret = __memp_fput(mpf, lp, 0)) != 0 && ret == 0) + if (lp != NULL && + (t_ret = __memp_fput(mpf, lp, dbc->priority)) != 0 && ret == 0) ret = t_ret; - if (rp != NULL && (t_ret = __memp_fput(mpf, rp, 0)) != 0 && ret == 0) + if (rp != NULL && + (t_ret = __memp_fput(mpf, rp, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -277,6 +280,9 @@ __bam_page(dbc, pp, cp) ret = -1; /* + * Create new left page for the split, and fill in everything + * except its LSN and next-page page number. + * * Create a new right page for the split, and fill in everything * except its LSN and page number. * @@ -293,24 +299,19 @@ __bam_page(dbc, pp, cp) * up the tree badly, because we've violated the rule of always locking * down the tree, and never up. */ - if ((ret = __os_malloc(dbp->dbenv, dbp->pgsize, &rp)) != 0) - goto err; - P_INIT(rp, dbp->pgsize, 0, - ISINTERNAL(cp->page) ? PGNO_INVALID : PGNO(cp->page), - ISINTERNAL(cp->page) ? PGNO_INVALID : NEXT_PGNO(cp->page), - cp->page->level, TYPE(cp->page)); - - /* - * Create new left page for the split, and fill in everything - * except its LSN and next-page page number. - */ - if ((ret = __os_malloc(dbp->dbenv, dbp->pgsize, &lp)) != 0) + if ((ret = __os_malloc(dbp->dbenv, dbp->pgsize * 2, &lp)) != 0) goto err; P_INIT(lp, dbp->pgsize, PGNO(cp->page), ISINTERNAL(cp->page) ? PGNO_INVALID : PREV_PGNO(cp->page), ISINTERNAL(cp->page) ? PGNO_INVALID : 0, cp->page->level, TYPE(cp->page)); + rp = (PAGE *)((u_int8_t *)lp + dbp->pgsize); + P_INIT(rp, dbp->pgsize, 0, + ISINTERNAL(cp->page) ? PGNO_INVALID : PGNO(cp->page), + ISINTERNAL(cp->page) ? PGNO_INVALID : NEXT_PGNO(cp->page), + cp->page->level, TYPE(cp->page)); + /* * Split right. * @@ -330,7 +331,7 @@ __bam_page(dbc, pp, cp) * page can't hold the new keys, and has to be split in turn, in which * case we want to release all the locks we can. */ - if ((ret = __bam_pinsert(dbc, pp, lp, rp, BPI_SPACEONLY)) != 0) + if ((ret = __bam_pinsert(dbc, pp, split, lp, rp, BPI_SPACEONLY)) != 0) goto err; /* @@ -380,12 +381,14 @@ __bam_page(dbc, pp, cp) */ PGNO(rp) = NEXT_PGNO(lp) = PGNO(alloc_rp); - if ((ret = __memp_dirty(mpf, &cp->page, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &cp->page, dbc->txn, dbc->priority, 0)) != 0) goto err; /* Actually update the parent page. */ - if ((ret = __memp_dirty(mpf, &pp->page, dbc->txn, 0)) != 0 || - (ret = __bam_pinsert(dbc, pp, lp, rp, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &pp->page, dbc->txn, dbc->priority, 0)) != 0 || + (ret = __bam_pinsert(dbc, pp, split, lp, rp, 0)) != 0) goto err; bc = (BTREE_CURSOR *)dbc->internal; @@ -447,7 +450,6 @@ __bam_page(dbc, pp, cp) goto err; __os_free(dbp->dbenv, lp); - __os_free(dbp->dbenv, rp); /* * Success -- write the real pages back to the store. As we never @@ -455,20 +457,24 @@ __bam_page(dbc, pp, cp) * releasing locks on the pages that reference it. We're finished * modifying the page so it's not really necessary, but it's neater. */ - if ((t_ret = __memp_fput(mpf, alloc_rp, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, alloc_rp, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, rplock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __memp_fput(mpf, pp->page, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, pp->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, pp->lock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __memp_fput(mpf, cp->page, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, cp->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, cp->lock)) != 0 && ret == 0) ret = t_ret; if (tp != NULL) { - if ((t_ret = __memp_fput(mpf, tp, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, tp, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, tplock)) != 0 && ret == 0) ret = t_ret; @@ -477,24 +483,22 @@ __bam_page(dbc, pp, cp) err: if (lp != NULL) __os_free(dbp->dbenv, lp); - if (rp != NULL) - __os_free(dbp->dbenv, rp); if (alloc_rp != NULL) - (void)__memp_fput(mpf, alloc_rp, 0); + (void)__memp_fput(mpf, alloc_rp, dbc->priority); if (tp != NULL) - (void)__memp_fput(mpf, tp, 0); + (void)__memp_fput(mpf, tp, dbc->priority); /* We never updated the new or next pages, we can release them. */ (void)__LPUT(dbc, rplock); (void)__LPUT(dbc, tplock); - (void)__memp_fput(mpf, pp->page, 0); + (void)__memp_fput(mpf, pp->page, dbc->priority); if (ret == DB_NEEDSPLIT) (void)__LPUT(dbc, pp->lock); else (void)__TLPUT(dbc, pp->lock); - (void)__memp_fput(mpf, cp->page, 0); + (void)__memp_fput(mpf, cp->page, dbc->priority); if (ret == DB_NEEDSPLIT) (void)__LPUT(dbc, cp->lock); else @@ -508,71 +512,54 @@ err: if (lp != NULL) * Fix up the btree root page after it has been split. */ static int -__bam_broot(dbc, rootp, lp, rp) +__bam_broot(dbc, rootp, split, lp, rp) DBC *dbc; + u_int32_t split; PAGE *rootp, *lp, *rp; { - BINTERNAL bi, *child_bi; + BINTERNAL bi, bi0, *child_bi; BKEYDATA *child_bk; BOVERFLOW bo, *child_bo; BTREE_CURSOR *cp; DB *dbp; - DBT hdr, data; + DBT hdr, hdr0, data; db_pgno_t root_pgno; int ret; dbp = dbc->dbp; cp = (BTREE_CURSOR *)dbc->internal; + child_bo = NULL; + data.data = NULL; - /* - * If the root page was a leaf page, change it into an internal page. - * We copy the key we split on (but not the key's data, in the case of - * a leaf page) to the new root page. - */ - root_pgno = cp->root; - P_INIT(rootp, dbp->pgsize, - root_pgno, PGNO_INVALID, PGNO_INVALID, lp->level + 1, P_IBTREE); - - /* - * The btree comparison code guarantees that the left-most key on any - * internal btree page is never used, so it doesn't need to be filled - * in. Set the record count if necessary. - */ - memset(&bi, 0, sizeof(bi)); - bi.len = 0; - B_TSET(bi.type, B_KEYDATA); - bi.pgno = lp->pgno; - if (F_ISSET(cp, C_RECNUM)) { - bi.nrecs = __bam_total(dbp, lp); - RE_NREC_SET(rootp, bi.nrecs); - } - DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); - if ((ret = - __db_pitem(dbc, rootp, 0, BINTERNAL_SIZE(0), &hdr, NULL)) != 0) - return (ret); - - switch (TYPE(rp)) { + switch (TYPE(rootp)) { case P_IBTREE: /* Copy the first key of the child page onto the root page. */ - child_bi = GET_BINTERNAL(dbp, rp, 0); + child_bi = GET_BINTERNAL(dbp, rootp, split); switch (B_TYPE(child_bi->type)) { case B_KEYDATA: bi.len = child_bi->len; B_TSET(bi.type, B_KEYDATA); bi.pgno = rp->pgno; - if (F_ISSET(cp, C_RECNUM)) { - bi.nrecs = __bam_total(dbp, rp); - RE_NREC_ADJ(rootp, bi.nrecs); - } DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); - DB_SET_DBT(data, child_bi->data, child_bi->len); - if ((ret = __db_pitem(dbc, rootp, 1, - BINTERNAL_SIZE(child_bi->len), &hdr, &data)) != 0) + if ((ret = __os_malloc(dbp->dbenv, + child_bi->len, &data.data)) != 0) return (ret); + memcpy(data.data, child_bi->data, child_bi->len); + data.size = child_bi->len; break; case B_OVERFLOW: + /* Reuse the overflow key. */ child_bo = (BOVERFLOW *)child_bi->data; - goto do_overflow; + memset(&bo, 0, sizeof(bo)); + bo.type = B_OVERFLOW; + bo.tlen = child_bo->tlen; + bo.pgno = child_bo->pgno; + bi.len = BOVERFLOW_SIZE; + B_TSET(bi.type, B_OVERFLOW); + bi.pgno = rp->pgno; + DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); + DB_SET_DBT(data, &bo, BOVERFLOW_SIZE); + break; case B_DUPLICATE: default: goto pgfmt; @@ -581,26 +568,23 @@ __bam_broot(dbc, rootp, lp, rp) case P_LDUP: case P_LBTREE: /* Copy the first key of the child page onto the root page. */ - child_bk = GET_BKEYDATA(dbp, rp, 0); + child_bk = GET_BKEYDATA(dbp, rootp, split); switch (B_TYPE(child_bk->type)) { case B_KEYDATA: bi.len = child_bk->len; B_TSET(bi.type, B_KEYDATA); bi.pgno = rp->pgno; - if (F_ISSET(cp, C_RECNUM)) { - bi.nrecs = __bam_total(dbp, rp); - RE_NREC_ADJ(rootp, bi.nrecs); - } DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); - DB_SET_DBT(data, child_bk->data, child_bk->len); - if ((ret = __db_pitem(dbc, rootp, 1, - BINTERNAL_SIZE(child_bk->len), &hdr, &data)) != 0) + if ((ret = __os_malloc(dbp->dbenv, + child_bk->len, &data.data)) != 0) return (ret); + memcpy(data.data, child_bk->data, child_bk->len); + data.size = child_bk->len; break; case B_OVERFLOW: /* Copy the overflow key. */ child_bo = (BOVERFLOW *)child_bk; -do_overflow: memset(&bo, 0, sizeof(bo)); + memset(&bo, 0, sizeof(bo)); bo.type = B_OVERFLOW; bo.tlen = child_bo->tlen; memset(&hdr, 0, sizeof(hdr)); @@ -617,15 +601,8 @@ do_overflow: memset(&bo, 0, sizeof(bo)); bi.len = BOVERFLOW_SIZE; B_TSET(bi.type, B_OVERFLOW); bi.pgno = rp->pgno; - if (F_ISSET(cp, C_RECNUM)) { - bi.nrecs = __bam_total(dbp, rp); - RE_NREC_ADJ(rootp, bi.nrecs); - } DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); DB_SET_DBT(data, &bo, BOVERFLOW_SIZE); - if ((ret = __db_pitem(dbc, rootp, 1, - BINTERNAL_SIZE(BOVERFLOW_SIZE), &hdr, &data)) != 0) - return (ret); break; case B_DUPLICATE: default: @@ -635,7 +612,39 @@ do_overflow: memset(&bo, 0, sizeof(bo)); default: pgfmt: return (__db_pgfmt(dbp->dbenv, rp->pgno)); } - return (0); + /* + * If the root page was a leaf page, change it into an internal page. + * We copy the key we split on (but not the key's data, in the case of + * a leaf page) to the new root page. + */ + root_pgno = cp->root; + P_INIT(rootp, dbp->pgsize, + root_pgno, PGNO_INVALID, PGNO_INVALID, lp->level + 1, P_IBTREE); + + /* + * The btree comparison code guarantees that the left-most key on any + * internal btree page is never used, so it doesn't need to be filled + * in. Set the record count if necessary. + */ + memset(&bi0, 0, sizeof(bi0)); + bi0.len = 0; + B_TSET(bi0.type, B_KEYDATA); + bi0.pgno = lp->pgno; + if (F_ISSET(cp, C_RECNUM)) { + bi0.nrecs = __bam_total(dbp, lp); + RE_NREC_SET(rootp, bi0.nrecs); + bi.nrecs = __bam_total(dbp, rp); + RE_NREC_ADJ(rootp, bi.nrecs); + } + DB_SET_DBT(hdr0, &bi0, SSZA(BINTERNAL, data)); + if ((ret = __db_pitem(dbc, + rootp, 0, BINTERNAL_SIZE(0), &hdr0, NULL)) != 0) + goto err; + ret = __db_pitem(dbc, rootp, 1, BINTERNAL_SIZE(data.size), &hdr, &data); + +err: if (data.data != NULL && child_bo == NULL) + __os_free(dbp->dbenv, data.data); + return (ret); } /* @@ -681,12 +690,14 @@ __ram_root(dbc, rootp, lp, rp) * __bam_pinsert -- * Insert a new key into a parent page, completing the split. * - * PUBLIC: int __bam_pinsert __P((DBC *, EPG *, PAGE *, PAGE *, int)); + * PUBLIC: int __bam_pinsert + * PUBLIC: __P((DBC *, EPG *, u_int32_t, PAGE *, PAGE *, int)); */ int -__bam_pinsert(dbc, parent, lchild, rchild, flags) +__bam_pinsert(dbc, parent, split, lchild, rchild, flags) DBC *dbc; EPG *parent; + u_int32_t split; PAGE *lchild, *rchild; int flags; { @@ -697,6 +708,7 @@ __bam_pinsert(dbc, parent, lchild, rchild, flags) BTREE_CURSOR *cp; DB *dbp; DBT a, b, hdr, data; + EPG *child; PAGE *ppage; RINTERNAL ri; db_indx_t off; @@ -709,6 +721,7 @@ __bam_pinsert(dbc, parent, lchild, rchild, flags) cp = (BTREE_CURSOR *)dbc->internal; t = dbp->bt_internal; ppage = parent->page; + child = parent + 1; /* If handling record numbers, count records split to the right page. */ nrecs = F_ISSET(cp, C_RECNUM) && @@ -741,9 +754,9 @@ __bam_pinsert(dbc, parent, lchild, rchild, flags) * pages that have leaf pages as children. Further reduction of the * key between pairs of internal pages loses too much information. */ - switch (TYPE(rchild)) { + switch (TYPE(child->page)) { case P_IBTREE: - child_bi = GET_BINTERNAL(dbp, rchild, 0); + child_bi = GET_BINTERNAL(dbp, child->page, split); nbytes = BINTERNAL_PSIZE(child_bi->len); if (P_FREESPACE(dbp, ppage) < nbytes) @@ -766,8 +779,22 @@ __bam_pinsert(dbc, parent, lchild, rchild, flags) return (ret); break; case B_OVERFLOW: + /* Reuse the overflow key. */ child_bo = (BOVERFLOW *)child_bi->data; - goto do_overflow; + memset(&bo, 0, sizeof(bo)); + bo.type = B_OVERFLOW; + bo.tlen = child_bo->tlen; + bo.pgno = child_bo->pgno; + bi.len = BOVERFLOW_SIZE; + B_TSET(bi.type, B_OVERFLOW); + bi.pgno = rchild->pgno; + bi.nrecs = nrecs; + DB_SET_DBT(hdr, &bi, SSZA(BINTERNAL, data)); + DB_SET_DBT(data, &bo, BOVERFLOW_SIZE); + if ((ret = __db_pitem(dbc, ppage, off, + BINTERNAL_SIZE(BOVERFLOW_SIZE), &hdr, &data)) != 0) + return (ret); + break; case B_DUPLICATE: default: goto pgfmt; @@ -775,7 +802,7 @@ __bam_pinsert(dbc, parent, lchild, rchild, flags) break; case P_LDUP: case P_LBTREE: - child_bk = GET_BKEYDATA(dbp, rchild, 0); + child_bk = GET_BKEYDATA(dbp, child->page, split); switch (B_TYPE(child_bk->type)) { case B_KEYDATA: nbytes = BINTERNAL_PSIZE(child_bk->len); @@ -850,7 +877,7 @@ noprefix: if (P_FREESPACE(dbp, ppage) < nbytes) /* Copy the overflow key. */ child_bo = (BOVERFLOW *)child_bk; -do_overflow: memset(&bo, 0, sizeof(bo)); + memset(&bo, 0, sizeof(bo)); bo.type = B_OVERFLOW; bo.tlen = child_bo->tlen; memset(&hdr, 0, sizeof(hdr)); @@ -899,7 +926,7 @@ do_overflow: memset(&bo, 0, sizeof(bo)); return (ret); break; default: -pgfmt: return (__db_pgfmt(dbp->dbenv, rchild->pgno)); +pgfmt: return (__db_pgfmt(dbp->dbenv, PGNO(child->page))); } /* @@ -1138,6 +1165,7 @@ __bam_copy(dbp, pp, cp, nxt, stop) PAGE *pp, *cp; u_int32_t nxt, stop; { + BINTERNAL internal; db_indx_t *cinp, nbytes, off, *pinp; cinp = P_INP(dbp, cp); @@ -1148,7 +1176,9 @@ __bam_copy(dbp, pp, cp, nxt, stop) for (off = 0; nxt < stop; ++nxt, ++NUM_ENT(cp), ++off) { switch (TYPE(pp)) { case P_IBTREE: - if (B_TYPE( + if (off == 0 && nxt != 0) + nbytes = BINTERNAL_SIZE(0); + else if (B_TYPE( GET_BINTERNAL(dbp, pp, nxt)->type) == B_KEYDATA) nbytes = BINTERNAL_SIZE( GET_BINTERNAL(dbp, pp, nxt)->len); @@ -1182,7 +1212,16 @@ __bam_copy(dbp, pp, cp, nxt, stop) return (__db_pgfmt(dbp->dbenv, pp->pgno)); } cinp[off] = HOFFSET(cp) -= nbytes; - memcpy(P_ENTRY(dbp, cp, off), P_ENTRY(dbp, pp, nxt), nbytes); + if (off == 0 && nxt != 0 && TYPE(pp) == P_IBTREE) { + internal.len = 0; + internal.type = B_KEYDATA; + internal.pgno = GET_BINTERNAL(dbp, pp, nxt)->pgno; + internal.nrecs = GET_BINTERNAL(dbp, pp, nxt)->nrecs; + memcpy(P_ENTRY(dbp, cp, off), &internal, nbytes); + } + else + memcpy(P_ENTRY(dbp, cp, off), + P_ENTRY(dbp, pp, nxt), nbytes); } return (0); } diff --git a/db/btree/bt_stat.c b/db/btree/bt_stat.c index 05415eedd..1e23d3cd2 100644 --- a/db/btree/bt_stat.c +++ b/db/btree/bt_stat.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_stat.c,v 12.12 2006/08/24 14:44:45 bostic Exp $ + * $Id: bt_stat.c,v 12.17 2007/06/01 16:30:27 bostic Exp $ */ #include "db_config.h" @@ -77,7 +76,7 @@ __bam_stat(dbc, spp, flags) goto err; pgno = h->next_pgno; - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbc->priority)) != 0) goto err; h = NULL; } @@ -93,7 +92,7 @@ __bam_stat(dbc, spp, flags) sp->bt_levels = h->level; /* Discard the root page. */ - ret = __memp_fput(mpf, h, 0); + ret = __memp_fput(mpf, h, dbc->priority); h = NULL; if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; @@ -113,7 +112,7 @@ __bam_stat(dbc, spp, flags) (!MULTIVERSION(dbp) || dbc->txn != NULL); meta_only: if (t->bt_meta != PGNO_BASE_MD || write_meta) { - ret = __memp_fput(mpf, meta, 0); + ret = __memp_fput(mpf, meta, dbc->priority); meta = NULL; if ((t_ret = __LPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; @@ -151,6 +150,16 @@ meta_only: sp->bt_minkey = meta->minkey; sp->bt_re_len = meta->re_len; sp->bt_re_pad = meta->re_pad; + /* + * Don't take the page number from the meta-data page -- that value is + * only maintained in the primary database, we may have been called on + * a subdatabase. (Yes, I read the primary database meta-data page + * earlier in this function, but I'm asking the underlying cache so the + * code for the Hash and Btree methods is the same.) + */ + if ((ret = __memp_get_last_pgno(dbp->mpf, &pgno)) != 0) + goto err; + sp->bt_pagecnt = pgno + 1; sp->bt_pagesize = meta->dbmeta.pagesize; sp->bt_magic = meta->dbmeta.magic; sp->bt_version = meta->dbmeta.version; @@ -165,14 +174,15 @@ meta_only: err: /* Discard the second page. */ if ((t_ret = __LPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; - if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if (h != NULL && + (t_ret = __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; /* Discard the metadata page. */ if ((t_ret = __LPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; if (meta != NULL && - (t_ret = __memp_fput(mpf, meta, 0)) != 0 && ret == 0) + (t_ret = __memp_fput(mpf, meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; if (ret != 0 && sp != NULL) { @@ -454,6 +464,7 @@ __bam_stat_print(dbc, flags) } #endif +#ifndef HAVE_BREW /* * __bam_key_range -- * Return proportion of keys relative to given key. The numbers are @@ -483,6 +494,7 @@ __bam_key_range(dbc, dbt, kp, flags) kp->less = kp->greater = 0.0; factor = 1.0; + /* Correct the leaf page. */ cp->csp->entries /= 2; cp->csp->indx /= 2; @@ -524,6 +536,7 @@ __bam_key_range(dbc, dbt, kp, flags) return (0); } +#endif /* * __bam_traverse -- @@ -625,7 +638,8 @@ __bam_traverse(dbc, mode, root_pgno, callback, cookie) ret = callback(dbp, h, cookie, &already_put); -err: if (!already_put && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) +err: if (!already_put && + (t_ret = __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, lock)) != 0 && ret == 0) ret = t_ret; diff --git a/db/btree/bt_upgrade.c b/db/btree/bt_upgrade.c index 5c6dcdf33..9c316c1b0 100644 --- a/db/btree/bt_upgrade.c +++ b/db/btree/bt_upgrade.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: bt_upgrade.c,v 12.4 2006/08/24 14:44:45 bostic Exp $ + * $Id: bt_upgrade.c,v 12.6 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" diff --git a/db/btree/bt_verify.c b/db/btree/bt_verify.c index 3312dd880..59ea4e593 100644 --- a/db/btree/bt_verify.c +++ b/db/btree/bt_verify.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: bt_verify.c,v 12.27 2006/09/07 20:05:25 bostic Exp $ + * $Id: bt_verify.c,v 12.30 2007/05/17 15:14:46 bostic Exp $ */ #include "db_config.h" @@ -1866,7 +1865,8 @@ err: if (toplevel) { vdp->leaf_type = leaf_type; } - if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if (h != NULL && (t_ret = + __memp_fput(mpf, h, DB_PRIORITY_UNCHANGED)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __db_vrfy_putpageinfo(dbenv, vdp, pip)) != 0 && ret == 0) ret = t_ret; @@ -2366,7 +2366,7 @@ __bam_meta2pgset(dbp, vdp, btmeta, flags, pgset) goto err; } - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, DB_PRIORITY_UNCHANGED)) != 0) err_ret = ret; h = NULL; } @@ -2398,13 +2398,13 @@ traverse: goto err; current = NEXT_PGNO(h); - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, DB_PRIORITY_UNCHANGED)) != 0) err_ret = ret; h = NULL; } err: if (h != NULL) - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, DB_PRIORITY_UNCHANGED); return (ret == 0 ? err_ret : ret); } diff --git a/db/btree/btree.src b/db/btree/btree.src index 9a35d5adc..04490a4f1 100644 --- a/db/btree/btree.src +++ b/db/btree/btree.src @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: btree.src,v 12.7 2006/08/24 14:44:46 bostic Exp $ + * $Id: btree.src,v 12.11 2007/06/01 17:35:16 sue Exp $ */ PREFIX __bam @@ -193,7 +192,7 @@ ARG root db_pgno_t ld /* Recno of the adjustment. */ ARG recno db_recno_t ld /* Order number of the adjustment. */ -ARG order u_int32_t ld +ARG order u_int32_t lu END /* @@ -250,7 +249,7 @@ END /* * BTREE-pgno -- Handles replacing a page number in the record - * refernece on pgno by indx. + * reference on pgno by indx. */ BEGIN pgno 44 149 DB fileid int32_t ld diff --git a/db/btree/btree_auto.c b/db/btree/btree_auto.c index 3d5b9ed97..138b83989 100644 --- a/db/btree/btree_auto.c +++ b/db/btree/btree_auto.c @@ -219,6 +219,7 @@ __bam_split_log(dbp, txnp, ret_lsnp, flags, left, llsn, right, rlsn, indx, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -228,10 +229,9 @@ __bam_split_log(dbp, txnp, ret_lsnp, flags, left, llsn, right, rlsn, indx, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -505,6 +505,7 @@ __bam_rsplit_log(dbp, txnp, ret_lsnp, flags, pgno, pgdbt, root_pgno, nrec, roote *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -514,10 +515,9 @@ __bam_rsplit_log(dbp, txnp, ret_lsnp, flags, pgno, pgdbt, root_pgno, nrec, roote rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -758,6 +758,7 @@ __bam_adj_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, indx_copy, is_insert) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -767,10 +768,9 @@ __bam_adj_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, indx_copy, is_insert) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1002,6 +1002,7 @@ __bam_cadjust_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, adjust, opflags) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1011,10 +1012,9 @@ __bam_cadjust_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, adjust, opflags) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1235,6 +1235,7 @@ __bam_cdel_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1244,10 +1245,9 @@ __bam_cdel_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1505,6 +1505,7 @@ __bam_repl_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, isdeleted, orig, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1514,10 +1515,9 @@ __bam_repl_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, isdeleted, orig, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1753,6 +1753,7 @@ __bam_root_log(dbp, txnp, ret_lsnp, flags, meta_pgno, root_pgno, meta_lsn) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1762,10 +1763,9 @@ __bam_root_log(dbp, txnp, ret_lsnp, flags, meta_pgno, root_pgno, meta_lsn) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1995,6 +1995,7 @@ __bam_curadj_log(dbp, txnp, ret_lsnp, flags, mode, from_pgno, to_pgno, left_pgno *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2004,10 +2005,9 @@ __bam_curadj_log(dbp, txnp, ret_lsnp, flags, mode, from_pgno, to_pgno, left_pgno rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2234,6 +2234,7 @@ __bam_rcuradj_log(dbp, txnp, ret_lsnp, flags, mode, root, recno, order) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2243,10 +2244,9 @@ __bam_rcuradj_log(dbp, txnp, ret_lsnp, flags, mode, root, recno, order) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2552,6 +2552,7 @@ __bam_relink_log(dbp, txnp, ret_lsnp, flags, pgno, new_pgno, prev, lsn_prev, nex *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2561,10 +2562,9 @@ __bam_relink_log(dbp, txnp, ret_lsnp, flags, pgno, new_pgno, prev, lsn_prev, nex rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2842,6 +2842,7 @@ __bam_merge_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, npgno, nlsn, hdr, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2851,10 +2852,9 @@ __bam_merge_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, npgno, nlsn, hdr, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -3100,6 +3100,7 @@ __bam_pgno_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, opgno, npgno) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -3109,10 +3110,9 @@ __bam_pgno_log(dbp, txnp, ret_lsnp, flags, pgno, lsn, indx, opgno, npgno) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); diff --git a/db/btree/btree_autop.c b/db/btree/btree_autop.c index 88da2d7e5..645c9c5fc 100644 --- a/db/btree/btree_autop.c +++ b/db/btree/btree_autop.c @@ -393,7 +393,7 @@ __bam_rcuradj_print(dbenv, dbtp, lsnp, notused2, notused3) (void)printf("\tmode: %ld\n", (long)argp->mode); (void)printf("\troot: %ld\n", (long)argp->root); (void)printf("\trecno: %ld\n", (long)argp->recno); - (void)printf("\torder: %ld\n", (long)argp->order); + (void)printf("\torder: %lu\n", (u_long)argp->order); (void)printf("\n"); __os_free(dbenv, argp); return (0); diff --git a/db/build_brew/bdb_brew.dsp b/db/build_brew/bdb_brew.dsp new file mode 100644 index 000000000..dece44cf1 --- /dev/null +++ b/db/build_brew/bdb_brew.dsp @@ -0,0 +1,625 @@ +# Microsoft Developer Studio Project File - Name="bdb_brew" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=bdb_brew - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "bdb_brew.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "bdb_brew.mak" CFG="bdb_brew - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "bdb_brew - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "bdb_brew - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "bdb_brew - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release/bdb_brew" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release/bdb_brew" +# PROP Target_Dir "" +LINK32=link.exe +# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /I "$(BREWDIR)\inc" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "bdb_brew - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug/bdb_brew" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug/bdb_brew" +# PROP Target_Dir "" +LINK32=link.exe +# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /ZI /Od /X /I "." /I ".." /I "$(BREWDIR)\inc" /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "_DEBUG" /D "AEE_SIMULATOR" /D "__NO_SYSTEM_INCLUDES" /FR /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "bdb_brew - Win32 Release" +# Name "bdb_brew - Win32 Debug" +# Begin Group "header_files" + +# PROP Default_Filter "" +# Begin Source File + +SOURCE=.\brew_db.h +# End Source File +# Begin Source File + +SOURCE=.\clib_port.h +# End Source File +# Begin Source File + +SOURCE=.\db.h +# End Source File +# Begin Source File + +SOURCE=.\db_config.h +# End Source File +# Begin Source File + +SOURCE=.\db_int.h +# End Source File +# Begin Source File + +SOURCE=.\errno.h +# End Source File +# End Group +# Begin Group "source_files" + +# PROP Default_Filter "" +# Begin Source File +SOURCE=..\btree\bt_compact.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_compare.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_conv.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_curadj.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_cursor.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_delete.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_method.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_open.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_put.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_rec.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_reclaim.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_recno.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_rsearch.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_search.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_split.c +# End Source File +# Begin Source File +SOURCE=..\btree\bt_stat.c +# End Source File +# Begin Source File +SOURCE=..\btree\btree_auto.c +# End Source File +# Begin Source File +SOURCE=..\clib\atol.c +# End Source File +# Begin Source File +SOURCE=..\clib\isalpha.c +# End Source File +# Begin Source File +SOURCE=..\clib\isdigit.c +# End Source File +# Begin Source File +SOURCE=..\clib\isprint.c +# End Source File +# Begin Source File +SOURCE=..\clib\isspace.c +# End Source File +# Begin Source File +SOURCE=..\clib\printf.c +# End Source File +# Begin Source File +SOURCE=..\clib\qsort.c +# End Source File +# Begin Source File +SOURCE=..\clib\rand.c +# End Source File +# Begin Source File +SOURCE=..\clib\strcasecmp.c +# End Source File +# Begin Source File +SOURCE=..\clib\strerror.c +# End Source File +# Begin Source File +SOURCE=..\clib\strncat.c +# End Source File +# Begin Source File +SOURCE=..\clib\strsep.c +# End Source File +# Begin Source File +SOURCE=..\clib\strtol.c +# End Source File +# Begin Source File +SOURCE=..\common\crypto_stub.c +# End Source File +# Begin Source File +SOURCE=..\common\db_byteorder.c +# End Source File +# Begin Source File +SOURCE=..\common\db_err.c +# End Source File +# Begin Source File +SOURCE=..\common\db_getlong.c +# End Source File +# Begin Source File +SOURCE=..\common\db_idspace.c +# End Source File +# Begin Source File +SOURCE=..\common\db_log2.c +# End Source File +# Begin Source File +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File +SOURCE=..\common\mkpath.c +# End Source File +# Begin Source File +SOURCE=..\db\crdel_auto.c +# End Source File +# Begin Source File +SOURCE=..\db\crdel_rec.c +# End Source File +# Begin Source File +SOURCE=..\db\db.c +# End Source File +# Begin Source File +SOURCE=..\db\db_am.c +# End Source File +# Begin Source File +SOURCE=..\db\db_auto.c +# End Source File +# Begin Source File +SOURCE=..\db\db_cam.c +# End Source File +# Begin Source File +SOURCE=..\db\db_cds.c +# End Source File +# Begin Source File +SOURCE=..\db\db_conv.c +# End Source File +# Begin Source File +SOURCE=..\db\db_dispatch.c +# End Source File +# Begin Source File +SOURCE=..\db\db_dup.c +# End Source File +# Begin Source File +SOURCE=..\db\db_iface.c +# End Source File +# Begin Source File +SOURCE=..\db\db_join.c +# End Source File +# Begin Source File +SOURCE=..\db\db_meta.c +# End Source File +# Begin Source File +SOURCE=..\db\db_method.c +# End Source File +# Begin Source File +SOURCE=..\db\db_open.c +# End Source File +# Begin Source File +SOURCE=..\db\db_overflow.c +# End Source File +# Begin Source File +SOURCE=..\db\db_pr.c +# End Source File +# Begin Source File +SOURCE=..\db\db_rec.c +# End Source File +# Begin Source File +SOURCE=..\db\db_reclaim.c +# End Source File +# Begin Source File +SOURCE=..\db\db_remove.c +# End Source File +# Begin Source File +SOURCE=..\db\db_rename.c +# End Source File +# Begin Source File +SOURCE=..\db\db_ret.c +# End Source File +# Begin Source File +SOURCE=..\db\db_setid.c +# End Source File +# Begin Source File +SOURCE=..\db\db_setlsn.c +# End Source File +# Begin Source File +SOURCE=..\db\db_stati.c +# End Source File +# Begin Source File +SOURCE=..\db\db_truncate.c +# End Source File +# Begin Source File +SOURCE=..\db\db_upg.c +# End Source File +# Begin Source File +SOURCE=..\db\db_vrfy_stub.c +# End Source File +# Begin Source File +SOURCE=..\dbreg\dbreg.c +# End Source File +# Begin Source File +SOURCE=..\dbreg\dbreg_auto.c +# End Source File +# Begin Source File +SOURCE=..\dbreg\dbreg_rec.c +# End Source File +# Begin Source File +SOURCE=..\dbreg\dbreg_stat.c +# End Source File +# Begin Source File +SOURCE=..\dbreg\dbreg_util.c +# End Source File +# Begin Source File +SOURCE=..\env\env_alloc.c +# End Source File +# Begin Source File +SOURCE=..\env\env_config.c +# End Source File +# Begin Source File +SOURCE=..\env\env_failchk.c +# End Source File +# Begin Source File +SOURCE=..\env\env_file.c +# End Source File +# Begin Source File +SOURCE=..\env\env_method.c +# End Source File +# Begin Source File +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File +SOURCE=..\env\env_open.c +# End Source File +# Begin Source File +SOURCE=..\env\env_recover.c +# End Source File +# Begin Source File +SOURCE=..\env\env_region.c +# End Source File +# Begin Source File +SOURCE=..\env\env_register.c +# End Source File +# Begin Source File +SOURCE=..\env\env_stat.c +# End Source File +# Begin Source File +SOURCE=..\fileops\fileops_auto.c +# End Source File +# Begin Source File +SOURCE=..\fileops\fop_basic.c +# End Source File +# Begin Source File +SOURCE=..\fileops\fop_rec.c +# End Source File +# Begin Source File +SOURCE=..\fileops\fop_util.c +# End Source File +# Begin Source File +SOURCE=..\hash\hash_func.c +# End Source File +# Begin Source File +SOURCE=..\hash\hash_stub.c +# End Source File +# Begin Source File +SOURCE=..\hmac\hmac.c +# End Source File +# Begin Source File +SOURCE=..\hmac\sha1.c +# End Source File +# Begin Source File +SOURCE=..\lock\lock_stub.c +# End Source File +# Begin Source File +SOURCE=..\log\log.c +# End Source File +# Begin Source File +SOURCE=..\log\log_archive.c +# End Source File +# Begin Source File +SOURCE=..\log\log_compare.c +# End Source File +# Begin Source File +SOURCE=..\log\log_debug.c +# End Source File +# Begin Source File +SOURCE=..\log\log_get.c +# End Source File +# Begin Source File +SOURCE=..\log\log_method.c +# End Source File +# Begin Source File +SOURCE=..\log\log_put.c +# End Source File +# Begin Source File +SOURCE=..\log\log_stat.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_alloc.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_bh.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_fget.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_fmethod.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_fopen.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_fput.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_fset.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_method.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_mvcc.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_region.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_register.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_stat.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_sync.c +# End Source File +# Begin Source File +SOURCE=..\mp\mp_trickle.c +# End Source File +# Begin Source File +SOURCE=..\mutex\mut_stub.c +# End Source File +# Begin Source File +SOURCE=..\os\os_alloc.c +# End Source File +# Begin Source File +SOURCE=..\os\os_clock.c +# End Source File +# Begin Source File +SOURCE=..\os\os_fid.c +# End Source File +# Begin Source File +SOURCE=..\os\os_flock.c +# End Source File +# Begin Source File +SOURCE=..\os\os_fzero.c +# End Source File +# Begin Source File +SOURCE=..\os\os_getenv.c +# End Source File +# Begin Source File +SOURCE=..\os\os_map.c +# End Source File +# Begin Source File +SOURCE=..\os\os_region.c +# End Source File +# Begin Source File +SOURCE=..\os\os_root.c +# End Source File +# Begin Source File +SOURCE=..\os\os_rpath.c +# End Source File +# Begin Source File +SOURCE=..\os\os_tmpdir.c +# End Source File +# Begin Source File +SOURCE=..\os\os_uid.c +# End Source File +# Begin Source File +SOURCE=..\os\os_yield.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\ctime.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\fclose.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\fgetc.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\fgets.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\fopen.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\fwrite.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\getcwd.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\globals.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\localtime.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_abort.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_abs.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_config.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_dir.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_errno.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_handle.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_mkdir.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_oflags.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_open.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_pid.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_rename.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_rw.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_seek.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_sleep.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_stat.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_truncate.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\os_unlink.c +# End Source File +# Begin Source File +SOURCE=..\os_brew\time.c +# End Source File +# Begin Source File +SOURCE=..\qam\qam_stub.c +# End Source File +# Begin Source File +SOURCE=..\rep\rep_stub.c +# End Source File +# Begin Source File +SOURCE=..\repmgr\repmgr_stub.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_auto.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_chkpt.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_failchk.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_method.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_rec.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_recover.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_region.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_stat.c +# End Source File +# Begin Source File +SOURCE=..\txn\txn_util.c +# End Source File +# Begin Source File +SOURCE=..\xa\xa_stub.c +# End Source File +# End Group +# End Target +# End Project diff --git a/db/build_brew/bdb_brew.dsw b/db/build_brew/bdb_brew.dsw new file mode 100644 index 000000000..a0fdf302a --- /dev/null +++ b/db/build_brew/bdb_brew.dsw @@ -0,0 +1,29 @@ +Microsoft Developer Studio Workspace File, Format Version 6.00 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! + +############################################################################### + +Project: "bdb_brew"=.\bdb_brew.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + diff --git a/db/build_brew/bdbread.mak b/db/build_brew/bdbread.mak new file mode 100644 index 000000000..bdcae5254 --- /dev/null +++ b/db/build_brew/bdbread.mak @@ -0,0 +1,587 @@ +#============================================================================ +# Name: +# $(TARGET).MAK +# +# Description: +# Makefile to build the $(TARGET) downloadable module. +# +# The following nmake targets are available in this makefile: +# +# all - make .elf and .mod image files (default) +# clean - delete object directory and image files +# filename.o - make object file +# +# The above targets can be made with the following command: +# +# nmake /f $(TARGET).mak [target] +# +# Assumptions: +# 1. The environment variable ADSHOME is set to the root directory of the +# arm tools. +# 2. The version of ADS is 1.2 or above. +# +# Notes: +# None. +# +# +# Copyright © 2000-2003 QUALCOMM Incorporated. +# All Rights Reserved. +# QUALCOMM Proprietary/GTDR +# +#---------------------------------------------------------------------------- +#============================================================================ +BREW_HOME =$(BREWDIR) +ARM_HOME =$(ARMHOME) +TARGET =D:\DB7588~1.BRE\BUILD_~1\bdb_brew +OBJS =bdbread.o AEEModGen.o AEEAppGen.o bt_compact.o bt_compare.o bt_conv.o bt_curadj.o bt_cursor.o bt_delete.o bt_method.o bt_open.o bt_put.o bt_rec.o bt_reclaim.o bt_recno.o bt_rsearch.o bt_search.o bt_split.o bt_stat.o btree_auto.o atol.o isalpha.o isdigit.o isprint.o isspace.o printf.o qsort.o rand.o strcasecmp.o strerror.o strncat.o strsep.o strtol.o crypto_stub.o db_byteorder.o db_err.o db_getlong.o db_idspace.o db_log2.o db_shash.o mkpath.o crdel_auto.o crdel_rec.o db.o db_am.o db_auto.o db_cam.o db_cds.o db_conv.o db_dispatch.o db_dup.o db_iface.o db_join.o db_meta.o db_method.o db_open.o db_overflow.o db_pr.o db_rec.o db_reclaim.o db_remove.o db_rename.o db_ret.o db_setid.o db_setlsn.o db_stati.o db_truncate.o db_upg.o db_vrfy_stub.o dbreg.o dbreg_auto.o dbreg_rec.o dbreg_stat.o dbreg_util.o env_alloc.o env_config.o env_failchk.o env_file.o env_method.o env_name.o env_open.o env_recover.o env_region.o env_register.o env_stat.o fileops_auto.o fop_basic.o fop_rec.o fop_util.o hash_func.o hash_stub.o hmac.o sha1.o lock_stub.o log.o log_archive.o log_compare.o log_debug.o log_get.o log_method.o log_put.o log_stat.o mp_alloc.o mp_bh.o mp_fget.o mp_fmethod.o mp_fopen.o mp_fput.o mp_fset.o mp_method.o mp_mvcc.o mp_region.o mp_register.o mp_resize.o mp_stat.o mp_sync.o mp_trickle.o mut_stub.o os_alloc.o os_clock.o os_fid.o os_flock.o os_fzero.o os_getenv.o os_map.o os_region.o os_root.o os_rpath.o os_tmpdir.o os_uid.o os_yield.o ctime.o fclose.o fgetc.o fgets.o fopen.o fwrite.o getcwd.o globals.o localtime.o os_abort.o os_abs.o os_config.o os_dir.o os_errno.o os_handle.o os_mkdir.o os_oflags.o os_open.o os_pid.o os_rename.o os_rw.o os_seek.o os_sleep.o os_stat.o os_truncate.o os_unlink.o time.o qam_stub.o rep_stub.o repmgr_stub.o txn.o txn_auto.o txn_chkpt.o txn_failchk.o txn_method.o txn_rec.o txn_recover.o txn_region.o txn_stat.o txn_util.o xa_stub.o +APP_INCLUDES = -I ..\build_brew -I .. + +#------------------------------------------------------------------------------- +# Target file name and type definitions +#------------------------------------------------------------------------------- + +EXETYPE = elf # Target image file format +MODULE = mod # Downloadable module extension + +#------------------------------------------------------------------------------- +# Target compile time symbol definitions +# +# Tells the SDK source stuffs that we're building a dynamic app. +#------------------------------------------------------------------------------- + +DYNAPP = -DDYNAMIC_APP + + +#------------------------------------------------------------------------------- +# Software tool and environment definitions +#------------------------------------------------------------------------------- + +AEESRCPATH = $(BREW_HOME)\src +AEEINCPATH = $(BREW_HOME)\inc + +ARMBIN = $(ARM_HOME)\bin # ARM ADS application directory +ARMINC = $(ARM_HOME)\include # ARM ADS include file directory +ARMLIB = $(ARM_HOME)\lib # ARM ADS library directory + +ARMCC = $(ARMBIN)\armcc # ARM ADS ARM 32-bit inst. set ANSI C compiler +LD = $(ARMBIN)\armlink # ARM ADS linker +HEXTOOL = $(ARMBIN)\fromelf # ARM ADS utility to create hex file from image + +OBJ_CMD = -o # Command line option to specify output filename + +#------------------------------------------------------------------------------- +# Processor architecture options +#------------------------------------------------------------------------------- + +CPU = -cpu ARM7TDMI # ARM7TDMI target processor + +#------------------------------------------------------------------------------- +# ARM Procedure Call Standard (APCS) options +#------------------------------------------------------------------------------- + +ROPI = ropi # Read-Only(code) Position independence +INTERWRK = interwork # Allow ARM-Thumb interworking + +APCS = -apcs /$(ROPI)/$(INTERWRK)/norwpi + +#------------------------------------------------------------------------------- +# Additional compile time error checking options +#------------------------------------------------------------------------------- + +CHK = -fa # Check for data flow anomolies + +#------------------------------------------------------------------------------- +# Compiler output options +#------------------------------------------------------------------------------- + +OUT = -c # Object file output only + +#------------------------------------------------------------------------------- +# Compiler/assembler debug options +#------------------------------------------------------------------------------- + +DBG = -g # Enable debug + +#------------------------------------------------------------------------------- +# Compiler optimization options +#------------------------------------------------------------------------------- + +OPT = -Ospace -O2 # Full compiler optimization for space + +#------------------------------------------------------------------------------- +# Compiler code generation options +#------------------------------------------------------------------------------- + +END = -littleend # Compile for little endian memory architecture +ZA = -zo # LDR may only access 32-bit aligned addresses + +CODE = $(END) $(ZA) + + +#------------------------------------------------------------------------------- +# Include file search path options +#------------------------------------------------------------------------------- + +INC = -I. -I$(AEEINCPATH) $(APP_INCLUDES) + + +#------------------------------------------------------------------------------- +# Compiler pragma emulation options +#------------------------------------------------------------------------------- + + +#------------------------------------------------------------------------------- +# Linker options +#------------------------------------------------------------------------------- + +LINK_CMD = -o #Command line option to specify output file + #on linking + +ROPILINK = -ropi #Link image as Read-Only Position Independent + +LINK_ORDER = -first AEEMod_Load + +#------------------------------------------------------------------------------- +# HEXTOOL options +#------------------------------------------------------------------------------- + +BINFORMAT = -bin + + +#------------------------------------------------------------------------------- +# Compiler flag definitions +#------------------------------------------------------------------------------- +NO_WARNING= -W + +CFLAGS0 = $(OUT) $(DYNAPP) $(CPU) $(APCS) $(CODE) $(CHK) $(DBG) +CFLAGS = $(NO_WARNING) $(CFLAGS0) $(OPT) + +#------------------------------------------------------------------------------- +# Linker flag definitions +#------------------------------------------------------------------------------- + +# the -entry flag is not really needed, but it keeps the linker from reporting +# warning L6305W (no entry point). The address +LFLAGS = $(ROPILINK) -rwpi -entry 0x8000# + +#---------------------------------------------------------------------------- +# Default target +#---------------------------------------------------------------------------- + +all : $(TARGET).$(MODULE) + +#---------------------------------------------------------------------------- +# Clean target +#---------------------------------------------------------------------------- + +# The object subdirectory, target image file, and target hex file are deleted. + +clean : + @echo --------------------------------------------------------------- + @echo CLEAN + -del /f $(OBJS) + -del /f $(TARGET).$(EXETYPE) + -del /f $(TARGET).$(MODULE) + @echo --------------------------------------------------------------- + +#============================================================================ +# DEFAULT SUFFIX RULES +#============================================================================ + +# The following are the default suffix rules used to compile all objects that +# are not specifically included in one of the module specific rules defined +# in the next section. + +# The following macros are used to specify the output object file, MSG_FILE +# symbol definition and input source file on the compile line in the rules +# defined below. + +SRC_FILE = $(@F:.o=.c) # Input source file specification +OBJ_FILE = $(OBJ_CMD) $(@F) # Output object file specification + +.SUFFIXES : +.SUFFIXES : .o .dep .c + +#-------------------------------------------------------------------------- +# C code inference rules +#---------------------------------------------------------------------------- + +.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(SRC_FILE) + @echo --------------------------------------------------------------- + +.c.mix: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) -S -fs $(CFLAGS) $(INC) $(OBJ_FILE) $< + @echo --------------------------------------------------------------- + + +{$(AEESRCPATH)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(AEESRCPATH)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +#=============================================================================== +# MODULE SPECIFIC RULES +#=============================================================================== + +APP_OBJS = $(OBJS) + + +#---------------------------------------------------------------------------- +# Lib file targets +#---------------------------------------------------------------------------- + +$(TARGET).$(MODULE) : $(TARGET).$(EXETYPE) + @echo --------------------------------------------------------------- + @echo TARGET $@ + $(HEXTOOL) $(TARGET).$(EXETYPE) $(BINFORMAT) $(TARGET).$(MODULE) + +$(TARGET).$(EXETYPE) : $(APP_OBJS) + @echo --------------------------------------------------------------- + @echo TARGET $@ + $(LD) $(LINK_CMD) $(TARGET).$(EXETYPE) $(LFLAGS) $(APP_OBJS) $(LINK_ORDER) + +#---------------------------------------------------------------------------- +# Applet Specific Rules +#---------------------------------------------------------------------------- + + +RULE1 = ..\clib +{$(RULE1)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE1)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE2 = ..\btree +{$(RULE2)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE2)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE3 = ..\db +{$(RULE3)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE3)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE4 = ..\common +{$(RULE4)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE4)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE5 = ..\os_brew +{$(RULE5)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE5)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE6 = ..\env +{$(RULE6)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE6)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE7 = ..\dbreg +{$(RULE7)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE7)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE8 = ..\fileops +{$(RULE8)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE8)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE9 = ..\hash +{$(RULE9)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE9)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE10 = ..\hmac +{$(RULE10)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE10)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE11 = ..\lock +{$(RULE11)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE11)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE12 = ..\log +{$(RULE12)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE12)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE13 = ..\mp +{$(RULE13)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE13)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE14 = ..\mutex +{$(RULE14)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE14)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE15 = ..\os +{$(RULE15)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE15)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE16 = ..\qam +{$(RULE16)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE16)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE17 = ..\rep +{$(RULE17)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE17)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE18 = ..\txn +{$(RULE18)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE18)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE19 = ..\xa +{$(RULE19)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE19)\$(SRC_FILE) + @echo --------------------------------------------------------------- +RULE20 = ..\bdbread +{$(RULE20)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE20)\$(SRC_FILE) + @echo --------------------------------------------------------------- + +# -------------------------------------------- +# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE +# -------------------------------------------- + +bdbread.o : ..\bdbread\bdbread.c +AEEModGen.o : ..\bdbread\AEEModGen.c +AEEAppGen.o : ..\bdbread\AEEAppGen.c +bt_compact.o: ..\btree\bt_compact.c +bt_compare.o: ..\btree\bt_compare.c +bt_conv.o: ..\btree\bt_conv.c +bt_curadj.o: ..\btree\bt_curadj.c +bt_cursor.o: ..\btree\bt_cursor.c +bt_delete.o: ..\btree\bt_delete.c +bt_method.o: ..\btree\bt_method.c +bt_open.o: ..\btree\bt_open.c +bt_put.o: ..\btree\bt_put.c +bt_rec.o: ..\btree\bt_rec.c +bt_reclaim.o: ..\btree\bt_reclaim.c +bt_recno.o: ..\btree\bt_recno.c +bt_rsearch.o: ..\btree\bt_rsearch.c +bt_search.o: ..\btree\bt_search.c +bt_split.o: ..\btree\bt_split.c +bt_stat.o: ..\btree\bt_stat.c +btree_auto.o: ..\btree\btree_auto.c +atol.o: ..\clib\atol.c +isalpha.o: ..\clib\isalpha.c +isdigit.o: ..\clib\isdigit.c +isprint.o: ..\clib\isprint.c +isspace.o: ..\clib\isspace.c +printf.o: ..\clib\printf.c +qsort.o: ..\clib\qsort.c +rand.o: ..\clib\rand.c +strcasecmp.o: ..\clib\strcasecmp.c +strerror.o: ..\clib\strerror.c +strncat.o: ..\clib\strncat.c +strsep.o: ..\clib\strsep.c +strtol.o: ..\clib\strtol.c +crypto_stub.o: ..\common\crypto_stub.c +db_byteorder.o: ..\common\db_byteorder.c +db_err.o: ..\common\db_err.c +db_getlong.o: ..\common\db_getlong.c +db_idspace.o: ..\common\db_idspace.c +db_log2.o: ..\common\db_log2.c +db_shash.o: ..\common\db_shash.c +mkpath.o: ..\common\mkpath.c +crdel_auto.o: ..\db\crdel_auto.c +crdel_rec.o: ..\db\crdel_rec.c +db.o: ..\db\db.c +db_am.o: ..\db\db_am.c +db_auto.o: ..\db\db_auto.c +db_cam.o: ..\db\db_cam.c +db_cds.o: ..\db\db_cds.c +db_conv.o: ..\db\db_conv.c +db_dispatch.o: ..\db\db_dispatch.c +db_dup.o: ..\db\db_dup.c +db_iface.o: ..\db\db_iface.c +db_join.o: ..\db\db_join.c +db_meta.o: ..\db\db_meta.c +db_method.o: ..\db\db_method.c +db_open.o: ..\db\db_open.c +db_overflow.o: ..\db\db_overflow.c +db_pr.o: ..\db\db_pr.c +db_rec.o: ..\db\db_rec.c +db_reclaim.o: ..\db\db_reclaim.c +db_remove.o: ..\db\db_remove.c +db_rename.o: ..\db\db_rename.c +db_ret.o: ..\db\db_ret.c +db_setid.o: ..\db\db_setid.c +db_setlsn.o: ..\db\db_setlsn.c +db_stati.o: ..\db\db_stati.c +db_truncate.o: ..\db\db_truncate.c +db_upg.o: ..\db\db_upg.c +db_vrfy_stub.o: ..\db\db_vrfy_stub.c +dbreg.o: ..\dbreg\dbreg.c +dbreg_auto.o: ..\dbreg\dbreg_auto.c +dbreg_rec.o: ..\dbreg\dbreg_rec.c +dbreg_stat.o: ..\dbreg\dbreg_stat.c +dbreg_util.o: ..\dbreg\dbreg_util.c +env_alloc.o: ..\env\env_alloc.c +env_config.o: ..\env\env_config.c +env_failchk.o: ..\env\env_failchk.c +env_file.o: ..\env\env_file.c +env_method.o: ..\env\env_method.c +env_name.o: ..\env\env_name.c +env_open.o: ..\env\env_open.c +env_recover.o: ..\env\env_recover.c +env_region.o: ..\env\env_region.c +env_register.o: ..\env\env_register.c +env_stat.o: ..\env\env_stat.c +fileops_auto.o: ..\fileops\fileops_auto.c +fop_basic.o: ..\fileops\fop_basic.c +fop_rec.o: ..\fileops\fop_rec.c +fop_util.o: ..\fileops\fop_util.c +hash_func.o: ..\hash\hash_func.c +hash_stub.o: ..\hash\hash_stub.c +hmac.o: ..\hmac\hmac.c +sha1.o: ..\hmac\sha1.c +lock_stub.o: ..\lock\lock_stub.c +log.o: ..\log\log.c +log_archive.o: ..\log\log_archive.c +log_compare.o: ..\log\log_compare.c +log_debug.o: ..\log\log_debug.c +log_get.o: ..\log\log_get.c +log_method.o: ..\log\log_method.c +log_put.o: ..\log\log_put.c +log_stat.o: ..\log\log_stat.c +mp_alloc.o: ..\mp\mp_alloc.c +mp_bh.o: ..\mp\mp_bh.c +mp_fget.o: ..\mp\mp_fget.c +mp_fmethod.o: ..\mp\mp_fmethod.c +mp_fopen.o: ..\mp\mp_fopen.c +mp_fput.o: ..\mp\mp_fput.c +mp_fset.o: ..\mp\mp_fset.c +mp_method.o: ..\mp\mp_method.c +mp_mvcc.o: ..\mp\mp_mvcc.c +mp_region.o: ..\mp\mp_region.c +mp_register.o: ..\mp\mp_register.c +mp_resize.o: ..\mp\mp_resize.c +mp_stat.o: ..\mp\mp_stat.c +mp_sync.o: ..\mp\mp_sync.c +mp_trickle.o: ..\mp\mp_trickle.c +mut_stub.o: ..\mutex\mut_stub.c +os_alloc.o: ..\os\os_alloc.c +os_clock.o: ..\os\os_clock.c +os_fid.o: ..\os\os_fid.c +os_flock.o: ..\os\os_flock.c +os_fzero.o: ..\os\os_fzero.c +os_getenv.o: ..\os\os_getenv.c +os_map.o: ..\os\os_map.c +os_region.o: ..\os\os_region.c +os_root.o: ..\os\os_root.c +os_rpath.o: ..\os\os_rpath.c +os_tmpdir.o: ..\os\os_tmpdir.c +os_uid.o: ..\os\os_uid.c +os_yield.o: ..\os\os_yield.c +ctime.o: ..\os_brew\ctime.c +fclose.o: ..\os_brew\fclose.c +fgetc.o: ..\os_brew\fgetc.c +fgets.o: ..\os_brew\fgets.c +fopen.o: ..\os_brew\fopen.c +fwrite.o: ..\os_brew\fwrite.c +getcwd.o: ..\os_brew\getcwd.c +globals.o: ..\os_brew\globals.c +localtime.o: ..\os_brew\localtime.c +os_abort.o: ..\os_brew\os_abort.c +os_abs.o: ..\os_brew\os_abs.c +os_config.o: ..\os_brew\os_config.c +os_dir.o: ..\os_brew\os_dir.c +os_errno.o: ..\os_brew\os_errno.c +os_handle.o: ..\os_brew\os_handle.c +os_mkdir.o: ..\os_brew\os_mkdir.c +os_oflags.o: ..\os_brew\os_oflags.c +os_open.o: ..\os_brew\os_open.c +os_pid.o: ..\os_brew\os_pid.c +os_rename.o: ..\os_brew\os_rename.c +os_rw.o: ..\os_brew\os_rw.c +os_seek.o: ..\os_brew\os_seek.c +os_sleep.o: ..\os_brew\os_sleep.c +os_stat.o: ..\os_brew\os_stat.c +os_truncate.o: ..\os_brew\os_truncate.c +os_unlink.o: ..\os_brew\os_unlink.c +time.o: ..\os_brew\time.c +qam_stub.o: ..\qam\qam_stub.c +rep_stub.o: ..\rep\rep_stub.c +repmgr_stub.o: ..\repmgr\repmgr_stub.c +txn.o: ..\txn\txn.c +txn_auto.o: ..\txn\txn_auto.c +txn_chkpt.o: ..\txn\txn_chkpt.c +txn_failchk.o: ..\txn\txn_failchk.c +txn_method.o: ..\txn\txn_method.c +txn_rec.o: ..\txn\txn_rec.c +txn_recover.o: ..\txn\txn_recover.c +txn_region.o: ..\txn\txn_region.c +txn_stat.o: ..\txn\txn_stat.c +txn_util.o: ..\txn\txn_util.c +xa_stub.o: ..\xa\xa_stub.c diff --git a/db/build_brew/brew_db.h b/db/build_brew/brew_db.h new file mode 100644 index 000000000..d9e156867 --- /dev/null +++ b/db/build_brew/brew_db.h @@ -0,0 +1,150 @@ +/*- + * $Id: brew_db.in,v 1.5 2006/11/15 13:36:48 bostic Exp $ + * + * The following provides the information necessary to build Berkeley DB + * on BREW. + */ + +#include +#include +#include +#include + +#include "errno.h" +#include "db.h" +#include "clib_port.h" + +/* + * BREW doesn't have stdio. + */ +#define EOF (-1) /* Declare stdio's EOF. */ +#define stderr ((IFile *)1) /* Flag to call DBGPRINTF. */ +#define stdout ((IFile *)1) + +/* + * POSIX time structure/function compatibility. + * + * !!! + * This is likely wrong, we should probably move all Berkeley DB time-specific + * functionality into os/. + */ +struct tm { + int tm_sec; /* seconds after the minute - [0,59] */ + int tm_min; /* minutes after the hour - [0,59] */ + int tm_hour; /* hours since midnight - [0,23] */ + int tm_mday; /* day of the month - [1,31] */ + int tm_mon; /* months since January - [0,11] */ + int tm_year; /* years since 1900 */ + int tm_wday; /* days since Sunday - [0,6] */ + int tm_yday; /* days since January 1 - [0,365] */ + int tm_isdst; /* daylight savings time flag */ + /* + * We don't provide tm_zone or tm_gmtoff because BREW doesn't + * provide them. + */ +}; + +/* +* The ctime() function converts the time pointed to by clock, representing +* time in seconds since the Epoch to local time in the form of a string. +* +* Berkeley DB uses POSIX time values internally. +* +* The POSIX time function returns seconds since the Epoch, which was +* 1970/01/01 00:00:00 UTC. +* +* BREW's GETUTCSECONDS() returns the number of seconds since +* 1980/01/06 00:00:00 UTC. +* +* To convert from BREW to POSIX, add the seconds between 1970 and 1980 plus +* 6 more days. +*/ +#define BREW_EPOCH_OFFSET (315964800L) + +/* + * Map ANSI C library functions to BREW specific APIs. + */ +#define atoi(a) ATOI(a) +#define free(a) FREE(a) +#define malloc(a) MALLOC(a) +#define memcmp(a, b, c) MEMCMP(a, b, c) +#define memmove(a, b, c) MEMMOVE(a, b, c) +#define memset(a, b, c) MEMSET(a, b, c) +#define realloc(a, b) REALLOC(a, b) +#define snprintf SNPRINTF +#define sprintf SPRINTF +#define strcat(a, b) STRCAT(a, b) +#define strchr(a, b) STRCHR(a, b) +#define strcmp(a, b) STRCMP(a, b) +#define strcpy(a, b) STRCPY(a, b) +#define strdup(a) STRDUP(a) +#define strlen(a) STRLEN(a) +#define strncmp(a, b, c) STRNCMP(a, b, c) +#define strncpy(a, b, c) STRNCPY(a, b, c) +#define strrchr(a, b) STRRCHR(a, b) +#define strtoul(a, b, c) STRTOUL(a, b, c) +#define vsnprintf(a, b, c, d) VSNPRINTF(a, b, c, d) + +/* + * !!! + * Don't #define memcpy to MEMCPY, even though it exists, because that results + * in a C pre-processor loop and compile failure. + * + * Don't #define memcpy to MEMMOVE directly, that results in failure as well. + */ +#define memcpy memmove + +/* + * BREW does not have concept of 'sync'. + * + * It depends on the implementation of the BREW on various platforms, but + * Mobilus confirms the version of BREW that ships to North America in 3G + * models has sync features guaranteeing safe physical writes whenever a + * write is performed using BREW API. Therefore, the issue is not on the + * applications running top of BREW, but the implementation of BREW itself + * that has to be checked in order to provide durability. + */ +#define __os_fsync(a, b) (0) +#define fflush(a) (0) + +/* + * The ANSI C library functions for which we wrote local versions. + */ +int fclose(FILE *); +int fgetc(FILE *); +char *fgets(char *, int, FILE *); +FILE *fopen(const char *, const char *); +size_t fwrite(const void *, size_t, size_t, FILE *); +char *getcwd(char *, size_t); +struct tm *localtime(const time_t *); +time_t time(time_t *); + +/* + * FILE_MANAGER_CREATE -- + * Instantiate file manager instance. + */ +#define FILE_MANAGER_CREATE(dbenv, mgr, ret) do { \ + AEEApplet *__app = (AEEApplet *)GETAPPINSTANCE(); \ + int __ret; \ + if ((__ret = ISHELL_CreateInstance(__app->m_pIShell, \ + AEECLSID_FILEMGR, (void **)&(mgr))) == SUCCESS) \ + ret = 0; \ + else { \ + __db_syserr(dbenv, __ret, "ISHELL_CreateInstance"); \ + ret = __os_posix_err(__ret); \ + } \ +} while (0) + +/* + * FILE_MANAGER_ERR -- + * Handle file manager method error. + */ +#define FILE_MANAGER_ERR(dbenv, mgr, name, op, ret) do { \ + int __ret; \ + __ret = IFILEMGR_GetLastError(mgr); \ + if ((name) == NULL) \ + __db_syserr(dbenv, __ret, "%s", op); \ + else \ + __db_syserr(dbenv, __ret, "%s: %s", name, op); \ + (ret) = __os_posix_err(__ret); \ +} while (0) diff --git a/db/build_brew/clib_port.h b/db/build_brew/clib_port.h new file mode 100644 index 000000000..ad622d9b7 --- /dev/null +++ b/db/build_brew/clib_port.h @@ -0,0 +1,203 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +#endif /* HAVE_64BIT_TYPES */ + +/* + * Exit success/failure macros. + */ +#ifndef HAVE_EXIT_SUCCESS +#define EXIT_FAILURE 1 +#define EXIT_SUCCESS 0 +#endif + +/* + * Don't step on the namespace. Other libraries may have their own + * implementations of these functions, we don't want to use their + * implementations or force them to use ours based on the load order. + */ +#ifndef HAVE_ATOI +#define atoi __db_Catoi +#endif +#ifndef HAVE_ATOL +#define atol __db_Catol +#endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif +#ifndef HAVE_GETADDRINFO +#define freeaddrinfo(a) __db_Cfreeaddrinfo(a) +#define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) +#endif +#ifndef HAVE_GETCWD +#define getcwd __db_Cgetcwd +#endif +#ifndef HAVE_GETOPT +#define getopt __db_Cgetopt +#define optarg __db_Coptarg +#define opterr __db_Copterr +#define optind __db_Coptind +#define optopt __db_Coptopt +#define optreset __db_Coptreset +#endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif +#ifndef HAVE_ISSPACE +#define isspace __db_Cisspace +#endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif +#ifndef HAVE_MEMCMP +#define memcmp __db_Cmemcmp +#endif +#ifndef HAVE_MEMCPY +#define memcpy __db_Cmemcpy +#endif +#ifndef HAVE_MEMMOVE +#define memmove __db_Cmemmove +#endif +#ifndef HAVE_PRINTF +#define printf __db_Cprintf +#define fprintf __db_Cfprintf +#endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif +#ifndef HAVE_RAISE +#define raise __db_Craise +#endif +#ifndef HAVE_RAND +#define rand __db_Crand +#define srand __db_Csrand +#endif +#ifndef HAVE_SNPRINTF +#define snprintf __db_Csnprintf +#endif +#ifndef HAVE_STRCASECMP +#define strcasecmp __db_Cstrcasecmp +#define strncasecmp __db_Cstrncasecmp +#endif +#ifndef HAVE_STRCAT +#define strcat __db_Cstrcat +#endif +#ifndef HAVE_STRCHR +#define strchr __db_Cstrchr +#endif +#ifndef HAVE_STRDUP +#define strdup __db_Cstrdup +#endif +#ifndef HAVE_STRERROR +#define strerror __db_Cstrerror +#endif +#ifndef HAVE_STRNCAT +#define strncat __db_Cstrncat +#endif +#ifndef HAVE_STRNCMP +#define strncmp __db_Cstrncmp +#endif +#ifndef HAVE_STRRCHR +#define strrchr __db_Cstrrchr +#endif +#ifndef HAVE_STRSEP +#define strsep __db_Cstrsep +#endif +#ifndef HAVE_STRTOL +#define strtol __db_Cstrtol +#endif +#ifndef HAVE_STRTOUL +#define strtoul __db_Cstrtoul +#endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif +#ifndef HAVE_VSNPRINTF +#define vsnprintf __db_Cvsnprintf +#endif diff --git a/db/build_brew/db.h b/db/build_brew/db.h new file mode 100644 index 000000000..ae8b49363 --- /dev/null +++ b/db/build_brew/db.h @@ -0,0 +1,2663 @@ +/* DO NOT EDIT: automatically built by dist/s_brew. */ +/* + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db.h,v 1.79 2007/07/17 14:50:17 bostic Exp $ + * + * db.h include file layout: + * General. + * Database Environment. + * Locking subsystem. + * Logging subsystem. + * Shared buffer cache (mpool) subsystem. + * Transaction subsystem. + * Access methods. + * Access method cursors. + * Dbm/Ndbm, Hsearch historic interfaces. + */ + +#ifndef _DB_H_ +#define _DB_H_ + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +#undef __P +#define __P(protos) protos + +/* + * Berkeley DB version information. + */ +#define DB_VERSION_MAJOR 4 +#define DB_VERSION_MINOR 6 +#define DB_VERSION_PATCH 18 +#define DB_VERSION_STRING "Berkeley DB 4.6.18: (July 17, 2007)" + +/* + * !!! + * Berkeley DB uses specifically sized types. If they're not provided by + * the system, typedef them here. + * + * We protect them against multiple inclusion using __BIT_TYPES_DEFINED__, + * as does BIND and Kerberos, since we don't know for sure what #include + * files the user is using. + * + * !!! + * We also provide the standard u_int, u_long etc., if they're not provided + * by the system. + */ +#ifndef __BIT_TYPES_DEFINED__ +#define __BIT_TYPES_DEFINED__ +typedef unsigned char u_int8_t; +typedef short int16_t; +typedef unsigned short u_int16_t; +typedef int int32_t; +typedef unsigned int u_int32_t; +#endif + +typedef unsigned char u_char; +typedef unsigned int u_int; +typedef unsigned long u_long; +typedef unsigned short u_short; + +/* + * Missing ANSI types. + * + * uintmax_t -- + * Largest unsigned type, used to align structures in memory. We don't store + * floating point types in structures, so integral types should be sufficient + * (and we don't have to worry about systems that store floats in other than + * power-of-2 numbers of bytes). Additionally this fixes compilers that rewrite + * structure assignments and ANSI C memcpy calls to be in-line instructions + * that happen to require alignment. + * + * uintptr_t -- + * Unsigned type that's the same size as a pointer. There are places where + * DB modifies pointers by discarding the bottom bits to guarantee alignment. + * We can't use uintmax_t, it may be larger than the pointer, and compilers + * get upset about that. So far we haven't run on any machine where there's + * no unsigned type the same size as a pointer -- here's hoping. + */ +typedef unsigned long uintmax_t; +typedef unsigned long uintptr_t; + +typedef IFile FILE; +typedef u_int32_t off_t; +typedef int pid_t; +typedef unsigned int size_t; +typedef int ssize_t; +typedef long time_t; + +/* + * Sequences are only available on machines with 64-bit integral types. + */ +typedef int32_t db_seq_t; + +/* Thread and process identification. */ +typedef uintmax_t db_threadid_t; + +/* Basic types that are exported or quasi-exported. */ +typedef u_int32_t db_pgno_t; /* Page number type. */ +typedef u_int16_t db_indx_t; /* Page offset type. */ +#define DB_MAX_PAGES 0xffffffff /* >= # of pages in a file */ + +typedef u_int32_t db_recno_t; /* Record number type. */ +#define DB_MAX_RECORDS 0xffffffff /* >= # of records in a tree */ + +typedef u_int32_t db_timeout_t; /* Type of a timeout. */ + +/* + * Region offsets are the difference between a pointer in a region and the + * region's base address. With private environments, both addresses are the + * result of calling malloc, and we can't assume anything about what malloc + * will return, so region offsets have to be able to hold differences between + * arbitrary pointers. + */ +typedef uintptr_t roff_t; + +/* + * Forward structure declarations, so we can declare pointers and + * applications can get type checking. + */ +struct __db; typedef struct __db DB; +struct __db_bt_stat; typedef struct __db_bt_stat DB_BTREE_STAT; +struct __db_cipher; typedef struct __db_cipher DB_CIPHER; +struct __db_compact; typedef struct __db_compact DB_COMPACT; +struct __db_dbt; typedef struct __db_dbt DBT; +struct __db_env; typedef struct __db_env DB_ENV; +struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; +struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; +struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; +struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; +struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; +struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; +struct __db_log; typedef struct __db_log DB_LOG; +struct __db_log_cursor; typedef struct __db_log_cursor DB_LOGC; +struct __db_log_stat; typedef struct __db_log_stat DB_LOG_STAT; +struct __db_lsn; typedef struct __db_lsn DB_LSN; +struct __db_mpool; typedef struct __db_mpool DB_MPOOL; +struct __db_mpool_fstat;typedef struct __db_mpool_fstat DB_MPOOL_FSTAT; +struct __db_mpool_stat; typedef struct __db_mpool_stat DB_MPOOL_STAT; +struct __db_mpoolfile; typedef struct __db_mpoolfile DB_MPOOLFILE; +struct __db_mutex_stat; typedef struct __db_mutex_stat DB_MUTEX_STAT; +struct __db_mutex_t; typedef struct __db_mutex_t DB_MUTEX; +struct __db_mutexmgr; typedef struct __db_mutexmgr DB_MUTEXMGR; +struct __db_preplist; typedef struct __db_preplist DB_PREPLIST; +struct __db_qam_stat; typedef struct __db_qam_stat DB_QUEUE_STAT; +struct __db_rep; typedef struct __db_rep DB_REP; +struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; +struct __db_repmgr_site; \ + typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; +struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; +struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; +struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; +struct __db_txn; typedef struct __db_txn DB_TXN; +struct __db_txn_active; typedef struct __db_txn_active DB_TXN_ACTIVE; +struct __db_txn_stat; typedef struct __db_txn_stat DB_TXN_STAT; +struct __db_txnmgr; typedef struct __db_txnmgr DB_TXNMGR; +struct __dbc; typedef struct __dbc DBC; +struct __dbc_internal; typedef struct __dbc_internal DBC_INTERNAL; +struct __fh_t; typedef struct __fh_t DB_FH; +struct __fname; typedef struct __fname FNAME; +struct __key_range; typedef struct __key_range DB_KEY_RANGE; +struct __mpoolfile; typedef struct __mpoolfile MPOOLFILE; + +/* Key/data structure -- a Data-Base Thang. */ +struct __db_dbt { + void *data; /* Key/data */ + u_int32_t size; /* key/data length */ + + u_int32_t ulen; /* RO: length of user buffer. */ + u_int32_t dlen; /* RO: get/put record length. */ + u_int32_t doff; /* RO: get/put record offset. */ + + void *app_data; + +#define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ + u_int32_t flags; +}; + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + */ +#define DB_CREATE 0x0000001 /* Create file as necessary. */ +#define DB_DURABLE_UNKNOWN 0x0000002 /* Durability on open (internal). */ +#define DB_FORCE 0x0000004 /* Force (anything). */ +#define DB_MULTIVERSION 0x0000008 /* Multiversion concurrency control. */ +#define DB_NOMMAP 0x0000010 /* Don't mmap underlying file. */ +#define DB_RDONLY 0x0000020 /* Read-only (O_RDONLY). */ +#define DB_RECOVER 0x0000040 /* Run normal recovery. */ +#define DB_THREAD 0x0000080 /* Applications are threaded. */ +#define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ +#define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + * + * DB_AUTO_COMMIT: + * DB_ENV->set_flags, DB->open + * (Note: until the 4.3 release, legal to DB->associate, DB->del, + * DB->put, DB->remove, DB->rename and DB->truncate, and others.) + * DB_READ_COMMITTED: + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin + * DB_READ_UNCOMMITTED: + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, + * DB_ENV->txn_begin + * DB_TXN_SNAPSHOT: + * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor + * + * !!! + * The DB_READ_COMMITTED and DB_READ_UNCOMMITTED bit masks can't be changed + * without also changing the masks for the flags that can be OR'd into DB + * access method and cursor operation values. + */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ +#define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ + +#define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ +#define DB_DEGREE_2 0x04000000/* Historic name. */ + +#define DB_READ_UNCOMMITTED 0x08000000/* Degree 1 isolation. */ +#define DB_DIRTY_READ 0x08000000/* Historic name. */ + +#define DB_TXN_SNAPSHOT 0x10000000/* Snapshot isolation. */ + +/* + * Flags common to db_env_create and db_create. + */ +#define DB_CXX_NO_EXCEPTIONS 0x0000001 /* C++: return error values. */ + +/* + * Flags private to db_env_create. + * Shared flags up to 0x0000001 */ +#define DB_RPCCLIENT 0x0000002 /* An RPC client environment. */ + +/* + * Flags private to db_create. + * Shared flags up to 0x0000001 */ +#define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ + +/* + * Flags shared by DB_ENV->remove and DB_ENV->open. + * Shared flags up to 0x0002000 */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ + +#define DB_JOINENV 0x0 /* Compatibility. */ + +/* + * Flags private to DB->open. + * Shared flags up to 0x0002000 */ +#define DB_EXCL 0x0004000 /* Exclusive open (O_EXCL). */ +#define DB_FCNTL_LOCKING 0x0008000 /* UNDOC: fcntl(2) locking. */ +#define DB_NO_AUTO_COMMIT 0x0010000 /* Override env-wide AUTOCOMMIT. */ +#define DB_RDWRMASTER 0x0020000 /* UNDOC: allow subdb master open R/W */ +#define DB_WRITEOPEN 0x0040000 /* UNDOC: open with write lock. */ + +/* + * Flags private to DB->associate. + * Shared flags up to 0x0002000 */ +#define DB_IMMUTABLE_KEY 0x0004000 /* Secondary key is immutable. */ +/* Shared flags at 0x1000000 */ + +/* + * Flags private to DB_ENV->txn_begin. + * Shared flags up to 0x0002000 */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ + +/* + * Flags private to DB_ENV->set_encrypt. + */ +#define DB_ENCRYPT_AES 0x0000001 /* AES, assumes SHA1 checksum */ + +/* + * Flags private to DB_ENV->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CDB_ALLDB 0x00004000/* Set CDB locking per environment. */ +#define DB_DIRECT_DB 0x00008000/* Don't buffer databases in the OS. */ +#define DB_DIRECT_LOG 0x00010000/* Don't buffer log files in the OS. */ +#define DB_DSYNC_DB 0x00020000/* Set O_DSYNC on the databases. */ +#define DB_DSYNC_LOG 0x00040000/* Set O_DSYNC on the log. */ +#define DB_LOG_AUTOREMOVE 0x00080000/* Automatically remove log files. */ +#define DB_LOG_INMEMORY 0x00100000/* Store logs in buffers in memory. */ +#define DB_NOLOCKING 0x00200000/* Set locking/mutex behavior. */ +#define DB_NOPANIC 0x00400000/* Set panic state per DB_ENV. */ +#define DB_OVERWRITE 0x00800000/* Overwrite unlinked region files. */ +#define DB_PANIC_ENVIRONMENT 0x01000000/* Set panic state per environment. */ +/* Shared flags at 0x02000000 */ +/* Shared flags at 0x04000000 */ +/* Shared flags at 0x08000000 */ +/* Shared flags at 0x10000000 */ +#define DB_REGION_INIT 0x20000000/* Page-fault regions on open. */ +#define DB_TIME_NOTGRANTED 0x40000000/* Return NOTGRANTED on timeout. */ +#define DB_YIELDCPU 0x80000000/* Yield the CPU (a lot). */ + +/* + * Flags private to DB->set_feedback's callback. + */ +#define DB_UPGRADE 0x0000001 /* Upgrading. */ +#define DB_VERIFY 0x0000002 /* Verifying. */ + +/* + * Flags private to DB->compact. + * Shared flags up to 0x00002000 + */ +#define DB_FREELIST_ONLY 0x00004000 /* Just sort and truncate. */ +#define DB_FREE_SPACE 0x00008000 /* Free space . */ +#define DB_COMPACT_FLAGS \ + (DB_FREELIST_ONLY | DB_FREE_SPACE) + +/* + * Flags private to DB_MPOOLFILE->open. + * Shared flags up to 0x0002000 */ +#define DB_DIRECT 0x0004000 /* Don't buffer the file in the OS. */ +#define DB_EXTENT 0x0008000 /* internal: dealing with an extent. */ +#define DB_ODDFILESIZE 0x0010000 /* Truncate file to N * pgsize. */ + +/* + * Flags private to DB->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CHKSUM 0x00004000 /* Do checksumming */ +#define DB_DUP 0x00008000 /* Btree, Hash: duplicate keys. */ +#define DB_DUPSORT 0x00010000 /* Btree, Hash: duplicate keys. */ +#define DB_ENCRYPT 0x00020000 /* Btree, Hash: duplicate keys. */ +#define DB_INORDER 0x00040000 /* Queue: strict ordering on consume */ +#define DB_RECNUM 0x00080000 /* Btree: record numbers. */ +#define DB_RENUMBER 0x00100000 /* Recno: renumber on insert/delete. */ +#define DB_REVSPLITOFF 0x00200000 /* Btree: turn off reverse splits. */ +#define DB_SNAPSHOT 0x00400000 /* Recno: snapshot the input. */ + +/* + * Flags private to the DB_ENV->stat_print, DB->stat and DB->stat_print methods. + */ +#define DB_FAST_STAT 0x0000001 /* Don't traverse the database. */ +#define DB_STAT_ALL 0x0000002 /* Print: Everything. */ +#define DB_STAT_CLEAR 0x0000004 /* Clear stat after returning values. */ +#define DB_STAT_LOCK_CONF 0x0000008 /* Print: Lock conflict matrix. */ +#define DB_STAT_LOCK_LOCKERS 0x0000010 /* Print: Lockers. */ +#define DB_STAT_LOCK_OBJECTS 0x0000020 /* Print: Lock objects. */ +#define DB_STAT_LOCK_PARAMS 0x0000040 /* Print: Lock parameters. */ +#define DB_STAT_MEMP_HASH 0x0000080 /* Print: Mpool hash buckets. */ +#define DB_STAT_NOERROR 0x0000100 /* Internal: continue on error. */ +#define DB_STAT_SUBSYSTEM 0x0000200 /* Print: Subsystems too. */ + +/* + * Flags private to DB->join. + */ +#define DB_JOIN_NOSORT 0x0000001 /* Don't try to optimize join. */ + +/* + * Flags private to DB->verify. + */ +#define DB_AGGRESSIVE 0x0000001 /* Salvage whatever could be data.*/ +#define DB_NOORDERCHK 0x0000002 /* Skip sort order/hashing check. */ +#define DB_ORDERCHKONLY 0x0000004 /* Only perform the order check. */ +#define DB_PR_PAGE 0x0000008 /* Show page contents (-da). */ +#define DB_PR_RECOVERYTEST 0x0000010 /* Recovery test (-dr). */ +#define DB_PRINTABLE 0x0000020 /* Use printable format for salvage. */ +#define DB_SALVAGE 0x0000040 /* Salvage what looks like data. */ +#define DB_UNREF 0x0000080 /* Report unreferenced pages. */ +/* + * !!! + * These must not go over 0x8000, or they will collide with the flags + * used by __bam_vrfy_subtree. + */ + +/* + * Flags private to DB->rep_set_transport's send callback. + */ +#define DB_REP_ANYWHERE 0x0000001 /* Message can be serviced anywhere. */ +#define DB_REP_NOBUFFER 0x0000002 /* Do not buffer this message. */ +#define DB_REP_PERMANENT 0x0000004 /* Important--app. may want to flush. */ +#define DB_REP_REREQUEST 0x0000008 /* This msg already been requested. */ + +/******************************************************* + * Mutexes. + *******************************************************/ +typedef u_int32_t db_mutex_t; + +/* + * Flag arguments for DbEnv.mutex_alloc, DbEnv.is_alive and for the + * DB_MUTEX structure. + */ +#define DB_MUTEX_ALLOCATED 0x01 /* Mutex currently allocated. */ +#define DB_MUTEX_LOCKED 0x02 /* Mutex currently locked. */ +#define DB_MUTEX_LOGICAL_LOCK 0x04 /* Mutex backs a database lock. */ +#define DB_MUTEX_PROCESS_ONLY 0x08 /* Mutex private to a process. */ +#define DB_MUTEX_SELF_BLOCK 0x10 /* Must be able to block self. */ + +struct __db_mutex_stat { + /* The following fields are maintained in the region's copy. */ + u_int32_t st_mutex_align; /* Mutex alignment */ + u_int32_t st_mutex_tas_spins; /* Mutex test-and-set spins */ + u_int32_t st_mutex_cnt; /* Mutex count */ + u_int32_t st_mutex_free; /* Available mutexes */ + u_int32_t st_mutex_inuse; /* Mutexes in use */ + u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ + + /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* This is the length of the buffer passed to DB_ENV->thread_id_string() */ +#define DB_THREADID_STRLEN 128 + +/******************************************************* + * Locking. + *******************************************************/ +#define DB_LOCKVERSION 1 + +#define DB_FILE_ID_LEN 20 /* Unique file ID length. */ + +/* + * Deadlock detector modes; used in the DB_ENV structure to configure the + * locking subsystem. + */ +#define DB_LOCK_NORUN 0 +#define DB_LOCK_DEFAULT 1 /* Default policy. */ +#define DB_LOCK_EXPIRE 2 /* Only expire locks, no detection. */ +#define DB_LOCK_MAXLOCKS 3 /* Select locker with max locks. */ +#define DB_LOCK_MAXWRITE 4 /* Select locker with max writelocks. */ +#define DB_LOCK_MINLOCKS 5 /* Select locker with min locks. */ +#define DB_LOCK_MINWRITE 6 /* Select locker with min writelocks. */ +#define DB_LOCK_OLDEST 7 /* Select oldest locker. */ +#define DB_LOCK_RANDOM 8 /* Select random locker. */ +#define DB_LOCK_YOUNGEST 9 /* Select youngest locker. */ + +/* Flag values for lock_vec(), lock_get(). */ +#define DB_LOCK_ABORT 0x001 /* Internal: Lock during abort. */ +#define DB_LOCK_NOWAIT 0x002 /* Don't wait on unavailable lock. */ +#define DB_LOCK_RECORD 0x004 /* Internal: record lock. */ +#define DB_LOCK_SET_TIMEOUT 0x008 /* Internal: set lock timeout. */ +#define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ +#define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ + +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + +/* + * Simple R/W lock modes and for multi-granularity intention locking. + * + * !!! + * These values are NOT random, as they are used as an index into the lock + * conflicts arrays, i.e., DB_LOCK_IWRITE must be == 3, and DB_LOCK_IREAD + * must be == 4. + */ +typedef enum { + DB_LOCK_NG=0, /* Not granted. */ + DB_LOCK_READ=1, /* Shared/read. */ + DB_LOCK_WRITE=2, /* Exclusive/write. */ + DB_LOCK_WAIT=3, /* Wait for event */ + DB_LOCK_IWRITE=4, /* Intent exclusive/write. */ + DB_LOCK_IREAD=5, /* Intent to share/read. */ + DB_LOCK_IWR=6, /* Intent to read and write. */ + DB_LOCK_READ_UNCOMMITTED=7, /* Degree 1 isolation. */ + DB_LOCK_WWRITE=8 /* Was Written. */ +} db_lockmode_t; + +/* + * Request types. + */ +typedef enum { + DB_LOCK_DUMP=0, /* Display held locks. */ + DB_LOCK_GET=1, /* Get the lock. */ + DB_LOCK_GET_TIMEOUT=2, /* Get lock with a timeout. */ + DB_LOCK_INHERIT=3, /* Pass locks to parent. */ + DB_LOCK_PUT=4, /* Release the lock. */ + DB_LOCK_PUT_ALL=5, /* Release locker's locks. */ + DB_LOCK_PUT_OBJ=6, /* Release locker's locks on obj. */ + DB_LOCK_PUT_READ=7, /* Release locker's read locks. */ + DB_LOCK_TIMEOUT=8, /* Force a txn to timeout. */ + DB_LOCK_TRADE=9, /* Trade locker ids on a lock. */ + DB_LOCK_UPGRADE_WRITE=10 /* Upgrade writes for dirty reads. */ +} db_lockop_t; + +/* + * Status of a lock. + */ +typedef enum { + DB_LSTAT_ABORTED=1, /* Lock belongs to an aborted txn. */ + DB_LSTAT_EXPIRED=2, /* Lock has expired. */ + DB_LSTAT_FREE=3, /* Lock is unallocated. */ + DB_LSTAT_HELD=4, /* Lock is currently held. */ + DB_LSTAT_PENDING=5, /* Lock was waiting and has been + * promoted; waiting for the owner + * to run and upgrade it to held. */ + DB_LSTAT_WAITING=6 /* Lock is on the wait queue. */ +}db_status_t; + +/* Lock statistics structure. */ +struct __db_lock_stat { + u_int32_t st_id; /* Last allocated locker ID. */ + u_int32_t st_cur_maxid; /* Current maximum unused ID. */ + u_int32_t st_maxlocks; /* Maximum number of locks in table. */ + u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ + u_int32_t st_maxobjects; /* Maximum num of objects in table. */ + int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_nlocks; /* Current number of locks. */ + u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ + u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ + u_int32_t st_nobjects; /* Current number of objects. */ + u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_ndeadlocks; /* Number of lock deadlocks. */ + db_timeout_t st_locktimeout; /* Lock timeout. */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + db_timeout_t st_txntimeout; /* Transaction timeout. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ +}; + +/* + * DB_LOCK_ILOCK -- + * Internal DB access method lock. + */ +struct __db_ilock { + db_pgno_t pgno; /* Page being locked. */ + u_int8_t fileid[DB_FILE_ID_LEN];/* File id. */ +#define DB_HANDLE_LOCK 1 +#define DB_RECORD_LOCK 2 +#define DB_PAGE_LOCK 3 + u_int32_t type; /* Type of lock. */ +}; + +/* + * DB_LOCK -- + * The structure is allocated by the caller and filled in during a + * lock_get request (or a lock_vec/DB_LOCK_GET). + */ +struct __db_lock_u { + roff_t off; /* Offset of the lock in the region */ + u_int32_t ndx; /* Index of the object referenced by + * this lock; used for locking. */ + u_int32_t gen; /* Generation number of this lock. */ + db_lockmode_t mode; /* mode of this lock. */ +}; + +/* Lock request structure. */ +struct __db_lockreq { + db_lockop_t op; /* Operation. */ + db_lockmode_t mode; /* Requested mode. */ + db_timeout_t timeout; /* Time to expire lock. */ + DBT *obj; /* Object being locked. */ + DB_LOCK lock; /* Lock returned. */ +}; + +/******************************************************* + * Logging. + *******************************************************/ +#define DB_LOGVERSION 13 /* Current log version. */ +#define DB_LOGOLDVER 8 /* Oldest log version supported. */ +#define DB_LOGMAGIC 0x040988 + +/* Flag values for DB_ENV->log_archive(). */ +#define DB_ARCH_ABS 0x001 /* Absolute pathnames. */ +#define DB_ARCH_DATA 0x002 /* Data files. */ +#define DB_ARCH_LOG 0x004 /* Log files. */ +#define DB_ARCH_REMOVE 0x008 /* Remove log files. */ + +/* Flag values for DB_ENV->log_put(). */ +#define DB_FLUSH 0x001 /* Flush data to disk (public). */ +#define DB_LOG_CHKPNT 0x002 /* Flush supports a checkpoint */ +#define DB_LOG_COMMIT 0x004 /* Flush supports a commit */ +#define DB_LOG_NOCOPY 0x008 /* Don't copy data */ +#define DB_LOG_NOT_DURABLE 0x010 /* Do not log; keep in memory */ +#define DB_LOG_WRNOSYNC 0x020 /* Write, don't sync log_put */ + +/* + * A DB_LSN has two parts, a fileid which identifies a specific file, and an + * offset within that file. The fileid is an unsigned 4-byte quantity that + * uniquely identifies a file within the log directory -- currently a simple + * counter inside the log. The offset is also an unsigned 4-byte value. The + * log manager guarantees the offset is never more than 4 bytes by switching + * to a new log file before the maximum length imposed by an unsigned 4-byte + * offset is reached. + */ +struct __db_lsn { + u_int32_t file; /* File ID. */ + u_int32_t offset; /* File offset. */ +}; + +/* + * Application-specified log record types start at DB_user_BEGIN, and must not + * equal or exceed DB_debug_FLAG. + * + * DB_debug_FLAG is the high-bit of the u_int32_t that specifies a log record + * type. If the flag is set, it's a log record that was logged for debugging + * purposes only, even if it reflects a database change -- the change was part + * of a non-durable transaction. + */ +#define DB_user_BEGIN 10000 +#define DB_debug_FLAG 0x80000000 + +/* + * DB_LOGC -- + * Log cursor. + */ +struct __db_log_cursor { + DB_ENV *dbenv; /* Enclosing dbenv. */ + + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ + + DBT dbt; /* Return DBT. */ + DB_LSN p_lsn; /* Persist LSN. */ + u_int32_t p_version; /* Persist version. */ + + u_int8_t *bp; /* Allocated read buffer. */ + u_int32_t bp_size; /* Read buffer length in bytes. */ + u_int32_t bp_rlen; /* Read buffer valid data length. */ + DB_LSN bp_lsn; /* Read buffer first byte LSN. */ + + u_int32_t bp_maxrec; /* Max record length in the log file. */ + + /* DB_LOGC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_LOGC *, u_int32_t)); + int (*get) __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); + int (*version) __P((DB_LOGC *, u_int32_t *, u_int32_t)); + /* DB_LOGC PUBLIC HANDLE LIST END */ + +#define DB_LOG_DISK 0x01 /* Log record came from disk. */ +#define DB_LOG_LOCKED 0x02 /* Log region already locked */ +#define DB_LOG_SILENT_ERR 0x04 /* Turn-off error messages. */ + u_int32_t flags; +}; + +/* Log statistics structure. */ +struct __db_log_stat { + u_int32_t st_magic; /* Log file magic number. */ + u_int32_t st_version; /* Log file version number. */ + int st_mode; /* Log file permissions mode. */ + u_int32_t st_lg_bsize; /* Log buffer size. */ + u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_record; /* Records entered into the log. */ + u_int32_t st_w_bytes; /* Bytes to log. */ + u_int32_t st_w_mbytes; /* Megabytes to log. */ + u_int32_t st_wcount; /* Total I/O writes to the log. */ + u_int32_t st_wcount_fill; /* Overflow writes to the log. */ + u_int32_t st_rcount; /* Total I/O reads from the log. */ + u_int32_t st_scount; /* Total syncs to the log. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_cur_file; /* Current log file number. */ + u_int32_t st_cur_offset; /* Current log file offset. */ + u_int32_t st_disk_file; /* Known on disk log file number. */ + u_int32_t st_disk_offset; /* Known on disk log file offset. */ + u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ + u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* + * We need to record the first log record of a transaction. For user + * defined logging this macro returns the place to put that information, + * if it is need in rlsnp, otherwise it leaves it unchanged. We also + * need to track the last record of the transaction, this returns the + * place to put that info. + */ +#define DB_SET_TXN_LSNP(txn, blsnp, llsnp) \ + ((txn)->set_txn_lsnp(txn, blsnp, llsnp)) + +/******************************************************* + * Shared buffer cache (mpool). + *******************************************************/ +/* Flag values for DB_MPOOLFILE->get. */ +#define DB_MPOOL_CREATE 0x001 /* Create a page. */ +#define DB_MPOOL_DIRTY 0x002 /* Get page for an update. */ +#define DB_MPOOL_EDIT 0x004 /* Modify without copying. */ +#define DB_MPOOL_FREE 0x008 /* Free page if present. */ +#define DB_MPOOL_LAST 0x010 /* Return the last page. */ +#define DB_MPOOL_NEW 0x020 /* Create a new page. */ + +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ + +/* Flags values for DB_MPOOLFILE->set_flags. */ +#define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ +#define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ + +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ +typedef enum { + DB_PRIORITY_UNCHANGED=0, + DB_PRIORITY_VERY_LOW=1, + DB_PRIORITY_LOW=2, + DB_PRIORITY_DEFAULT=3, + DB_PRIORITY_HIGH=4, + DB_PRIORITY_VERY_HIGH=5 +} DB_CACHE_PRIORITY; + +/* Per-process DB_MPOOLFILE information. */ +struct __db_mpoolfile { + DB_FH *fhp; /* Underlying file handle. */ + + /* + * !!! + * The ref, pinref and q fields are protected by the region lock. + */ + u_int32_t ref; /* Reference count. */ + + u_int32_t pinref; /* Pinned block reference count. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_mpoolfile) q; + */ + struct { + struct __db_mpoolfile *tqe_next; + struct __db_mpoolfile **tqe_prev; + } q; /* Linked list of DB_MPOOLFILE's. */ + + /* + * !!! + * The rest of the fields (with the exception of the MP_FLUSH flag) + * are not thread-protected, even when they may be modified at any + * time by the application. The reason is the DB_MPOOLFILE handle + * is single-threaded from the viewpoint of the application, and so + * the only fields needing to be thread-protected are those accessed + * by checkpoint or sync threads when using DB_MPOOLFILE structures + * to flush buffers from the cache. + */ + DB_ENV *dbenv; /* Overlying DB_ENV. */ + MPOOLFILE *mfp; /* Underlying MPOOLFILE. */ + + u_int32_t clear_len; /* Cleared length on created pages. */ + u_int8_t /* Unique file ID. */ + fileid[DB_FILE_ID_LEN]; + int ftype; /* File type. */ + int32_t lsn_offset; /* LSN offset in page. */ + u_int32_t gbytes, bytes; /* Maximum file size. */ + DBT *pgcookie; /* Byte-string passed to pgin/pgout. */ + int32_t priority; /* Cache priority. */ + + void *addr; /* Address of mmap'd region. */ + size_t len; /* Length of mmap'd region. */ + + u_int32_t config_flags; /* Flags to DB_MPOOLFILE->set_flags. */ + + /* DB_MPOOLFILE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_MPOOLFILE *, u_int32_t)); + int (*get) + __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); + int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_ftype) __P((DB_MPOOLFILE *, int *)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); + int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); + int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); + int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); + int (*sync) __P((DB_MPOOLFILE *)); + /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ + + /* + * MP_FILEID_SET, MP_OPEN_CALLED and MP_READONLY do not need to be + * thread protected because they are initialized before the file is + * linked onto the per-process lists, and never modified. + * + * MP_FLUSH is thread protected because it is potentially read/set by + * multiple threads of control. + */ +#define MP_FILEID_SET 0x001 /* Application supplied a file ID. */ +#define MP_FLUSH 0x002 /* Was opened to flush a buffer. */ +#define MP_MULTIVERSION 0x004 /* Opened for multiversion access. */ +#define MP_OPEN_CALLED 0x008 /* File opened. */ +#define MP_READONLY 0x010 /* File is readonly. */ + u_int32_t flags; +}; + +/* Mpool statistics structure. */ +struct __db_mpool_stat { + u_int32_t st_gbytes; /* Total cache size: GB. */ + u_int32_t st_bytes; /* Total cache size: B. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ + size_t st_mmapsize; /* Maximum file size for mmap. */ + int st_maxopenfd; /* Maximum number of open fd's. */ + int st_maxwrite; /* Maximum buffers to write. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ + u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ + u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ + u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ + u_int32_t st_page_clean; /* Clean pages. */ + u_int32_t st_page_dirty; /* Dirty pages. */ + u_int32_t st_hash_buckets; /* Number of hash buckets. */ + u_int32_t st_hash_searches; /* Total hash chain searches. */ + u_int32_t st_hash_longest; /* Longest hash chain searched. */ + u_int32_t st_hash_examined; /* Total hash entries searched. */ + u_int32_t st_hash_nowait; /* Hash lock granted with nowait. */ + u_int32_t st_hash_wait; /* Hash lock granted after wait. */ + u_int32_t st_hash_max_nowait; /* Max hash lock granted with nowait. */ + u_int32_t st_hash_max_wait; /* Max hash lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted with nowait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_mvcc_frozen; /* Buffers frozen. */ + u_int32_t st_mvcc_thawed; /* Buffers thawed. */ + u_int32_t st_mvcc_freed; /* Frozen buffers freed. */ + u_int32_t st_alloc; /* Number of page allocations. */ + u_int32_t st_alloc_buckets; /* Buckets checked during allocation. */ + u_int32_t st_alloc_max_buckets; /* Max checked during allocation. */ + u_int32_t st_alloc_pages; /* Pages checked during allocation. */ + u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ + u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* Mpool file statistics structure. */ +struct __db_mpool_fstat { + char *file_name; /* File name. */ + u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ +#endif +}; + +/******************************************************* + * Transactions and recovery. + *******************************************************/ +#define DB_TXNVERSION 1 + +typedef enum { + DB_TXN_ABORT=0, /* Public. */ + DB_TXN_APPLY=1, /* Public. */ + DB_TXN_BACKWARD_ALLOC=2, /* Internal. */ + DB_TXN_BACKWARD_ROLL=3, /* Public. */ + DB_TXN_FORWARD_ROLL=4, /* Public. */ + DB_TXN_OPENFILES=5, /* Internal. */ + DB_TXN_POPENFILES=6, /* Internal. */ + DB_TXN_PRINT=7 /* Public. */ +} db_recops; + +/* + * BACKWARD_ALLOC is used during the forward pass to pick up any aborted + * allocations for files that were created during the forward pass. + * The main difference between _ALLOC and _ROLL is that the entry for + * the file not exist during the rollforward pass. + */ +#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \ + (op) == DB_TXN_BACKWARD_ROLL || (op) == DB_TXN_BACKWARD_ALLOC) +#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL || (op) == DB_TXN_APPLY) + +struct __db_txn { + DB_TXNMGR *mgrp; /* Pointer to transaction manager. */ + DB_TXN *parent; /* Pointer to transaction's parent. */ + + u_int32_t txnid; /* Unique transaction id. */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ + + db_threadid_t tid; /* Thread id for use in MT XA. */ + void *td; /* Detail structure within region. */ + db_timeout_t lock_timeout; /* Timeout for locks for this txn. */ + db_timeout_t expire; /* Time transaction expires. */ + void *txn_list; /* Undo information for parent. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) links; + * TAILQ_ENTRY(__db_txn) xalinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } links; /* Links transactions off manager. */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } xalinks; /* Links active XA transactions. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__kids, __db_txn) kids; + */ + struct __kids { + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } kids; + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__events, __txn_event) events; + */ + struct { + struct __txn_event *tqh_first; + struct __txn_event **tqh_last; + } events; /* Links deferred events. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * STAILQ_HEAD(__logrec, __txn_logrec) logs; + */ + struct { + struct __txn_logrec *stqh_first; + struct __txn_logrec **stqh_last; + } logs; /* Links in memory log records. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) klinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } klinks; + + void *api_internal; /* C++ API private. */ + void *xml_internal; /* XML API private. */ + + u_int32_t cursors; /* Number of cursors open for txn */ + + /* DB_TXN PUBLIC HANDLE LIST BEGIN */ + int (*abort) __P((DB_TXN *)); + int (*commit) __P((DB_TXN *, u_int32_t)); + int (*discard) __P((DB_TXN *, u_int32_t)); + int (*get_name) __P((DB_TXN *, const char **)); + u_int32_t (*id) __P((DB_TXN *)); + int (*prepare) __P((DB_TXN *, u_int8_t *)); + int (*set_name) __P((DB_TXN *, const char *)); + int (*set_timeout) __P((DB_TXN *, db_timeout_t, u_int32_t)); + /* DB_TXN PUBLIC HANDLE LIST END */ + + /* DB_TXN PRIVATE HANDLE LIST BEGIN */ + void (*set_txn_lsnp) __P((DB_TXN *txn, DB_LSN **, DB_LSN **)); + /* DB_TXN PRIVATE HANDLE LIST END */ + +#define TXN_CHILDCOMMIT 0x0001 /* Txn has committed. */ +#define TXN_CDSGROUP 0x0002 /* CDS group handle. */ +#define TXN_COMPENSATE 0x0004 /* Compensating transaction. */ +#define TXN_DEADLOCK 0x0008 /* Txn has deadlocked. */ +#define TXN_LOCKTIMEOUT 0x0010 /* Txn has a lock timeout. */ +#define TXN_MALLOC 0x0020 /* Structure allocated by TXN system. */ +#define TXN_NOSYNC 0x0040 /* Do not sync on prepare and commit. */ +#define TXN_NOWAIT 0x0080 /* Do not wait on locks. */ +#define TXN_PRIVATE 0x0100 /* Txn owned by cursor.. */ +#define TXN_READ_COMMITTED 0x0200 /* Txn has degree 2 isolation. */ +#define TXN_READ_UNCOMMITTED 0x0400 /* Txn has degree 1 isolation. */ +#define TXN_RESTORED 0x0800 /* Txn has been restored. */ +#define TXN_SNAPSHOT 0x1000 /* Snapshot Isolation. */ +#define TXN_SYNC 0x2000 /* Write and sync on prepare/commit. */ +#define TXN_WRITE_NOSYNC 0x4000 /* Write only on prepare/commit. */ + u_int32_t flags; +}; + +#define TXN_SYNC_FLAGS (TXN_SYNC | TXN_NOSYNC | TXN_WRITE_NOSYNC) + +/* + * Structure used for two phase commit interface. Berkeley DB support for two + * phase commit is compatible with the X/Open XA interface. + * + * The XA #define XIDDATASIZE defines the size of a global transaction ID. We + * have our own version here (for name space reasons) which must have the same + * value. + */ +#define DB_XIDDATASIZE 128 +struct __db_preplist { + DB_TXN *txn; + u_int8_t gid[DB_XIDDATASIZE]; +}; + +/* Transaction statistics structure. */ +struct __db_txn_active { + u_int32_t txnid; /* Transaction ID */ + u_int32_t parentid; /* Transaction ID of parent */ + pid_t pid; /* Process owning txn ID */ + db_threadid_t tid; /* Thread owning txn ID */ + + DB_LSN lsn; /* LSN when transaction began */ + + DB_LSN read_lsn; /* Read LSN for MVCC */ + u_int32_t mvcc_ref; /* MVCC reference count */ + +#define TXN_ABORTED 1 +#define TXN_COMMITTED 2 +#define TXN_PREPARED 3 +#define TXN_RUNNING 4 + u_int32_t status; /* Status of the transaction */ + +#define TXN_XA_ABORTED 1 +#define TXN_XA_DEADLOCKED 2 +#define TXN_XA_ENDED 3 +#define TXN_XA_PREPARED 4 +#define TXN_XA_STARTED 5 +#define TXN_XA_SUSPENDED 6 + u_int32_t xa_status; /* XA status */ + + u_int8_t xid[DB_XIDDATASIZE]; /* Global transaction ID */ + char name[51]; /* 50 bytes of name, nul termination */ +}; + +struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS + DB_LSN st_last_ckp; /* lsn of the last checkpoint */ + time_t st_time_ckp; /* time of last checkpoint */ + u_int32_t st_last_txnid; /* last transaction id given out */ + u_int32_t st_maxtxns; /* maximum txns possible */ + u_int32_t st_naborts; /* number of aborted transactions */ + u_int32_t st_nbegins; /* number of begun transactions */ + u_int32_t st_ncommits; /* number of committed transactions */ + u_int32_t st_nactive; /* number of active transactions */ + u_int32_t st_nsnapshot; /* number of snapshot transactions */ + u_int32_t st_maxnactive; /* maximum active transactions */ + u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ + DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/******************************************************* + * Replication. + *******************************************************/ +/* Special, out-of-band environment IDs. */ +#define DB_EID_BROADCAST -1 +#define DB_EID_INVALID -2 + +/* rep_config flag values. */ +#define DB_REP_CONF_BULK 0x0001 /* Bulk transfer. */ +#define DB_REP_CONF_DELAYCLIENT 0x0002 /* Delay client synchronization. */ +#define DB_REP_CONF_NOAUTOINIT 0x0004 /* No automatic client init. */ +#define DB_REP_CONF_NOWAIT 0x0008 /* Don't wait, return error. */ + +/* + * Operation code values for rep_start and/or repmgr_start. Just one of the + * following values should be passed in the flags parameter. (If we ever need + * additional, independent bit flags for these methods, we can start allocating + * them from the high-order byte of the flags word, as we currently do elsewhere + * for DB_AFTER through DB_WRITELOCK and DB_AUTO_COMMIT, etc.) + */ +#define DB_REP_CLIENT 1 +#define DB_REP_ELECTION 2 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 + +/* Acknowledgement policies. */ +#define DB_REPMGR_ACKS_ALL 1 +#define DB_REPMGR_ACKS_ALL_PEERS 2 +#define DB_REPMGR_ACKS_NONE 3 +#define DB_REPMGR_ACKS_ONE 4 +#define DB_REPMGR_ACKS_ONE_PEER 5 +#define DB_REPMGR_ACKS_QUORUM 6 + +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ + +/* Event notification types. */ +#define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ +#define DB_EVENT_PANIC 1 +#define DB_EVENT_REP_CLIENT 2 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 + +/* Flag value for repmgr_add_remote_site. */ +#define DB_REPMGR_PEER 0x01 + +/* Replication Manager site status. */ +struct __db_repmgr_site { + int eid; + char *host; + u_int port; + +#define DB_REPMGR_CONNECTED 0x01 +#define DB_REPMGR_DISCONNECTED 0x02 + u_int32_t status; +}; + +/* Replication statistics. */ +struct __db_rep_stat { + /* !!! + * Many replication statistics fields cannot be protected by a mutex + * without an unacceptable performance penalty, since most message + * processing is done without the need to hold a region-wide lock. + * Fields whose comments end with a '+' may be updated without holding + * the replication or log mutexes (as appropriate), and thus may be + * off somewhat (or, on unreasonable architectures under unlucky + * circumstances, garbaged). + */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_status; /* Current replication status. */ + DB_LSN st_next_lsn; /* Next LSN to use or expect. */ + DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ + db_pgno_t st_next_pg; /* Next pg we expect. */ + db_pgno_t st_waiting_pg; /* pg we're awaiting, if any. */ + + u_int32_t st_dupmasters; /* # of times a duplicate master + condition was detected.+ */ + int st_env_id; /* Current environment ID. */ + int st_env_priority; /* Current environment priority. */ + u_int32_t st_bulk_fills; /* Bulk buffer fills. */ + u_int32_t st_bulk_overflows; /* Bulk buffer overflows. */ + u_int32_t st_bulk_records; /* Bulk records stored. */ + u_int32_t st_bulk_transfers; /* Transfers of bulk buffers. */ + u_int32_t st_client_rerequests; /* Number of forced rerequests. */ + u_int32_t st_client_svc_req; /* Number of client service requests + received by this client. */ + u_int32_t st_client_svc_miss; /* Number of client service requests + missing on this client. */ + u_int32_t st_gen; /* Current generation number. */ + u_int32_t st_egen; /* Current election gen number. */ + u_int32_t st_log_duplicated; /* Log records received multiply.+ */ + u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ + u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ + u_int32_t st_log_records; /* Log records received and put.+ */ + u_int32_t st_log_requested; /* Log recs. missed and requested.+ */ + int st_master; /* Env. ID of the current master. */ + u_int32_t st_master_changes; /* # of times we've switched masters. */ + u_int32_t st_msgs_badgen; /* Messages with a bad generation #.+ */ + u_int32_t st_msgs_processed; /* Messages received and processed.+ */ + u_int32_t st_msgs_recover; /* Messages ignored because this site + was a client in recovery.+ */ + u_int32_t st_msgs_send_failures;/* # of failed message sends.+ */ + u_int32_t st_msgs_sent; /* # of successful message sends.+ */ + u_int32_t st_newsites; /* # of NEWSITE msgs. received.+ */ + int st_nsites; /* Current number of sites we will + assume during elections. */ + u_int32_t st_nthrottles; /* # of times we were throttled. */ + u_int32_t st_outdated; /* # of times we detected and returned + an OUTDATED condition.+ */ + u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ + u_int32_t st_pg_records; /* Pages received and stored.+ */ + u_int32_t st_pg_requested; /* Pages missed and requested.+ */ + u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ + + /* Elections generally. */ + u_int32_t st_elections; /* # of elections held.+ */ + u_int32_t st_elections_won; /* # of elections won by this site.+ */ + + /* Statistics about an in-progress election. */ + int st_election_cur_winner; /* Current front-runner. */ + u_int32_t st_election_gen; /* Election generation number. */ + DB_LSN st_election_lsn; /* Max. LSN of current winner. */ + int st_election_nsites; /* # of "registered voters". */ + int st_election_nvotes; /* # of "registered voters" needed. */ + int st_election_priority; /* Current election priority. */ + int st_election_status; /* Current election status. */ + u_int32_t st_election_tiebreaker;/* Election tiebreaker value. */ + int st_election_votes; /* Votes received in this round. */ + u_int32_t st_election_sec; /* Last election time seconds. */ + u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ +}; + +/******************************************************* + * Sequences. + *******************************************************/ +/* + * The storage record for a sequence. + */ +struct __db_seq_record { + u_int32_t seq_version; /* Version size/number. */ +#define DB_SEQ_DEC 0x00000001 /* Decrement sequence. */ +#define DB_SEQ_INC 0x00000002 /* Increment sequence. */ +#define DB_SEQ_RANGE_SET 0x00000004 /* Range set (internal). */ +#define DB_SEQ_WRAP 0x00000008 /* Wrap sequence at min/max. */ +#define DB_SEQ_WRAPPED 0x00000010 /* Just wrapped (internal). */ + u_int32_t flags; /* Flags. */ + db_seq_t seq_value; /* Current value. */ + db_seq_t seq_max; /* Max permitted. */ + db_seq_t seq_min; /* Min permitted. */ +}; + +/* + * Handle for a sequence object. + */ +struct __db_sequence { + DB *seq_dbp; /* DB handle for this sequence. */ + db_mutex_t mtx_seq; /* Mutex if sequence is threaded. */ + DB_SEQ_RECORD *seq_rp; /* Pointer to current data. */ + DB_SEQ_RECORD seq_record; /* Data from DB_SEQUENCE. */ + int32_t seq_cache_size; /* Number of values cached. */ + db_seq_t seq_last_value; /* Last value cached. */ + DBT seq_key; /* DBT pointing to sequence key. */ + DBT seq_data; /* DBT pointing to seq_record. */ + + /* API-private structure: used by C++ and Java. */ + void *api_internal; + + /* DB_SEQUENCE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_SEQUENCE *, u_int32_t)); + int (*get) __P((DB_SEQUENCE *, + DB_TXN *, int32_t, db_seq_t *, u_int32_t)); + int (*get_cachesize) __P((DB_SEQUENCE *, int32_t *)); + int (*get_db) __P((DB_SEQUENCE *, DB **)); + int (*get_flags) __P((DB_SEQUENCE *, u_int32_t *)); + int (*get_key) __P((DB_SEQUENCE *, DBT *)); + int (*get_range) __P((DB_SEQUENCE *, + db_seq_t *, db_seq_t *)); + int (*initial_value) __P((DB_SEQUENCE *, db_seq_t)); + int (*open) __P((DB_SEQUENCE *, + DB_TXN *, DBT *, u_int32_t)); + int (*remove) __P((DB_SEQUENCE *, DB_TXN *, u_int32_t)); + int (*set_cachesize) __P((DB_SEQUENCE *, int32_t)); + int (*set_flags) __P((DB_SEQUENCE *, u_int32_t)); + int (*set_range) __P((DB_SEQUENCE *, db_seq_t, db_seq_t)); + int (*stat) __P((DB_SEQUENCE *, + DB_SEQUENCE_STAT **, u_int32_t)); + int (*stat_print) __P((DB_SEQUENCE *, u_int32_t)); + /* DB_SEQUENCE PUBLIC HANDLE LIST END */ +}; + +struct __db_seq_stat { + u_int32_t st_wait; /* Sequence lock granted w/o wait. */ + u_int32_t st_nowait; /* Sequence lock granted after wait. */ + db_seq_t st_current; /* Current value in db. */ + db_seq_t st_value; /* Current cached value. */ + db_seq_t st_last_value; /* Last cached value. */ + db_seq_t st_min; /* Minimum value. */ + db_seq_t st_max; /* Maximum value. */ + int32_t st_cache_size; /* Cache size. */ + u_int32_t st_flags; /* Flag value. */ +}; + +/******************************************************* + * Access methods. + *******************************************************/ +typedef enum { + DB_BTREE=1, + DB_HASH=2, + DB_RECNO=3, + DB_QUEUE=4, + DB_UNKNOWN=5 /* Figure it out on open. */ +} DBTYPE; + +#define DB_RENAMEMAGIC 0x030800 /* File has been renamed. */ + +#define DB_BTREEVERSION 9 /* Current btree version. */ +#define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ +#define DB_BTREEMAGIC 0x053162 + +#define DB_HASHVERSION 9 /* Current hash version. */ +#define DB_HASHOLDVER 7 /* Oldest hash version supported. */ +#define DB_HASHMAGIC 0x061561 + +#define DB_QAMVERSION 4 /* Current queue version. */ +#define DB_QAMOLDVER 3 /* Oldest queue version supported. */ +#define DB_QAMMAGIC 0x042253 + +#define DB_SEQUENCE_VERSION 2 /* Current sequence version. */ +#define DB_SEQUENCE_OLDVER 1 /* Oldest sequence version supported. */ + +/* + * DB access method and cursor operation values. Each value is an operation + * code to which additional bit flags are added. + */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ + +/* This has to change when the max opcode hits 255. */ +#define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ + +/* + * Masks for flags that can be OR'd into DB access method and cursor + * operation values. Three top bits have already been taken: + * + * DB_AUTO_COMMIT 0x02000000 + * DB_READ_COMMITTED 0x04000000 + * DB_READ_UNCOMMITTED 0x08000000 + */ +#define DB_MULTIPLE 0x10000000 /* Return multiple data values. */ +#define DB_MULTIPLE_KEY 0x20000000 /* Return multiple data/key pairs. */ +#define DB_RMW 0x40000000 /* Acquire write lock immediately. */ + +/* + * DB (user visible) error return codes. + * + * !!! + * We don't want our error returns to conflict with other packages where + * possible, so pick a base error value that's hopefully not common. We + * document that we own the error name space from -30,800 to -30,999. + */ +/* DB (public) error return codes. */ +#define DB_BUFFER_SMALL (-30999)/* User memory too small for return. */ +#define DB_DONOTINDEX (-30998)/* "Null" return from 2ndary callbk. */ +#define DB_KEYEMPTY (-30997)/* Key/data deleted or never created. */ +#define DB_KEYEXIST (-30996)/* The key/data pair already exists. */ +#define DB_LOCK_DEADLOCK (-30995)/* Deadlock. */ +#define DB_LOCK_NOTGRANTED (-30994)/* Lock unavailable. */ +#define DB_LOG_BUFFER_FULL (-30993)/* In-memory log buffer full. */ +#define DB_NOSERVER (-30992)/* Server panic return. */ +#define DB_NOSERVER_HOME (-30991)/* Bad home sent to server. */ +#define DB_NOSERVER_ID (-30990)/* Bad ID sent to server. */ +#define DB_NOTFOUND (-30989)/* Key/data pair not found (EOF). */ +#define DB_OLD_VERSION (-30988)/* Out-of-date version. */ +#define DB_PAGE_NOTFOUND (-30987)/* Requested page not found. */ +#define DB_REP_DUPMASTER (-30986)/* There are two masters. */ +#define DB_REP_HANDLE_DEAD (-30985)/* Rolled back a commit. */ +#define DB_REP_HOLDELECTION (-30984)/* Time to hold an election. */ +#define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ +#define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ +#define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ +#define DB_REP_NEWSITE (-30978)/* New site entered system. */ +#define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ +#define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ +#define DB_RUNRECOVERY (-30975)/* Panic return. */ +#define DB_SECONDARY_BAD (-30974)/* Secondary index corrupt. */ +#define DB_VERIFY_BAD (-30973)/* Verify failed; bad format. */ +#define DB_VERSION_MISMATCH (-30972)/* Environment version mismatch. */ + +/* DB (private) error return codes. */ +#define DB_ALREADY_ABORTED (-30899) +#define DB_DELETED (-30898)/* Recovery file marked deleted. */ +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent + didn't know it was a parent. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ + +/* Database handle. */ +struct __db { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ + + /* Callbacks. */ + int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); + void (*db_feedback) __P((DB *, int, int)); + int (*dup_compare) __P((DB *, const DBT *, const DBT *)); + + void *app_private; /* Application-private handle. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + DB_ENV *dbenv; /* Backing environment. */ + + DBTYPE type; /* DB access method type. */ + + DB_MPOOLFILE *mpf; /* Backing buffer pool. */ + + db_mutex_t mutex; /* Synchronization for free threading */ + + char *fname, *dname; /* File/database passed to DB->open. */ + u_int32_t open_flags; /* Flags passed to DB->open. */ + + u_int8_t fileid[DB_FILE_ID_LEN];/* File's unique ID for locking. */ + + u_int32_t adj_fileid; /* File's unique ID for curs. adj. */ + +#define DB_LOGFILEID_INVALID -1 + FNAME *log_filename; /* File's naming info for logging. */ + + db_pgno_t meta_pgno; /* Meta page number */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ + DB_LOCK handle_lock; /* Lock held on this handle. */ + + u_int cl_id; /* RPC: remote client id. */ + + time_t timestamp; /* Handle timestamp for replication. */ + u_int32_t fid_gen; /* Rep generation number for fids. */ + + /* + * Returned data memory for DB->get() and friends. + */ + DBT my_rskey; /* Secondary key. */ + DBT my_rkey; /* [Primary] key. */ + DBT my_rdata; /* Data. */ + + /* + * !!! + * Some applications use DB but implement their own locking outside of + * DB. If they're using fcntl(2) locking on the underlying database + * file, and we open and close a file descriptor for that file, we will + * discard their locks. The DB_FCNTL_LOCKING flag to DB->open is an + * undocumented interface to support this usage which leaves any file + * descriptors we open until DB->close. This will only work with the + * DB->open interface and simple caches, e.g., creating a transaction + * thread may open/close file descriptors this flag doesn't protect. + * Locking with fcntl(2) on a file that you don't own is a very, very + * unsafe thing to do. 'Nuff said. + */ + DB_FH *saved_open_fhp; /* Saved file handle. */ + + /* + * Linked list of DBP's, linked from the DB_ENV, used to keep track + * of all open db handles for cursor adjustment. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db) dblistlinks; + */ + struct { + struct __db *tqe_next; + struct __db **tqe_prev; + } dblistlinks; + + /* + * Cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__cq_fq, __dbc) free_queue; + * TAILQ_HEAD(__cq_aq, __dbc) active_queue; + * TAILQ_HEAD(__cq_jq, __dbc) join_queue; + */ + struct __cq_fq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } free_queue; + struct __cq_aq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } active_queue; + struct __cq_jq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } join_queue; + + /* + * Secondary index support. + * + * Linked list of secondary indices -- set in the primary. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_HEAD(s_secondaries, __db); + */ + struct { + struct __db *lh_first; + } s_secondaries; + + /* + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). + * + * !!! + * Note that these are synchronized by the primary's mutex, but + * filled in in the secondaries. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_ENTRY(__db) s_links; + */ + struct { + struct __db *le_next; + struct __db **le_prev; + } s_links; + u_int32_t s_refcnt; + + /* Secondary callback and free functions -- set in the secondary. */ + int (*s_callback) __P((DB *, const DBT *, const DBT *, DBT *)); + + /* Reference to primary -- set in the secondary. */ + DB *s_primary; + +#define DB_ASSOC_IMMUTABLE_KEY 0x00000001 /* Secondary key is immutable. */ + + /* Flags passed to associate -- set in the secondary. */ + u_int32_t s_assoc_flags; + + /* API-private structure: used by DB 1.85, C++, Java, Perl and Tcl */ + void *api_internal; + + /* Subsystem-private structure. */ + void *bt_internal; /* Btree/Recno access method. */ + void *h_internal; /* Hash access method. */ + void *q_internal; /* Queue access method. */ + void *xa_internal; /* XA. */ + + /* DB PUBLIC HANDLE LIST BEGIN */ + int (*associate) __P((DB *, DB_TXN *, DB *, + int (*)(DB *, const DBT *, const DBT *, DBT *), u_int32_t)); + int (*close) __P((DB *, u_int32_t)); + int (*compact) __P((DB *, + DB_TXN *, DBT *, DBT *, DB_COMPACT *, u_int32_t, DBT *)); + int (*cursor) __P((DB *, DB_TXN *, DBC **, u_int32_t)); + int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + void (*err) __P((DB *, int, const char *, ...)); + void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + int (*fd) __P((DB *, int *)); + int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*get_bt_minkey) __P((DB *, u_int32_t *)); + int (*get_byteswapped) __P((DB *, int *)); + int (*get_cachesize) __P((DB *, u_int32_t *, u_int32_t *, int *)); + int (*get_dbname) __P((DB *, const char **, const char **)); + int (*get_encrypt_flags) __P((DB *, u_int32_t *)); + DB_ENV *(*get_env) __P((DB *)); + void (*get_errfile) __P((DB *, FILE **)); + void (*get_errpfx) __P((DB *, const char **)); + int (*get_flags) __P((DB *, u_int32_t *)); + int (*get_h_ffactor) __P((DB *, u_int32_t *)); + int (*get_h_nelem) __P((DB *, u_int32_t *)); + int (*get_lorder) __P((DB *, int *)); + DB_MPOOLFILE *(*get_mpf) __P((DB *)); + void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); + int (*get_open_flags) __P((DB *, u_int32_t *)); + int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); + int (*get_q_extentsize) __P((DB *, u_int32_t *)); + int (*get_re_delim) __P((DB *, int *)); + int (*get_re_len) __P((DB *, u_int32_t *)); + int (*get_re_pad) __P((DB *, int *)); + int (*get_re_source) __P((DB *, const char **)); + int (*get_transactional) __P((DB *)); + int (*get_type) __P((DB *, DBTYPE *)); + int (*join) __P((DB *, DBC **, DBC **, u_int32_t)); + int (*key_range) + __P((DB *, DB_TXN *, DBT *, DB_KEY_RANGE *, u_int32_t)); + int (*open) __P((DB *, + DB_TXN *, const char *, const char *, DBTYPE, u_int32_t, int)); + int (*pget) __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*remove) __P((DB *, const char *, const char *, u_int32_t)); + int (*rename) __P((DB *, + const char *, const char *, const char *, u_int32_t)); + int (*set_alloc) __P((DB *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_append_recno) __P((DB *, int (*)(DB *, DBT *, db_recno_t))); + int (*set_bt_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_bt_minkey) __P((DB *, u_int32_t)); + int (*set_bt_prefix) + __P((DB *, size_t (*)(DB *, const DBT *, const DBT *))); + int (*set_cachesize) __P((DB *, u_int32_t, u_int32_t, int)); + int (*set_dup_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_encrypt) __P((DB *, const char *, u_int32_t)); + void (*set_errcall) __P((DB *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB *, FILE *)); + void (*set_errpfx) __P((DB *, const char *)); + int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); + int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_h_ffactor) __P((DB *, u_int32_t)); + int (*set_h_hash) + __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); + int (*set_h_nelem) __P((DB *, u_int32_t)); + int (*set_lorder) __P((DB *, int)); + void (*set_msgcall) __P((DB *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB *, FILE *)); + int (*set_pagesize) __P((DB *, u_int32_t)); + int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); + int (*set_q_extentsize) __P((DB *, u_int32_t)); + int (*set_re_delim) __P((DB *, int)); + int (*set_re_len) __P((DB *, u_int32_t)); + int (*set_re_pad) __P((DB *, int)); + int (*set_re_source) __P((DB *, const char *)); + int (*stat) __P((DB *, DB_TXN *, void *, u_int32_t)); + int (*stat_print) __P((DB *, u_int32_t)); + int (*sync) __P((DB *, u_int32_t)); + int (*truncate) __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); + int (*upgrade) __P((DB *, const char *, u_int32_t)); + int (*verify) + __P((DB *, const char *, const char *, FILE *, u_int32_t)); + /* DB PUBLIC HANDLE LIST END */ + + /* DB PRIVATE HANDLE LIST BEGIN */ + int (*dump) __P((DB *, const char *, + int (*)(void *, const void *), void *, int, int)); + int (*db_am_remove) __P((DB *, DB_TXN *, const char *, const char *)); + int (*db_am_rename) __P((DB *, DB_TXN *, + const char *, const char *, const char *)); + /* DB PRIVATE HANDLE LIST END */ + + /* + * Never called; these are a place to save function pointers + * so that we can undo an associate. + */ + int (*stored_get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*stored_close) __P((DB *, u_int32_t)); + +#define DB_OK_BTREE 0x01 +#define DB_OK_HASH 0x02 +#define DB_OK_QUEUE 0x04 +#define DB_OK_RECNO 0x08 + u_int32_t am_ok; /* Legal AM choices. */ + + /* + * This field really ought to be an AM_FLAG, but we have + * have run out of bits. If/when we decide to split up + * the flags, we can incorporate it. + */ + int preserve_fid; /* Do not free fileid on close. */ + +#define DB_AM_CHKSUM 0x00000001 /* Checksumming */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ + u_int32_t orig_flags; /* Flags at open, for refresh */ + u_int32_t flags; +}; + +/* + * Macros for bulk get. These are only intended for the C API. + * For C++, use DbMultiple*Iterator. + */ +#define DB_MULTIPLE_INIT(pointer, dbt) \ + (pointer = (u_int8_t *)(dbt)->data + \ + (dbt)->ulen - sizeof(u_int32_t)) +#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + if (retdlen == 0 && \ + retdata == (u_int8_t *)(dbt)->data) \ + retdata = NULL; \ + } while (0) +#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey, retklen, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + retkey = NULL; \ + pointer = NULL; \ + break; \ + } \ + retkey = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retklen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)0) { \ + recno = 0; \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + recno = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +/******************************************************* + * Access method cursors. + *******************************************************/ +struct __dbc { + DB *dbp; /* Related DB access method. */ + DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ + + /* + * Active/free cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__dbc) links; + */ + struct { + DBC *tqe_next; + DBC **tqe_prev; + } links; + + /* + * The DBT *'s below are used by the cursor routines to return + * data to the user when DBT flags indicate that DB should manage + * the returned memory. They point at a DBT containing the buffer + * and length that will be used, and "belonging" to the handle that + * should "own" this memory. This may be a "my_*" field of this + * cursor--the default--or it may be the corresponding field of + * another cursor, a DB handle, a join cursor, etc. In general, it + * will be whatever handle the user originally used for the current + * DB interface call. + */ + DBT *rskey; /* Returned secondary key. */ + DBT *rkey; /* Returned [primary] key. */ + DBT *rdata; /* Returned data. */ + + DBT my_rskey; /* Space for returned secondary key. */ + DBT my_rkey; /* Space for returned [primary] key. */ + DBT my_rdata; /* Space for returned data. */ + + void *lref; /* Reference to default locker. */ + DB_LOCKER *locker; /* Locker for this operation. */ + DBT lock_dbt; /* DBT referencing lock. */ + DB_LOCK_ILOCK lock; /* Object to be locked. */ + DB_LOCK mylock; /* CDB lock held on this cursor. */ + + u_int cl_id; /* Remote client id. */ + + DBTYPE dbtype; /* Cursor type. */ + + DBC_INTERNAL *internal; /* Access method private. */ + + /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ + int (*c_close) __P((DBC *)); + int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*c_del) __P((DBC *, u_int32_t)); + int (*c_dup) __P((DBC *, DBC **, u_int32_t)); + int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); + + /* DBC PRIVATE HANDLE LIST BEGIN */ + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); + /* DBC PRIVATE HANDLE LIST END */ + +/* + * DBC_DONTLOCK and DBC_RECOVER are used during recovery and transaction + * abort. If a transaction is being aborted or recovered then DBC_RECOVER + * will be set and locking and logging will be disabled on this cursor. If + * we are performing a compensating transaction (e.g. free page processing) + * then DB_DONTLOCK will be set to inhibit locking, but logging will still + * be required. DB_DONTLOCK is also used if the whole database is locked. + */ +#define DBC_ACTIVE 0x0001 /* Cursor in use. */ +#define DBC_DONTLOCK 0x0002 /* Don't lock on this cursor. */ +#define DBC_MULTIPLE 0x0004 /* Return Multiple data. */ +#define DBC_MULTIPLE_KEY 0x0008 /* Return Multiple keys and data. */ +#define DBC_OPD 0x0010 /* Cursor references off-page dups. */ +#define DBC_OWN_LID 0x0020 /* Free lock id on destroy. */ +#define DBC_READ_COMMITTED 0x0040 /* Cursor has degree 2 isolation. */ +#define DBC_READ_UNCOMMITTED 0x0080 /* Cursor has degree 1 isolation. */ +#define DBC_RECOVER 0x0100 /* Recovery cursor; don't log/lock. */ +#define DBC_RMW 0x0200 /* Acquire write flag in read op. */ +#define DBC_TRANSIENT 0x0400 /* Cursor is transient. */ +#define DBC_WRITECURSOR 0x0800 /* Cursor may be used to write (CDB). */ +#define DBC_WRITER 0x1000 /* Cursor immediately writing (CDB). */ + u_int32_t flags; +}; + +/* Key range statistics structure */ +struct __key_range { + double less; + double equal; + double greater; +}; + +/* Btree/Recno statistics structure. */ +struct __db_bt_stat { + u_int32_t bt_magic; /* Magic number. */ + u_int32_t bt_version; /* Version number. */ + u_int32_t bt_metaflags; /* Metadata flags. */ + u_int32_t bt_nkeys; /* Number of unique keys. */ + u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ + u_int32_t bt_pagesize; /* Page size. */ + u_int32_t bt_minkey; /* Minkey value. */ + u_int32_t bt_re_len; /* Fixed-length record length. */ + u_int32_t bt_re_pad; /* Fixed-length record pad. */ + u_int32_t bt_levels; /* Tree levels. */ + u_int32_t bt_int_pg; /* Internal pages. */ + u_int32_t bt_leaf_pg; /* Leaf pages. */ + u_int32_t bt_dup_pg; /* Duplicate pages. */ + u_int32_t bt_over_pg; /* Overflow pages. */ + u_int32_t bt_empty_pg; /* Empty pages. */ + u_int32_t bt_free; /* Pages on the free list. */ + u_int32_t bt_int_pgfree; /* Bytes free in internal pages. */ + u_int32_t bt_leaf_pgfree; /* Bytes free in leaf pages. */ + u_int32_t bt_dup_pgfree; /* Bytes free in duplicate pages. */ + u_int32_t bt_over_pgfree; /* Bytes free in overflow pages. */ +}; + +struct __db_compact { + /* Input Parameters. */ + u_int32_t compact_fillpercent; /* Desired fillfactor: 1-100 */ + db_timeout_t compact_timeout; /* Lock timeout. */ + u_int32_t compact_pages; /* Max pages to process. */ + /* Output Stats. */ + u_int32_t compact_pages_free; /* Number of pages freed. */ + u_int32_t compact_pages_examine; /* Number of pages examine. */ + u_int32_t compact_levels; /* Number of levels removed. */ + u_int32_t compact_deadlock; /* Number of deadlocks. */ + db_pgno_t compact_pages_truncated; /* Pages truncated to OS. */ + /* Internal. */ + db_pgno_t compact_truncate; /* Page number for truncation */ +}; + +/* Hash statistics structure. */ +struct __db_h_stat { + u_int32_t hash_magic; /* Magic number. */ + u_int32_t hash_version; /* Version number. */ + u_int32_t hash_metaflags; /* Metadata flags. */ + u_int32_t hash_nkeys; /* Number of unique keys. */ + u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ + u_int32_t hash_pagesize; /* Page size. */ + u_int32_t hash_ffactor; /* Fill factor specified at create. */ + u_int32_t hash_buckets; /* Number of hash buckets. */ + u_int32_t hash_free; /* Pages on the free list. */ + u_int32_t hash_bfree; /* Bytes free on bucket pages. */ + u_int32_t hash_bigpages; /* Number of big key/data pages. */ + u_int32_t hash_big_bfree; /* Bytes free on big item pages. */ + u_int32_t hash_overflows; /* Number of overflow pages. */ + u_int32_t hash_ovfl_free; /* Bytes free on ovfl pages. */ + u_int32_t hash_dup; /* Number of dup pages. */ + u_int32_t hash_dup_free; /* Bytes free on duplicate pages. */ +}; + +/* Queue statistics structure. */ +struct __db_qam_stat { + u_int32_t qs_magic; /* Magic number. */ + u_int32_t qs_version; /* Version number. */ + u_int32_t qs_metaflags; /* Metadata flags. */ + u_int32_t qs_nkeys; /* Number of unique keys. */ + u_int32_t qs_ndata; /* Number of data items. */ + u_int32_t qs_pagesize; /* Page size. */ + u_int32_t qs_extentsize; /* Pages per extent. */ + u_int32_t qs_pages; /* Data pages. */ + u_int32_t qs_re_len; /* Fixed-length record length. */ + u_int32_t qs_re_pad; /* Fixed-length record pad. */ + u_int32_t qs_pgfree; /* Bytes free in data pages. */ + u_int32_t qs_first_recno; /* First not deleted record. */ + u_int32_t qs_cur_recno; /* Next available record number. */ +}; + +/******************************************************* + * Environment. + *******************************************************/ +#define DB_REGION_MAGIC 0x120897 /* Environment magic number. */ + +/* Database Environment handle. */ +struct __db_env { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + /* Error message callback. */ + void (*db_errcall) __P((const DB_ENV *, const char *, const char *)); + FILE *db_errfile; /* Error message file stream. */ + const char *db_errpfx; /* Error message prefix. */ + + FILE *db_msgfile; /* Statistics message file stream. */ + /* Statistics message callback. */ + void (*db_msgcall) __P((const DB_ENV *, const char *)); + + /* Other Callbacks. */ + void (*db_feedback) __P((DB_ENV *, int, int)); + void (*db_paniccall) __P((DB_ENV *, int)); + void (*db_event_func) __P((DB_ENV *, u_int32_t, void *)); + + /* App-specified alloc functions. */ + void *(*db_malloc) __P((size_t)); + void *(*db_realloc) __P((void *, size_t)); + void (*db_free) __P((void *)); + + /* Application callback to copy data to/from a custom data source. */ +#define DB_USERCOPY_GETDATA 0x0001 +#define DB_USERCOPY_SETDATA 0x0002 + int (*dbt_usercopy) + __P((DBT *, u_int32_t, void *, u_int32_t, u_int32_t)); + + /* + * Currently, the verbose list is a bit field with room for 32 + * entries. There's no reason that it needs to be limited, if + * there are ever more than 32 entries, convert to a bit array. + */ +#define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ + u_int32_t verbose; /* Verbose output. */ + + void *app_private; /* Application-private handle. */ + + int (*app_dispatch) /* User-specified recovery dispatch. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops)); + + /* Mutexes. */ + u_int32_t mutex_align; /* Mutex alignment */ + u_int32_t mutex_cnt; /* Number of mutexes to configure */ + u_int32_t mutex_inc; /* Number of mutexes to add */ + u_int32_t mutex_tas_spins;/* Test-and-set spin count */ + + struct { + int alloc_id; /* Allocation ID argument */ + u_int32_t flags; /* Flags argument */ + } *mutex_iq; /* Initial mutexes queue */ + u_int mutex_iq_next; /* Count of initial mutexes */ + u_int mutex_iq_max; /* Maximum initial mutexes */ + + /* Locking. */ + u_int8_t *lk_conflicts; /* Two dimensional conflict matrix. */ + int lk_modes; /* Number of lock modes in table. */ + u_int32_t lk_max; /* Maximum number of locks. */ + u_int32_t lk_max_lockers;/* Maximum number of lockers. */ + u_int32_t lk_max_objects;/* Maximum number of locked objects. */ + u_int32_t lk_detect; /* Deadlock detect on all conflicts. */ + db_timeout_t lk_timeout; /* Lock timeout period. */ + + /* Logging. */ + u_int32_t lg_bsize; /* Buffer size. */ + u_int32_t lg_size; /* Log file size. */ + u_int32_t lg_regionmax; /* Region size. */ + int lg_filemode; /* Log file permission mode. */ + + /* Memory pool. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ + size_t mp_mmapsize; /* Maximum file size for mmap. */ + int mp_maxopenfd; /* Maximum open file descriptors. */ + int mp_maxwrite; /* Maximum buffers to write. */ + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ + + /* Transactions. */ + u_int32_t tx_max; /* Maximum number of transactions. */ + time_t tx_timestamp; /* Recover to specific timestamp. */ + db_timeout_t tx_timeout; /* Timeout for transactions. */ + + /* Thread tracking. */ + u_int32_t thr_nbucket; /* Number of hash buckets. */ + u_int32_t thr_max; /* Max before garbage collection. */ + void *thr_hashtab; /* Hash table of DB_THREAD_INFO. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + + pid_t pid_cache; /* Cached process ID. */ + + /* User files, paths. */ + char *db_home; /* Database home. */ + char *db_log_dir; /* Database log file directory. */ + char *db_tmp_dir; /* Database tmp file directory. */ + + char **db_data_dir; /* Database data file directories. */ + int data_cnt; /* Database data file slots. */ + int data_next; /* Next Database data file slot. */ + + int db_mode; /* Default open permissions. */ + int dir_mode; /* Intermediate directory perms. */ + void *env_lref; /* Locker in non-threaded handles. */ + u_int32_t open_flags; /* Flags passed to DB_ENV->open. */ + + void *reginfo; /* REGINFO structure reference. */ + DB_FH *lockfhp; /* fcntl(2) locking file handle. */ + + DB_FH *registry; /* DB_REGISTER file handle. */ + u_int32_t registry_off; /* + * Offset of our slot. We can't use + * off_t because its size depends on + * build settings. + */ + + /* Return IDs. */ + void (*thread_id) __P((DB_ENV *, pid_t *, db_threadid_t *)); + /* Return if IDs alive. */ + int (*is_alive) + __P((DB_ENV *, pid_t, db_threadid_t, u_int32_t)); + /* Format IDs into a string. */ + char *(*thread_id_string) + __P((DB_ENV *, pid_t, db_threadid_t, char *)); + + int (**recover_dtab) /* Dispatch table for recover funcs. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); + size_t recover_dtab_size; + /* Slots in the dispatch table. */ + + void *cl_handle; /* RPC: remote client handle. */ + u_int cl_id; /* RPC: remote client env id. */ + + int db_ref; /* DB reference count. */ + + long shm_key; /* shmget(2) key. */ + + /* + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__dblist, __db); + */ + db_mutex_t mtx_dblist; /* Mutex. */ + struct __dblist { + struct __db *tqh_first; + struct __db **tqh_last; + } dblist; + + /* + * XA support. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_env) links; + * TAILQ_HEAD(xa_txn, __db_txn); + */ + struct { + struct __db_env *tqe_next; + struct __db_env **tqe_prev; + } links; + struct __xa_txn { /* XA Active Transactions. */ + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } xa_txn; + int xa_rmid; /* XA Resource Manager ID. */ + + char *passwd; /* Cryptography support. */ + size_t passwd_len; + void *crypto_handle; /* Primary handle. */ + db_mutex_t mtx_mt; /* Mersenne Twister mutex. */ + int mti; /* Mersenne Twister index. */ + u_long *mt; /* Mersenne Twister state vector. */ + + /* API-private structure. */ + void *api1_internal; /* C++, Perl API private */ + void *api2_internal; /* Java API private */ + + DB_LOCKTAB *lk_handle; /* Lock handle. */ + DB_LOG *lg_handle; /* Log handle. */ + DB_MPOOL *mp_handle; /* Mpool handle. */ + DB_MUTEXMGR *mutex_handle; /* Mutex handle. */ + DB_REP *rep_handle; /* Replication handle. */ + DB_TXNMGR *tx_handle; /* Txn handle. */ + + /* DB_ENV PUBLIC HANDLE LIST BEGIN */ + int (*cdsgroup_begin) __P((DB_ENV *, DB_TXN **)); + int (*close) __P((DB_ENV *, u_int32_t)); + int (*dbremove) __P((DB_ENV *, + DB_TXN *, const char *, const char *, u_int32_t)); + int (*dbrename) __P((DB_ENV *, + DB_TXN *, const char *, const char *, const char *, u_int32_t)); + void (*err) __P((const DB_ENV *, int, const char *, ...)); + void (*errx) __P((const DB_ENV *, const char *, ...)); + int (*failchk) __P((DB_ENV *, u_int32_t)); + int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*get_data_dirs) __P((DB_ENV *, const char ***)); + int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); + void (*get_errfile) __P((DB_ENV *, FILE **)); + void (*get_errpfx) __P((DB_ENV *, const char **)); + int (*get_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_home) __P((DB_ENV *, const char **)); + int (*get_lg_bsize) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_dir) __P((DB_ENV *, const char **)); + int (*get_lg_filemode) __P((DB_ENV *, int *)); + int (*get_lg_max) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_regionmax) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_conflicts) __P((DB_ENV *, const u_int8_t **, int *)); + int (*get_lk_detect) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_lockers) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); + int (*get_mp_max_openfd) __P((DB_ENV *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); + int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); + void (*get_msgfile) __P((DB_ENV *, FILE **)); + int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); + int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); + int (*get_tmp_dir) __P((DB_ENV *, const char **)); + int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); + int (*get_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*get_verbose) __P((DB_ENV *, u_int32_t, int *)); + int (*is_bigendian) __P((void)); + int (*lock_detect) __P((DB_ENV *, u_int32_t, u_int32_t, int *)); + int (*lock_get) __P((DB_ENV *, + u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); + int (*lock_id) __P((DB_ENV *, u_int32_t *)); + int (*lock_id_free) __P((DB_ENV *, u_int32_t)); + int (*lock_put) __P((DB_ENV *, DB_LOCK *)); + int (*lock_stat) __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); + int (*lock_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lock_vec) __P((DB_ENV *, + u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); + int (*log_archive) __P((DB_ENV *, char **[], u_int32_t)); + int (*log_cursor) __P((DB_ENV *, DB_LOGC **, u_int32_t)); + int (*log_file) __P((DB_ENV *, const DB_LSN *, char *, size_t)); + int (*log_flush) __P((DB_ENV *, const DB_LSN *)); + int (*log_printf) __P((DB_ENV *, DB_TXN *, const char *, ...)); + int (*log_put) __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); + int (*log_stat) __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); + int (*log_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lsn_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*memp_fcreate) __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); + int (*memp_register) __P((DB_ENV *, int, int (*)(DB_ENV *, + db_pgno_t, void *, DBT *), int (*)(DB_ENV *, + db_pgno_t, void *, DBT *))); + int (*memp_stat) __P((DB_ENV *, + DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); + int (*memp_stat_print) __P((DB_ENV *, u_int32_t)); + int (*memp_sync) __P((DB_ENV *, DB_LSN *)); + int (*memp_trickle) __P((DB_ENV *, int, int *)); + int (*mutex_alloc) __P((DB_ENV *, u_int32_t, db_mutex_t *)); + int (*mutex_free) __P((DB_ENV *, db_mutex_t)); + int (*mutex_get_align) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_increment) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_max) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_tas_spins) __P((DB_ENV *, u_int32_t *)); + int (*mutex_lock) __P((DB_ENV *, db_mutex_t)); + int (*mutex_set_align) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_increment) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_max) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_tas_spins) __P((DB_ENV *, u_int32_t)); + int (*mutex_stat) __P((DB_ENV *, DB_MUTEX_STAT **, u_int32_t)); + int (*mutex_stat_print) __P((DB_ENV *, u_int32_t)); + int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); + int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); + int (*remove) __P((DB_ENV *, const char *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); + int (*rep_flush) __P((DB_ENV *)); + int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); + int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*rep_get_nsites) __P((DB_ENV *, int *)); + int (*rep_get_priority) __P((DB_ENV *, int *)); + int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); + int (*rep_process_message) + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); + int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_nsites) __P((DB_ENV *, int)); + int (*rep_set_priority) __P((DB_ENV *, int)); + int (*rep_set_timeout) __P((DB_ENV *, int, db_timeout_t)); + int (*rep_set_transport) __P((DB_ENV *, int, int (*)(DB_ENV *, + const DBT *, const DBT *, const DB_LSN *, int, u_int32_t))); + int (*rep_start) __P((DB_ENV *, DBT *, u_int32_t)); + int (*rep_stat) __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); + int (*rep_stat_print) __P((DB_ENV *, u_int32_t)); + int (*rep_sync) __P((DB_ENV *, u_int32_t)); + int (*repmgr_add_remote_site) __P((DB_ENV *, const char *, u_int, + int *, u_int32_t)); + int (*repmgr_get_ack_policy) __P((DB_ENV *, int *)); + int (*repmgr_set_ack_policy) __P((DB_ENV *, int)); + int (*repmgr_set_local_site) __P((DB_ENV *, const char *, u_int, + u_int32_t)); + int (*repmgr_site_list) __P((DB_ENV *, u_int *, + DB_REPMGR_SITE **)); + int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); + int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_app_dispatch) + __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); + int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_data_dir) __P((DB_ENV *, const char *)); + int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); + void (*set_errcall) __P((DB_ENV *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB_ENV *, FILE *)); + void (*set_errpfx) __P((DB_ENV *, const char *)); + int (*set_event_notify) + __P((DB_ENV *, void (*)(DB_ENV *, u_int32_t, void *))); + int (*set_feedback) __P((DB_ENV *, void (*)(DB_ENV *, int, int))); + int (*set_flags) __P((DB_ENV *, u_int32_t, int)); + int (*set_intermediate_dir) __P((DB_ENV *, int, u_int32_t)); + int (*set_isalive) __P((DB_ENV *, + int (*)(DB_ENV *, pid_t, db_threadid_t, u_int32_t))); + int (*set_lg_bsize) __P((DB_ENV *, u_int32_t)); + int (*set_lg_dir) __P((DB_ENV *, const char *)); + int (*set_lg_filemode) __P((DB_ENV *, int)); + int (*set_lg_max) __P((DB_ENV *, u_int32_t)); + int (*set_lg_regionmax) __P((DB_ENV *, u_int32_t)); + int (*set_lk_conflicts) __P((DB_ENV *, u_int8_t *, int)); + int (*set_lk_detect) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_lockers) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); + int (*set_mp_max_openfd) __P((DB_ENV *, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); + int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); + void (*set_msgcall) + __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB_ENV *, FILE *)); + int (*set_paniccall) __P((DB_ENV *, void (*)(DB_ENV *, int))); + int (*set_rep_request) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_rpc_server) + __P((DB_ENV *, void *, const char *, long, long, u_int32_t)); + int (*set_shm_key) __P((DB_ENV *, long)); + int (*set_thread_count) __P((DB_ENV *, u_int32_t)); + int (*set_thread_id) __P((DB_ENV *, + void (*)(DB_ENV *, pid_t *, db_threadid_t *))); + int (*set_thread_id_string) __P((DB_ENV *, + char *(*)(DB_ENV *, pid_t, db_threadid_t, char *))); + int (*set_timeout) __P((DB_ENV *, db_timeout_t, u_int32_t)); + int (*set_tmp_dir) __P((DB_ENV *, const char *)); + int (*set_tx_max) __P((DB_ENV *, u_int32_t)); + int (*set_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*set_verbose) __P((DB_ENV *, u_int32_t, int)); + int (*stat_print) __P((DB_ENV *, u_int32_t)); + int (*txn_begin) __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); + int (*txn_checkpoint) __P((DB_ENV *, u_int32_t, u_int32_t, u_int32_t)); + int (*txn_recover) + __P((DB_ENV *, DB_PREPLIST *, long, long *, u_int32_t)); + int (*txn_stat) __P((DB_ENV *, DB_TXN_STAT **, u_int32_t)); + int (*txn_stat_print) __P((DB_ENV *, u_int32_t)); + /* DB_ENV PUBLIC HANDLE LIST END */ + + /* DB_ENV PRIVATE HANDLE LIST BEGIN */ + int (*prdbt) __P((DBT *, + int, const char *, void *, int (*)(void *, const void *), int)); + /* DB_ENV PRIVATE HANDLE LIST END */ + +#define DB_TEST_ELECTINIT 1 /* after __rep_elect_init */ +#define DB_TEST_ELECTVOTE1 2 /* after sending VOTE1 */ +#define DB_TEST_POSTDESTROY 3 /* after destroy op */ +#define DB_TEST_POSTLOG 4 /* after logging all pages */ +#define DB_TEST_POSTLOGMETA 5 /* after logging meta in btree */ +#define DB_TEST_POSTOPEN 6 /* after __os_open */ +#define DB_TEST_POSTSYNC 7 /* after syncing the log */ +#define DB_TEST_PREDESTROY 8 /* before destroy op */ +#define DB_TEST_PREOPEN 9 /* before __os_open */ +#define DB_TEST_RECYCLE 10 /* test rep and txn_recycle */ +#define DB_TEST_SUBDB_LOCKS 11 /* subdb locking tests */ + int test_abort; /* Abort value for testing. */ + int test_check; /* Checkpoint value for testing. */ + int test_copy; /* Copy value for testing. */ + +#define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ +#define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ +#define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ + u_int32_t flags; +}; + +#ifndef DB_DBM_HSEARCH +#define DB_DBM_HSEARCH 0 /* No historic interfaces by default. */ +#endif +#if DB_DBM_HSEARCH != 0 +/******************************************************* + * Dbm/Ndbm historic interfaces. + *******************************************************/ +typedef struct __db DBM; + +#define DBM_INSERT 0 /* Flags to dbm_store(). */ +#define DBM_REPLACE 1 + +/* + * The DB support for ndbm(3) always appends this suffix to the + * file name to avoid overwriting the user's original database. + */ +#define DBM_SUFFIX ".db" + +#if defined(_XPG4_2) +typedef struct { + char *dptr; + size_t dsize; +} datum; +#else +typedef struct { + char *dptr; + int dsize; +} datum; +#endif + +/* + * Translate NDBM calls into DB calls so that DB doesn't step on the + * application's name space. + */ +#define dbm_clearerr(a) __db_ndbm_clearerr(a) +#define dbm_close(a) __db_ndbm_close(a) +#define dbm_delete(a, b) __db_ndbm_delete(a, b) +#define dbm_dirfno(a) __db_ndbm_dirfno(a) +#define dbm_error(a) __db_ndbm_error(a) +#define dbm_fetch(a, b) __db_ndbm_fetch(a, b) +#define dbm_firstkey(a) __db_ndbm_firstkey(a) +#define dbm_nextkey(a) __db_ndbm_nextkey(a) +#define dbm_open(a, b, c) __db_ndbm_open(a, b, c) +#define dbm_pagfno(a) __db_ndbm_pagfno(a) +#define dbm_rdonly(a) __db_ndbm_rdonly(a) +#define dbm_store(a, b, c, d) \ + __db_ndbm_store(a, b, c, d) + +/* + * Translate DBM calls into DB calls so that DB doesn't step on the + * application's name space. + * + * The global variables dbrdonly, dirf and pagf were not retained when 4BSD + * replaced the dbm interface with ndbm, and are not supported here. + */ +#define dbminit(a) __db_dbm_init(a) +#define dbmclose __db_dbm_close +#if !defined(__cplusplus) +#define delete(a) __db_dbm_delete(a) +#endif +#define fetch(a) __db_dbm_fetch(a) +#define firstkey __db_dbm_firstkey +#define nextkey(a) __db_dbm_nextkey(a) +#define store(a, b) __db_dbm_store(a, b) + +/******************************************************* + * Hsearch historic interface. + *******************************************************/ +typedef enum { + FIND, ENTER +} ACTION; + +typedef struct entry { + char *key; + char *data; +} ENTRY; + +#define hcreate(a) __db_hcreate(a) +#define hdestroy __db_hdestroy +#define hsearch(a, b) __db_hsearch(a, b) + +#endif /* DB_DBM_HSEARCH */ + +#if defined(__cplusplus) +} +#endif + +typedef struct { + AEEApplet a; /* AEEApplet must be listed first. */ + void *db_global_values; +} BDBApp; +int brew_bdb_begin __P((void)); +void brew_bdb_end __P((void)); +#endif /* !_DB_H_ */ + +/* DO NOT EDIT: automatically built by dist/s_include. */ +#ifndef _DB_EXT_PROT_IN_ +#define _DB_EXT_PROT_IN_ + +#if defined(__cplusplus) +extern "C" { +#endif + +int db_create __P((DB **, DB_ENV *, u_int32_t)); +char *db_strerror __P((int)); +int db_env_create __P((DB_ENV **, u_int32_t)); +char *db_version __P((int *, int *, int *)); +int log_compare __P((const DB_LSN *, const DB_LSN *)); +int db_env_set_func_close __P((int (*)(int))); +int db_env_set_func_dirfree __P((void (*)(char **, int))); +int db_env_set_func_dirlist __P((int (*)(const char *, char ***, int *))); +int db_env_set_func_exists __P((int (*)(const char *, int *))); +int db_env_set_func_free __P((void (*)(void *))); +int db_env_set_func_fsync __P((int (*)(int))); +int db_env_set_func_ftruncate __P((int (*)(int, off_t))); +int db_env_set_func_ioinfo __P((int (*)(const char *, int, u_int32_t *, u_int32_t *, u_int32_t *))); +int db_env_set_func_malloc __P((void *(*)(size_t))); +int db_env_set_func_map __P((int (*)(char *, size_t, int, int, void **))); +int db_env_set_func_pread __P((ssize_t (*)(int, void *, size_t, off_t))); +int db_env_set_func_pwrite __P((ssize_t (*)(int, const void *, size_t, off_t))); +int db_env_set_func_open __P((int (*)(const char *, int, ...))); +int db_env_set_func_read __P((ssize_t (*)(int, void *, size_t))); +int db_env_set_func_realloc __P((void *(*)(void *, size_t))); +int db_env_set_func_rename __P((int (*)(const char *, const char *))); +int db_env_set_func_seek __P((int (*)(int, off_t, int))); +int db_env_set_func_sleep __P((int (*)(u_long, u_long))); +int db_env_set_func_unlink __P((int (*)(const char *))); +int db_env_set_func_unmap __P((int (*)(void *, size_t))); +int db_env_set_func_write __P((ssize_t (*)(int, const void *, size_t))); +int db_env_set_func_yield __P((int (*)(void))); +int db_sequence_create __P((DB_SEQUENCE **, DB *, u_int32_t)); +#if DB_DBM_HSEARCH != 0 +int __db_ndbm_clearerr __P((DBM *)); +void __db_ndbm_close __P((DBM *)); +int __db_ndbm_delete __P((DBM *, datum)); +int __db_ndbm_dirfno __P((DBM *)); +int __db_ndbm_error __P((DBM *)); +datum __db_ndbm_fetch __P((DBM *, datum)); +datum __db_ndbm_firstkey __P((DBM *)); +datum __db_ndbm_nextkey __P((DBM *)); +DBM *__db_ndbm_open __P((const char *, int, int)); +int __db_ndbm_pagfno __P((DBM *)); +int __db_ndbm_rdonly __P((DBM *)); +int __db_ndbm_store __P((DBM *, datum, datum, int)); +int __db_dbm_close __P((void)); +int __db_dbm_delete __P((datum)); +datum __db_dbm_fetch __P((datum)); +datum __db_dbm_firstkey __P((void)); +int __db_dbm_init __P((char *)); +datum __db_dbm_nextkey __P((datum)); +int __db_dbm_store __P((datum, datum)); +#endif +#if DB_DBM_HSEARCH != 0 +int __db_hcreate __P((size_t)); +ENTRY *__db_hsearch __P((ENTRY, ACTION)); +void __db_hdestroy __P((void)); +#endif + +#if defined(__cplusplus) +} +#endif +#endif /* !_DB_EXT_PROT_IN_ */ diff --git a/db/build_brew/db_config.h b/db/build_brew/db_config.h new file mode 100644 index 000000000..28d8fdc58 --- /dev/null +++ b/db/build_brew/db_config.h @@ -0,0 +1,549 @@ +/* DO NOT EDIT: automatically built by dist/s_brew. */ +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +/* #undef DB_WIN32 */ + +/* Define to 1 if you want a debugging version. */ +#if defined(_DEBUG) +#if !defined(DEBUG) +#define DEBUG 1 +#endif +#endif + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +/* #undef HAVE_64BIT_TYPES */ + +/* Define to 1 if you have the `abort' function. */ +/* #undef HAVE_ABORT */ + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +/* #undef HAVE_ATOL */ + +/* Define to 1 if building BREW. */ +#define HAVE_BREW 1 + +/* Define to 1 if building on BREW (SDK2). */ +#define HAVE_BREW_SDK2 1 + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +/* #undef HAVE_CRYPTO */ + +/* Define to 1 if you have the `ctime_r' function. */ +/* #undef HAVE_CTIME_R */ + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_DIRENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +/* #undef HAVE_FCLOSE */ + +/* Define to 1 if you have the `fcntl' function. */ +/* #undef HAVE_FCNTL */ + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +/* #undef HAVE_FGETC */ + +/* Define to 1 if you have the `fgets' function. */ +/* #undef HAVE_FGETS */ + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +/* #undef HAVE_FOPEN */ + +/* Define to 1 if you have the `ftruncate' function. */ +#define HAVE_FTRUNCATE 1 + +/* Define to 1 if you have the `fwrite' function. */ +/* #undef HAVE_FWRITE */ + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +/* #undef HAVE_GETCWD */ + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +/* #undef HAVE_GETOPT */ + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +/* #undef HAVE_HASH */ + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISALPHA */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISDIGIT */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISPRINT */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISSPACE */ + +/* Define to 1 if you have the `localtime' function. */ +/* #undef HAVE_LOCALTIME */ + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MEMORY_H */ + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +/* #undef HAVE_MUNMAP */ + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +/* #undef HAVE_MUTEX_PTHREADS */ + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +/* #undef HAVE_MUTEX_SUPPORT */ + +/* Define to 1 if mutexes hold system resources. */ +/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ + +/* Define to 1 to configure mutexes intra-process only. */ +/* #undef HAVE_MUTEX_THREAD_ONLY */ + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32 */ + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +/* #undef HAVE_PRINTF */ + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +/* #undef HAVE_QSORT */ + +/* Define to 1 if building Queue access method. */ +/* #undef HAVE_QUEUE */ + +/* Define to 1 if you have the `raise' function. */ +/* #undef HAVE_RAISE */ + +/* Define to 1 if you have the `rand' function. */ +/* #undef HAVE_RAND */ + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + +/* Define to 1 if you have the `sched_yield' function. */ +/* #undef HAVE_SCHED_YIELD */ + +/* Define to 1 if you have the `select' function. */ +/* #undef HAVE_SELECT */ + +/* Define to 1 if you have the `shmget' function. */ +/* #undef HAVE_SHMGET */ + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +/* #undef HAVE_SIMPLE_THREAD_TYPE */ + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +/* #undef HAVE_STAT */ + +/* Define to 1 if building statistics support. */ +/* #undef HAVE_STATISTICS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDLIB_H */ + +/* Define to 1 if you have the `strcasecmp' function. */ +/* #undef HAVE_STRCASECMP */ + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +/* #undef HAVE_STRERROR */ + +/* Define to 1 if you have the `strftime' function. */ +/* #undef HAVE_STRFTIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STRINGS_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STRING_H */ + +/* Define to 1 if you have the `strncat' function. */ +/* #undef HAVE_STRNCAT */ + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +/* #undef HAVE_STRSEP */ + +/* Define to 1 if you have the `strtol' function. */ +/* #undef HAVE_STRTOL */ + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +/* #undef HAVE_SYSCONF */ + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SELECT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STAT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TIME_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TYPES_H 1*/ + +/* Define to 1 if you have the `time' function. */ +/* #undef HAVE_TIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +/* #undef HAVE_VERIFY */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +/* #undef HAVE__FSTATI64 1*/ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "support@sleepycat.com" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB 4.6.18" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-4.6.18" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "4.6.18" + +/* The size of a `char', as computed by sizeof. */ +#define SIZEOF_CHAR 1 + +/* The size of a `char *', as computed by sizeof. */ +#define SIZEOF_CHAR_P 4 + +/* The size of a `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of a `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +#define SIZEOF_SHORT 2 + +/* The size of a `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* The size of a `unsigned char', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_CHAR 1 + +/* The size of a `unsigned int', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_INT 4 + +/* The size of a `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_SHORT 2 + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_brew/db_int.h b/db/build_brew/db_int.h new file mode 100644 index 000000000..bfb66cde9 --- /dev/null +++ b/db/build_brew/db_int.h @@ -0,0 +1,775 @@ +/* DO NOT EDIT: automatically built by dist/s_brew. */ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_int.in,v 12.58 2007/05/30 14:06:39 bostic Exp $ + */ + +#ifndef _DB_INT_H_ +#define _DB_INT_H_ + +/******************************************************* + * Berkeley DB ANSI/POSIX include files. + *******************************************************/ +#ifdef HAVE_SYSTEM_INCLUDE_FILES +#include +#ifdef DIAG_MVCC +#include +#endif +#include + +#if defined(__INCLUDE_SELECT_H) +#ifdef HAVE_SYS_SELECT_H +#include +#endif +#ifdef HAVE_VXWORKS +#include +#endif +#endif + +#if TIME_WITH_SYS_TIME +#include +#include +#else +#if HAVE_SYS_TIME_H +#include +#else +#include +#endif +#endif + +#ifdef HAVE_VXWORKS +#include +#else +#include +#endif + +#if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H +#include +#endif +#include +#include +#include +#endif + +#if defined(STDC_HEADERS) || defined(__cplusplus) +#include +#else +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ +#include "brew_db.h" + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" +#endif + +#include "db.h" +#include "clib_port.h" + +#include "dbinc/queue.h" +#include "dbinc/shqueue.h" + +#if defined(__cplusplus) +extern "C" { +#endif + +/******************************************************* + * General purpose constants and macros. + *******************************************************/ +#undef FALSE +#define FALSE 0 +#undef TRUE +#define TRUE (!FALSE) + +#define MEGABYTE 1048576 +#define GIGABYTE 1073741824 + +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ + +#define RECNO_OOB 0 /* Illegal record number. */ + +/* Test for a power-of-two (tests true for zero, which doesn't matter here). */ +#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0) + +/* Test for valid page sizes. */ +#define DB_MIN_PGSIZE 0x000200 /* Minimum page size (512). */ +#define DB_MAX_PGSIZE 0x010000 /* Maximum page size (65536). */ +#define IS_VALID_PAGESIZE(x) \ + (POWER_OF_TWO(x) && (x) >= DB_MIN_PGSIZE && ((x) <= DB_MAX_PGSIZE)) + +/* Minimum number of pages cached, by default. */ +#define DB_MINPAGECACHE 16 + +/* + * If we are unable to determine the underlying filesystem block size, use + * 8K on the grounds that most OS's use less than 8K for a VM page size. + */ +#define DB_DEF_IOSIZE (8 * 1024) + +/* Align an integer to a specific boundary. */ +#undef DB_ALIGN +#define DB_ALIGN(v, bound) \ + (((v) + (bound) - 1) & ~(((uintmax_t)(bound)) - 1)) + +/* Increment a pointer to a specific boundary. */ +#undef ALIGNP_INC +#define ALIGNP_INC(p, bound) \ + (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) + +/* + * Print an address as a u_long (a u_long is the largest type we can print + * portably). Most 64-bit systems have made longs 64-bits, so this should + * work. + */ +#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p)) + +/* + * Convert a pointer to a small integral value. + * + * The (u_int16_t)(uintptr_t) cast avoids warnings: the (uintptr_t) cast + * converts the value to an integral type, and the (u_int16_t) cast converts + * it to a small integral type so we don't get complaints when we assign the + * final result to an integral type smaller than uintptr_t. + */ +#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p)) +#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p)) + +/* + * There are several on-page structures that are declared to have a number of + * fields followed by a variable length array of items. The structure size + * without including the variable length array or the address of the first of + * those elements can be found using SSZ. + * + * This macro can also be used to find the offset of a structure element in a + * structure. This is used in various places to copy structure elements from + * unaligned memory references, e.g., pointers into a packed page. + * + * There are two versions because compilers object if you take the address of + * an array. + */ +#undef SSZ +#define SSZ(name, field) P_TO_UINT16(&(((name *)0)->field)) + +#undef SSZA +#define SSZA(name, field) P_TO_UINT16(&(((name *)0)->field[0])) + +/* Structure used to print flag values. */ +typedef struct __fn { + u_int32_t mask; /* Flag value. */ + const char *name; /* Flag name. */ +} FN; + +/* Set, clear and test flags. */ +#define FLD_CLR(fld, f) (fld) &= ~(f) +#define FLD_ISSET(fld, f) ((fld) & (f)) +#define FLD_SET(fld, f) (fld) |= (f) +#define F_CLR(p, f) (p)->flags &= ~(f) +#define F_ISSET(p, f) ((p)->flags & (f)) +#define F_SET(p, f) (p)->flags |= (f) +#define LF_CLR(f) ((flags) &= ~(f)) +#define LF_ISSET(f) ((flags) & (f)) +#define LF_SET(f) ((flags) |= (f)) + +/* + * Calculate a percentage. The values can overflow 32-bit integer arithmetic + * so we use floating point. + * + * When calculating a bytes-vs-page size percentage, we're getting the inverse + * of the percentage in all cases, that is, we want 100 minus the percentage we + * calculate. + */ +#define DB_PCT(v, total) \ + ((int)((total) == 0 ? 0 : ((double)(v) * 100) / (total))) +#define DB_PCT_PG(v, total, pgsize) \ + ((int)((total) == 0 ? 0 : \ + 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) + +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + +/* + * Structure used for callback message aggregation. + * + * Display values in XXX_stat_print calls. + */ +typedef struct __db_msgbuf { + char *buf; /* Heap allocated buffer. */ + char *cur; /* Current end of message. */ + size_t len; /* Allocated length of buffer. */ +} DB_MSGBUF; +#define DB_MSGBUF_INIT(a) do { \ + (a)->buf = (a)->cur = NULL; \ + (a)->len = 0; \ +} while (0) +#define DB_MSGBUF_FLUSH(dbenv, a) do { \ + if ((a)->buf != NULL) { \ + if ((a)->cur != (a)->buf) \ + __db_msg(dbenv, "%s", (a)->buf); \ + __os_free(dbenv, (a)->buf); \ + DB_MSGBUF_INIT(a); \ + } \ +} while (0) +#define STAT_FMT(msg, fmt, type, v) do { \ + DB_MSGBUF __mb; \ + DB_MSGBUF_INIT(&__mb); \ + __db_msgadd(dbenv, &__mb, fmt, (type)(v)); \ + __db_msgadd(dbenv, &__mb, "\t%s", msg); \ + DB_MSGBUF_FLUSH(dbenv, &__mb); \ +} while (0) +#define STAT_HEX(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", (u_long)(v), msg) +#define STAT_ISSET(msg, p) \ + __db_msg(dbenv, "%sSet\t%s", (p) == NULL ? "!" : " ", msg) +#define STAT_LONG(msg, v) \ + __db_msg(dbenv, "%ld\t%s", (long)(v), msg) +#define STAT_LSN(msg, lsnp) \ + __db_msg(dbenv, "%lu/%lu\t%s", \ + (u_long)(lsnp)->file, (u_long)(lsnp)->offset, msg) +#define STAT_POINTER(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", P_TO_ULONG(v), msg) +#define STAT_STRING(msg, p) do { \ + const char *__p = p; /* p may be a function call. */ \ + __db_msg(dbenv, "%s\t%s", __p == NULL ? "!Set" : __p, msg); \ +} while (0) +#define STAT_ULONG(msg, v) \ + __db_msg(dbenv, "%lu\t%s", (u_long)(v), msg) + +/* + * There are quite a few places in Berkeley DB where we want to initialize + * a DBT from a string or other random pointer type, using a length typed + * to size_t in most cases. This macro avoids a lot of casting. The macro + * comes in two flavors because we often want to clear the DBT first. + */ +#define DB_SET_DBT(dbt, d, s) do { \ + (dbt).data = (void *)(d); \ + (dbt).size = (u_int32_t)(s); \ +} while (0) +#define DB_INIT_DBT(dbt, d, s) do { \ + memset(&(dbt), 0, sizeof(dbt)); \ + DB_SET_DBT(dbt, d, s); \ +} while (0) + +/******************************************************* + * API return values + *******************************************************/ +/* + * Return values that are OK for each different call. Most calls have a + * standard 'return of 0 is only OK value', but some, like db->get have + * DB_NOTFOUND as a return value, but it really isn't an error. + */ +#define DB_RETOK_STD(ret) ((ret) == 0) +#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) +#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) +#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) +#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ + (ret) == DB_REP_IGNORE || \ + (ret) == DB_REP_ISPERM || \ + (ret) == DB_REP_NEWMASTER || \ + (ret) == DB_REP_NEWSITE || \ + (ret) == DB_REP_NOTPERM) + +/* Find a reasonable operation-not-supported error. */ +#ifdef EOPNOTSUPP +#define DB_OPNOTSUP EOPNOTSUPP +#else +#ifdef ENOTSUP +#define DB_OPNOTSUP ENOTSUP +#else +#define DB_OPNOTSUP EINVAL +#endif +#endif + +/******************************************************* + * Files. + *******************************************************/ +/* + * We use 1024 as the maximum path length. It's too hard to figure out what + * the real path length is, as it was traditionally stored in , + * and that file isn't always available. + */ +#define DB_MAXPATHLEN 1024 + +#define PATH_DOT "." /* Current working directory. */ + /* Path separator character(s). */ +#define PATH_SEPARATOR "\\/:" + +/******************************************************* + * Environment. + *******************************************************/ +/* Type passed to __db_appname(). */ +typedef enum { + DB_APP_NONE=0, /* No type (region). */ + DB_APP_DATA, /* Data file. */ + DB_APP_LOG, /* Log file. */ + DB_APP_TMP /* Temporary file. */ +} APPNAME; + +/* + * A set of macros to check if various functionality has been configured. + * + * ALIVE_ON The is_alive function is configured. + * CDB_LOCKING CDB product locking. + * CRYPTO_ON Security has been configured. + * LOCKING_ON Locking has been configured. + * LOGGING_ON Logging has been configured. + * MUTEX_ON Mutexes have been configured. + * MPOOL_ON Memory pool has been configured. + * REP_ON Replication has been configured. + * RPC_ON RPC has been configured. + * TXN_ON Transactions have been configured. + * + * REP_ON is more complex than most: if the BDB library was compiled without + * replication support, dbenv->rep_handle will be NULL; if the BDB library + * has replication support, but it was not configured, the region reference + * will be NULL. + */ +#define ALIVE_ON(dbenv) ((dbenv)->is_alive != NULL) +#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_CDB) +#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle != NULL) +#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != NULL) +#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != NULL) +#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NULL) +#define MUTEX_ON(dbenv) ((dbenv)->mutex_handle != NULL) +#define REP_ON(dbenv) \ + ((dbenv)->rep_handle != NULL && (dbenv)->rep_handle->region != NULL) +#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL) +#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL) + +/* + * STD_LOCKING Standard locking, that is, locking was configured and CDB + * was not. We do not do locking in off-page duplicate trees, + * so we check for that in the cursor first. + */ +#define STD_LOCKING(dbc) \ + (!F_ISSET(dbc, DBC_OPD) && \ + !CDB_LOCKING((dbc)->dbp->dbenv) && LOCKING_ON((dbc)->dbp->dbenv)) + +/* + * IS_RECOVERING: The system is running recovery. + */ +#define IS_RECOVERING(dbenv) \ + (LOGGING_ON(dbenv) && F_ISSET((dbenv)->lg_handle, DBLOG_RECOVER)) + +/* Initialization methods are often illegal before/after open is called. */ +#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 1)); +#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \ + if (!F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 0)); + +/* We're not actually user hostile, honest. */ +#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) \ + if (handle == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_REQUIRES_CONFIG_XX(dbenv, handle, i, flags) \ + if ((dbenv)->handle->region == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) + +#define ENV_ENTER(dbenv, ip) do { \ + int __ret; \ + if ((dbenv)->thr_hashtab == NULL) \ + ip = NULL; \ + else { \ + if ((__ret = \ + __env_set_state(dbenv, &(ip), THREAD_ACTIVE)) != 0) \ + return (__ret); \ + } \ +} while (0) + +#ifdef DIAGNOSTIC +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) { \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ + (ip)->dbth_state = THREAD_OUT; \ + } \ +} while (0) +#else +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) \ + (ip)->dbth_state = THREAD_OUT; \ +} while (0) +#endif +#ifdef DIAGNOSTIC +#define CHECK_THREAD(dbenv) do { \ + DB_THREAD_INFO *__ip; \ + if ((dbenv)->thr_hashtab != NULL) { \ + (void)__env_set_state(dbenv, &__ip, THREAD_DIAGNOSTIC); \ + DB_ASSERT(dbenv, \ + __ip != NULL && __ip->dbth_state != THREAD_OUT); \ + } \ +} while (0) +#ifdef HAVE_STATISTICS +#define CHECK_MTX_THREAD(dbenv, mtx) do { \ + if (mtx->alloc_id != MTX_MUTEX_REGION && \ + mtx->alloc_id != MTX_ENV_REGION && \ + mtx->alloc_id != MTX_APPLICATION) \ + CHECK_THREAD(dbenv); \ +} while (0) +#else +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif +#else +#define CHECK_THREAD(dbenv) +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif + +typedef enum { + THREAD_SLOT_NOT_IN_USE=0, + THREAD_OUT, + THREAD_ACTIVE, + THREAD_BLOCKED +#ifdef DIAGNOSTIC + , THREAD_DIAGNOSTIC +#endif +} DB_THREAD_STATE; + +typedef struct __db_thread_info { + pid_t dbth_pid; + db_threadid_t dbth_tid; + DB_THREAD_STATE dbth_state; + SH_TAILQ_ENTRY dbth_links; +} DB_THREAD_INFO; + +typedef struct __env_thread_info { + u_int32_t thr_count; + u_int32_t thr_max; + u_int32_t thr_nbucket; + roff_t thr_hashoff; +} THREAD_INFO; + +#define DB_EVENT(dbenv, e, einfo) do { \ + if ((dbenv)->db_event_func != NULL) \ + (dbenv)->db_event_func(dbenv, e, einfo); \ +} while (0) + +/******************************************************* + * Database Access Methods. + *******************************************************/ +/* + * DB_IS_THREADED -- + * The database handle is free-threaded (was opened with DB_THREAD). + */ +#define DB_IS_THREADED(dbp) \ + ((dbp)->mutex != MUTEX_INVALID) + +/* Initialization methods are often illegal before/after open is called. */ +#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \ + if (F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 1)); +#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \ + if (!F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 0)); +/* Some initialization methods are illegal if environment isn't local. */ +#define DB_ILLEGAL_IN_ENV(dbp, name) \ + if (!F_ISSET((dbp)->dbenv, DB_ENV_DBLOCAL)) \ + return (__db_mi_env((dbp)->dbenv, name)); +#define DB_ILLEGAL_METHOD(dbp, flags) { \ + int __ret; \ + if ((__ret = __dbh_am_chk(dbp, flags)) != 0) \ + return (__ret); \ +} + +/* + * Common DBC->internal fields. Each access method adds additional fields + * to this list, but the initial fields are common. + */ +#define __DBC_INTERNAL \ + DBC *opd; /* Off-page duplicate cursor. */\ + \ + void *page; /* Referenced page. */ \ + db_pgno_t root; /* Tree root. */ \ + db_pgno_t pgno; /* Referenced page number. */ \ + db_indx_t indx; /* Referenced key item index. */\ + \ + DB_LOCK lock; /* Cursor lock. */ \ + db_lockmode_t lock_mode; /* Lock mode. */ + +struct __dbc_internal { + __DBC_INTERNAL +}; + +/* Actions that __db_master_update can take. */ +typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_action; + +/* + * Access-method-common macro for determining whether a cursor + * has been initialized. + */ +#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno != PGNO_INVALID) + +/* Free the callback-allocated buffer, if necessary, hanging off of a DBT. */ +#define FREE_IF_NEEDED(dbenv, dbt) \ + if (F_ISSET((dbt), DB_DBT_APPMALLOC)) { \ + __os_ufree((dbenv), (dbt)->data); \ + F_CLR((dbt), DB_DBT_APPMALLOC); \ + } + +/* + * Use memory belonging to object "owner" to return the results of + * any no-DBT-flag get ops on cursor "dbc". + */ +#define SET_RET_MEM(dbc, owner) \ + do { \ + (dbc)->rskey = &(owner)->my_rskey; \ + (dbc)->rkey = &(owner)->my_rkey; \ + (dbc)->rdata = &(owner)->my_rdata; \ + } while (0) + +/* Use the return-data memory src is currently set to use in dest as well. */ +#define COPY_RET_MEM(src, dest) \ + do { \ + (dest)->rskey = (src)->rskey; \ + (dest)->rkey = (src)->rkey; \ + (dest)->rdata = (src)->rdata; \ + } while (0) + +/* Reset the returned-memory pointers to their defaults. */ +#define RESET_RET_MEM(dbc) \ + do { \ + (dbc)->rskey = &(dbc)->my_rskey; \ + (dbc)->rkey = &(dbc)->my_rkey; \ + (dbc)->rdata = &(dbc)->my_rdata; \ + } while (0) + +/******************************************************* + * Mpool. + *******************************************************/ +/* + * File types for DB access methods. Negative numbers are reserved to DB. + */ +#define DB_FTYPE_SET -1 /* Call pgin/pgout functions. */ +#define DB_FTYPE_NOTSET 0 /* Don't call... */ +#define DB_LSN_OFF_NOTSET -1 /* Not yet set. */ +#define DB_CLEARLEN_NOTSET UINT32_MAX /* Not yet set. */ + +/* Structure used as the DB pgin/pgout pgcookie. */ +typedef struct __dbpginfo { + size_t db_pagesize; /* Underlying page size. */ + u_int32_t flags; /* Some DB_AM flags needed. */ + DBTYPE type; /* DB type */ +} DB_PGINFO; + +/******************************************************* + * Log. + *******************************************************/ +/* Initialize an LSN to 'zero'. */ +#define ZERO_LSN(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 0; \ +} while (0) +#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN).offset == 0) + +#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN).offset == 0) +#define INIT_LSN(LSN) do { \ + (LSN).file = 1; \ + (LSN).offset = 0; \ +} while (0) + +#define MAX_LSN(LSN) do { \ + (LSN).file = UINT32_MAX; \ + (LSN).offset = UINT32_MAX; \ +} while (0) +#define IS_MAX_LSN(LSN) \ + ((LSN).file == UINT32_MAX && (LSN).offset == UINT32_MAX) + +/* If logging is turned off, smash the lsn. */ +#define LSN_NOT_LOGGED(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 1; \ +} while (0) +#define IS_NOT_LOGGED_LSN(LSN) \ + ((LSN).file == 0 && (LSN).offset == 1) + +/* + * LOG_COMPARE -- compare two LSNs. + */ + +#define LOG_COMPARE(lsn0, lsn1) \ + ((lsn0)->file != (lsn1)->file ? \ + ((lsn0)->file < (lsn1)->file ? -1 : 1) : \ + ((lsn0)->offset != (lsn1)->offset ? \ + ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) + +/******************************************************* + * Txn. + *******************************************************/ +#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSET((C)->txn, TXN_NOWAIT)) +#define NOWAIT_FLAG(txn) \ + ((txn) != NULL && F_ISSET((txn), TXN_NOWAIT) ? DB_LOCK_NOWAIT : 0) +#define IS_REAL_TXN(txn) \ + ((txn) != NULL && !F_ISSET(txn, TXN_CDSGROUP)) +#define IS_SUBTRANSACTION(txn) \ + ((txn) != NULL && (txn)->parent != NULL) + +/******************************************************* + * Crypto. + *******************************************************/ +#define DB_IV_BYTES 16 /* Bytes per IV */ +#define DB_MAC_KEY 20 /* Bytes per MAC checksum */ + +/******************************************************* + * Secondaries over RPC. + *******************************************************/ +#ifdef CONFIG_TEST +/* + * These are flags passed to DB->associate calls by the Tcl API if running + * over RPC. The RPC server will mask out these flags before making the real + * DB->associate call. + * + * These flags must coexist with the valid flags to DB->associate (currently + * DB_AUTO_COMMIT and DB_CREATE). DB_AUTO_COMMIT is in the group of + * high-order shared flags (0xff000000), and DB_CREATE is in the low-order + * group (0x00000fff), so we pick a range in between. + */ +#define DB_RPC2ND_MASK 0x00f00000 /* Reserved bits. */ + +#define DB_RPC2ND_REVERSEDATA 0x00100000 /* callback_n(0) _s_reversedata. */ +#define DB_RPC2ND_NOOP 0x00200000 /* callback_n(1) _s_noop */ +#define DB_RPC2ND_CONCATKEYDATA 0x00300000 /* callback_n(2) _s_concatkeydata */ +#define DB_RPC2ND_CONCATDATAKEY 0x00400000 /* callback_n(3) _s_concatdatakey */ +#define DB_RPC2ND_REVERSECONCAT 0x00500000 /* callback_n(4) _s_reverseconcat */ +#define DB_RPC2ND_TRUNCDATA 0x00600000 /* callback_n(5) _s_truncdata */ +#define DB_RPC2ND_CONSTANT 0x00700000 /* callback_n(6) _s_constant */ +#define DB_RPC2ND_GETZIP 0x00800000 /* sj_getzip */ +#define DB_RPC2ND_GETNAME 0x00900000 /* sj_getname */ +#endif + +/******************************************************* + * Forward structure declarations. + *******************************************************/ +struct __db_reginfo_t; typedef struct __db_reginfo_t REGINFO; +struct __db_txnhead; typedef struct __db_txnhead DB_TXNHEAD; +struct __db_txnlist; typedef struct __db_txnlist DB_TXNLIST; +struct __vrfy_childinfo;typedef struct __vrfy_childinfo VRFY_CHILDINFO; +struct __vrfy_dbinfo; typedef struct __vrfy_dbinfo VRFY_DBINFO; +struct __vrfy_pageinfo; typedef struct __vrfy_pageinfo VRFY_PAGEINFO; + +typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; + +#if defined(__cplusplus) +} +#endif + +/******************************************************* + * Remaining general DB includes. + *******************************************************/ + + +#include "dbinc/globals.h" +#include "dbinc/clock.h" +#include "dbinc/debug.h" +#include "dbinc/region.h" +#include "dbinc_auto/env_ext.h" +#include "dbinc/mutex.h" +#include "dbinc/os.h" +#ifdef HAVE_REPLICATION_THREADS +#include "dbinc/repmgr.h" +#endif +#include "dbinc/rep.h" +#include "dbinc_auto/clib_ext.h" +#include "dbinc_auto/common_ext.h" + +/******************************************************* + * Remaining Log. + * These need to be defined after the general includes + * because they need rep.h from above. + *******************************************************/ +/* + * Test if the environment is currently logging changes. If we're in recovery + * or we're a replication client, we don't need to log changes because they're + * already in the log, even though we have a fully functional log system. + */ +#define DBENV_LOGGING(dbenv) \ + (LOGGING_ON(dbenv) && !IS_REP_CLIENT(dbenv) && \ + (!IS_RECOVERING(dbenv))) + +/* + * Test if we need to log a change. By default, we don't log operations without + * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. + * This is because we want to get log records for read/write operations, and, if + * we are trying to debug something, more information is always better. + * + * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; + * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING + * is true. + * + * We explicitly use LOGGING_ON/IS_REP_CLIENT here because we don't want to pull + * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and + * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. + * + * If we're not in recovery (master - doing an abort or a client applying + * a txn), then a client's only path through here is on an internal + * operation, and a master's only path through here is a transactional + * operation. Detect if either is not the case. + */ +#if defined(DIAGNOSTIC) || defined(DEBUG_ROP) || defined(DEBUG_WOP) +#define DBC_LOGGING(dbc) __dbc_logging(dbc) +#else +#define DBC_LOGGING(dbc) \ + ((dbc)->txn != NULL && LOGGING_ON((dbc)->dbp->dbenv) && \ + !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) +#endif + +#endif /* !_DB_INT_H_ */ diff --git a/db/build_brew/errno.h b/db/build_brew/errno.h new file mode 100644 index 000000000..935efcce2 --- /dev/null +++ b/db/build_brew/errno.h @@ -0,0 +1,188 @@ +/*- + * Copyright (c) 1982, 1986, 1989, 1993 + * The Regents of the University of California. All rights reserved. + * (c) UNIX System Laboratories, Inc. + * All or some portions of this file are derived from material licensed + * to the University of California by American Telephone and Telegraph + * Co. or Unix System Laboratories, Inc. and are reproduced herein with + * the permission of UNIX System Laboratories, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)errno.h 8.5 (Berkeley) 1/21/94 + * FreeBSD: /repoman/r/ncvs/src/sys/sys/errno.h,v 1.28 2005/04/02 12:33:28 das Exp $ + * + * $Id: errno.h,v 1.4 2006/11/09 14:23:11 bostic Exp $ + */ + +#ifndef _SYS_ERRNO_H_ +#define _SYS_ERRNO_H_ + +#undef errno +#define errno DB_GLOBAL(db_errno) + +#define EPERM 1 /* Operation not permitted */ +#define ENOENT 2 /* No such file or directory */ +#define ESRCH 3 /* No such process */ +#define EINTR 4 /* Interrupted system call */ +#define EIO 5 /* Input/output error */ +#define ENXIO 6 /* Device not configured */ +#define E2BIG 7 /* Argument list too long */ +#define ENOEXEC 8 /* Exec format error */ +#define EBADF 9 /* Bad file descriptor */ +#define ECHILD 10 /* No child processes */ +#define EDEADLK 11 /* Resource deadlock avoided */ + /* 11 was EAGAIN */ +#define ENOMEM 12 /* Cannot allocate memory */ +#define EACCES 13 /* Permission denied */ +#define EFAULT 14 /* Bad address */ +#ifndef _POSIX_SOURCE +#define ENOTBLK 15 /* Block device required */ +#endif +#define EBUSY 16 /* Device busy */ +#define EEXIST 17 /* File exists */ +#define EXDEV 18 /* Cross-device link */ +#define ENODEV 19 /* Operation not supported by device */ +#define ENOTDIR 20 /* Not a directory */ +#define EISDIR 21 /* Is a directory */ +#define EINVAL 22 /* Invalid argument */ +#define ENFILE 23 /* Too many open files in system */ +#define EMFILE 24 /* Too many open files */ +#define ENOTTY 25 /* Inappropriate ioctl for device */ +#ifndef _POSIX_SOURCE +#define ETXTBSY 26 /* Text file busy */ +#endif +#define EFBIG 27 /* File too large */ +#define ENOSPC 28 /* No space left on device */ +#define ESPIPE 29 /* Illegal seek */ +#define EROFS 30 /* Read-only filesystem */ +#define EMLINK 31 /* Too many links */ +#define EPIPE 32 /* Broken pipe */ + +/* math software */ +#define EDOM 33 /* Numerical argument out of domain */ +#define ERANGE 34 /* Result too large */ + +/* non-blocking and interrupt i/o */ +#define EAGAIN 35 /* Resource temporarily unavailable */ +#ifndef _POSIX_SOURCE +#define EWOULDBLOCK EAGAIN /* Operation would block */ +#define EINPROGRESS 36 /* Operation now in progress */ + +#ifndef EALREADY /* BREW already has an EALREADY. */ +#define EALREADY 37 /* Operation already in progress */ +#endif + +/* ipc/network software -- argument errors */ +#define ENOTSOCK 38 /* Socket operation on non-socket */ +#define EDESTADDRREQ 39 /* Destination address required */ +#define EMSGSIZE 40 /* Message too long */ +#define EPROTOTYPE 41 /* Protocol wrong type for socket */ +#define ENOPROTOOPT 42 /* Protocol not available */ +#define EPROTONOSUPPORT 43 /* Protocol not supported */ +#define ESOCKTNOSUPPORT 44 /* Socket type not supported */ +#define EOPNOTSUPP 45 /* Operation not supported */ +#define ENOTSUP EOPNOTSUPP /* Operation not supported */ +#define EPFNOSUPPORT 46 /* Protocol family not supported */ +#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */ +#define EADDRINUSE 48 /* Address already in use */ +#define EADDRNOTAVAIL 49 /* Can't assign requested address */ + +/* ipc/network software -- operational errors */ +#define ENETDOWN 50 /* Network is down */ +#define ENETUNREACH 51 /* Network is unreachable */ +#define ENETRESET 52 /* Network dropped connection on reset */ +#define ECONNABORTED 53 /* Software caused connection abort */ +#define ECONNRESET 54 /* Connection reset by peer */ +#define ENOBUFS 55 /* No buffer space available */ +#define EISCONN 56 /* Socket is already connected */ +#define ENOTCONN 57 /* Socket is not connected */ +#define ESHUTDOWN 58 /* Can't send after socket shutdown */ +#define ETOOMANYREFS 59 /* Too many references: can't splice */ +#define ETIMEDOUT 60 /* Operation timed out */ +#define ECONNREFUSED 61 /* Connection refused */ + +#define ELOOP 62 /* Too many levels of symbolic links */ +#endif /* _POSIX_SOURCE */ +#define ENAMETOOLONG 63 /* File name too long */ + +/* should be rearranged */ +#ifndef _POSIX_SOURCE +#define EHOSTDOWN 64 /* Host is down */ +#define EHOSTUNREACH 65 /* No route to host */ +#endif /* _POSIX_SOURCE */ +#define ENOTEMPTY 66 /* Directory not empty */ + +/* quotas & mush */ +#ifndef _POSIX_SOURCE +#define EPROCLIM 67 /* Too many processes */ +#define EUSERS 68 /* Too many users */ +#define EDQUOT 69 /* Disc quota exceeded */ + +/* Network File System */ +#define ESTALE 70 /* Stale NFS file handle */ +#define EREMOTE 71 /* Too many levels of remote in path */ +#define EBADRPC 72 /* RPC struct is bad */ +#define ERPCMISMATCH 73 /* RPC version wrong */ +#define EPROGUNAVAIL 74 /* RPC prog. not avail */ +#define EPROGMISMATCH 75 /* Program version wrong */ +#define EPROCUNAVAIL 76 /* Bad procedure for program */ +#endif /* _POSIX_SOURCE */ + +#define ENOLCK 77 /* No locks available */ +#define ENOSYS 78 /* Function not implemented */ + +#ifndef _POSIX_SOURCE +#define EFTYPE 79 /* Inappropriate file type or format */ +#define EAUTH 80 /* Authentication error */ +#define ENEEDAUTH 81 /* Need authenticator */ +#define EIDRM 82 /* Identifier removed */ +#define ENOMSG 83 /* No message of desired type */ +#define EOVERFLOW 84 /* Value too large to be stored in data type */ +#define ECANCELED 85 /* Operation canceled */ +#define EILSEQ 86 /* Illegal byte sequence */ +#define ENOATTR 87 /* Attribute not found */ + +#define EDOOFUS 88 /* Programming error */ +#endif /* _POSIX_SOURCE */ + +#define EBADMSG 89 /* Bad message */ +#define EMULTIHOP 90 /* Multihop attempted */ +#define ENOLINK 91 /* Link has been severed */ +#define EPROTO 92 /* Protocol error */ + +#ifndef _POSIX_SOURCE +#define ELAST 92 /* Must be equal largest errno */ +#endif /* _POSIX_SOURCE */ + +#ifdef _KERNEL +/* pseudo-errors returned inside kernel to modify return to process */ +#define ERESTART (-1) /* restart syscall */ +#define EJUSTRETURN (-2) /* don't modify regs, just return */ +#define ENOIOCTL (-3) /* ioctl not handled by this layer */ +#define EDIRIOCTL (-4) /* do direct ioctl in GEOM */ +#endif + +#endif diff --git a/db/build_s60/bdb_s60.mmp b/db/build_s60/bdb_s60.mmp new file mode 100644 index 000000000..b84c96137 --- /dev/null +++ b/db/build_s60/bdb_s60.mmp @@ -0,0 +1,183 @@ +// bdb_s60.mmp +// DO NOT EDIT: automatically built by dist/s_s60_mmp + +TARGET bdb_s60.lib +TARGETTYPE lib +UID 0x10004262 0xE8000016 +VENDORID 0x70000002 + +SOURCE ..\btree\bt_compact.c +SOURCE ..\btree\bt_compare.c +SOURCE ..\btree\bt_conv.c +SOURCE ..\btree\bt_curadj.c +SOURCE ..\btree\bt_cursor.c +SOURCE ..\btree\bt_delete.c +SOURCE ..\btree\bt_method.c +SOURCE ..\btree\bt_open.c +SOURCE ..\btree\bt_put.c +SOURCE ..\btree\bt_rec.c +SOURCE ..\btree\bt_reclaim.c +SOURCE ..\btree\bt_recno.c +SOURCE ..\btree\bt_rsearch.c +SOURCE ..\btree\bt_search.c +SOURCE ..\btree\bt_split.c +SOURCE ..\btree\bt_stat.c +SOURCE ..\btree\btree_auto.c +SOURCE ..\clib\ctime.c +SOURCE ..\clib\snprintf.c +SOURCE ..\clib\strcasecmp.c +SOURCE ..\clib\strsep.c +SOURCE ..\common\crypto_stub.c +SOURCE ..\common\db_byteorder.c +SOURCE ..\common\db_err.c +SOURCE ..\common\db_getlong.c +SOURCE ..\common\db_idspace.c +SOURCE ..\common\db_log2.c +SOURCE ..\common\db_shash.c +SOURCE ..\common\mkpath.c +SOURCE ..\db\crdel_auto.c +SOURCE ..\db\crdel_rec.c +SOURCE ..\db\db.c +SOURCE ..\db\db_am.c +SOURCE ..\db\db_auto.c +SOURCE ..\db\db_cam.c +SOURCE ..\db\db_cds.c +SOURCE ..\db\db_conv.c +SOURCE ..\db\db_dispatch.c +SOURCE ..\db\db_dup.c +SOURCE ..\db\db_iface.c +SOURCE ..\db\db_join.c +SOURCE ..\db\db_meta.c +SOURCE ..\db\db_method.c +SOURCE ..\db\db_open.c +SOURCE ..\db\db_overflow.c +SOURCE ..\db\db_pr.c +SOURCE ..\db\db_rec.c +SOURCE ..\db\db_reclaim.c +SOURCE ..\db\db_remove.c +SOURCE ..\db\db_rename.c +SOURCE ..\db\db_ret.c +SOURCE ..\db\db_setid.c +SOURCE ..\db\db_setlsn.c +SOURCE ..\db\db_stati.c +SOURCE ..\db\db_truncate.c +SOURCE ..\db\db_upg.c +SOURCE ..\db\db_vrfy_stub.c +SOURCE ..\dbreg\dbreg.c +SOURCE ..\dbreg\dbreg_auto.c +SOURCE ..\dbreg\dbreg_rec.c +SOURCE ..\dbreg\dbreg_stat.c +SOURCE ..\dbreg\dbreg_util.c +SOURCE ..\env\env_alloc.c +SOURCE ..\env\env_config.c +SOURCE ..\env\env_failchk.c +SOURCE ..\env\env_file.c +SOURCE ..\env\env_globals.c +SOURCE ..\env\env_method.c +SOURCE ..\env\env_name.c +SOURCE ..\env\env_open.c +SOURCE ..\env\env_recover.c +SOURCE ..\env\env_region.c +SOURCE ..\env\env_register.c +SOURCE ..\env\env_stat.c +SOURCE ..\fileops\fileops_auto.c +SOURCE ..\fileops\fop_basic.c +SOURCE ..\fileops\fop_rec.c +SOURCE ..\fileops\fop_util.c +SOURCE ..\hash\hash_func.c +SOURCE ..\hash\hash_stub.c +SOURCE ..\hmac\hmac.c +SOURCE ..\hmac\sha1.c +SOURCE ..\lock\lock.c +SOURCE ..\lock\lock_deadlock.c +SOURCE ..\lock\lock_failchk.c +SOURCE ..\lock\lock_id.c +SOURCE ..\lock\lock_list.c +SOURCE ..\lock\lock_method.c +SOURCE ..\lock\lock_region.c +SOURCE ..\lock\lock_stat.c +SOURCE ..\lock\lock_timer.c +SOURCE ..\lock\lock_util.c +SOURCE ..\log\log.c +SOURCE ..\log\log_archive.c +SOURCE ..\log\log_compare.c +SOURCE ..\log\log_debug.c +SOURCE ..\log\log_get.c +SOURCE ..\log\log_method.c +SOURCE ..\log\log_put.c +SOURCE ..\log\log_stat.c +SOURCE ..\mp\mp_alloc.c +SOURCE ..\mp\mp_bh.c +SOURCE ..\mp\mp_fget.c +SOURCE ..\mp\mp_fmethod.c +SOURCE ..\mp\mp_fopen.c +SOURCE ..\mp\mp_fput.c +SOURCE ..\mp\mp_fset.c +SOURCE ..\mp\mp_method.c +SOURCE ..\mp\mp_mvcc.c +SOURCE ..\mp\mp_region.c +SOURCE ..\mp\mp_register.c +SOURCE ..\mp\mp_resize.c +SOURCE ..\mp\mp_stat.c +SOURCE ..\mp\mp_sync.c +SOURCE ..\mp\mp_trickle.c +SOURCE ..\mutex\mut_alloc.c +SOURCE ..\mutex\mut_failchk.c +SOURCE ..\mutex\mut_method.c +SOURCE ..\mutex\mut_pthread.c +SOURCE ..\mutex\mut_region.c +SOURCE ..\mutex\mut_stat.c +SOURCE ..\os\os_abort.c +SOURCE ..\os\os_abs.c +SOURCE ..\os\os_alloc.c +SOURCE ..\os\os_clock.c +SOURCE ..\os\os_dir.c +SOURCE ..\os\os_errno.c +SOURCE ..\os\os_fid.c +SOURCE ..\os\os_flock.c +SOURCE ..\os\os_fsync.c +SOURCE ..\os\os_fzero.c +SOURCE ..\os\os_getenv.c +SOURCE ..\os\os_handle.c +SOURCE ..\os\os_map.c +SOURCE ..\os\os_mkdir.c +SOURCE ..\os\os_oflags.c +SOURCE ..\os\os_open.c +SOURCE ..\os\os_pid.c +SOURCE ..\os\os_region.c +SOURCE ..\os\os_rename.c +SOURCE ..\os\os_root.c +SOURCE ..\os\os_rpath.c +SOURCE ..\os\os_rw.c +SOURCE ..\os\os_seek.c +SOURCE ..\os\os_sleep.c +SOURCE ..\os\os_spin.c +SOURCE ..\os\os_stat.c +SOURCE ..\os\os_tmpdir.c +SOURCE ..\os\os_truncate.c +SOURCE ..\os\os_uid.c +SOURCE ..\os\os_unlink.c +SOURCE ..\os\os_yield.c +SOURCE ..\os_s60\os_config.c +SOURCE ..\qam\qam_stub.c +SOURCE ..\rep\rep_stub.c +SOURCE ..\repmgr\repmgr_stub.c +SOURCE ..\txn\txn.c +SOURCE ..\txn\txn_auto.c +SOURCE ..\txn\txn_chkpt.c +SOURCE ..\txn\txn_failchk.c +SOURCE ..\txn\txn_method.c +SOURCE ..\txn\txn_rec.c +SOURCE ..\txn\txn_recover.c +SOURCE ..\txn\txn_region.c +SOURCE ..\txn\txn_stat.c +SOURCE ..\txn\txn_util.c +SOURCE ..\xa\xa_stub.c + +SYSTEMINCLUDE \epoc32\include\stdapis \epoc32\include +USERINCLUDE . +USERINCLUDE .. + +LIBRARY libc.lib libpthread.lib euser.lib libcrt0.lib + +nostrictdef diff --git a/db/build_s60/clib_port.h b/db/build_s60/clib_port.h new file mode 100644 index 000000000..ad622d9b7 --- /dev/null +++ b/db/build_s60/clib_port.h @@ -0,0 +1,203 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +#endif /* HAVE_64BIT_TYPES */ + +/* + * Exit success/failure macros. + */ +#ifndef HAVE_EXIT_SUCCESS +#define EXIT_FAILURE 1 +#define EXIT_SUCCESS 0 +#endif + +/* + * Don't step on the namespace. Other libraries may have their own + * implementations of these functions, we don't want to use their + * implementations or force them to use ours based on the load order. + */ +#ifndef HAVE_ATOI +#define atoi __db_Catoi +#endif +#ifndef HAVE_ATOL +#define atol __db_Catol +#endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif +#ifndef HAVE_GETADDRINFO +#define freeaddrinfo(a) __db_Cfreeaddrinfo(a) +#define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) +#endif +#ifndef HAVE_GETCWD +#define getcwd __db_Cgetcwd +#endif +#ifndef HAVE_GETOPT +#define getopt __db_Cgetopt +#define optarg __db_Coptarg +#define opterr __db_Copterr +#define optind __db_Coptind +#define optopt __db_Coptopt +#define optreset __db_Coptreset +#endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif +#ifndef HAVE_ISSPACE +#define isspace __db_Cisspace +#endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif +#ifndef HAVE_MEMCMP +#define memcmp __db_Cmemcmp +#endif +#ifndef HAVE_MEMCPY +#define memcpy __db_Cmemcpy +#endif +#ifndef HAVE_MEMMOVE +#define memmove __db_Cmemmove +#endif +#ifndef HAVE_PRINTF +#define printf __db_Cprintf +#define fprintf __db_Cfprintf +#endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif +#ifndef HAVE_RAISE +#define raise __db_Craise +#endif +#ifndef HAVE_RAND +#define rand __db_Crand +#define srand __db_Csrand +#endif +#ifndef HAVE_SNPRINTF +#define snprintf __db_Csnprintf +#endif +#ifndef HAVE_STRCASECMP +#define strcasecmp __db_Cstrcasecmp +#define strncasecmp __db_Cstrncasecmp +#endif +#ifndef HAVE_STRCAT +#define strcat __db_Cstrcat +#endif +#ifndef HAVE_STRCHR +#define strchr __db_Cstrchr +#endif +#ifndef HAVE_STRDUP +#define strdup __db_Cstrdup +#endif +#ifndef HAVE_STRERROR +#define strerror __db_Cstrerror +#endif +#ifndef HAVE_STRNCAT +#define strncat __db_Cstrncat +#endif +#ifndef HAVE_STRNCMP +#define strncmp __db_Cstrncmp +#endif +#ifndef HAVE_STRRCHR +#define strrchr __db_Cstrrchr +#endif +#ifndef HAVE_STRSEP +#define strsep __db_Cstrsep +#endif +#ifndef HAVE_STRTOL +#define strtol __db_Cstrtol +#endif +#ifndef HAVE_STRTOUL +#define strtoul __db_Cstrtoul +#endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif +#ifndef HAVE_VSNPRINTF +#define vsnprintf __db_Cvsnprintf +#endif diff --git a/db/build_s60/db.h b/db/build_s60/db.h new file mode 100644 index 000000000..f6a04242a --- /dev/null +++ b/db/build_s60/db.h @@ -0,0 +1,2646 @@ +/* DO NOT EDIT: automatically built by dist/s_s60. */ +/* + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db.h,v 1.35 2007/07/17 14:50:17 bostic Exp $ + * + * db.h include file layout: + * General. + * Database Environment. + * Locking subsystem. + * Logging subsystem. + * Shared buffer cache (mpool) subsystem. + * Transaction subsystem. + * Access methods. + * Access method cursors. + * Dbm/Ndbm, Hsearch historic interfaces. + */ + +#ifndef _DB_H_ +#define _DB_H_ + +#ifndef __NO_SYSTEM_INCLUDES +#include +#include +#include +#include +#endif + +#if defined(__cplusplus) +extern "C" { +#endif + + +#undef __P +#define __P(protos) protos + +/* + * Berkeley DB version information. + */ +#define DB_VERSION_MAJOR 4 +#define DB_VERSION_MINOR 6 +#define DB_VERSION_PATCH 18 +#define DB_VERSION_STRING "Berkeley DB 4.6.18: (July 17, 2007)" + +/* + * !!! + * Berkeley DB uses specifically sized types. If they're not provided by + * the system, typedef them here. + * + * We protect them against multiple inclusion using __BIT_TYPES_DEFINED__, + * as does BIND and Kerberos, since we don't know for sure what #include + * files the user is using. + * + * !!! + * We also provide the standard u_int, u_long etc., if they're not provided + * by the system. + */ +#ifndef __BIT_TYPES_DEFINED__ +#define __BIT_TYPES_DEFINED__ +#endif + + +/* + * Missing ANSI types. + * + * uintmax_t -- + * Largest unsigned type, used to align structures in memory. We don't store + * floating point types in structures, so integral types should be sufficient + * (and we don't have to worry about systems that store floats in other than + * power-of-2 numbers of bytes). Additionally this fixes compilers that rewrite + * structure assignments and ANSI C memcpy calls to be in-line instructions + * that happen to require alignment. + * + * uintptr_t -- + * Unsigned type that's the same size as a pointer. There are places where + * DB modifies pointers by discarding the bottom bits to guarantee alignment. + * We can't use uintmax_t, it may be larger than the pointer, and compilers + * get upset about that. So far we haven't run on any machine where there's + * no unsigned type the same size as a pointer -- here's hoping. + */ +typedef unsigned long uintmax_t; + + +/* + * Sequences are only available on machines with 64-bit integral types. + */ +typedef int32_t db_seq_t; + +/* Thread and process identification. */ +typedef pthread_t db_threadid_t; + +/* Basic types that are exported or quasi-exported. */ +typedef u_int32_t db_pgno_t; /* Page number type. */ +typedef u_int16_t db_indx_t; /* Page offset type. */ +#define DB_MAX_PAGES 0xffffffff /* >= # of pages in a file */ + +typedef u_int32_t db_recno_t; /* Record number type. */ +#define DB_MAX_RECORDS 0xffffffff /* >= # of records in a tree */ + +typedef u_int32_t db_timeout_t; /* Type of a timeout. */ + +/* + * Region offsets are the difference between a pointer in a region and the + * region's base address. With private environments, both addresses are the + * result of calling malloc, and we can't assume anything about what malloc + * will return, so region offsets have to be able to hold differences between + * arbitrary pointers. + */ +typedef uintptr_t roff_t; + +/* + * Forward structure declarations, so we can declare pointers and + * applications can get type checking. + */ +struct __db; typedef struct __db DB; +struct __db_bt_stat; typedef struct __db_bt_stat DB_BTREE_STAT; +struct __db_cipher; typedef struct __db_cipher DB_CIPHER; +struct __db_compact; typedef struct __db_compact DB_COMPACT; +struct __db_dbt; typedef struct __db_dbt DBT; +struct __db_env; typedef struct __db_env DB_ENV; +struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; +struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; +struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; +struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; +struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; +struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; +struct __db_log; typedef struct __db_log DB_LOG; +struct __db_log_cursor; typedef struct __db_log_cursor DB_LOGC; +struct __db_log_stat; typedef struct __db_log_stat DB_LOG_STAT; +struct __db_lsn; typedef struct __db_lsn DB_LSN; +struct __db_mpool; typedef struct __db_mpool DB_MPOOL; +struct __db_mpool_fstat;typedef struct __db_mpool_fstat DB_MPOOL_FSTAT; +struct __db_mpool_stat; typedef struct __db_mpool_stat DB_MPOOL_STAT; +struct __db_mpoolfile; typedef struct __db_mpoolfile DB_MPOOLFILE; +struct __db_mutex_stat; typedef struct __db_mutex_stat DB_MUTEX_STAT; +struct __db_mutex_t; typedef struct __db_mutex_t DB_MUTEX; +struct __db_mutexmgr; typedef struct __db_mutexmgr DB_MUTEXMGR; +struct __db_preplist; typedef struct __db_preplist DB_PREPLIST; +struct __db_qam_stat; typedef struct __db_qam_stat DB_QUEUE_STAT; +struct __db_rep; typedef struct __db_rep DB_REP; +struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; +struct __db_repmgr_site; \ + typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; +struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; +struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; +struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; +struct __db_txn; typedef struct __db_txn DB_TXN; +struct __db_txn_active; typedef struct __db_txn_active DB_TXN_ACTIVE; +struct __db_txn_stat; typedef struct __db_txn_stat DB_TXN_STAT; +struct __db_txnmgr; typedef struct __db_txnmgr DB_TXNMGR; +struct __dbc; typedef struct __dbc DBC; +struct __dbc_internal; typedef struct __dbc_internal DBC_INTERNAL; +struct __fh_t; typedef struct __fh_t DB_FH; +struct __fname; typedef struct __fname FNAME; +struct __key_range; typedef struct __key_range DB_KEY_RANGE; +struct __mpoolfile; typedef struct __mpoolfile MPOOLFILE; + +/* Key/data structure -- a Data-Base Thang. */ +struct __db_dbt { + void *data; /* Key/data */ + u_int32_t size; /* key/data length */ + + u_int32_t ulen; /* RO: length of user buffer. */ + u_int32_t dlen; /* RO: get/put record length. */ + u_int32_t doff; /* RO: get/put record offset. */ + + void *app_data; + +#define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ + u_int32_t flags; +}; + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + */ +#define DB_CREATE 0x0000001 /* Create file as necessary. */ +#define DB_DURABLE_UNKNOWN 0x0000002 /* Durability on open (internal). */ +#define DB_FORCE 0x0000004 /* Force (anything). */ +#define DB_MULTIVERSION 0x0000008 /* Multiversion concurrency control. */ +#define DB_NOMMAP 0x0000010 /* Don't mmap underlying file. */ +#define DB_RDONLY 0x0000020 /* Read-only (O_RDONLY). */ +#define DB_RECOVER 0x0000040 /* Run normal recovery. */ +#define DB_THREAD 0x0000080 /* Applications are threaded. */ +#define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ +#define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + * + * DB_AUTO_COMMIT: + * DB_ENV->set_flags, DB->open + * (Note: until the 4.3 release, legal to DB->associate, DB->del, + * DB->put, DB->remove, DB->rename and DB->truncate, and others.) + * DB_READ_COMMITTED: + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin + * DB_READ_UNCOMMITTED: + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, + * DB_ENV->txn_begin + * DB_TXN_SNAPSHOT: + * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor + * + * !!! + * The DB_READ_COMMITTED and DB_READ_UNCOMMITTED bit masks can't be changed + * without also changing the masks for the flags that can be OR'd into DB + * access method and cursor operation values. + */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ +#define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ + +#define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ +#define DB_DEGREE_2 0x04000000/* Historic name. */ + +#define DB_READ_UNCOMMITTED 0x08000000/* Degree 1 isolation. */ +#define DB_DIRTY_READ 0x08000000/* Historic name. */ + +#define DB_TXN_SNAPSHOT 0x10000000/* Snapshot isolation. */ + +/* + * Flags common to db_env_create and db_create. + */ +#define DB_CXX_NO_EXCEPTIONS 0x0000001 /* C++: return error values. */ + +/* + * Flags private to db_env_create. + * Shared flags up to 0x0000001 */ +#define DB_RPCCLIENT 0x0000002 /* An RPC client environment. */ + +/* + * Flags private to db_create. + * Shared flags up to 0x0000001 */ +#define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ + +/* + * Flags shared by DB_ENV->remove and DB_ENV->open. + * Shared flags up to 0x0002000 */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ + +#define DB_JOINENV 0x0 /* Compatibility. */ + +/* + * Flags private to DB->open. + * Shared flags up to 0x0002000 */ +#define DB_EXCL 0x0004000 /* Exclusive open (O_EXCL). */ +#define DB_FCNTL_LOCKING 0x0008000 /* UNDOC: fcntl(2) locking. */ +#define DB_NO_AUTO_COMMIT 0x0010000 /* Override env-wide AUTOCOMMIT. */ +#define DB_RDWRMASTER 0x0020000 /* UNDOC: allow subdb master open R/W */ +#define DB_WRITEOPEN 0x0040000 /* UNDOC: open with write lock. */ + +/* + * Flags private to DB->associate. + * Shared flags up to 0x0002000 */ +#define DB_IMMUTABLE_KEY 0x0004000 /* Secondary key is immutable. */ +/* Shared flags at 0x1000000 */ + +/* + * Flags private to DB_ENV->txn_begin. + * Shared flags up to 0x0002000 */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ + +/* + * Flags private to DB_ENV->set_encrypt. + */ +#define DB_ENCRYPT_AES 0x0000001 /* AES, assumes SHA1 checksum */ + +/* + * Flags private to DB_ENV->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CDB_ALLDB 0x00004000/* Set CDB locking per environment. */ +#define DB_DIRECT_DB 0x00008000/* Don't buffer databases in the OS. */ +#define DB_DIRECT_LOG 0x00010000/* Don't buffer log files in the OS. */ +#define DB_DSYNC_DB 0x00020000/* Set O_DSYNC on the databases. */ +#define DB_DSYNC_LOG 0x00040000/* Set O_DSYNC on the log. */ +#define DB_LOG_AUTOREMOVE 0x00080000/* Automatically remove log files. */ +#define DB_LOG_INMEMORY 0x00100000/* Store logs in buffers in memory. */ +#define DB_NOLOCKING 0x00200000/* Set locking/mutex behavior. */ +#define DB_NOPANIC 0x00400000/* Set panic state per DB_ENV. */ +#define DB_OVERWRITE 0x00800000/* Overwrite unlinked region files. */ +#define DB_PANIC_ENVIRONMENT 0x01000000/* Set panic state per environment. */ +/* Shared flags at 0x02000000 */ +/* Shared flags at 0x04000000 */ +/* Shared flags at 0x08000000 */ +/* Shared flags at 0x10000000 */ +#define DB_REGION_INIT 0x20000000/* Page-fault regions on open. */ +#define DB_TIME_NOTGRANTED 0x40000000/* Return NOTGRANTED on timeout. */ +#define DB_YIELDCPU 0x80000000/* Yield the CPU (a lot). */ + +/* + * Flags private to DB->set_feedback's callback. + */ +#define DB_UPGRADE 0x0000001 /* Upgrading. */ +#define DB_VERIFY 0x0000002 /* Verifying. */ + +/* + * Flags private to DB->compact. + * Shared flags up to 0x00002000 + */ +#define DB_FREELIST_ONLY 0x00004000 /* Just sort and truncate. */ +#define DB_FREE_SPACE 0x00008000 /* Free space . */ +#define DB_COMPACT_FLAGS \ + (DB_FREELIST_ONLY | DB_FREE_SPACE) + +/* + * Flags private to DB_MPOOLFILE->open. + * Shared flags up to 0x0002000 */ +#define DB_DIRECT 0x0004000 /* Don't buffer the file in the OS. */ +#define DB_EXTENT 0x0008000 /* internal: dealing with an extent. */ +#define DB_ODDFILESIZE 0x0010000 /* Truncate file to N * pgsize. */ + +/* + * Flags private to DB->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CHKSUM 0x00004000 /* Do checksumming */ +#define DB_DUP 0x00008000 /* Btree, Hash: duplicate keys. */ +#define DB_DUPSORT 0x00010000 /* Btree, Hash: duplicate keys. */ +#define DB_ENCRYPT 0x00020000 /* Btree, Hash: duplicate keys. */ +#define DB_INORDER 0x00040000 /* Queue: strict ordering on consume */ +#define DB_RECNUM 0x00080000 /* Btree: record numbers. */ +#define DB_RENUMBER 0x00100000 /* Recno: renumber on insert/delete. */ +#define DB_REVSPLITOFF 0x00200000 /* Btree: turn off reverse splits. */ +#define DB_SNAPSHOT 0x00400000 /* Recno: snapshot the input. */ + +/* + * Flags private to the DB_ENV->stat_print, DB->stat and DB->stat_print methods. + */ +#define DB_FAST_STAT 0x0000001 /* Don't traverse the database. */ +#define DB_STAT_ALL 0x0000002 /* Print: Everything. */ +#define DB_STAT_CLEAR 0x0000004 /* Clear stat after returning values. */ +#define DB_STAT_LOCK_CONF 0x0000008 /* Print: Lock conflict matrix. */ +#define DB_STAT_LOCK_LOCKERS 0x0000010 /* Print: Lockers. */ +#define DB_STAT_LOCK_OBJECTS 0x0000020 /* Print: Lock objects. */ +#define DB_STAT_LOCK_PARAMS 0x0000040 /* Print: Lock parameters. */ +#define DB_STAT_MEMP_HASH 0x0000080 /* Print: Mpool hash buckets. */ +#define DB_STAT_NOERROR 0x0000100 /* Internal: continue on error. */ +#define DB_STAT_SUBSYSTEM 0x0000200 /* Print: Subsystems too. */ + +/* + * Flags private to DB->join. + */ +#define DB_JOIN_NOSORT 0x0000001 /* Don't try to optimize join. */ + +/* + * Flags private to DB->verify. + */ +#define DB_AGGRESSIVE 0x0000001 /* Salvage whatever could be data.*/ +#define DB_NOORDERCHK 0x0000002 /* Skip sort order/hashing check. */ +#define DB_ORDERCHKONLY 0x0000004 /* Only perform the order check. */ +#define DB_PR_PAGE 0x0000008 /* Show page contents (-da). */ +#define DB_PR_RECOVERYTEST 0x0000010 /* Recovery test (-dr). */ +#define DB_PRINTABLE 0x0000020 /* Use printable format for salvage. */ +#define DB_SALVAGE 0x0000040 /* Salvage what looks like data. */ +#define DB_UNREF 0x0000080 /* Report unreferenced pages. */ +/* + * !!! + * These must not go over 0x8000, or they will collide with the flags + * used by __bam_vrfy_subtree. + */ + +/* + * Flags private to DB->rep_set_transport's send callback. + */ +#define DB_REP_ANYWHERE 0x0000001 /* Message can be serviced anywhere. */ +#define DB_REP_NOBUFFER 0x0000002 /* Do not buffer this message. */ +#define DB_REP_PERMANENT 0x0000004 /* Important--app. may want to flush. */ +#define DB_REP_REREQUEST 0x0000008 /* This msg already been requested. */ + +/******************************************************* + * Mutexes. + *******************************************************/ +typedef u_int32_t db_mutex_t; + +/* + * Flag arguments for DbEnv.mutex_alloc, DbEnv.is_alive and for the + * DB_MUTEX structure. + */ +#define DB_MUTEX_ALLOCATED 0x01 /* Mutex currently allocated. */ +#define DB_MUTEX_LOCKED 0x02 /* Mutex currently locked. */ +#define DB_MUTEX_LOGICAL_LOCK 0x04 /* Mutex backs a database lock. */ +#define DB_MUTEX_PROCESS_ONLY 0x08 /* Mutex private to a process. */ +#define DB_MUTEX_SELF_BLOCK 0x10 /* Must be able to block self. */ + +struct __db_mutex_stat { + /* The following fields are maintained in the region's copy. */ + u_int32_t st_mutex_align; /* Mutex alignment */ + u_int32_t st_mutex_tas_spins; /* Mutex test-and-set spins */ + u_int32_t st_mutex_cnt; /* Mutex count */ + u_int32_t st_mutex_free; /* Available mutexes */ + u_int32_t st_mutex_inuse; /* Mutexes in use */ + u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ + + /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* This is the length of the buffer passed to DB_ENV->thread_id_string() */ +#define DB_THREADID_STRLEN 128 + +/******************************************************* + * Locking. + *******************************************************/ +#define DB_LOCKVERSION 1 + +#define DB_FILE_ID_LEN 20 /* Unique file ID length. */ + +/* + * Deadlock detector modes; used in the DB_ENV structure to configure the + * locking subsystem. + */ +#define DB_LOCK_NORUN 0 +#define DB_LOCK_DEFAULT 1 /* Default policy. */ +#define DB_LOCK_EXPIRE 2 /* Only expire locks, no detection. */ +#define DB_LOCK_MAXLOCKS 3 /* Select locker with max locks. */ +#define DB_LOCK_MAXWRITE 4 /* Select locker with max writelocks. */ +#define DB_LOCK_MINLOCKS 5 /* Select locker with min locks. */ +#define DB_LOCK_MINWRITE 6 /* Select locker with min writelocks. */ +#define DB_LOCK_OLDEST 7 /* Select oldest locker. */ +#define DB_LOCK_RANDOM 8 /* Select random locker. */ +#define DB_LOCK_YOUNGEST 9 /* Select youngest locker. */ + +/* Flag values for lock_vec(), lock_get(). */ +#define DB_LOCK_ABORT 0x001 /* Internal: Lock during abort. */ +#define DB_LOCK_NOWAIT 0x002 /* Don't wait on unavailable lock. */ +#define DB_LOCK_RECORD 0x004 /* Internal: record lock. */ +#define DB_LOCK_SET_TIMEOUT 0x008 /* Internal: set lock timeout. */ +#define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ +#define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ + +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + +/* + * Simple R/W lock modes and for multi-granularity intention locking. + * + * !!! + * These values are NOT random, as they are used as an index into the lock + * conflicts arrays, i.e., DB_LOCK_IWRITE must be == 3, and DB_LOCK_IREAD + * must be == 4. + */ +typedef enum { + DB_LOCK_NG=0, /* Not granted. */ + DB_LOCK_READ=1, /* Shared/read. */ + DB_LOCK_WRITE=2, /* Exclusive/write. */ + DB_LOCK_WAIT=3, /* Wait for event */ + DB_LOCK_IWRITE=4, /* Intent exclusive/write. */ + DB_LOCK_IREAD=5, /* Intent to share/read. */ + DB_LOCK_IWR=6, /* Intent to read and write. */ + DB_LOCK_READ_UNCOMMITTED=7, /* Degree 1 isolation. */ + DB_LOCK_WWRITE=8 /* Was Written. */ +} db_lockmode_t; + +/* + * Request types. + */ +typedef enum { + DB_LOCK_DUMP=0, /* Display held locks. */ + DB_LOCK_GET=1, /* Get the lock. */ + DB_LOCK_GET_TIMEOUT=2, /* Get lock with a timeout. */ + DB_LOCK_INHERIT=3, /* Pass locks to parent. */ + DB_LOCK_PUT=4, /* Release the lock. */ + DB_LOCK_PUT_ALL=5, /* Release locker's locks. */ + DB_LOCK_PUT_OBJ=6, /* Release locker's locks on obj. */ + DB_LOCK_PUT_READ=7, /* Release locker's read locks. */ + DB_LOCK_TIMEOUT=8, /* Force a txn to timeout. */ + DB_LOCK_TRADE=9, /* Trade locker ids on a lock. */ + DB_LOCK_UPGRADE_WRITE=10 /* Upgrade writes for dirty reads. */ +} db_lockop_t; + +/* + * Status of a lock. + */ +typedef enum { + DB_LSTAT_ABORTED=1, /* Lock belongs to an aborted txn. */ + DB_LSTAT_EXPIRED=2, /* Lock has expired. */ + DB_LSTAT_FREE=3, /* Lock is unallocated. */ + DB_LSTAT_HELD=4, /* Lock is currently held. */ + DB_LSTAT_PENDING=5, /* Lock was waiting and has been + * promoted; waiting for the owner + * to run and upgrade it to held. */ + DB_LSTAT_WAITING=6 /* Lock is on the wait queue. */ +}db_status_t; + +/* Lock statistics structure. */ +struct __db_lock_stat { + u_int32_t st_id; /* Last allocated locker ID. */ + u_int32_t st_cur_maxid; /* Current maximum unused ID. */ + u_int32_t st_maxlocks; /* Maximum number of locks in table. */ + u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ + u_int32_t st_maxobjects; /* Maximum num of objects in table. */ + int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_nlocks; /* Current number of locks. */ + u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ + u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ + u_int32_t st_nobjects; /* Current number of objects. */ + u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_ndeadlocks; /* Number of lock deadlocks. */ + db_timeout_t st_locktimeout; /* Lock timeout. */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + db_timeout_t st_txntimeout; /* Transaction timeout. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ +}; + +/* + * DB_LOCK_ILOCK -- + * Internal DB access method lock. + */ +struct __db_ilock { + db_pgno_t pgno; /* Page being locked. */ + u_int8_t fileid[DB_FILE_ID_LEN];/* File id. */ +#define DB_HANDLE_LOCK 1 +#define DB_RECORD_LOCK 2 +#define DB_PAGE_LOCK 3 + u_int32_t type; /* Type of lock. */ +}; + +/* + * DB_LOCK -- + * The structure is allocated by the caller and filled in during a + * lock_get request (or a lock_vec/DB_LOCK_GET). + */ +struct __db_lock_u { + roff_t off; /* Offset of the lock in the region */ + u_int32_t ndx; /* Index of the object referenced by + * this lock; used for locking. */ + u_int32_t gen; /* Generation number of this lock. */ + db_lockmode_t mode; /* mode of this lock. */ +}; + +/* Lock request structure. */ +struct __db_lockreq { + db_lockop_t op; /* Operation. */ + db_lockmode_t mode; /* Requested mode. */ + db_timeout_t timeout; /* Time to expire lock. */ + DBT *obj; /* Object being locked. */ + DB_LOCK lock; /* Lock returned. */ +}; + +/******************************************************* + * Logging. + *******************************************************/ +#define DB_LOGVERSION 13 /* Current log version. */ +#define DB_LOGOLDVER 8 /* Oldest log version supported. */ +#define DB_LOGMAGIC 0x040988 + +/* Flag values for DB_ENV->log_archive(). */ +#define DB_ARCH_ABS 0x001 /* Absolute pathnames. */ +#define DB_ARCH_DATA 0x002 /* Data files. */ +#define DB_ARCH_LOG 0x004 /* Log files. */ +#define DB_ARCH_REMOVE 0x008 /* Remove log files. */ + +/* Flag values for DB_ENV->log_put(). */ +#define DB_FLUSH 0x001 /* Flush data to disk (public). */ +#define DB_LOG_CHKPNT 0x002 /* Flush supports a checkpoint */ +#define DB_LOG_COMMIT 0x004 /* Flush supports a commit */ +#define DB_LOG_NOCOPY 0x008 /* Don't copy data */ +#define DB_LOG_NOT_DURABLE 0x010 /* Do not log; keep in memory */ +#define DB_LOG_WRNOSYNC 0x020 /* Write, don't sync log_put */ + +/* + * A DB_LSN has two parts, a fileid which identifies a specific file, and an + * offset within that file. The fileid is an unsigned 4-byte quantity that + * uniquely identifies a file within the log directory -- currently a simple + * counter inside the log. The offset is also an unsigned 4-byte value. The + * log manager guarantees the offset is never more than 4 bytes by switching + * to a new log file before the maximum length imposed by an unsigned 4-byte + * offset is reached. + */ +struct __db_lsn { + u_int32_t file; /* File ID. */ + u_int32_t offset; /* File offset. */ +}; + +/* + * Application-specified log record types start at DB_user_BEGIN, and must not + * equal or exceed DB_debug_FLAG. + * + * DB_debug_FLAG is the high-bit of the u_int32_t that specifies a log record + * type. If the flag is set, it's a log record that was logged for debugging + * purposes only, even if it reflects a database change -- the change was part + * of a non-durable transaction. + */ +#define DB_user_BEGIN 10000 +#define DB_debug_FLAG 0x80000000 + +/* + * DB_LOGC -- + * Log cursor. + */ +struct __db_log_cursor { + DB_ENV *dbenv; /* Enclosing dbenv. */ + + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ + + DBT dbt; /* Return DBT. */ + DB_LSN p_lsn; /* Persist LSN. */ + u_int32_t p_version; /* Persist version. */ + + u_int8_t *bp; /* Allocated read buffer. */ + u_int32_t bp_size; /* Read buffer length in bytes. */ + u_int32_t bp_rlen; /* Read buffer valid data length. */ + DB_LSN bp_lsn; /* Read buffer first byte LSN. */ + + u_int32_t bp_maxrec; /* Max record length in the log file. */ + + /* DB_LOGC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_LOGC *, u_int32_t)); + int (*get) __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); + int (*version) __P((DB_LOGC *, u_int32_t *, u_int32_t)); + /* DB_LOGC PUBLIC HANDLE LIST END */ + +#define DB_LOG_DISK 0x01 /* Log record came from disk. */ +#define DB_LOG_LOCKED 0x02 /* Log region already locked */ +#define DB_LOG_SILENT_ERR 0x04 /* Turn-off error messages. */ + u_int32_t flags; +}; + +/* Log statistics structure. */ +struct __db_log_stat { + u_int32_t st_magic; /* Log file magic number. */ + u_int32_t st_version; /* Log file version number. */ + int st_mode; /* Log file permissions mode. */ + u_int32_t st_lg_bsize; /* Log buffer size. */ + u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_record; /* Records entered into the log. */ + u_int32_t st_w_bytes; /* Bytes to log. */ + u_int32_t st_w_mbytes; /* Megabytes to log. */ + u_int32_t st_wcount; /* Total I/O writes to the log. */ + u_int32_t st_wcount_fill; /* Overflow writes to the log. */ + u_int32_t st_rcount; /* Total I/O reads from the log. */ + u_int32_t st_scount; /* Total syncs to the log. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_cur_file; /* Current log file number. */ + u_int32_t st_cur_offset; /* Current log file offset. */ + u_int32_t st_disk_file; /* Known on disk log file number. */ + u_int32_t st_disk_offset; /* Known on disk log file offset. */ + u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ + u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* + * We need to record the first log record of a transaction. For user + * defined logging this macro returns the place to put that information, + * if it is need in rlsnp, otherwise it leaves it unchanged. We also + * need to track the last record of the transaction, this returns the + * place to put that info. + */ +#define DB_SET_TXN_LSNP(txn, blsnp, llsnp) \ + ((txn)->set_txn_lsnp(txn, blsnp, llsnp)) + +/******************************************************* + * Shared buffer cache (mpool). + *******************************************************/ +/* Flag values for DB_MPOOLFILE->get. */ +#define DB_MPOOL_CREATE 0x001 /* Create a page. */ +#define DB_MPOOL_DIRTY 0x002 /* Get page for an update. */ +#define DB_MPOOL_EDIT 0x004 /* Modify without copying. */ +#define DB_MPOOL_FREE 0x008 /* Free page if present. */ +#define DB_MPOOL_LAST 0x010 /* Return the last page. */ +#define DB_MPOOL_NEW 0x020 /* Create a new page. */ + +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ + +/* Flags values for DB_MPOOLFILE->set_flags. */ +#define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ +#define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ + +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ +typedef enum { + DB_PRIORITY_UNCHANGED=0, + DB_PRIORITY_VERY_LOW=1, + DB_PRIORITY_LOW=2, + DB_PRIORITY_DEFAULT=3, + DB_PRIORITY_HIGH=4, + DB_PRIORITY_VERY_HIGH=5 +} DB_CACHE_PRIORITY; + +/* Per-process DB_MPOOLFILE information. */ +struct __db_mpoolfile { + DB_FH *fhp; /* Underlying file handle. */ + + /* + * !!! + * The ref, pinref and q fields are protected by the region lock. + */ + u_int32_t ref; /* Reference count. */ + + u_int32_t pinref; /* Pinned block reference count. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_mpoolfile) q; + */ + struct { + struct __db_mpoolfile *tqe_next; + struct __db_mpoolfile **tqe_prev; + } q; /* Linked list of DB_MPOOLFILE's. */ + + /* + * !!! + * The rest of the fields (with the exception of the MP_FLUSH flag) + * are not thread-protected, even when they may be modified at any + * time by the application. The reason is the DB_MPOOLFILE handle + * is single-threaded from the viewpoint of the application, and so + * the only fields needing to be thread-protected are those accessed + * by checkpoint or sync threads when using DB_MPOOLFILE structures + * to flush buffers from the cache. + */ + DB_ENV *dbenv; /* Overlying DB_ENV. */ + MPOOLFILE *mfp; /* Underlying MPOOLFILE. */ + + u_int32_t clear_len; /* Cleared length on created pages. */ + u_int8_t /* Unique file ID. */ + fileid[DB_FILE_ID_LEN]; + int ftype; /* File type. */ + int32_t lsn_offset; /* LSN offset in page. */ + u_int32_t gbytes, bytes; /* Maximum file size. */ + DBT *pgcookie; /* Byte-string passed to pgin/pgout. */ + int32_t priority; /* Cache priority. */ + + void *addr; /* Address of mmap'd region. */ + size_t len; /* Length of mmap'd region. */ + + u_int32_t config_flags; /* Flags to DB_MPOOLFILE->set_flags. */ + + /* DB_MPOOLFILE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_MPOOLFILE *, u_int32_t)); + int (*get) + __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); + int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_ftype) __P((DB_MPOOLFILE *, int *)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); + int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); + int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); + int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); + int (*sync) __P((DB_MPOOLFILE *)); + /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ + + /* + * MP_FILEID_SET, MP_OPEN_CALLED and MP_READONLY do not need to be + * thread protected because they are initialized before the file is + * linked onto the per-process lists, and never modified. + * + * MP_FLUSH is thread protected because it is potentially read/set by + * multiple threads of control. + */ +#define MP_FILEID_SET 0x001 /* Application supplied a file ID. */ +#define MP_FLUSH 0x002 /* Was opened to flush a buffer. */ +#define MP_MULTIVERSION 0x004 /* Opened for multiversion access. */ +#define MP_OPEN_CALLED 0x008 /* File opened. */ +#define MP_READONLY 0x010 /* File is readonly. */ + u_int32_t flags; +}; + +/* Mpool statistics structure. */ +struct __db_mpool_stat { + u_int32_t st_gbytes; /* Total cache size: GB. */ + u_int32_t st_bytes; /* Total cache size: B. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ + size_t st_mmapsize; /* Maximum file size for mmap. */ + int st_maxopenfd; /* Maximum number of open fd's. */ + int st_maxwrite; /* Maximum buffers to write. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ + u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ + u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ + u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ + u_int32_t st_page_clean; /* Clean pages. */ + u_int32_t st_page_dirty; /* Dirty pages. */ + u_int32_t st_hash_buckets; /* Number of hash buckets. */ + u_int32_t st_hash_searches; /* Total hash chain searches. */ + u_int32_t st_hash_longest; /* Longest hash chain searched. */ + u_int32_t st_hash_examined; /* Total hash entries searched. */ + u_int32_t st_hash_nowait; /* Hash lock granted with nowait. */ + u_int32_t st_hash_wait; /* Hash lock granted after wait. */ + u_int32_t st_hash_max_nowait; /* Max hash lock granted with nowait. */ + u_int32_t st_hash_max_wait; /* Max hash lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted with nowait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_mvcc_frozen; /* Buffers frozen. */ + u_int32_t st_mvcc_thawed; /* Buffers thawed. */ + u_int32_t st_mvcc_freed; /* Frozen buffers freed. */ + u_int32_t st_alloc; /* Number of page allocations. */ + u_int32_t st_alloc_buckets; /* Buckets checked during allocation. */ + u_int32_t st_alloc_max_buckets; /* Max checked during allocation. */ + u_int32_t st_alloc_pages; /* Pages checked during allocation. */ + u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ + u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* Mpool file statistics structure. */ +struct __db_mpool_fstat { + char *file_name; /* File name. */ + u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ +#endif +}; + +/******************************************************* + * Transactions and recovery. + *******************************************************/ +#define DB_TXNVERSION 1 + +typedef enum { + DB_TXN_ABORT=0, /* Public. */ + DB_TXN_APPLY=1, /* Public. */ + DB_TXN_BACKWARD_ALLOC=2, /* Internal. */ + DB_TXN_BACKWARD_ROLL=3, /* Public. */ + DB_TXN_FORWARD_ROLL=4, /* Public. */ + DB_TXN_OPENFILES=5, /* Internal. */ + DB_TXN_POPENFILES=6, /* Internal. */ + DB_TXN_PRINT=7 /* Public. */ +} db_recops; + +/* + * BACKWARD_ALLOC is used during the forward pass to pick up any aborted + * allocations for files that were created during the forward pass. + * The main difference between _ALLOC and _ROLL is that the entry for + * the file not exist during the rollforward pass. + */ +#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \ + (op) == DB_TXN_BACKWARD_ROLL || (op) == DB_TXN_BACKWARD_ALLOC) +#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL || (op) == DB_TXN_APPLY) + +struct __db_txn { + DB_TXNMGR *mgrp; /* Pointer to transaction manager. */ + DB_TXN *parent; /* Pointer to transaction's parent. */ + + u_int32_t txnid; /* Unique transaction id. */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ + + db_threadid_t tid; /* Thread id for use in MT XA. */ + void *td; /* Detail structure within region. */ + db_timeout_t lock_timeout; /* Timeout for locks for this txn. */ + db_timeout_t expire; /* Time transaction expires. */ + void *txn_list; /* Undo information for parent. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) links; + * TAILQ_ENTRY(__db_txn) xalinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } links; /* Links transactions off manager. */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } xalinks; /* Links active XA transactions. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__kids, __db_txn) kids; + */ + struct __kids { + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } kids; + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__events, __txn_event) events; + */ + struct { + struct __txn_event *tqh_first; + struct __txn_event **tqh_last; + } events; /* Links deferred events. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * STAILQ_HEAD(__logrec, __txn_logrec) logs; + */ + struct { + struct __txn_logrec *stqh_first; + struct __txn_logrec **stqh_last; + } logs; /* Links in memory log records. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) klinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } klinks; + + void *api_internal; /* C++ API private. */ + void *xml_internal; /* XML API private. */ + + u_int32_t cursors; /* Number of cursors open for txn */ + + /* DB_TXN PUBLIC HANDLE LIST BEGIN */ + int (*abort) __P((DB_TXN *)); + int (*commit) __P((DB_TXN *, u_int32_t)); + int (*discard) __P((DB_TXN *, u_int32_t)); + int (*get_name) __P((DB_TXN *, const char **)); + u_int32_t (*id) __P((DB_TXN *)); + int (*prepare) __P((DB_TXN *, u_int8_t *)); + int (*set_name) __P((DB_TXN *, const char *)); + int (*set_timeout) __P((DB_TXN *, db_timeout_t, u_int32_t)); + /* DB_TXN PUBLIC HANDLE LIST END */ + + /* DB_TXN PRIVATE HANDLE LIST BEGIN */ + void (*set_txn_lsnp) __P((DB_TXN *txn, DB_LSN **, DB_LSN **)); + /* DB_TXN PRIVATE HANDLE LIST END */ + +#define TXN_CHILDCOMMIT 0x0001 /* Txn has committed. */ +#define TXN_CDSGROUP 0x0002 /* CDS group handle. */ +#define TXN_COMPENSATE 0x0004 /* Compensating transaction. */ +#define TXN_DEADLOCK 0x0008 /* Txn has deadlocked. */ +#define TXN_LOCKTIMEOUT 0x0010 /* Txn has a lock timeout. */ +#define TXN_MALLOC 0x0020 /* Structure allocated by TXN system. */ +#define TXN_NOSYNC 0x0040 /* Do not sync on prepare and commit. */ +#define TXN_NOWAIT 0x0080 /* Do not wait on locks. */ +#define TXN_PRIVATE 0x0100 /* Txn owned by cursor.. */ +#define TXN_READ_COMMITTED 0x0200 /* Txn has degree 2 isolation. */ +#define TXN_READ_UNCOMMITTED 0x0400 /* Txn has degree 1 isolation. */ +#define TXN_RESTORED 0x0800 /* Txn has been restored. */ +#define TXN_SNAPSHOT 0x1000 /* Snapshot Isolation. */ +#define TXN_SYNC 0x2000 /* Write and sync on prepare/commit. */ +#define TXN_WRITE_NOSYNC 0x4000 /* Write only on prepare/commit. */ + u_int32_t flags; +}; + +#define TXN_SYNC_FLAGS (TXN_SYNC | TXN_NOSYNC | TXN_WRITE_NOSYNC) + +/* + * Structure used for two phase commit interface. Berkeley DB support for two + * phase commit is compatible with the X/Open XA interface. + * + * The XA #define XIDDATASIZE defines the size of a global transaction ID. We + * have our own version here (for name space reasons) which must have the same + * value. + */ +#define DB_XIDDATASIZE 128 +struct __db_preplist { + DB_TXN *txn; + u_int8_t gid[DB_XIDDATASIZE]; +}; + +/* Transaction statistics structure. */ +struct __db_txn_active { + u_int32_t txnid; /* Transaction ID */ + u_int32_t parentid; /* Transaction ID of parent */ + pid_t pid; /* Process owning txn ID */ + db_threadid_t tid; /* Thread owning txn ID */ + + DB_LSN lsn; /* LSN when transaction began */ + + DB_LSN read_lsn; /* Read LSN for MVCC */ + u_int32_t mvcc_ref; /* MVCC reference count */ + +#define TXN_ABORTED 1 +#define TXN_COMMITTED 2 +#define TXN_PREPARED 3 +#define TXN_RUNNING 4 + u_int32_t status; /* Status of the transaction */ + +#define TXN_XA_ABORTED 1 +#define TXN_XA_DEADLOCKED 2 +#define TXN_XA_ENDED 3 +#define TXN_XA_PREPARED 4 +#define TXN_XA_STARTED 5 +#define TXN_XA_SUSPENDED 6 + u_int32_t xa_status; /* XA status */ + + u_int8_t xid[DB_XIDDATASIZE]; /* Global transaction ID */ + char name[51]; /* 50 bytes of name, nul termination */ +}; + +struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS + DB_LSN st_last_ckp; /* lsn of the last checkpoint */ + time_t st_time_ckp; /* time of last checkpoint */ + u_int32_t st_last_txnid; /* last transaction id given out */ + u_int32_t st_maxtxns; /* maximum txns possible */ + u_int32_t st_naborts; /* number of aborted transactions */ + u_int32_t st_nbegins; /* number of begun transactions */ + u_int32_t st_ncommits; /* number of committed transactions */ + u_int32_t st_nactive; /* number of active transactions */ + u_int32_t st_nsnapshot; /* number of snapshot transactions */ + u_int32_t st_maxnactive; /* maximum active transactions */ + u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ + DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/******************************************************* + * Replication. + *******************************************************/ +/* Special, out-of-band environment IDs. */ +#define DB_EID_BROADCAST -1 +#define DB_EID_INVALID -2 + +/* rep_config flag values. */ +#define DB_REP_CONF_BULK 0x0001 /* Bulk transfer. */ +#define DB_REP_CONF_DELAYCLIENT 0x0002 /* Delay client synchronization. */ +#define DB_REP_CONF_NOAUTOINIT 0x0004 /* No automatic client init. */ +#define DB_REP_CONF_NOWAIT 0x0008 /* Don't wait, return error. */ + +/* + * Operation code values for rep_start and/or repmgr_start. Just one of the + * following values should be passed in the flags parameter. (If we ever need + * additional, independent bit flags for these methods, we can start allocating + * them from the high-order byte of the flags word, as we currently do elsewhere + * for DB_AFTER through DB_WRITELOCK and DB_AUTO_COMMIT, etc.) + */ +#define DB_REP_CLIENT 1 +#define DB_REP_ELECTION 2 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 + +/* Acknowledgement policies. */ +#define DB_REPMGR_ACKS_ALL 1 +#define DB_REPMGR_ACKS_ALL_PEERS 2 +#define DB_REPMGR_ACKS_NONE 3 +#define DB_REPMGR_ACKS_ONE 4 +#define DB_REPMGR_ACKS_ONE_PEER 5 +#define DB_REPMGR_ACKS_QUORUM 6 + +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ + +/* Event notification types. */ +#define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ +#define DB_EVENT_PANIC 1 +#define DB_EVENT_REP_CLIENT 2 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 + +/* Flag value for repmgr_add_remote_site. */ +#define DB_REPMGR_PEER 0x01 + +/* Replication Manager site status. */ +struct __db_repmgr_site { + int eid; + char *host; + u_int port; + +#define DB_REPMGR_CONNECTED 0x01 +#define DB_REPMGR_DISCONNECTED 0x02 + u_int32_t status; +}; + +/* Replication statistics. */ +struct __db_rep_stat { + /* !!! + * Many replication statistics fields cannot be protected by a mutex + * without an unacceptable performance penalty, since most message + * processing is done without the need to hold a region-wide lock. + * Fields whose comments end with a '+' may be updated without holding + * the replication or log mutexes (as appropriate), and thus may be + * off somewhat (or, on unreasonable architectures under unlucky + * circumstances, garbaged). + */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_status; /* Current replication status. */ + DB_LSN st_next_lsn; /* Next LSN to use or expect. */ + DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ + db_pgno_t st_next_pg; /* Next pg we expect. */ + db_pgno_t st_waiting_pg; /* pg we're awaiting, if any. */ + + u_int32_t st_dupmasters; /* # of times a duplicate master + condition was detected.+ */ + int st_env_id; /* Current environment ID. */ + int st_env_priority; /* Current environment priority. */ + u_int32_t st_bulk_fills; /* Bulk buffer fills. */ + u_int32_t st_bulk_overflows; /* Bulk buffer overflows. */ + u_int32_t st_bulk_records; /* Bulk records stored. */ + u_int32_t st_bulk_transfers; /* Transfers of bulk buffers. */ + u_int32_t st_client_rerequests; /* Number of forced rerequests. */ + u_int32_t st_client_svc_req; /* Number of client service requests + received by this client. */ + u_int32_t st_client_svc_miss; /* Number of client service requests + missing on this client. */ + u_int32_t st_gen; /* Current generation number. */ + u_int32_t st_egen; /* Current election gen number. */ + u_int32_t st_log_duplicated; /* Log records received multiply.+ */ + u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ + u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ + u_int32_t st_log_records; /* Log records received and put.+ */ + u_int32_t st_log_requested; /* Log recs. missed and requested.+ */ + int st_master; /* Env. ID of the current master. */ + u_int32_t st_master_changes; /* # of times we've switched masters. */ + u_int32_t st_msgs_badgen; /* Messages with a bad generation #.+ */ + u_int32_t st_msgs_processed; /* Messages received and processed.+ */ + u_int32_t st_msgs_recover; /* Messages ignored because this site + was a client in recovery.+ */ + u_int32_t st_msgs_send_failures;/* # of failed message sends.+ */ + u_int32_t st_msgs_sent; /* # of successful message sends.+ */ + u_int32_t st_newsites; /* # of NEWSITE msgs. received.+ */ + int st_nsites; /* Current number of sites we will + assume during elections. */ + u_int32_t st_nthrottles; /* # of times we were throttled. */ + u_int32_t st_outdated; /* # of times we detected and returned + an OUTDATED condition.+ */ + u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ + u_int32_t st_pg_records; /* Pages received and stored.+ */ + u_int32_t st_pg_requested; /* Pages missed and requested.+ */ + u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ + + /* Elections generally. */ + u_int32_t st_elections; /* # of elections held.+ */ + u_int32_t st_elections_won; /* # of elections won by this site.+ */ + + /* Statistics about an in-progress election. */ + int st_election_cur_winner; /* Current front-runner. */ + u_int32_t st_election_gen; /* Election generation number. */ + DB_LSN st_election_lsn; /* Max. LSN of current winner. */ + int st_election_nsites; /* # of "registered voters". */ + int st_election_nvotes; /* # of "registered voters" needed. */ + int st_election_priority; /* Current election priority. */ + int st_election_status; /* Current election status. */ + u_int32_t st_election_tiebreaker;/* Election tiebreaker value. */ + int st_election_votes; /* Votes received in this round. */ + u_int32_t st_election_sec; /* Last election time seconds. */ + u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ +}; + +/******************************************************* + * Sequences. + *******************************************************/ +/* + * The storage record for a sequence. + */ +struct __db_seq_record { + u_int32_t seq_version; /* Version size/number. */ +#define DB_SEQ_DEC 0x00000001 /* Decrement sequence. */ +#define DB_SEQ_INC 0x00000002 /* Increment sequence. */ +#define DB_SEQ_RANGE_SET 0x00000004 /* Range set (internal). */ +#define DB_SEQ_WRAP 0x00000008 /* Wrap sequence at min/max. */ +#define DB_SEQ_WRAPPED 0x00000010 /* Just wrapped (internal). */ + u_int32_t flags; /* Flags. */ + db_seq_t seq_value; /* Current value. */ + db_seq_t seq_max; /* Max permitted. */ + db_seq_t seq_min; /* Min permitted. */ +}; + +/* + * Handle for a sequence object. + */ +struct __db_sequence { + DB *seq_dbp; /* DB handle for this sequence. */ + db_mutex_t mtx_seq; /* Mutex if sequence is threaded. */ + DB_SEQ_RECORD *seq_rp; /* Pointer to current data. */ + DB_SEQ_RECORD seq_record; /* Data from DB_SEQUENCE. */ + int32_t seq_cache_size; /* Number of values cached. */ + db_seq_t seq_last_value; /* Last value cached. */ + DBT seq_key; /* DBT pointing to sequence key. */ + DBT seq_data; /* DBT pointing to seq_record. */ + + /* API-private structure: used by C++ and Java. */ + void *api_internal; + + /* DB_SEQUENCE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_SEQUENCE *, u_int32_t)); + int (*get) __P((DB_SEQUENCE *, + DB_TXN *, int32_t, db_seq_t *, u_int32_t)); + int (*get_cachesize) __P((DB_SEQUENCE *, int32_t *)); + int (*get_db) __P((DB_SEQUENCE *, DB **)); + int (*get_flags) __P((DB_SEQUENCE *, u_int32_t *)); + int (*get_key) __P((DB_SEQUENCE *, DBT *)); + int (*get_range) __P((DB_SEQUENCE *, + db_seq_t *, db_seq_t *)); + int (*initial_value) __P((DB_SEQUENCE *, db_seq_t)); + int (*open) __P((DB_SEQUENCE *, + DB_TXN *, DBT *, u_int32_t)); + int (*remove) __P((DB_SEQUENCE *, DB_TXN *, u_int32_t)); + int (*set_cachesize) __P((DB_SEQUENCE *, int32_t)); + int (*set_flags) __P((DB_SEQUENCE *, u_int32_t)); + int (*set_range) __P((DB_SEQUENCE *, db_seq_t, db_seq_t)); + int (*stat) __P((DB_SEQUENCE *, + DB_SEQUENCE_STAT **, u_int32_t)); + int (*stat_print) __P((DB_SEQUENCE *, u_int32_t)); + /* DB_SEQUENCE PUBLIC HANDLE LIST END */ +}; + +struct __db_seq_stat { + u_int32_t st_wait; /* Sequence lock granted w/o wait. */ + u_int32_t st_nowait; /* Sequence lock granted after wait. */ + db_seq_t st_current; /* Current value in db. */ + db_seq_t st_value; /* Current cached value. */ + db_seq_t st_last_value; /* Last cached value. */ + db_seq_t st_min; /* Minimum value. */ + db_seq_t st_max; /* Maximum value. */ + int32_t st_cache_size; /* Cache size. */ + u_int32_t st_flags; /* Flag value. */ +}; + +/******************************************************* + * Access methods. + *******************************************************/ +typedef enum { + DB_BTREE=1, + DB_HASH=2, + DB_RECNO=3, + DB_QUEUE=4, + DB_UNKNOWN=5 /* Figure it out on open. */ +} DBTYPE; + +#define DB_RENAMEMAGIC 0x030800 /* File has been renamed. */ + +#define DB_BTREEVERSION 9 /* Current btree version. */ +#define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ +#define DB_BTREEMAGIC 0x053162 + +#define DB_HASHVERSION 9 /* Current hash version. */ +#define DB_HASHOLDVER 7 /* Oldest hash version supported. */ +#define DB_HASHMAGIC 0x061561 + +#define DB_QAMVERSION 4 /* Current queue version. */ +#define DB_QAMOLDVER 3 /* Oldest queue version supported. */ +#define DB_QAMMAGIC 0x042253 + +#define DB_SEQUENCE_VERSION 2 /* Current sequence version. */ +#define DB_SEQUENCE_OLDVER 1 /* Oldest sequence version supported. */ + +/* + * DB access method and cursor operation values. Each value is an operation + * code to which additional bit flags are added. + */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ + +/* This has to change when the max opcode hits 255. */ +#define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ + +/* + * Masks for flags that can be OR'd into DB access method and cursor + * operation values. Three top bits have already been taken: + * + * DB_AUTO_COMMIT 0x02000000 + * DB_READ_COMMITTED 0x04000000 + * DB_READ_UNCOMMITTED 0x08000000 + */ +#define DB_MULTIPLE 0x10000000 /* Return multiple data values. */ +#define DB_MULTIPLE_KEY 0x20000000 /* Return multiple data/key pairs. */ +#define DB_RMW 0x40000000 /* Acquire write lock immediately. */ + +/* + * DB (user visible) error return codes. + * + * !!! + * We don't want our error returns to conflict with other packages where + * possible, so pick a base error value that's hopefully not common. We + * document that we own the error name space from -30,800 to -30,999. + */ +/* DB (public) error return codes. */ +#define DB_BUFFER_SMALL (-30999)/* User memory too small for return. */ +#define DB_DONOTINDEX (-30998)/* "Null" return from 2ndary callbk. */ +#define DB_KEYEMPTY (-30997)/* Key/data deleted or never created. */ +#define DB_KEYEXIST (-30996)/* The key/data pair already exists. */ +#define DB_LOCK_DEADLOCK (-30995)/* Deadlock. */ +#define DB_LOCK_NOTGRANTED (-30994)/* Lock unavailable. */ +#define DB_LOG_BUFFER_FULL (-30993)/* In-memory log buffer full. */ +#define DB_NOSERVER (-30992)/* Server panic return. */ +#define DB_NOSERVER_HOME (-30991)/* Bad home sent to server. */ +#define DB_NOSERVER_ID (-30990)/* Bad ID sent to server. */ +#define DB_NOTFOUND (-30989)/* Key/data pair not found (EOF). */ +#define DB_OLD_VERSION (-30988)/* Out-of-date version. */ +#define DB_PAGE_NOTFOUND (-30987)/* Requested page not found. */ +#define DB_REP_DUPMASTER (-30986)/* There are two masters. */ +#define DB_REP_HANDLE_DEAD (-30985)/* Rolled back a commit. */ +#define DB_REP_HOLDELECTION (-30984)/* Time to hold an election. */ +#define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ +#define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ +#define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ +#define DB_REP_NEWSITE (-30978)/* New site entered system. */ +#define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ +#define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ +#define DB_RUNRECOVERY (-30975)/* Panic return. */ +#define DB_SECONDARY_BAD (-30974)/* Secondary index corrupt. */ +#define DB_VERIFY_BAD (-30973)/* Verify failed; bad format. */ +#define DB_VERSION_MISMATCH (-30972)/* Environment version mismatch. */ + +/* DB (private) error return codes. */ +#define DB_ALREADY_ABORTED (-30899) +#define DB_DELETED (-30898)/* Recovery file marked deleted. */ +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent + didn't know it was a parent. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ + +/* Database handle. */ +struct __db { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ + + /* Callbacks. */ + int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); + void (*db_feedback) __P((DB *, int, int)); + int (*dup_compare) __P((DB *, const DBT *, const DBT *)); + + void *app_private; /* Application-private handle. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + DB_ENV *dbenv; /* Backing environment. */ + + DBTYPE type; /* DB access method type. */ + + DB_MPOOLFILE *mpf; /* Backing buffer pool. */ + + db_mutex_t mutex; /* Synchronization for free threading */ + + char *fname, *dname; /* File/database passed to DB->open. */ + u_int32_t open_flags; /* Flags passed to DB->open. */ + + u_int8_t fileid[DB_FILE_ID_LEN];/* File's unique ID for locking. */ + + u_int32_t adj_fileid; /* File's unique ID for curs. adj. */ + +#define DB_LOGFILEID_INVALID -1 + FNAME *log_filename; /* File's naming info for logging. */ + + db_pgno_t meta_pgno; /* Meta page number */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ + DB_LOCK handle_lock; /* Lock held on this handle. */ + + u_int cl_id; /* RPC: remote client id. */ + + time_t timestamp; /* Handle timestamp for replication. */ + u_int32_t fid_gen; /* Rep generation number for fids. */ + + /* + * Returned data memory for DB->get() and friends. + */ + DBT my_rskey; /* Secondary key. */ + DBT my_rkey; /* [Primary] key. */ + DBT my_rdata; /* Data. */ + + /* + * !!! + * Some applications use DB but implement their own locking outside of + * DB. If they're using fcntl(2) locking on the underlying database + * file, and we open and close a file descriptor for that file, we will + * discard their locks. The DB_FCNTL_LOCKING flag to DB->open is an + * undocumented interface to support this usage which leaves any file + * descriptors we open until DB->close. This will only work with the + * DB->open interface and simple caches, e.g., creating a transaction + * thread may open/close file descriptors this flag doesn't protect. + * Locking with fcntl(2) on a file that you don't own is a very, very + * unsafe thing to do. 'Nuff said. + */ + DB_FH *saved_open_fhp; /* Saved file handle. */ + + /* + * Linked list of DBP's, linked from the DB_ENV, used to keep track + * of all open db handles for cursor adjustment. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db) dblistlinks; + */ + struct { + struct __db *tqe_next; + struct __db **tqe_prev; + } dblistlinks; + + /* + * Cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__cq_fq, __dbc) free_queue; + * TAILQ_HEAD(__cq_aq, __dbc) active_queue; + * TAILQ_HEAD(__cq_jq, __dbc) join_queue; + */ + struct __cq_fq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } free_queue; + struct __cq_aq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } active_queue; + struct __cq_jq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } join_queue; + + /* + * Secondary index support. + * + * Linked list of secondary indices -- set in the primary. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_HEAD(s_secondaries, __db); + */ + struct { + struct __db *lh_first; + } s_secondaries; + + /* + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). + * + * !!! + * Note that these are synchronized by the primary's mutex, but + * filled in in the secondaries. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_ENTRY(__db) s_links; + */ + struct { + struct __db *le_next; + struct __db **le_prev; + } s_links; + u_int32_t s_refcnt; + + /* Secondary callback and free functions -- set in the secondary. */ + int (*s_callback) __P((DB *, const DBT *, const DBT *, DBT *)); + + /* Reference to primary -- set in the secondary. */ + DB *s_primary; + +#define DB_ASSOC_IMMUTABLE_KEY 0x00000001 /* Secondary key is immutable. */ + + /* Flags passed to associate -- set in the secondary. */ + u_int32_t s_assoc_flags; + + /* API-private structure: used by DB 1.85, C++, Java, Perl and Tcl */ + void *api_internal; + + /* Subsystem-private structure. */ + void *bt_internal; /* Btree/Recno access method. */ + void *h_internal; /* Hash access method. */ + void *q_internal; /* Queue access method. */ + void *xa_internal; /* XA. */ + + /* DB PUBLIC HANDLE LIST BEGIN */ + int (*associate) __P((DB *, DB_TXN *, DB *, + int (*)(DB *, const DBT *, const DBT *, DBT *), u_int32_t)); + int (*close) __P((DB *, u_int32_t)); + int (*compact) __P((DB *, + DB_TXN *, DBT *, DBT *, DB_COMPACT *, u_int32_t, DBT *)); + int (*cursor) __P((DB *, DB_TXN *, DBC **, u_int32_t)); + int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + void (*err) __P((DB *, int, const char *, ...)); + void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + int (*fd) __P((DB *, int *)); + int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*get_bt_minkey) __P((DB *, u_int32_t *)); + int (*get_byteswapped) __P((DB *, int *)); + int (*get_cachesize) __P((DB *, u_int32_t *, u_int32_t *, int *)); + int (*get_dbname) __P((DB *, const char **, const char **)); + int (*get_encrypt_flags) __P((DB *, u_int32_t *)); + DB_ENV *(*get_env) __P((DB *)); + void (*get_errfile) __P((DB *, FILE **)); + void (*get_errpfx) __P((DB *, const char **)); + int (*get_flags) __P((DB *, u_int32_t *)); + int (*get_h_ffactor) __P((DB *, u_int32_t *)); + int (*get_h_nelem) __P((DB *, u_int32_t *)); + int (*get_lorder) __P((DB *, int *)); + DB_MPOOLFILE *(*get_mpf) __P((DB *)); + void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); + int (*get_open_flags) __P((DB *, u_int32_t *)); + int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); + int (*get_q_extentsize) __P((DB *, u_int32_t *)); + int (*get_re_delim) __P((DB *, int *)); + int (*get_re_len) __P((DB *, u_int32_t *)); + int (*get_re_pad) __P((DB *, int *)); + int (*get_re_source) __P((DB *, const char **)); + int (*get_transactional) __P((DB *)); + int (*get_type) __P((DB *, DBTYPE *)); + int (*join) __P((DB *, DBC **, DBC **, u_int32_t)); + int (*key_range) + __P((DB *, DB_TXN *, DBT *, DB_KEY_RANGE *, u_int32_t)); + int (*open) __P((DB *, + DB_TXN *, const char *, const char *, DBTYPE, u_int32_t, int)); + int (*pget) __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*remove) __P((DB *, const char *, const char *, u_int32_t)); + int (*rename) __P((DB *, + const char *, const char *, const char *, u_int32_t)); + int (*set_alloc) __P((DB *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_append_recno) __P((DB *, int (*)(DB *, DBT *, db_recno_t))); + int (*set_bt_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_bt_minkey) __P((DB *, u_int32_t)); + int (*set_bt_prefix) + __P((DB *, size_t (*)(DB *, const DBT *, const DBT *))); + int (*set_cachesize) __P((DB *, u_int32_t, u_int32_t, int)); + int (*set_dup_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_encrypt) __P((DB *, const char *, u_int32_t)); + void (*set_errcall) __P((DB *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB *, FILE *)); + void (*set_errpfx) __P((DB *, const char *)); + int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); + int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_h_ffactor) __P((DB *, u_int32_t)); + int (*set_h_hash) + __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); + int (*set_h_nelem) __P((DB *, u_int32_t)); + int (*set_lorder) __P((DB *, int)); + void (*set_msgcall) __P((DB *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB *, FILE *)); + int (*set_pagesize) __P((DB *, u_int32_t)); + int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); + int (*set_q_extentsize) __P((DB *, u_int32_t)); + int (*set_re_delim) __P((DB *, int)); + int (*set_re_len) __P((DB *, u_int32_t)); + int (*set_re_pad) __P((DB *, int)); + int (*set_re_source) __P((DB *, const char *)); + int (*stat) __P((DB *, DB_TXN *, void *, u_int32_t)); + int (*stat_print) __P((DB *, u_int32_t)); + int (*sync) __P((DB *, u_int32_t)); + int (*truncate) __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); + int (*upgrade) __P((DB *, const char *, u_int32_t)); + int (*verify) + __P((DB *, const char *, const char *, FILE *, u_int32_t)); + /* DB PUBLIC HANDLE LIST END */ + + /* DB PRIVATE HANDLE LIST BEGIN */ + int (*dump) __P((DB *, const char *, + int (*)(void *, const void *), void *, int, int)); + int (*db_am_remove) __P((DB *, DB_TXN *, const char *, const char *)); + int (*db_am_rename) __P((DB *, DB_TXN *, + const char *, const char *, const char *)); + /* DB PRIVATE HANDLE LIST END */ + + /* + * Never called; these are a place to save function pointers + * so that we can undo an associate. + */ + int (*stored_get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*stored_close) __P((DB *, u_int32_t)); + +#define DB_OK_BTREE 0x01 +#define DB_OK_HASH 0x02 +#define DB_OK_QUEUE 0x04 +#define DB_OK_RECNO 0x08 + u_int32_t am_ok; /* Legal AM choices. */ + + /* + * This field really ought to be an AM_FLAG, but we have + * have run out of bits. If/when we decide to split up + * the flags, we can incorporate it. + */ + int preserve_fid; /* Do not free fileid on close. */ + +#define DB_AM_CHKSUM 0x00000001 /* Checksumming */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ + u_int32_t orig_flags; /* Flags at open, for refresh */ + u_int32_t flags; +}; + +/* + * Macros for bulk get. These are only intended for the C API. + * For C++, use DbMultiple*Iterator. + */ +#define DB_MULTIPLE_INIT(pointer, dbt) \ + (pointer = (u_int8_t *)(dbt)->data + \ + (dbt)->ulen - sizeof(u_int32_t)) +#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + if (retdlen == 0 && \ + retdata == (u_int8_t *)(dbt)->data) \ + retdata = NULL; \ + } while (0) +#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey, retklen, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + retkey = NULL; \ + pointer = NULL; \ + break; \ + } \ + retkey = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retklen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)0) { \ + recno = 0; \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + recno = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +/******************************************************* + * Access method cursors. + *******************************************************/ +struct __dbc { + DB *dbp; /* Related DB access method. */ + DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ + + /* + * Active/free cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__dbc) links; + */ + struct { + DBC *tqe_next; + DBC **tqe_prev; + } links; + + /* + * The DBT *'s below are used by the cursor routines to return + * data to the user when DBT flags indicate that DB should manage + * the returned memory. They point at a DBT containing the buffer + * and length that will be used, and "belonging" to the handle that + * should "own" this memory. This may be a "my_*" field of this + * cursor--the default--or it may be the corresponding field of + * another cursor, a DB handle, a join cursor, etc. In general, it + * will be whatever handle the user originally used for the current + * DB interface call. + */ + DBT *rskey; /* Returned secondary key. */ + DBT *rkey; /* Returned [primary] key. */ + DBT *rdata; /* Returned data. */ + + DBT my_rskey; /* Space for returned secondary key. */ + DBT my_rkey; /* Space for returned [primary] key. */ + DBT my_rdata; /* Space for returned data. */ + + void *lref; /* Reference to default locker. */ + DB_LOCKER *locker; /* Locker for this operation. */ + DBT lock_dbt; /* DBT referencing lock. */ + DB_LOCK_ILOCK lock; /* Object to be locked. */ + DB_LOCK mylock; /* CDB lock held on this cursor. */ + + u_int cl_id; /* Remote client id. */ + + DBTYPE dbtype; /* Cursor type. */ + + DBC_INTERNAL *internal; /* Access method private. */ + + /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ + int (*c_close) __P((DBC *)); + int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*c_del) __P((DBC *, u_int32_t)); + int (*c_dup) __P((DBC *, DBC **, u_int32_t)); + int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); + + /* DBC PRIVATE HANDLE LIST BEGIN */ + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); + /* DBC PRIVATE HANDLE LIST END */ + +/* + * DBC_DONTLOCK and DBC_RECOVER are used during recovery and transaction + * abort. If a transaction is being aborted or recovered then DBC_RECOVER + * will be set and locking and logging will be disabled on this cursor. If + * we are performing a compensating transaction (e.g. free page processing) + * then DB_DONTLOCK will be set to inhibit locking, but logging will still + * be required. DB_DONTLOCK is also used if the whole database is locked. + */ +#define DBC_ACTIVE 0x0001 /* Cursor in use. */ +#define DBC_DONTLOCK 0x0002 /* Don't lock on this cursor. */ +#define DBC_MULTIPLE 0x0004 /* Return Multiple data. */ +#define DBC_MULTIPLE_KEY 0x0008 /* Return Multiple keys and data. */ +#define DBC_OPD 0x0010 /* Cursor references off-page dups. */ +#define DBC_OWN_LID 0x0020 /* Free lock id on destroy. */ +#define DBC_READ_COMMITTED 0x0040 /* Cursor has degree 2 isolation. */ +#define DBC_READ_UNCOMMITTED 0x0080 /* Cursor has degree 1 isolation. */ +#define DBC_RECOVER 0x0100 /* Recovery cursor; don't log/lock. */ +#define DBC_RMW 0x0200 /* Acquire write flag in read op. */ +#define DBC_TRANSIENT 0x0400 /* Cursor is transient. */ +#define DBC_WRITECURSOR 0x0800 /* Cursor may be used to write (CDB). */ +#define DBC_WRITER 0x1000 /* Cursor immediately writing (CDB). */ + u_int32_t flags; +}; + +/* Key range statistics structure */ +struct __key_range { + double less; + double equal; + double greater; +}; + +/* Btree/Recno statistics structure. */ +struct __db_bt_stat { + u_int32_t bt_magic; /* Magic number. */ + u_int32_t bt_version; /* Version number. */ + u_int32_t bt_metaflags; /* Metadata flags. */ + u_int32_t bt_nkeys; /* Number of unique keys. */ + u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ + u_int32_t bt_pagesize; /* Page size. */ + u_int32_t bt_minkey; /* Minkey value. */ + u_int32_t bt_re_len; /* Fixed-length record length. */ + u_int32_t bt_re_pad; /* Fixed-length record pad. */ + u_int32_t bt_levels; /* Tree levels. */ + u_int32_t bt_int_pg; /* Internal pages. */ + u_int32_t bt_leaf_pg; /* Leaf pages. */ + u_int32_t bt_dup_pg; /* Duplicate pages. */ + u_int32_t bt_over_pg; /* Overflow pages. */ + u_int32_t bt_empty_pg; /* Empty pages. */ + u_int32_t bt_free; /* Pages on the free list. */ + u_int32_t bt_int_pgfree; /* Bytes free in internal pages. */ + u_int32_t bt_leaf_pgfree; /* Bytes free in leaf pages. */ + u_int32_t bt_dup_pgfree; /* Bytes free in duplicate pages. */ + u_int32_t bt_over_pgfree; /* Bytes free in overflow pages. */ +}; + +struct __db_compact { + /* Input Parameters. */ + u_int32_t compact_fillpercent; /* Desired fillfactor: 1-100 */ + db_timeout_t compact_timeout; /* Lock timeout. */ + u_int32_t compact_pages; /* Max pages to process. */ + /* Output Stats. */ + u_int32_t compact_pages_free; /* Number of pages freed. */ + u_int32_t compact_pages_examine; /* Number of pages examine. */ + u_int32_t compact_levels; /* Number of levels removed. */ + u_int32_t compact_deadlock; /* Number of deadlocks. */ + db_pgno_t compact_pages_truncated; /* Pages truncated to OS. */ + /* Internal. */ + db_pgno_t compact_truncate; /* Page number for truncation */ +}; + +/* Hash statistics structure. */ +struct __db_h_stat { + u_int32_t hash_magic; /* Magic number. */ + u_int32_t hash_version; /* Version number. */ + u_int32_t hash_metaflags; /* Metadata flags. */ + u_int32_t hash_nkeys; /* Number of unique keys. */ + u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ + u_int32_t hash_pagesize; /* Page size. */ + u_int32_t hash_ffactor; /* Fill factor specified at create. */ + u_int32_t hash_buckets; /* Number of hash buckets. */ + u_int32_t hash_free; /* Pages on the free list. */ + u_int32_t hash_bfree; /* Bytes free on bucket pages. */ + u_int32_t hash_bigpages; /* Number of big key/data pages. */ + u_int32_t hash_big_bfree; /* Bytes free on big item pages. */ + u_int32_t hash_overflows; /* Number of overflow pages. */ + u_int32_t hash_ovfl_free; /* Bytes free on ovfl pages. */ + u_int32_t hash_dup; /* Number of dup pages. */ + u_int32_t hash_dup_free; /* Bytes free on duplicate pages. */ +}; + +/* Queue statistics structure. */ +struct __db_qam_stat { + u_int32_t qs_magic; /* Magic number. */ + u_int32_t qs_version; /* Version number. */ + u_int32_t qs_metaflags; /* Metadata flags. */ + u_int32_t qs_nkeys; /* Number of unique keys. */ + u_int32_t qs_ndata; /* Number of data items. */ + u_int32_t qs_pagesize; /* Page size. */ + u_int32_t qs_extentsize; /* Pages per extent. */ + u_int32_t qs_pages; /* Data pages. */ + u_int32_t qs_re_len; /* Fixed-length record length. */ + u_int32_t qs_re_pad; /* Fixed-length record pad. */ + u_int32_t qs_pgfree; /* Bytes free in data pages. */ + u_int32_t qs_first_recno; /* First not deleted record. */ + u_int32_t qs_cur_recno; /* Next available record number. */ +}; + +/******************************************************* + * Environment. + *******************************************************/ +#define DB_REGION_MAGIC 0x120897 /* Environment magic number. */ + +/* Database Environment handle. */ +struct __db_env { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + /* Error message callback. */ + void (*db_errcall) __P((const DB_ENV *, const char *, const char *)); + FILE *db_errfile; /* Error message file stream. */ + const char *db_errpfx; /* Error message prefix. */ + + FILE *db_msgfile; /* Statistics message file stream. */ + /* Statistics message callback. */ + void (*db_msgcall) __P((const DB_ENV *, const char *)); + + /* Other Callbacks. */ + void (*db_feedback) __P((DB_ENV *, int, int)); + void (*db_paniccall) __P((DB_ENV *, int)); + void (*db_event_func) __P((DB_ENV *, u_int32_t, void *)); + + /* App-specified alloc functions. */ + void *(*db_malloc) __P((size_t)); + void *(*db_realloc) __P((void *, size_t)); + void (*db_free) __P((void *)); + + /* Application callback to copy data to/from a custom data source. */ +#define DB_USERCOPY_GETDATA 0x0001 +#define DB_USERCOPY_SETDATA 0x0002 + int (*dbt_usercopy) + __P((DBT *, u_int32_t, void *, u_int32_t, u_int32_t)); + + /* + * Currently, the verbose list is a bit field with room for 32 + * entries. There's no reason that it needs to be limited, if + * there are ever more than 32 entries, convert to a bit array. + */ +#define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ + u_int32_t verbose; /* Verbose output. */ + + void *app_private; /* Application-private handle. */ + + int (*app_dispatch) /* User-specified recovery dispatch. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops)); + + /* Mutexes. */ + u_int32_t mutex_align; /* Mutex alignment */ + u_int32_t mutex_cnt; /* Number of mutexes to configure */ + u_int32_t mutex_inc; /* Number of mutexes to add */ + u_int32_t mutex_tas_spins;/* Test-and-set spin count */ + + struct { + int alloc_id; /* Allocation ID argument */ + u_int32_t flags; /* Flags argument */ + } *mutex_iq; /* Initial mutexes queue */ + u_int mutex_iq_next; /* Count of initial mutexes */ + u_int mutex_iq_max; /* Maximum initial mutexes */ + + /* Locking. */ + u_int8_t *lk_conflicts; /* Two dimensional conflict matrix. */ + int lk_modes; /* Number of lock modes in table. */ + u_int32_t lk_max; /* Maximum number of locks. */ + u_int32_t lk_max_lockers;/* Maximum number of lockers. */ + u_int32_t lk_max_objects;/* Maximum number of locked objects. */ + u_int32_t lk_detect; /* Deadlock detect on all conflicts. */ + db_timeout_t lk_timeout; /* Lock timeout period. */ + + /* Logging. */ + u_int32_t lg_bsize; /* Buffer size. */ + u_int32_t lg_size; /* Log file size. */ + u_int32_t lg_regionmax; /* Region size. */ + int lg_filemode; /* Log file permission mode. */ + + /* Memory pool. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ + size_t mp_mmapsize; /* Maximum file size for mmap. */ + int mp_maxopenfd; /* Maximum open file descriptors. */ + int mp_maxwrite; /* Maximum buffers to write. */ + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ + + /* Transactions. */ + u_int32_t tx_max; /* Maximum number of transactions. */ + time_t tx_timestamp; /* Recover to specific timestamp. */ + db_timeout_t tx_timeout; /* Timeout for transactions. */ + + /* Thread tracking. */ + u_int32_t thr_nbucket; /* Number of hash buckets. */ + u_int32_t thr_max; /* Max before garbage collection. */ + void *thr_hashtab; /* Hash table of DB_THREAD_INFO. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + + pid_t pid_cache; /* Cached process ID. */ + + /* User files, paths. */ + char *db_home; /* Database home. */ + char *db_log_dir; /* Database log file directory. */ + char *db_tmp_dir; /* Database tmp file directory. */ + + char **db_data_dir; /* Database data file directories. */ + int data_cnt; /* Database data file slots. */ + int data_next; /* Next Database data file slot. */ + + int db_mode; /* Default open permissions. */ + int dir_mode; /* Intermediate directory perms. */ + void *env_lref; /* Locker in non-threaded handles. */ + u_int32_t open_flags; /* Flags passed to DB_ENV->open. */ + + void *reginfo; /* REGINFO structure reference. */ + DB_FH *lockfhp; /* fcntl(2) locking file handle. */ + + DB_FH *registry; /* DB_REGISTER file handle. */ + u_int32_t registry_off; /* + * Offset of our slot. We can't use + * off_t because its size depends on + * build settings. + */ + + /* Return IDs. */ + void (*thread_id) __P((DB_ENV *, pid_t *, db_threadid_t *)); + /* Return if IDs alive. */ + int (*is_alive) + __P((DB_ENV *, pid_t, db_threadid_t, u_int32_t)); + /* Format IDs into a string. */ + char *(*thread_id_string) + __P((DB_ENV *, pid_t, db_threadid_t, char *)); + + int (**recover_dtab) /* Dispatch table for recover funcs. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); + size_t recover_dtab_size; + /* Slots in the dispatch table. */ + + void *cl_handle; /* RPC: remote client handle. */ + u_int cl_id; /* RPC: remote client env id. */ + + int db_ref; /* DB reference count. */ + + long shm_key; /* shmget(2) key. */ + + /* + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__dblist, __db); + */ + db_mutex_t mtx_dblist; /* Mutex. */ + struct __dblist { + struct __db *tqh_first; + struct __db **tqh_last; + } dblist; + + /* + * XA support. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_env) links; + * TAILQ_HEAD(xa_txn, __db_txn); + */ + struct { + struct __db_env *tqe_next; + struct __db_env **tqe_prev; + } links; + struct __xa_txn { /* XA Active Transactions. */ + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } xa_txn; + int xa_rmid; /* XA Resource Manager ID. */ + + char *passwd; /* Cryptography support. */ + size_t passwd_len; + void *crypto_handle; /* Primary handle. */ + db_mutex_t mtx_mt; /* Mersenne Twister mutex. */ + int mti; /* Mersenne Twister index. */ + u_long *mt; /* Mersenne Twister state vector. */ + + /* API-private structure. */ + void *api1_internal; /* C++, Perl API private */ + void *api2_internal; /* Java API private */ + + DB_LOCKTAB *lk_handle; /* Lock handle. */ + DB_LOG *lg_handle; /* Log handle. */ + DB_MPOOL *mp_handle; /* Mpool handle. */ + DB_MUTEXMGR *mutex_handle; /* Mutex handle. */ + DB_REP *rep_handle; /* Replication handle. */ + DB_TXNMGR *tx_handle; /* Txn handle. */ + + /* DB_ENV PUBLIC HANDLE LIST BEGIN */ + int (*cdsgroup_begin) __P((DB_ENV *, DB_TXN **)); + int (*close) __P((DB_ENV *, u_int32_t)); + int (*dbremove) __P((DB_ENV *, + DB_TXN *, const char *, const char *, u_int32_t)); + int (*dbrename) __P((DB_ENV *, + DB_TXN *, const char *, const char *, const char *, u_int32_t)); + void (*err) __P((const DB_ENV *, int, const char *, ...)); + void (*errx) __P((const DB_ENV *, const char *, ...)); + int (*failchk) __P((DB_ENV *, u_int32_t)); + int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*get_data_dirs) __P((DB_ENV *, const char ***)); + int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); + void (*get_errfile) __P((DB_ENV *, FILE **)); + void (*get_errpfx) __P((DB_ENV *, const char **)); + int (*get_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_home) __P((DB_ENV *, const char **)); + int (*get_lg_bsize) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_dir) __P((DB_ENV *, const char **)); + int (*get_lg_filemode) __P((DB_ENV *, int *)); + int (*get_lg_max) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_regionmax) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_conflicts) __P((DB_ENV *, const u_int8_t **, int *)); + int (*get_lk_detect) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_lockers) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); + int (*get_mp_max_openfd) __P((DB_ENV *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); + int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); + void (*get_msgfile) __P((DB_ENV *, FILE **)); + int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); + int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); + int (*get_tmp_dir) __P((DB_ENV *, const char **)); + int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); + int (*get_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*get_verbose) __P((DB_ENV *, u_int32_t, int *)); + int (*is_bigendian) __P((void)); + int (*lock_detect) __P((DB_ENV *, u_int32_t, u_int32_t, int *)); + int (*lock_get) __P((DB_ENV *, + u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); + int (*lock_id) __P((DB_ENV *, u_int32_t *)); + int (*lock_id_free) __P((DB_ENV *, u_int32_t)); + int (*lock_put) __P((DB_ENV *, DB_LOCK *)); + int (*lock_stat) __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); + int (*lock_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lock_vec) __P((DB_ENV *, + u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); + int (*log_archive) __P((DB_ENV *, char **[], u_int32_t)); + int (*log_cursor) __P((DB_ENV *, DB_LOGC **, u_int32_t)); + int (*log_file) __P((DB_ENV *, const DB_LSN *, char *, size_t)); + int (*log_flush) __P((DB_ENV *, const DB_LSN *)); + int (*log_printf) __P((DB_ENV *, DB_TXN *, const char *, ...)); + int (*log_put) __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); + int (*log_stat) __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); + int (*log_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lsn_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*memp_fcreate) __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); + int (*memp_register) __P((DB_ENV *, int, int (*)(DB_ENV *, + db_pgno_t, void *, DBT *), int (*)(DB_ENV *, + db_pgno_t, void *, DBT *))); + int (*memp_stat) __P((DB_ENV *, + DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); + int (*memp_stat_print) __P((DB_ENV *, u_int32_t)); + int (*memp_sync) __P((DB_ENV *, DB_LSN *)); + int (*memp_trickle) __P((DB_ENV *, int, int *)); + int (*mutex_alloc) __P((DB_ENV *, u_int32_t, db_mutex_t *)); + int (*mutex_free) __P((DB_ENV *, db_mutex_t)); + int (*mutex_get_align) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_increment) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_max) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_tas_spins) __P((DB_ENV *, u_int32_t *)); + int (*mutex_lock) __P((DB_ENV *, db_mutex_t)); + int (*mutex_set_align) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_increment) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_max) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_tas_spins) __P((DB_ENV *, u_int32_t)); + int (*mutex_stat) __P((DB_ENV *, DB_MUTEX_STAT **, u_int32_t)); + int (*mutex_stat_print) __P((DB_ENV *, u_int32_t)); + int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); + int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); + int (*remove) __P((DB_ENV *, const char *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); + int (*rep_flush) __P((DB_ENV *)); + int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); + int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*rep_get_nsites) __P((DB_ENV *, int *)); + int (*rep_get_priority) __P((DB_ENV *, int *)); + int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); + int (*rep_process_message) + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); + int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_nsites) __P((DB_ENV *, int)); + int (*rep_set_priority) __P((DB_ENV *, int)); + int (*rep_set_timeout) __P((DB_ENV *, int, db_timeout_t)); + int (*rep_set_transport) __P((DB_ENV *, int, int (*)(DB_ENV *, + const DBT *, const DBT *, const DB_LSN *, int, u_int32_t))); + int (*rep_start) __P((DB_ENV *, DBT *, u_int32_t)); + int (*rep_stat) __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); + int (*rep_stat_print) __P((DB_ENV *, u_int32_t)); + int (*rep_sync) __P((DB_ENV *, u_int32_t)); + int (*repmgr_add_remote_site) __P((DB_ENV *, const char *, u_int, + int *, u_int32_t)); + int (*repmgr_get_ack_policy) __P((DB_ENV *, int *)); + int (*repmgr_set_ack_policy) __P((DB_ENV *, int)); + int (*repmgr_set_local_site) __P((DB_ENV *, const char *, u_int, + u_int32_t)); + int (*repmgr_site_list) __P((DB_ENV *, u_int *, + DB_REPMGR_SITE **)); + int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); + int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_app_dispatch) + __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); + int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_data_dir) __P((DB_ENV *, const char *)); + int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); + void (*set_errcall) __P((DB_ENV *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB_ENV *, FILE *)); + void (*set_errpfx) __P((DB_ENV *, const char *)); + int (*set_event_notify) + __P((DB_ENV *, void (*)(DB_ENV *, u_int32_t, void *))); + int (*set_feedback) __P((DB_ENV *, void (*)(DB_ENV *, int, int))); + int (*set_flags) __P((DB_ENV *, u_int32_t, int)); + int (*set_intermediate_dir) __P((DB_ENV *, int, u_int32_t)); + int (*set_isalive) __P((DB_ENV *, + int (*)(DB_ENV *, pid_t, db_threadid_t, u_int32_t))); + int (*set_lg_bsize) __P((DB_ENV *, u_int32_t)); + int (*set_lg_dir) __P((DB_ENV *, const char *)); + int (*set_lg_filemode) __P((DB_ENV *, int)); + int (*set_lg_max) __P((DB_ENV *, u_int32_t)); + int (*set_lg_regionmax) __P((DB_ENV *, u_int32_t)); + int (*set_lk_conflicts) __P((DB_ENV *, u_int8_t *, int)); + int (*set_lk_detect) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_lockers) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); + int (*set_mp_max_openfd) __P((DB_ENV *, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); + int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); + void (*set_msgcall) + __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB_ENV *, FILE *)); + int (*set_paniccall) __P((DB_ENV *, void (*)(DB_ENV *, int))); + int (*set_rep_request) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_rpc_server) + __P((DB_ENV *, void *, const char *, long, long, u_int32_t)); + int (*set_shm_key) __P((DB_ENV *, long)); + int (*set_thread_count) __P((DB_ENV *, u_int32_t)); + int (*set_thread_id) __P((DB_ENV *, + void (*)(DB_ENV *, pid_t *, db_threadid_t *))); + int (*set_thread_id_string) __P((DB_ENV *, + char *(*)(DB_ENV *, pid_t, db_threadid_t, char *))); + int (*set_timeout) __P((DB_ENV *, db_timeout_t, u_int32_t)); + int (*set_tmp_dir) __P((DB_ENV *, const char *)); + int (*set_tx_max) __P((DB_ENV *, u_int32_t)); + int (*set_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*set_verbose) __P((DB_ENV *, u_int32_t, int)); + int (*stat_print) __P((DB_ENV *, u_int32_t)); + int (*txn_begin) __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); + int (*txn_checkpoint) __P((DB_ENV *, u_int32_t, u_int32_t, u_int32_t)); + int (*txn_recover) + __P((DB_ENV *, DB_PREPLIST *, long, long *, u_int32_t)); + int (*txn_stat) __P((DB_ENV *, DB_TXN_STAT **, u_int32_t)); + int (*txn_stat_print) __P((DB_ENV *, u_int32_t)); + /* DB_ENV PUBLIC HANDLE LIST END */ + + /* DB_ENV PRIVATE HANDLE LIST BEGIN */ + int (*prdbt) __P((DBT *, + int, const char *, void *, int (*)(void *, const void *), int)); + /* DB_ENV PRIVATE HANDLE LIST END */ + +#define DB_TEST_ELECTINIT 1 /* after __rep_elect_init */ +#define DB_TEST_ELECTVOTE1 2 /* after sending VOTE1 */ +#define DB_TEST_POSTDESTROY 3 /* after destroy op */ +#define DB_TEST_POSTLOG 4 /* after logging all pages */ +#define DB_TEST_POSTLOGMETA 5 /* after logging meta in btree */ +#define DB_TEST_POSTOPEN 6 /* after __os_open */ +#define DB_TEST_POSTSYNC 7 /* after syncing the log */ +#define DB_TEST_PREDESTROY 8 /* before destroy op */ +#define DB_TEST_PREOPEN 9 /* before __os_open */ +#define DB_TEST_RECYCLE 10 /* test rep and txn_recycle */ +#define DB_TEST_SUBDB_LOCKS 11 /* subdb locking tests */ + int test_abort; /* Abort value for testing. */ + int test_check; /* Checkpoint value for testing. */ + int test_copy; /* Copy value for testing. */ + +#define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ +#define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ +#define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ + u_int32_t flags; +}; + +#ifndef DB_DBM_HSEARCH +#define DB_DBM_HSEARCH 0 /* No historic interfaces by default. */ +#endif +#if DB_DBM_HSEARCH != 0 +/******************************************************* + * Dbm/Ndbm historic interfaces. + *******************************************************/ +typedef struct __db DBM; + +#define DBM_INSERT 0 /* Flags to dbm_store(). */ +#define DBM_REPLACE 1 + +/* + * The DB support for ndbm(3) always appends this suffix to the + * file name to avoid overwriting the user's original database. + */ +#define DBM_SUFFIX ".db" + +#if defined(_XPG4_2) +typedef struct { + char *dptr; + size_t dsize; +} datum; +#else +typedef struct { + char *dptr; + int dsize; +} datum; +#endif + +/* + * Translate NDBM calls into DB calls so that DB doesn't step on the + * application's name space. + */ +#define dbm_clearerr(a) __db_ndbm_clearerr(a) +#define dbm_close(a) __db_ndbm_close(a) +#define dbm_delete(a, b) __db_ndbm_delete(a, b) +#define dbm_dirfno(a) __db_ndbm_dirfno(a) +#define dbm_error(a) __db_ndbm_error(a) +#define dbm_fetch(a, b) __db_ndbm_fetch(a, b) +#define dbm_firstkey(a) __db_ndbm_firstkey(a) +#define dbm_nextkey(a) __db_ndbm_nextkey(a) +#define dbm_open(a, b, c) __db_ndbm_open(a, b, c) +#define dbm_pagfno(a) __db_ndbm_pagfno(a) +#define dbm_rdonly(a) __db_ndbm_rdonly(a) +#define dbm_store(a, b, c, d) \ + __db_ndbm_store(a, b, c, d) + +/* + * Translate DBM calls into DB calls so that DB doesn't step on the + * application's name space. + * + * The global variables dbrdonly, dirf and pagf were not retained when 4BSD + * replaced the dbm interface with ndbm, and are not supported here. + */ +#define dbminit(a) __db_dbm_init(a) +#define dbmclose __db_dbm_close +#if !defined(__cplusplus) +#define delete(a) __db_dbm_delete(a) +#endif +#define fetch(a) __db_dbm_fetch(a) +#define firstkey __db_dbm_firstkey +#define nextkey(a) __db_dbm_nextkey(a) +#define store(a, b) __db_dbm_store(a, b) + +/******************************************************* + * Hsearch historic interface. + *******************************************************/ +typedef enum { + FIND, ENTER +} ACTION; + +typedef struct entry { + char *key; + char *data; +} ENTRY; + +#define hcreate(a) __db_hcreate(a) +#define hdestroy __db_hdestroy +#define hsearch(a, b) __db_hsearch(a, b) + +#endif /* DB_DBM_HSEARCH */ + +#if defined(__cplusplus) +} +#endif + +#endif /* !_DB_H_ */ + +/* DO NOT EDIT: automatically built by dist/s_include. */ +#ifndef _DB_EXT_PROT_IN_ +#define _DB_EXT_PROT_IN_ + +#if defined(__cplusplus) +extern "C" { +#endif + +int db_create __P((DB **, DB_ENV *, u_int32_t)); +char *db_strerror __P((int)); +int db_env_create __P((DB_ENV **, u_int32_t)); +char *db_version __P((int *, int *, int *)); +int log_compare __P((const DB_LSN *, const DB_LSN *)); +int db_env_set_func_close __P((int (*)(int))); +int db_env_set_func_dirfree __P((void (*)(char **, int))); +int db_env_set_func_dirlist __P((int (*)(const char *, char ***, int *))); +int db_env_set_func_exists __P((int (*)(const char *, int *))); +int db_env_set_func_free __P((void (*)(void *))); +int db_env_set_func_fsync __P((int (*)(int))); +int db_env_set_func_ftruncate __P((int (*)(int, off_t))); +int db_env_set_func_ioinfo __P((int (*)(const char *, int, u_int32_t *, u_int32_t *, u_int32_t *))); +int db_env_set_func_malloc __P((void *(*)(size_t))); +int db_env_set_func_map __P((int (*)(char *, size_t, int, int, void **))); +int db_env_set_func_pread __P((ssize_t (*)(int, void *, size_t, off_t))); +int db_env_set_func_pwrite __P((ssize_t (*)(int, const void *, size_t, off_t))); +int db_env_set_func_open __P((int (*)(const char *, int, ...))); +int db_env_set_func_read __P((ssize_t (*)(int, void *, size_t))); +int db_env_set_func_realloc __P((void *(*)(void *, size_t))); +int db_env_set_func_rename __P((int (*)(const char *, const char *))); +int db_env_set_func_seek __P((int (*)(int, off_t, int))); +int db_env_set_func_sleep __P((int (*)(u_long, u_long))); +int db_env_set_func_unlink __P((int (*)(const char *))); +int db_env_set_func_unmap __P((int (*)(void *, size_t))); +int db_env_set_func_write __P((ssize_t (*)(int, const void *, size_t))); +int db_env_set_func_yield __P((int (*)(void))); +int db_sequence_create __P((DB_SEQUENCE **, DB *, u_int32_t)); +#if DB_DBM_HSEARCH != 0 +int __db_ndbm_clearerr __P((DBM *)); +void __db_ndbm_close __P((DBM *)); +int __db_ndbm_delete __P((DBM *, datum)); +int __db_ndbm_dirfno __P((DBM *)); +int __db_ndbm_error __P((DBM *)); +datum __db_ndbm_fetch __P((DBM *, datum)); +datum __db_ndbm_firstkey __P((DBM *)); +datum __db_ndbm_nextkey __P((DBM *)); +DBM *__db_ndbm_open __P((const char *, int, int)); +int __db_ndbm_pagfno __P((DBM *)); +int __db_ndbm_rdonly __P((DBM *)); +int __db_ndbm_store __P((DBM *, datum, datum, int)); +int __db_dbm_close __P((void)); +int __db_dbm_delete __P((datum)); +datum __db_dbm_fetch __P((datum)); +datum __db_dbm_firstkey __P((void)); +int __db_dbm_init __P((char *)); +datum __db_dbm_nextkey __P((datum)); +int __db_dbm_store __P((datum, datum)); +#endif +#if DB_DBM_HSEARCH != 0 +int __db_hcreate __P((size_t)); +ENTRY *__db_hsearch __P((ENTRY, ACTION)); +void __db_hdestroy __P((void)); +#endif + +#if defined(__cplusplus) +} +#endif +#endif /* !_DB_EXT_PROT_IN_ */ diff --git a/db/build_s60/db_config.h b/db/build_s60/db_config.h new file mode 100644 index 000000000..b86eb9789 --- /dev/null +++ b/db/build_s60/db_config.h @@ -0,0 +1,548 @@ +/* DO NOT EDIT: automatically built by dist/s_s60. */ +/* db_config.h. Generated from config.hin by configure. */ +/* config.hin. Generated from configure.ac by autoheader. */ + +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +/* #undef DB_WIN32 */ + +/* Define to 1 if you want a debugging version. */ +/* #undef DEBUG */ + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +/* #undef HAVE_64BIT_TYPES */ + +/* Define to 1 if you have the `abort' function. */ +#define HAVE_ABORT 1 + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +#define HAVE_ATOL 1 + +/* Define to 1 if building on BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +/* #undef HAVE_CRYPTO */ + +/* Define to 1 if you have the `ctime_r' function. */ +#define HAVE_CTIME_R 1 + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + +/* Define to 1 if you have the `fcntl' function. */ +#define HAVE_FCNTL 1 + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + +/* Define to 1 if you have the `ftruncate' function. */ +/* #undef HAVE_FTRUNCATE */ + +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +/* #undef HAVE_HASH */ + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `isalpha' function. */ +#define HAVE_ISALPHA 1 + +/* Define to 1 if you have the `isdigit' function. */ +#define HAVE_ISDIGIT 1 + +/* Define to 1 if you have the `isprint' function. */ +#define HAVE_ISPRINT 1 + +/* Define to 1 if you have the `isspace' function. */ +#define HAVE_ISSPACE 1 + +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MEMORY_H */ + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +#define HAVE_MUNMAP 1 + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +#define HAVE_MUTEX_PTHREADS 1 + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + +/* Define to 1 if mutexes hold system resources. */ +#define HAVE_MUTEX_SYSTEM_RESOURCES 1 + +/* Define to 1 to configure mutexes intra-process only. */ +#define HAVE_MUTEX_THREAD_ONLY 1 + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32 */ + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +#define HAVE_PRINTF 1 + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + +/* Define to 1 if building Queue access method. */ +/* #undef HAVE_QUEUE */ + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rand' function. */ +#define HAVE_RAND 1 + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +#define HAVE_S60 1 + +/* Define to 1 if you have the `sched_yield' function. */ +#define HAVE_SCHED_YIELD 1 + +/* Define to 1 if you have the `select' function. */ +#define HAVE_SELECT 1 + +/* Define to 1 if you have the `shmget' function. */ +#define HAVE_SHMGET 1 + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +#define HAVE_SIMPLE_THREAD_TYPE 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +#define HAVE_STAT 1 + +/* Define to 1 if building statistics support. */ +#define HAVE_STATISTICS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the `strftime' function. */ +#define HAVE_STRFTIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncat' function. */ +#define HAVE_STRNCAT 1 + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +#define HAVE_SYSCONF 1 + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#define HAVE_SYSTEM_INCLUDE_FILES 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +/* #undef HAVE_VERIFY */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building on VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +/* #undef HAVE__FSTATI64 */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "Oracle Technology Network Berkeley DB forum" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB 4.6.18" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-4.6.18" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "4.6.18" + +/* The size of `char', as computed by sizeof. */ +#define SIZEOF_CHAR 1 + +/* The size of `char *', as computed by sizeof. */ +#define SIZEOF_CHAR_P 4 + +/* The size of `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of `short', as computed by sizeof. */ +#define SIZEOF_SHORT 2 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* The size of `unsigned char', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_CHAR 1 + +/* The size of `unsigned int', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_INT 4 + +/* The size of `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of `unsigned short', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_SHORT 2 + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_s60/db_int.h b/db/build_s60/db_int.h new file mode 100644 index 000000000..6a6a8470c --- /dev/null +++ b/db/build_s60/db_int.h @@ -0,0 +1,774 @@ +/* DO NOT EDIT: automatically built by dist/s_s60. */ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_int.h,v 1.35 2007/07/17 14:50:17 bostic Exp $ + */ + +#ifndef _DB_INT_H_ +#define _DB_INT_H_ + +/******************************************************* + * Berkeley DB ANSI/POSIX include files. + *******************************************************/ +#ifdef HAVE_SYSTEM_INCLUDE_FILES +#include +#ifdef DIAG_MVCC +#include +#endif +#include + +#if defined(__INCLUDE_SELECT_H) +#ifdef HAVE_SYS_SELECT_H +#include +#endif +#ifdef HAVE_VXWORKS +#include +#endif +#endif + +#if TIME_WITH_SYS_TIME +#include +#include +#else +#if HAVE_SYS_TIME_H +#include +#else +#include +#endif +#endif + +#ifdef HAVE_VXWORKS +#include +#else +#include +#endif + +#if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H +#include +#endif +#include +#include +#include +#endif + +#if defined(STDC_HEADERS) || defined(__cplusplus) +#include +#else +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" +#endif + +#include "db.h" +#include "clib_port.h" + +#include "dbinc/queue.h" +#include "dbinc/shqueue.h" + +#if defined(__cplusplus) +extern "C" { +#endif + +/******************************************************* + * General purpose constants and macros. + *******************************************************/ +#undef FALSE +#define FALSE 0 +#undef TRUE +#define TRUE (!FALSE) + +#define MEGABYTE 1048576 +#define GIGABYTE 1073741824 + +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ + +#define RECNO_OOB 0 /* Illegal record number. */ + +/* Test for a power-of-two (tests true for zero, which doesn't matter here). */ +#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0) + +/* Test for valid page sizes. */ +#define DB_MIN_PGSIZE 0x000200 /* Minimum page size (512). */ +#define DB_MAX_PGSIZE 0x010000 /* Maximum page size (65536). */ +#define IS_VALID_PAGESIZE(x) \ + (POWER_OF_TWO(x) && (x) >= DB_MIN_PGSIZE && ((x) <= DB_MAX_PGSIZE)) + +/* Minimum number of pages cached, by default. */ +#define DB_MINPAGECACHE 16 + +/* + * If we are unable to determine the underlying filesystem block size, use + * 8K on the grounds that most OS's use less than 8K for a VM page size. + */ +#define DB_DEF_IOSIZE (8 * 1024) + +/* Align an integer to a specific boundary. */ +#undef DB_ALIGN +#define DB_ALIGN(v, bound) \ + (((v) + (bound) - 1) & ~(((uintmax_t)(bound)) - 1)) + +/* Increment a pointer to a specific boundary. */ +#undef ALIGNP_INC +#define ALIGNP_INC(p, bound) \ + (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) + +/* + * Print an address as a u_long (a u_long is the largest type we can print + * portably). Most 64-bit systems have made longs 64-bits, so this should + * work. + */ +#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p)) + +/* + * Convert a pointer to a small integral value. + * + * The (u_int16_t)(uintptr_t) cast avoids warnings: the (uintptr_t) cast + * converts the value to an integral type, and the (u_int16_t) cast converts + * it to a small integral type so we don't get complaints when we assign the + * final result to an integral type smaller than uintptr_t. + */ +#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p)) +#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p)) + +/* + * There are several on-page structures that are declared to have a number of + * fields followed by a variable length array of items. The structure size + * without including the variable length array or the address of the first of + * those elements can be found using SSZ. + * + * This macro can also be used to find the offset of a structure element in a + * structure. This is used in various places to copy structure elements from + * unaligned memory references, e.g., pointers into a packed page. + * + * There are two versions because compilers object if you take the address of + * an array. + */ +#undef SSZ +#define SSZ(name, field) P_TO_UINT16(&(((name *)0)->field)) + +#undef SSZA +#define SSZA(name, field) P_TO_UINT16(&(((name *)0)->field[0])) + +/* Structure used to print flag values. */ +typedef struct __fn { + u_int32_t mask; /* Flag value. */ + const char *name; /* Flag name. */ +} FN; + +/* Set, clear and test flags. */ +#define FLD_CLR(fld, f) (fld) &= ~(f) +#define FLD_ISSET(fld, f) ((fld) & (f)) +#define FLD_SET(fld, f) (fld) |= (f) +#define F_CLR(p, f) (p)->flags &= ~(f) +#define F_ISSET(p, f) ((p)->flags & (f)) +#define F_SET(p, f) (p)->flags |= (f) +#define LF_CLR(f) ((flags) &= ~(f)) +#define LF_ISSET(f) ((flags) & (f)) +#define LF_SET(f) ((flags) |= (f)) + +/* + * Calculate a percentage. The values can overflow 32-bit integer arithmetic + * so we use floating point. + * + * When calculating a bytes-vs-page size percentage, we're getting the inverse + * of the percentage in all cases, that is, we want 100 minus the percentage we + * calculate. + */ +#define DB_PCT(v, total) \ + ((int)((total) == 0 ? 0 : ((double)(v) * 100) / (total))) +#define DB_PCT_PG(v, total, pgsize) \ + ((int)((total) == 0 ? 0 : \ + 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) + +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + +/* + * Structure used for callback message aggregation. + * + * Display values in XXX_stat_print calls. + */ +typedef struct __db_msgbuf { + char *buf; /* Heap allocated buffer. */ + char *cur; /* Current end of message. */ + size_t len; /* Allocated length of buffer. */ +} DB_MSGBUF; +#define DB_MSGBUF_INIT(a) do { \ + (a)->buf = (a)->cur = NULL; \ + (a)->len = 0; \ +} while (0) +#define DB_MSGBUF_FLUSH(dbenv, a) do { \ + if ((a)->buf != NULL) { \ + if ((a)->cur != (a)->buf) \ + __db_msg(dbenv, "%s", (a)->buf); \ + __os_free(dbenv, (a)->buf); \ + DB_MSGBUF_INIT(a); \ + } \ +} while (0) +#define STAT_FMT(msg, fmt, type, v) do { \ + DB_MSGBUF __mb; \ + DB_MSGBUF_INIT(&__mb); \ + __db_msgadd(dbenv, &__mb, fmt, (type)(v)); \ + __db_msgadd(dbenv, &__mb, "\t%s", msg); \ + DB_MSGBUF_FLUSH(dbenv, &__mb); \ +} while (0) +#define STAT_HEX(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", (u_long)(v), msg) +#define STAT_ISSET(msg, p) \ + __db_msg(dbenv, "%sSet\t%s", (p) == NULL ? "!" : " ", msg) +#define STAT_LONG(msg, v) \ + __db_msg(dbenv, "%ld\t%s", (long)(v), msg) +#define STAT_LSN(msg, lsnp) \ + __db_msg(dbenv, "%lu/%lu\t%s", \ + (u_long)(lsnp)->file, (u_long)(lsnp)->offset, msg) +#define STAT_POINTER(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", P_TO_ULONG(v), msg) +#define STAT_STRING(msg, p) do { \ + const char *__p = p; /* p may be a function call. */ \ + __db_msg(dbenv, "%s\t%s", __p == NULL ? "!Set" : __p, msg); \ +} while (0) +#define STAT_ULONG(msg, v) \ + __db_msg(dbenv, "%lu\t%s", (u_long)(v), msg) + +/* + * There are quite a few places in Berkeley DB where we want to initialize + * a DBT from a string or other random pointer type, using a length typed + * to size_t in most cases. This macro avoids a lot of casting. The macro + * comes in two flavors because we often want to clear the DBT first. + */ +#define DB_SET_DBT(dbt, d, s) do { \ + (dbt).data = (void *)(d); \ + (dbt).size = (u_int32_t)(s); \ +} while (0) +#define DB_INIT_DBT(dbt, d, s) do { \ + memset(&(dbt), 0, sizeof(dbt)); \ + DB_SET_DBT(dbt, d, s); \ +} while (0) + +/******************************************************* + * API return values + *******************************************************/ +/* + * Return values that are OK for each different call. Most calls have a + * standard 'return of 0 is only OK value', but some, like db->get have + * DB_NOTFOUND as a return value, but it really isn't an error. + */ +#define DB_RETOK_STD(ret) ((ret) == 0) +#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) +#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) +#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) +#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ + (ret) == DB_REP_IGNORE || \ + (ret) == DB_REP_ISPERM || \ + (ret) == DB_REP_NEWMASTER || \ + (ret) == DB_REP_NEWSITE || \ + (ret) == DB_REP_NOTPERM) + +/* Find a reasonable operation-not-supported error. */ +#ifdef EOPNOTSUPP +#define DB_OPNOTSUP EOPNOTSUPP +#else +#ifdef ENOTSUP +#define DB_OPNOTSUP ENOTSUP +#else +#define DB_OPNOTSUP EINVAL +#endif +#endif + +/******************************************************* + * Files. + *******************************************************/ +/* + * We use 1024 as the maximum path length. It's too hard to figure out what + * the real path length is, as it was traditionally stored in , + * and that file isn't always available. + */ +#define DB_MAXPATHLEN 1024 + +#define PATH_DOT "." /* Current working directory. */ + /* Path separator character(s). */ +#define PATH_SEPARATOR "\\/:" + +/******************************************************* + * Environment. + *******************************************************/ +/* Type passed to __db_appname(). */ +typedef enum { + DB_APP_NONE=0, /* No type (region). */ + DB_APP_DATA, /* Data file. */ + DB_APP_LOG, /* Log file. */ + DB_APP_TMP /* Temporary file. */ +} APPNAME; + +/* + * A set of macros to check if various functionality has been configured. + * + * ALIVE_ON The is_alive function is configured. + * CDB_LOCKING CDB product locking. + * CRYPTO_ON Security has been configured. + * LOCKING_ON Locking has been configured. + * LOGGING_ON Logging has been configured. + * MUTEX_ON Mutexes have been configured. + * MPOOL_ON Memory pool has been configured. + * REP_ON Replication has been configured. + * RPC_ON RPC has been configured. + * TXN_ON Transactions have been configured. + * + * REP_ON is more complex than most: if the BDB library was compiled without + * replication support, dbenv->rep_handle will be NULL; if the BDB library + * has replication support, but it was not configured, the region reference + * will be NULL. + */ +#define ALIVE_ON(dbenv) ((dbenv)->is_alive != NULL) +#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_CDB) +#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle != NULL) +#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != NULL) +#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != NULL) +#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NULL) +#define MUTEX_ON(dbenv) ((dbenv)->mutex_handle != NULL) +#define REP_ON(dbenv) \ + ((dbenv)->rep_handle != NULL && (dbenv)->rep_handle->region != NULL) +#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL) +#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL) + +/* + * STD_LOCKING Standard locking, that is, locking was configured and CDB + * was not. We do not do locking in off-page duplicate trees, + * so we check for that in the cursor first. + */ +#define STD_LOCKING(dbc) \ + (!F_ISSET(dbc, DBC_OPD) && \ + !CDB_LOCKING((dbc)->dbp->dbenv) && LOCKING_ON((dbc)->dbp->dbenv)) + +/* + * IS_RECOVERING: The system is running recovery. + */ +#define IS_RECOVERING(dbenv) \ + (LOGGING_ON(dbenv) && F_ISSET((dbenv)->lg_handle, DBLOG_RECOVER)) + +/* Initialization methods are often illegal before/after open is called. */ +#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 1)); +#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \ + if (!F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 0)); + +/* We're not actually user hostile, honest. */ +#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) \ + if (handle == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_REQUIRES_CONFIG_XX(dbenv, handle, i, flags) \ + if ((dbenv)->handle->region == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) + +#define ENV_ENTER(dbenv, ip) do { \ + int __ret; \ + if ((dbenv)->thr_hashtab == NULL) \ + ip = NULL; \ + else { \ + if ((__ret = \ + __env_set_state(dbenv, &(ip), THREAD_ACTIVE)) != 0) \ + return (__ret); \ + } \ +} while (0) + +#ifdef DIAGNOSTIC +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) { \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ + (ip)->dbth_state = THREAD_OUT; \ + } \ +} while (0) +#else +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) \ + (ip)->dbth_state = THREAD_OUT; \ +} while (0) +#endif +#ifdef DIAGNOSTIC +#define CHECK_THREAD(dbenv) do { \ + DB_THREAD_INFO *__ip; \ + if ((dbenv)->thr_hashtab != NULL) { \ + (void)__env_set_state(dbenv, &__ip, THREAD_DIAGNOSTIC); \ + DB_ASSERT(dbenv, \ + __ip != NULL && __ip->dbth_state != THREAD_OUT); \ + } \ +} while (0) +#ifdef HAVE_STATISTICS +#define CHECK_MTX_THREAD(dbenv, mtx) do { \ + if (mtx->alloc_id != MTX_MUTEX_REGION && \ + mtx->alloc_id != MTX_ENV_REGION && \ + mtx->alloc_id != MTX_APPLICATION) \ + CHECK_THREAD(dbenv); \ +} while (0) +#else +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif +#else +#define CHECK_THREAD(dbenv) +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif + +typedef enum { + THREAD_SLOT_NOT_IN_USE=0, + THREAD_OUT, + THREAD_ACTIVE, + THREAD_BLOCKED +#ifdef DIAGNOSTIC + , THREAD_DIAGNOSTIC +#endif +} DB_THREAD_STATE; + +typedef struct __db_thread_info { + pid_t dbth_pid; + db_threadid_t dbth_tid; + DB_THREAD_STATE dbth_state; + SH_TAILQ_ENTRY dbth_links; +} DB_THREAD_INFO; + +typedef struct __env_thread_info { + u_int32_t thr_count; + u_int32_t thr_max; + u_int32_t thr_nbucket; + roff_t thr_hashoff; +} THREAD_INFO; + +#define DB_EVENT(dbenv, e, einfo) do { \ + if ((dbenv)->db_event_func != NULL) \ + (dbenv)->db_event_func(dbenv, e, einfo); \ +} while (0) + +/******************************************************* + * Database Access Methods. + *******************************************************/ +/* + * DB_IS_THREADED -- + * The database handle is free-threaded (was opened with DB_THREAD). + */ +#define DB_IS_THREADED(dbp) \ + ((dbp)->mutex != MUTEX_INVALID) + +/* Initialization methods are often illegal before/after open is called. */ +#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \ + if (F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 1)); +#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \ + if (!F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 0)); +/* Some initialization methods are illegal if environment isn't local. */ +#define DB_ILLEGAL_IN_ENV(dbp, name) \ + if (!F_ISSET((dbp)->dbenv, DB_ENV_DBLOCAL)) \ + return (__db_mi_env((dbp)->dbenv, name)); +#define DB_ILLEGAL_METHOD(dbp, flags) { \ + int __ret; \ + if ((__ret = __dbh_am_chk(dbp, flags)) != 0) \ + return (__ret); \ +} + +/* + * Common DBC->internal fields. Each access method adds additional fields + * to this list, but the initial fields are common. + */ +#define __DBC_INTERNAL \ + DBC *opd; /* Off-page duplicate cursor. */\ + \ + void *page; /* Referenced page. */ \ + db_pgno_t root; /* Tree root. */ \ + db_pgno_t pgno; /* Referenced page number. */ \ + db_indx_t indx; /* Referenced key item index. */\ + \ + DB_LOCK lock; /* Cursor lock. */ \ + db_lockmode_t lock_mode; /* Lock mode. */ + +struct __dbc_internal { + __DBC_INTERNAL +}; + +/* Actions that __db_master_update can take. */ +typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_action; + +/* + * Access-method-common macro for determining whether a cursor + * has been initialized. + */ +#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno != PGNO_INVALID) + +/* Free the callback-allocated buffer, if necessary, hanging off of a DBT. */ +#define FREE_IF_NEEDED(dbenv, dbt) \ + if (F_ISSET((dbt), DB_DBT_APPMALLOC)) { \ + __os_ufree((dbenv), (dbt)->data); \ + F_CLR((dbt), DB_DBT_APPMALLOC); \ + } + +/* + * Use memory belonging to object "owner" to return the results of + * any no-DBT-flag get ops on cursor "dbc". + */ +#define SET_RET_MEM(dbc, owner) \ + do { \ + (dbc)->rskey = &(owner)->my_rskey; \ + (dbc)->rkey = &(owner)->my_rkey; \ + (dbc)->rdata = &(owner)->my_rdata; \ + } while (0) + +/* Use the return-data memory src is currently set to use in dest as well. */ +#define COPY_RET_MEM(src, dest) \ + do { \ + (dest)->rskey = (src)->rskey; \ + (dest)->rkey = (src)->rkey; \ + (dest)->rdata = (src)->rdata; \ + } while (0) + +/* Reset the returned-memory pointers to their defaults. */ +#define RESET_RET_MEM(dbc) \ + do { \ + (dbc)->rskey = &(dbc)->my_rskey; \ + (dbc)->rkey = &(dbc)->my_rkey; \ + (dbc)->rdata = &(dbc)->my_rdata; \ + } while (0) + +/******************************************************* + * Mpool. + *******************************************************/ +/* + * File types for DB access methods. Negative numbers are reserved to DB. + */ +#define DB_FTYPE_SET -1 /* Call pgin/pgout functions. */ +#define DB_FTYPE_NOTSET 0 /* Don't call... */ +#define DB_LSN_OFF_NOTSET -1 /* Not yet set. */ +#define DB_CLEARLEN_NOTSET UINT32_MAX /* Not yet set. */ + +/* Structure used as the DB pgin/pgout pgcookie. */ +typedef struct __dbpginfo { + size_t db_pagesize; /* Underlying page size. */ + u_int32_t flags; /* Some DB_AM flags needed. */ + DBTYPE type; /* DB type */ +} DB_PGINFO; + +/******************************************************* + * Log. + *******************************************************/ +/* Initialize an LSN to 'zero'. */ +#define ZERO_LSN(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 0; \ +} while (0) +#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN).offset == 0) + +#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN).offset == 0) +#define INIT_LSN(LSN) do { \ + (LSN).file = 1; \ + (LSN).offset = 0; \ +} while (0) + +#define MAX_LSN(LSN) do { \ + (LSN).file = UINT32_MAX; \ + (LSN).offset = UINT32_MAX; \ +} while (0) +#define IS_MAX_LSN(LSN) \ + ((LSN).file == UINT32_MAX && (LSN).offset == UINT32_MAX) + +/* If logging is turned off, smash the lsn. */ +#define LSN_NOT_LOGGED(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 1; \ +} while (0) +#define IS_NOT_LOGGED_LSN(LSN) \ + ((LSN).file == 0 && (LSN).offset == 1) + +/* + * LOG_COMPARE -- compare two LSNs. + */ + +#define LOG_COMPARE(lsn0, lsn1) \ + ((lsn0)->file != (lsn1)->file ? \ + ((lsn0)->file < (lsn1)->file ? -1 : 1) : \ + ((lsn0)->offset != (lsn1)->offset ? \ + ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) + +/******************************************************* + * Txn. + *******************************************************/ +#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSET((C)->txn, TXN_NOWAIT)) +#define NOWAIT_FLAG(txn) \ + ((txn) != NULL && F_ISSET((txn), TXN_NOWAIT) ? DB_LOCK_NOWAIT : 0) +#define IS_REAL_TXN(txn) \ + ((txn) != NULL && !F_ISSET(txn, TXN_CDSGROUP)) +#define IS_SUBTRANSACTION(txn) \ + ((txn) != NULL && (txn)->parent != NULL) + +/******************************************************* + * Crypto. + *******************************************************/ +#define DB_IV_BYTES 16 /* Bytes per IV */ +#define DB_MAC_KEY 20 /* Bytes per MAC checksum */ + +/******************************************************* + * Secondaries over RPC. + *******************************************************/ +#ifdef CONFIG_TEST +/* + * These are flags passed to DB->associate calls by the Tcl API if running + * over RPC. The RPC server will mask out these flags before making the real + * DB->associate call. + * + * These flags must coexist with the valid flags to DB->associate (currently + * DB_AUTO_COMMIT and DB_CREATE). DB_AUTO_COMMIT is in the group of + * high-order shared flags (0xff000000), and DB_CREATE is in the low-order + * group (0x00000fff), so we pick a range in between. + */ +#define DB_RPC2ND_MASK 0x00f00000 /* Reserved bits. */ + +#define DB_RPC2ND_REVERSEDATA 0x00100000 /* callback_n(0) _s_reversedata. */ +#define DB_RPC2ND_NOOP 0x00200000 /* callback_n(1) _s_noop */ +#define DB_RPC2ND_CONCATKEYDATA 0x00300000 /* callback_n(2) _s_concatkeydata */ +#define DB_RPC2ND_CONCATDATAKEY 0x00400000 /* callback_n(3) _s_concatdatakey */ +#define DB_RPC2ND_REVERSECONCAT 0x00500000 /* callback_n(4) _s_reverseconcat */ +#define DB_RPC2ND_TRUNCDATA 0x00600000 /* callback_n(5) _s_truncdata */ +#define DB_RPC2ND_CONSTANT 0x00700000 /* callback_n(6) _s_constant */ +#define DB_RPC2ND_GETZIP 0x00800000 /* sj_getzip */ +#define DB_RPC2ND_GETNAME 0x00900000 /* sj_getname */ +#endif + +/******************************************************* + * Forward structure declarations. + *******************************************************/ +struct __db_reginfo_t; typedef struct __db_reginfo_t REGINFO; +struct __db_txnhead; typedef struct __db_txnhead DB_TXNHEAD; +struct __db_txnlist; typedef struct __db_txnlist DB_TXNLIST; +struct __vrfy_childinfo;typedef struct __vrfy_childinfo VRFY_CHILDINFO; +struct __vrfy_dbinfo; typedef struct __vrfy_dbinfo VRFY_DBINFO; +struct __vrfy_pageinfo; typedef struct __vrfy_pageinfo VRFY_PAGEINFO; + +typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; + +#if defined(__cplusplus) +} +#endif + +/******************************************************* + * Remaining general DB includes. + *******************************************************/ + + +#include "dbinc/globals.h" +#include "dbinc/clock.h" +#include "dbinc/debug.h" +#include "dbinc/region.h" +#include "dbinc_auto/env_ext.h" +#include "dbinc/mutex.h" +#include "dbinc/os.h" +#ifdef HAVE_REPLICATION_THREADS +#include "dbinc/repmgr.h" +#endif +#include "dbinc/rep.h" +#include "dbinc_auto/clib_ext.h" +#include "dbinc_auto/common_ext.h" + +/******************************************************* + * Remaining Log. + * These need to be defined after the general includes + * because they need rep.h from above. + *******************************************************/ +/* + * Test if the environment is currently logging changes. If we're in recovery + * or we're a replication client, we don't need to log changes because they're + * already in the log, even though we have a fully functional log system. + */ +#define DBENV_LOGGING(dbenv) \ + (LOGGING_ON(dbenv) && !IS_REP_CLIENT(dbenv) && \ + (!IS_RECOVERING(dbenv))) + +/* + * Test if we need to log a change. By default, we don't log operations without + * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. + * This is because we want to get log records for read/write operations, and, if + * we are trying to debug something, more information is always better. + * + * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; + * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING + * is true. + * + * We explicitly use LOGGING_ON/IS_REP_CLIENT here because we don't want to pull + * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and + * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. + * + * If we're not in recovery (master - doing an abort or a client applying + * a txn), then a client's only path through here is on an internal + * operation, and a master's only path through here is a transactional + * operation. Detect if either is not the case. + */ +#if defined(DIAGNOSTIC) || defined(DEBUG_ROP) || defined(DEBUG_WOP) +#define DBC_LOGGING(dbc) __dbc_logging(dbc) +#else +#define DBC_LOGGING(dbc) \ + ((dbc)->txn != NULL && LOGGING_ON((dbc)->dbp->dbenv) && \ + !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) +#endif + +#endif /* !_DB_INT_H_ */ diff --git a/db/build_vxworks/BerkeleyDB/Makefile.component b/db/build_vxworks/BerkeleyDB/Makefile.component deleted file mode 100644 index 5b2492388..000000000 --- a/db/build_vxworks/BerkeleyDB/Makefile.component +++ /dev/null @@ -1,2060 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = BerkeleyDB -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = PENTIUM2 -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - getopt.o \ - snprintf.o \ - strcasecmp.o \ - vsnprintf.o \ - db_byteorder.o \ - db_err.o \ - db_getlong.o \ - db_log2.o \ - util_log.o \ - util_sig.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_iface.o \ - db_join.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - db_salloc.o \ - db_shash.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - client.o \ - db_server_clnt.o \ - gen_client.o \ - gen_client_ret.o \ - db_server_xdr.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - xa.o \ - xa_db.o \ - xa_map.o \ - compConfig.o \ - util_arg.o -COMPONENT_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - client.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_byteorder.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_err.o \ - db_getlong.o \ - db_iface.o \ - db_join.o \ - db_log2.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_salloc.o \ - db_server_clnt.o \ - db_server_xdr.o \ - db_shash.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - gen_client.o \ - gen_client_ret.o \ - getopt.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - snprintf.o \ - strcasecmp.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - util_arg.o \ - util_log.o \ - util_sig.o \ - vsnprintf.o \ - xa.o \ - xa_db.o \ - xa_map.o -DEPENDENCY_FILES = bt_compare.d \ - bt_conv.d \ - bt_curadj.d \ - bt_cursor.d \ - bt_delete.d \ - bt_method.d \ - bt_open.d \ - bt_put.d \ - bt_rec.d \ - bt_reclaim.d \ - bt_recno.d \ - bt_rsearch.d \ - bt_search.d \ - bt_split.d \ - bt_stat.d \ - bt_upgrade.d \ - bt_verify.d \ - btree_auto.d \ - getopt.d \ - snprintf.d \ - strcasecmp.d \ - vsnprintf.d \ - db_byteorder.d \ - db_err.d \ - db_getlong.d \ - db_log2.d \ - util_log.d \ - util_sig.d \ - crdel_auto.d \ - crdel_rec.d \ - db.d \ - db_am.d \ - db_auto.d \ - db_cam.d \ - db_conv.d \ - db_dispatch.d \ - db_dup.d \ - db_iface.d \ - db_join.d \ - db_meta.d \ - db_method.d \ - db_overflow.d \ - db_pr.d \ - db_rec.d \ - db_reclaim.d \ - db_ret.d \ - db_upg.d \ - db_upg_opd.d \ - db_vrfy.d \ - db_vrfyutil.d \ - db_salloc.d \ - db_shash.d \ - env_method.d \ - env_open.d \ - env_recover.d \ - env_region.d \ - hash.d \ - hash_auto.d \ - hash_conv.d \ - hash_dup.d \ - hash_func.d \ - hash_meta.d \ - hash_method.d \ - hash_page.d \ - hash_rec.d \ - hash_reclaim.d \ - hash_stat.d \ - hash_upgrade.d \ - hash_verify.d \ - hsearch.d \ - lock.d \ - lock_deadlock.d \ - lock_method.d \ - lock_region.d \ - lock_stat.d \ - lock_util.d \ - log.d \ - log_archive.d \ - log_auto.d \ - log_compare.d \ - log_findckp.d \ - log_get.d \ - log_method.d \ - log_put.d \ - log_rec.d \ - log_register.d \ - mp_alloc.d \ - mp_bh.d \ - mp_fget.d \ - mp_fopen.d \ - mp_fput.d \ - mp_fset.d \ - mp_method.d \ - mp_region.d \ - mp_register.d \ - mp_stat.d \ - mp_sync.d \ - mp_trickle.d \ - mut_tas.d \ - mutex.d \ - os_alloc.d \ - os_clock.d \ - os_dir.d \ - os_errno.d \ - os_fid.d \ - os_fsync.d \ - os_handle.d \ - os_method.d \ - os_oflags.d \ - os_open.d \ - os_region.d \ - os_rename.d \ - os_root.d \ - os_rpath.d \ - os_rw.d \ - os_seek.d \ - os_sleep.d \ - os_spin.d \ - os_stat.d \ - os_tmpdir.d \ - os_unlink.d \ - os_vx_abs.d \ - os_vx_finit.d \ - os_vx_map.d \ - qam.d \ - qam_auto.d \ - qam_conv.d \ - qam_files.d \ - qam_method.d \ - qam_open.d \ - qam_rec.d \ - qam_stat.d \ - qam_upgrade.d \ - qam_verify.d \ - rep_method.d \ - rep_record.d \ - rep_region.d \ - rep_util.d \ - client.d \ - db_server_clnt.d \ - gen_client.d \ - gen_client_ret.d \ - db_server_xdr.d \ - txn.d \ - txn_auto.d \ - txn_method.d \ - txn_rec.d \ - txn_recover.d \ - txn_region.d \ - txn_stat.d \ - xa.d \ - xa_db.d \ - xa_map.d \ - compConfig.d \ - util_arg.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - getopt.o \ - snprintf.o \ - strcasecmp.o \ - vsnprintf.o \ - db_byteorder.o \ - db_err.o \ - db_getlong.o \ - db_log2.o \ - util_log.o \ - util_sig.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_iface.o \ - db_join.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - db_salloc.o \ - db_shash.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - client.o \ - db_server_clnt.o \ - gen_client.o \ - gen_client_ret.o \ - db_server_xdr.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - xa.o \ - xa_db.o \ - xa_map.o \ - compConfig.o \ - util_arg.o -COMPONENT_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - client.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_byteorder.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_err.o \ - db_getlong.o \ - db_iface.o \ - db_join.o \ - db_log2.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_salloc.o \ - db_server_clnt.o \ - db_server_xdr.o \ - db_shash.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - gen_client.o \ - gen_client_ret.o \ - getopt.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - snprintf.o \ - strcasecmp.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - util_arg.o \ - util_log.o \ - util_sig.o \ - vsnprintf.o \ - xa.o \ - xa_db.o \ - xa_map.o -DEPENDENCY_FILES = bt_compare.d \ - bt_conv.d \ - bt_curadj.d \ - bt_cursor.d \ - bt_delete.d \ - bt_method.d \ - bt_open.d \ - bt_put.d \ - bt_rec.d \ - bt_reclaim.d \ - bt_recno.d \ - bt_rsearch.d \ - bt_search.d \ - bt_split.d \ - bt_stat.d \ - bt_upgrade.d \ - bt_verify.d \ - btree_auto.d \ - getopt.d \ - snprintf.d \ - strcasecmp.d \ - vsnprintf.d \ - db_byteorder.d \ - db_err.d \ - db_getlong.d \ - db_log2.d \ - util_log.d \ - util_sig.d \ - crdel_auto.d \ - crdel_rec.d \ - db.d \ - db_am.d \ - db_auto.d \ - db_cam.d \ - db_conv.d \ - db_dispatch.d \ - db_dup.d \ - db_iface.d \ - db_join.d \ - db_meta.d \ - db_method.d \ - db_overflow.d \ - db_pr.d \ - db_rec.d \ - db_reclaim.d \ - db_ret.d \ - db_upg.d \ - db_upg_opd.d \ - db_vrfy.d \ - db_vrfyutil.d \ - db_salloc.d \ - db_shash.d \ - env_method.d \ - env_open.d \ - env_recover.d \ - env_region.d \ - hash.d \ - hash_auto.d \ - hash_conv.d \ - hash_dup.d \ - hash_func.d \ - hash_meta.d \ - hash_method.d \ - hash_page.d \ - hash_rec.d \ - hash_reclaim.d \ - hash_stat.d \ - hash_upgrade.d \ - hash_verify.d \ - hsearch.d \ - lock.d \ - lock_deadlock.d \ - lock_method.d \ - lock_region.d \ - lock_stat.d \ - lock_util.d \ - log.d \ - log_archive.d \ - log_auto.d \ - log_compare.d \ - log_findckp.d \ - log_get.d \ - log_method.d \ - log_put.d \ - log_rec.d \ - log_register.d \ - mp_alloc.d \ - mp_bh.d \ - mp_fget.d \ - mp_fopen.d \ - mp_fput.d \ - mp_fset.d \ - mp_method.d \ - mp_region.d \ - mp_register.d \ - mp_stat.d \ - mp_sync.d \ - mp_trickle.d \ - mut_tas.d \ - mutex.d \ - os_alloc.d \ - os_clock.d \ - os_dir.d \ - os_errno.d \ - os_fid.d \ - os_fsync.d \ - os_handle.d \ - os_method.d \ - os_oflags.d \ - os_open.d \ - os_region.d \ - os_rename.d \ - os_root.d \ - os_rpath.d \ - os_rw.d \ - os_seek.d \ - os_sleep.d \ - os_spin.d \ - os_stat.d \ - os_tmpdir.d \ - os_unlink.d \ - os_vx_abs.d \ - os_vx_finit.d \ - os_vx_map.d \ - qam.d \ - qam_auto.d \ - qam_conv.d \ - qam_files.d \ - qam_method.d \ - qam_open.d \ - qam_rec.d \ - qam_stat.d \ - qam_upgrade.d \ - qam_verify.d \ - rep_method.d \ - rep_record.d \ - rep_region.d \ - rep_util.d \ - client.d \ - db_server_clnt.d \ - gen_client.d \ - gen_client_ret.d \ - db_server_xdr.d \ - txn.d \ - txn_auto.d \ - txn_method.d \ - txn_rec.d \ - txn_recover.d \ - txn_region.d \ - txn_stat.d \ - xa.d \ - xa_db.d \ - xa_map.d \ - compConfig.d \ - util_arg.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - getopt.o \ - snprintf.o \ - strcasecmp.o \ - vsnprintf.o \ - db_byteorder.o \ - db_err.o \ - db_getlong.o \ - db_log2.o \ - util_log.o \ - util_sig.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_iface.o \ - db_join.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - db_salloc.o \ - db_shash.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - client.o \ - db_server_clnt.o \ - gen_client.o \ - gen_client_ret.o \ - db_server_xdr.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - xa.o \ - xa_db.o \ - xa_map.o \ - compConfig.o \ - util_arg.o -COMPONENT_OBJS = bt_compare.o \ - bt_conv.o \ - bt_curadj.o \ - bt_cursor.o \ - bt_delete.o \ - bt_method.o \ - bt_open.o \ - bt_put.o \ - bt_rec.o \ - bt_reclaim.o \ - bt_recno.o \ - bt_rsearch.o \ - bt_search.o \ - bt_split.o \ - bt_stat.o \ - bt_upgrade.o \ - bt_verify.o \ - btree_auto.o \ - client.o \ - crdel_auto.o \ - crdel_rec.o \ - db.o \ - db_am.o \ - db_auto.o \ - db_byteorder.o \ - db_cam.o \ - db_conv.o \ - db_dispatch.o \ - db_dup.o \ - db_err.o \ - db_getlong.o \ - db_iface.o \ - db_join.o \ - db_log2.o \ - db_meta.o \ - db_method.o \ - db_overflow.o \ - db_pr.o \ - db_rec.o \ - db_reclaim.o \ - db_ret.o \ - db_salloc.o \ - db_server_clnt.o \ - db_server_xdr.o \ - db_shash.o \ - db_upg.o \ - db_upg_opd.o \ - db_vrfy.o \ - db_vrfyutil.o \ - env_method.o \ - env_open.o \ - env_recover.o \ - env_region.o \ - gen_client.o \ - gen_client_ret.o \ - getopt.o \ - hash.o \ - hash_auto.o \ - hash_conv.o \ - hash_dup.o \ - hash_func.o \ - hash_meta.o \ - hash_method.o \ - hash_page.o \ - hash_rec.o \ - hash_reclaim.o \ - hash_stat.o \ - hash_upgrade.o \ - hash_verify.o \ - hsearch.o \ - lock.o \ - lock_deadlock.o \ - lock_method.o \ - lock_region.o \ - lock_stat.o \ - lock_util.o \ - log.o \ - log_archive.o \ - log_auto.o \ - log_compare.o \ - log_findckp.o \ - log_get.o \ - log_method.o \ - log_put.o \ - log_rec.o \ - log_register.o \ - mp_alloc.o \ - mp_bh.o \ - mp_fget.o \ - mp_fopen.o \ - mp_fput.o \ - mp_fset.o \ - mp_method.o \ - mp_region.o \ - mp_register.o \ - mp_stat.o \ - mp_sync.o \ - mp_trickle.o \ - mut_tas.o \ - mutex.o \ - os_alloc.o \ - os_clock.o \ - os_dir.o \ - os_errno.o \ - os_fid.o \ - os_fsync.o \ - os_handle.o \ - os_method.o \ - os_oflags.o \ - os_open.o \ - os_region.o \ - os_rename.o \ - os_root.o \ - os_rpath.o \ - os_rw.o \ - os_seek.o \ - os_sleep.o \ - os_spin.o \ - os_stat.o \ - os_tmpdir.o \ - os_unlink.o \ - os_vx_abs.o \ - os_vx_finit.o \ - os_vx_map.o \ - qam.o \ - qam_auto.o \ - qam_conv.o \ - qam_files.o \ - qam_method.o \ - qam_open.o \ - qam_rec.o \ - qam_stat.o \ - qam_upgrade.o \ - qam_verify.o \ - rep_method.o \ - rep_record.o \ - rep_region.o \ - rep_util.o \ - snprintf.o \ - strcasecmp.o \ - txn.o \ - txn_auto.o \ - txn_method.o \ - txn_rec.o \ - txn_recover.o \ - txn_region.o \ - txn_stat.o \ - util_arg.o \ - util_log.o \ - util_sig.o \ - vsnprintf.o \ - xa.o \ - xa_db.o \ - xa_map.o -DEPENDENCY_FILES = bt_compare.d \ - bt_conv.d \ - bt_curadj.d \ - bt_cursor.d \ - bt_delete.d \ - bt_method.d \ - bt_open.d \ - bt_put.d \ - bt_rec.d \ - bt_reclaim.d \ - bt_recno.d \ - bt_rsearch.d \ - bt_search.d \ - bt_split.d \ - bt_stat.d \ - bt_upgrade.d \ - bt_verify.d \ - btree_auto.d \ - getopt.d \ - snprintf.d \ - strcasecmp.d \ - vsnprintf.d \ - db_byteorder.d \ - db_err.d \ - db_getlong.d \ - db_log2.d \ - util_log.d \ - util_sig.d \ - crdel_auto.d \ - crdel_rec.d \ - db.d \ - db_am.d \ - db_auto.d \ - db_cam.d \ - db_conv.d \ - db_dispatch.d \ - db_dup.d \ - db_iface.d \ - db_join.d \ - db_meta.d \ - db_method.d \ - db_overflow.d \ - db_pr.d \ - db_rec.d \ - db_reclaim.d \ - db_ret.d \ - db_upg.d \ - db_upg_opd.d \ - db_vrfy.d \ - db_vrfyutil.d \ - db_salloc.d \ - db_shash.d \ - env_method.d \ - env_open.d \ - env_recover.d \ - env_region.d \ - hash.d \ - hash_auto.d \ - hash_conv.d \ - hash_dup.d \ - hash_func.d \ - hash_meta.d \ - hash_method.d \ - hash_page.d \ - hash_rec.d \ - hash_reclaim.d \ - hash_stat.d \ - hash_upgrade.d \ - hash_verify.d \ - hsearch.d \ - lock.d \ - lock_deadlock.d \ - lock_method.d \ - lock_region.d \ - lock_stat.d \ - lock_util.d \ - log.d \ - log_archive.d \ - log_auto.d \ - log_compare.d \ - log_findckp.d \ - log_get.d \ - log_method.d \ - log_put.d \ - log_rec.d \ - log_register.d \ - mp_alloc.d \ - mp_bh.d \ - mp_fget.d \ - mp_fopen.d \ - mp_fput.d \ - mp_fset.d \ - mp_method.d \ - mp_region.d \ - mp_register.d \ - mp_stat.d \ - mp_sync.d \ - mp_trickle.d \ - mut_tas.d \ - mutex.d \ - os_alloc.d \ - os_clock.d \ - os_dir.d \ - os_errno.d \ - os_fid.d \ - os_fsync.d \ - os_handle.d \ - os_method.d \ - os_oflags.d \ - os_open.d \ - os_region.d \ - os_rename.d \ - os_root.d \ - os_rpath.d \ - os_rw.d \ - os_seek.d \ - os_sleep.d \ - os_spin.d \ - os_stat.d \ - os_tmpdir.d \ - os_unlink.d \ - os_vx_abs.d \ - os_vx_finit.d \ - os_vx_map.d \ - qam.d \ - qam_auto.d \ - qam_conv.d \ - qam_files.d \ - qam_method.d \ - qam_open.d \ - qam_rec.d \ - qam_stat.d \ - qam_upgrade.d \ - qam_verify.d \ - rep_method.d \ - rep_record.d \ - rep_region.d \ - rep_util.d \ - client.d \ - db_server_clnt.d \ - gen_client.d \ - gen_client_ret.d \ - db_server_xdr.d \ - txn.d \ - txn_auto.d \ - txn_method.d \ - txn_rec.d \ - txn_recover.d \ - txn_region.d \ - txn_stat.d \ - xa.d \ - xa_db.d \ - xa_map.d \ - compConfig.d \ - util_arg.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/../../txn/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../txn/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../log/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../log/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../mp/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../mp/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../btree/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../btree/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../common/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../common/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../os/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../os/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../mutex/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../mutex/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_client/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rpc_client/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_server/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rpc_server/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../env/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../env/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../hsearch/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../hsearch/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../clib/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../clib/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rep/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rep/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../qam/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../qam/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../db/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../db/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../hash/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../hash/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../os_vxworks/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../os_vxworks/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../xa/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../xa/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../lock/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../lock/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/../../txn/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../txn/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../log/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../log/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../mp/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../mp/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../btree/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../btree/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../common/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../common/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../os/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../os/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../mutex/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../mutex/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_client/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rpc_client/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_server/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rpc_server/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../env/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../env/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../hsearch/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../hsearch/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../clib/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../clib/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../rep/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../rep/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../qam/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../qam/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../db/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../db/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../hash/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../hash/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../os_vxworks/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../os_vxworks/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../xa/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../xa/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - -%.o : $(PRJ_DIR)/../../lock/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC -c $< - -%.d : $(PRJ_DIR)/../../lock/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -DDEBUG -DDIAGNOSTIC $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/../../txn/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../txn/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../log/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../log/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../mp/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../mp/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../btree/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../btree/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../common/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../common/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../os/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../os/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../mutex/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../mutex/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_client/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../rpc_client/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../rpc_server/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../rpc_server/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../env/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../env/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../hsearch/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../hsearch/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../clib/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../clib/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../rep/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../rep/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../qam/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../qam/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../db/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../db/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../hash/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../hash/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../os_vxworks/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../os_vxworks/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../xa/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../xa/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - -%.o : $(PRJ_DIR)/../../lock/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto -c $< - -%.d : $(PRJ_DIR)/../../lock/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -I$(PRJ_DIR)/.. -I$(PRJ_DIR)/../../include -I$(PRJ_DIR)/../../include_auto $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -BerkeleyDB.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all BerkeleyDB modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > BerkeleyDB_ctdt.c - $(COMPILE_TRADITIONAL) BerkeleyDB_ctdt.c -o BerkeleyDB_ctdt.o - $(LD) -r -o BerkeleyDB.tmp $@ BerkeleyDB_ctdt.o - $(RM) $@ - $(MV) BerkeleyDB.tmp $@ -# -# Adds entry point table section to BerkeleyDB component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all BerkeleyDB modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -BerkeleyDB.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -BerkeleyDB.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else - $(NM) bt_compare.o bt_conv.o bt_curadj.o bt_cursor.o bt_delete.o bt_method.o bt_open.o bt_put.o bt_rec.o bt_reclaim.o bt_recno.o bt_rsearch.o bt_search.o bt_split.o bt_stat.o bt_upgrade.o bt_verify.o btree_auto.o client.o crdel_auto.o crdel_rec.o db.o db_am.o db_auto.o db_byteorder.o db_cam.o db_conv.o db_dispatch.o db_dup.o db_err.o db_getlong.o db_iface.o db_join.o db_log2.o db_meta.o db_method.o db_overflow.o db_pr.o db_rec.o db_reclaim.o db_ret.o db_salloc.o db_server_clnt.o db_server_xdr.o db_shash.o db_upg.o db_upg_opd.o db_vrfy.o db_vrfyutil.o env_method.o env_open.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(NM) env_recover.o env_region.o gen_client.o gen_client_ret.o getopt.o hash.o hash_auto.o hash_conv.o hash_dup.o hash_func.o hash_meta.o hash_method.o hash_page.o hash_rec.o hash_reclaim.o hash_stat.o hash_upgrade.o hash_verify.o hsearch.o lock.o lock_deadlock.o lock_method.o lock_region.o lock_stat.o lock_util.o log.o log_archive.o log_auto.o log_compare.o log_findckp.o log_get.o log_method.o log_put.o log_rec.o log_register.o mp_alloc.o mp_bh.o mp_fget.o mp_fopen.o mp_fput.o mp_fset.o mp_method.o mp_region.o mp_register.o mp_stat.o mp_sync.o mp_trickle.o mut_tas.o mutex.o os_alloc.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(NM) os_clock.o os_dir.o os_errno.o os_fid.o os_fsync.o os_handle.o os_method.o os_oflags.o os_open.o os_region.o os_rename.o os_root.o os_rpath.o os_rw.o os_seek.o os_sleep.o os_spin.o os_stat.o os_tmpdir.o os_unlink.o os_vx_abs.o os_vx_finit.o os_vx_map.o qam.o qam_auto.o qam_conv.o qam_files.o qam_method.o qam_open.o qam_rec.o qam_stat.o qam_upgrade.o qam_verify.o rep_method.o rep_record.o rep_region.o rep_util.o snprintf.o strcasecmp.o txn.o txn_auto.o txn_method.o txn_rec.o txn_recover.o txn_region.o txn_stat.o util_arg.o util_log.o util_sig.o vsnprintf.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(NM) xa.o xa_db.o xa_map.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) bt_compare.o bt_conv.o bt_curadj.o bt_cursor.o bt_delete.o bt_method.o bt_open.o bt_put.o bt_rec.o bt_reclaim.o bt_recno.o bt_rsearch.o bt_search.o bt_split.o bt_stat.o bt_upgrade.o bt_verify.o btree_auto.o client.o crdel_auto.o crdel_rec.o db.o db_am.o db_auto.o db_byteorder.o db_cam.o db_conv.o db_dispatch.o db_dup.o db_err.o db_getlong.o db_iface.o db_join.o db_log2.o db_meta.o db_method.o db_overflow.o db_pr.o db_rec.o db_reclaim.o db_ret.o db_salloc.o db_server_clnt.o db_server_xdr.o db_shash.o db_upg.o db_upg_opd.o db_vrfy.o db_vrfyutil.o env_method.o env_open.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(SIZE) env_recover.o env_region.o gen_client.o gen_client_ret.o getopt.o hash.o hash_auto.o hash_conv.o hash_dup.o hash_func.o hash_meta.o hash_method.o hash_page.o hash_rec.o hash_reclaim.o hash_stat.o hash_upgrade.o hash_verify.o hsearch.o lock.o lock_deadlock.o lock_method.o lock_region.o lock_stat.o lock_util.o log.o log_archive.o log_auto.o log_compare.o log_findckp.o log_get.o log_method.o log_put.o log_rec.o log_register.o mp_alloc.o mp_bh.o mp_fget.o mp_fopen.o mp_fput.o mp_fset.o mp_method.o mp_region.o mp_register.o mp_stat.o mp_sync.o mp_trickle.o mut_tas.o mutex.o os_alloc.o | sed 1d | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(SIZE) os_clock.o os_dir.o os_errno.o os_fid.o os_fsync.o os_handle.o os_method.o os_oflags.o os_open.o os_region.o os_rename.o os_root.o os_rpath.o os_rw.o os_seek.o os_sleep.o os_spin.o os_stat.o os_tmpdir.o os_unlink.o os_vx_abs.o os_vx_finit.o os_vx_map.o qam.o qam_auto.o qam_conv.o qam_files.o qam_method.o qam_open.o qam_rec.o qam_stat.o qam_upgrade.o qam_verify.o rep_method.o rep_record.o rep_region.o rep_util.o snprintf.o strcasecmp.o txn.o txn_auto.o txn_method.o txn_rec.o txn_recover.o txn_region.o txn_stat.o util_arg.o util_log.o util_sig.o vsnprintf.o | sed 1d | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ - $(SIZE) xa.o xa_db.o xa_map.o | sed 1d | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/BerkeleyDB20.wpj b/db/build_vxworks/BerkeleyDB20.wpj index 83e8aa33a..ec9b46144 100755 --- a/db/build_vxworks/BerkeleyDB20.wpj +++ b/db/build_vxworks/BerkeleyDB20.wpj @@ -717,24 +717,6 @@ db_byteorder.o C/C++ compiler - FILE_$(PRJ_DIR)/../common/db_clock.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../common/db_clock.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../common/db_clock.c_objects -db_clock.o - - - FILE_$(PRJ_DIR)/../common/db_clock.c_tool -C/C++ compiler - - FILE_$(PRJ_DIR)/../common/db_err.c_dependDone TRUE @@ -807,6 +789,24 @@ db_log2.o C/C++ compiler + FILE_$(PRJ_DIR)/../common/db_shash.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../common/db_shash.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../common/db_shash.c_objects +db_shash.o + + + FILE_$(PRJ_DIR)/../common/db_shash.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../common/mkpath.c_dependDone TRUE @@ -1635,39 +1635,21 @@ dbreg_util.o C/C++ compiler - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_objects -db_salloc.o - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_tool -C/C++ compiler - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependDone + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependDone TRUE - FILE_$(PRJ_DIR)/../env/db_shash.c_dependencies + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependencies $(PRJ_DIR)/db_config.h \ $(PRJ_DIR)/db_int.h \ $(PRJ_DIR)/db.h - FILE_$(PRJ_DIR)/../env/db_shash.c_objects -db_shash.o + FILE_$(PRJ_DIR)/../env/env_alloc.c_objects +env_alloc.o - FILE_$(PRJ_DIR)/../env/db_shash.c_tool + FILE_$(PRJ_DIR)/../env/env_alloc.c_tool C/C++ compiler @@ -1725,6 +1707,24 @@ env_file.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_globals.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_globals.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_globals.c_objects +env_globals.o + + + FILE_$(PRJ_DIR)/../env/env_globals.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_method.c_dependDone TRUE @@ -1743,6 +1743,24 @@ env_method.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_name.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_name.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_name.c_objects +env_name.o + + + FILE_$(PRJ_DIR)/../env/env_name.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_open.c_dependDone TRUE @@ -2733,6 +2751,24 @@ mp_register.o C/C++ compiler + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_objects +mp_resize.o + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../mp/mp_stat.c_dependDone TRUE @@ -2895,6 +2931,24 @@ mut_tas.o C/C++ compiler + FILE_$(PRJ_DIR)/../os/os_abort.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../os/os_abort.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../os/os_abort.c_objects +os_abort.o + + + FILE_$(PRJ_DIR)/../os/os_abort.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../os/os_alloc.c_dependDone TRUE @@ -3705,6 +3759,24 @@ rep_elect.o C/C++ compiler + FILE_$(PRJ_DIR)/../rep/rep_lease.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_objects +rep_lease.o + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../rep/rep_log.c_dependDone TRUE @@ -3831,6 +3903,24 @@ rep_verify.o C/C++ compiler + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_objects +repmgr_stub.o + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../txn/txn.c_dependDone TRUE @@ -4092,11 +4182,11 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../clib/strdup.c \ $(PRJ_DIR)/../clib/strsep.c \ $(PRJ_DIR)/../common/db_byteorder.c \ - $(PRJ_DIR)/../common/db_clock.c \ $(PRJ_DIR)/../common/db_err.c \ $(PRJ_DIR)/../common/db_getlong.c \ $(PRJ_DIR)/../common/db_idspace.c \ $(PRJ_DIR)/../common/db_log2.c \ + $(PRJ_DIR)/../common/db_shash.c \ $(PRJ_DIR)/../common/mkpath.c \ $(PRJ_DIR)/../common/util_arg.c \ $(PRJ_DIR)/../common/util_cache.c \ @@ -4143,12 +4233,13 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../dbreg/dbreg_rec.c \ $(PRJ_DIR)/../dbreg/dbreg_stat.c \ $(PRJ_DIR)/../dbreg/dbreg_util.c \ - $(PRJ_DIR)/../env/db_salloc.c \ - $(PRJ_DIR)/../env/db_shash.c \ + $(PRJ_DIR)/../env/env_alloc.c \ $(PRJ_DIR)/../env/env_config.c \ $(PRJ_DIR)/../env/env_failchk.c \ $(PRJ_DIR)/../env/env_file.c \ + $(PRJ_DIR)/../env/env_globals.c \ $(PRJ_DIR)/../env/env_method.c \ + $(PRJ_DIR)/../env/env_name.c \ $(PRJ_DIR)/../env/env_open.c \ $(PRJ_DIR)/../env/env_recover.c \ $(PRJ_DIR)/../env/env_region.c \ @@ -4204,6 +4295,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mp/mp_mvcc.c \ $(PRJ_DIR)/../mp/mp_region.c \ $(PRJ_DIR)/../mp/mp_register.c \ + $(PRJ_DIR)/../mp/mp_resize.c \ $(PRJ_DIR)/../mp/mp_stat.c \ $(PRJ_DIR)/../mp/mp_sync.c \ $(PRJ_DIR)/../mp/mp_trickle.c \ @@ -4213,6 +4305,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mutex/mut_region.c \ $(PRJ_DIR)/../mutex/mut_stat.c \ $(PRJ_DIR)/../mutex/mut_tas.c \ + $(PRJ_DIR)/../os/os_abort.c \ $(PRJ_DIR)/../os/os_alloc.c \ $(PRJ_DIR)/../os/os_clock.c \ $(PRJ_DIR)/../os/os_dir.c \ @@ -4258,6 +4351,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../rep/rep_auto.c \ $(PRJ_DIR)/../rep/rep_backup.c \ $(PRJ_DIR)/../rep/rep_elect.c \ + $(PRJ_DIR)/../rep/rep_lease.c \ $(PRJ_DIR)/../rep/rep_log.c \ $(PRJ_DIR)/../rep/rep_method.c \ $(PRJ_DIR)/../rep/rep_record.c \ @@ -4265,6 +4359,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../rep/rep_stat.c \ $(PRJ_DIR)/../rep/rep_util.c \ $(PRJ_DIR)/../rep/rep_verify.c \ + $(PRJ_DIR)/../repmgr/repmgr_stub.c \ $(PRJ_DIR)/../txn/txn.c \ $(PRJ_DIR)/../txn/txn_auto.c \ $(PRJ_DIR)/../txn/txn_chkpt.c \ diff --git a/db/build_vxworks/BerkeleyDB20small.wpj b/db/build_vxworks/BerkeleyDB20small.wpj index 2e3b8b546..40c537822 100755 --- a/db/build_vxworks/BerkeleyDB20small.wpj +++ b/db/build_vxworks/BerkeleyDB20small.wpj @@ -789,6 +789,24 @@ db_log2.o C/C++ compiler + FILE_$(PRJ_DIR)/../common/db_shash.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../common/db_shash.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../common/db_shash.c_objects +db_shash.o + + + FILE_$(PRJ_DIR)/../common/db_shash.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../common/mkpath.c_dependDone TRUE @@ -1491,39 +1509,21 @@ dbreg_util.o C/C++ compiler - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependDone + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependDone TRUE - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependencies + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependencies $(PRJ_DIR)/db_config.h \ $(PRJ_DIR)/db_int.h \ $(PRJ_DIR)/db.h - FILE_$(PRJ_DIR)/../env/db_salloc.c_objects -db_salloc.o + FILE_$(PRJ_DIR)/../env/env_alloc.c_objects +env_alloc.o - FILE_$(PRJ_DIR)/../env/db_salloc.c_tool -C/C++ compiler - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../env/db_shash.c_objects -db_shash.o - - - FILE_$(PRJ_DIR)/../env/db_shash.c_tool + FILE_$(PRJ_DIR)/../env/env_alloc.c_tool C/C++ compiler @@ -1581,6 +1581,24 @@ env_file.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_globals.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_globals.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_globals.c_objects +env_globals.o + + + FILE_$(PRJ_DIR)/../env/env_globals.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_method.c_dependDone TRUE @@ -1599,6 +1617,24 @@ env_method.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_name.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_name.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_name.c_objects +env_name.o + + + FILE_$(PRJ_DIR)/../env/env_name.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_open.c_dependDone TRUE @@ -2355,6 +2391,24 @@ mp_register.o C/C++ compiler + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_objects +mp_resize.o + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../mp/mp_stat.c_dependDone TRUE @@ -2517,6 +2571,24 @@ mut_tas.o C/C++ compiler + FILE_$(PRJ_DIR)/../os/os_abort.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../os/os_abort.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../os/os_abort.c_objects +os_abort.o + + + FILE_$(PRJ_DIR)/../os/os_abort.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../os/os_alloc.c_dependDone TRUE @@ -3129,6 +3201,24 @@ rep_stub.o C/C++ compiler + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_objects +repmgr_stub.o + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../txn/txn.c_dependDone TRUE @@ -3394,6 +3484,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../common/db_getlong.c \ $(PRJ_DIR)/../common/db_idspace.c \ $(PRJ_DIR)/../common/db_log2.c \ + $(PRJ_DIR)/../common/db_shash.c \ $(PRJ_DIR)/../common/mkpath.c \ $(PRJ_DIR)/../common/util_arg.c \ $(PRJ_DIR)/../common/util_cache.c \ @@ -3433,12 +3524,13 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../dbreg/dbreg_rec.c \ $(PRJ_DIR)/../dbreg/dbreg_stat.c \ $(PRJ_DIR)/../dbreg/dbreg_util.c \ - $(PRJ_DIR)/../env/db_salloc.c \ - $(PRJ_DIR)/../env/db_shash.c \ + $(PRJ_DIR)/../env/env_alloc.c \ $(PRJ_DIR)/../env/env_config.c \ $(PRJ_DIR)/../env/env_failchk.c \ $(PRJ_DIR)/../env/env_file.c \ + $(PRJ_DIR)/../env/env_globals.c \ $(PRJ_DIR)/../env/env_method.c \ + $(PRJ_DIR)/../env/env_name.c \ $(PRJ_DIR)/../env/env_open.c \ $(PRJ_DIR)/../env/env_recover.c \ $(PRJ_DIR)/../env/env_region.c \ @@ -3481,6 +3573,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mp/mp_mvcc.c \ $(PRJ_DIR)/../mp/mp_region.c \ $(PRJ_DIR)/../mp/mp_register.c \ + $(PRJ_DIR)/../mp/mp_resize.c \ $(PRJ_DIR)/../mp/mp_stat.c \ $(PRJ_DIR)/../mp/mp_sync.c \ $(PRJ_DIR)/../mp/mp_trickle.c \ @@ -3490,6 +3583,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mutex/mut_region.c \ $(PRJ_DIR)/../mutex/mut_stat.c \ $(PRJ_DIR)/../mutex/mut_tas.c \ + $(PRJ_DIR)/../os/os_abort.c \ $(PRJ_DIR)/../os/os_alloc.c \ $(PRJ_DIR)/../os/os_clock.c \ $(PRJ_DIR)/../os/os_dir.c \ @@ -3524,6 +3618,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../os_vxworks/os_vx_rpath.c \ $(PRJ_DIR)/../qam/qam_stub.c \ $(PRJ_DIR)/../rep/rep_stub.c \ + $(PRJ_DIR)/../repmgr/repmgr_stub.c \ $(PRJ_DIR)/../txn/txn.c \ $(PRJ_DIR)/../txn/txn_auto.c \ $(PRJ_DIR)/../txn/txn_chkpt.c \ diff --git a/db/build_vxworks/BerkeleyDB22.wpj b/db/build_vxworks/BerkeleyDB22.wpj index a130b4833..a51efed24 100755 --- a/db/build_vxworks/BerkeleyDB22.wpj +++ b/db/build_vxworks/BerkeleyDB22.wpj @@ -776,24 +776,6 @@ db_byteorder.o C/C++ compiler - FILE_$(PRJ_DIR)/../common/db_clock.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../common/db_clock.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../common/db_clock.c_objects -db_clock.o - - - FILE_$(PRJ_DIR)/../common/db_clock.c_tool -C/C++ compiler - - FILE_$(PRJ_DIR)/../common/db_err.c_dependDone TRUE @@ -866,6 +848,24 @@ db_log2.o C/C++ compiler + FILE_$(PRJ_DIR)/../common/db_shash.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../common/db_shash.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../common/db_shash.c_objects +db_shash.o + + + FILE_$(PRJ_DIR)/../common/db_shash.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../common/mkpath.c_dependDone TRUE @@ -1694,39 +1694,21 @@ dbreg_util.o C/C++ compiler - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_objects -db_salloc.o - - - FILE_$(PRJ_DIR)/../env/db_salloc.c_tool -C/C++ compiler - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependDone + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependDone TRUE - FILE_$(PRJ_DIR)/../env/db_shash.c_dependencies + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependencies $(PRJ_DIR)/db_config.h \ $(PRJ_DIR)/db_int.h \ $(PRJ_DIR)/db.h - FILE_$(PRJ_DIR)/../env/db_shash.c_objects -db_shash.o + FILE_$(PRJ_DIR)/../env/env_alloc.c_objects +env_alloc.o - FILE_$(PRJ_DIR)/../env/db_shash.c_tool + FILE_$(PRJ_DIR)/../env/env_alloc.c_tool C/C++ compiler @@ -1784,6 +1766,24 @@ env_file.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_globals.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_globals.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_globals.c_objects +env_globals.o + + + FILE_$(PRJ_DIR)/../env/env_globals.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_method.c_dependDone TRUE @@ -1802,6 +1802,24 @@ env_method.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_name.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_name.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_name.c_objects +env_name.o + + + FILE_$(PRJ_DIR)/../env/env_name.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_open.c_dependDone TRUE @@ -2792,6 +2810,24 @@ mp_register.o C/C++ compiler + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_objects +mp_resize.o + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../mp/mp_stat.c_dependDone TRUE @@ -2954,6 +2990,24 @@ mut_tas.o C/C++ compiler + FILE_$(PRJ_DIR)/../os/os_abort.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../os/os_abort.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../os/os_abort.c_objects +os_abort.o + + + FILE_$(PRJ_DIR)/../os/os_abort.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../os/os_alloc.c_dependDone TRUE @@ -3764,6 +3818,24 @@ rep_elect.o C/C++ compiler + FILE_$(PRJ_DIR)/../rep/rep_lease.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_objects +rep_lease.o + + + FILE_$(PRJ_DIR)/../rep/rep_lease.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../rep/rep_log.c_dependDone TRUE @@ -3890,6 +3962,24 @@ rep_verify.o C/C++ compiler + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_objects +repmgr_stub.o + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../txn/txn.c_dependDone TRUE @@ -4151,11 +4241,11 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../clib/strdup.c \ $(PRJ_DIR)/../clib/strsep.c \ $(PRJ_DIR)/../common/db_byteorder.c \ - $(PRJ_DIR)/../common/db_clock.c \ $(PRJ_DIR)/../common/db_err.c \ $(PRJ_DIR)/../common/db_getlong.c \ $(PRJ_DIR)/../common/db_idspace.c \ $(PRJ_DIR)/../common/db_log2.c \ + $(PRJ_DIR)/../common/db_shash.c \ $(PRJ_DIR)/../common/mkpath.c \ $(PRJ_DIR)/../common/util_arg.c \ $(PRJ_DIR)/../common/util_cache.c \ @@ -4202,12 +4292,13 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../dbreg/dbreg_rec.c \ $(PRJ_DIR)/../dbreg/dbreg_stat.c \ $(PRJ_DIR)/../dbreg/dbreg_util.c \ - $(PRJ_DIR)/../env/db_salloc.c \ - $(PRJ_DIR)/../env/db_shash.c \ + $(PRJ_DIR)/../env/env_alloc.c \ $(PRJ_DIR)/../env/env_config.c \ $(PRJ_DIR)/../env/env_failchk.c \ $(PRJ_DIR)/../env/env_file.c \ + $(PRJ_DIR)/../env/env_globals.c \ $(PRJ_DIR)/../env/env_method.c \ + $(PRJ_DIR)/../env/env_name.c \ $(PRJ_DIR)/../env/env_open.c \ $(PRJ_DIR)/../env/env_recover.c \ $(PRJ_DIR)/../env/env_region.c \ @@ -4263,6 +4354,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mp/mp_mvcc.c \ $(PRJ_DIR)/../mp/mp_region.c \ $(PRJ_DIR)/../mp/mp_register.c \ + $(PRJ_DIR)/../mp/mp_resize.c \ $(PRJ_DIR)/../mp/mp_stat.c \ $(PRJ_DIR)/../mp/mp_sync.c \ $(PRJ_DIR)/../mp/mp_trickle.c \ @@ -4272,6 +4364,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mutex/mut_region.c \ $(PRJ_DIR)/../mutex/mut_stat.c \ $(PRJ_DIR)/../mutex/mut_tas.c \ + $(PRJ_DIR)/../os/os_abort.c \ $(PRJ_DIR)/../os/os_alloc.c \ $(PRJ_DIR)/../os/os_clock.c \ $(PRJ_DIR)/../os/os_dir.c \ @@ -4317,6 +4410,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../rep/rep_auto.c \ $(PRJ_DIR)/../rep/rep_backup.c \ $(PRJ_DIR)/../rep/rep_elect.c \ + $(PRJ_DIR)/../rep/rep_lease.c \ $(PRJ_DIR)/../rep/rep_log.c \ $(PRJ_DIR)/../rep/rep_method.c \ $(PRJ_DIR)/../rep/rep_record.c \ @@ -4324,6 +4418,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../rep/rep_stat.c \ $(PRJ_DIR)/../rep/rep_util.c \ $(PRJ_DIR)/../rep/rep_verify.c \ + $(PRJ_DIR)/../repmgr/repmgr_stub.c \ $(PRJ_DIR)/../txn/txn.c \ $(PRJ_DIR)/../txn/txn_auto.c \ $(PRJ_DIR)/../txn/txn_chkpt.c \ diff --git a/db/build_vxworks/BerkeleyDB22small.wpj b/db/build_vxworks/BerkeleyDB22small.wpj index 622bc9650..bbbccb64b 100755 --- a/db/build_vxworks/BerkeleyDB22small.wpj +++ b/db/build_vxworks/BerkeleyDB22small.wpj @@ -848,6 +848,24 @@ db_log2.o C/C++ compiler + FILE_$(PRJ_DIR)/../common/db_shash.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../common/db_shash.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../common/db_shash.c_objects +db_shash.o + + + FILE_$(PRJ_DIR)/../common/db_shash.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../common/mkpath.c_dependDone TRUE @@ -1550,39 +1568,21 @@ dbreg_util.o C/C++ compiler - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependDone + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependDone TRUE - FILE_$(PRJ_DIR)/../env/db_salloc.c_dependencies + FILE_$(PRJ_DIR)/../env/env_alloc.c_dependencies $(PRJ_DIR)/db_config.h \ $(PRJ_DIR)/db_int.h \ $(PRJ_DIR)/db.h - FILE_$(PRJ_DIR)/../env/db_salloc.c_objects -db_salloc.o + FILE_$(PRJ_DIR)/../env/env_alloc.c_objects +env_alloc.o - FILE_$(PRJ_DIR)/../env/db_salloc.c_tool -C/C++ compiler - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/../env/db_shash.c_dependencies -$(PRJ_DIR)/db_config.h \ - $(PRJ_DIR)/db_int.h \ - $(PRJ_DIR)/db.h - - - FILE_$(PRJ_DIR)/../env/db_shash.c_objects -db_shash.o - - - FILE_$(PRJ_DIR)/../env/db_shash.c_tool + FILE_$(PRJ_DIR)/../env/env_alloc.c_tool C/C++ compiler @@ -1640,6 +1640,24 @@ env_file.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_globals.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_globals.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_globals.c_objects +env_globals.o + + + FILE_$(PRJ_DIR)/../env/env_globals.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_method.c_dependDone TRUE @@ -1658,6 +1676,24 @@ env_method.o C/C++ compiler + FILE_$(PRJ_DIR)/../env/env_name.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../env/env_name.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../env/env_name.c_objects +env_name.o + + + FILE_$(PRJ_DIR)/../env/env_name.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../env/env_open.c_dependDone TRUE @@ -2414,6 +2450,24 @@ mp_register.o C/C++ compiler + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_objects +mp_resize.o + + + FILE_$(PRJ_DIR)/../mp/mp_resize.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../mp/mp_stat.c_dependDone TRUE @@ -2576,6 +2630,24 @@ mut_tas.o C/C++ compiler + FILE_$(PRJ_DIR)/../os/os_abort.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../os/os_abort.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../os/os_abort.c_objects +os_abort.o + + + FILE_$(PRJ_DIR)/../os/os_abort.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../os/os_alloc.c_dependDone TRUE @@ -3188,6 +3260,24 @@ rep_stub.o C/C++ compiler + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependDone +TRUE + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_dependencies +$(PRJ_DIR)/db_config.h \ + $(PRJ_DIR)/db_int.h \ + $(PRJ_DIR)/db.h + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_objects +repmgr_stub.o + + + FILE_$(PRJ_DIR)/../repmgr/repmgr_stub.c_tool +C/C++ compiler + + FILE_$(PRJ_DIR)/../txn/txn.c_dependDone TRUE @@ -3453,6 +3543,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../common/db_getlong.c \ $(PRJ_DIR)/../common/db_idspace.c \ $(PRJ_DIR)/../common/db_log2.c \ + $(PRJ_DIR)/../common/db_shash.c \ $(PRJ_DIR)/../common/mkpath.c \ $(PRJ_DIR)/../common/util_arg.c \ $(PRJ_DIR)/../common/util_cache.c \ @@ -3492,12 +3583,13 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../dbreg/dbreg_rec.c \ $(PRJ_DIR)/../dbreg/dbreg_stat.c \ $(PRJ_DIR)/../dbreg/dbreg_util.c \ - $(PRJ_DIR)/../env/db_salloc.c \ - $(PRJ_DIR)/../env/db_shash.c \ + $(PRJ_DIR)/../env/env_alloc.c \ $(PRJ_DIR)/../env/env_config.c \ $(PRJ_DIR)/../env/env_failchk.c \ $(PRJ_DIR)/../env/env_file.c \ + $(PRJ_DIR)/../env/env_globals.c \ $(PRJ_DIR)/../env/env_method.c \ + $(PRJ_DIR)/../env/env_name.c \ $(PRJ_DIR)/../env/env_open.c \ $(PRJ_DIR)/../env/env_recover.c \ $(PRJ_DIR)/../env/env_region.c \ @@ -3540,6 +3632,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mp/mp_mvcc.c \ $(PRJ_DIR)/../mp/mp_region.c \ $(PRJ_DIR)/../mp/mp_register.c \ + $(PRJ_DIR)/../mp/mp_resize.c \ $(PRJ_DIR)/../mp/mp_stat.c \ $(PRJ_DIR)/../mp/mp_sync.c \ $(PRJ_DIR)/../mp/mp_trickle.c \ @@ -3549,6 +3642,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../mutex/mut_region.c \ $(PRJ_DIR)/../mutex/mut_stat.c \ $(PRJ_DIR)/../mutex/mut_tas.c \ + $(PRJ_DIR)/../os/os_abort.c \ $(PRJ_DIR)/../os/os_alloc.c \ $(PRJ_DIR)/../os/os_clock.c \ $(PRJ_DIR)/../os/os_dir.c \ @@ -3583,6 +3677,7 @@ $(PRJ_DIR)/../btree/bt_compact.c \ $(PRJ_DIR)/../os_vxworks/os_vx_rpath.c \ $(PRJ_DIR)/../qam/qam_stub.c \ $(PRJ_DIR)/../rep/rep_stub.c \ + $(PRJ_DIR)/../repmgr/repmgr_stub.c \ $(PRJ_DIR)/../txn/txn.c \ $(PRJ_DIR)/../txn/txn_auto.c \ $(PRJ_DIR)/../txn/txn_chkpt.c \ diff --git a/db/build_vxworks/clib_port.h b/db/build_vxworks/clib_port.h index cfefbb37d..833a18497 100644 --- a/db/build_vxworks/clib_port.h +++ b/db/build_vxworks/clib_port.h @@ -1,3 +1,78 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +#define INT64_FMT "%lld" +#define UINT64_FMT "%llu" +#endif /* HAVE_64BIT_TYPES */ + /* * Exit success/failure macros. */ @@ -17,6 +92,21 @@ #ifndef HAVE_ATOL #define atol __db_Catol #endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif #ifndef HAVE_GETADDRINFO #define freeaddrinfo(a) __db_Cfreeaddrinfo(a) #define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) @@ -32,9 +122,21 @@ #define optopt __db_Coptopt #define optreset __db_Coptreset #endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif #ifndef HAVE_ISSPACE #define isspace __db_Cisspace #endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif #ifndef HAVE_MEMCMP #define memcmp __db_Cmemcmp #endif @@ -48,6 +150,9 @@ #define printf __db_Cprintf #define fprintf __db_Cfprintf #endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif #ifndef HAVE_RAISE #define raise __db_Craise #endif @@ -92,6 +197,9 @@ #ifndef HAVE_STRTOUL #define strtoul __db_Cstrtoul #endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif #ifndef HAVE_VSNPRINTF #define vsnprintf __db_Cvsnprintf #endif diff --git a/db/build_vxworks/db.h b/db/build_vxworks/db.h index e297af6d0..a241563ce 100644 --- a/db/build_vxworks/db.h +++ b/db/build_vxworks/db.h @@ -2,10 +2,9 @@ /* * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db.in,v 12.108 2006/09/13 14:53:37 mjc Exp $ + * $Id: db.in,v 12.158 2007/06/28 14:23:35 mjc Exp $ * * db.h include file layout: * General. @@ -22,7 +21,7 @@ #ifndef _DB_H_ #define _DB_H_ -#ifndef __NO_SYSTEM_INCLUDES +#ifndef __NO_SYSTEM_INCLUDES #include #include #endif @@ -44,9 +43,9 @@ extern "C" { * Berkeley DB version information. */ #define DB_VERSION_MAJOR 4 -#define DB_VERSION_MINOR 5 -#define DB_VERSION_PATCH 20 -#define DB_VERSION_STRING "Berkeley DB 4.5.20: (September 20, 2006)" +#define DB_VERSION_MINOR 6 +#define DB_VERSION_PATCH 18 +#define DB_VERSION_STRING "Berkeley DB 4.6.18: (July 17, 2007)" /* * !!! @@ -72,6 +71,8 @@ typedef unsigned long long u_int64_t; /* + * Missing ANSI types. + * * uintmax_t -- * Largest unsigned type, used to align structures in memory. We don't store * floating point types in structures, so integral types should be sufficient @@ -90,6 +91,7 @@ typedef unsigned long long u_int64_t; typedef unsigned long uintmax_t; typedef unsigned long uintptr_t; + /* * Sequences are only available on machines with 64-bit integral types. */ @@ -130,7 +132,9 @@ struct __db_env; typedef struct __db_env DB_ENV; struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; struct __db_log; typedef struct __db_log DB_LOG; @@ -150,6 +154,8 @@ struct __db_rep; typedef struct __db_rep DB_REP; struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; struct __db_repmgr_site; \ typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; @@ -176,13 +182,14 @@ struct __db_dbt { void *app_data; #define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ -#define DB_DBT_ISSET 0x002 /* Lower level calls set value. */ -#define DB_DBT_MALLOC 0x004 /* Return in malloc'd memory. */ -#define DB_DBT_PARTIAL 0x008 /* Partial put/get. */ -#define DB_DBT_REALLOC 0x010 /* Return in realloc'd memory. */ -#define DB_DBT_USERCOPY 0x020 /* Use the user-supplied callback. */ -#define DB_DBT_USERMEM 0x040 /* Return in user's memory. */ -#define DB_DBT_DUPOK 0x080 /* Insert if duplicate. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ u_int32_t flags; }; @@ -201,10 +208,10 @@ struct __db_dbt { #define DB_THREAD 0x0000080 /* Applications are threaded. */ #define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ #define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ -#define DB_TXN_NOT_DURABLE 0x0000400 /* Do not log changes. */ -#define DB_TXN_WRITE_NOSYNC 0x0000800 /* Write the log but don't sync. */ -#define DB_USE_ENVIRON 0x0001000 /* Use the environment. */ -#define DB_USE_ENVIRON_ROOT 0x0002000 /* Use the environment if root. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ /* * Common flags -- @@ -216,9 +223,9 @@ struct __db_dbt { * (Note: until the 4.3 release, legal to DB->associate, DB->del, * DB->put, DB->remove, DB->rename and DB->truncate, and others.) * DB_READ_COMMITTED: - * DB->cursor, DB->get, DB->join, DBcursor->c_get, DB_ENV->txn_begin + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin * DB_READ_UNCOMMITTED: - * DB->cursor, DB->get, DB->join, DB->open, DBcursor->c_get, + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, * DB_ENV->txn_begin * DB_TXN_SNAPSHOT: * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor @@ -228,6 +235,7 @@ struct __db_dbt { * without also changing the masks for the flags that can be OR'd into DB * access method and cursor operation values. */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ #define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ #define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ @@ -254,19 +262,24 @@ struct __db_dbt { #define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ /* - * Flags private to DB_ENV->open. + * Flags shared by DB_ENV->remove and DB_ENV->open. * Shared flags up to 0x0002000 */ -#define DB_INIT_CDB 0x0004000 /* Concurrent Access Methods. */ -#define DB_INIT_LOCK 0x0008000 /* Initialize locking. */ -#define DB_INIT_LOG 0x0010000 /* Initialize logging. */ -#define DB_INIT_MPOOL 0x0020000 /* Initialize mpool. */ -#define DB_INIT_REP 0x0040000 /* Initialize replication. */ -#define DB_INIT_TXN 0x0080000 /* Initialize transactions. */ -#define DB_LOCKDOWN 0x0100000 /* Lock memory into physical core. */ -#define DB_PRIVATE 0x0200000 /* DB_ENV is process local. */ -#define DB_RECOVER_FATAL 0x0400000 /* Run catastrophic recovery. */ -#define DB_REGISTER 0x0800000 /* Multi-process registry. */ -#define DB_SYSTEM_MEM 0x1000000 /* Use system-backed memory. */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ #define DB_JOINENV 0x0 /* Compatibility. */ @@ -288,8 +301,13 @@ struct __db_dbt { /* * Flags private to DB_ENV->txn_begin. * Shared flags up to 0x0002000 */ -#define DB_TXN_NOWAIT 0x0004000 /* Do not wait for locks in this TXN. */ -#define DB_TXN_SYNC 0x0008000 /* Always sync log on commit. */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ /* * Flags private to DB_ENV->set_encrypt. @@ -422,9 +440,11 @@ struct __db_mutex_stat { u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /* This is the length of the buffer passed to DB_ENV->thread_id_string() */ @@ -460,6 +480,11 @@ struct __db_mutex_stat { #define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ #define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + /* * Simple R/W lock modes and for multi-granularity intention locking. * @@ -519,9 +544,10 @@ struct __db_lock_stat { u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ u_int32_t st_maxobjects; /* Maximum num of objects in table. */ int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_nlocks; /* Current number of locks. */ u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ - u_int32_t st_nlockers; /* Current number of lockers. */ u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ u_int32_t st_nobjects; /* Current number of objects. */ u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ @@ -536,9 +562,29 @@ struct __db_lock_stat { u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ db_timeout_t st_txntimeout; /* Transaction timeout. */ u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ }; /* @@ -579,7 +625,7 @@ struct __db_lockreq { /******************************************************* * Logging. *******************************************************/ -#define DB_LOGVERSION 12 /* Current log version. */ +#define DB_LOGVERSION 13 /* Current log version. */ #define DB_LOGOLDVER 8 /* Oldest log version supported. */ #define DB_LOGMAGIC 0x040988 @@ -630,12 +676,12 @@ struct __db_lsn { struct __db_log_cursor { DB_ENV *dbenv; /* Enclosing dbenv. */ - DB_FH *c_fhp; /* File handle. */ - DB_LSN c_lsn; /* Cursor: LSN */ - u_int32_t c_len; /* Cursor: record length */ - u_int32_t c_prev; /* Cursor: previous record's offset */ + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ - DBT c_dbt; /* Return DBT. */ + DBT dbt; /* Return DBT. */ DB_LSN p_lsn; /* Persist LSN. */ u_int32_t p_version; /* Persist version. */ @@ -665,11 +711,12 @@ struct __db_log_stat { int st_mode; /* Log file permissions mode. */ u_int32_t st_lg_bsize; /* Log buffer size. */ u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_record; /* Records entered into the log. */ u_int32_t st_w_bytes; /* Bytes to log. */ u_int32_t st_w_mbytes; /* Megabytes to log. */ - u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ - u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ u_int32_t st_wcount; /* Total I/O writes to the log. */ u_int32_t st_wcount_fill; /* Overflow writes to the log. */ u_int32_t st_rcount; /* Total I/O reads from the log. */ @@ -680,9 +727,10 @@ struct __db_log_stat { u_int32_t st_cur_offset; /* Current log file offset. */ u_int32_t st_disk_file; /* Known on disk log file number. */ u_int32_t st_disk_offset; /* Known on disk log file offset. */ - roff_t st_regsize; /* Region size. */ u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* @@ -706,15 +754,16 @@ struct __db_log_stat { #define DB_MPOOL_LAST 0x010 /* Return the last page. */ #define DB_MPOOL_NEW 0x020 /* Create a new page. */ -/* Flag values for DB_MPOOLFILE->put, DB_MPOOLFILE->set. */ -#define DB_MPOOL_DISCARD 0x001 /* Don't cache the page. */ +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ /* Flags values for DB_MPOOLFILE->set_flags. */ #define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ #define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ -/* Priority values for DB_MPOOLFILE->set_priority. */ +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ typedef enum { + DB_PRIORITY_UNCHANGED=0, DB_PRIORITY_VERY_LOW=1, DB_PRIORITY_LOW=2, DB_PRIORITY_DEFAULT=3, @@ -775,24 +824,24 @@ struct __db_mpoolfile { int (*close) __P((DB_MPOOLFILE *, u_int32_t)); int (*get) __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); - int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); - int (*put) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*set) __P((DB_MPOOLFILE *, void *, u_int32_t)); int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); int (*get_ftype) __P((DB_MPOOLFILE *, int *)); - int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); - int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); - int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); int (*sync) __P((DB_MPOOLFILE *)); /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ @@ -817,12 +866,14 @@ struct __db_mpoolfile { struct __db_mpool_stat { u_int32_t st_gbytes; /* Total cache size: GB. */ u_int32_t st_bytes; /* Total cache size: B. */ - u_int32_t st_ncache; /* Number of caches. */ - roff_t st_regsize; /* Region size. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ size_t st_mmapsize; /* Maximum file size for mmap. */ int st_maxopenfd; /* Maximum number of open fd's. */ int st_maxwrite; /* Maximum buffers to write. */ - int st_maxwrite_sleep; /* Sleep after writing max buffers. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ @@ -832,7 +883,6 @@ struct __db_mpool_stat { u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ - u_int32_t st_pages; /* Total number of pages. */ u_int32_t st_page_clean; /* Clean pages. */ u_int32_t st_page_dirty; /* Dirty pages. */ u_int32_t st_hash_buckets; /* Number of hash buckets. */ @@ -854,18 +904,22 @@ struct __db_mpool_stat { u_int32_t st_alloc_pages; /* Pages checked during allocation. */ u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* Mpool file statistics structure. */ struct __db_mpool_fstat { char *file_name; /* File name. */ u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ u_int32_t st_page_create; /* Pages created in the cache. */ u_int32_t st_page_in; /* Pages read in. */ u_int32_t st_page_out; /* Pages written out. */ +#endif }; /******************************************************* @@ -899,7 +953,8 @@ struct __db_txn { DB_TXN *parent; /* Pointer to transaction's parent. */ u_int32_t txnid; /* Unique transaction id. */ - char *name; /* Transaction name */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ db_threadid_t tid; /* Thread id for use in MT XA. */ void *td; /* Detail structure within region. */ @@ -940,7 +995,7 @@ struct __db_txn { struct { struct __txn_event *tqh_first; struct __txn_event **tqh_last; - } events; + } events; /* Links deferred events. */ /* * !!! @@ -950,7 +1005,7 @@ struct __db_txn { struct { struct __txn_logrec *stqh_first; struct __txn_logrec **stqh_last; - } logs; /* Links deferred events. */ + } logs; /* Links in memory log records. */ /* * !!! @@ -1047,6 +1102,9 @@ struct __db_txn_active { }; struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS DB_LSN st_last_ckp; /* lsn of the last checkpoint */ time_t st_time_ckp; /* time of last checkpoint */ u_int32_t st_last_txnid; /* last transaction id given out */ @@ -1056,14 +1114,13 @@ struct __db_txn_stat { u_int32_t st_ncommits; /* number of committed transactions */ u_int32_t st_nactive; /* number of active transactions */ u_int32_t st_nsnapshot; /* number of snapshot transactions */ - u_int32_t st_nrestores; /* number of restored transactions - after recovery. */ u_int32_t st_maxnactive; /* maximum active transactions */ u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /******************************************************* @@ -1088,8 +1145,11 @@ struct __db_txn_stat { */ #define DB_REP_CLIENT 1 #define DB_REP_ELECTION 2 -#define DB_REP_FULL_ELECTION 3 -#define DB_REP_MASTER 4 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 /* Acknowledgement policies. */ #define DB_REPMGR_ACKS_ALL 1 @@ -1099,33 +1159,38 @@ struct __db_txn_stat { #define DB_REPMGR_ACKS_ONE_PEER 5 #define DB_REPMGR_ACKS_QUORUM 6 -/* Replication Framework timeout configuration values. */ -#define DB_REP_ACK_TIMEOUT 1 -#define DB_REP_ELECTION_TIMEOUT 2 -#define DB_REP_ELECTION_RETRY 3 -#define DB_REP_CONNECTION_RETRY 4 +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ /* Event notification types. */ #define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ #define DB_EVENT_PANIC 1 #define DB_EVENT_REP_CLIENT 2 -#define DB_EVENT_REP_MASTER 3 -#define DB_EVENT_REP_NEWMASTER 4 -#define DB_EVENT_REP_STARTUPDONE 5 -#define DB_EVENT_WRITE_FAILED 6 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 /* Flag value for repmgr_add_remote_site. */ #define DB_REPMGR_PEER 0x01 /* Replication Manager site status. */ struct __db_repmgr_site { - int eid; - char *host; - u_int port; + int eid; + char *host; + u_int port; #define DB_REPMGR_CONNECTED 0x01 #define DB_REPMGR_DISCONNECTED 0x02 - u_int32_t status; + u_int32_t status; }; /* Replication statistics. */ @@ -1139,6 +1204,9 @@ struct __db_rep_stat { * off somewhat (or, on unreasonable architectures under unlucky * circumstances, garbaged). */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_status; /* Current replication status. */ DB_LSN st_next_lsn; /* Next LSN to use or expect. */ DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ @@ -1161,7 +1229,6 @@ struct __db_rep_stat { u_int32_t st_gen; /* Current generation number. */ u_int32_t st_egen; /* Current election gen number. */ u_int32_t st_log_duplicated; /* Log records received multiply.+ */ - u_int32_t st_log_queued; /* Log records currently queued.+ */ u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ u_int32_t st_log_records; /* Log records received and put.+ */ @@ -1183,8 +1250,8 @@ struct __db_rep_stat { u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ u_int32_t st_pg_records; /* Pages received and stored.+ */ u_int32_t st_pg_requested; /* Pages missed and requested.+ */ - u_int32_t st_startup_complete; /* Site completed client sync-up. */ u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ /* Elections generally. */ u_int32_t st_elections; /* # of elections held.+ */ @@ -1202,6 +1269,17 @@ struct __db_rep_stat { int st_election_votes; /* Votes received in this round. */ u_int32_t st_election_sec; /* Last election time seconds. */ u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ }; /******************************************************* @@ -1291,7 +1369,7 @@ typedef enum { #define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ #define DB_BTREEMAGIC 0x053162 -#define DB_HASHVERSION 8 /* Current hash version. */ +#define DB_HASHVERSION 9 /* Current hash version. */ #define DB_HASHOLDVER 7 /* Oldest hash version supported. */ #define DB_HASHMAGIC 0x061561 @@ -1306,39 +1384,37 @@ typedef enum { * DB access method and cursor operation values. Each value is an operation * code to which additional bit flags are added. */ -#define DB_AFTER 1 /* c_put() */ -#define DB_APPEND 2 /* put() */ -#define DB_BEFORE 3 /* c_put() */ -#define DB_CONSUME 4 /* get() */ -#define DB_CONSUME_WAIT 5 /* get() */ -#define DB_CURRENT 6 /* c_get(), c_put(), DB_LOGC->get() */ -#define DB_FIRST 7 /* c_get(), DB_LOGC->get() */ -#define DB_GET_BOTH 8 /* get(), c_get() */ -#define DB_GET_BOTHC 9 /* c_get() (internal) */ -#define DB_GET_BOTH_RANGE 10 /* get(), c_get() */ -#define DB_GET_RECNO 11 /* c_get() */ -#define DB_JOIN_ITEM 12 /* c_get(); do not do primary lookup */ -#define DB_KEYFIRST 13 /* c_put() */ -#define DB_KEYLAST 14 /* c_put() */ -#define DB_LAST 15 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT 16 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT_DUP 17 /* c_get() */ -#define DB_NEXT_NODUP 18 /* c_get() */ -#define DB_NODUPDATA 19 /* put(), c_put() */ -#define DB_NOOVERWRITE 20 /* put() */ -#define DB_NOSYNC 21 /* close() */ -#define DB_POSITION 22 /* c_dup() */ -#define DB_PREV 23 /* c_get(), DB_LOGC->get() */ -#define DB_PREV_NODUP 24 /* c_get(), DB_LOGC->get() */ -#define DB_SET 25 /* c_get(), DB_LOGC->get() */ -#define DB_SET_LOCK_TIMEOUT 26 /* set_timout() */ -#define DB_SET_RANGE 27 /* c_get() */ -#define DB_SET_RECNO 28 /* get(), c_get() */ -#define DB_SET_TXN_NOW 29 /* set_timout() (internal) */ -#define DB_SET_TXN_TIMEOUT 30 /* set_timout() */ -#define DB_UPDATE_SECONDARY 31 /* c_get(), c_del() (internal) */ -#define DB_WRITECURSOR 32 /* cursor() */ -#define DB_WRITELOCK 33 /* cursor() (internal) */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ /* This has to change when the max opcode hits 255. */ #define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ @@ -1383,8 +1459,8 @@ typedef enum { #define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ #define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ #define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ -#define DB_REP_LOCKOUT (-30980)/* API/Replication lockout now. */ -#define DB_REP_NEWMASTER (-30979)/* We have learned of a new master. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ #define DB_REP_NEWSITE (-30978)/* New site entered system. */ #define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ #define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ @@ -1396,17 +1472,19 @@ typedef enum { /* DB (private) error return codes. */ #define DB_ALREADY_ABORTED (-30899) #define DB_DELETED (-30898)/* Recovery file marked deleted. */ -#define DB_NEEDSPLIT (-30897)/* Page needs to be split. */ -#define DB_REP_BULKOVF (-30896)/* Rep bulk buffer overflow. */ -#define DB_REP_EGENCHG (-30895)/* Egen changed while in election. */ -#define DB_REP_LOGREADY (-30894)/* Rep log ready for recovery. */ -#define DB_REP_PAGEDONE (-30893)/* This page was already done. */ -#define DB_SURPRISE_KID (-30892)/* Child commit where parent +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent didn't know it was a parent. */ -#define DB_SWAPBYTES (-30891)/* Database needs byte swapping. */ -#define DB_TIMEOUT (-30890)/* Timed out waiting for election. */ -#define DB_TXN_CKP (-30889)/* Encountered ckp record in log. */ -#define DB_VERIFY_FATAL (-30888)/* DB->verify cannot proceed. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ /* Database handle. */ struct __db { @@ -1414,6 +1492,7 @@ struct __db { * Public: owned by the application. *******************************************************/ u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ /* Callbacks. */ int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); @@ -1444,9 +1523,10 @@ struct __db { FNAME *log_filename; /* File's naming info for logging. */ db_pgno_t meta_pgno; /* Meta page number */ - u_int32_t lid; /* Locker id for handle locking. */ - u_int32_t cur_lid; /* Current handle lock holder. */ - u_int32_t associate_lid; /* Locker id for DB->associate call. */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ DB_LOCK handle_lock; /* Lock held on this handle. */ u_int cl_id; /* RPC: remote client id. */ @@ -1525,8 +1605,8 @@ struct __db { } s_secondaries; /* - * List entries for secondaries, and reference count of how - * many threads are updating this secondary (see __db_c_put). + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). * * !!! * Note that these are synchronized by the primary's mutex, but @@ -1572,6 +1652,7 @@ struct __db { int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); void (*err) __P((DB *, int, const char *, ...)); void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); int (*fd) __P((DB *, int *)); int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int (*get_bt_minkey) __P((DB *, u_int32_t *)); @@ -1588,8 +1669,10 @@ struct __db { int (*get_lorder) __P((DB *, int *)); DB_MPOOLFILE *(*get_mpf) __P((DB *)); void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); int (*get_open_flags) __P((DB *, u_int32_t *)); int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); int (*get_q_extentsize) __P((DB *, u_int32_t *)); int (*get_re_delim) __P((DB *, int *)); int (*get_re_len) __P((DB *, u_int32_t *)); @@ -1625,6 +1708,8 @@ struct __db { void (*set_errpfx) __P((DB *, const char *)); int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); int (*set_h_ffactor) __P((DB *, u_int32_t)); int (*set_h_hash) __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); @@ -1634,6 +1719,7 @@ struct __db { void (*set_msgfile) __P((DB *, FILE *)); int (*set_pagesize) __P((DB *, u_int32_t)); int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); int (*set_q_extentsize) __P((DB *, u_int32_t)); int (*set_re_delim) __P((DB *, int)); int (*set_re_len) __P((DB *, u_int32_t)); @@ -1677,36 +1763,35 @@ struct __db { int preserve_fid; /* Do not free fileid on close. */ #define DB_AM_CHKSUM 0x00000001 /* Checksumming */ -#define DB_AM_CL_WRITER 0x00000002 /* Allow writes in client replica */ -#define DB_AM_COMPENSATE 0x00000004 /* Created by compensating txn */ -#define DB_AM_CREATED 0x00000008 /* Database was created upon open */ -#define DB_AM_CREATED_MSTR 0x00000010 /* Encompassing file was created */ -#define DB_AM_DBM_ERROR 0x00000020 /* Error in DBM/NDBM database */ -#define DB_AM_DELIMITER 0x00000040 /* Variable length delimiter set */ -#define DB_AM_DISCARD 0x00000080 /* Discard any cached pages */ -#define DB_AM_DUP 0x00000100 /* DB_DUP */ -#define DB_AM_DUPSORT 0x00000200 /* DB_DUPSORT */ -#define DB_AM_ENCRYPT 0x00000400 /* Encryption */ -#define DB_AM_FIXEDLEN 0x00000800 /* Fixed-length records */ -#define DB_AM_INMEM 0x00001000 /* In-memory; no sync on close */ -#define DB_AM_INORDER 0x00002000 /* DB_INORDER */ -#define DB_AM_IN_RENAME 0x00004000 /* File is being renamed */ -#define DB_AM_NOT_DURABLE 0x00008000 /* Do not log changes */ -#define DB_AM_OPEN_CALLED 0x00010000 /* DB->open called */ -#define DB_AM_PAD 0x00020000 /* Fixed-length record pad */ -#define DB_AM_PGDEF 0x00040000 /* Page size was defaulted */ -#define DB_AM_RDONLY 0x00080000 /* Database is readonly */ -#define DB_AM_READ_UNCOMMITTED 0x00100000 /* Support degree 1 isolation */ -#define DB_AM_RECNUM 0x00200000 /* DB_RECNUM */ -#define DB_AM_RECOVER 0x00400000 /* DB opened by recovery routine */ -#define DB_AM_RENUMBER 0x00800000 /* DB_RENUMBER */ -#define DB_AM_REVSPLITOFF 0x01000000 /* DB_REVSPLITOFF */ -#define DB_AM_SECONDARY 0x02000000 /* Database is a secondary index */ -#define DB_AM_SNAPSHOT 0x04000000 /* DB_SNAPSHOT */ -#define DB_AM_SUBDB 0x08000000 /* Subdatabases supported */ -#define DB_AM_SWAP 0x10000000 /* Pages need to be byte-swapped */ -#define DB_AM_TXN 0x20000000 /* Opened in a transaction */ -#define DB_AM_VERIFYING 0x40000000 /* DB handle is in the verifier */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ u_int32_t orig_flags; /* Flags at open, for refresh */ u_int32_t flags; }; @@ -1777,6 +1862,7 @@ struct __db { struct __dbc { DB *dbp; /* Related DB access method. */ DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ /* * Active/free cursor queues. @@ -1810,7 +1896,7 @@ struct __dbc { DBT my_rdata; /* Space for returned data. */ void *lref; /* Reference to default locker. */ - u_int32_t locker; /* Locker for this operation. */ + DB_LOCKER *locker; /* Locker for this operation. */ DBT lock_dbt; /* DBT referencing lock. */ DB_LOCK_ILOCK lock; /* Object to be locked. */ DB_LOCK mylock; /* CDB lock held on this cursor. */ @@ -1822,6 +1908,18 @@ struct __dbc { DBC_INTERNAL *internal; /* Access method private. */ /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ int (*c_close) __P((DBC *)); int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); int (*c_del) __P((DBC *, u_int32_t)); @@ -1829,16 +1927,15 @@ struct __dbc { int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); - /* DBC PUBLIC HANDLE LIST END */ /* DBC PRIVATE HANDLE LIST BEGIN */ - int (*c_am_bulk) __P((DBC *, DBT *, u_int32_t)); - int (*c_am_close) __P((DBC *, db_pgno_t, int *)); - int (*c_am_del) __P((DBC *)); - int (*c_am_destroy) __P((DBC *)); - int (*c_am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_writelock) __P((DBC *)); + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); /* DBC PRIVATE HANDLE LIST END */ /* @@ -1879,6 +1976,7 @@ struct __db_bt_stat { u_int32_t bt_metaflags; /* Metadata flags. */ u_int32_t bt_nkeys; /* Number of unique keys. */ u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ u_int32_t bt_pagesize; /* Page size. */ u_int32_t bt_minkey; /* Minkey value. */ u_int32_t bt_re_len; /* Fixed-length record length. */ @@ -1918,6 +2016,7 @@ struct __db_h_stat { u_int32_t hash_metaflags; /* Metadata flags. */ u_int32_t hash_nkeys; /* Number of unique keys. */ u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ u_int32_t hash_pagesize; /* Page size. */ u_int32_t hash_ffactor; /* Fill factor specified at create. */ u_int32_t hash_buckets; /* Number of hash buckets. */ @@ -1989,10 +2088,12 @@ struct __db_env { * there are ever more than 32 entries, convert to a bit array. */ #define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ -#define DB_VERB_RECOVERY 0x0002 /* Recovery information. */ -#define DB_VERB_REGISTER 0x0004 /* Dump waits-for table. */ -#define DB_VERB_REPLICATION 0x0008 /* Replication information. */ -#define DB_VERB_WAITSFOR 0x0010 /* Dump waits-for table. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ u_int32_t verbose; /* Verbose output. */ void *app_private; /* Application-private handle. */ @@ -2029,14 +2130,15 @@ struct __db_env { int lg_filemode; /* Log file permission mode. */ /* Memory pool. */ - u_int32_t mp_gbytes; /* Cachesize: GB. */ - u_int32_t mp_bytes; /* Cachesize: Bytes. */ - u_int mp_ncache; /* Number of cache regions. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ size_t mp_mmapsize; /* Maximum file size for mmap. */ int mp_maxopenfd; /* Maximum open file descriptors. */ int mp_maxwrite; /* Maximum buffers to write. */ - int /* Sleep after writing max buffers. */ - mp_maxwrite_sleep; + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ /* Transactions. */ u_int32_t tx_max; /* Maximum number of transactions. */ @@ -2051,6 +2153,8 @@ struct __db_env { /******************************************************* * Private: owned by DB. *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + pid_t pid_cache; /* Cached process ID. */ /* User files, paths. */ @@ -2099,13 +2203,21 @@ struct __db_env { long shm_key; /* shmget(2) key. */ /* - * List of open DB handles for this DB_ENV, used for cursor - * adjustment. Must be protected for multi-threaded support. + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. * * !!! - * As this structure is allocated in per-process memory, the - * mutex may need to be stored elsewhere on architectures unable - * to support mutexes in heap memory, e.g. HP/UX 9. + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. * * !!! * Explicit representation of structure in queue.h. @@ -2165,6 +2277,7 @@ struct __db_env { int (*failchk) __P((DB_ENV *, u_int32_t)); int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); int (*get_data_dirs) __P((DB_ENV *, const char ***)); int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); void (*get_errfile) __P((DB_ENV *, FILE **)); @@ -2182,11 +2295,12 @@ struct __db_env { int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); int (*get_mp_max_openfd) __P((DB_ENV *, int *)); - int (*get_mp_max_write) __P((DB_ENV *, int *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); void (*get_msgfile) __P((DB_ENV *, FILE **)); int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); int (*get_tmp_dir) __P((DB_ENV *, const char **)); int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); @@ -2237,8 +2351,7 @@ struct __db_env { int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); int (*remove) __P((DB_ENV *, const char *, u_int32_t)); - int (*rep_elect) - __P((DB_ENV *, int, int, int *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); int (*rep_flush) __P((DB_ENV *)); int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); @@ -2246,8 +2359,9 @@ struct __db_env { int (*rep_get_priority) __P((DB_ENV *, int *)); int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); int (*rep_process_message) - __P((DB_ENV *, DBT *, DBT *, int *, DB_LSN *)); + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_nsites) __P((DB_ENV *, int)); int (*rep_set_priority) __P((DB_ENV *, int)); @@ -2267,11 +2381,14 @@ struct __db_env { int (*repmgr_site_list) __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), void *(*)(void *, size_t), void (*)(void *))); int (*set_app_dispatch) __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*set_data_dir) __P((DB_ENV *, const char *)); int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); void (*set_errcall) __P((DB_ENV *, @@ -2296,7 +2413,7 @@ struct __db_env { int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); int (*set_mp_max_openfd) __P((DB_ENV *, int)); - int (*set_mp_max_write) __P((DB_ENV *, int, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); void (*set_msgcall) __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); @@ -2348,33 +2465,35 @@ struct __db_env { #define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ #define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ #define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ -#define DB_ENV_CREATE 0x00000008 /* DB_CREATE set. */ -#define DB_ENV_DBLOCAL 0x00000010 /* Environment for a private DB. */ -#define DB_ENV_DIRECT_DB 0x00000020 /* DB_DIRECT_DB set. */ -#define DB_ENV_DIRECT_LOG 0x00000040 /* DB_DIRECT_LOG set. */ -#define DB_ENV_DSYNC_DB 0x00000080 /* DB_DSYNC_DB set. */ -#define DB_ENV_DSYNC_LOG 0x00000100 /* DB_DSYNC_LOG set. */ -#define DB_ENV_FATAL 0x00000200 /* Doing fatal recovery in env. */ -#define DB_ENV_LOCKDOWN 0x00000400 /* DB_LOCKDOWN set. */ -#define DB_ENV_LOG_AUTOREMOVE 0x00000800 /* DB_LOG_AUTOREMOVE set. */ -#define DB_ENV_LOG_INMEMORY 0x00001000 /* DB_LOG_INMEMORY set. */ -#define DB_ENV_MULTIVERSION 0x00002000 /* DB_MULTIVERSION set. */ -#define DB_ENV_NOLOCKING 0x00004000 /* DB_NOLOCKING set. */ -#define DB_ENV_NOMMAP 0x00008000 /* DB_NOMMAP set. */ -#define DB_ENV_NOPANIC 0x00010000 /* Okay if panic set. */ -#define DB_ENV_OPEN_CALLED 0x00020000 /* DB_ENV->open called. */ -#define DB_ENV_OVERWRITE 0x00040000 /* DB_OVERWRITE set. */ -#define DB_ENV_PRIVATE 0x00080000 /* DB_PRIVATE set. */ -#define DB_ENV_REGION_INIT 0x00100000 /* DB_REGION_INIT set. */ -#define DB_ENV_RPCCLIENT 0x00200000 /* DB_RPCCLIENT set. */ -#define DB_ENV_RPCCLIENT_GIVEN 0x00400000 /* User-supplied RPC client struct */ -#define DB_ENV_SYSTEM_MEM 0x00800000 /* DB_SYSTEM_MEM set. */ -#define DB_ENV_THREAD 0x01000000 /* DB_THREAD set. */ -#define DB_ENV_TIME_NOTGRANTED 0x02000000 /* DB_TIME_NOTGRANTED set. */ -#define DB_ENV_TXN_NOSYNC 0x04000000 /* DB_TXN_NOSYNC set. */ -#define DB_ENV_TXN_SNAPSHOT 0x08000000 /* DB_TXN_SNAPSHOT set. */ -#define DB_ENV_TXN_WRITE_NOSYNC 0x10000000 /* DB_TXN_WRITE_NOSYNC set. */ -#define DB_ENV_YIELDCPU 0x20000000 /* DB_YIELDCPU set. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ u_int32_t flags; }; diff --git a/db/build_vxworks/db_archive/db_archive.c b/db/build_vxworks/db_archive/db_archive.c index 89ee92275..f625f0a15 100644 --- a/db/build_vxworks/db_archive/db_archive.c +++ b/db/build_vxworks/db_archive/db_archive.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_archive.c,v 12.9 2006/08/26 09:23:00 bostic Exp $ + * $Id: db_archive.c,v 12.12 2007/05/17 15:14:58 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_archive_main __P((int, char *[])); @@ -48,7 +47,7 @@ db_archive_main(argc, argv) int ch, exitval, ret, verbose; char **file, *home, **list, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/build_vxworks/db_archive/db_archive/Makefile.component b/db/build_vxworks/db_archive/db_archive/Makefile.component deleted file mode 100644 index d178ce455..000000000 --- a/db/build_vxworks/db_archive/db_archive/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_archive -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_archive.o \ - compConfig.o -COMPONENT_OBJS = db_archive.o -DEPENDENCY_FILES = db_archive.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_archive.o \ - compConfig.o -COMPONENT_OBJS = db_archive.o -DEPENDENCY_FILES = db_archive.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_archive.o \ - compConfig.o -COMPONENT_OBJS = db_archive.o -DEPENDENCY_FILES = db_archive.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_archive.o \ - compConfig.o -COMPONENT_OBJS = db_archive.o -DEPENDENCY_FILES = db_archive.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_archive.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_archive modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_archive.c - $(COMPILE_TRADITIONAL) db_archive_ctdt.c -o db_archive_ctdt.o - $(LD) -r -o db_archive.tmp $@ db_archive_ctdt.o - $(RM) $@ - $(MV) db_archive.tmp $@ -# -# Adds entry point table section to db_archive component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_archive modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_archive.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_archive.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_archive.o: >> $@ - $(NM) db_archive.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_archive.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_checkpoint/db_checkpoint.c b/db/build_vxworks/db_checkpoint/db_checkpoint.c index 861d28adb..c28e9fbfa 100644 --- a/db/build_vxworks/db_checkpoint/db_checkpoint.c +++ b/db/build_vxworks/db_checkpoint/db_checkpoint.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_checkpoint.c,v 12.15 2006/08/26 09:23:25 bostic Exp $ + * $Id: db_checkpoint.c,v 12.18 2007/05/17 15:14:58 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_checkpoint_main __P((int, char *[])); @@ -50,7 +49,7 @@ db_checkpoint_main(argc, argv) int ch, exitval, once, ret, verbose; char *home, *logfile, *passwd, time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/build_vxworks/db_checkpoint/db_checkpoint/Makefile.component b/db/build_vxworks/db_checkpoint/db_checkpoint/Makefile.component deleted file mode 100644 index 6b04036f2..000000000 --- a/db/build_vxworks/db_checkpoint/db_checkpoint/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_checkpoint -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_checkpoint.o \ - compConfig.o -COMPONENT_OBJS = db_checkpoint.o -DEPENDENCY_FILES = db_checkpoint.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_checkpoint.o \ - compConfig.o -COMPONENT_OBJS = db_checkpoint.o -DEPENDENCY_FILES = db_checkpoint.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_checkpoint.o \ - compConfig.o -COMPONENT_OBJS = db_checkpoint.o -DEPENDENCY_FILES = db_checkpoint.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_checkpoint.o \ - compConfig.o -COMPONENT_OBJS = db_checkpoint.o -DEPENDENCY_FILES = db_checkpoint.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_checkpoint.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_checkpoint modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_checkpoint.c - $(COMPILE_TRADITIONAL) db_checkpoint_ctdt.c -o db_checkpoint_ctdt.o - $(LD) -r -o db_checkpoint.tmp $@ db_checkpoint_ctdt.o - $(RM) $@ - $(MV) db_checkpoint.tmp $@ -# -# Adds entry point table section to db_checkpoint component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_checkpoint modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_checkpoint.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_checkpoint.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_checkpoint.o: >> $@ - $(NM) db_checkpoint.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_checkpoint.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_config.h b/db/build_vxworks/db_config.h index 66eb91283..2c24b9444 100644 --- a/db/build_vxworks/db_config.h +++ b/db/build_vxworks/db_config.h @@ -44,6 +44,12 @@ /* Define to 1 if you have the `atol' function. */ #define HAVE_ATOL 1 +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + /* Define to 1 if you have the `clock_gettime' function. */ #define HAVE_CLOCK_GETTIME 1 @@ -72,6 +78,9 @@ /* Define to 1 if you have the `fchmod' function. */ /* #undef HAVE_FCHMOD */ +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + /* Define to 1 if you have the `fcntl' function. */ /* #undef HAVE_FCNTL */ @@ -81,12 +90,27 @@ /* Define to 1 if you have the `fdatasync' function. */ /* #undef HAVE_FDATASYNC */ +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #define HAVE_FILESYSTEM_NOTZERO 1 +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + /* Define to 1 if you have the `getaddrinfo' function. */ /* #undef HAVE_GETADDRINFO */ @@ -111,6 +135,9 @@ /* Define to 1 if building Hash access method. */ #define HAVE_HASH 1 +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_INTTYPES_H */ @@ -126,6 +153,9 @@ /* Define to 1 if you have the `isspace' function. */ #define HAVE_ISSPACE 1 +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + /* Define to 1 if you have the `memcmp' function. */ #define HAVE_MEMCMP 1 @@ -178,6 +208,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ /* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ /* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ @@ -222,6 +255,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ /* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + /* Define to 1 if mutexes hold system resources. */ #define HAVE_MUTEX_SYSTEM_RESOURCES 1 @@ -249,10 +285,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ /* #undef HAVE_MUTEX_WIN32_GCC */ -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -282,6 +320,9 @@ /* Define to 1 if building on QNX. */ /* #undef HAVE_QNX */ +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + /* Define to 1 if building Queue access method. */ #define HAVE_QUEUE 1 @@ -300,6 +341,9 @@ /* Define to 1 if building RPC client/server. */ /* #undef HAVE_RPC */ +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + /* Define to 1 if you have the `sched_yield' function. */ #define HAVE_SCHED_YIELD 1 @@ -378,13 +422,13 @@ /* Define to 1 if you have the `sysconf' function. */ /* #undef HAVE_SYSCONF */ +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#define HAVE_SYSTEM_INCLUDE_FILES 1 + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_FCNTL_H */ - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ @@ -392,6 +436,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SELECT_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_STAT_H */ @@ -401,12 +448,18 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_TYPES_H */ +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if unlink of file with open file descriptors will fail. */ #define HAVE_UNLINK_WITH_OPEN_FAILURE 1 +/* Define to 1 if port includes historic database upgrade support. */ +#define HAVE_UPGRADE_SUPPORT 1 + /* Define to 1 if building access method verification support. */ #define HAVE_VERIFY 1 @@ -429,13 +482,49 @@ #define PACKAGE_NAME "Berkeley DB" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Berkeley DB 4.5.20" +#define PACKAGE_STRING "Berkeley DB 4.6.18" /* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "db-4.5.20" +#define PACKAGE_TARNAME "db-4.6.18" /* Define to the version of this package. */ -#define PACKAGE_VERSION "4.5.20" +#define PACKAGE_VERSION "4.6.18" + +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ @@ -458,5 +547,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ -#include "clib_port.h" -#include "vxWorks.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_vxworks/db_config_small.h b/db/build_vxworks/db_config_small.h index 12caac11c..1e3439910 100644 --- a/db/build_vxworks/db_config_small.h +++ b/db/build_vxworks/db_config_small.h @@ -44,6 +44,12 @@ /* Define to 1 if you have the `atol' function. */ #define HAVE_ATOL 1 +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + /* Define to 1 if you have the `clock_gettime' function. */ #define HAVE_CLOCK_GETTIME 1 @@ -72,6 +78,9 @@ /* Define to 1 if you have the `fchmod' function. */ /* #undef HAVE_FCHMOD */ +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + /* Define to 1 if you have the `fcntl' function. */ /* #undef HAVE_FCNTL */ @@ -81,12 +90,27 @@ /* Define to 1 if you have the `fdatasync' function. */ /* #undef HAVE_FDATASYNC */ +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #define HAVE_FILESYSTEM_NOTZERO 1 +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + /* Define to 1 if you have the `getaddrinfo' function. */ /* #undef HAVE_GETADDRINFO */ @@ -111,6 +135,9 @@ /* Define to 1 if building Hash access method. */ /* #undef HAVE_HASH */ +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_INTTYPES_H */ @@ -126,6 +153,9 @@ /* Define to 1 if you have the `isspace' function. */ #define HAVE_ISSPACE 1 +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + /* Define to 1 if you have the `memcmp' function. */ #define HAVE_MEMCMP 1 @@ -178,6 +208,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ /* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ /* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ @@ -222,6 +255,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ /* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + /* Define to 1 if mutexes hold system resources. */ #define HAVE_MUTEX_SYSTEM_RESOURCES 1 @@ -249,10 +285,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ /* #undef HAVE_MUTEX_WIN32_GCC */ -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -282,6 +320,9 @@ /* Define to 1 if building on QNX. */ /* #undef HAVE_QNX */ +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + /* Define to 1 if building Queue access method. */ /* #undef HAVE_QUEUE */ @@ -300,6 +341,9 @@ /* Define to 1 if building RPC client/server. */ /* #undef HAVE_RPC */ +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + /* Define to 1 if you have the `sched_yield' function. */ #define HAVE_SCHED_YIELD 1 @@ -378,13 +422,13 @@ /* Define to 1 if you have the `sysconf' function. */ /* #undef HAVE_SYSCONF */ +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#define HAVE_SYSTEM_INCLUDE_FILES 1 + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_FCNTL_H */ - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ @@ -392,6 +436,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SELECT_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_STAT_H */ @@ -401,12 +448,18 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_TYPES_H */ +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if unlink of file with open file descriptors will fail. */ #define HAVE_UNLINK_WITH_OPEN_FAILURE 1 +/* Define to 1 if port includes historic database upgrade support. */ +#define HAVE_UPGRADE_SUPPORT 1 + /* Define to 1 if building access method verification support. */ /* #undef HAVE_VERIFY */ @@ -429,13 +482,49 @@ #define PACKAGE_NAME "Berkeley DB" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Berkeley DB 4.5.20" +#define PACKAGE_STRING "Berkeley DB 4.6.18" /* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "db-4.5.20" +#define PACKAGE_TARNAME "db-4.6.18" /* Define to the version of this package. */ -#define PACKAGE_VERSION "4.5.20" +#define PACKAGE_VERSION "4.6.18" + +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ @@ -458,5 +547,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ -#include "clib_port.h" -#include "vxWorks.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_vxworks/db_deadlock/db_deadlock.c b/db/build_vxworks/db_deadlock/db_deadlock.c index 3b560d174..24e5cab72 100644 --- a/db/build_vxworks/db_deadlock/db_deadlock.c +++ b/db/build_vxworks/db_deadlock/db_deadlock.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_deadlock.c,v 12.13 2006/08/26 09:23:00 bostic Exp $ + * $Id: db_deadlock.c,v 12.18 2007/05/17 17:17:42 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_deadlock_main __P((int, char *[])); @@ -47,10 +46,10 @@ db_deadlock_main(argc, argv) u_int32_t atype; time_t now; u_long secs, usecs; - int ch, exitval, ret, verbose; + int rejected, ch, exitval, ret, verbose; char *home, *logfile, *passwd, *str, time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -185,10 +184,13 @@ db_deadlock_main(argc, argv) "running at %.24s", __db_ctime(&now, time_buf)); } - if ((ret = dbenv->lock_detect(dbenv, 0, atype, NULL)) != 0) { + if ((ret = + dbenv->lock_detect(dbenv, 0, atype, &rejected)) != 0) { dbenv->err(dbenv, ret, "DB_ENV->lock_detect"); goto shutdown; } + if (verbose) + dbenv->errx(dbenv, "rejected %d locks", rejected); /* Make a pass every "secs" secs and "usecs" usecs. */ if (secs == 0 && usecs == 0) diff --git a/db/build_vxworks/db_deadlock/db_deadlock/Makefile.component b/db/build_vxworks/db_deadlock/db_deadlock/Makefile.component deleted file mode 100644 index 803a941b9..000000000 --- a/db/build_vxworks/db_deadlock/db_deadlock/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_deadlock -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_deadlock.o \ - compConfig.o -COMPONENT_OBJS = db_deadlock.o -DEPENDENCY_FILES = db_deadlock.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_deadlock.o \ - compConfig.o -COMPONENT_OBJS = db_deadlock.o -DEPENDENCY_FILES = db_deadlock.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_deadlock.o \ - compConfig.o -COMPONENT_OBJS = db_deadlock.o -DEPENDENCY_FILES = db_deadlock.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_deadlock.o \ - compConfig.o -COMPONENT_OBJS = db_deadlock.o -DEPENDENCY_FILES = db_deadlock.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_deadlock.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_deadlock modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_deadlock.c - $(COMPILE_TRADITIONAL) db_deadlock_ctdt.c -o db_deadlock_ctdt.o - $(LD) -r -o db_deadlock.tmp $@ db_deadlock_ctdt.o - $(RM) $@ - $(MV) db_deadlock.tmp $@ -# -# Adds entry point table section to db_deadlock component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_deadlock modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_deadlock.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_deadlock.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_deadlock.o: >> $@ - $(NM) db_deadlock.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_deadlock.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_dump/db_dump.c b/db/build_vxworks/db_dump/db_dump.c index e8f0f33b5..4f04fa103 100644 --- a/db/build_vxworks/db_dump/db_dump.c +++ b/db/build_vxworks/db_dump/db_dump.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_dump.c,v 12.9 2006/08/26 09:23:01 bostic Exp $ + * $Id: db_dump.c,v 12.15 2007/05/17 15:14:59 bostic Exp $ */ #include "db_config.h" @@ -15,12 +14,11 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_dump_db_init __P((DB_ENV *, char *, int, u_int32_t, int *)); int db_dump_dump_sub __P((DB_ENV *, DB *, char *, int, int)); -int db_dump_is_sub __P((DB *, int *)); int db_dump_main __P((int, char *[])); int db_dump_show_subs __P((DB *)); int db_dump_usage __P((void)); @@ -54,10 +52,10 @@ db_dump_main(argc, argv) u_int32_t cache; int ch; int exitval, keyflag, lflag, nflag, pflag, private; - int ret, Rflag, rflag, resize, subs; + int ret, Rflag, rflag, resize; char *dopt, *home, *passwd, *subname; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -240,20 +238,16 @@ retry: if ((ret = db_env_create(&dbenv, 0)) != 0) { goto err; } } else if (lflag) { - if (db_dump_is_sub(dbp, &subs)) - goto err; - if (subs == 0) { + if (dbp->get_multiple(dbp)) { + if (db_dump_show_subs(dbp)) + goto err; + } else { dbp->errx(dbp, "%s: does not contain multiple databases", argv[0]); goto err; } - if (db_dump_show_subs(dbp)) - goto err; } else { - subs = 0; - if (subname == NULL && db_dump_is_sub(dbp, &subs)) - goto err; - if (subs) { + if (subname == NULL && dbp->get_multiple(dbp)) { if (db_dump_dump_sub(dbenv, dbp, argv[0], pflag, keyflag)) goto err; } else @@ -344,47 +338,6 @@ err: dbenv->err(dbenv, ret, "DB_ENV->open"); return (1); } -/* - * is_sub -- - * Return if the database contains subdatabases. - */ -int -db_dump_is_sub(dbp, yesno) - DB *dbp; - int *yesno; -{ - DB_BTREE_STAT *btsp; - DB_HASH_STAT *hsp; - int ret; - - switch (dbp->type) { - case DB_BTREE: - case DB_RECNO: - if ((ret = dbp->stat(dbp, NULL, &btsp, DB_FAST_STAT)) != 0) { - dbp->err(dbp, ret, "DB->stat"); - return (ret); - } - *yesno = btsp->bt_metaflags & BTM_SUBDB ? 1 : 0; - free(btsp); - break; - case DB_HASH: - if ((ret = dbp->stat(dbp, NULL, &hsp, DB_FAST_STAT)) != 0) { - dbp->err(dbp, ret, "DB->stat"); - return (ret); - } - *yesno = hsp->hash_metaflags & DB_HASH_SUBDB ? 1 : 0; - free(hsp); - break; - case DB_QUEUE: - break; - case DB_UNKNOWN: - default: - dbp->errx(dbp, "unknown database type"); - return (1); - } - return (0); -} - /* * dump_sub -- * Dump out the records for a DB containing subdatabases. @@ -413,7 +366,8 @@ db_dump_dump_sub(dbenv, parent_dbp, parent_name, pflag, keyflag) memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = dbcp->get(dbcp, &key, &data, + DB_IGNORE_LEASE | DB_NEXT)) == 0) { /* Nul terminate the subdatabase name. */ if ((subdb = malloc(key.size + 1)) == NULL) { dbenv->err(dbenv, ENOMEM, NULL); @@ -445,7 +399,7 @@ db_dump_dump_sub(dbenv, parent_dbp, parent_name, pflag, keyflag) return (1); } - if ((ret = dbcp->c_close(dbcp)) != 0) { + if ((ret = dbcp->close(dbcp)) != 0) { parent_dbp->err(parent_dbp, ret, "DBcursor->close"); return (1); } @@ -476,7 +430,8 @@ db_dump_show_subs(dbp) memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = dbcp->get(dbcp, &key, &data, + DB_IGNORE_LEASE | DB_NEXT)) == 0) { if ((ret = dbp->dbenv->prdbt( &key, 1, NULL, stdout, __db_pr_callback, 0)) != 0) { dbp->errx(dbp, NULL); @@ -488,7 +443,7 @@ db_dump_show_subs(dbp) return (1); } - if ((ret = dbcp->c_close(dbcp)) != 0) { + if ((ret = dbcp->close(dbcp)) != 0) { dbp->err(dbp, ret, "DBcursor->close"); return (1); } diff --git a/db/build_vxworks/db_dump/db_dump/Makefile.component b/db/build_vxworks/db_dump/db_dump/Makefile.component deleted file mode 100644 index 7f537dcfc..000000000 --- a/db/build_vxworks/db_dump/db_dump/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_dump -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_dump.o \ - compConfig.o -COMPONENT_OBJS = db_dump.o -DEPENDENCY_FILES = db_dump.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_dump.o \ - compConfig.o -COMPONENT_OBJS = db_dump.o -DEPENDENCY_FILES = db_dump.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_dump.o \ - compConfig.o -COMPONENT_OBJS = db_dump.o -DEPENDENCY_FILES = db_dump.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_dump.o \ - compConfig.o -COMPONENT_OBJS = db_dump.o -DEPENDENCY_FILES = db_dump.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_dump.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_dump modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_dump.c - $(COMPILE_TRADITIONAL) db_dump_ctdt.c -o db_dump_ctdt.o - $(LD) -r -o db_dump.tmp $@ db_dump_ctdt.o - $(RM) $@ - $(MV) db_dump.tmp $@ -# -# Adds entry point table section to db_dump component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_dump modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_dump.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_dump.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_dump.o: >> $@ - $(NM) db_dump.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_dump.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_hotbackup/db_hotbackup.c b/db/build_vxworks/db_hotbackup/db_hotbackup.c index 0958b2891..ee80933ae 100644 --- a/db/build_vxworks/db_hotbackup/db_hotbackup.c +++ b/db/build_vxworks/db_hotbackup/db_hotbackup.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_hotbackup.c,v 1.30 2006/08/26 09:23:07 bostic Exp $ + * $Id: db_hotbackup.c,v 1.51 2007/05/17 15:15:01 bostic Exp $ */ #include "db_config.h" @@ -16,18 +15,18 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif enum which_open { OPEN_ORIGINAL, OPEN_HOT_BACKUP }; -int db_hotbackup_backup_dir_clean __P((DB_ENV *, char *, int *, int, int)); -int db_hotbackup_data_copy __P((DB_ENV *, const char *, const char *, const char *, int)); +int db_hotbackup_backup_dir_clean __P((DB_ENV *, char *, char *, int *, int, int)); +int db_hotbackup_data_copy __P((DB_ENV *, char *, char *, char *, int)); int db_hotbackup_env_init __P((DB_ENV **, - char *, const char **, const char ***, char *, enum which_open)); + char *, char **, char ***, char *, enum which_open)); int db_hotbackup_main __P((int, char *[])); -int db_hotbackup_read_data_dir __P((DB_ENV *, char *, char *, const char *, int, int)); -int db_hotbackup_read_log_dir __P((DB_ENV *, char *, char *, const char *, int *, int, int)); +int db_hotbackup_read_data_dir __P((DB_ENV *, char *, char *, char *, int, int)); +int db_hotbackup_read_log_dir __P((DB_ENV *, char *, char *, char *, int *, int, int)); int db_hotbackup_usage __P((void)); int db_hotbackup_version_check __P((void)); @@ -59,11 +58,22 @@ db_hotbackup_main(argc, argv) u_int data_cnt, data_next; int ch, checkpoint, copy_min, db_config, exitval; int remove_max, ret, update, verbose; - char *backup_dir, **data_dir, *home, *passwd; - const char **ddir, **dir, *log_dir; + char *backup_dir, **data_dir, **dir, *home, *log_dir, *passwd; char home_buf[DB_MAXPATHLEN], time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + /* + * Make sure all verbose message are output before any error messages + * in the case where the output is being logged into a file. This + * call has to be done before any operation is performed on the stream. + * + * Use unbuffered I/O because line-buffered I/O requires a buffer, and + * some operating systems have buffer alignment and size constraints we + * don't want to care about. There isn't enough output for the calls + * to matter. + */ + setbuf(stdout, NULL); + + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -139,6 +149,20 @@ db_hotbackup_main(argc, argv) if (argc != 0) return (db_hotbackup_usage()); + /* NULL-terminate any list of data directories. */ + if (data_dir != NULL) { + data_dir[data_next] = NULL; + /* + * -d is relative to the current directory, to run a checkpoint + * we must have directories relative to the environment. + */ + if (checkpoint == 1) { + fprintf(stderr, + "%s: cannot specify -d and -c\n", progname); + return (db_hotbackup_usage()); + } + } + if (db_config && (data_dir != NULL || log_dir != NULL)) { fprintf(stderr, "%s: cannot specify -D and -d or -l\n", progname); @@ -179,29 +203,19 @@ db_hotbackup_main(argc, argv) return (db_hotbackup_usage()); } - /* NULL-terminate any list of data directories. */ - if (data_dir != NULL) - data_dir[data_next] = NULL; - if (verbose) { (void)time(&now); printf("%s: hot backup started at %s", progname, __db_ctime(&now, time_buf)); } - ddir = NULL; /* Open the source environment. */ - if ((ret = db_hotbackup_env_init(&dbenv, home, + if (db_hotbackup_env_init(&dbenv, home, (db_config || log_dir != NULL) ? &log_dir : NULL, - db_config ? &ddir : NULL, passwd, OPEN_ORIGINAL)) != 0) + db_config ? &data_dir : NULL, + passwd, OPEN_ORIGINAL) != 0) goto shutdown; - if (!db_config) - ddir = (const char **)data_dir; - - if (log_dir == NULL) - log_dir = home; - if (db_config && __os_abspath(log_dir)) { fprintf(stderr, "%s: DB_CONFIG must not contain an absolute path for the log directory", @@ -242,13 +256,20 @@ db_hotbackup_main(argc, argv) (void)__os_mkdir(NULL, backup_dir, __db_omode("rwx------")); /* - * If the target directory for the backup does exist and the -u option - * was specified, all log files in the target directory are removed; - * if the -u option was not specified, all files in the target directory - * are removed. + * If -u was specified, remove all log files; if -u was not specified, + * remove all files. + * + * Potentially there are two directories to clean, the log directory + * and the target directory. First, clean up the log directory if + * it's different from the target directory, then clean up the target + * directory. */ - if ((ret = db_hotbackup_backup_dir_clean( - dbenv, backup_dir, &remove_max, update, verbose)) != 0) + if (db_config && log_dir != NULL && + db_hotbackup_backup_dir_clean( + dbenv, backup_dir, log_dir, &remove_max, update, verbose) != 0) + goto shutdown; + if (db_hotbackup_backup_dir_clean(dbenv, + backup_dir, NULL, &remove_max, update, verbose) != 0) goto shutdown; /* @@ -260,9 +281,14 @@ db_hotbackup_main(argc, argv) if (db_hotbackup_read_data_dir(dbenv, home, backup_dir, home, verbose, db_config) != 0) goto shutdown; - if (ddir != NULL) - for (dir = &ddir[0]; *dir != NULL; ++dir) { - if (__os_abspath(*dir)) { + if (data_dir != NULL) + for (dir = data_dir; *dir != NULL; ++dir) { + /* + * Don't allow absolute path names taken from + * the DB_CONFIG file -- running recovery with + * them would corrupt the source files. + */ + if (db_config && __os_abspath(*dir)) { fprintf(stderr, "%s: data directory '%s' is absolute path, not permitted with -D option\n", progname, *dir); @@ -281,8 +307,8 @@ db_hotbackup_main(argc, argv) * * The log directory defaults to the home directory. */ - if (db_hotbackup_read_log_dir(dbenv, db_config ? home : NULL, - backup_dir, log_dir, ©_min, update, verbose) != 0) + if (db_hotbackup_read_log_dir(dbenv, db_config ? home : NULL, backup_dir, + log_dir == NULL ? home : log_dir, ©_min, update, verbose) != 0) goto shutdown; /* @@ -313,8 +339,8 @@ db_hotbackup_main(argc, argv) if (verbose) printf("%s: %s: run catastrophic recovery\n", progname, backup_dir); - if ((ret = db_hotbackup_env_init( - &dbenv, backup_dir, NULL, NULL, passwd, OPEN_HOT_BACKUP)) != 0) + if (db_hotbackup_env_init( + &dbenv, backup_dir, NULL, NULL, passwd, OPEN_HOT_BACKUP) != 0) goto shutdown; /* @@ -338,11 +364,6 @@ shutdown: exitval = 1; "%s: dbenv->close: %s\n", progname, db_strerror(ret)); } - if (data_dir != NULL) - free(data_dir); - if (passwd != NULL) - free(passwd); - if (exitval == 0) { if (verbose) { (void)time(&now); @@ -365,11 +386,9 @@ shutdown: exitval = 1; * Open a database environment. */ int -db_hotbackup_env_init(dbenvp, home, log_dir, data_dir, passwd, which) +db_hotbackup_env_init(dbenvp, home, log_dirp, data_dirp, passwd, which) DB_ENV **dbenvp; - char *home; - const char **log_dir, ***data_dir; - char *passwd; + char *home, **log_dirp, ***data_dirp, *passwd; enum which_open which; { DB_ENV *dbenv; @@ -389,15 +408,14 @@ db_hotbackup_env_init(dbenvp, home, log_dir, data_dir, passwd, which) dbenv->set_errfile(dbenv, stderr); setbuf(stderr, NULL); dbenv->set_errpfx(dbenv, progname); - (void)setvbuf(stdout, NULL, _IOLBF, 0); /* * If a log directory has been specified, and it's not the same as the * home directory, set it for the environment. */ - if (log_dir != NULL && *log_dir != NULL && *log_dir != home && - (ret = dbenv->set_lg_dir(dbenv, *log_dir)) != 0) { - dbenv->err(dbenv, ret, "DB_ENV->set_lg_dir: %s", log_dir); + if (log_dirp != NULL && *log_dirp != NULL && + (ret = dbenv->set_lg_dir(dbenv, *log_dirp)) != 0) { + dbenv->err(dbenv, ret, "DB_ENV->set_lg_dir: %s", *log_dirp); return (1); } @@ -423,19 +441,25 @@ db_hotbackup_env_init(dbenvp, home, log_dir, data_dir, passwd, which) dbenv->err(dbenv, ret, "DB_ENV->open: %s", home); return (1); } - if (log_dir != NULL && *log_dir == NULL) { - (void)dbenv->get_lg_dir(dbenv, log_dir); - if (*log_dir == NULL) - *log_dir = home; - } - if (data_dir != NULL && *data_dir == NULL) - (void)dbenv->get_data_dirs(dbenv, data_dir); + if (log_dirp != NULL && *log_dirp == NULL) + (void)dbenv->get_lg_dir(dbenv, (const char **)log_dirp); + if (data_dirp != NULL && *data_dirp == NULL) + (void)dbenv->get_data_dirs( + dbenv, (const char ***)data_dirp); break; case OPEN_HOT_BACKUP: /* * Opening the backup copy of the database environment. We * better be the only user, we're running recovery. + * Ensure that there at least minimal cache for worst + * case page size. */ + if ((ret = + dbenv->set_cachesize(dbenv, 0, 64 * 1024 * 10, 0)) != 0) { + dbenv->err(dbenv, + ret, "DB_ENV->set_cachesize: %s", home); + return (1); + } if ((ret = dbenv->open(dbenv, home, DB_CREATE | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN | DB_PRIVATE | DB_RECOVER_FATAL | DB_USE_ENVIRON, 0)) != 0) { @@ -454,22 +478,36 @@ db_hotbackup_env_init(dbenvp, home, log_dir, data_dir, passwd, which) * Clean out the backup directory. */ int -db_hotbackup_backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) +db_hotbackup_backup_dir_clean(dbenv, backup_dir, log_dir, remove_maxp, update, verbose) DB_ENV *dbenv; - char *backup_dir; + char *backup_dir, *log_dir; int *remove_maxp, update, verbose; { int cnt, fcnt, ret, v; - char **names, buf[DB_MAXPATHLEN]; + char **names, *dir, buf[DB_MAXPATHLEN], path[DB_MAXPATHLEN]; + + /* We may be cleaning a log directory separate from the target. */ + if (log_dir != NULL) { + if ((size_t)snprintf(buf, sizeof(buf), "%s%c%s", + backup_dir, PATH_SEPARATOR[0] ,log_dir) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0] ,log_dir); + return (1); + } + dir = buf; + } else + dir = backup_dir; /* Get a list of file names. */ - if ((ret = __os_dirlist(dbenv, backup_dir, &names, &fcnt)) != 0) { - dbenv->err(dbenv, ret, "%s: directory read", backup_dir); + if ((ret = __os_dirlist(dbenv, dir, &names, &fcnt)) != 0) { + if (log_dir != NULL && !update) + return (0); + dbenv->err(dbenv, ret, "%s: directory read", dir); return (1); } for (cnt = fcnt; --cnt >= 0;) { /* - * Skip log files (if update wasn't specified). + * Skip non-log files (if update was specified). */ if (strncmp(names[cnt], LFPREFIX, sizeof(LFPREFIX) - 1)) { if (update) @@ -480,18 +518,16 @@ db_hotbackup_backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) if (*remove_maxp < v) *remove_maxp = v; } - if ((size_t)snprintf(buf, sizeof(buf), - "%s/%s", backup_dir, names[cnt]) >= sizeof(buf)) { - dbenv->err(dbenv, ret, - "%s/%s: path too long", backup_dir, names[cnt]); + if ((size_t)snprintf(path, sizeof(path), "%s%c%s", + dir, PATH_SEPARATOR[0], names[cnt]) >= sizeof(path)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + dir, PATH_SEPARATOR[0], names[cnt]); return (1); } if (verbose) - printf("%s: removing %s\n", progname, buf); - if ((ret = remove(buf)) != 0) { - dbenv->err(dbenv, ret, "%s: remove", buf); + printf("%s: removing %s\n", progname, path); + if (__os_unlink(dbenv, path) != 0) return (1); - } } __os_dirfree(dbenv, names, fcnt); @@ -510,8 +546,7 @@ db_hotbackup_backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) int db_hotbackup_read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) DB_ENV *dbenv; - char *home, *backup_dir; - const char *dir; + char *home, *backup_dir, *dir; int verbose, db_config; { int cnt, fcnt, ret; @@ -521,10 +556,11 @@ db_hotbackup_read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) bd = backup_dir; if (db_config && dir != home) { /* Build a path name to the destination. */ - if ((size_t)(cnt = snprintf(bbuf, sizeof(bbuf), - "%s/%s/", backup_dir, dir)) >= sizeof(buf)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backup_dir, dir); + if ((size_t)(cnt = snprintf(bbuf, sizeof(bbuf), "%s%c%s%c", + backup_dir, PATH_SEPARATOR[0], + dir, PATH_SEPARATOR[0])) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0], dir); return (1); } bd = bbuf; @@ -537,13 +573,13 @@ db_hotbackup_read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) return (1); } /* step on the trailing '/' */ - bd[cnt] = '\0'; + bd[cnt - 1] = '\0'; /* Build a path name to the source. */ if ((size_t)snprintf(buf, sizeof(buf), - "%s/%s", home, dir) >= sizeof(buf)) { - dbenv->errx(dbenv, - "%s/%s: path too long", home, dir); + "%s%c%s", home, PATH_SEPARATOR[0], dir) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + home, PATH_SEPARATOR[0], dir); return (1); } dir = buf; @@ -574,8 +610,7 @@ db_hotbackup_read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) continue; /* Copy the file. */ - if ((ret = db_hotbackup_data_copy( - dbenv, names[cnt], dir, bd, verbose)) != 0) + if (db_hotbackup_data_copy(dbenv, names[cnt], dir, bd, verbose) != 0) return (1); } @@ -593,42 +628,43 @@ db_hotbackup_read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) int db_hotbackup_read_log_dir(dbenv, home, backup_dir, log_dir, copy_minp, update, verbose) DB_ENV *dbenv; - char *home, *backup_dir; - const char *log_dir; + char *home, *backup_dir, *log_dir; int *copy_minp, update, verbose; { u_int32_t aflag; int cnt, ret, v; - char **begin, **names, *backupd; - const char *logd; + char **begin, **names, *backupd, *logd; char from[DB_MAXPATHLEN], to[DB_MAXPATHLEN]; - logd = log_dir; - backupd = backup_dir; - if (home != NULL && log_dir != home) { - if ((size_t)snprintf(from, sizeof(from), - "%s/%s", home, log_dir) >= sizeof(from)) { - dbenv->errx(dbenv, - "%s/%s: path too long", home, log_dir); + if (home != NULL && log_dir != NULL) { + if ((size_t)snprintf(from, sizeof(from), "%s%c%s", + home, PATH_SEPARATOR[0], log_dir) >= sizeof(from)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + home, PATH_SEPARATOR[0], log_dir); return (1); } logd = strdup(from); if ((size_t)(cnt = snprintf(to, sizeof(to), - "%s/%s/", backup_dir, log_dir)) >= sizeof(to)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backup_dir, log_dir); + "%s%c%s%c", backup_dir, PATH_SEPARATOR[0], + log_dir, PATH_SEPARATOR[0])) >= sizeof(to)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0], log_dir); return (1); } backupd = strdup(to); - /* Create the path. */ + + /* Create the backup log directory. */ if ((ret = dbenv->set_intermediate_dir( dbenv, __db_omode("rwx------"), 0)) != 0 || (ret = __db_mkpath(dbenv, backupd)) != 0) { dbenv->err(dbenv, ret, "%s: cannot create", backupd); return (1); } - /* step on the trailing '/' */ - backupd[cnt] = '\0'; + /* Step on the trailing '/'. */ + backupd[cnt - 1] = '\0'; + } else { + backupd = backup_dir; + logd = log_dir; } again: aflag = DB_ARCH_LOG; @@ -641,7 +677,7 @@ again: aflag = DB_ARCH_LOG; aflag = 0; /* Get a list of file names to be copied. */ if ((ret = dbenv->log_archive(dbenv, &names, aflag)) != 0) { - dbenv->err(dbenv, ret, "%s: log_archive", log_dir); + dbenv->err(dbenv, ret, "DB_ENV->log_archive"); return (1); } if (names == NULL) @@ -653,10 +689,10 @@ again: aflag = DB_ARCH_LOG; if (*copy_minp == 0 || *copy_minp > v) *copy_minp = v; - if ((size_t)snprintf(from, sizeof(from), - "%s/%s", logd, *names) >= sizeof(from)) { - dbenv->errx(dbenv, - "%s/%s: path too long", log_dir, *names); + if ((size_t)snprintf(from, sizeof(from), "%s%c%s", + logd, PATH_SEPARATOR[0], *names) >= sizeof(from)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + logd, PATH_SEPARATOR[0], *names); return (1); } @@ -669,13 +705,13 @@ again: aflag = DB_ARCH_LOG; * on open. */ if (update) { - if ((size_t)snprintf(to, sizeof(to), - "%s/%s", backupd, *names) >= sizeof(to)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backupd, *names); + if ((size_t)snprintf(to, sizeof(to), "%s%c%s", + backupd, PATH_SEPARATOR[0], *names) >= sizeof(to)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backupd, PATH_SEPARATOR[0], *names); return (1); } - if (rename(from, to) == 0) { + if (__os_rename(dbenv, from, to, 1) == 0) { if (verbose) printf("%s: moving %s to %s\n", progname, from, to); @@ -684,8 +720,7 @@ again: aflag = DB_ARCH_LOG; } /* Copy the file. */ - if ((ret = db_hotbackup_data_copy(dbenv, - *names, logd, backupd, verbose)) != 0) + if (db_hotbackup_data_copy(dbenv, *names, logd, backupd, verbose) != 0) return (1); if (update) { @@ -710,7 +745,7 @@ done: if (update) { printf("%s: lowest numbered log file copied: %d\n", progname, *copy_minp); if (logd != log_dir) - free((char *)logd); + free(logd); if (backupd != backup_dir) free(backupd); @@ -724,20 +759,20 @@ done: if (update) { int db_hotbackup_data_copy(dbenv, file, from_dir, to_dir, verbose) DB_ENV *dbenv; - const char *file, *from_dir, *to_dir; + char *file, *from_dir, *to_dir; int verbose; { - ssize_t nr, nw; - size_t offset; - int ret, rfd, wfd; - char *buf, *taddr; + DB_FH *rfhp, *wfhp; + size_t nr, nw; + int ret; + char *buf; ret = 0; - rfd = wfd = -1; + rfhp = wfhp = NULL; if (verbose) - printf("%s: copying %s/%s to %s/%s\n", - progname, from_dir, file, to_dir, file); + printf("%s: copying %s%c%s to %s%c%s\n", progname, from_dir, + PATH_SEPARATOR[0], file, to_dir, PATH_SEPARATOR[0], file); /* * We MUST copy multiples of the page size, atomically, to ensure a @@ -756,44 +791,35 @@ db_hotbackup_data_copy(dbenv, file, from_dir, to_dir, verbose) } /* Open the input file. */ - if ((u_int32_t)snprintf( - buf, MEGABYTE, "%s/%s", from_dir, file) >= MEGABYTE) { - dbenv->errx(dbenv, "%s/%s: path too long", from_dir, file); + if (snprintf(buf, MEGABYTE, "%s%c%s", + from_dir, PATH_SEPARATOR[0], file) >= MEGABYTE) { + dbenv->errx(dbenv, + "%s%c%s: path too long", from_dir, PATH_SEPARATOR[0], file); goto err; } - if ((rfd = open(buf, O_RDONLY, 0)) == -1) { - dbenv->err(dbenv, errno, "%s", buf); + if ((ret = __os_open(dbenv, buf, 0, DB_OSO_RDONLY, 0, &rfhp)) != 0) { + dbenv->err(dbenv, ret, "%s", buf); goto err; } /* Open the output file. */ - if ((u_int32_t)snprintf( - buf, MEGABYTE, "%s/%s", to_dir, file) >= MEGABYTE) { - dbenv->errx(dbenv, "%s/%s: path too long", to_dir, file); + if (snprintf(buf, MEGABYTE, "%s%c%s", + to_dir, PATH_SEPARATOR[0], file) >= MEGABYTE) { + dbenv->errx(dbenv, + "%s%c%s: path too long", to_dir, PATH_SEPARATOR[0], file); goto err; } - if ((wfd = open( - buf, O_CREAT | O_TRUNC | O_WRONLY, __db_omode(OWNER_RW))) == -1) - goto err; - - /* Copy the data. */ - while ((nr = read(rfd, buf, MEGABYTE)) > 0) - for (taddr = buf, offset = 0; - offset < (size_t)nr; taddr += nw, offset += (size_t)nw) { - RETRY_CHK(((nw = write(wfd, - taddr, (u_int)(nr - offset))) < 0 ? 1 : 0), ret); - if (ret != 0) - break; - } - if (nr == -1) { - dbenv->err(dbenv, errno, "%s/%s: read", from_dir, file); + if ((ret = __os_open(dbenv, buf, 0, + DB_OSO_CREATE | DB_OSO_TRUNC, __db_omode(OWNER_RW), &wfhp)) != 0) { + dbenv->err(dbenv, ret, "%s", buf); goto err; } - if (ret != 0) { - dbenv->err(dbenv, errno, "%s: write %s/%s", to_dir, file); - goto err; - } + /* Copy the data. */ + while ((ret = __os_read(dbenv, rfhp, buf, MEGABYTE, &nr)) == 0 && + nr > 0) + if ((ret = __os_write(dbenv, wfhp, buf, nr, &nw)) != 0) + break; if (0) { err: ret = 1; @@ -801,14 +827,15 @@ err: ret = 1; if (buf != NULL) free(buf); - if (rfd != -1) - (void)close(rfd); + if (rfhp != NULL && __os_closehandle(dbenv, rfhp) != 0) + ret = 1; /* We may be running on a remote filesystem; force the flush. */ - if (wfd != -1 && (fsync(wfd) != 0 || close(wfd) != 0)) { - dbenv->err(dbenv, - errno, "%s: fsync %s/%s", to_dir, file); - ret = 1; + if (wfhp != NULL) { + if (__os_fsync(dbenv, wfhp) != 0) + ret = 1; + if (__os_closehandle(dbenv, wfhp) != 0) + ret = 1; } return (ret); } diff --git a/db/build_vxworks/db_int.h b/db/build_vxworks/db_int.h index e76c596cd..9833345c1 100644 --- a/db/build_vxworks/db_int.h +++ b/db/build_vxworks/db_int.h @@ -2,19 +2,19 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_int.in,v 12.41 2006/09/19 15:06:59 bostic Exp $ + * $Id: db_int.in,v 12.58 2007/05/30 14:06:39 bostic Exp $ */ #ifndef _DB_INT_H_ #define _DB_INT_H_ /******************************************************* - * Berkeley DB includes. + * Berkeley DB ANSI/POSIX include files. *******************************************************/ -#ifndef NO_SYSTEM_INCLUDES +#include "vxWorks.h" +#ifdef HAVE_SYSTEM_INCLUDE_FILES #include #ifdef DIAG_MVCC #include @@ -48,7 +48,9 @@ #endif #if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H #include +#endif #include #include #include @@ -70,9 +72,36 @@ #include #include #include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ +#include "clib_port.h" +#include "db.h" + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" #endif #include "db.h" +#include "clib_port.h" #include "dbinc/queue.h" #include "dbinc/shqueue.h" @@ -84,41 +113,6 @@ extern "C" { /******************************************************* * General purpose constants and macros. *******************************************************/ -#ifndef UINT16_MAX -#define UINT16_MAX 65535 /* Maximum 16-bit unsigned. */ -#endif -#ifndef UINT32_MAX -#ifdef __STDC__ -#define UINT32_MAX 4294967295U /* Maximum 32-bit unsigned. */ -#else -#define UINT32_MAX 0xffffffff /* Maximum 32-bit unsigned. */ -#endif -#endif - -#if defined(HAVE_64BIT_TYPES) -#undef INT64_MAX -#undef INT64_MIN -#undef UINT64_MAX - -#ifdef DB_WIN32 -#define INT64_MAX _I64_MAX -#define INT64_MIN _I64_MIN -#define UINT64_MAX _UI64_MAX -#else -/* - * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can - * handle 64-bit values, but the system's constants don't include the LL/ULL - * suffix, and so can't be compiled using the 32-bit compiler. - */ -#define INT64_MAX 9223372036854775807LL -#define INT64_MIN (-INT64_MAX-1) -#define UINT64_MAX 18446744073709551615ULL -#endif /* DB_WIN32 */ - -#define INT64_FMT "%lld" -#define UINT64_FMT "%llu" -#endif /* HAVE_64BIT_TYPES */ - #undef FALSE #define FALSE 0 #undef TRUE @@ -127,8 +121,13 @@ extern "C" { #define MEGABYTE 1048576 #define GIGABYTE 1073741824 -#define MS_PER_SEC 1000 /* Milliseconds in a second. */ -#define USEC_PER_MS 1000 /* Microseconds in a millisecond. */ +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ #define RECNO_OOB 0 /* Illegal record number. */ @@ -160,11 +159,6 @@ extern "C" { #define ALIGNP_INC(p, bound) \ (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) -/* Decrement a pointer to a specific boundary. */ -#undef ALIGNP_DEC -#define ALIGNP_DEC(p, bound) \ - (void *)((uintptr_t)(p) & ~(((uintptr_t)(bound)) - 1)) - /* * Print an address as a u_long (a u_long is the largest type we can print * portably). Most 64-bit systems have made longs 64-bits, so this should @@ -233,6 +227,17 @@ typedef struct __fn { ((int)((total) == 0 ? 0 : \ 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + /* * Structure used for callback message aggregation. * @@ -313,6 +318,7 @@ typedef struct __db_msgbuf { #define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) #define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) #define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) #define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ @@ -437,7 +443,7 @@ typedef enum { #ifdef DIAGNOSTIC #define ENV_LEAVE(dbenv, ip) do { \ if ((ip) != NULL) { \ - DB_ASSERT(dbenv, ip->dbth_state == THREAD_ACTIVE); \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ (ip)->dbth_state = THREAD_OUT; \ } \ } while (0) @@ -648,7 +654,6 @@ typedef struct __dbpginfo { ((lsn0)->offset != (lsn1)->offset ? \ ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) - /******************************************************* * Txn. *******************************************************/ @@ -715,6 +720,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; #include "dbinc/globals.h" +#include "dbinc/clock.h" #include "dbinc/debug.h" #include "dbinc/region.h" #include "dbinc_auto/env_ext.h" @@ -745,7 +751,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * Test if we need to log a change. By default, we don't log operations without * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. * This is because we want to get log records for read/write operations, and, if - * we trying to debug something, more information is always better. + * we are trying to debug something, more information is always better. * * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING @@ -755,7 +761,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. * - * If we're not in recovery (master - doing an abort a client applying + * If we're not in recovery (master - doing an abort or a client applying * a txn), then a client's only path through here is on an internal * operation, and a master's only path through here is a transactional * operation. Detect if either is not the case. diff --git a/db/build_vxworks/db_load/db_load.c b/db/build_vxworks/db_load/db_load.c index 715c4c711..a0cb46c0a 100644 --- a/db/build_vxworks/db_load/db_load.c +++ b/db/build_vxworks/db_load/db_load.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_load.c,v 12.18 2006/08/26 09:23:08 bostic Exp $ + * $Id: db_load.c,v 12.23 2007/05/17 17:17:42 bostic Exp $ */ #include "db_config.h" @@ -15,7 +14,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif typedef struct { /* XXX: Globals. */ @@ -86,7 +85,7 @@ db_load_main(argc, argv) int ch, existed, exitval, ret; char **clist, **clp; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -858,7 +857,27 @@ db_load_rheader(dbenv, dbp, dbtypep, subdbp, checkprintp, keysp) value = p--; - if (name[0] == '\0' || value[0] == '\0') + if (name[0] == '\0') + goto badfmt; + + /* + * The only values that may be zero-length are database names. + * In the original Berkeley DB code it was possible to create + * zero-length database names, and the db_load code was then + * changed to allow such databases to be be dumped and loaded. + * [#8204] + */ + if (strcmp(name, "database") == 0 || + strcmp(name, "subdatabase") == 0) { + if ((ret = db_load_convprintable(dbenv, value, subdbp)) != 0) { + dbp->err(dbp, ret, "error reading db name"); + goto err; + } + continue; + } + + /* No other values may be zero-length. */ + if (value[0] == '\0') goto badfmt; if (strcmp(name, "HEADER") == 0) @@ -909,14 +928,6 @@ db_load_rheader(dbenv, dbp, dbtypep, subdbp, checkprintp, keysp) dbp->errx(dbp, "line %lu: unknown type", G(lineno)); goto err; } - if (strcmp(name, "database") == 0 || - strcmp(name, "subdatabase") == 0) { - if ((ret = db_load_convprintable(dbenv, value, subdbp)) != 0) { - dbp->err(dbp, ret, "error reading db name"); - goto err; - } - continue; - } if (strcmp(name, "keys") == 0) { if (strcmp(value, "1") == 0) *keysp = 1; @@ -1024,6 +1035,9 @@ db_load_convprintable(dbenv, instr, outstrp) /* * Just malloc a string big enough for the whole input string; * the output string will be smaller (or of equal length). + * + * Note that we may be passed a zero-length string and need to + * be able to duplicate it. */ if ((outstr = malloc(strlen(instr) + 1)) == NULL) return (ENOMEM); diff --git a/db/build_vxworks/db_load/db_load/Makefile.component b/db/build_vxworks/db_load/db_load/Makefile.component deleted file mode 100644 index 34a0dec6c..000000000 --- a/db/build_vxworks/db_load/db_load/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_load -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_load.o \ - compConfig.o -COMPONENT_OBJS = db_load.o -DEPENDENCY_FILES = db_load.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_load.o \ - compConfig.o -COMPONENT_OBJS = db_load.o -DEPENDENCY_FILES = db_load.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_load.o \ - compConfig.o -COMPONENT_OBJS = db_load.o -DEPENDENCY_FILES = db_load.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_load.o \ - compConfig.o -COMPONENT_OBJS = db_load.o -DEPENDENCY_FILES = db_load.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_load.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_load modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_load.c - $(COMPILE_TRADITIONAL) db_load_ctdt.c -o db_load_ctdt.o - $(LD) -r -o db_load.tmp $@ db_load_ctdt.o - $(RM) $@ - $(MV) db_load.tmp $@ -# -# Adds entry point table section to db_load component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_load modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_load.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_load.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_load.o: >> $@ - $(NM) db_load.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_load.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_printlog/db_printlog.c b/db/build_vxworks/db_printlog/db_printlog.c index eef054dac..bbb163210 100644 --- a/db/build_vxworks/db_printlog/db_printlog.c +++ b/db/build_vxworks/db_printlog/db_printlog.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_printlog.c,v 12.20 2006/08/26 09:23:10 bostic Exp $ + * $Id: db_printlog.c,v 12.25 2007/06/01 15:36:50 sue Exp $ */ #include "db_config.h" @@ -20,7 +19,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_printlog_env_init_print __P((DB_ENV *, u_int32_t, @@ -73,7 +72,7 @@ db_printlog_main(argc, argv) int (**dtab) __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -244,7 +243,7 @@ db_printlog_main(argc, argv) } for (; !__db_util_interrupted(); logcflag = rflag ? DB_PREV : DB_NEXT) { if (repflag) { - ret = dbc->c_get(dbc, &keydbt, &data, logcflag); + ret = dbc->get(dbc, &keydbt, &data, logcflag); if (ret == 0) key = ((REP_CONTROL *)keydbt.data)->lsn; } else @@ -307,7 +306,7 @@ shutdown: exitval = 1; if (logc != NULL && (ret = logc->close(logc, 0)) != 0) exitval = 1; - if (dbc != NULL && (ret = dbc->c_close(dbc)) != 0) + if (dbc != NULL && (ret = dbc->close(dbc)) != 0) exitval = 1; if (dbp != NULL && (ret = dbp->close(dbp, 0)) != 0) @@ -359,7 +358,11 @@ db_printlog_env_init_print(dbenv, version, dtabp, dtabsizep) /* * There are no log record/recovery differences between * 4.4 and 4.5. The log version changed due to checksum. + * There are no log recovery differences between + * 4.5 and 4.6. The name of the rep_gen in txn_checkpoint + * changed (to spare, since we don't use it anymore). */ + case DB_LOGVERSION_46: case DB_LOGVERSION_45: case DB_LOGVERSION_44: ret = 0; diff --git a/db/build_vxworks/db_printlog/db_printlog/Makefile.component b/db/build_vxworks/db_printlog/db_printlog/Makefile.component deleted file mode 100644 index 1a954a898..000000000 --- a/db/build_vxworks/db_printlog/db_printlog/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_printlog -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_printlog.o \ - compConfig.o -COMPONENT_OBJS = db_printlog.o -DEPENDENCY_FILES = db_printlog.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_printlog.o \ - compConfig.o -COMPONENT_OBJS = db_printlog.o -DEPENDENCY_FILES = db_printlog.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_printlog.o \ - compConfig.o -COMPONENT_OBJS = db_printlog.o -DEPENDENCY_FILES = db_printlog.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_printlog.o \ - compConfig.o -COMPONENT_OBJS = db_printlog.o -DEPENDENCY_FILES = db_printlog.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_printlog.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_printlog modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_printlog.c - $(COMPILE_TRADITIONAL) db_printlog_ctdt.c -o db_printlog_ctdt.o - $(LD) -r -o db_printlog.tmp $@ db_printlog_ctdt.o - $(RM) $@ - $(MV) db_printlog.tmp $@ -# -# Adds entry point table section to db_printlog component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_printlog modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_printlog.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_printlog.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_printlog.o: >> $@ - $(NM) db_printlog.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_printlog.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_recover/db_recover.c b/db/build_vxworks/db_recover/db_recover.c index 874f31209..32e99fd89 100644 --- a/db/build_vxworks/db_recover/db_recover.c +++ b/db/build_vxworks/db_recover/db_recover.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_recover.c,v 12.9 2006/08/26 09:23:13 bostic Exp $ + * $Id: db_recover.c,v 12.14 2007/05/17 15:15:03 bostic Exp $ */ #include "db_config.h" @@ -13,15 +12,17 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif +void db_recover_feedback __P((DB_ENV *, int, int)); int db_recover_main __P((int, char *[])); int db_recover_read_timestamp __P((char *, time_t *)); int db_recover_usage __P((void)); int db_recover_version_check __P((void)); const char *progname; +int newline_needed; int db_recover(args) @@ -47,10 +48,10 @@ db_recover_main(argc, argv) DB_ENV *dbenv; time_t timestamp; u_int32_t flags; - int ch, exitval, fatal_recover, ret, retain_env, verbose; + int ch, exitval, fatal_recover, ret, retain_env, set_feedback, verbose; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -60,9 +61,9 @@ db_recover_main(argc, argv) home = passwd = NULL; timestamp = 0; - exitval = fatal_recover = retain_env = verbose = 0; + exitval = fatal_recover = retain_env = set_feedback = verbose = 0; __db_getopt_reset = 1; - while ((ch = getopt(argc, argv, "ceh:P:t:Vv")) != EOF) + while ((ch = getopt(argc, argv, "cefh:P:t:Vv")) != EOF) switch (ch) { case 'c': fatal_recover = 1; @@ -70,6 +71,9 @@ db_recover_main(argc, argv) case 'e': retain_env = 1; break; + case 'f': + set_feedback = 1; + break; case 'h': home = optarg; break; @@ -116,6 +120,8 @@ db_recover_main(argc, argv) } dbenv->set_errfile(dbenv, stderr); dbenv->set_errpfx(dbenv, progname); + if (set_feedback) + (void)dbenv->set_feedback(dbenv, db_recover_feedback); if (verbose) (void)dbenv->set_verbose(dbenv, DB_VERB_RECOVERY, 1); if (timestamp && @@ -156,6 +162,10 @@ db_recover_main(argc, argv) shutdown: exitval = 1; } + /* Flush to the next line of the output device. */ + if (newline_needed) + printf("\n"); + /* Clean up the environment. */ if ((ret = dbenv->close(dbenv, 0)) != 0) { exitval = 1; @@ -171,6 +181,25 @@ shutdown: exitval = 1; return (exitval == 0 ? EXIT_SUCCESS : EXIT_FAILURE); } +/* + * feedback -- + * provide feedback on recovery progress. + */ +void +db_recover_feedback(dbenv, opcode, percent) + DB_ENV *dbenv; + int opcode; + int percent; +{ + COMPQUIET(dbenv, NULL); + + if (opcode == DB_RECOVER) { + printf("\rrecovery %d%% complete", percent); + (void)fflush(stdout); + newline_needed = 1; + } +} + #define ATOI2(ar) ((ar)[0] - '0') * 10 + ((ar)[1] - '0'); (ar) += 2; /* @@ -277,7 +306,7 @@ int db_recover_usage() { (void)fprintf(stderr, "usage: %s %s\n", progname, - "[-ceVv] [-h home] [-P password] [-t [[CC]YY]MMDDhhmm[.SS]]"); + "[-cefVv] [-h home] [-P password] [-t [[CC]YY]MMDDhhmm[.SS]]"); return (EXIT_FAILURE); } diff --git a/db/build_vxworks/db_recover/db_recover/Makefile.component b/db/build_vxworks/db_recover/db_recover/Makefile.component deleted file mode 100644 index 355683201..000000000 --- a/db/build_vxworks/db_recover/db_recover/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_recover -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_recover.o \ - compConfig.o -COMPONENT_OBJS = db_recover.o -DEPENDENCY_FILES = db_recover.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_recover.o \ - compConfig.o -COMPONENT_OBJS = db_recover.o -DEPENDENCY_FILES = db_recover.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_recover.o \ - compConfig.o -COMPONENT_OBJS = db_recover.o -DEPENDENCY_FILES = db_recover.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_recover.o \ - compConfig.o -COMPONENT_OBJS = db_recover.o -DEPENDENCY_FILES = db_recover.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_recover.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_recover modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_recover.c - $(COMPILE_TRADITIONAL) db_recover_ctdt.c -o db_recover_ctdt.o - $(LD) -r -o db_recover.tmp $@ db_recover_ctdt.o - $(RM) $@ - $(MV) db_recover.tmp $@ -# -# Adds entry point table section to db_recover component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_recover modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_recover.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_recover.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_recover.o: >> $@ - $(NM) db_recover.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_recover.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_stat/db_stat.c b/db/build_vxworks/db_stat/db_stat.c index be6256d9c..138e5680e 100644 --- a/db/build_vxworks/db_stat/db_stat.c +++ b/db/build_vxworks/db_stat/db_stat.c @@ -1,24 +1,22 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_stat.c,v 12.14 2006/08/26 09:23:19 bostic Exp $ + * $Id: db_stat.c,v 12.22 2007/07/06 15:43:57 alanb Exp $ */ #include "db_config.h" #include "db_int.h" -#include "dbinc/db_page.h" #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif -typedef enum { T_NOTSET, - T_DB, T_ENV, T_LOCK, T_LOG, T_MPOOL, T_MUTEX, T_REP, T_TXN } test_t; +typedef enum { T_NOTSET, T_DB, + T_ENV, T_LOCK, T_LOG, T_MPOOL, T_MUTEX, T_REP, T_TXN } test_t; int db_stat_db_init __P((DB_ENV *, char *, test_t, u_int32_t, int *)); int db_stat_main __P((int, char *[])); @@ -56,7 +54,7 @@ db_stat_main(argc, argv) int nflag, private, resize, ret; char *db, *home, *p, *passwd, *subdb; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -73,7 +71,7 @@ db_stat_main(argc, argv) __db_getopt_reset = 1; while ((ch = getopt(argc, - argv, "C:cd:Eefh:L:lM:mNP:R:rs:tVxX:Z")) != EOF) + argv, "C:cd:Eefgh:L:lM:mNP:R:rs:tVxX:Z")) != EOF) switch (ch) { case 'C': case 'c': if (ttype != T_NOTSET && ttype != T_LOCK) @@ -345,6 +343,10 @@ retry: if ((ret = db_env_create(&dbenv, 0)) != 0) { goto err; break; case T_REP: +#ifdef HAVE_REPLICATION_THREADS + if (dbenv->repmgr_stat_print(dbenv, flags)) + goto err; +#endif if (dbenv->rep_stat_print(dbenv, flags)) goto err; break; @@ -435,8 +437,6 @@ db_stat_db_init(dbenv, home, ttype, cache, is_private) oflags |= DB_INIT_MPOOL; if (ttype == T_LOG) oflags |= DB_INIT_LOG; - if (ttype == T_REP) - oflags |= DB_INIT_REP; if ((ret = dbenv->open(dbenv, home, oflags, 0)) == 0) return (0); diff --git a/db/build_vxworks/db_stat/db_stat/Makefile.component b/db/build_vxworks/db_stat/db_stat/Makefile.component deleted file mode 100644 index 7b1723781..000000000 --- a/db/build_vxworks/db_stat/db_stat/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_stat -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_stat.o \ - compConfig.o -COMPONENT_OBJS = db_stat.o -DEPENDENCY_FILES = db_stat.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_stat.o \ - compConfig.o -COMPONENT_OBJS = db_stat.o -DEPENDENCY_FILES = db_stat.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_stat.o \ - compConfig.o -COMPONENT_OBJS = db_stat.o -DEPENDENCY_FILES = db_stat.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_stat.o \ - compConfig.o -COMPONENT_OBJS = db_stat.o -DEPENDENCY_FILES = db_stat.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_stat.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_stat modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_stat.c - $(COMPILE_TRADITIONAL) db_stat_ctdt.c -o db_stat_ctdt.o - $(LD) -r -o db_stat.tmp $@ db_stat_ctdt.o - $(RM) $@ - $(MV) db_stat.tmp $@ -# -# Adds entry point table section to db_stat component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_stat modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_stat.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_stat.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_stat.o: >> $@ - $(NM) db_stat.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_stat.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_upgrade/db_upgrade.c b/db/build_vxworks/db_upgrade/db_upgrade.c index e53d571c6..06a745a24 100644 --- a/db/build_vxworks/db_upgrade/db_upgrade.c +++ b/db/build_vxworks/db_upgrade/db_upgrade.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_upgrade.c,v 12.9 2006/08/26 09:23:22 bostic Exp $ + * $Id: db_upgrade.c,v 12.12 2007/05/17 15:15:04 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_upgrade_main __P((int, char *[])); @@ -49,7 +48,7 @@ db_upgrade_main(argc, argv) int ch, exitval, nflag, ret, t_ret, verbose; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/build_vxworks/db_upgrade/db_upgrade/Makefile.component b/db/build_vxworks/db_upgrade/db_upgrade/Makefile.component deleted file mode 100644 index 71ae5e98e..000000000 --- a/db/build_vxworks/db_upgrade/db_upgrade/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_upgrade -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_upgrade.o \ - compConfig.o -COMPONENT_OBJS = db_upgrade.o -DEPENDENCY_FILES = db_upgrade.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_upgrade.o \ - compConfig.o -COMPONENT_OBJS = db_upgrade.o -DEPENDENCY_FILES = db_upgrade.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_upgrade.o \ - compConfig.o -COMPONENT_OBJS = db_upgrade.o -DEPENDENCY_FILES = db_upgrade.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_upgrade.o \ - compConfig.o -COMPONENT_OBJS = db_upgrade.o -DEPENDENCY_FILES = db_upgrade.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_upgrade.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_upgrade modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_upgrade.c - $(COMPILE_TRADITIONAL) db_upgrade_ctdt.c -o db_upgrade_ctdt.o - $(LD) -r -o db_upgrade.tmp $@ db_upgrade_ctdt.o - $(RM) $@ - $(MV) db_upgrade.tmp $@ -# -# Adds entry point table section to db_upgrade component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_upgrade modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_upgrade.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_upgrade.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_upgrade.o: >> $@ - $(NM) db_upgrade.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_upgrade.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/db_verify/db_verify.c b/db/build_vxworks/db_verify/db_verify.c index 68751ac01..20114a712 100644 --- a/db/build_vxworks/db_verify/db_verify.c +++ b/db/build_vxworks/db_verify/db_verify.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_verify.c,v 12.8 2006/08/26 09:23:23 bostic Exp $ + * $Id: db_verify.c,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_verify_main __P((int, char *[])); @@ -50,7 +49,7 @@ db_verify_main(argc, argv) int quiet, resize, ret; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/build_vxworks/db_verify/db_verify/Makefile.component b/db/build_vxworks/db_verify/db_verify/Makefile.component deleted file mode 100644 index 2748647a6..000000000 --- a/db/build_vxworks/db_verify/db_verify/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = db_verify -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_verify.o \ - compConfig.o -COMPONENT_OBJS = db_verify.o -DEPENDENCY_FILES = db_verify.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_verify.o \ - compConfig.o -COMPONENT_OBJS = db_verify.o -DEPENDENCY_FILES = db_verify.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_verify.o \ - compConfig.o -COMPONENT_OBJS = db_verify.o -DEPENDENCY_FILES = db_verify.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = db_verify.o \ - compConfig.o -COMPONENT_OBJS = db_verify.o -DEPENDENCY_FILES = db_verify.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -I$(PRJ_DIR)/../../../include -I$(PRJ_DIR)/../../../include_auto -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -db_verify.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all db_verify modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > db_verify.c - $(COMPILE_TRADITIONAL) db_verify_ctdt.c -o db_verify_ctdt.o - $(LD) -r -o db_verify.tmp $@ db_verify_ctdt.o - $(RM) $@ - $(MV) db_verify.tmp $@ -# -# Adds entry point table section to db_verify component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all db_verify modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -db_verify.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -db_verify.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) db_verify.o: >> $@ - $(NM) db_verify.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) db_verify.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/dbdemo/dbdemo.c b/db/build_vxworks/dbdemo/dbdemo.c index 4424b24d6..c60cf41af 100644 --- a/db/build_vxworks/dbdemo/dbdemo.c +++ b/db/build_vxworks/dbdemo/dbdemo.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: ex_access.c,v 12.3 2006/08/24 14:45:41 bostic Exp $ + * $Id: ex_access.c,v 12.6 2007/05/17 15:15:12 bostic Exp $ */ #include @@ -144,7 +143,7 @@ dbdemo_main(argc, argv) memset(&data, 0, sizeof(data)); /* Walk through the database and print out the key/data pairs. */ - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) + while ((ret = dbcp->get(dbcp, &key, &data, DB_NEXT)) == 0) printf("%.*s : %.*s\n", (int)key.size, (char *)key.data, (int)data.size, (char *)data.data); @@ -154,7 +153,7 @@ dbdemo_main(argc, argv) } /* Close everything down. */ - if ((ret = dbcp->c_close(dbcp)) != 0) { + if ((ret = dbcp->close(dbcp)) != 0) { dbp->err(dbp, ret, "DBcursor->close"); goto err1; } @@ -165,7 +164,7 @@ dbdemo_main(argc, argv) } return (EXIT_SUCCESS); -err2: (void)dbcp->c_close(dbcp); +err2: (void)dbcp->close(dbcp); err1: (void)dbp->close(dbp, 0); return (EXIT_FAILURE); } diff --git a/db/build_vxworks/demo/DBdemo.wpj b/db/build_vxworks/demo/DBdemo.wpj deleted file mode 100755 index c78c0a7c6..000000000 --- a/db/build_vxworks/demo/DBdemo.wpj +++ /dev/null @@ -1,162 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_BUILDRULE -DBdemo.out - - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/DBdemo.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(PRJ_DIR)/.. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDDEPS - - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_POST_BUILD_RULE - - - - BUILD_PENTIUMgnu_MACRO_PRJ_LIBS - - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_DBdemo.out - - - - BUILD_RULE_archive - - - - BUILD_RULE_objects - - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_$(PRJ_DIR)/dbdemo.c_dependDone -TRUE - - - FILE_$(PRJ_DIR)/dbdemo.c_dependencies -$(PRJ_DIR)/../db.h - - - FILE_$(PRJ_DIR)/dbdemo.c_objects -dbdemo.o - - - FILE_$(PRJ_DIR)/dbdemo.c_tool -C/C++ compiler - - - PROJECT_FILES -$(PRJ_DIR)/dbdemo.c - - - userComments -DB Demo program - - diff --git a/db/build_vxworks/demo/README b/db/build_vxworks/demo/README deleted file mode 100644 index 6ef111d35..000000000 --- a/db/build_vxworks/demo/README +++ /dev/null @@ -1,30 +0,0 @@ - -This README describes the steps needed to run a demo example -of BerkeleyDB. - -1. Read the pages in the Reference Guide that describe building -BerkeleyDB on VxWorks: - $(WIND_BASE)/target/src/BerkeleyDB/docs/ref/build_vxworks/intro.html - $(WIND_BASE)/target/src/BerkeleyDB/docs/ref/build_vxworks/notes.html - $(WIND_BASE)/target/src/BerkeleyDB/docs/ref/build_vxworks/faq.html - -2. Launch Tornado 2.0 and open up the BerkeleyDB project. -3. Add the demo project to that workspace: - $(WIND_BASE)/target/src/BerkeleyDB/build_vxworks/demo/DBdemo.wpj -4. Build BerkeleyDB as described in the Reference Guide. -5. Build the DBdemo project. -6. Download BerkeleyDB onto the target. -7. Download the Dbdemo project onto the target. -8. Open a windsh to the target and run the demo: - -> dbdemo "/" -Where pathname is a pathname string pointing to a directory that -the demo can create a database in. That directory should already -exist. The dbname is the name for the database. For example: --> dbdemo "/tmp/demo.db" - -9. The demo program will ask for input. You can type in any string. -The program will add an entry to the database with that string as the -key and the reverse of that string as the data item for that key. -It will continue asking for input until you hit ^D or enter "quit". -Upon doing so, the demo program will display all the keys you have -entered as input and their data items. diff --git a/db/build_vxworks/demo/dbdemo.c b/db/build_vxworks/demo/dbdemo.c deleted file mode 100644 index e3da901c4..000000000 --- a/db/build_vxworks/demo/dbdemo.c +++ /dev/null @@ -1,130 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997-2001 - * Sleepycat Software. All rights reserved. - * - * Id: dbdemo.c,v 1.1 2001/09/11 15:51:16 sue Exp - */ - -#include - -#include -#include - -#include - -#include "stdio.h" -#define ERROR_RETURN ERROR - -int dbdemo __P((char *)); - -int -dbdemo(database) - char *database; -{ - DB *dbp; - DBC *dbcp; - DBT key, data; - u_int32_t len; - int ret; - char *p, *t, buf[1024], rbuf[1024]; - const char *progname = "dbdemo"; /* Program name. */ - - /* Remove the previous database. */ - (void)remove(database); - - /* Create and initialize database object, open the database. */ - if ((ret = db_create(&dbp, NULL, 0)) != 0) { - fprintf(stderr, - "%s: db_create: %s\n", progname, db_strerror(ret)); - return (ERROR_RETURN); - } - dbp->set_errfile(dbp, stderr); - dbp->set_errpfx(dbp, progname); - if ((ret = dbp->set_pagesize(dbp, 1024)) != 0) { - dbp->err(dbp, ret, "set_pagesize"); - goto err1; - } - if ((ret = dbp->set_cachesize(dbp, 0, 32 * 1024, 0)) != 0) { - dbp->err(dbp, ret, "set_cachesize"); - goto err1; - } - if ((ret = - dbp->open(dbp, database, NULL, DB_BTREE, DB_CREATE, 0664)) != 0) { - dbp->err(dbp, ret, "%s: open", database); - goto err1; - } - - /* - * Insert records into the database, where the key is the user - * input and the data is the user input in reverse order. - */ - memset(&key, 0, sizeof(DBT)); - memset(&data, 0, sizeof(DBT)); - for (;;) { - printf("input> "); - fflush(stdout); - if (fgets(buf, sizeof(buf), stdin) == NULL) - break; - if (strncmp(buf, "quit", 4) == 0) - break; - if ((len = strlen(buf)) <= 1) - continue; - for (t = rbuf, p = buf + (len - 2); p >= buf;) - *t++ = *p--; - *t++ = '\0'; - - key.data = buf; - data.data = rbuf; - data.size = key.size = len - 1; - - switch (ret = - dbp->put(dbp, NULL, &key, &data, DB_NOOVERWRITE)) { - case 0: - break; - default: - dbp->err(dbp, ret, "DB->put"); - if (ret != DB_KEYEXIST) - goto err1; - break; - } - } - printf("\n"); - - /* Acquire a cursor for the database. */ - if ((ret = dbp->cursor(dbp, NULL, &dbcp, 0)) != 0) { - dbp->err(dbp, ret, "DB->cursor"); - goto err1; - } - - /* Initialize the key/data pair so the flags aren't set. */ - memset(&key, 0, sizeof(key)); - memset(&data, 0, sizeof(data)); - - /* Walk through the database and print out the key/data pairs. */ - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) - printf("%.*s : %.*s\n", - (int)key.size, (char *)key.data, - (int)data.size, (char *)data.data); - if (ret != DB_NOTFOUND) { - dbp->err(dbp, ret, "DBcursor->get"); - goto err2; - } - - /* Close everything down. */ - if ((ret = dbcp->c_close(dbcp)) != 0) { - dbp->err(dbp, ret, "DBcursor->close"); - goto err1; - } - if ((ret = dbp->close(dbp, 0)) != 0) { - fprintf(stderr, - "%s: DB->close: %s\n", progname, db_strerror(ret)); - return (ERROR_RETURN); - } - return (0); - -err2: (void)dbcp->c_close(dbcp); -err1: (void)dbp->close(dbp, 0); - return (ERROR_RETURN); -} diff --git a/db/build_vxworks/demo/demo/Makefile.component b/db/build_vxworks/demo/demo/Makefile.component deleted file mode 100644 index ad7208a77..000000000 --- a/db/build_vxworks/demo/demo/Makefile.component +++ /dev/null @@ -1,433 +0,0 @@ -# Component project makefile generated by the project manager -# - - -## core information - - -CONFIGLETTE = compConfig.c -TGT_DIR = $(WIND_BASE)/target -EXTERNAL_BINARIES_DIR = $(PRJ_DIR)/extbin/$(BUILD_SPEC) -COMPONENT_NAME = demo -.PHONY: defaultTarget -defaultTarget: $(COMPONENT_NAME).cm - -# -# default definition for CPU and TOOL (needed by defs.project) -# - -CPU = SIMSPARCSOLARIS -TOOL = gnu - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = dbdemo.o \ - compConfig.o -COMPONENT_OBJS = dbdemo.o -DEPENDENCY_FILES = dbdemo.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) -CPU = PENTIUM2 -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = dbdemo.o \ - compConfig.o -COMPONENT_OBJS = dbdemo.o -DEPENDENCY_FILES = dbdemo.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) -CPU = PENTIUM -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = dbdemo.o \ - compConfig.o -COMPONENT_OBJS = dbdemo.o -DEPENDENCY_FILES = dbdemo.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -## CPU and TOOL info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) -CPU = SIMSPARCSOLARIS -TOOL = gnu -SYS_OBJ_DIR = $(WIND_BASE)/target/lib/obj$(CPU)$(TOOL)vx -USER_OBJ_DIR = $(WIND_BASE)/target/user/objs/obj$(CPU)$(TOOL) -PRJ_OBJS = dbdemo.o \ - compConfig.o -COMPONENT_OBJS = dbdemo.o -DEPENDENCY_FILES = dbdemo.d \ - compConfig.d -NUMBER_OF_COMPONENT_OBJS = $(words $(COMPONENT_OBJS)) -endif - - -include $(TGT_DIR)/h/make/defs.project - - -## build-configuration info for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.debug' - -endif - - -## build-configuration info for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -CFLAGS_AS = -mcpu=pentiumpro -march=pentiumpro -ansi -O2 -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM2 -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 1 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUM2gnu.release' - -endif - - -## build-configuration info for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## macros - -AR = arpentium -AS = ccpentium -CC = ccpentium -CFLAGS = -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM -CFLAGS_AS = -mcpu=pentium -march=pentium -ansi -g -nostdlib -fno-builtin -fno-defer-pop -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=PENTIUM -CPP = ccpentium -E -P -CPPFILT = c++filtpentium --strip-underscores -LD = ldpentium -LDFLAGS = -X -LDPARTIAL = ccpentium -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -X -r -NM = nmpentium -g -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizepentium -POST_BUILD_RULE = - -## end build-configuration info for build specification 'PENTIUMgnu.debug' - -endif - - -## build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## macros - -AR = arsparc -AS = ccsparc -CC = ccsparc -CFLAGS = -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=SIMSPARCSOLARIS -CFLAGS_AS = -ansi -g -fno-builtin -P -x assembler-with-cpp -Wall -I. -I$(WIND_BASE)/target/h -DCPU=SIMSPARCSOLARIS -CPP = ccsparc -E -P -CPPFILT = c++filtsparc --strip-underscores -LD = ldsparc -LDFLAGS = -T $(WIND_BASE)/target/config/solaris/linker-script -LDPARTIAL = ccsparc -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ -nostdlib -r -Wl,-X -LD_PARTIAL_FLAGS = -nostdlib -r -NM = nmsparc -OPTION_DEFINE_MACRO = -D -OPTION_GENERATE_DEPENDENCY_FILE = -MD -OPTION_INCLUDE_DIR = -I -RELEASE = 0 -SIZE = sizesparc -POST_BUILD_RULE = - -## end build-configuration info for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# override make definitions only below this line - - -# override make definitions only above this line - -include $(TGT_DIR)/h/make/rules.project - - -# -# Dummy target to force external make -# - -FORCE_EXTERNAL_MAKE: - - - -# -# Custom makefile -# - -include $(PRJ_DIR)/Makefile.custom - - -## build rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## build rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentiumpro -march=pentiumpro -ansi -DRW_MULTI_THREAD -D_REENTRANT -O2 -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM2 $< > $@ - - -## end build rules for build specification 'PENTIUM2gnu.release' - -endif - - -## build rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM -c $< - -%.d : $(PRJ_DIR)/../%.c - ccpentium -E -P -M -mcpu=pentium -march=pentium -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -nostdlib -fno-builtin -fno-defer-pop -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=PENTIUM $< > $@ - - -## end build rules for build specification 'PENTIUMgnu.debug' - -endif - - -## build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -%.o : $(PRJ_DIR)/%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=SIMSPARCSOLARIS $< > $@ - -%.o : $(PRJ_DIR)/../%.c - $(CC) -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -MD -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=SIMSPARCSOLARIS -c $< - -%.d : $(PRJ_DIR)/../%.c - ccsparc -E -P -M -ansi -DRW_MULTI_THREAD -D_REENTRANT -g -fno-builtin -Wall -I. -I$(WIND_BASE)/target/h -I$(PRJ_DIR)/../.. -DCPU=SIMSPARCSOLARIS $< > $@ - - -## end build rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - -# -# Rule for configurable, binary component -# -# Downloadable component module build rules -# -demo.cm: $(PRJ_OBJS) mxrDoc.nm depend -# -# Partially link all demo modules together -# including the configlette modules -# - $(LD) -r -o $@ $(PRJ_OBJS) $(CC_LIB) -# -# Generate _vxMain and _vxExit by munching -# - $(NM) $@ | $(MUNCH) > demo_ctdt.c - $(COMPILE_TRADITIONAL) demo_ctdt.c -o demo_ctdt.o - $(LD) -r -o demo.tmp $@ demo_ctdt.o - $(RM) $@ - $(MV) demo.tmp $@ -# -# Adds entry point table section to demo component -# - $(PD_EPT_DDE_ADD) $@ $(PRJ_DIR)/$(PRJ_FILE) INDEX $(BUILD_SPEC) - - -# -# Partial link build rules -# Partially link all demo modules together -# If no source files, then generates dummy.c -# - -ifeq ($(COMPONENT_OBJS),) -dummy.c: - $(CFG_GEN) $(PRJ_DIR)/$(PRJ_FILE) dummyCGen $(PRJ_TYPE) - -demo.pl: dummy.o mxrDoc.nm depend - $(LD) -r -o $@ dummy.o -else -demo.pl: $(COMPONENT_OBJS) mxrDoc.nm depend - $(LD) -r -o $@ $(COMPONENT_OBJS) -endif - -# -# nm file containing symbol information for all component objects -# - -EXTERNAL_BINARIES_DIR_PATTERN_1 = $(subst \,\\,$(PRJ_DIR)/extbin/$(BUILD_SPEC)/) -EXTERNAL_BINARIES_DIR_PATTERN = $(subst /,\/,$(EXTERNAL_BINARIES_DIR_PATTERN_1)) - -mxrDoc.nm: mxrDoc.size $(COMPONENT_OBJS) - $(RM) $@ -# if there are no object files, make a blank mxr doc -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" >> $@ -else -# make sure object file name is in mxrDoc.nm even if there -# is only one object file - $(ECHO) dbdemo.o: >> $@ - $(NM) dbdemo.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - -# -# size file containing size information for all component objects -# -mxrDoc.size: $(COMPONENT_OBJS) $(PRJ_DIR)/component.cdf - $(RM) $@ -ifeq ($(NUMBER_OF_COMPONENT_OBJS),0) - @$(ECHO) "" > $@ -else - $(SIZE) dbdemo.o | sed -e "s|$(EXTERNAL_BINARIES_DIR_PATTERN)||g" >> $@ -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.debug) - -## end user-defined rules for build specification 'PENTIUM2gnu.debug' - -endif - - -## user-defined rules for build specification 'PENTIUM2gnu.release' - -ifeq ($(BUILD_SPEC),PENTIUM2gnu.release) - -## end user-defined rules for build specification 'PENTIUM2gnu.release' - -endif - - -## user-defined rules for build specification 'PENTIUMgnu.debug' - -ifeq ($(BUILD_SPEC),PENTIUMgnu.debug) - -## end user-defined rules for build specification 'PENTIUMgnu.debug' - -endif - - -## user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -ifeq ($(BUILD_SPEC),SIMSPARCSOLARISgnu.debug) - -## end user-defined rules for build specification 'SIMSPARCSOLARISgnu.debug' - -endif - - -# -# Recursive clean -# - -rclean : clean - diff --git a/db/build_vxworks/demo/demo/Makefile.custom b/db/build_vxworks/demo/demo/Makefile.custom deleted file mode 100644 index ca781f7b2..000000000 --- a/db/build_vxworks/demo/demo/Makefile.custom +++ /dev/null @@ -1,51 +0,0 @@ -# -# Custom Makefile shell -# -# This file may be edited freely, since it will not be regenerated -# by the project manager. -# -# Use this makefile to define rules to make external binaries -# and deposit them in the $(EXTERNAL_BINARIES_DIR) directory. -# -# If you have specified external modules during your component -# creation, you will find make rules already in place below. -# You will likely have to edit these to suit your individual -# build setup. -# -# You may wish to use the CPU, BUILD_SPEC or TOOL make variables in -# your Makefile to support builds for different architectures. Use -# the FORCE_EXTERNAL_MAKE phony target to ensure that your external -# make always runs. -# -# The example below assumes that your custom makefile is in the -# mySourceTree directory, and that the binary file it produces -# is placed into the $(BUILD_SPEC) sub-directory. -# -# EXTERNAL_SOURCE_BASE = /folk/me/mySourceTree -# EXTERNAL_MODULE = myLibrary.o -# EXTERNAL_MAKE = make -# -# $(EXTERNAL_BINARIES_DIR)/$(EXTERNAL_MODULE) : FORCE_EXTERNAL_MAKE -# $(EXTERNAL_MAKE) -C $(EXTERNAL_SOURCE_BASE) \ -# -f $(EXTERNAL_SOURCE_BASE)/Makefile \ -# CPU=$(CPU) BUILD_SPEC=$(BUILD_SPEC) $(@F) -# $(CP) $(subst /,$(DIRCHAR),$(EXTERNAL_SOURCE_BASE)/$(BUILD_SPEC)/$(@F) $@) -# -# If you are not adding your external modules from the component wizard, -# you will have to include them in your component yourself: -# -# From the GUI, you can do this with the Component's 'Add external module' -# dialog. -# -# If you are using the command line, add the module(s) by editing the -# MODULES line in component.cdf file, e.g. -# -# Component INCLUDE_MYCOMPONENT { -# -# MODULES foo.o goo.o \ -# myLibrary.o -# - - -# rules to build custom libraries - diff --git a/db/build_vxworks/demo/demo/component.cdf b/db/build_vxworks/demo/demo/component.cdf deleted file mode 100644 index f927693ee..000000000 --- a/db/build_vxworks/demo/demo/component.cdf +++ /dev/null @@ -1,30 +0,0 @@ -/* component.cdf - dynamically updated configuration */ - -/* - * NOTE: you may edit this file to alter the configuration - * But all non-configuration information, including comments, - * will be lost upon rebuilding this project. - */ - -/* Component information */ - -Component INCLUDE_DEMO { - ENTRY_POINTS ALL_GLOBAL_SYMBOLS - MODULES dbdemo.o - NAME demo - PREF_DOMAIN ANY - _INIT_ORDER usrComponentsInit -} - -/* EntryPoint information */ - -/* Module information */ - -Module dbdemo.o { - - NAME dbdemo.o - SRC_PATH_NAME $PRJ_DIR/../dbdemo.c -} - -/* Parameter information */ - diff --git a/db/build_vxworks/demo/demo/component.wpj b/db/build_vxworks/demo/demo/component.wpj deleted file mode 100644 index 01c459909..000000000 --- a/db/build_vxworks/demo/demo/component.wpj +++ /dev/null @@ -1,607 +0,0 @@ -Document file - DO NOT EDIT - - CORE_INFO_TYPE -::prj_component - - - CORE_INFO_VERSION -AE1.1 - - - BUILD__CURRENT -SIMSPARCSOLARISgnu.debug - - - BUILD_PENTIUM2gnu.debug_CURRENT_TARGET -default - - - BUILD_PENTIUM2gnu.debug_DEFAULTFORCPU -1 - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_infoTags -toolMacro objects - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_objects -dbdemo.o - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_toolMacro -CC - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_objects -dbdemo.o - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_toolMacro -CC - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/compConfig.c_infoTags -toolMacro objects - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/compConfig.c_objects -compConfig.o - - - BUILD_PENTIUM2gnu.debug_FILE_$(PRJ_DIR)/compConfig.c_toolMacro -CC - - - BUILD_PENTIUM2gnu.debug_MACRO_AR -arpentium - - - BUILD_PENTIUM2gnu.debug_MACRO_AS -ccpentium - - - BUILD_PENTIUM2gnu.debug_MACRO_CC -ccpentium - - - BUILD_PENTIUM2gnu.debug_MACRO_CFLAGS --mcpu=pentiumpro \ - -march=pentiumpro \ - -ansi \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -g \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -MD \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -I$(PRJ_DIR)/../.. \ - -DCPU=PENTIUM2 - - - BUILD_PENTIUM2gnu.debug_MACRO_CFLAGS_AS --mcpu=pentiumpro \ - -march=pentiumpro \ - -ansi \ - -g \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM2 - - - BUILD_PENTIUM2gnu.debug_MACRO_CPP -ccpentium -E -P - - - BUILD_PENTIUM2gnu.debug_MACRO_CPPFILT -c++filtpentium --strip-underscores - - - BUILD_PENTIUM2gnu.debug_MACRO_LD -ldpentium - - - BUILD_PENTIUM2gnu.debug_MACRO_LDFLAGS --X - - - BUILD_PENTIUM2gnu.debug_MACRO_LDPARTIAL -ccpentium \ - -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ \ - -nostdlib \ - -r \ - -Wl,-X - - - BUILD_PENTIUM2gnu.debug_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUM2gnu.debug_MACRO_NM -nmpentium -g - - - BUILD_PENTIUM2gnu.debug_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUM2gnu.debug_MACRO_OPTION_GENERATE_DEPENDENCY_FILE --MD - - - BUILD_PENTIUM2gnu.debug_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUM2gnu.debug_MACRO_RELEASE -0 - - - BUILD_PENTIUM2gnu.debug_MACRO_SIZE -sizepentium - - - BUILD_PENTIUM2gnu.debug_RELEASE -0 - - - BUILD_PENTIUM2gnu.debug_RO_DEPEND_PATH -$(WIND_BASE)/target/h/ - - - BUILD_PENTIUM2gnu.debug_TC -::tc_PENTIUM2gnu.debug - - - BUILD_PENTIUM2gnu.release_DEFAULTFORCPU -0 - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/../dbdemo.c_infoTags -toolMacro objects - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/../dbdemo.c_objects -dbdemo.o - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/../dbdemo.c_toolMacro -CC - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/compConfig.c_infoTags -toolMacro objects - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/compConfig.c_objects -compConfig.o - - - BUILD_PENTIUM2gnu.release_FILE_$(PRJ_DIR)/compConfig.c_toolMacro -CC - - - BUILD_PENTIUM2gnu.release_MACRO_AR -arpentium - - - BUILD_PENTIUM2gnu.release_MACRO_AS -ccpentium - - - BUILD_PENTIUM2gnu.release_MACRO_CC -ccpentium - - - BUILD_PENTIUM2gnu.release_MACRO_CFLAGS --mcpu=pentiumpro \ - -march=pentiumpro \ - -ansi \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -O2 \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -MD \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -I$(PRJ_DIR)/../.. \ - -DCPU=PENTIUM2 - - - BUILD_PENTIUM2gnu.release_MACRO_CFLAGS_AS --mcpu=pentiumpro \ - -march=pentiumpro \ - -ansi \ - -O2 \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM2 - - - BUILD_PENTIUM2gnu.release_MACRO_CPP -ccpentium -E -P - - - BUILD_PENTIUM2gnu.release_MACRO_CPPFILT -c++filtpentium --strip-underscores - - - BUILD_PENTIUM2gnu.release_MACRO_LD -ldpentium - - - BUILD_PENTIUM2gnu.release_MACRO_LDFLAGS --X - - - BUILD_PENTIUM2gnu.release_MACRO_LDPARTIAL -ccpentium \ - -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ \ - -nostdlib \ - -r \ - -Wl,-X - - - BUILD_PENTIUM2gnu.release_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUM2gnu.release_MACRO_NM -nmpentium -g - - - BUILD_PENTIUM2gnu.release_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUM2gnu.release_MACRO_OPTION_GENERATE_DEPENDENCY_FILE --MD - - - BUILD_PENTIUM2gnu.release_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUM2gnu.release_MACRO_RELEASE -1 - - - BUILD_PENTIUM2gnu.release_MACRO_SIZE -sizepentium - - - BUILD_PENTIUM2gnu.release_RELEASE -1 - - - BUILD_PENTIUM2gnu.release_RO_DEPEND_PATH -$(WIND_BASE)/target/h/ - - - BUILD_PENTIUM2gnu.release_TC -::tc_PENTIUM2gnu.release - - - BUILD_PENTIUMgnu.debug_DEFAULTFORCPU -1 - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_infoTags -toolMacro objects - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_objects -dbdemo.o - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_toolMacro -CC - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_infoTags -toolMacro objects - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_objects -compConfig.o - - - BUILD_PENTIUMgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_toolMacro -CC - - - BUILD_PENTIUMgnu.debug_MACRO_AR -arpentium - - - BUILD_PENTIUMgnu.debug_MACRO_AS -ccpentium - - - BUILD_PENTIUMgnu.debug_MACRO_CC -ccpentium - - - BUILD_PENTIUMgnu.debug_MACRO_CFLAGS --mcpu=pentium \ - -march=pentium \ - -ansi \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -g \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -MD \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -I$(PRJ_DIR)/../.. \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu.debug_MACRO_CFLAGS_AS --mcpu=pentium \ - -march=pentium \ - -ansi \ - -g \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu.debug_MACRO_CPP -ccpentium -E -P - - - BUILD_PENTIUMgnu.debug_MACRO_CPPFILT -c++filtpentium --strip-underscores - - - BUILD_PENTIUMgnu.debug_MACRO_LD -ldpentium - - - BUILD_PENTIUMgnu.debug_MACRO_LDFLAGS --X - - - BUILD_PENTIUMgnu.debug_MACRO_LDPARTIAL -ccpentium \ - -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ \ - -nostdlib \ - -r \ - -Wl,-X - - - BUILD_PENTIUMgnu.debug_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu.debug_MACRO_NM -nmpentium -g - - - BUILD_PENTIUMgnu.debug_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu.debug_MACRO_OPTION_GENERATE_DEPENDENCY_FILE --MD - - - BUILD_PENTIUMgnu.debug_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu.debug_MACRO_RELEASE -0 - - - BUILD_PENTIUMgnu.debug_MACRO_SIZE -sizepentium - - - BUILD_PENTIUMgnu.debug_RELEASE -0 - - - BUILD_PENTIUMgnu.debug_RO_DEPEND_PATH -$(WIND_BASE)/target/h/ - - - BUILD_PENTIUMgnu.debug_TC -::tc_PENTIUMgnu.debug - - - BUILD_SIMSPARCSOLARISgnu.debug_CURRENT_TARGET -default - - - BUILD_SIMSPARCSOLARISgnu.debug_DEFAULTFORCPU -1 - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_infoTags -toolMacro objects - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_objects -dbdemo.o - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/../dbdemo.c_toolMacro -CC - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_infoTags -toolMacro objects - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_objects -compConfig.o - - - BUILD_SIMSPARCSOLARISgnu.debug_FILE_$(PRJ_DIR)/compConfig.c_toolMacro -CC - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_AR -arsparc - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_AS -ccsparc - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_CC -ccsparc - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_CFLAGS --ansi \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -g \ - -fno-builtin \ - -MD \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -I$(PRJ_DIR)/../.. \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_CFLAGS_AS --ansi \ - -g \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -Wall \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_CPP -ccsparc -E -P - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_CPPFILT -c++filtsparc --strip-underscores - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_LD -ldsparc - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_LDFLAGS --T $(WIND_BASE)/target/config/solaris/linker-script - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_LDPARTIAL -ccsparc \ - -B$(WIND_BASE)/host/$(WIND_HOST_TYPE)/lib/gcc-lib/ \ - -nostdlib \ - -r \ - -Wl,-X - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_NM -nmsparc - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_OPTION_GENERATE_DEPENDENCY_FILE --MD - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_RELEASE -0 - - - BUILD_SIMSPARCSOLARISgnu.debug_MACRO_SIZE -sizesparc - - - BUILD_SIMSPARCSOLARISgnu.debug_RELEASE -0 - - - BUILD_SIMSPARCSOLARISgnu.debug_RO_DEPEND_PATH -$(WIND_BASE)/target/h/ - - - BUILD_SIMSPARCSOLARISgnu.debug_TC -::tc_SIMSPARCSOLARISgnu.debug - - - BUILD__LIST -PENTIUM2gnu.debug PENTIUM2gnu.release PENTIUMgnu.debug SIMSPARCSOLARISgnu.debug - - - PROJECT_FILES -$(PRJ_DIR)/../dbdemo.c \ - $(PRJ_DIR)/compConfig.c - - - WCC__CDF_PATH -$(PRJ_DIR) - - - WCC__CURRENT -PENTIUM2gnu.debug - - - WCC__LIST -PENTIUM2gnu.debug - - - WCC__MXR_LIBS -lib$(CPU)$(TOOL)vx.a - - - WCC__OBJS_PATH -$(WIND_BASE)/target/lib/obj$CPU$TOOLvx - - diff --git a/db/build_vxworks/ex_access/ex_access.wpj b/db/build_vxworks/ex_access/ex_access.wpj deleted file mode 100644 index bbbad47a2..000000000 --- a/db/build_vxworks/ex_access/ex_access.wpj +++ /dev/null @@ -1,244 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_access.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM \ - -I/export/home/db/build_vxworks - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_access.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_access.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_access.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_access.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_access.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_access.c_objects -ex_access.o - - - FILE_/export/home/db/examples_c/ex_access.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_access.c - - - userComments -ex_access - - diff --git a/db/build_vxworks/ex_btrec/ex_btrec.wpj b/db/build_vxworks/ex_btrec/ex_btrec.wpj deleted file mode 100644 index 801ca6808..000000000 --- a/db/build_vxworks/ex_btrec/ex_btrec.wpj +++ /dev/null @@ -1,250 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_btrec.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM \ - -I/export/home/db/build_vxworks - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_btrec.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_btrec.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_btrec.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I/export/home/db/build_vxworks \ - -I/export/home/db/include \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDDEPS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_btrec.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_btrec.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_btrec.c_objects -ex_btrec.o - - - FILE_/export/home/db/examples_c/ex_btrec.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_btrec.c - - - userComments -ex_btrec - - diff --git a/db/build_vxworks/ex_dbclient/ex_dbclient.wpj b/db/build_vxworks/ex_dbclient/ex_dbclient.wpj deleted file mode 100644 index fdb721406..000000000 --- a/db/build_vxworks/ex_dbclient/ex_dbclient.wpj +++ /dev/null @@ -1,266 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_BUILDRULE -ex_dbclient.out - - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_dbclient.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I/export/home/db/build_vxworks \ - -I/export/home/db/include \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDDEPS - - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_POST_BUILD_RULE - - - - BUILD_PENTIUMgnu_MACRO_PRJ_LIBS - - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_dbclient.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_dbclient.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_dbclient.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I/export/home/db/include \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDDEPS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_dbclient.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_dbclient.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_dbclient.c_objects -ex_dbclient.o - - - FILE_/export/home/db/examples_c/ex_dbclient.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_dbclient.c - - - userComments -RPC Client example - - diff --git a/db/build_vxworks/ex_env/ex_env.wpj b/db/build_vxworks/ex_env/ex_env.wpj deleted file mode 100644 index 7229ffa13..000000000 --- a/db/build_vxworks/ex_env/ex_env.wpj +++ /dev/null @@ -1,248 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_env.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM \ - -I/export/home/db/build_vxworks - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_env.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_env.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_env.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDDEPS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_env.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_env.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_env.c_objects -ex_env.o - - - FILE_/export/home/db/examples_c/ex_env.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_env.c - - - userComments -ex_env - - diff --git a/db/build_vxworks/ex_mpool/ex_mpool.wpj b/db/build_vxworks/ex_mpool/ex_mpool.wpj deleted file mode 100644 index 6dd9ed4db..000000000 --- a/db/build_vxworks/ex_mpool/ex_mpool.wpj +++ /dev/null @@ -1,248 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_mpool.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM \ - -I/export/home/db/build_vxworks - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_mpool.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_mpool.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_mpool.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDDEPS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_mpool.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_mpool.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_mpool.c_objects -ex_mpool.o - - - FILE_/export/home/db/examples_c/ex_mpool.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_mpool.c - - - userComments -ex_mpool - - diff --git a/db/build_vxworks/ex_tpcb/ex_tpcb.wpj b/db/build_vxworks/ex_tpcb/ex_tpcb.wpj deleted file mode 100644 index 91de499dc..000000000 --- a/db/build_vxworks/ex_tpcb/ex_tpcb.wpj +++ /dev/null @@ -1,261 +0,0 @@ -Document file - DO NOT EDIT - - BUILD_PENTIUMgnu_BUILDRULE -ex_tpcb.out - - - BUILD_PENTIUMgnu_MACRO_AR -ar386 - - - BUILD_PENTIUMgnu_MACRO_ARCHIVE -$(PRJ_DIR)/PENTIUMgnu/ex_tpcb.a - - - BUILD_PENTIUMgnu_MACRO_AS -cc386 - - - BUILD_PENTIUMgnu_MACRO_CC -cc386 - - - BUILD_PENTIUMgnu_MACRO_CFLAGS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM \ - -I/export/home/db/build_vxworks \ - -DVERY_TINY - - - BUILD_PENTIUMgnu_MACRO_CFLAGS_AS --g \ - -mpentium \ - -ansi \ - -nostdinc \ - -fvolatile \ - -nostdlib \ - -fno-builtin \ - -fno-defer-pop \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=PENTIUM - - - BUILD_PENTIUMgnu_MACRO_CPP -cc386 -E -P -xc - - - BUILD_PENTIUMgnu_MACRO_LD -ld386 - - - BUILD_PENTIUMgnu_MACRO_LDFLAGS --X -N - - - BUILD_PENTIUMgnu_MACRO_LD_PARTIAL_FLAGS --X -r - - - BUILD_PENTIUMgnu_MACRO_NM -nm386 -g - - - BUILD_PENTIUMgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_PENTIUMgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_PENTIUMgnu_MACRO_POST_BUILD_RULE - - - - BUILD_PENTIUMgnu_MACRO_PRJ_LIBS - - - - BUILD_PENTIUMgnu_MACRO_SIZE -size386 - - - BUILD_PENTIUMgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_PENTIUMgnu_TC -::tc_PENTIUMgnu - - - BUILD_RULE_archive - - - - BUILD_RULE_ex_tpcb.out - - - - BUILD_RULE_objects - - - - BUILD_SIMSPARCSOLARISgnu_BUILDRULE -ex_tpcb.out - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AR -arsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_ARCHIVE -$(PRJ_DIR)/SIMSPARCSOLARISgnu/ex_tpcb.a - - - BUILD_SIMSPARCSOLARISgnu_MACRO_AS -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CC -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS --g \ - -ansi \ - -nostdinc \ - -DRW_MULTI_THREAD \ - -D_REENTRANT \ - -fvolatile \ - -fno-builtin \ - -I/export/home/db/build_vxworks \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CFLAGS_AS --g \ - -ansi \ - -nostdinc \ - -fvolatile \ - -fno-builtin \ - -P \ - -x \ - assembler-with-cpp \ - -I. \ - -I$(WIND_BASE)/target/h \ - -DCPU=SIMSPARCSOLARIS - - - BUILD_SIMSPARCSOLARISgnu_MACRO_CPP -ccsimso -E -P -xc - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD -ccsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDDEPS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LDFLAGS --N - - - BUILD_SIMSPARCSOLARISgnu_MACRO_LD_PARTIAL_FLAGS --nostdlib -r - - - BUILD_SIMSPARCSOLARISgnu_MACRO_NM -nmsimso - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_DEFINE_MACRO --D - - - BUILD_SIMSPARCSOLARISgnu_MACRO_OPTION_INCLUDE_DIR --I - - - BUILD_SIMSPARCSOLARISgnu_MACRO_POST_BUILD_RULE - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_PRJ_LIBS - - - - BUILD_SIMSPARCSOLARISgnu_MACRO_SIZE -sizesimso - - - BUILD_SIMSPARCSOLARISgnu_RO_DEPEND_PATH -{$(WIND_BASE)/target/h/} \ - {$(WIND_BASE)/target/src/} \ - {$(WIND_BASE)/target/config/} - - - BUILD_SIMSPARCSOLARISgnu_TC -::tc_SIMSPARCSOLARISgnu - - - BUILD__CURRENT -PENTIUMgnu - - - BUILD__LIST -SIMSPARCSOLARISgnu PENTIUMgnu - - - CORE_INFO_TYPE -::prj_vxApp - - - CORE_INFO_VERSION -2.0 - - - FILE_/export/home/db/examples_c/ex_tpcb.c_dependDone -TRUE - - - FILE_/export/home/db/examples_c/ex_tpcb.c_dependencies -/export/home/db/build_vxworks/db_config.h /export/home/db/build_vxworks/db.h - - - FILE_/export/home/db/examples_c/ex_tpcb.c_objects -ex_tpcb.o - - - FILE_/export/home/db/examples_c/ex_tpcb.c_tool -C/C++ compiler - - - PROJECT_FILES -/export/home/db/examples_c/ex_tpcb.c - - - userComments -ex_tpcb - - diff --git a/db/build_win32/Berkeley_DB.dsw b/db/build_win32/Berkeley_DB.dsw deleted file mode 100644 index bcce71e8a..000000000 --- a/db/build_win32/Berkeley_DB.dsw +++ /dev/null @@ -1,539 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "build_all"=.\build_all.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_archive - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_checkpoint - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_deadlock - End Project Dependency - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_dump - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_load - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_printlog - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_recover - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_stat - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_upgrade - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_verify - End Project Dependency - Begin Project Dependency - Project_Dep_Name DB_Static - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_access - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_btrec - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_env - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_lock - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_mpool - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_tpcb - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_access - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_btrec - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_env - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_lock - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_mpool - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_tpcb - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_archive"=.\db_archive.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_checkpoint"=.\db_checkpoint.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_deadlock"=.\db_deadlock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_dll"=.\db_dll.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "db_dump"=.\db_dump.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_java"=.\db_java.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_lib"=.\db_lib.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_dll - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_static - End Project Dependency -}}} - -############################################################################### - -Project: "db_load"=.\db_load.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_printlog"=.\db_printlog.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_recover"=.\db_recover.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_stat"=.\db_stat.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_static"=.\db_static.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "db_tcl"=.\db_tcl.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_test"=.\db_test.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name build_all - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_tcl - End Project Dependency -}}} - -############################################################################### - -Project: "db_upgrade"=.\db_upgrade.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_verify"=.\db_verify.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_access"=.\ex_access.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_btrec"=.\ex_btrec.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_env"=.\ex_env.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_lock"=.\ex_lock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_mpool"=.\ex_mpool.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_repquote"=.\ex_repquote.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_tpcb"=.\ex_tpcb.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_access"=.\excxx_access.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_btrec"=.\excxx_btrec.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_env"=.\excxx_env.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_lock"=.\excxx_lock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_mpool"=.\excxx_mpool.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_tpcb"=.\excxx_tpcb.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - diff --git a/db/build_win32/app_dsp.src b/db/build_win32/app_dsp.src deleted file mode 100644 index e0d84eabe..000000000 --- a/db/build_win32/app_dsp.src +++ /dev/null @@ -1,145 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/build_all.dsp b/db/build_win32/build_all.dsp deleted file mode 100644 index 7ae1f9bb0..000000000 --- a/db/build_win32/build_all.dsp +++ /dev/null @@ -1,96 +0,0 @@ -# Microsoft Developer Studio Project File - Name="build_all" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Generic Project" 0x010a - -CFG=build_all - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "build_all.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "build_all.mak" CFG="build_all - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "build_all - Win32 Release" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Debug" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Release Static" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Debug Static" (based on "Win32 (x86) External Target") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "build_all - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Cmd_Line "echo DB Release version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Cmd_Line "echo DB Debug version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Cmd_Line "echo DB Release Static version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_Static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_Static" -# PROP Cmd_Line "echo DB Debug Static version built." -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "build_all - Win32 Release" -# Name "build_all - Win32 Debug" -# Name "build_all - Win32 Release Static" -# Name "build_all - Win32 Debug Static" -# End Target -# End Project diff --git a/db/build_win32/db.h b/db/build_win32/db.h deleted file mode 100644 index 359dede88..000000000 --- a/db/build_win32/db.h +++ /dev/null @@ -1,2242 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/* - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1996-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db.in,v 11.463 2004/10/11 18:47:50 bostic Exp $ - * - * db.h include file layout: - * General. - * Database Environment. - * Locking subsystem. - * Logging subsystem. - * Shared buffer cache (mpool) subsystem. - * Transaction subsystem. - * Access methods. - * Access method cursors. - * Dbm/Ndbm, Hsearch historic interfaces. - */ - -#ifndef _DB_H_ -#define _DB_H_ - -#ifndef __NO_SYSTEM_INCLUDES -#include -#include -#include -#endif - -#if defined(__cplusplus) -extern "C" { -#endif - - -#undef __P -#define __P(protos) protos - -/* - * Berkeley DB version information. - */ -#define DB_VERSION_MAJOR 4 -#define DB_VERSION_MINOR 3 -#define DB_VERSION_PATCH 27 -#define DB_VERSION_STRING "Sleepycat Software: Berkeley DB 4.3.27: (December 22, 2004)" - -/* - * !!! - * Berkeley DB uses specifically sized types. If they're not provided by - * the system, typedef them here. - * - * We protect them against multiple inclusion using __BIT_TYPES_DEFINED__, - * as does BIND and Kerberos, since we don't know for sure what #include - * files the user is using. - * - * !!! - * We also provide the standard u_int, u_long etc., if they're not provided - * by the system. - */ -#ifndef __BIT_TYPES_DEFINED__ -#define __BIT_TYPES_DEFINED__ -typedef unsigned char u_int8_t; -typedef short int16_t; -typedef unsigned short u_int16_t; -typedef int int32_t; -typedef unsigned int u_int32_t; -typedef __int64 int64_t; -typedef unsigned __int64 u_int64_t; -#endif - -#ifndef _WINSOCKAPI_ -typedef unsigned char u_char; -typedef unsigned short u_short; -typedef unsigned int u_int; -typedef unsigned long u_long; -#endif -#ifdef _WIN64 -typedef int64_t ssize_t; -#else -typedef int32_t ssize_t; -#endif - -/* - * uintmax_t -- - * Largest unsigned type, used to align structures in memory. We don't store - * floating point types in structures, so integral types should be sufficient - * (and we don't have to worry about systems that store floats in other than - * power-of-2 numbers of bytes). Additionally this fixes compilers that rewrite - * structure assignments and ANSI C memcpy calls to be in-line instructions - * that happen to require alignment. Note: this alignment isn't sufficient for - * mutexes, which depend on things like cache line alignment. Mutex alignment - * is handled separately, in mutex.h. - * - * uintptr_t -- - * Unsigned type that's the same size as a pointer. There are places where - * DB modifies pointers by discarding the bottom bits to guarantee alignment. - * We can't use uintmax_t, it may be larger than the pointer, and compilers - * get upset about that. So far we haven't run on any machine where there's - * no unsigned type the same size as a pointer -- here's hoping. - */ -typedef u_int64_t uintmax_t; -#ifdef _WIN64 -typedef u_int64_t uintptr_t; -#else -typedef u_int32_t uintptr_t; -#endif - -/* - * Sequences are only available on machines with 64-bit integral types. - */ -typedef int64_t db_seq_t; - -/* Basic types that are exported or quasi-exported. */ -typedef u_int32_t db_pgno_t; /* Page number type. */ -typedef u_int16_t db_indx_t; /* Page offset type. */ -#define DB_MAX_PAGES 0xffffffff /* >= # of pages in a file */ - -typedef u_int32_t db_recno_t; /* Record number type. */ -#define DB_MAX_RECORDS 0xffffffff /* >= # of records in a tree */ - -typedef u_int32_t db_timeout_t; /* Type of a timeout. */ - -/* - * Region offsets are the difference between a pointer in a region and the - * region's base address. With private environments, both addresses are the - * result of calling malloc, and we can't assume anything about what malloc - * will return, so region offsets have to be able to hold differences between - * arbitrary pointers. - */ -typedef uintptr_t roff_t; - -/* - * Forward structure declarations, so we can declare pointers and - * applications can get type checking. - */ -struct __db; typedef struct __db DB; -struct __db_bt_stat; typedef struct __db_bt_stat DB_BTREE_STAT; -struct __db_cipher; typedef struct __db_cipher DB_CIPHER; -struct __db_dbt; typedef struct __db_dbt DBT; -struct __db_env; typedef struct __db_env DB_ENV; -struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; -struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; -struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; -struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; -struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; -struct __db_log_cursor; typedef struct __db_log_cursor DB_LOGC; -struct __db_log_stat; typedef struct __db_log_stat DB_LOG_STAT; -struct __db_lsn; typedef struct __db_lsn DB_LSN; -struct __db_mpool; typedef struct __db_mpool DB_MPOOL; -struct __db_mpool_fstat;typedef struct __db_mpool_fstat DB_MPOOL_FSTAT; -struct __db_mpool_stat; typedef struct __db_mpool_stat DB_MPOOL_STAT; -struct __db_mpoolfile; typedef struct __db_mpoolfile DB_MPOOLFILE; -struct __db_preplist; typedef struct __db_preplist DB_PREPLIST; -struct __db_qam_stat; typedef struct __db_qam_stat DB_QUEUE_STAT; -struct __db_rep; typedef struct __db_rep DB_REP; -struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; -struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; -struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; -struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; -struct __db_txn; typedef struct __db_txn DB_TXN; -struct __db_txn_active; typedef struct __db_txn_active DB_TXN_ACTIVE; -struct __db_txn_stat; typedef struct __db_txn_stat DB_TXN_STAT; -struct __db_txnmgr; typedef struct __db_txnmgr DB_TXNMGR; -struct __dbc; typedef struct __dbc DBC; -struct __dbc_internal; typedef struct __dbc_internal DBC_INTERNAL; -struct __fh_t; typedef struct __fh_t DB_FH; -struct __fname; typedef struct __fname FNAME; -struct __key_range; typedef struct __key_range DB_KEY_RANGE; -struct __mpoolfile; typedef struct __mpoolfile MPOOLFILE; -struct __mutex_t; typedef struct __mutex_t DB_MUTEX; - -/* Key/data structure -- a Data-Base Thang. */ -struct __db_dbt { - /* - * data/size must be fields 1 and 2 for DB 1.85 compatibility. - */ - void *data; /* Key/data */ - u_int32_t size; /* key/data length */ - - u_int32_t ulen; /* RO: length of user buffer. */ - u_int32_t dlen; /* RO: get/put record length. */ - u_int32_t doff; /* RO: get/put record offset. */ - -#define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ -#define DB_DBT_ISSET 0x002 /* Lower level calls set value. */ -#define DB_DBT_MALLOC 0x004 /* Return in malloc'd memory. */ -#define DB_DBT_PARTIAL 0x008 /* Partial put/get. */ -#define DB_DBT_REALLOC 0x010 /* Return in realloc'd memory. */ -#define DB_DBT_USERMEM 0x020 /* Return in user's memory. */ -#define DB_DBT_DUPOK 0x040 /* Insert if duplicate. */ - u_int32_t flags; -}; - -/* - * Common flags -- - * Interfaces which use any of these common flags should never have - * interface specific flags in this range. - */ -#define DB_CREATE 0x0000001 /* Create file as necessary. */ -#define DB_CXX_NO_EXCEPTIONS 0x0000002 /* C++: return error values. */ -#define DB_FORCE 0x0000004 /* Force (anything). */ -#define DB_NOMMAP 0x0000008 /* Don't mmap underlying file. */ -#define DB_RDONLY 0x0000010 /* Read-only (O_RDONLY). */ -#define DB_RECOVER 0x0000020 /* Run normal recovery. */ -#define DB_THREAD 0x0000040 /* Applications are threaded. */ -#define DB_TRUNCATE 0x0000080 /* Discard existing DB (O_TRUNC). */ -#define DB_TXN_NOSYNC 0x0000100 /* Do not sync log on commit. */ -#define DB_TXN_NOT_DURABLE 0x0000200 /* Do not log changes. */ -#define DB_USE_ENVIRON 0x0000400 /* Use the environment. */ -#define DB_USE_ENVIRON_ROOT 0x0000800 /* Use the environment if root. */ - -/* - * Common flags -- - * Interfaces which use any of these common flags should never have - * interface specific flags in this range. - * - * DB_AUTO_COMMIT: - * DB_ENV->set_flags, DB->associate, DB->del, DB->put, DB->open, - * DB->remove, DB->rename, DB->truncate - * DB_DEGREE_2: - * DB->cursor, DB->get, DB->join, DBcursor->c_get, DB_ENV->txn_begin - * DB_DIRTY_READ: - * DB->cursor, DB->get, DB->join, DB->open, DBcursor->c_get, - * DB_ENV->txn_begin - * DB_NOAUTO_COMMIT - * DB->associate, DB->del, DB->put, DB->open, - * DB->remove, DB->rename, DB->truncate - * - * !!! - * The DB_DIRTY_READ and DB_DEGREE_2 bit masks can't be changed without - * also changing the masks for the flags that can be OR'd into DB - * access method and cursor operation values. - */ -#define DB_AUTO_COMMIT 0x01000000/* Implied transaction. */ -#define DB_DEGREE_2 0x02000000/* Degree 2. */ -#define DB_DIRTY_READ 0x04000000/* Dirty Read. */ -#define DB_NO_AUTO_COMMIT 0x08000000/* Override env-wide AUTOCOMMIT. */ - -/* - * Flags private to db_env_create. - */ -#define DB_RPCCLIENT 0x0000001 /* An RPC client environment. */ - -/* - * Flags private to db_create. - */ -#define DB_REP_CREATE 0x0000001 /* Open of an internal rep database. */ -#define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ - -/* - * Flags private to DB_ENV->open. - * Shared flags up to 0x0000800 */ -#define DB_INIT_CDB 0x0001000 /* Concurrent Access Methods. */ -#define DB_INIT_LOCK 0x0002000 /* Initialize locking. */ -#define DB_INIT_LOG 0x0004000 /* Initialize logging. */ -#define DB_INIT_MPOOL 0x0008000 /* Initialize mpool. */ -#define DB_INIT_REP 0x0010000 /* Initialize replication. */ -#define DB_INIT_TXN 0x0020000 /* Initialize transactions. */ -#define DB_JOINENV 0x0040000 /* Initialize all subsystems present. */ -#define DB_LOCKDOWN 0x0080000 /* Lock memory into physical core. */ -#define DB_PRIVATE 0x0100000 /* DB_ENV is process local. */ -#define DB_RECOVER_FATAL 0x0200000 /* Run catastrophic recovery. */ -#define DB_SYSTEM_MEM 0x0400000 /* Use system-backed memory. */ - -/* - * Flags private to DB->open. - * Shared flags up to 0x0000800 */ -#define DB_EXCL 0x0001000 /* Exclusive open (O_EXCL). */ -#define DB_FCNTL_LOCKING 0x0002000 /* UNDOC: fcntl(2) locking. */ -#define DB_RDWRMASTER 0x0004000 /* UNDOC: allow subdb master open R/W */ -#define DB_WRITEOPEN 0x0008000 /* UNDOC: open with write lock. */ - -/* - * Flags private to DB_ENV->txn_begin. - * Shared flags up to 0x0000800 */ -#define DB_TXN_NOWAIT 0x0001000 /* Do not wait for locks in this TXN. */ -#define DB_TXN_SYNC 0x0002000 /* Always sync log on commit. */ - -/* - * Flags private to DB_ENV->set_encrypt. - */ -#define DB_ENCRYPT_AES 0x0000001 /* AES, assumes SHA1 checksum */ - -/* - * Flags private to DB_ENV->set_flags. - * Shared flags up to 0x00000800 */ -#define DB_CDB_ALLDB 0x00001000/* Set CDB locking per environment. */ -#define DB_DIRECT_DB 0x00002000/* Don't buffer databases in the OS. */ -#define DB_DIRECT_LOG 0x00004000/* Don't buffer log files in the OS. */ -#define DB_DSYNC_LOG 0x00008000/* Set O_DSYNC on the log. */ -#define DB_LOG_AUTOREMOVE 0x00010000/* Automatically remove log files. */ -#define DB_LOG_INMEMORY 0x00020000/* Store logs in buffers in memory. */ -#define DB_NOLOCKING 0x00040000/* Set locking/mutex behavior. */ -#define DB_NOPANIC 0x00080000/* Set panic state per DB_ENV. */ -#define DB_OVERWRITE 0x00100000/* Overwrite unlinked region files. */ -#define DB_PANIC_ENVIRONMENT 0x00200000/* Set panic state per environment. */ -#define DB_REGION_INIT 0x00400000/* Page-fault regions on open. */ -#define DB_TIME_NOTGRANTED 0x00800000/* Return NOTGRANTED on timeout. */ -/* Shared flags at 0x01000000 */ -/* Shared flags at 0x02000000 */ -/* Shared flags at 0x04000000 */ -/* Shared flags at 0x08000000 */ -#define DB_TXN_WRITE_NOSYNC 0x10000000/* Write, don't sync, on txn commit. */ -#define DB_YIELDCPU 0x20000000/* Yield the CPU (a lot). */ - -/* - * Flags private to DB->set_feedback's callback. - */ -#define DB_UPGRADE 0x0000001 /* Upgrading. */ -#define DB_VERIFY 0x0000002 /* Verifying. */ - -/* - * Flags private to DB_MPOOLFILE->open. - * Shared flags up to 0x0000800 */ -#define DB_DIRECT 0x0001000 /* Don't buffer the file in the OS. */ -#define DB_DURABLE_UNKNOWN 0x0002000 /* internal: durability on open. */ -#define DB_EXTENT 0x0004000 /* internal: dealing with an extent. */ -#define DB_ODDFILESIZE 0x0008000 /* Truncate file to N * pgsize. */ - -/* - * Flags private to DB->set_flags. - */ -#define DB_CHKSUM 0x0000001 /* Do checksumming */ -#define DB_DUP 0x0000002 /* Btree, Hash: duplicate keys. */ -#define DB_DUPSORT 0x0000004 /* Btree, Hash: duplicate keys. */ -#define DB_ENCRYPT 0x0000008 /* Btree, Hash: duplicate keys. */ -#define DB_INORDER 0x0000010 /* Queue: strict ordering on consume. */ -#define DB_RECNUM 0x0000020 /* Btree: record numbers. */ -#define DB_RENUMBER 0x0000040 /* Recno: renumber on insert/delete. */ -#define DB_REVSPLITOFF 0x0000080 /* Btree: turn off reverse splits. */ -#define DB_SNAPSHOT 0x0000100 /* Recno: snapshot the input. */ - -/* - * Flags private to the DB_ENV->stat_print, DB->stat and DB->stat_print methods. - */ -#define DB_STAT_ALL 0x0000001 /* Print: Everything. */ -#define DB_STAT_CLEAR 0x0000002 /* Clear stat after returning values. */ -#define DB_STAT_LOCK_CONF 0x0000004 /* Print: Lock conflict matrix. */ -#define DB_STAT_LOCK_LOCKERS 0x0000008 /* Print: Lockers. */ -#define DB_STAT_LOCK_OBJECTS 0x0000010 /* Print: Lock objects. */ -#define DB_STAT_LOCK_PARAMS 0x0000020 /* Print: Lock parameters. */ -#define DB_STAT_MEMP_HASH 0x0000040 /* Print: Mpool hash buckets. */ -#define DB_STAT_SUBSYSTEM 0x0000080 /* Print: Subsystems too. */ - -/* - * Flags private to DB->join. - */ -#define DB_JOIN_NOSORT 0x0000001 /* Don't try to optimize join. */ - -/* - * Flags private to DB->verify. - */ -#define DB_AGGRESSIVE 0x0000001 /* Salvage whatever could be data.*/ -#define DB_NOORDERCHK 0x0000002 /* Skip sort order/hashing check. */ -#define DB_ORDERCHKONLY 0x0000004 /* Only perform the order check. */ -#define DB_PR_PAGE 0x0000008 /* Show page contents (-da). */ -#define DB_PR_RECOVERYTEST 0x0000010 /* Recovery test (-dr). */ -#define DB_PRINTABLE 0x0000020 /* Use printable format for salvage. */ -#define DB_SALVAGE 0x0000040 /* Salvage what looks like data. */ -#define DB_UNREF 0x0000080 /* Report unreferenced pages. */ -/* - * !!! - * These must not go over 0x8000, or they will collide with the flags - * used by __bam_vrfy_subtree. - */ - -/* - * Flags private to DB->set_rep_transport's send callback. - */ -#define DB_REP_NOBUFFER 0x0000001 /* Do not buffer this message. */ -#define DB_REP_PERMANENT 0x0000002 /* Important--app. may want to flush. */ - -/******************************************************* - * Locking. - *******************************************************/ -#define DB_LOCKVERSION 1 - -#define DB_FILE_ID_LEN 20 /* Unique file ID length. */ - -/* - * Deadlock detector modes; used in the DB_ENV structure to configure the - * locking subsystem. - */ -#define DB_LOCK_NORUN 0 -#define DB_LOCK_DEFAULT 1 /* Default policy. */ -#define DB_LOCK_EXPIRE 2 /* Only expire locks, no detection. */ -#define DB_LOCK_MAXLOCKS 3 /* Select locker with max locks. */ -#define DB_LOCK_MAXWRITE 4 /* Select locker with max writelocks. */ -#define DB_LOCK_MINLOCKS 5 /* Select locker with min locks. */ -#define DB_LOCK_MINWRITE 6 /* Select locker with min writelocks. */ -#define DB_LOCK_OLDEST 7 /* Select oldest locker. */ -#define DB_LOCK_RANDOM 8 /* Select random locker. */ -#define DB_LOCK_YOUNGEST 9 /* Select youngest locker. */ - -/* Flag values for lock_vec(), lock_get(). */ -#define DB_LOCK_ABORT 0x001 /* Internal: Lock during abort. */ -#define DB_LOCK_NOWAIT 0x002 /* Don't wait on unavailable lock. */ -#define DB_LOCK_RECORD 0x004 /* Internal: record lock. */ -#define DB_LOCK_REMOVE 0x008 /* Internal: flag object removed. */ -#define DB_LOCK_SET_TIMEOUT 0x010 /* Internal: set lock timeout. */ -#define DB_LOCK_SWITCH 0x020 /* Internal: switch existing lock. */ -#define DB_LOCK_UPGRADE 0x040 /* Internal: upgrade existing lock. */ - -/* - * Simple R/W lock modes and for multi-granularity intention locking. - * - * !!! - * These values are NOT random, as they are used as an index into the lock - * conflicts arrays, i.e., DB_LOCK_IWRITE must be == 3, and DB_LOCK_IREAD - * must be == 4. - */ -typedef enum { - DB_LOCK_NG=0, /* Not granted. */ - DB_LOCK_READ=1, /* Shared/read. */ - DB_LOCK_WRITE=2, /* Exclusive/write. */ - DB_LOCK_WAIT=3, /* Wait for event */ - DB_LOCK_IWRITE=4, /* Intent exclusive/write. */ - DB_LOCK_IREAD=5, /* Intent to share/read. */ - DB_LOCK_IWR=6, /* Intent to read and write. */ - DB_LOCK_DIRTY=7, /* Dirty Read. */ - DB_LOCK_WWRITE=8 /* Was Written. */ -} db_lockmode_t; - -/* - * Request types. - */ -typedef enum { - DB_LOCK_DUMP=0, /* Display held locks. */ - DB_LOCK_GET=1, /* Get the lock. */ - DB_LOCK_GET_TIMEOUT=2, /* Get lock with a timeout. */ - DB_LOCK_INHERIT=3, /* Pass locks to parent. */ - DB_LOCK_PUT=4, /* Release the lock. */ - DB_LOCK_PUT_ALL=5, /* Release locker's locks. */ - DB_LOCK_PUT_OBJ=6, /* Release locker's locks on obj. */ - DB_LOCK_PUT_READ=7, /* Release locker's read locks. */ - DB_LOCK_TIMEOUT=8, /* Force a txn to timeout. */ - DB_LOCK_TRADE=9, /* Trade locker ids on a lock. */ - DB_LOCK_UPGRADE_WRITE=10 /* Upgrade writes for dirty reads. */ -} db_lockop_t; - -/* - * Status of a lock. - */ -typedef enum { - DB_LSTAT_ABORTED=1, /* Lock belongs to an aborted txn. */ - DB_LSTAT_EXPIRED=2, /* Lock has expired. */ - DB_LSTAT_FREE=3, /* Lock is unallocated. */ - DB_LSTAT_HELD=4, /* Lock is currently held. */ - DB_LSTAT_NOTEXIST=5, /* Object on which lock was waiting - * was removed */ - DB_LSTAT_PENDING=6, /* Lock was waiting and has been - * promoted; waiting for the owner - * to run and upgrade it to held. */ - DB_LSTAT_WAITING=7 /* Lock is on the wait queue. */ -}db_status_t; - -/* Lock statistics structure. */ -struct __db_lock_stat { - u_int32_t st_id; /* Last allocated locker ID. */ - u_int32_t st_cur_maxid; /* Current maximum unused ID. */ - u_int32_t st_maxlocks; /* Maximum number of locks in table. */ - u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ - u_int32_t st_maxobjects; /* Maximum num of objects in table. */ - int st_nmodes; /* Number of lock modes. */ - u_int32_t st_nlocks; /* Current number of locks. */ - u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ - u_int32_t st_nlockers; /* Current number of lockers. */ - u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ - u_int32_t st_nobjects; /* Current number of objects. */ - u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ - u_int32_t st_nconflicts; /* Number of lock conflicts. */ - u_int32_t st_nrequests; /* Number of lock gets. */ - u_int32_t st_nreleases; /* Number of lock puts. */ - u_int32_t st_nnowaits; /* Number of requests that would have - waited, but NOWAIT was set. */ - u_int32_t st_ndeadlocks; /* Number of lock deadlocks. */ - db_timeout_t st_locktimeout; /* Lock timeout. */ - u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ - db_timeout_t st_txntimeout; /* Transaction timeout. */ - u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - roff_t st_regsize; /* Region size. */ -}; - -/* - * DB_LOCK_ILOCK -- - * Internal DB access method lock. - */ -struct __db_ilock { - db_pgno_t pgno; /* Page being locked. */ - u_int8_t fileid[DB_FILE_ID_LEN];/* File id. */ -#define DB_HANDLE_LOCK 1 -#define DB_RECORD_LOCK 2 -#define DB_PAGE_LOCK 3 - u_int32_t type; /* Type of lock. */ -}; - -/* - * DB_LOCK -- - * The structure is allocated by the caller and filled in during a - * lock_get request (or a lock_vec/DB_LOCK_GET). - */ -struct __db_lock_u { - roff_t off; /* Offset of the lock in the region */ - u_int32_t ndx; /* Index of the object referenced by - * this lock; used for locking. */ - u_int32_t gen; /* Generation number of this lock. */ - db_lockmode_t mode; /* mode of this lock. */ -}; - -/* Lock request structure. */ -struct __db_lockreq { - db_lockop_t op; /* Operation. */ - db_lockmode_t mode; /* Requested mode. */ - db_timeout_t timeout; /* Time to expire lock. */ - DBT *obj; /* Object being locked. */ - DB_LOCK lock; /* Lock returned. */ -}; - -/******************************************************* - * Logging. - *******************************************************/ -#define DB_LOGVERSION 10 /* Current log version. */ -#define DB_LOGOLDVER 10 /* Oldest log version supported. */ -#define DB_LOGMAGIC 0x040988 - -/* Flag values for DB_ENV->log_archive(). */ -#define DB_ARCH_ABS 0x001 /* Absolute pathnames. */ -#define DB_ARCH_DATA 0x002 /* Data files. */ -#define DB_ARCH_LOG 0x004 /* Log files. */ -#define DB_ARCH_REMOVE 0x008 /* Remove log files. */ - -/* Flag values for DB_ENV->log_put(). */ -#define DB_FLUSH 0x001 /* Flush data to disk (public). */ -#define DB_LOG_CHKPNT 0x002 /* Flush supports a checkpoint */ -#define DB_LOG_COMMIT 0x004 /* Flush supports a commit */ -#define DB_LOG_NOCOPY 0x008 /* Don't copy data */ -#define DB_LOG_NOT_DURABLE 0x010 /* Do not log; keep in memory */ -#define DB_LOG_PERM 0x020 /* Flag record with REP_PERMANENT */ -#define DB_LOG_RESEND 0x040 /* Resent log record */ -#define DB_LOG_WRNOSYNC 0x080 /* Write, don't sync log_put */ - -/* - * A DB_LSN has two parts, a fileid which identifies a specific file, and an - * offset within that file. The fileid is an unsigned 4-byte quantity that - * uniquely identifies a file within the log directory -- currently a simple - * counter inside the log. The offset is also an unsigned 4-byte value. The - * log manager guarantees the offset is never more than 4 bytes by switching - * to a new log file before the maximum length imposed by an unsigned 4-byte - * offset is reached. - */ -struct __db_lsn { - u_int32_t file; /* File ID. */ - u_int32_t offset; /* File offset. */ -}; - -/* - * Application-specified log record types start at DB_user_BEGIN, and must not - * equal or exceed DB_debug_FLAG. - * - * DB_debug_FLAG is the high-bit of the u_int32_t that specifies a log record - * type. If the flag is set, it's a log record that was logged for debugging - * purposes only, even if it reflects a database change -- the change was part - * of a non-durable transaction. - */ -#define DB_user_BEGIN 10000 -#define DB_debug_FLAG 0x80000000 - -/* - * DB_LOGC -- - * Log cursor. - */ -struct __db_log_cursor { - DB_ENV *dbenv; /* Enclosing dbenv. */ - - DB_FH *c_fhp; /* File handle. */ - DB_LSN c_lsn; /* Cursor: LSN */ - u_int32_t c_len; /* Cursor: record length */ - u_int32_t c_prev; /* Cursor: previous record's offset */ - - DBT c_dbt; /* Return DBT. */ - -#define DB_LOGC_BUF_SIZE (32 * 1024) - u_int8_t *bp; /* Allocated read buffer. */ - u_int32_t bp_size; /* Read buffer length in bytes. */ - u_int32_t bp_rlen; /* Read buffer valid data length. */ - DB_LSN bp_lsn; /* Read buffer first byte LSN. */ - - u_int32_t bp_maxrec; /* Max record length in the log file. */ - - /* Methods. */ - int (*close) __P((DB_LOGC *, u_int32_t)); - int (*get) __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); - -#define DB_LOG_DISK 0x01 /* Log record came from disk. */ -#define DB_LOG_LOCKED 0x02 /* Log region already locked */ -#define DB_LOG_SILENT_ERR 0x04 /* Turn-off error messages. */ - u_int32_t flags; -}; - -/* Log statistics structure. */ -struct __db_log_stat { - u_int32_t st_magic; /* Log file magic number. */ - u_int32_t st_version; /* Log file version number. */ - int st_mode; /* Log file mode. */ - u_int32_t st_lg_bsize; /* Log buffer size. */ - u_int32_t st_lg_size; /* Log file size. */ - u_int32_t st_w_bytes; /* Bytes to log. */ - u_int32_t st_w_mbytes; /* Megabytes to log. */ - u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ - u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ - u_int32_t st_wcount; /* Total writes to the log. */ - u_int32_t st_wcount_fill; /* Overflow writes to the log. */ - u_int32_t st_scount; /* Total syncs to the log. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - u_int32_t st_cur_file; /* Current log file number. */ - u_int32_t st_cur_offset; /* Current log file offset. */ - u_int32_t st_disk_file; /* Known on disk log file number. */ - u_int32_t st_disk_offset; /* Known on disk log file offset. */ - roff_t st_regsize; /* Region size. */ - u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ - u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ -}; - -/* - * We need to record the first log record of a transaction. - * For user defined logging this macro returns the place to - * put that information, if it is need in rlsnp, otherwise it - * leaves it unchanged. - */ -#define DB_SET_BEGIN_LSNP(txn, rlsnp) ((txn)->set_begin_lsnp(txn, rlsnp)) - -/******************************************************* - * Shared buffer cache (mpool). - *******************************************************/ -/* Flag values for DB_MPOOLFILE->get. */ -#define DB_MPOOL_CREATE 0x001 /* Create a page. */ -#define DB_MPOOL_LAST 0x002 /* Return the last page. */ -#define DB_MPOOL_NEW 0x004 /* Create a new page. */ - -/* Flag values for DB_MPOOLFILE->put, DB_MPOOLFILE->set. */ -#define DB_MPOOL_CLEAN 0x001 /* Page is not modified. */ -#define DB_MPOOL_DIRTY 0x002 /* Page is modified. */ -#define DB_MPOOL_DISCARD 0x004 /* Don't cache the page. */ -#define DB_MPOOL_FREE 0x008 /* Free page if present. */ - -/* Flags values for DB_MPOOLFILE->set_flags. */ -#define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ -#define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ - -/* Priority values for DB_MPOOLFILE->set_priority. */ -typedef enum { - DB_PRIORITY_VERY_LOW=1, - DB_PRIORITY_LOW=2, - DB_PRIORITY_DEFAULT=3, - DB_PRIORITY_HIGH=4, - DB_PRIORITY_VERY_HIGH=5 -} DB_CACHE_PRIORITY; - -/* Per-process DB_MPOOLFILE information. */ -struct __db_mpoolfile { - DB_FH *fhp; /* Underlying file handle. */ - - /* - * !!! - * The ref, pinref and q fields are protected by the region lock. - */ - u_int32_t ref; /* Reference count. */ - - u_int32_t pinref; /* Pinned block reference count. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_mpoolfile) q; - */ - struct { - struct __db_mpoolfile *tqe_next; - struct __db_mpoolfile **tqe_prev; - } q; /* Linked list of DB_MPOOLFILE's. */ - - /* - * !!! - * The rest of the fields (with the exception of the MP_FLUSH flag) - * are not thread-protected, even when they may be modified at any - * time by the application. The reason is the DB_MPOOLFILE handle - * is single-threaded from the viewpoint of the application, and so - * the only fields needing to be thread-protected are those accessed - * by checkpoint or sync threads when using DB_MPOOLFILE structures - * to flush buffers from the cache. - */ - DB_ENV *dbenv; /* Overlying DB_ENV. */ - MPOOLFILE *mfp; /* Underlying MPOOLFILE. */ - - u_int32_t clear_len; /* Cleared length on created pages. */ - u_int8_t /* Unique file ID. */ - fileid[DB_FILE_ID_LEN]; - int ftype; /* File type. */ - int32_t lsn_offset; /* LSN offset in page. */ - u_int32_t gbytes, bytes; /* Maximum file size. */ - DBT *pgcookie; /* Byte-string passed to pgin/pgout. */ - DB_CACHE_PRIORITY /* Cache priority. */ - priority; - - void *addr; /* Address of mmap'd region. */ - size_t len; /* Length of mmap'd region. */ - - u_int32_t config_flags; /* Flags to DB_MPOOLFILE->set_flags. */ - - /* Methods. */ - int (*close) __P((DB_MPOOLFILE *, u_int32_t)); - int (*get) __P((DB_MPOOLFILE *, db_pgno_t *, u_int32_t, void *)); - int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); - int (*put) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*set) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); - int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); - int (*get_ftype) __P((DB_MPOOLFILE *, int *)); - int (*set_ftype) __P((DB_MPOOLFILE *, int)); - int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); - int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); - int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); - int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); - int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); - int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); - int (*sync) __P((DB_MPOOLFILE *)); - - /* - * MP_FILEID_SET, MP_OPEN_CALLED and MP_READONLY do not need to be - * thread protected because they are initialized before the file is - * linked onto the per-process lists, and never modified. - * - * MP_FLUSH is thread protected because it is potentially read/set by - * multiple threads of control. - */ -#define MP_FILEID_SET 0x001 /* Application supplied a file ID. */ -#define MP_FLUSH 0x002 /* Was opened to flush a buffer. */ -#define MP_OPEN_CALLED 0x004 /* File opened. */ -#define MP_READONLY 0x008 /* File is readonly. */ - u_int32_t flags; -}; - -/* Mpool statistics structure. */ -struct __db_mpool_stat { - u_int32_t st_gbytes; /* Total cache size: GB. */ - u_int32_t st_bytes; /* Total cache size: B. */ - u_int32_t st_ncache; /* Number of caches. */ - roff_t st_regsize; /* Region size. */ - size_t st_mmapsize; /* Maximum file size for mmap. */ - int st_maxopenfd; /* Maximum number of open fd's. */ - int st_maxwrite; /* Maximum buffers to write. */ - int st_maxwrite_sleep; /* Sleep after writing max buffers. */ - u_int32_t st_map; /* Pages from mapped files. */ - u_int32_t st_cache_hit; /* Pages found in the cache. */ - u_int32_t st_cache_miss; /* Pages not found in the cache. */ - u_int32_t st_page_create; /* Pages created in the cache. */ - u_int32_t st_page_in; /* Pages read in. */ - u_int32_t st_page_out; /* Pages written out. */ - u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ - u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ - u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ - u_int32_t st_pages; /* Total number of pages. */ - u_int32_t st_page_clean; /* Clean pages. */ - u_int32_t st_page_dirty; /* Dirty pages. */ - u_int32_t st_hash_buckets; /* Number of hash buckets. */ - u_int32_t st_hash_searches; /* Total hash chain searches. */ - u_int32_t st_hash_longest; /* Longest hash chain searched. */ - u_int32_t st_hash_examined; /* Total hash entries searched. */ - u_int32_t st_hash_nowait; /* Hash lock granted with nowait. */ - u_int32_t st_hash_wait; /* Hash lock granted after wait. */ - u_int32_t st_hash_max_wait; /* Max hash lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted with nowait. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_alloc; /* Number of page allocations. */ - u_int32_t st_alloc_buckets; /* Buckets checked during allocation. */ - u_int32_t st_alloc_max_buckets; /* Max checked during allocation. */ - u_int32_t st_alloc_pages; /* Pages checked during allocation. */ - u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ -}; - -/* Mpool file statistics structure. */ -struct __db_mpool_fstat { - char *file_name; /* File name. */ - u_int32_t st_pagesize; /* Page size. */ - u_int32_t st_map; /* Pages from mapped files. */ - u_int32_t st_cache_hit; /* Pages found in the cache. */ - u_int32_t st_cache_miss; /* Pages not found in the cache. */ - u_int32_t st_page_create; /* Pages created in the cache. */ - u_int32_t st_page_in; /* Pages read in. */ - u_int32_t st_page_out; /* Pages written out. */ -}; - -/******************************************************* - * Transactions and recovery. - *******************************************************/ -#define DB_TXNVERSION 1 - -typedef enum { - DB_TXN_ABORT=0, /* Public. */ - DB_TXN_APPLY=1, /* Public. */ - DB_TXN_BACKWARD_ALLOC=2, /* Internal. */ - DB_TXN_BACKWARD_ROLL=3, /* Public. */ - DB_TXN_FORWARD_ROLL=4, /* Public. */ - DB_TXN_OPENFILES=5, /* Internal. */ - DB_TXN_POPENFILES=6, /* Internal. */ - DB_TXN_PRINT=7 /* Public. */ -} db_recops; - -/* - * BACKWARD_ALLOC is used during the forward pass to pick up any aborted - * allocations for files that were created during the forward pass. - * The main difference between _ALLOC and _ROLL is that the entry for - * the file not exist during the rollforward pass. - */ -#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \ - (op) == DB_TXN_BACKWARD_ROLL || (op) == DB_TXN_BACKWARD_ALLOC) -#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL || (op) == DB_TXN_APPLY) - -struct __db_txn { - DB_TXNMGR *mgrp; /* Pointer to transaction manager. */ - DB_TXN *parent; /* Pointer to transaction's parent. */ - DB_LSN last_lsn; /* Lsn of last log write. */ - u_int32_t txnid; /* Unique transaction id. */ - u_int32_t tid; /* Thread id for use in MT XA. */ - roff_t off; /* Detail structure within region. */ - db_timeout_t lock_timeout; /* Timeout for locks for this txn. */ - db_timeout_t expire; /* Time this txn expires. */ - void *txn_list; /* Undo information for parent. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_txn) links; - * TAILQ_ENTRY(__db_txn) xalinks; - */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } links; /* Links transactions off manager. */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } xalinks; /* Links active XA transactions. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__events, __txn_event) events; - */ - struct { - struct __txn_event *tqh_first; - struct __txn_event **tqh_last; - } events; - - /* - * !!! - * Explicit representations of structures from queue.h. - * STAILQ_HEAD(__logrec, __txn_logrec) logs; - */ - struct { - struct __txn_logrec *stqh_first; - struct __txn_logrec **stqh_last; - } logs; /* Links deferred events. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__kids, __db_txn) kids; - */ - struct __kids { - struct __db_txn *tqh_first; - struct __db_txn **tqh_last; - } kids; - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_txn) klinks; - */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } klinks; - - void *api_internal; /* C++ API private. */ - void *xml_internal; /* XML API private. */ - - u_int32_t cursors; /* Number of cursors open for txn */ - - /* Methods. */ - int (*abort) __P((DB_TXN *)); - int (*commit) __P((DB_TXN *, u_int32_t)); - int (*discard) __P((DB_TXN *, u_int32_t)); - u_int32_t (*id) __P((DB_TXN *)); - int (*prepare) __P((DB_TXN *, u_int8_t *)); - void (*set_begin_lsnp) __P((DB_TXN *txn, DB_LSN **)); - int (*set_timeout) __P((DB_TXN *, db_timeout_t, u_int32_t)); - -#define TXN_CHILDCOMMIT 0x001 /* Transaction that has committed. */ -#define TXN_COMPENSATE 0x002 /* Compensating transaction. */ -#define TXN_DEADLOCK 0x004 /* Transaction has deadlocked. */ -#define TXN_DEGREE_2 0x008 /* Has degree 2 isolation. */ -#define TXN_DIRTY_READ 0x010 /* Transaction does dirty reads. */ -#define TXN_LOCKTIMEOUT 0x020 /* Transaction has a lock timeout. */ -#define TXN_MALLOC 0x040 /* Structure allocated by TXN system. */ -#define TXN_NOSYNC 0x080 /* Do not sync on prepare and commit. */ -#define TXN_NOWAIT 0x100 /* Do not wait on locks. */ -#define TXN_RESTORED 0x200 /* Transaction has been restored. */ -#define TXN_SYNC 0x400 /* Sync on prepare and commit. */ - u_int32_t flags; -}; - -/* - * Structure used for two phase commit interface. Berkeley DB support for two - * phase commit is compatible with the X/open XA interface. - * - * The XA #define XIDDATASIZE defines the size of a global transaction ID. We - * have our own version here (for name space reasons) which must have the same - * value. - */ -#define DB_XIDDATASIZE 128 -struct __db_preplist { - DB_TXN *txn; - u_int8_t gid[DB_XIDDATASIZE]; -}; - -/* Transaction statistics structure. */ -struct __db_txn_active { - u_int32_t txnid; /* Transaction ID */ - u_int32_t parentid; /* Transaction ID of parent */ - DB_LSN lsn; /* LSN when transaction began */ - u_int32_t xa_status; /* XA status */ - u_int8_t xid[DB_XIDDATASIZE]; /* XA global transaction ID */ -}; - -struct __db_txn_stat { - DB_LSN st_last_ckp; /* lsn of the last checkpoint */ - time_t st_time_ckp; /* time of last checkpoint */ - u_int32_t st_last_txnid; /* last transaction id given out */ - u_int32_t st_maxtxns; /* maximum txns possible */ - u_int32_t st_naborts; /* number of aborted transactions */ - u_int32_t st_nbegins; /* number of begun transactions */ - u_int32_t st_ncommits; /* number of committed transactions */ - u_int32_t st_nactive; /* number of active transactions */ - u_int32_t st_nrestores; /* number of restored transactions - after recovery. */ - u_int32_t st_maxnactive; /* maximum active transactions */ - DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - roff_t st_regsize; /* Region size. */ -}; - -/******************************************************* - * Replication. - *******************************************************/ -/* Special, out-of-band environment IDs. */ -#define DB_EID_BROADCAST -1 -#define DB_EID_INVALID -2 - -/* rep_start flags values */ -#define DB_REP_CLIENT 0x001 -#define DB_REP_MASTER 0x002 - -/* Replication statistics. */ -struct __db_rep_stat { - /* !!! - * Many replication statistics fields cannot be protected by a mutex - * without an unacceptable performance penalty, since most message - * processing is done without the need to hold a region-wide lock. - * Fields whose comments end with a '+' may be updated without holding - * the replication or log mutexes (as appropriate), and thus may be - * off somewhat (or, on unreasonable architectures under unlucky - * circumstances, garbaged). - */ - u_int32_t st_status; /* Current replication status. */ - DB_LSN st_next_lsn; /* Next LSN to use or expect. */ - DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ - db_pgno_t st_next_pg; /* Next pg we expect. */ - db_pgno_t st_waiting_pg; /* pg we're awaiting, if any. */ - - u_int32_t st_dupmasters; /* # of times a duplicate master - condition was detected.+ */ - int st_env_id; /* Current environment ID. */ - int st_env_priority; /* Current environment priority. */ - u_int32_t st_gen; /* Current generation number. */ - u_int32_t st_egen; /* Current election gen number. */ - u_int32_t st_log_duplicated; /* Log records received multiply.+ */ - u_int32_t st_log_queued; /* Log records currently queued.+ */ - u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ - u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ - u_int32_t st_log_records; /* Log records received and put.+ */ - u_int32_t st_log_requested; /* Log recs. missed and requested.+ */ - int st_master; /* Env. ID of the current master. */ - u_int32_t st_master_changes; /* # of times we've switched masters. */ - u_int32_t st_msgs_badgen; /* Messages with a bad generation #.+ */ - u_int32_t st_msgs_processed; /* Messages received and processed.+ */ - u_int32_t st_msgs_recover; /* Messages ignored because this site - was a client in recovery.+ */ - u_int32_t st_msgs_send_failures;/* # of failed message sends.+ */ - u_int32_t st_msgs_sent; /* # of successful message sends.+ */ - u_int32_t st_newsites; /* # of NEWSITE msgs. received.+ */ - int st_nsites; /* Current number of sites we will - assume during elections. */ - u_int32_t st_nthrottles; /* # of times we were throttled. */ - u_int32_t st_outdated; /* # of times we detected and returned - an OUTDATED condition.+ */ - u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ - u_int32_t st_pg_records; /* Pages received and stored.+ */ - u_int32_t st_pg_requested; /* Pages missed and requested.+ */ - u_int32_t st_startup_complete; /* Site completed client sync-up. */ - u_int32_t st_txns_applied; /* # of transactions applied.+ */ - - /* Elections generally. */ - u_int32_t st_elections; /* # of elections held.+ */ - u_int32_t st_elections_won; /* # of elections won by this site.+ */ - - /* Statistics about an in-progress election. */ - int st_election_cur_winner; /* Current front-runner. */ - u_int32_t st_election_gen; /* Election generation number. */ - DB_LSN st_election_lsn; /* Max. LSN of current winner. */ - int st_election_nsites; /* # of "registered voters". */ - int st_election_nvotes; /* # of "registered voters" needed. */ - int st_election_priority; /* Current election priority. */ - int st_election_status; /* Current election status. */ - u_int32_t st_election_tiebreaker;/* Election tiebreaker value. */ - int st_election_votes; /* Votes received in this round. */ -}; -/* - * The storage record for a sequence. - */ -struct __db_seq_record { - u_int32_t seq_version; /* Version size/number. */ -#define DB_SEQ_DEC 0x00000001 /* Decrement sequence. */ -#define DB_SEQ_INC 0x00000002 /* Increment sequence. */ -#define DB_SEQ_RANGE_SET 0x00000004 /* Range set (internal). */ -#define DB_SEQ_WRAP 0x00000008 /* Wrap sequence at min/max. */ - u_int32_t flags; /* Flags. */ - db_seq_t seq_value; /* Current value. */ - db_seq_t seq_max; /* Max permitted. */ - db_seq_t seq_min; /* Min permitted. */ -}; - -/* - * Handle for a sequence object. - */ -struct __db_sequence { - DB *seq_dbp; /* DB handle for this sequence. */ - DB_MUTEX *seq_mutexp; /* Mutex if sequence is threaded. */ - DB_SEQ_RECORD *seq_rp; /* Pointer to current data. */ - DB_SEQ_RECORD seq_record; /* Data from DB_SEQUENCE. */ - int32_t seq_cache_size; /* Number of values cached. */ - db_seq_t seq_last_value; /* Last value cached. */ - DBT seq_key; /* DBT pointing to sequence key. */ - DBT seq_data; /* DBT pointing to seq_record. */ - - /* API-private structure: used by C++ and Java. */ - void *api_internal; - - int (*close) __P((DB_SEQUENCE *, u_int32_t)); - int (*get) __P((DB_SEQUENCE *, - DB_TXN *, int32_t, db_seq_t *, u_int32_t)); - int (*get_cachesize) __P((DB_SEQUENCE *, int32_t *)); - int (*get_db) __P((DB_SEQUENCE *, DB **)); - int (*get_flags) __P((DB_SEQUENCE *, u_int32_t *)); - int (*get_key) __P((DB_SEQUENCE *, DBT *)); - int (*get_range) __P((DB_SEQUENCE *, - db_seq_t *, db_seq_t *)); - int (*initial_value) __P((DB_SEQUENCE *, db_seq_t)); - int (*open) __P((DB_SEQUENCE *, - DB_TXN *, DBT *, u_int32_t)); - int (*remove) __P((DB_SEQUENCE *, DB_TXN *, u_int32_t)); - int (*set_cachesize) __P((DB_SEQUENCE *, int32_t)); - int (*set_flags) __P((DB_SEQUENCE *, u_int32_t)); - int (*set_range) __P((DB_SEQUENCE *, db_seq_t, db_seq_t)); - int (*stat) __P((DB_SEQUENCE *, - DB_SEQUENCE_STAT **, u_int32_t)); - int (*stat_print) __P((DB_SEQUENCE *, u_int32_t)); -}; - -struct __db_seq_stat { - u_int32_t st_wait; /* Sequence lock granted without wait. */ - u_int32_t st_nowait; /* Sequence lock granted after wait. */ - db_seq_t st_current; /* Current value in db. */ - db_seq_t st_value; /* Current cached value. */ - db_seq_t st_last_value; /* Last cached value. */ - db_seq_t st_min; /* Minimum value. */ - db_seq_t st_max; /* Maximum value. */ - int32_t st_cache_size; /* Cache size. */ - u_int32_t st_flags; /* Flag value. */ -}; - -/******************************************************* - * Access methods. - *******************************************************/ -typedef enum { - DB_BTREE=1, - DB_HASH=2, - DB_RECNO=3, - DB_QUEUE=4, - DB_UNKNOWN=5 /* Figure it out on open. */ -} DBTYPE; - -#define DB_RENAMEMAGIC 0x030800 /* File has been renamed. */ - -#define DB_BTREEVERSION 9 /* Current btree version. */ -#define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ -#define DB_BTREEMAGIC 0x053162 - -#define DB_HASHVERSION 8 /* Current hash version. */ -#define DB_HASHOLDVER 7 /* Oldest hash version supported. */ -#define DB_HASHMAGIC 0x061561 - -#define DB_QAMVERSION 4 /* Current queue version. */ -#define DB_QAMOLDVER 3 /* Oldest queue version supported. */ -#define DB_QAMMAGIC 0x042253 - -#define DB_SEQUENCE_VERSION 1 /* Current sequence version. */ - -/* - * DB access method and cursor operation values. Each value is an operation - * code to which additional bit flags are added. - */ -#define DB_AFTER 1 /* c_put() */ -#define DB_APPEND 2 /* put() */ -#define DB_BEFORE 3 /* c_put() */ -#define DB_CACHED_COUNTS 4 /* stat() */ -#define DB_CONSUME 5 /* get() */ -#define DB_CONSUME_WAIT 6 /* get() */ -#define DB_CURRENT 7 /* c_get(), c_put(), DB_LOGC->get() */ -#define DB_FAST_STAT 8 /* stat() */ -#define DB_FIRST 9 /* c_get(), DB_LOGC->get() */ -#define DB_GET_BOTH 10 /* get(), c_get() */ -#define DB_GET_BOTHC 11 /* c_get() (internal) */ -#define DB_GET_BOTH_RANGE 12 /* get(), c_get() */ -#define DB_GET_RECNO 13 /* c_get() */ -#define DB_JOIN_ITEM 14 /* c_get(); do not do primary lookup */ -#define DB_KEYFIRST 15 /* c_put() */ -#define DB_KEYLAST 16 /* c_put() */ -#define DB_LAST 17 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT 18 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT_DUP 19 /* c_get() */ -#define DB_NEXT_NODUP 20 /* c_get() */ -#define DB_NODUPDATA 21 /* put(), c_put() */ -#define DB_NOOVERWRITE 22 /* put() */ -#define DB_NOSYNC 23 /* close() */ -#define DB_POSITION 24 /* c_dup() */ -#define DB_PREV 25 /* c_get(), DB_LOGC->get() */ -#define DB_PREV_NODUP 26 /* c_get(), DB_LOGC->get() */ -#define DB_RECORDCOUNT 27 /* stat() */ -#define DB_SET 28 /* c_get(), DB_LOGC->get() */ -#define DB_SET_LOCK_TIMEOUT 29 /* set_timout() */ -#define DB_SET_RANGE 30 /* c_get() */ -#define DB_SET_RECNO 31 /* get(), c_get() */ -#define DB_SET_TXN_NOW 32 /* set_timout() (internal) */ -#define DB_SET_TXN_TIMEOUT 33 /* set_timout() */ -#define DB_UPDATE_SECONDARY 34 /* c_get(), c_del() (internal) */ -#define DB_WRITECURSOR 35 /* cursor() */ -#define DB_WRITELOCK 36 /* cursor() (internal) */ - -/* This has to change when the max opcode hits 255. */ -#define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ - -/* - * Masks for flags that can be OR'd into DB access method and cursor - * operation values. - * - * DB_DIRTY_READ 0x04000000 Dirty Read. */ -#define DB_MULTIPLE 0x08000000 /* Return multiple data values. */ -#define DB_MULTIPLE_KEY 0x10000000 /* Return multiple data/key pairs. */ -#define DB_RMW 0x20000000 /* Acquire write flag immediately. */ - -/* - * DB (user visible) error return codes. - * - * !!! - * For source compatibility with DB 2.X deadlock return (EAGAIN), use the - * following: - * #include - * #define DB_LOCK_DEADLOCK EAGAIN - * - * !!! - * We don't want our error returns to conflict with other packages where - * possible, so pick a base error value that's hopefully not common. We - * document that we own the error name space from -30,800 to -30,999. - */ -/* DB (public) error return codes. */ -#define DB_BUFFER_SMALL (-30999)/* User memory too small for return. */ -#define DB_DONOTINDEX (-30998)/* "Null" return from 2ndary callbk. */ -#define DB_KEYEMPTY (-30997)/* Key/data deleted or never created. */ -#define DB_KEYEXIST (-30996)/* The key/data pair already exists. */ -#define DB_LOCK_DEADLOCK (-30995)/* Deadlock. */ -#define DB_LOCK_NOTGRANTED (-30994)/* Lock unavailable. */ -#define DB_LOG_BUFFER_FULL (-30993)/* In-memory log buffer full. */ -#define DB_NOSERVER (-30992)/* Server panic return. */ -#define DB_NOSERVER_HOME (-30991)/* Bad home sent to server. */ -#define DB_NOSERVER_ID (-30990)/* Bad ID sent to server. */ -#define DB_NOTFOUND (-30989)/* Key/data pair not found (EOF). */ -#define DB_OLD_VERSION (-30988)/* Out-of-date version. */ -#define DB_PAGE_NOTFOUND (-30987)/* Requested page not found. */ -#define DB_REP_DUPMASTER (-30986)/* There are two masters. */ -#define DB_REP_HANDLE_DEAD (-30985)/* Rolled back a commit. */ -#define DB_REP_HOLDELECTION (-30984)/* Time to hold an election. */ -#define DB_REP_ISPERM (-30983)/* Cached not written perm written.*/ -#define DB_REP_NEWMASTER (-30982)/* We have learned of a new master. */ -#define DB_REP_NEWSITE (-30981)/* New site entered system. */ -#define DB_REP_NOTPERM (-30980)/* Permanent log record not written. */ -#define DB_REP_STARTUPDONE (-30979)/* Client startup complete. */ -#define DB_REP_UNAVAIL (-30978)/* Site cannot currently be reached. */ -#define DB_RUNRECOVERY (-30977)/* Panic return. */ -#define DB_SECONDARY_BAD (-30976)/* Secondary index corrupt. */ -#define DB_VERIFY_BAD (-30975)/* Verify failed; bad format. */ -#define DB_VERSION_MISMATCH (-30974)/* Environment version mismatch. */ - -/* DB (private) error return codes. */ -#define DB_ALREADY_ABORTED (-30899) -#define DB_DELETED (-30898)/* Recovery file marked deleted. */ -#define DB_LOCK_NOTEXIST (-30897)/* Object to lock is gone. */ -#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ -#define DB_REP_EGENCHG (-30895)/* Egen changed while in election. */ -#define DB_REP_LOGREADY (-30894)/* Rep log ready for recovery. */ -#define DB_REP_PAGEDONE (-30893)/* This page was already done. */ -#define DB_SURPRISE_KID (-30892)/* Child commit where parent - didn't know it was a parent. */ -#define DB_SWAPBYTES (-30891)/* Database needs byte swapping. */ -#define DB_TIMEOUT (-30890)/* Timed out waiting for election. */ -#define DB_TXN_CKP (-30889)/* Encountered ckp record in log. */ -#define DB_VERIFY_FATAL (-30888)/* DB->verify cannot proceed. */ - -/* Database handle. */ -struct __db { - /******************************************************* - * Public: owned by the application. - *******************************************************/ - u_int32_t pgsize; /* Database logical page size. */ - - /* Callbacks. */ - int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); - void (*db_feedback) __P((DB *, int, int)); - int (*dup_compare) __P((DB *, const DBT *, const DBT *)); - - void *app_private; /* Application-private handle. */ - - /******************************************************* - * Private: owned by DB. - *******************************************************/ - DB_ENV *dbenv; /* Backing environment. */ - - DBTYPE type; /* DB access method type. */ - - DB_MPOOLFILE *mpf; /* Backing buffer pool. */ - - DB_MUTEX *mutexp; /* Synchronization for free threading */ - - char *fname, *dname; /* File/database passed to DB->open. */ - u_int32_t open_flags; /* Flags passed to DB->open. */ - - u_int8_t fileid[DB_FILE_ID_LEN];/* File's unique ID for locking. */ - - u_int32_t adj_fileid; /* File's unique ID for curs. adj. */ - -#define DB_LOGFILEID_INVALID -1 - FNAME *log_filename; /* File's naming info for logging. */ - - db_pgno_t meta_pgno; /* Meta page number */ - u_int32_t lid; /* Locker id for handle locking. */ - u_int32_t cur_lid; /* Current handle lock holder. */ - u_int32_t associate_lid; /* Locker id for DB->associate call. */ - DB_LOCK handle_lock; /* Lock held on this handle. */ - - u_int cl_id; /* RPC: remote client id. */ - - time_t timestamp; /* Handle timestamp for replication. */ - - /* - * Returned data memory for DB->get() and friends. - */ - DBT my_rskey; /* Secondary key. */ - DBT my_rkey; /* [Primary] key. */ - DBT my_rdata; /* Data. */ - - /* - * !!! - * Some applications use DB but implement their own locking outside of - * DB. If they're using fcntl(2) locking on the underlying database - * file, and we open and close a file descriptor for that file, we will - * discard their locks. The DB_FCNTL_LOCKING flag to DB->open is an - * undocumented interface to support this usage which leaves any file - * descriptors we open until DB->close. This will only work with the - * DB->open interface and simple caches, e.g., creating a transaction - * thread may open/close file descriptors this flag doesn't protect. - * Locking with fcntl(2) on a file that you don't own is a very, very - * unsafe thing to do. 'Nuff said. - */ - DB_FH *saved_open_fhp; /* Saved file handle. */ - - /* - * Linked list of DBP's, linked from the DB_ENV, used to keep track - * of all open db handles for cursor adjustment. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_ENTRY(__db) dblistlinks; - */ - struct { - struct __db *le_next; - struct __db **le_prev; - } dblistlinks; - - /* - * Cursor queues. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__cq_fq, __dbc) free_queue; - * TAILQ_HEAD(__cq_aq, __dbc) active_queue; - * TAILQ_HEAD(__cq_jq, __dbc) join_queue; - */ - struct __cq_fq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } free_queue; - struct __cq_aq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } active_queue; - struct __cq_jq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } join_queue; - - /* - * Secondary index support. - * - * Linked list of secondary indices -- set in the primary. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_HEAD(s_secondaries, __db); - */ - struct { - struct __db *lh_first; - } s_secondaries; - - /* - * List entries for secondaries, and reference count of how - * many threads are updating this secondary (see __db_c_put). - * - * !!! - * Note that these are synchronized by the primary's mutex, but - * filled in in the secondaries. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_ENTRY(__db) s_links; - */ - struct { - struct __db *le_next; - struct __db **le_prev; - } s_links; - u_int32_t s_refcnt; - - /* Secondary callback and free functions -- set in the secondary. */ - int (*s_callback) __P((DB *, const DBT *, const DBT *, DBT *)); - - /* Reference to primary -- set in the secondary. */ - DB *s_primary; - - /* API-private structure: used by DB 1.85, C++, Java, Perl and Tcl */ - void *api_internal; - - /* Subsystem-private structure. */ - void *bt_internal; /* Btree/Recno access method. */ - void *h_internal; /* Hash access method. */ - void *q_internal; /* Queue access method. */ - void *xa_internal; /* XA. */ - - /* Methods. */ - int (*associate) __P((DB *, DB_TXN *, DB *, int (*)(DB *, const DBT *, - const DBT *, DBT *), u_int32_t)); - int (*close) __P((DB *, u_int32_t)); - int (*cursor) __P((DB *, DB_TXN *, DBC **, u_int32_t)); - int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); - int (*dump) __P((DB *, - const char *, int (*)(void *, const void *), void *, int, int)); - void (*err) __P((DB *, int, const char *, ...)); - void (*errx) __P((DB *, const char *, ...)); - int (*fd) __P((DB *, int *)); - int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*pget) __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); - int (*get_byteswapped) __P((DB *, int *)); - int (*get_cachesize) __P((DB *, u_int32_t *, u_int32_t *, int *)); - int (*get_dbname) __P((DB *, const char **, const char **)); - int (*get_encrypt_flags) __P((DB *, u_int32_t *)); - DB_ENV *(*get_env) __P((DB *)); - void (*get_errfile) __P((DB *, FILE **)); - void (*get_errpfx) __P((DB *, const char **)); - int (*get_flags) __P((DB *, u_int32_t *)); - int (*get_lorder) __P((DB *, int *)); - int (*get_open_flags) __P((DB *, u_int32_t *)); - int (*get_pagesize) __P((DB *, u_int32_t *)); - int (*get_transactional) __P((DB *)); - int (*get_type) __P((DB *, DBTYPE *)); - int (*join) __P((DB *, DBC **, DBC **, u_int32_t)); - int (*key_range) __P((DB *, - DB_TXN *, DBT *, DB_KEY_RANGE *, u_int32_t)); - int (*open) __P((DB *, DB_TXN *, - const char *, const char *, DBTYPE, u_int32_t, int)); - int (*put) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*remove) __P((DB *, const char *, const char *, u_int32_t)); - int (*rename) __P((DB *, - const char *, const char *, const char *, u_int32_t)); - int (*truncate) __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); - int (*set_append_recno) __P((DB *, int (*)(DB *, DBT *, db_recno_t))); - int (*set_alloc) __P((DB *, void *(*)(size_t), - void *(*)(void *, size_t), void (*)(void *))); - int (*set_cachesize) __P((DB *, u_int32_t, u_int32_t, int)); - int (*set_dup_compare) __P((DB *, - int (*)(DB *, const DBT *, const DBT *))); - int (*set_encrypt) __P((DB *, const char *, u_int32_t)); - void (*set_errcall) __P((DB *, - void (*)(const DB_ENV *, const char *, const char *))); - void (*set_errfile) __P((DB *, FILE *)); - void (*set_errpfx) __P((DB *, const char *)); - int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); - int (*set_flags) __P((DB *, u_int32_t)); - int (*set_lorder) __P((DB *, int)); - void (*set_msgcall) __P((DB *, void (*)(const DB_ENV *, const char *))); - void (*get_msgfile) __P((DB *, FILE **)); - void (*set_msgfile) __P((DB *, FILE *)); - int (*set_pagesize) __P((DB *, u_int32_t)); - int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); - int (*stat) __P((DB *, DB_TXN *, void *, u_int32_t)); - int (*stat_print) __P((DB *, u_int32_t)); - int (*sync) __P((DB *, u_int32_t)); - int (*upgrade) __P((DB *, const char *, u_int32_t)); - int (*verify) __P((DB *, - const char *, const char *, FILE *, u_int32_t)); - - int (*get_bt_minkey) __P((DB *, u_int32_t *)); - int (*set_bt_compare) __P((DB *, - int (*)(DB *, const DBT *, const DBT *))); - int (*set_bt_maxkey) __P((DB *, u_int32_t)); - int (*set_bt_minkey) __P((DB *, u_int32_t)); - int (*set_bt_prefix) __P((DB *, - size_t (*)(DB *, const DBT *, const DBT *))); - - int (*get_h_ffactor) __P((DB *, u_int32_t *)); - int (*get_h_nelem) __P((DB *, u_int32_t *)); - int (*set_h_ffactor) __P((DB *, u_int32_t)); - int (*set_h_hash) __P((DB *, - u_int32_t (*)(DB *, const void *, u_int32_t))); - int (*set_h_nelem) __P((DB *, u_int32_t)); - - int (*get_re_delim) __P((DB *, int *)); - int (*get_re_len) __P((DB *, u_int32_t *)); - int (*get_re_pad) __P((DB *, int *)); - int (*get_re_source) __P((DB *, const char **)); - int (*set_re_delim) __P((DB *, int)); - int (*set_re_len) __P((DB *, u_int32_t)); - int (*set_re_pad) __P((DB *, int)); - int (*set_re_source) __P((DB *, const char *)); - - int (*get_q_extentsize) __P((DB *, u_int32_t *)); - int (*set_q_extentsize) __P((DB *, u_int32_t)); - - int (*db_am_remove) __P((DB *, DB_TXN *, const char *, const char *)); - int (*db_am_rename) __P((DB *, DB_TXN *, - const char *, const char *, const char *)); - - /* - * Never called; these are a place to save function pointers - * so that we can undo an associate. - */ - int (*stored_get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*stored_close) __P((DB *, u_int32_t)); - -#define DB_OK_BTREE 0x01 -#define DB_OK_HASH 0x02 -#define DB_OK_QUEUE 0x04 -#define DB_OK_RECNO 0x08 - u_int32_t am_ok; /* Legal AM choices. */ - -#define DB_AM_CHKSUM 0x00000001 /* Checksumming. */ -#define DB_AM_CL_WRITER 0x00000002 /* Allow writes in client replica. */ -#define DB_AM_COMPENSATE 0x00000004 /* Created by compensating txn. */ -#define DB_AM_CREATED 0x00000008 /* Database was created upon open. */ -#define DB_AM_CREATED_MSTR 0x00000010 /* Encompassing file was created. */ -#define DB_AM_DBM_ERROR 0x00000020 /* Error in DBM/NDBM database. */ -#define DB_AM_DELIMITER 0x00000040 /* Variable length delimiter set. */ -#define DB_AM_DIRTY 0x00000080 /* Support Dirty Reads. */ -#define DB_AM_DISCARD 0x00000100 /* Discard any cached pages. */ -#define DB_AM_DUP 0x00000200 /* DB_DUP. */ -#define DB_AM_DUPSORT 0x00000400 /* DB_DUPSORT. */ -#define DB_AM_ENCRYPT 0x00000800 /* Encryption. */ -#define DB_AM_FIXEDLEN 0x00001000 /* Fixed-length records. */ -#define DB_AM_INMEM 0x00002000 /* In-memory; no sync on close. */ -#define DB_AM_INORDER 0x00004000 /* DB_INORDER. */ -#define DB_AM_IN_RENAME 0x00008000 /* File is being renamed. */ -#define DB_AM_NOT_DURABLE 0x00010000 /* Do not log changes. */ -#define DB_AM_OPEN_CALLED 0x00020000 /* DB->open called. */ -#define DB_AM_PAD 0x00040000 /* Fixed-length record pad. */ -#define DB_AM_PGDEF 0x00080000 /* Page size was defaulted. */ -#define DB_AM_RDONLY 0x00100000 /* Database is readonly. */ -#define DB_AM_RECNUM 0x00200000 /* DB_RECNUM. */ -#define DB_AM_RECOVER 0x00400000 /* DB opened by recovery routine. */ -#define DB_AM_RENUMBER 0x00800000 /* DB_RENUMBER. */ -#define DB_AM_REPLICATION 0x01000000 /* An internal replication file. */ -#define DB_AM_REVSPLITOFF 0x02000000 /* DB_REVSPLITOFF. */ -#define DB_AM_SECONDARY 0x04000000 /* Database is a secondary index. */ -#define DB_AM_SNAPSHOT 0x08000000 /* DB_SNAPSHOT. */ -#define DB_AM_SUBDB 0x10000000 /* Subdatabases supported. */ -#define DB_AM_SWAP 0x20000000 /* Pages need to be byte-swapped. */ -#define DB_AM_TXN 0x40000000 /* Opened in a transaction. */ -#define DB_AM_VERIFYING 0x80000000 /* DB handle is in the verifier. */ - u_int32_t orig_flags; /* Flags at open, for refresh. */ - u_int32_t flags; -}; - -/* - * Macros for bulk get. These are only intended for the C API. - * For C++, use DbMultiple*Iterator. - */ -#define DB_MULTIPLE_INIT(pointer, dbt) \ - (pointer = (u_int8_t *)(dbt)->data + \ - (dbt)->ulen - sizeof(u_int32_t)) -#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ - retdata = NULL; \ - pointer = NULL; \ - break; \ - } \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - if (retdlen == 0 && \ - retdata == (u_int8_t *)(dbt)->data) \ - retdata = NULL; \ - } while (0) -#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey, retklen, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ - retdata = NULL; \ - retkey = NULL; \ - pointer = NULL; \ - break; \ - } \ - retkey = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retklen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - } while (0) - -#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)0) { \ - recno = 0; \ - retdata = NULL; \ - pointer = NULL; \ - break; \ - } \ - recno = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - } while (0) - -/******************************************************* - * Access method cursors. - *******************************************************/ -struct __dbc { - DB *dbp; /* Related DB access method. */ - DB_TXN *txn; /* Associated transaction. */ - - /* - * Active/free cursor queues. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__dbc) links; - */ - struct { - DBC *tqe_next; - DBC **tqe_prev; - } links; - - /* - * The DBT *'s below are used by the cursor routines to return - * data to the user when DBT flags indicate that DB should manage - * the returned memory. They point at a DBT containing the buffer - * and length that will be used, and "belonging" to the handle that - * should "own" this memory. This may be a "my_*" field of this - * cursor--the default--or it may be the corresponding field of - * another cursor, a DB handle, a join cursor, etc. In general, it - * will be whatever handle the user originally used for the current - * DB interface call. - */ - DBT *rskey; /* Returned secondary key. */ - DBT *rkey; /* Returned [primary] key. */ - DBT *rdata; /* Returned data. */ - - DBT my_rskey; /* Space for returned secondary key. */ - DBT my_rkey; /* Space for returned [primary] key. */ - DBT my_rdata; /* Space for returned data. */ - - u_int32_t lid; /* Default process' locker id. */ - u_int32_t locker; /* Locker for this operation. */ - DBT lock_dbt; /* DBT referencing lock. */ - DB_LOCK_ILOCK lock; /* Object to be locked. */ - DB_LOCK mylock; /* CDB lock held on this cursor. */ - - u_int cl_id; /* Remote client id. */ - - DBTYPE dbtype; /* Cursor type. */ - - DBC_INTERNAL *internal; /* Access method private. */ - - int (*c_close) __P((DBC *)); /* Methods: public. */ - int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); - int (*c_del) __P((DBC *, u_int32_t)); - int (*c_dup) __P((DBC *, DBC **, u_int32_t)); - int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); - int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); - int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); - - /* Methods: private. */ - int (*c_am_bulk) __P((DBC *, DBT *, u_int32_t)); - int (*c_am_close) __P((DBC *, db_pgno_t, int *)); - int (*c_am_del) __P((DBC *)); - int (*c_am_destroy) __P((DBC *)); - int (*c_am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_writelock) __P((DBC *)); - -#define DBC_ACTIVE 0x0001 /* Cursor in use. */ -#define DBC_COMPENSATE 0x0002 /* Cursor compensating, don't lock. */ -#define DBC_DEGREE_2 0x0004 /* Cursor has degree 2 isolation. */ -#define DBC_DIRTY_READ 0x0008 /* Cursor supports dirty reads. */ -#define DBC_OPD 0x0010 /* Cursor references off-page dups. */ -#define DBC_RECOVER 0x0020 /* Recovery cursor; don't log/lock. */ -#define DBC_RMW 0x0040 /* Acquire write flag in read op. */ -#define DBC_TRANSIENT 0x0080 /* Cursor is transient. */ -#define DBC_WRITECURSOR 0x0100 /* Cursor may be used to write (CDB). */ -#define DBC_WRITER 0x0200 /* Cursor immediately writing (CDB). */ -#define DBC_MULTIPLE 0x0400 /* Return Multiple data. */ -#define DBC_MULTIPLE_KEY 0x0800 /* Return Multiple keys and data. */ -#define DBC_OWN_LID 0x1000 /* Free lock id on destroy. */ - u_int32_t flags; -}; - -/* Key range statistics structure */ -struct __key_range { - double less; - double equal; - double greater; -}; - -/* Btree/Recno statistics structure. */ -struct __db_bt_stat { - u_int32_t bt_magic; /* Magic number. */ - u_int32_t bt_version; /* Version number. */ - u_int32_t bt_metaflags; /* Metadata flags. */ - u_int32_t bt_nkeys; /* Number of unique keys. */ - u_int32_t bt_ndata; /* Number of data items. */ - u_int32_t bt_pagesize; /* Page size. */ - u_int32_t bt_maxkey; /* Maxkey value. */ - u_int32_t bt_minkey; /* Minkey value. */ - u_int32_t bt_re_len; /* Fixed-length record length. */ - u_int32_t bt_re_pad; /* Fixed-length record pad. */ - u_int32_t bt_levels; /* Tree levels. */ - u_int32_t bt_int_pg; /* Internal pages. */ - u_int32_t bt_leaf_pg; /* Leaf pages. */ - u_int32_t bt_dup_pg; /* Duplicate pages. */ - u_int32_t bt_over_pg; /* Overflow pages. */ - u_int32_t bt_empty_pg; /* Empty pages. */ - u_int32_t bt_free; /* Pages on the free list. */ - u_int32_t bt_int_pgfree; /* Bytes free in internal pages. */ - u_int32_t bt_leaf_pgfree; /* Bytes free in leaf pages. */ - u_int32_t bt_dup_pgfree; /* Bytes free in duplicate pages. */ - u_int32_t bt_over_pgfree; /* Bytes free in overflow pages. */ -}; - -/* Hash statistics structure. */ -struct __db_h_stat { - u_int32_t hash_magic; /* Magic number. */ - u_int32_t hash_version; /* Version number. */ - u_int32_t hash_metaflags; /* Metadata flags. */ - u_int32_t hash_nkeys; /* Number of unique keys. */ - u_int32_t hash_ndata; /* Number of data items. */ - u_int32_t hash_pagesize; /* Page size. */ - u_int32_t hash_ffactor; /* Fill factor specified at create. */ - u_int32_t hash_buckets; /* Number of hash buckets. */ - u_int32_t hash_free; /* Pages on the free list. */ - u_int32_t hash_bfree; /* Bytes free on bucket pages. */ - u_int32_t hash_bigpages; /* Number of big key/data pages. */ - u_int32_t hash_big_bfree; /* Bytes free on big item pages. */ - u_int32_t hash_overflows; /* Number of overflow pages. */ - u_int32_t hash_ovfl_free; /* Bytes free on ovfl pages. */ - u_int32_t hash_dup; /* Number of dup pages. */ - u_int32_t hash_dup_free; /* Bytes free on duplicate pages. */ -}; - -/* Queue statistics structure. */ -struct __db_qam_stat { - u_int32_t qs_magic; /* Magic number. */ - u_int32_t qs_version; /* Version number. */ - u_int32_t qs_metaflags; /* Metadata flags. */ - u_int32_t qs_nkeys; /* Number of unique keys. */ - u_int32_t qs_ndata; /* Number of data items. */ - u_int32_t qs_pagesize; /* Page size. */ - u_int32_t qs_extentsize; /* Pages per extent. */ - u_int32_t qs_pages; /* Data pages. */ - u_int32_t qs_re_len; /* Fixed-length record length. */ - u_int32_t qs_re_pad; /* Fixed-length record pad. */ - u_int32_t qs_pgfree; /* Bytes free in data pages. */ - u_int32_t qs_first_recno; /* First not deleted record. */ - u_int32_t qs_cur_recno; /* Next available record number. */ -}; - -/******************************************************* - * Environment. - *******************************************************/ -#define DB_REGION_MAGIC 0x120897 /* Environment magic number. */ - -/* Database Environment handle. */ -struct __db_env { - /******************************************************* - * Public: owned by the application. - *******************************************************/ - /* Error message callback. */ - void (*db_errcall) __P((const DB_ENV *, const char *, const char *)); - FILE *db_errfile; /* Error message file stream. */ - const char *db_errpfx; /* Error message prefix. */ - - FILE *db_msgfile; /* Statistics message file stream. */ - /* Statistics message callback. */ - void (*db_msgcall) __P((const DB_ENV *, const char *)); - - /* Other Callbacks. */ - void (*db_feedback) __P((DB_ENV *, int, int)); - void (*db_paniccall) __P((DB_ENV *, int)); - - /* App-specified alloc functions. */ - void *(*db_malloc) __P((size_t)); - void *(*db_realloc) __P((void *, size_t)); - void (*db_free) __P((void *)); - - /* - * Currently, the verbose list is a bit field with room for 32 - * entries. There's no reason that it needs to be limited, if - * there are ever more than 32 entries, convert to a bit array. - */ -#define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ -#define DB_VERB_RECOVERY 0x0002 /* Recovery information. */ -#define DB_VERB_REPLICATION 0x0004 /* Replication information. */ -#define DB_VERB_WAITSFOR 0x0008 /* Dump waits-for table. */ - u_int32_t verbose; /* Verbose output. */ - - void *app_private; /* Application-private handle. */ - - int (*app_dispatch) /* User-specified recovery dispatch. */ - __P((DB_ENV *, DBT *, DB_LSN *, db_recops)); - - /* Locking. */ - u_int8_t *lk_conflicts; /* Two dimensional conflict matrix. */ - int lk_modes; /* Number of lock modes in table. */ - u_int32_t lk_max; /* Maximum number of locks. */ - u_int32_t lk_max_lockers;/* Maximum number of lockers. */ - u_int32_t lk_max_objects;/* Maximum number of locked objects. */ - u_int32_t lk_detect; /* Deadlock detect on all conflicts. */ - db_timeout_t lk_timeout; /* Lock timeout period. */ - - /* Logging. */ - u_int32_t lg_bsize; /* Buffer size. */ - u_int32_t lg_size; /* Log file size. */ - u_int32_t lg_regionmax; /* Region size. */ - - /* Memory pool. */ - u_int32_t mp_gbytes; /* Cachesize: GB. */ - u_int32_t mp_bytes; /* Cachesize: Bytes. */ - u_int mp_ncache; /* Number of cache regions. */ - size_t mp_mmapsize; /* Maximum file size for mmap. */ - int mp_maxopenfd; /* Maximum open file descriptors. */ - int mp_maxwrite; /* Maximum buffers to write. */ - int /* Sleep after writing max buffers. */ - mp_maxwrite_sleep; - - /* Replication */ - int rep_eid; /* environment id. */ - int (*rep_send) /* Send function. */ - __P((DB_ENV *, const DBT *, const DBT *, - const DB_LSN *, int, u_int32_t)); - - /* Transactions. */ - u_int32_t tx_max; /* Maximum number of transactions. */ - time_t tx_timestamp; /* Recover to specific timestamp. */ - db_timeout_t tx_timeout; /* Timeout for transactions. */ - - /******************************************************* - * Private: owned by DB. - *******************************************************/ - /* User files, paths. */ - char *db_home; /* Database home. */ - char *db_log_dir; /* Database log file directory. */ - char *db_tmp_dir; /* Database tmp file directory. */ - - char **db_data_dir; /* Database data file directories. */ - int data_cnt; /* Database data file slots. */ - int data_next; /* Next Database data file slot. */ - - int db_mode; /* Default open permissions. */ - int dir_mode; /* Intermediate directory perms. */ - u_int32_t env_lid; /* Locker ID in non-threaded handles. */ - u_int32_t open_flags; /* Flags passed to DB_ENV->open. */ - - void *reginfo; /* REGINFO structure reference. */ - DB_FH *lockfhp; /* fcntl(2) locking file handle. */ - - int (**recover_dtab) /* Dispatch table for recover funcs. */ - __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); - size_t recover_dtab_size; - /* Slots in the dispatch table. */ - - void *cl_handle; /* RPC: remote client handle. */ - u_int cl_id; /* RPC: remote client env id. */ - - int db_ref; /* DB reference count. */ - - long shm_key; /* shmget(2) key. */ - u_int32_t tas_spins; /* test-and-set spins. */ - - /* - * List of open DB handles for this DB_ENV, used for cursor - * adjustment. Must be protected for multi-threaded support. - * - * !!! - * As this structure is allocated in per-process memory, the - * mutex may need to be stored elsewhere on architectures unable - * to support mutexes in heap memory, e.g. HP/UX 9. - * - * !!! - * Explicit representation of structure in queue.h. - * LIST_HEAD(dblist, __db); - */ - DB_MUTEX *dblist_mutexp; /* Mutex. */ - struct { - struct __db *lh_first; - } dblist; - - /* - * XA support. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_env) links; - * TAILQ_HEAD(xa_txn, __db_txn); - */ - struct { - struct __db_env *tqe_next; - struct __db_env **tqe_prev; - } links; - struct __xa_txn { /* XA Active Transactions. */ - struct __db_txn *tqh_first; - struct __db_txn **tqh_last; - } xa_txn; - int xa_rmid; /* XA Resource Manager ID. */ - - /* API-private structure. */ - void *api1_internal; /* C++, Perl API private */ - void *api2_internal; /* Java API private */ - - char *passwd; /* Cryptography support. */ - size_t passwd_len; - void *crypto_handle; /* Primary handle. */ - DB_MUTEX *mt_mutexp; /* Mersenne Twister mutex. */ - int mti; /* Mersenne Twister index. */ - u_long *mt; /* Mersenne Twister state vector. */ - - /* DB_ENV Methods. */ - int (*close) __P((DB_ENV *, u_int32_t)); - int (*dbremove) __P((DB_ENV *, - DB_TXN *, const char *, const char *, u_int32_t)); - int (*dbrename) __P((DB_ENV *, DB_TXN *, - const char *, const char *, const char *, u_int32_t)); - void (*err) __P((const DB_ENV *, int, const char *, ...)); - void (*errx) __P((const DB_ENV *, const char *, ...)); - int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); - int (*remove) __P((DB_ENV *, const char *, u_int32_t)); - int (*stat_print) __P((DB_ENV *, u_int32_t)); - - /* House-keeping. */ - int (*fileid_reset) __P((DB_ENV *, char *, int)); - int (*is_bigendian) __P((void)); - int (*lsn_reset) __P((DB_ENV *, char *, int)); - int (*prdbt) __P((DBT *, - int, const char *, void *, int (*)(void *, const void *), int)); - - /* Setters/getters. */ - int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), - void *(*)(void *, size_t), void (*)(void *))); - int (*set_app_dispatch) __P((DB_ENV *, - int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); - int (*get_data_dirs) __P((DB_ENV *, const char ***)); - int (*set_data_dir) __P((DB_ENV *, const char *)); - int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); - void (*set_errcall) __P((DB_ENV *, - void (*)(const DB_ENV *, const char *, const char *))); - void (*get_errfile) __P((DB_ENV *, FILE **)); - void (*set_errfile) __P((DB_ENV *, FILE *)); - void (*get_errpfx) __P((DB_ENV *, const char **)); - void (*set_errpfx) __P((DB_ENV *, const char *)); - int (*set_feedback) __P((DB_ENV *, void (*)(DB_ENV *, int, int))); - int (*get_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_flags) __P((DB_ENV *, u_int32_t, int)); - int (*get_home) __P((DB_ENV *, const char **)); - int (*set_intermediate_dir) __P((DB_ENV *, int, u_int32_t)); - int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_paniccall) __P((DB_ENV *, void (*)(DB_ENV *, int))); - int (*set_rpc_server) __P((DB_ENV *, - void *, const char *, long, long, u_int32_t)); - int (*get_shm_key) __P((DB_ENV *, long *)); - int (*set_shm_key) __P((DB_ENV *, long)); - void (*set_msgcall) __P((DB_ENV *, - void (*)(const DB_ENV *, const char *))); - void (*get_msgfile) __P((DB_ENV *, FILE **)); - void (*set_msgfile) __P((DB_ENV *, FILE *)); - int (*get_tas_spins) __P((DB_ENV *, u_int32_t *)); - int (*set_tas_spins) __P((DB_ENV *, u_int32_t)); - int (*get_tmp_dir) __P((DB_ENV *, const char **)); - int (*set_tmp_dir) __P((DB_ENV *, const char *)); - int (*get_verbose) __P((DB_ENV *, u_int32_t, int *)); - int (*set_verbose) __P((DB_ENV *, u_int32_t, int)); - - void *lg_handle; /* Log handle and methods. */ - int (*get_lg_bsize) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_bsize) __P((DB_ENV *, u_int32_t)); - int (*get_lg_dir) __P((DB_ENV *, const char **)); - int (*set_lg_dir) __P((DB_ENV *, const char *)); - int (*get_lg_max) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_max) __P((DB_ENV *, u_int32_t)); - int (*get_lg_regionmax) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_regionmax) __P((DB_ENV *, u_int32_t)); - int (*log_archive) __P((DB_ENV *, char **[], u_int32_t)); - int (*log_cursor) __P((DB_ENV *, DB_LOGC **, u_int32_t)); - int (*log_file) __P((DB_ENV *, const DB_LSN *, char *, size_t)); - int (*log_flush) __P((DB_ENV *, const DB_LSN *)); - int (*log_put) __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); - int (*log_stat) __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); - int (*log_stat_print) __P((DB_ENV *, u_int32_t)); - - void *lk_handle; /* Lock handle and methods. */ - int (*get_lk_conflicts) __P((DB_ENV *, const u_int8_t **, int *)); - int (*set_lk_conflicts) __P((DB_ENV *, u_int8_t *, int)); - int (*get_lk_detect) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_detect) __P((DB_ENV *, u_int32_t)); - int (*set_lk_max) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_lockers) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_lockers) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); - int (*lock_detect) __P((DB_ENV *, u_int32_t, u_int32_t, int *)); - int (*lock_get) __P((DB_ENV *, - u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); - int (*lock_put) __P((DB_ENV *, DB_LOCK *)); - int (*lock_id) __P((DB_ENV *, u_int32_t *)); - int (*lock_id_free) __P((DB_ENV *, u_int32_t)); - int (*lock_stat) __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); - int (*lock_stat_print) __P((DB_ENV *, u_int32_t)); - int (*lock_vec) __P((DB_ENV *, - u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); - - void *mp_handle; /* Mpool handle and methods. */ - int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); - int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); - int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); - int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); - int (*get_mp_max_openfd) __P((DB_ENV *, int *)); - int (*set_mp_max_openfd) __P((DB_ENV *, int)); - int (*get_mp_max_write) __P((DB_ENV *, int *, int *)); - int (*set_mp_max_write) __P((DB_ENV *, int, int)); - int (*memp_fcreate) __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); - int (*memp_register) __P((DB_ENV *, int, - int (*)(DB_ENV *, db_pgno_t, void *, DBT *), - int (*)(DB_ENV *, db_pgno_t, void *, DBT *))); - int (*memp_stat) __P((DB_ENV *, - DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); - int (*memp_stat_print) __P((DB_ENV *, u_int32_t)); - int (*memp_sync) __P((DB_ENV *, DB_LSN *)); - int (*memp_trickle) __P((DB_ENV *, int, int *)); - - void *rep_handle; /* Replication handle and methods. */ - int (*rep_elect) __P((DB_ENV *, int, int, int, - u_int32_t, int *, u_int32_t)); - int (*rep_flush) __P((DB_ENV *)); - int (*rep_process_message) __P((DB_ENV *, DBT *, DBT *, - int *, DB_LSN *)); - int (*rep_start) __P((DB_ENV *, DBT *, u_int32_t)); - int (*rep_stat) __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); - int (*rep_stat_print) __P((DB_ENV *, u_int32_t)); - int (*get_rep_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); - int (*set_rep_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); - int (*set_rep_request) __P((DB_ENV *, u_int32_t, u_int32_t)); - int (*set_rep_transport) __P((DB_ENV *, int, - int (*) (DB_ENV *, const DBT *, const DBT *, const DB_LSN *, - int, u_int32_t))); - - void *tx_handle; /* Txn handle and methods. */ - int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); - int (*set_tx_max) __P((DB_ENV *, u_int32_t)); - int (*get_tx_timestamp) __P((DB_ENV *, time_t *)); - int (*set_tx_timestamp) __P((DB_ENV *, time_t *)); - int (*txn_begin) __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); - int (*txn_checkpoint) __P((DB_ENV *, u_int32_t, u_int32_t, u_int32_t)); - int (*txn_recover) __P((DB_ENV *, - DB_PREPLIST *, long, long *, u_int32_t)); - int (*txn_stat) __P((DB_ENV *, DB_TXN_STAT **, u_int32_t)); - int (*txn_stat_print) __P((DB_ENV *, u_int32_t)); - int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); - int (*set_timeout) __P((DB_ENV *, db_timeout_t, u_int32_t)); - -#define DB_TEST_ELECTINIT 1 /* after __rep_elect_init */ -#define DB_TEST_ELECTVOTE1 2 /* after sending VOTE1 */ -#define DB_TEST_POSTDESTROY 3 /* after destroy op */ -#define DB_TEST_POSTLOG 4 /* after logging all pages */ -#define DB_TEST_POSTLOGMETA 5 /* after logging meta in btree */ -#define DB_TEST_POSTOPEN 6 /* after __os_open */ -#define DB_TEST_POSTSYNC 7 /* after syncing the log */ -#define DB_TEST_PREDESTROY 8 /* before destroy op */ -#define DB_TEST_PREOPEN 9 /* before __os_open */ -#define DB_TEST_SUBDB_LOCKS 10 /* subdb locking tests */ - int test_abort; /* Abort value for testing. */ - int test_check; /* Checkpoint value for testing. */ - int test_copy; /* Copy value for testing. */ - -#define DB_ENV_AUTO_COMMIT 0x0000001 /* DB_AUTO_COMMIT. */ -#define DB_ENV_CDB 0x0000002 /* DB_INIT_CDB. */ -#define DB_ENV_CDB_ALLDB 0x0000004 /* CDB environment wide locking. */ -#define DB_ENV_CREATE 0x0000008 /* DB_CREATE set. */ -#define DB_ENV_DBLOCAL 0x0000010 /* DB_ENV allocated for private DB. */ -#define DB_ENV_DIRECT_DB 0x0000020 /* DB_DIRECT_DB set. */ -#define DB_ENV_DIRECT_LOG 0x0000040 /* DB_DIRECT_LOG set. */ -#define DB_ENV_DSYNC_LOG 0x0000080 /* DB_DSYNC_LOG set. */ -#define DB_ENV_FATAL 0x0000100 /* Doing fatal recovery in env. */ -#define DB_ENV_LOCKDOWN 0x0000200 /* DB_LOCKDOWN set. */ -#define DB_ENV_LOG_AUTOREMOVE 0x0000400 /* DB_LOG_AUTOREMOVE set. */ -#define DB_ENV_LOG_INMEMORY 0x0000800 /* DB_LOG_INMEMORY set. */ -#define DB_ENV_NOLOCKING 0x0001000 /* DB_NOLOCKING set. */ -#define DB_ENV_NOMMAP 0x0002000 /* DB_NOMMAP set. */ -#define DB_ENV_NOPANIC 0x0004000 /* Okay if panic set. */ -#define DB_ENV_OPEN_CALLED 0x0008000 /* DB_ENV->open called. */ -#define DB_ENV_OVERWRITE 0x0010000 /* DB_OVERWRITE set. */ -#define DB_ENV_PRIVATE 0x0020000 /* DB_PRIVATE set. */ -#define DB_ENV_REGION_INIT 0x0040000 /* DB_REGION_INIT set. */ -#define DB_ENV_RPCCLIENT 0x0080000 /* DB_RPCCLIENT set. */ -#define DB_ENV_RPCCLIENT_GIVEN 0x0100000 /* User-supplied RPC client struct */ -#define DB_ENV_SYSTEM_MEM 0x0200000 /* DB_SYSTEM_MEM set. */ -#define DB_ENV_THREAD 0x0400000 /* DB_THREAD set. */ -#define DB_ENV_TIME_NOTGRANTED 0x0800000 /* DB_TIME_NOTGRANTED set. */ -#define DB_ENV_TXN_NOSYNC 0x1000000 /* DB_TXN_NOSYNC set. */ -#define DB_ENV_TXN_WRITE_NOSYNC 0x2000000 /* DB_TXN_WRITE_NOSYNC set. */ -#define DB_ENV_YIELDCPU 0x4000000 /* DB_YIELDCPU set. */ - u_int32_t flags; -}; - -#ifndef DB_DBM_HSEARCH -#define DB_DBM_HSEARCH 0 /* No historic interfaces by default. */ -#endif -#if DB_DBM_HSEARCH != 0 -/******************************************************* - * Dbm/Ndbm historic interfaces. - *******************************************************/ -typedef struct __db DBM; - -#define DBM_INSERT 0 /* Flags to dbm_store(). */ -#define DBM_REPLACE 1 - -/* - * The DB support for ndbm(3) always appends this suffix to the - * file name to avoid overwriting the user's original database. - */ -#define DBM_SUFFIX ".db" - -#if defined(_XPG4_2) -typedef struct { - char *dptr; - size_t dsize; -} datum; -#else -typedef struct { - char *dptr; - int dsize; -} datum; -#endif - -/* - * Translate NDBM calls into DB calls so that DB doesn't step on the - * application's name space. - */ -#define dbm_clearerr(a) __db_ndbm_clearerr(a) -#define dbm_close(a) __db_ndbm_close(a) -#define dbm_delete(a, b) __db_ndbm_delete(a, b) -#define dbm_dirfno(a) __db_ndbm_dirfno(a) -#define dbm_error(a) __db_ndbm_error(a) -#define dbm_fetch(a, b) __db_ndbm_fetch(a, b) -#define dbm_firstkey(a) __db_ndbm_firstkey(a) -#define dbm_nextkey(a) __db_ndbm_nextkey(a) -#define dbm_open(a, b, c) __db_ndbm_open(a, b, c) -#define dbm_pagfno(a) __db_ndbm_pagfno(a) -#define dbm_rdonly(a) __db_ndbm_rdonly(a) -#define dbm_store(a, b, c, d) \ - __db_ndbm_store(a, b, c, d) - -/* - * Translate DBM calls into DB calls so that DB doesn't step on the - * application's name space. - * - * The global variables dbrdonly, dirf and pagf were not retained when 4BSD - * replaced the dbm interface with ndbm, and are not supported here. - */ -#define dbminit(a) __db_dbm_init(a) -#define dbmclose __db_dbm_close -#if !defined(__cplusplus) -#define delete(a) __db_dbm_delete(a) -#endif -#define fetch(a) __db_dbm_fetch(a) -#define firstkey __db_dbm_firstkey -#define nextkey(a) __db_dbm_nextkey(a) -#define store(a, b) __db_dbm_store(a, b) - -/******************************************************* - * Hsearch historic interface. - *******************************************************/ -typedef enum { - FIND, ENTER -} ACTION; - -typedef struct entry { - char *key; - char *data; -} ENTRY; - -#define hcreate(a) __db_hcreate(a) -#define hdestroy __db_hdestroy -#define hsearch(a, b) __db_hsearch(a, b) - -#endif /* DB_DBM_HSEARCH */ - -#if defined(__cplusplus) -} -#endif -#endif /* !_DB_H_ */ - -/* DO NOT EDIT: automatically built by dist/s_include. */ -#ifndef _DB_EXT_PROT_IN_ -#define _DB_EXT_PROT_IN_ - -#if defined(__cplusplus) -extern "C" { -#endif - -int db_create __P((DB **, DB_ENV *, u_int32_t)); -char *db_strerror __P((int)); -int db_env_create __P((DB_ENV **, u_int32_t)); -char *db_version __P((int *, int *, int *)); -int log_compare __P((const DB_LSN *, const DB_LSN *)); -int db_env_set_func_close __P((int (*)(int))); -int db_env_set_func_dirfree __P((void (*)(char **, int))); -int db_env_set_func_dirlist __P((int (*)(const char *, char ***, int *))); -int db_env_set_func_exists __P((int (*)(const char *, int *))); -int db_env_set_func_free __P((void (*)(void *))); -int db_env_set_func_fsync __P((int (*)(int))); -int db_env_set_func_ftruncate __P((int (*)(int, off_t))); -int db_env_set_func_ioinfo __P((int (*)(const char *, int, u_int32_t *, u_int32_t *, u_int32_t *))); -int db_env_set_func_malloc __P((void *(*)(size_t))); -int db_env_set_func_map __P((int (*)(char *, size_t, int, int, void **))); -int db_env_set_func_pread __P((ssize_t (*)(int, void *, size_t, off_t))); -int db_env_set_func_pwrite __P((ssize_t (*)(int, const void *, size_t, off_t))); -int db_env_set_func_open __P((int (*)(const char *, int, ...))); -int db_env_set_func_read __P((ssize_t (*)(int, void *, size_t))); -int db_env_set_func_realloc __P((void *(*)(void *, size_t))); -int db_env_set_func_rename __P((int (*)(const char *, const char *))); -int db_env_set_func_seek __P((int (*)(int, off_t, int))); -int db_env_set_func_sleep __P((int (*)(u_long, u_long))); -int db_env_set_func_unlink __P((int (*)(const char *))); -int db_env_set_func_unmap __P((int (*)(void *, size_t))); -int db_env_set_func_write __P((ssize_t (*)(int, const void *, size_t))); -int db_env_set_func_yield __P((int (*)(void))); -int db_sequence_create __P((DB_SEQUENCE **, DB *, u_int32_t)); -#if DB_DBM_HSEARCH != 0 -int __db_ndbm_clearerr __P((DBM *)); -void __db_ndbm_close __P((DBM *)); -int __db_ndbm_delete __P((DBM *, datum)); -int __db_ndbm_dirfno __P((DBM *)); -int __db_ndbm_error __P((DBM *)); -datum __db_ndbm_fetch __P((DBM *, datum)); -datum __db_ndbm_firstkey __P((DBM *)); -datum __db_ndbm_nextkey __P((DBM *)); -DBM *__db_ndbm_open __P((const char *, int, int)); -int __db_ndbm_pagfno __P((DBM *)); -int __db_ndbm_rdonly __P((DBM *)); -int __db_ndbm_store __P((DBM *, datum, datum, int)); -int __db_dbm_close __P((void)); -int __db_dbm_delete __P((datum)); -datum __db_dbm_fetch __P((datum)); -datum __db_dbm_firstkey __P((void)); -int __db_dbm_init __P((char *)); -datum __db_dbm_nextkey __P((datum)); -int __db_dbm_store __P((datum, datum)); -#endif -#if DB_DBM_HSEARCH != 0 -int __db_hcreate __P((size_t)); -ENTRY *__db_hsearch __P((ENTRY, ACTION)); -void __db_hdestroy __P((void)); -#endif - -#if defined(__cplusplus) -} -#endif -#endif /* !_DB_EXT_PROT_IN_ */ diff --git a/db/build_win32/db_archive.dsp b/db/build_win32/db_archive.dsp deleted file mode 100644 index 4c664182d..000000000 --- a/db/build_win32/db_archive.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_archive" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_archive - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_archive.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_archive.mak" CFG="db_archive - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_archive - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_archive - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_archive - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_archive - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_archive - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_archive - Win32 Release" -# Name "db_archive - Win32 Debug" -# Name "db_archive - Win32 Release Static" -# Name "db_archive - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_archive\db_archive.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_buildall.dsp b/db/build_win32/db_buildall.dsp deleted file mode 100644 index 0f67cd945..000000000 --- a/db/build_win32/db_buildall.dsp +++ /dev/null @@ -1,128 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_buildall" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 5.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) External Target" 0x0106 - -CFG=db_buildall - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_buildall.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_buildall.mak" CFG="db_buildall - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_buildall - Win32 Release" (based on "Win32 (x86) External Target") -!MESSAGE "db_buildall - Win32 Debug" (based on "Win32 (x86) External Target") -!MESSAGE "db_buildall - Win32 Release Static" (based on\ - "Win32 (x86) External Target") -!MESSAGE "db_buildall - Win32 Debug Static" (based on\ - "Win32 (x86) External Target") -!MESSAGE - -# Begin Project -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "db_buildall - Win32 Release" - -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Cmd_Line "NMAKE /f db_buildall.mak" -# PROP BASE Rebuild_Opt "/a" -# PROP BASE Target_File "db_buildall.exe" -# PROP BASE Bsc_Name "db_buildall.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Cmd_Line "echo DB release version built." -# PROP Rebuild_Opt "" -# PROP Target_File "db_buildall.exe" -# PROP Bsc_Name "db_buildall.bsc" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Debug" - -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Cmd_Line "NMAKE /f db_buildall.mak" -# PROP BASE Rebuild_Opt "/a" -# PROP BASE Target_File "db_buildall.exe" -# PROP BASE Bsc_Name "db_buildall.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Cmd_Line "echo DB debug version built." -# PROP Rebuild_Opt "" -# PROP Target_File "db_buildall.exe" -# PROP Bsc_Name "db_buildall.bsc" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Release Static" - -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Cmd_Line "echo DB release version built." -# PROP BASE Rebuild_Opt "" -# PROP BASE Target_File "db_buildall.exe" -# PROP BASE Bsc_Name "db_buildall.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Cmd_Line "echo DB release version built." -# PROP Rebuild_Opt "" -# PROP Target_File "db_buildall.exe" -# PROP Bsc_Name "db_buildall.bsc" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Debug Static" - -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_static" -# PROP BASE Cmd_Line "echo DB debug version built." -# PROP BASE Rebuild_Opt "" -# PROP BASE Target_File "db_buildall.exe" -# PROP BASE Bsc_Name "db_buildall.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Cmd_Line "echo DB debug version built." -# PROP Rebuild_Opt "" -# PROP Target_File "db_buildall.exe" -# PROP Bsc_Name "db_buildall.bsc" -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "db_buildall - Win32 Release" -# Name "db_buildall - Win32 Debug" -# Name "db_buildall - Win32 Release Static" -# Name "db_buildall - Win32 Debug Static" - -!IF "$(CFG)" == "db_buildall - Win32 Release" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Debug" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Release Static" - -!ELSEIF "$(CFG)" == "db_buildall - Win32 Debug Static" - -!ENDIF - -# End Target -# End Project diff --git a/db/build_win32/db_checkpoint.dsp b/db/build_win32/db_checkpoint.dsp deleted file mode 100644 index 26a647d48..000000000 --- a/db/build_win32/db_checkpoint.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_checkpoint" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_checkpoint - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_checkpoint.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_checkpoint.mak" CFG="db_checkpoint - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_checkpoint - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_checkpoint - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_checkpoint - Win32 Release" -# Name "db_checkpoint - Win32 Debug" -# Name "db_checkpoint - Win32 Release Static" -# Name "db_checkpoint - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_checkpoint\db_checkpoint.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_config.h b/db/build_win32/db_config.h deleted file mode 100644 index 1e4ea1c8c..000000000 --- a/db/build_win32/db_config.h +++ /dev/null @@ -1,443 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/* Define to 1 if you want to build a version for running the test suite. */ -/* #undef CONFIG_TEST */ - -/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using - an operating system environment that supports Win32 calls and semantics. We - don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though - Cygwin/GCC closely emulates the Unix environment. */ -#define DB_WIN32 1 - -/* Define to 1 if you want a debugging version. */ -/* #undef DEBUG */ -#if defined(_DEBUG) -#if !defined(DEBUG) -#define DEBUG 1 -#endif -#endif - -/* Define to 1 if you want a version that logs read operations. */ -/* #undef DEBUG_ROP */ - -/* Define to 1 if you want a version that logs write operations. */ -/* #undef DEBUG_WOP */ - -/* Define to 1 if you want a version with run-time diagnostic checking. */ -/* #undef DIAGNOSTIC */ - -/* Define to 1 if you have the `clock_gettime' function. */ -/* #undef HAVE_CLOCK_GETTIME */ - -/* Define to 1 if Berkeley DB release includes strong cryptography. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_CRYPTO 1 -#endif - -/* Define to 1 if you have the `directio' function. */ -/* #undef HAVE_DIRECTIO */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_DIRENT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ -#define HAVE_EXIT_SUCCESS 1 - -/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ -/* #undef HAVE_FCNTL_F_SETFD */ - -/* Define to 1 if you have the `fdatasync' function. */ -/* #undef HAVE_FDATASYNC */ - -/* Define to 1 if allocated filesystem blocks are not zeroed. */ -#define HAVE_FILESYSTEM_NOTZERO 1 - -/* Define to 1 if you have the `ftruncate' function. */ -#define HAVE_FTRUNCATE 1 - -/* Define to 1 if you have the `getcwd' function. */ -#define HAVE_GETCWD 1 - -/* Define to 1 if you have the `getopt' function. */ -/* #undef HAVE_GETOPT */ - -/* Define to 1 if you have the `getrusage' function. */ -/* #undef HAVE_GETRUSAGE */ - -/* Define to 1 if you have the `gettimeofday' function. */ -/* #undef HAVE_GETTIMEOFDAY */ - -/* Define to 1 if you have the `getuid' function. */ -/* #undef HAVE_GETUID */ - -/* Define to 1 if building Hash access method. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_HASH 1 -#endif - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_INTTYPES_H */ - -/* Define to 1 if you have the `nsl' library (-lnsl). */ -/* #undef HAVE_LIBNSL */ - -/* Define to 1 if the system has the type `long long'. */ -#define HAVE_LONG_LONG 1 - -/* Define to 1 if you have the `memcmp' function. */ -#define HAVE_MEMCMP 1 - -/* Define to 1 if you have the `memcpy' function. */ -#define HAVE_MEMCPY 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `mlock' function. */ -/* #undef HAVE_MLOCK */ - -/* Define to 1 if you have the `mmap' function. */ -/* #undef HAVE_MMAP */ - -/* Define to 1 if you have the `munlock' function. */ -/* #undef HAVE_MUNLOCK */ - -/* Define to 1 if you have the `munmap' function. */ -/* #undef HAVE_MUNMAP */ - -/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ -/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ - -/* Define to 1 to use the AIX _check_lock mutexes. */ -/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ - -/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ -/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ - -/* 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 Apple/Darwin _spin_lock_try mutexes. */ -/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ - -/* Define to 1 to use the UNIX fcntl system call mutexes. */ -/* #undef HAVE_MUTEX_FCNTL */ - -/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. - */ -/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ - -/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ -/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ - -/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ -/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ - -/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ -/* #undef HAVE_MUTEX_MSEM_INIT */ - -/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. - */ -/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ - -/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ -/* #undef HAVE_MUTEX_PTHREADS */ - -/* Define to 1 to use Reliant UNIX initspin mutexes. */ -/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ - -/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. - */ -/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ - -/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ -/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ - -/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ -/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ - -/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ -/* #undef HAVE_MUTEX_SEMA_INIT */ - -/* Define to 1 to use the SGI XXX_lock mutexes. */ -/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ - -/* Define to 1 to use the Solaris _lock_XXX mutexes. */ -/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ - -/* Define to 1 to use the Solaris lwp threads mutexes. */ -/* #undef HAVE_MUTEX_SOLARIS_LWP */ - -/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ -/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ - -/* Define to 1 if mutexes hold system resources. */ -/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ - -/* Define to 1 if fast mutexes are available. */ -#define HAVE_MUTEX_THREADS 1 - -/* Define to 1 to configure mutexes intra-process only. */ -/* #undef HAVE_MUTEX_THREAD_ONLY */ - -/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ -/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ - -/* Define to 1 to use the UNIX International mutexes. */ -/* #undef HAVE_MUTEX_UI_THREADS */ - -/* Define to 1 to use the UTS compiler and assembly language mutexes. */ -/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ - -/* Define to 1 to use VMS mutexes. */ -/* #undef HAVE_MUTEX_VMS */ - -/* Define to 1 to use VxWorks mutexes. */ -/* #undef HAVE_MUTEX_VXWORKS */ - -/* Define to 1 to use the MSVC compiler and Windows mutexes. */ -#define HAVE_MUTEX_WIN32 1 - -/* Define to 1 to use the GCC compiler and Windows mutexes. */ -/* #undef HAVE_MUTEX_WIN32_GCC */ - -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ -/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ - -/* Define to 1 if you have the header file, and it defines `DIR'. */ -/* #undef HAVE_NDIR_H */ - -/* Define to 1 if you have the O_DIRECT flag. */ -/* #undef HAVE_O_DIRECT */ - -/* Define to 1 if you have the `pread' function. */ -/* #undef HAVE_PREAD */ - -/* Define to 1 if you have the `pstat_getdynamic' function. */ -/* #undef HAVE_PSTAT_GETDYNAMIC */ - -/* Define to 1 if you have the `pwrite' function. */ -/* #undef HAVE_PWRITE */ - -/* Define to 1 if building on QNX. */ -/* #undef HAVE_QNX */ - -/* Define to 1 if building Queue access method. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_QUEUE 1 -#endif - -/* Define to 1 if you have the `raise' function. */ -#define HAVE_RAISE 1 - -/* Define to 1 if you have the `rand' function. */ -#define HAVE_RAND 1 - -/* Define to 1 if building replication support. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_REPLICATION 1 -#endif - -/* Define to 1 if building RPC client/server. */ -/* #undef HAVE_RPC */ - -/* Define to 1 if you have the `sched_yield' function. */ -/* #undef HAVE_SCHED_YIELD */ - -/* Define to 1 if you have the `select' function. */ -/* #undef HAVE_SELECT */ - -/* Define to 1 if building sequence support. */ -#define HAVE_SEQUENCE 1 - -/* Define to 1 if you have the `shmget' function. */ -/* #undef HAVE_SHMGET */ - -/* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 - -/* Define to 1 if you have the `srand' function. */ -#define HAVE_SRAND 1 - -/* Define to 1 if building statistics support. */ -#define HAVE_STATISTICS 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STDINT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the `strcasecmp' function. */ -/* #undef HAVE_STRCASECMP */ - -/* Define to 1 if you have the `strdup' function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the `strerror' function. */ -#define HAVE_STRERROR 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strtol' function. */ -#define HAVE_STRTOL 1 - -/* Define to 1 if you have the `strtoul' function. */ -#define HAVE_STRTOUL 1 - -/* Define to 1 if `st_blksize' is member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ - -/* Define to 1 if you have the `sysconf' function. */ -/* #undef HAVE_SYSCONF */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FCNTL_H 1 - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SELECT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TIME_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UNISTD_H */ - -/* Define to 1 if unlink of file with open file descriptors will fail. */ -/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ - -/* Define to 1 if the system has the type `unsigned long long'. */ -#define HAVE_UNSIGNED_LONG_LONG 1 - -/* Define to 1 if building access method verification support. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_VERIFY 1 -#endif - -/* Define to 1 if you have the `vsnprintf' function. */ -#define HAVE_VSNPRINTF 1 - -/* Define to 1 if building VxWorks. */ -/* #undef HAVE_VXWORKS */ - -/* Define to 1 if you have the `yield' function. */ -/* #undef HAVE_YIELD */ - -/* Define to 1 if you have the `_fstati64' function. */ -#define HAVE__FSTATI64 1 - -/* Define to a value if using non-standard mutex alignment. */ -/* #undef MUTEX_ALIGN */ - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "support@sleepycat.com" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "Berkeley DB" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Berkeley DB 4.3.27" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "db-4.3.27" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "4.3.27" - -/* Define to 1 if the `S_IS*' macros in do not work properly. */ -/* #undef STAT_MACROS_BROKEN */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define to 1 if you can safely include both and . */ -/* #undef TIME_WITH_SYS_TIME */ - -/* Define to 1 to mask harmless uninitialized memory read/writes. */ -/* #undef UMRW */ - -/* Number of bits in a file offset, on hosts where this is settable. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define for large files, on AIX-style hosts. */ -/* #undef _LARGE_FILES */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* - * Exit success/failure macros. - */ -#ifndef HAVE_EXIT_SUCCESS -#define EXIT_FAILURE 1 -#define EXIT_SUCCESS 0 -#endif - -/* - * Don't step on the namespace. Other libraries may have their own - * implementations of these functions, we don't want to use their - * implementations or force them to use ours based on the load order. - */ -#ifndef HAVE_GETCWD -#define getcwd __db_Cgetcwd -#endif -#ifndef HAVE_MEMCMP -#define memcmp __db_Cmemcmp -#endif -#ifndef HAVE_MEMCPY -#define memcpy __db_Cmemcpy -#endif -#ifndef HAVE_MEMMOVE -#define memmove __db_Cmemmove -#endif -#ifndef HAVE_RAISE -#define raise __db_Craise -#endif -#ifndef HAVE_SNPRINTF -#define snprintf __db_Csnprintf -#endif -#ifndef HAVE_STRCASECMP -#define strcasecmp __db_Cstrcasecmp -#define strncasecmp __db_Cstrncasecmp -#endif -#ifndef HAVE_STRERROR -#define strerror __db_Cstrerror -#endif -#ifndef HAVE_VSNPRINTF -#define vsnprintf __db_Cvsnprintf -#endif - -#include "win_db.h" - -/* - * Microsoft's compiler _doesn't_ define __STDC__ unless you invoke it with - * arguments turning OFF all vendor extensions. Even more unfortunately, if - * we do that, it fails to parse windows.h!!!!! So, we define __STDC__ here, - * after windows.h comes in. Note: the compiler knows we've defined it, and - * starts enforcing strict ANSI compliance from this point on. - */ -#define __STDC__ 1 diff --git a/db/build_win32/db_cxx.h b/db/build_win32/db_cxx.h deleted file mode 100644 index abba7b635..000000000 --- a/db/build_win32/db_cxx.h +++ /dev/null @@ -1,1089 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db_cxx.in,v 11.147 2004/10/07 21:39:48 bostic Exp $ - */ - -#ifndef _DB_CXX_H_ -#define _DB_CXX_H_ -// -// C++ assumptions: -// -// To ensure portability to many platforms, both new and old, we make -// few assumptions about the C++ compiler and library. For example, -// we do not expect STL, templates or namespaces to be available. The -// "newest" C++ feature used is exceptions, which are used liberally -// to transmit error information. Even the use of exceptions can be -// disabled at runtime, to do so, use the DB_CXX_NO_EXCEPTIONS flags -// with the DbEnv or Db constructor. -// -// C++ naming conventions: -// -// - All top level class names start with Db. -// - All class members start with lower case letter. -// - All private data members are suffixed with underscore. -// - Use underscores to divide names into multiple words. -// - Simple data accessors are named with get_ or set_ prefix. -// - All method names are taken from names of functions in the C -// layer of db (usually by dropping a prefix like "db_"). -// These methods have the same argument types and order, -// other than dropping the explicit arg that acts as "this". -// -// As a rule, each DbFoo object has exactly one underlying DB_FOO struct -// (defined in db.h) associated with it. In some cases, we inherit directly -// from the DB_FOO structure to make this relationship explicit. Often, -// the underlying C layer allocates and deallocates these structures, so -// there is no easy way to add any data to the DbFoo class. When you see -// a comment about whether data is permitted to be added, this is what -// is going on. Of course, if we need to add data to such C++ classes -// in the future, we will arrange to have an indirect pointer to the -// DB_FOO struct (as some of the classes already have). -// - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Forward declarations -// - -#include - -#define HAVE_CXX_STDHEADERS 1 -#ifdef HAVE_CXX_STDHEADERS -#include -#include -#define __DB_STD(x) std::x -#else -#include -#include -#define __DB_STD(x) x -#endif - -#include "db.h" - -class Db; // forward -class Dbc; // forward -class DbEnv; // forward -class DbInfo; // forward -class DbLock; // forward -class DbLogc; // forward -class DbLsn; // forward -class DbMpoolFile; // forward -class DbPreplist; // forward -class Dbt; // forward -class DbTxn; // forward -class DbLock; // forward -class DbSequence; // forward -class Dbt; // forward - -class DbMultipleIterator; // forward -class DbMultipleKeyDataIterator; // forward -class DbMultipleRecnoDataIterator; // forward -class DbMultipleDataIterator; // forward - -class DbException; // forward -class DbDeadlockException; // forward -class DbLockNotGrantedException; // forward -class DbMemoryException; // forward -class DbRunRecoveryException; // forward - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Turn off inappropriate compiler warnings -// - -#ifdef _MSC_VER - -// These are level 4 warnings that are explicitly disabled. -// With Visual C++, by default you do not see above level 3 unless -// you use /W4. But we like to compile with the highest level -// warnings to catch other errors. -// -// 4201: nameless struct/union -// triggered by standard include file -// -// 4514: unreferenced inline function has been removed -// certain include files in MSVC define methods that are not called -// -#pragma warning(disable: 4201 4514) - -#endif - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Mechanisms for declaring classes -// - -// -// Every class defined in this file has an _exported next to the class name. -// This is needed for WinTel machines so that the class methods can -// be exported or imported in a DLL as appropriate. Users of the DLL -// use the define DB_USE_DLL. When the DLL is built, DB_CREATE_DLL -// must be defined. -// -#if defined(_MSC_VER) - -# if defined(DB_CREATE_DLL) -# define _exported __declspec(dllexport) // creator of dll -# elif defined(DB_USE_DLL) -# define _exported __declspec(dllimport) // user of dll -# else -# define _exported // static lib creator or user -# endif - -#else /* _MSC_VER */ - -# define _exported - -#endif /* _MSC_VER */ - -// Some interfaces can be customized by allowing users to define -// callback functions. For performance and logistical reasons, some -// callback functions must be declared in extern "C" blocks. For others, -// we allow you to declare the callbacks in C++ or C (or an extern "C" -// block) as you wish. See the set methods for the callbacks for -// the choices. -// -extern "C" { - typedef void * (*db_malloc_fcn_type) - (size_t); - typedef void * (*db_realloc_fcn_type) - (void *, size_t); - typedef void (*db_free_fcn_type) - (void *); - typedef int (*bt_compare_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef size_t (*bt_prefix_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef int (*dup_compare_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef u_int32_t (*h_hash_fcn_type) /*C++ version available*/ - (DB *, const void *, u_int32_t); - typedef int (*pgin_fcn_type) - (DB_ENV *dbenv, db_pgno_t pgno, void *pgaddr, DBT *pgcookie); - typedef int (*pgout_fcn_type) - (DB_ENV *dbenv, db_pgno_t pgno, void *pgaddr, DBT *pgcookie); -} - -// -// Represents a database table = a set of keys with associated values. -// -class _exported Db -{ - friend class DbEnv; - -public: - Db(DbEnv*, u_int32_t); // create a Db object, then call open() - virtual ~Db(); // does *not* call close. - - // These methods exactly match those in the C interface. - // - virtual int associate(DbTxn *txn, Db *secondary, - int (*callback)(Db *, const Dbt *, const Dbt *, Dbt *), - u_int32_t flags); - virtual int close(u_int32_t flags); - virtual int cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags); - virtual int del(DbTxn *txnid, Dbt *key, u_int32_t flags); - virtual void err(int, const char *, ...); - virtual void errx(const char *, ...); - virtual int fd(int *fdp); - virtual int get(DbTxn *txnid, Dbt *key, Dbt *data, u_int32_t flags); - virtual void *get_app_private() const; - virtual int get_byteswapped(int *); - virtual int get_dbname(const char **, const char **); - virtual int get_open_flags(u_int32_t *); - virtual int get_type(DBTYPE *); - virtual int get_transactional(); - virtual int join(Dbc **curslist, Dbc **dbcp, u_int32_t flags); - virtual int key_range(DbTxn *, Dbt *, DB_KEY_RANGE *, u_int32_t); - virtual int open(DbTxn *txnid, - const char *, const char *subname, DBTYPE, u_int32_t, int); - virtual int pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Dbt *data, - u_int32_t flags); - virtual int put(DbTxn *, Dbt *, Dbt *, u_int32_t); - virtual int remove(const char *, const char *, u_int32_t); - virtual int rename(const char *, const char *, const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); - virtual void set_app_private(void *); - virtual int set_append_recno(int (*)(Db *, Dbt *, db_recno_t)); - virtual int set_bt_compare(bt_compare_fcn_type); /*deprecated*/ - virtual int set_bt_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int set_bt_maxkey(u_int32_t); - virtual int get_bt_minkey(u_int32_t *); - virtual int set_bt_minkey(u_int32_t); - virtual int set_bt_prefix(bt_prefix_fcn_type); /*deprecated*/ - virtual int set_bt_prefix(size_t (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); - virtual int set_cachesize(u_int32_t, u_int32_t, int); - virtual int set_dup_compare(dup_compare_fcn_type); /*deprecated*/ - virtual int set_dup_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_encrypt_flags(u_int32_t *); - virtual int set_encrypt(const char *, u_int32_t); - virtual void set_errcall( - void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); - virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); - virtual void set_errpfx(const char *); - virtual int set_feedback(void (*)(Db *, int, int)); - virtual int get_flags(u_int32_t *); - virtual int set_flags(u_int32_t); - virtual int get_h_ffactor(u_int32_t *); - virtual int set_h_ffactor(u_int32_t); - virtual int set_h_hash(h_hash_fcn_type); /*deprecated*/ - virtual int set_h_hash(u_int32_t (*)(Db *, const void *, u_int32_t)); - virtual int get_h_nelem(u_int32_t *); - virtual int set_h_nelem(u_int32_t); - virtual int get_lorder(int *); - virtual int set_lorder(int); - virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); - virtual void set_msgfile(FILE *); - virtual int get_pagesize(u_int32_t *); - virtual int set_pagesize(u_int32_t); - virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int get_re_delim(int *); - virtual int set_re_delim(int); - virtual int get_re_len(u_int32_t *); - virtual int set_re_len(u_int32_t); - virtual int get_re_pad(int *); - virtual int set_re_pad(int); - virtual int get_re_source(const char **); - virtual int set_re_source(const char *); - virtual int get_q_extentsize(u_int32_t *); - virtual int set_q_extentsize(u_int32_t); - virtual int stat(DbTxn *, void *sp, u_int32_t flags); - virtual int stat_print(u_int32_t flags); - virtual int sync(u_int32_t flags); - virtual int truncate(DbTxn *, u_int32_t *, u_int32_t); - virtual int upgrade(const char *name, u_int32_t flags); - virtual int verify(const char *, const char *, __DB_STD(ostream) *, - u_int32_t); - - // These additional methods are not in the C interface, and - // are only available for C++. - // - virtual __DB_STD(ostream) *get_error_stream(); - virtual void set_error_stream(__DB_STD(ostream) *); - virtual __DB_STD(ostream) *get_message_stream(); - virtual void set_message_stream(__DB_STD(ostream) *); - - virtual DbEnv *get_env(); - virtual DbMpoolFile *get_mpf(); - - virtual DB *get_DB() - { - return imp_; - } - - virtual const DB *get_const_DB() const - { - return imp_; - } - - static Db* get_Db(DB *db) - { - return (Db *)db->api_internal; - } - - static const Db* get_const_Db(const DB *db) - { - return (const Db *)db->api_internal; - } - -private: - // no copying - Db(const Db &); - Db &operator = (const Db &); - - void cleanup(); - int initialize(); - int error_policy(); - - // instance data - DB *imp_; - DbEnv *env_; - DbMpoolFile *mpf_; - int construct_error_; - u_int32_t flags_; - u_int32_t construct_flags_; - -public: - // These are public only because they need to be called - // via C callback functions. They should never be used by - // external users of this class. - // - int (*append_recno_callback_)(Db *, Dbt *, db_recno_t); - int (*associate_callback_)(Db *, const Dbt *, const Dbt *, Dbt *); - int (*bt_compare_callback_)(Db *, const Dbt *, const Dbt *); - size_t (*bt_prefix_callback_)(Db *, const Dbt *, const Dbt *); - int (*dup_compare_callback_)(Db *, const Dbt *, const Dbt *); - void (*feedback_callback_)(Db *, int, int); - u_int32_t (*h_hash_callback_)(Db *, const void *, u_int32_t); -}; - -// -// Cursor -// -class _exported Dbc : protected DBC -{ - friend class Db; - -public: - int close(); - int count(db_recno_t *countp, u_int32_t flags); - int del(u_int32_t flags); - int dup(Dbc** cursorp, u_int32_t flags); - int get(Dbt* key, Dbt *data, u_int32_t flags); - int pget(Dbt* key, Dbt* pkey, Dbt *data, u_int32_t flags); - int put(Dbt* key, Dbt *data, u_int32_t flags); - -private: - // No data is permitted in this class (see comment at top) - - // Note: use Db::cursor() to get pointers to a Dbc, - // and call Dbc::close() rather than delete to release them. - // - Dbc(); - ~Dbc(); - - // no copying - Dbc(const Dbc &); - Dbc &operator = (const Dbc &); -}; - -// -// Berkeley DB environment class. Provides functions for opening databases. -// User of this library can use this class as a starting point for -// developing a DB application - derive their application class from -// this one, add application control logic. -// -// Note that if you use the default constructor, you must explicitly -// call appinit() before any other db activity (e.g. opening files) -// -class _exported DbEnv -{ - friend class Db; - friend class DbLock; - friend class DbMpoolFile; - -public: - // After using this constructor, you can set any needed - // parameters for the environment using the set_* methods. - // Then call open() to finish initializing the environment - // and attaching it to underlying files. - // - DbEnv(u_int32_t flags); - - virtual ~DbEnv(); - - // These methods match those in the C interface. - // - virtual int close(u_int32_t); - virtual int dbremove(DbTxn *txn, const char *name, const char *subdb, - u_int32_t flags); - virtual int dbrename(DbTxn *txn, const char *name, const char *subdb, - const char *newname, u_int32_t flags); - virtual void err(int, const char *, ...); - virtual void errx(const char *, ...); - virtual void *get_app_private() const; - virtual int get_home(const char **); - virtual int get_open_flags(u_int32_t *); - virtual int open(const char *, u_int32_t, int); - virtual int remove(const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); - virtual void set_app_private(void *); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); - virtual int set_cachesize(u_int32_t, u_int32_t, int); - virtual int get_data_dirs(const char ***); - virtual int set_data_dir(const char *); - virtual int get_encrypt_flags(u_int32_t *); - virtual int set_encrypt(const char *, u_int32_t); - virtual void set_errcall( - void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); - virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); - virtual void set_errpfx(const char *); - virtual int get_flags(u_int32_t *); - virtual int set_flags(u_int32_t, int); - virtual int set_feedback(void (*)(DbEnv *, int, int)); - virtual int get_lg_bsize(u_int32_t *); - virtual int set_lg_bsize(u_int32_t); - virtual int get_lg_dir(const char **); - virtual int set_lg_dir(const char *); - virtual int get_lg_max(u_int32_t *); - virtual int set_lg_max(u_int32_t); - virtual int get_lg_regionmax(u_int32_t *); - virtual int set_lg_regionmax(u_int32_t); - virtual int get_lk_conflicts(const u_int8_t **, int *); - virtual int set_lk_conflicts(u_int8_t *, int); - virtual int get_lk_detect(u_int32_t *); - virtual int set_lk_detect(u_int32_t); - virtual int set_lk_max(u_int32_t); - virtual int get_lk_max_lockers(u_int32_t *); - virtual int set_lk_max_lockers(u_int32_t); - virtual int get_lk_max_locks(u_int32_t *); - virtual int set_lk_max_locks(u_int32_t); - virtual int get_lk_max_objects(u_int32_t *); - virtual int set_lk_max_objects(u_int32_t); - virtual int get_mp_mmapsize(size_t *); - virtual int set_mp_mmapsize(size_t); - virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); - virtual void set_msgfile(FILE *); - virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int set_rpc_server(void *, char *, long, long, u_int32_t); - virtual int get_shm_key(long *); - virtual int set_shm_key(long); - virtual int get_timeout(db_timeout_t *, u_int32_t); - virtual int set_timeout(db_timeout_t, u_int32_t); - virtual int get_tmp_dir(const char **); - virtual int set_tmp_dir(const char *); - virtual int get_tas_spins(u_int32_t *); - virtual int set_tas_spins(u_int32_t); - virtual int get_tx_max(u_int32_t *); - virtual int set_tx_max(u_int32_t); - virtual int set_app_dispatch(int (*)(DbEnv *, - Dbt *, DbLsn *, db_recops)); - virtual int get_tx_timestamp(time_t *); - virtual int set_tx_timestamp(time_t *); - virtual int get_verbose(u_int32_t which, int *); - virtual int set_verbose(u_int32_t which, int); - - // Version information. A static method so it can be obtained anytime. - // - static char *version(int *major, int *minor, int *patch); - - // Convert DB errors to strings - static char *strerror(int); - - // If an error is detected and the error call function - // or stream is set, a message is dispatched or printed. - // If a prefix is set, each message is prefixed. - // - // You can use set_errcall() or set_errfile() above to control - // error functionality. Alternatively, you can call - // set_error_stream() to force all errors to a C++ stream. - // It is unwise to mix these approaches. - // - virtual __DB_STD(ostream) *get_error_stream(); - virtual void set_error_stream(__DB_STD(ostream) *); - virtual __DB_STD(ostream) *get_message_stream(); - virtual void set_message_stream(__DB_STD(ostream) *); - - // used internally - static void runtime_error(DbEnv *env, const char *caller, int err, - int error_policy); - static void runtime_error_dbt(DbEnv *env, const char *caller, Dbt *dbt, - int error_policy); - static void runtime_error_lock_get(DbEnv *env, const char *caller, - int err, db_lockop_t op, db_lockmode_t mode, - const Dbt *obj, DbLock lock, int index, - int error_policy); - - // Lock functions - // - virtual int lock_detect(u_int32_t flags, u_int32_t atype, int *aborted); - virtual int lock_get(u_int32_t locker, u_int32_t flags, const Dbt *obj, - db_lockmode_t lock_mode, DbLock *lock); - virtual int lock_id(u_int32_t *idp); - virtual int lock_id_free(u_int32_t id); - virtual int lock_put(DbLock *lock); - virtual int lock_stat(DB_LOCK_STAT **statp, u_int32_t flags); - virtual int lock_stat_print(u_int32_t flags); - virtual int lock_vec(u_int32_t locker, u_int32_t flags, - DB_LOCKREQ list[], int nlist, DB_LOCKREQ **elistp); - - // Log functions - // - virtual int log_archive(char **list[], u_int32_t flags); - static int log_compare(const DbLsn *lsn0, const DbLsn *lsn1); - virtual int log_cursor(DbLogc **cursorp, u_int32_t flags); - virtual int log_file(DbLsn *lsn, char *namep, size_t len); - virtual int log_flush(const DbLsn *lsn); - virtual int log_put(DbLsn *lsn, const Dbt *data, u_int32_t flags); - - virtual int log_stat(DB_LOG_STAT **spp, u_int32_t flags); - virtual int log_stat_print(u_int32_t flags); - - // Mpool functions - // - virtual int memp_fcreate(DbMpoolFile **dbmfp, u_int32_t flags); - virtual int memp_register(int ftype, - pgin_fcn_type pgin_fcn, - pgout_fcn_type pgout_fcn); - virtual int memp_stat(DB_MPOOL_STAT - **gsp, DB_MPOOL_FSTAT ***fsp, u_int32_t flags); - virtual int memp_stat_print(u_int32_t flags); - virtual int memp_sync(DbLsn *lsn); - virtual int memp_trickle(int pct, int *nwrotep); - - // Transaction functions - // - virtual int txn_begin(DbTxn *pid, DbTxn **tid, u_int32_t flags); - virtual int txn_checkpoint(u_int32_t kbyte, u_int32_t min, - u_int32_t flags); - virtual int txn_recover(DbPreplist *preplist, long count, - long *retp, u_int32_t flags); - virtual int txn_stat(DB_TXN_STAT **statp, u_int32_t flags); - virtual int txn_stat_print(u_int32_t flags); - - // Replication functions - // - virtual int rep_elect(int, int, int, u_int32_t, int *, u_int32_t); - virtual int rep_process_message(Dbt *, Dbt *, int *, DbLsn *); - virtual int rep_start(Dbt *, u_int32_t); - virtual int rep_stat(DB_REP_STAT **statp, u_int32_t flags); - virtual int rep_stat_print(u_int32_t flags); - virtual int get_rep_limit(u_int32_t *, u_int32_t *); - virtual int set_rep_limit(u_int32_t, u_int32_t); - virtual int set_rep_transport(int, int (*)(DbEnv *, - const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t)); - - // Conversion functions - // - virtual DB_ENV *get_DB_ENV() - { - return imp_; - } - - virtual const DB_ENV *get_const_DB_ENV() const - { - return imp_; - } - - static DbEnv* get_DbEnv(DB_ENV *dbenv) - { - return dbenv ? (DbEnv *)dbenv->api1_internal : 0; - } - - static const DbEnv* get_const_DbEnv(const DB_ENV *dbenv) - { - return dbenv ? (const DbEnv *)dbenv->api1_internal : 0; - } - - // For internal use only. - static DbEnv* wrap_DB_ENV(DB_ENV *dbenv); - - // These are public only because they need to be called - // via C functions. They should never be called by users - // of this class. - // - static int _app_dispatch_intercept(DB_ENV *env, DBT *dbt, DB_LSN *lsn, - db_recops op); - static void _paniccall_intercept(DB_ENV *env, int errval); - static void _feedback_intercept(DB_ENV *env, int opcode, int pct); - static int _rep_send_intercept(DB_ENV *env, - const DBT *cntrl, const DBT *data, - const DB_LSN *lsn, int id, - u_int32_t flags); - static void _stream_error_function(const DB_ENV *env, - const char *prefix, - const char *message); - static void _stream_message_function(const DB_ENV *env, - const char *message); - -private: - void cleanup(); - int initialize(DB_ENV *env); - int error_policy(); - - // For internal use only. - DbEnv(DB_ENV *, u_int32_t flags); - - // no copying - DbEnv(const DbEnv &); - void operator = (const DbEnv &); - - // instance data - DB_ENV *imp_; - int construct_error_; - u_int32_t construct_flags_; - __DB_STD(ostream) *error_stream_; - __DB_STD(ostream) *message_stream_; - - int (*app_dispatch_callback_)(DbEnv *, Dbt *, DbLsn *, db_recops); - void (*error_callback_)(const DbEnv *, const char *, const char *); - void (*feedback_callback_)(DbEnv *, int, int); - void (*message_callback_)(const DbEnv *, const char *); - void (*paniccall_callback_)(DbEnv *, int); - int (*pgin_callback_)(DbEnv *dbenv, db_pgno_t pgno, - void *pgaddr, Dbt *pgcookie); - int (*pgout_callback_)(DbEnv *dbenv, db_pgno_t pgno, - void *pgaddr, Dbt *pgcookie); - int (*rep_send_callback_)(DbEnv *, - const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t); -}; - -// -// Lock -// -class _exported DbLock -{ - friend class DbEnv; - -public: - DbLock(); - DbLock(const DbLock &); - DbLock &operator = (const DbLock &); - -protected: - // We can add data to this class if needed - // since its contained class is not allocated by db. - // (see comment at top) - - DbLock(DB_LOCK); - DB_LOCK lock_; -}; - -// -// Log cursor -// -class _exported DbLogc : protected DB_LOGC -{ - friend class DbEnv; - -public: - int close(u_int32_t _flags); - int get(DbLsn *lsn, Dbt *data, u_int32_t _flags); - -private: - // No data is permitted in this class (see comment at top) - - // Note: use Db::cursor() to get pointers to a Dbc, - // and call Dbc::close() rather than delete to release them. - // - DbLogc(); - ~DbLogc(); - - // no copying - DbLogc(const Dbc &); - DbLogc &operator = (const Dbc &); -}; - -// -// Log sequence number -// -class _exported DbLsn : public DB_LSN -{ - friend class DbEnv; // friendship needed to cast to base class - friend class DbLogc; // friendship needed to cast to base class -}; - -// -// Memory pool file -// -class _exported DbMpoolFile -{ - friend class DbEnv; - friend class Db; - -public: - int close(u_int32_t flags); - int get(db_pgno_t *pgnoaddr, u_int32_t flags, void *pagep); - int open(const char *file, u_int32_t flags, int mode, size_t pagesize); - int get_transactional(void); - int put(void *pgaddr, u_int32_t flags); - int set(void *pgaddr, u_int32_t flags); - int get_clear_len(u_int32_t *len); - int set_clear_len(u_int32_t len); - int get_fileid(u_int8_t *fileid); - int set_fileid(u_int8_t *fileid); - int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags, int onoff); - int get_ftype(int *ftype); - int set_ftype(int ftype); - int get_lsn_offset(int32_t *offsetp); - int set_lsn_offset(int32_t offset); - int get_maxsize(u_int32_t *gbytes, u_int32_t *bytes); - int set_maxsize(u_int32_t gbytes, u_int32_t bytes); - int get_pgcookie(DBT *dbt); - int set_pgcookie(DBT *dbt); - int get_priority(DB_CACHE_PRIORITY *priorityp); - int set_priority(DB_CACHE_PRIORITY priority); - int sync(); - - virtual DB_MPOOLFILE *get_DB_MPOOLFILE() - { - return imp_; - } - - virtual const DB_MPOOLFILE *get_const_DB_MPOOLFILE() const - { - return imp_; - } - -private: - DB_MPOOLFILE *imp_; - - // We can add data to this class if needed - // since it is implemented via a pointer. - // (see comment at top) - - // Note: use DbEnv::memp_fcreate() to get pointers to a DbMpoolFile, - // and call DbMpoolFile::close() rather than delete to release them. - // - DbMpoolFile(); - - // Shut g++ up. -protected: - virtual ~DbMpoolFile(); - -private: - // no copying - DbMpoolFile(const DbMpoolFile &); - void operator = (const DbMpoolFile &); -}; - -// -// This is filled in and returned by the DbEnv::txn_recover() method. -// -class _exported DbPreplist -{ -public: - DbTxn *txn; - u_int8_t gid[DB_XIDDATASIZE]; -}; - -// -// A sequence record in a database -// -class _exported DbSequence -{ -public: - DbSequence(Db *db, u_int32_t flags); - virtual ~DbSequence(); - - int open(DbTxn *txnid, Dbt *key, u_int32_t flags); - int initial_value(db_seq_t value); - int close(u_int32_t flags); - int remove(DbTxn *txnid, u_int32_t flags); - int stat(DB_SEQUENCE_STAT **sp, u_int32_t flags); - int stat_print(u_int32_t flags); - - int get(DbTxn *txnid, int32_t delta, db_seq_t *retp, u_int32_t flags); - int get_cachesize(int32_t *sizep); - int set_cachesize(int32_t size); - int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags); - int get_range(db_seq_t *minp, db_seq_t *maxp); - int set_range(db_seq_t min, db_seq_t max); - - Db *get_db(); - Dbt *get_key(); - - virtual DB_SEQUENCE *get_DB_SEQUENCE() - { - return imp_; - } - - virtual const DB_SEQUENCE *get_const_DB_SEQUENCE() const - { - return imp_; - } - - static DbSequence* get_DbSequence(DB_SEQUENCE *seq) - { - return (DbSequence *)seq->api_internal; - } - - static const DbSequence* get_const_DbSequence(const DB_SEQUENCE *seq) - { - return (const DbSequence *)seq->api_internal; - } - - // For internal use only. - static DbSequence* wrap_DB_SEQUENCE(DB_SEQUENCE *seq); - -private: - DbSequence(DB_SEQUENCE *seq); - // no copying - DbSequence(const DbSequence &); - DbSequence &operator = (const DbSequence &); - - DB_SEQUENCE *imp_; - DBT key_; -}; - -// -// Transaction -// -class _exported DbTxn -{ - friend class DbEnv; - -public: - int abort(); - int commit(u_int32_t flags); - int discard(u_int32_t flags); - u_int32_t id(); - int prepare(u_int8_t *gid); - int set_timeout(db_timeout_t timeout, u_int32_t flags); - - virtual DB_TXN *get_DB_TXN() - { - return imp_; - } - - virtual const DB_TXN *get_const_DB_TXN() const - { - return imp_; - } - - static DbTxn* get_DbTxn(DB_TXN *txn) - { - return (DbTxn *)txn->api_internal; - } - - static const DbTxn* get_const_DbTxn(const DB_TXN *txn) - { - return (const DbTxn *)txn->api_internal; - } - - // For internal use only. - static DbTxn* wrap_DB_TXN(DB_TXN *txn); - -private: - DB_TXN *imp_; - - // We can add data to this class if needed - // since it is implemented via a pointer. - // (see comment at top) - - // Note: use DbEnv::txn_begin() to get pointers to a DbTxn, - // and call DbTxn::abort() or DbTxn::commit rather than - // delete to release them. - // - DbTxn(); - // For internal use only. - DbTxn(DB_TXN *txn); - virtual ~DbTxn(); - - // no copying - DbTxn(const DbTxn &); - void operator = (const DbTxn &); -}; - -// -// A chunk of data, maybe a key or value. -// -class _exported Dbt : private DBT -{ - friend class Db; - friend class Dbc; - friend class DbEnv; - friend class DbLogc; - friend class DbSequence; - -public: - // key/data - void *get_data() const { return data; } - void set_data(void *value) { data = value; } - - // key/data length - u_int32_t get_size() const { return size; } - void set_size(u_int32_t value) { size = value; } - - // RO: length of user buffer. - u_int32_t get_ulen() const { return ulen; } - void set_ulen(u_int32_t value) { ulen = value; } - - // RO: get/put record length. - u_int32_t get_dlen() const { return dlen; } - void set_dlen(u_int32_t value) { dlen = value; } - - // RO: get/put record offset. - u_int32_t get_doff() const { return doff; } - void set_doff(u_int32_t value) { doff = value; } - - // flags - u_int32_t get_flags() const { return flags; } - void set_flags(u_int32_t value) { flags = value; } - - // Conversion functions - DBT *get_DBT() { return (DBT *)this; } - const DBT *get_const_DBT() const { return (const DBT *)this; } - - static Dbt* get_Dbt(DBT *dbt) { return (Dbt *)dbt; } - static const Dbt* get_const_Dbt(const DBT *dbt) - { return (const Dbt *)dbt; } - - Dbt(void *data, u_int32_t size); - Dbt(); - ~Dbt(); - Dbt(const Dbt &); - Dbt &operator = (const Dbt &); - -private: - // Note: no extra data appears in this class (other than - // inherited from DBT) since we need DBT and Dbt objects - // to have interchangable pointers. - // - // When subclassing this class, remember that callback - // methods like bt_compare, bt_prefix, dup_compare may - // internally manufacture DBT objects (which later are - // cast to Dbt), so such callbacks might receive objects - // not of your subclassed type. -}; - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// multiple key/data/reco iterator classes -// - -// DbMultipleIterator is a shared private base class for the three types -// of bulk-return Iterator; it should never be instantiated directly, -// but it handles the functionality shared by its subclasses. -class _exported DbMultipleIterator -{ -public: - DbMultipleIterator(const Dbt &dbt); -protected: - u_int8_t *data_; - u_int32_t *p_; -}; - -class _exported DbMultipleKeyDataIterator : private DbMultipleIterator -{ -public: - DbMultipleKeyDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(Dbt &key, Dbt &data); -}; - -class _exported DbMultipleRecnoDataIterator : private DbMultipleIterator -{ -public: - DbMultipleRecnoDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(db_recno_t &recno, Dbt &data); -}; - -class _exported DbMultipleDataIterator : private DbMultipleIterator -{ -public: - DbMultipleDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(Dbt &data); -}; - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Exception classes -// - -// Almost any error in the DB library throws a DbException. -// Every exception should be considered an abnormality -// (e.g. bug, misuse of DB, file system error). -// -class _exported DbException : public __DB_STD(exception) -{ -public: - virtual ~DbException() throw(); - DbException(int err); - DbException(const char *description); - DbException(const char *description, int err); - DbException(const char *prefix, const char *description, int err); - int get_errno() const; - virtual const char *what() const throw(); - DbEnv *get_env() const; - void set_env(DbEnv *env); - - DbException(const DbException &); - DbException &operator = (const DbException &); - -private: - void describe(const char *prefix, const char *description); - - char *what_; - int err_; // errno - DbEnv *env_; -}; - -// -// A specific sort of exception that occurs when -// an operation is aborted to resolve a deadlock. -// -class _exported DbDeadlockException : public DbException -{ -public: - virtual ~DbDeadlockException() throw(); - DbDeadlockException(const char *description); - - DbDeadlockException(const DbDeadlockException &); - DbDeadlockException &operator = (const DbDeadlockException &); -}; - -// -// A specific sort of exception that occurs when -// a lock is not granted, e.g. by lock_get or lock_vec. -// Note that the Dbt is only live as long as the Dbt used -// in the offending call. -// -class _exported DbLockNotGrantedException : public DbException -{ -public: - virtual ~DbLockNotGrantedException() throw(); - DbLockNotGrantedException(const char *prefix, db_lockop_t op, - db_lockmode_t mode, const Dbt *obj, const DbLock lock, int index); - DbLockNotGrantedException(const char *description); - - DbLockNotGrantedException(const DbLockNotGrantedException &); - DbLockNotGrantedException &operator = - (const DbLockNotGrantedException &); - - db_lockop_t get_op() const; - db_lockmode_t get_mode() const; - const Dbt* get_obj() const; - DbLock *get_lock() const; - int get_index() const; - -private: - db_lockop_t op_; - db_lockmode_t mode_; - const Dbt *obj_; - DbLock *lock_; - int index_; -}; - -// -// A specific sort of exception that occurs when -// user declared memory is insufficient in a Dbt. -// -class _exported DbMemoryException : public DbException -{ -public: - virtual ~DbMemoryException() throw(); - DbMemoryException(Dbt *dbt); - DbMemoryException(const char *prefix, Dbt *dbt); - - DbMemoryException(const DbMemoryException &); - DbMemoryException &operator = (const DbMemoryException &); - - Dbt *get_dbt() const; -private: - Dbt *dbt_; -}; - -// -// A specific sort of exception that occurs when -// recovery is required before continuing DB activity. -// -class _exported DbRunRecoveryException : public DbException -{ -public: - virtual ~DbRunRecoveryException() throw(); - DbRunRecoveryException(const char *description); - - DbRunRecoveryException(const DbRunRecoveryException &); - DbRunRecoveryException &operator = (const DbRunRecoveryException &); -}; -#endif /* !_DB_CXX_H_ */ diff --git a/db/build_win32/db_deadlock.dsp b/db/build_win32/db_deadlock.dsp deleted file mode 100644 index 9a8993833..000000000 --- a/db/build_win32/db_deadlock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_deadlock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_deadlock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_deadlock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_deadlock.mak" CFG="db_deadlock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_deadlock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_deadlock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_deadlock - Win32 Release" -# Name "db_deadlock - Win32 Debug" -# Name "db_deadlock - Win32 Release Static" -# Name "db_deadlock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_deadlock\db_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_dll.dsp b/db/build_win32/db_dll.dsp deleted file mode 100644 index f09c22f6b..000000000 --- a/db/build_win32/db_dll.dsp +++ /dev/null @@ -1,880 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_dll" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_dll - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_dll.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_dll.mak" CFG="db_dll - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_dll - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_dll - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_dll - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb43.dll" - -!ELSEIF "$(CFG)" == "db_dll - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_CREATE_DLL" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb43d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_dll - Win32 Release" -# Name "db_dll - Win32 Debug" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_verify.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=.\libdb.def -# End Source File -# Begin Source File - -SOURCE=.\libdb.rc -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\aes_method.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\crypto.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\mersenne\mt19937db.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-alg-fst.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-api-fst.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ovfl_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfyutil.c -# End Source File -# Begin Source File - -SOURCE=..\dbm\dbm.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_auto.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_conv.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_dup.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_meta.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_method.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_open.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_page.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_rec.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stat.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_verify.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\hsearch\hsearch.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_auto.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_conv.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_files.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_method.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_open.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_rec.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stat.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_verify.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_auto.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_backup.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_method.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_record.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_region.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stat.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_util.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_dump.dsp b/db/build_win32/db_dump.dsp deleted file mode 100644 index 709ce2471..000000000 --- a/db/build_win32/db_dump.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_dump" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_dump - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_dump.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_dump.mak" CFG="db_dump - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_dump - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_dump - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_dump - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_dump - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_dump - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_dump - Win32 Release" -# Name "db_dump - Win32 Debug" -# Name "db_dump - Win32 Release Static" -# Name "db_dump - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_dump\db_dump.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_int.h b/db/build_win32/db_int.h deleted file mode 100644 index 046e3de5a..000000000 --- a/db/build_win32/db_int.h +++ /dev/null @@ -1,592 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1996-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db_int.in,v 11.155 2004/10/28 16:07:38 ubell Exp $ - */ - -#ifndef _DB_INTERNAL_H_ -#define _DB_INTERNAL_H_ - -/******************************************************* - * System includes, db.h, a few general DB includes. The DB includes are - * here because it's OK if db_int.h includes queue structure declarations. - *******************************************************/ -#ifndef NO_SYSTEM_INCLUDES -#if defined(STDC_HEADERS) || defined(__cplusplus) -#include -#else -#include -#endif -#include -#endif - -#include "db.h" - -#include "dbinc/queue.h" -#include "dbinc/shqueue.h" - -#if defined(__cplusplus) -extern "C" { -#endif - -/******************************************************* - * General purpose constants and macros. - *******************************************************/ -#ifndef UINT16_MAX -#define UINT16_MAX 65535 /* Maximum 16-bit unsigned. */ -#endif -#ifndef UINT32_MAX -#ifdef __STDC__ -#define UINT32_MAX 4294967295U /* Maximum 32-bit unsigned. */ -#else -#define UINT32_MAX 0xffffffff /* Maximum 32-bit unsigned. */ -#endif -#endif - -#if defined(HAVE_LONG_LONG) && defined(HAVE_UNSIGNED_LONG_LONG) -#undef INT64_MAX -#undef INT64_MIN -#undef UINT64_MAX - -#ifdef DB_WIN32 -#define INT64_MAX _I64_MAX -#define INT64_MIN _I64_MIN -#define UINT64_MAX _UI64_MAX - -#define INT64_FMT "%l64d" -#define UINT64_FMT "%l64u" -#else -/* - * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can - * handle 64-bit values, but the system's constants don't include the LL/ULL - * suffix, and so can't be compiled using the 32-bit compiler. - */ -#define INT64_MAX 9223372036854775807LL -#define INT64_MIN (-INT64_MAX-1) -#define UINT64_MAX 18446744073709551615ULL - -#define INT64_FMT "%lld" -#define UINT64_FMT "%llu" -#endif /* DB_WIN32 */ -#endif /* HAVE_LONG_LONG && HAVE_UNSIGNED_LONG_LONG */ - -#define MEGABYTE 1048576 -#define GIGABYTE 1073741824 - -#define MS_PER_SEC 1000 /* Milliseconds in a second. */ -#define USEC_PER_MS 1000 /* Microseconds in a millisecond. */ - -#define RECNO_OOB 0 /* Illegal record number. */ - -/* Test for a power-of-two (tests true for zero, which doesn't matter here). */ -#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0) - -/* Test for valid page sizes. */ -#define DB_MIN_PGSIZE 0x000200 /* Minimum page size (512). */ -#define DB_MAX_PGSIZE 0x010000 /* Maximum page size (65536). */ -#define IS_VALID_PAGESIZE(x) \ - (POWER_OF_TWO(x) && (x) >= DB_MIN_PGSIZE && ((x) <= DB_MAX_PGSIZE)) - -/* Minimum number of pages cached, by default. */ -#define DB_MINPAGECACHE 16 - -/* - * If we are unable to determine the underlying filesystem block size, use - * 8K on the grounds that most OS's use less than 8K for a VM page size. - */ -#define DB_DEF_IOSIZE (8 * 1024) - -/* Align an integer to a specific boundary. */ -#undef DB_ALIGN -#define DB_ALIGN(v, bound) \ - (((v) + (bound) - 1) & ~(((uintmax_t)bound) - 1)) - -/* Increment a pointer to a specific boundary. */ -#undef ALIGNP_INC -#define ALIGNP_INC(p, bound) \ - (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)bound) - 1)) - -/* Decrement a pointer to a specific boundary. */ -#undef ALIGNP_DEC -#define ALIGNP_DEC(p, bound) \ - (void *)((uintptr_t)(p) & ~(((uintptr_t)bound) - 1)) - -/* - * Print an address as a u_long (a u_long is the largest type we can print - * portably). Most 64-bit systems have made longs 64-bits, so this should - * work. - */ -#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p)) - -/* - * Convert a pointer to a small integral value. - * - * The (u_int16_t)(uintptr_t) cast avoids warnings: the (uintptr_t) cast - * converts the value to an integral type, and the (u_int16_t) cast converts - * it to a small integral type so we don't get complaints when we assign the - * final result to an integral type smaller than uintptr_t. - */ -#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p)) -#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p)) - -/* - * There are several on-page structures that are declared to have a number of - * fields followed by a variable length array of items. The structure size - * without including the variable length array or the address of the first of - * those elements can be found using SSZ. - * - * This macro can also be used to find the offset of a structure element in a - * structure. This is used in various places to copy structure elements from - * unaligned memory references, e.g., pointers into a packed page. - * - * There are two versions because compilers object if you take the address of - * an array. - */ -#undef SSZ -#define SSZ(name, field) P_TO_UINT16(&(((name *)0)->field)) - -#undef SSZA -#define SSZA(name, field) P_TO_UINT16(&(((name *)0)->field[0])) - -/* Structure used to print flag values. */ -typedef struct __fn { - u_int32_t mask; /* Flag value. */ - const char *name; /* Flag name. */ -} FN; - -/* Set, clear and test flags. */ -#define FLD_CLR(fld, f) (fld) &= ~(f) -#define FLD_ISSET(fld, f) ((fld) & (f)) -#define FLD_SET(fld, f) (fld) |= (f) -#define F_CLR(p, f) (p)->flags &= ~(f) -#define F_ISSET(p, f) ((p)->flags & (f)) -#define F_SET(p, f) (p)->flags |= (f) -#define LF_CLR(f) ((flags) &= ~(f)) -#define LF_ISSET(f) ((flags) & (f)) -#define LF_SET(f) ((flags) |= (f)) - -/* - * Calculate a percentage. The values can overflow 32-bit integer arithmetic - * so we use floating point. - * - * When calculating a bytes-vs-page size percentage, we're getting the inverse - * of the percentage in all cases, that is, we want 100 minus the percentage we - * calculate. - */ -#define DB_PCT(v, total) \ - ((int)((total) == 0 ? 0 : ((double)(v) * 100) / (total))) -#define DB_PCT_PG(v, total, pgsize) \ - ((int)((total) == 0 ? 0 : \ - 100 - ((double)(v) * 100) / ((total) * (pgsize)))) - -/* - * Structure used for callback message aggregation. - * - * Display values in XXX_stat_print calls. - */ -typedef struct __db_msgbuf { - char *buf; /* Heap allocated buffer. */ - char *cur; /* Current end of message. */ - size_t len; /* Allocated length of buffer. */ -} DB_MSGBUF; -#define DB_MSGBUF_INIT(a) do { \ - (a)->buf = (a)->cur = NULL; \ - (a)->len = 0; \ -} while (0) -#define DB_MSGBUF_FLUSH(dbenv, a) do { \ - if ((a)->buf != NULL) { \ - if ((a)->cur != (a)->buf) \ - __db_msg(dbenv, "%s", (a)->buf); \ - __os_free(dbenv, (a)->buf); \ - DB_MSGBUF_INIT(a); \ - } \ -} while (0) -#define STAT_FMT(msg, fmt, type, v) do { \ - DB_MSGBUF __mb; \ - DB_MSGBUF_INIT(&__mb); \ - __db_msgadd(dbenv, &__mb, fmt, (type)(v)); \ - __db_msgadd(dbenv, &__mb, "\t%s", msg); \ - DB_MSGBUF_FLUSH(dbenv, &__mb); \ -} while (0) -#define STAT_HEX(msg, v) \ - __db_msg(dbenv, "%#lx\t%s", (u_long)(v), msg) -#define STAT_ISSET(msg, p) \ - __db_msg(dbenv, "%sSet\t%s", (p) == NULL ? "!" : " ", msg) -#define STAT_LONG(msg, v) \ - __db_msg(dbenv, "%ld\t%s", (long)(v), msg) -#define STAT_LSN(msg, lsnp) \ - __db_msg(dbenv, "%lu/%lu\t%s", \ - (u_long)(lsnp)->file, (u_long)(lsnp)->offset, msg) -#define STAT_STRING(msg, p) do { \ - const char *__p = p; /* p may be a function call. */ \ - __db_msg(dbenv, "%s\t%s", __p == NULL ? "!Set" : __p, msg); \ -} while (0) -#define STAT_ULONG(msg, v) \ - __db_msg(dbenv, "%lu\t%s", (u_long)(v), msg) - -/******************************************************* - * API return values - *******************************************************/ -/* - * Return values that are OK for each different call. Most calls have a - * standard 'return of 0 is only OK value', but some, like db->get have - * DB_NOTFOUND as a return value, but it really isn't an error. - */ -#define DB_RETOK_STD(ret) ((ret) == 0) -#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) -#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) -#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) -#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) -#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) -#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ - (ret) == DB_REP_ISPERM || \ - (ret) == DB_REP_NEWMASTER || \ - (ret) == DB_REP_NEWSITE || \ - (ret) == DB_REP_NOTPERM || \ - (ret) == DB_REP_STARTUPDONE) - -/* Find a reasonable operation-not-supported error. */ -#ifdef EOPNOTSUPP -#define DB_OPNOTSUP EOPNOTSUPP -#else -#ifdef ENOTSUP -#define DB_OPNOTSUP ENOTSUP -#else -#define DB_OPNOTSUP EINVAL -#endif -#endif - -/******************************************************* - * Files. - *******************************************************/ -/* - * We use 1024 as the maximum path length. It's too hard to figure out what - * the real path length is, as it was traditionally stored in , - * and that file isn't always available. - */ -#undef MAXPATHLEN -#define MAXPATHLEN 1024 - -#define PATH_DOT "." /* Current working directory. */ - /* Path separator character(s). */ -#define PATH_SEPARATOR "\\/:" - -/******************************************************* - * Environment. - *******************************************************/ -/* Type passed to __db_appname(). */ -typedef enum { - DB_APP_NONE=0, /* No type (region). */ - DB_APP_DATA, /* Data file. */ - DB_APP_LOG, /* Log file. */ - DB_APP_TMP /* Temporary file. */ -} APPNAME; - -/* - * CDB_LOCKING CDB product locking. - * CRYPTO_ON Security has been configured. - * LOCKING_ON Locking has been configured. - * LOGGING_ON Logging has been configured. - * MPOOL_ON Memory pool has been configured. - * REP_ON Replication has been configured. - * RPC_ON RPC has been configured. - * TXN_ON Transactions have been configured. - */ -#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_CDB) -#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle != NULL) -#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != NULL) -#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != NULL) -#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NULL) -#define REP_ON(dbenv) ((dbenv)->rep_handle != NULL) -#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL) -#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL) - -/* - * STD_LOCKING Standard locking, that is, locking was configured and CDB - * was not. We do not do locking in off-page duplicate trees, - * so we check for that in the cursor first. - */ -#define STD_LOCKING(dbc) \ - (!F_ISSET(dbc, DBC_OPD) && \ - !CDB_LOCKING((dbc)->dbp->dbenv) && LOCKING_ON((dbc)->dbp->dbenv)) - -/* - * IS_RECOVERING: The system is running recovery. - */ -#define IS_RECOVERING(dbenv) \ - (LOGGING_ON(dbenv) && \ - F_ISSET((DB_LOG *)(dbenv)->lg_handle, DBLOG_RECOVER)) - -/* Initialization methods are often illegal before/after open is called. */ -#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \ - if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - return (__db_mi_open(dbenv, name, 1)); -#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \ - if (!F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - return (__db_mi_open(dbenv, name, 0)); - -/* We're not actually user hostile, honest. */ -#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) \ - if (handle == NULL) \ - return (__db_env_config(dbenv, i, flags)); -#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags) \ - if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) - -/******************************************************* - * Database Access Methods. - *******************************************************/ -/* - * DB_IS_THREADED -- - * The database handle is free-threaded (was opened with DB_THREAD). - */ -#define DB_IS_THREADED(dbp) \ - ((dbp)->mutexp != NULL) - -/* Initialization methods are often illegal before/after open is called. */ -#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \ - if (F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ - return (__db_mi_open((dbp)->dbenv, name, 1)); -#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \ - if (!F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ - return (__db_mi_open((dbp)->dbenv, name, 0)); -/* Some initialization methods are illegal if environment isn't local. */ -#define DB_ILLEGAL_IN_ENV(dbp, name) \ - if (!F_ISSET((dbp)->dbenv, DB_ENV_DBLOCAL)) \ - return (__db_mi_env((dbp)->dbenv, name)); -#define DB_ILLEGAL_METHOD(dbp, flags) { \ - int __ret; \ - if ((__ret = __dbh_am_chk(dbp, flags)) != 0) \ - return (__ret); \ -} - -/* - * Common DBC->internal fields. Each access method adds additional fields - * to this list, but the initial fields are common. - */ -#define __DBC_INTERNAL \ - DBC *opd; /* Off-page duplicate cursor. */\ - \ - void *page; /* Referenced page. */ \ - db_pgno_t root; /* Tree root. */ \ - db_pgno_t pgno; /* Referenced page number. */ \ - db_indx_t indx; /* Referenced key item index. */\ - \ - DB_LOCK lock; /* Cursor lock. */ \ - db_lockmode_t lock_mode; /* Lock mode. */ - -struct __dbc_internal { - __DBC_INTERNAL -}; - -/* Actions that __db_master_update can take. */ -typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_action; - -/* - * Access-method-common macro for determining whether a cursor - * has been initialized. - */ -#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno != PGNO_INVALID) - -/* Free the callback-allocated buffer, if necessary, hanging off of a DBT. */ -#define FREE_IF_NEEDED(sdbp, dbt) \ - if (F_ISSET((dbt), DB_DBT_APPMALLOC)) { \ - __os_ufree((sdbp)->dbenv, (dbt)->data); \ - F_CLR((dbt), DB_DBT_APPMALLOC); \ - } - -/* - * Use memory belonging to object "owner" to return the results of - * any no-DBT-flag get ops on cursor "dbc". - */ -#define SET_RET_MEM(dbc, owner) \ - do { \ - (dbc)->rskey = &(owner)->my_rskey; \ - (dbc)->rkey = &(owner)->my_rkey; \ - (dbc)->rdata = &(owner)->my_rdata; \ - } while (0) - -/* Use the return-data memory src is currently set to use in dest as well. */ -#define COPY_RET_MEM(src, dest) \ - do { \ - (dest)->rskey = (src)->rskey; \ - (dest)->rkey = (src)->rkey; \ - (dest)->rdata = (src)->rdata; \ - } while (0) - -/* Reset the returned-memory pointers to their defaults. */ -#define RESET_RET_MEM(dbc) \ - do { \ - (dbc)->rskey = &(dbc)->my_rskey; \ - (dbc)->rkey = &(dbc)->my_rkey; \ - (dbc)->rdata = &(dbc)->my_rdata; \ - } while (0) - -/******************************************************* - * Mpool. - *******************************************************/ -/* - * File types for DB access methods. Negative numbers are reserved to DB. - */ -#define DB_FTYPE_SET -1 /* Call pgin/pgout functions. */ -#define DB_FTYPE_NOTSET 0 /* Don't call... */ - -/* Structure used as the DB pgin/pgout pgcookie. */ -typedef struct __dbpginfo { - size_t db_pagesize; /* Underlying page size. */ - u_int32_t flags; /* Some DB_AM flags needed. */ - DBTYPE type; /* DB type */ -} DB_PGINFO; - -/******************************************************* - * Log. - *******************************************************/ -/* Initialize an LSN to 'zero'. */ -#define ZERO_LSN(LSN) do { \ - (LSN).file = 0; \ - (LSN).offset = 0; \ -} while (0) -#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN).offset == 0) - -#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN).offset == 0) -#define INIT_LSN(LSN) do { \ - (LSN).file = 1; \ - (LSN).offset = 0; \ -} while (0) - -#define MAX_LSN(LSN) do { \ - (LSN).file = UINT32_MAX; \ - (LSN).offset = UINT32_MAX; \ -} while (0) -#define IS_MAX_LSN(LSN) \ - ((LSN).file == UINT32_MAX && (LSN).offset == UINT32_MAX) - -/* If logging is turned off, smash the lsn. */ -#define LSN_NOT_LOGGED(LSN) do { \ - (LSN).file = 0; \ - (LSN).offset = 1; \ -} while (0) -#define IS_NOT_LOGGED_LSN(LSN) \ - ((LSN).file == 0 && (LSN).offset == 1) - -/******************************************************* - * Txn. - *******************************************************/ -#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSET((C)->txn, TXN_NOWAIT)) -#define NOWAIT_FLAG(txn) \ - ((txn) != NULL && F_ISSET((txn), TXN_NOWAIT) ? DB_LOCK_NOWAIT : 0) -#define IS_SUBTRANSACTION(txn) \ - ((txn) != NULL && (txn)->parent != NULL) - -/******************************************************* - * Crypto. - *******************************************************/ -#define DB_IV_BYTES 16 /* Bytes per IV */ -#define DB_MAC_KEY 20 /* Bytes per MAC checksum */ - -/******************************************************* - * Secondaries over RPC. - *******************************************************/ -#ifdef CONFIG_TEST -/* - * These are flags passed to DB->associate calls by the Tcl API if running - * over RPC. The RPC server will mask out these flags before making the real - * DB->associate call. - * - * These flags must coexist with the valid flags to DB->associate (currently - * DB_AUTO_COMMIT and DB_CREATE). DB_AUTO_COMMIT is in the group of - * high-order shared flags (0xff000000), and DB_CREATE is in the low-order - * group (0x00000fff), so we pick a range in between. - */ -#define DB_RPC2ND_MASK 0x00f00000 /* Reserved bits. */ - -#define DB_RPC2ND_REVERSEDATA 0x00100000 /* callback_n(0) _s_reversedata. */ -#define DB_RPC2ND_NOOP 0x00200000 /* callback_n(1) _s_noop */ -#define DB_RPC2ND_CONCATKEYDATA 0x00300000 /* callback_n(2) _s_concatkeydata */ -#define DB_RPC2ND_CONCATDATAKEY 0x00400000 /* callback_n(3) _s_concatdatakey */ -#define DB_RPC2ND_REVERSECONCAT 0x00500000 /* callback_n(4) _s_reverseconcat */ -#define DB_RPC2ND_TRUNCDATA 0x00600000 /* callback_n(5) _s_truncdata */ -#define DB_RPC2ND_CONSTANT 0x00700000 /* callback_n(6) _s_constant */ -#define DB_RPC2ND_GETZIP 0x00800000 /* sj_getzip */ -#define DB_RPC2ND_GETNAME 0x00900000 /* sj_getname */ -#endif - -/******************************************************* - * Forward structure declarations. - *******************************************************/ -struct __db_reginfo_t; typedef struct __db_reginfo_t REGINFO; -struct __db_txnhead; typedef struct __db_txnhead DB_TXNHEAD; -struct __db_txnlist; typedef struct __db_txnlist DB_TXNLIST; -struct __vrfy_childinfo; typedef struct __vrfy_childinfo VRFY_CHILDINFO; -struct __vrfy_dbinfo; typedef struct __vrfy_dbinfo VRFY_DBINFO; -struct __vrfy_pageinfo; typedef struct __vrfy_pageinfo VRFY_PAGEINFO; - -#if defined(__cplusplus) -} -#endif - -/******************************************************* - * Remaining general DB includes. - *******************************************************/ - - -#include "dbinc/globals.h" -#include "dbinc/debug.h" -#include "dbinc/mutex.h" -#include "dbinc/region.h" -#include "dbinc_auto/mutex_ext.h" /* XXX: Include after region.h. */ -#include "dbinc_auto/env_ext.h" -#include "dbinc/os.h" -#include "dbinc/rep.h" -#include "dbinc_auto/clib_ext.h" -#include "dbinc_auto/common_ext.h" - -/******************************************************* - * Remaining Log. - * These need to be defined after the general includes - * because they need rep.h from above. - *******************************************************/ -/* - * Test if the environment is currently logging changes. If we're in recovery - * or we're a replication client, we don't need to log changes because they're - * already in the log, even though we have a fully functional log system. - */ -#define DBENV_LOGGING(dbenv) \ - (LOGGING_ON(dbenv) && !IS_REP_CLIENT(dbenv) && \ - (!IS_RECOVERING(dbenv))) - -/* - * Test if we need to log a change. By default, we don't log operations without - * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. - * This is because we want to get log records for read/write operations, and, if - * we trying to debug something, more information is always better. - * - * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; - * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING - * is true. - * - * We explicitly use LOGGING_ON/IS_REP_CLIENT here because we don't want to pull - * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and - * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. - */ -#if defined(DIAGNOSTIC) || defined(DEBUG_ROP) || defined(DEBUG_WOP) -#define DBC_LOGGING(dbc) \ - (LOGGING_ON((dbc)->dbp->dbenv) && \ - !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) -#else -#define DBC_LOGGING(dbc) \ - ((dbc)->txn != NULL && LOGGING_ON((dbc)->dbp->dbenv) && \ - !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) -#endif - -#endif /* !_DB_INTERNAL_H_ */ diff --git a/db/build_win32/db_java.dsp b/db/build_win32/db_java.dsp deleted file mode 100644 index 535774353..000000000 --- a/db/build_win32/db_java.dsp +++ /dev/null @@ -1,132 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_java" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_java - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_java.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_java.mak" CFG="db_java - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_java - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_java - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_java - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_java43.dll" -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Release\libdb_java43.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -O -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -O -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ELSEIF "$(CFG)" == "db_java - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb_java43d.dll" /fixed:no -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Debug\libdb_java43d.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -g -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -g -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ENDIF - -# Begin Target - -# Name "db_java - Win32 Release" -# Name "db_java - Win32 Debug" -# Begin Source File - -SOURCE=..\libdb_java\db_java_wrap.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_java_xa.dsp b/db/build_win32/db_java_xa.dsp deleted file mode 100644 index 9c700ffee..000000000 --- a/db/build_win32/db_java_xa.dsp +++ /dev/null @@ -1,85 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_java_xa" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) External Target" 0x0106 - -CFG=db_java_xa - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_java_xa.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_java_xa.mak" CFG="db_java_xa - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_java_xa - Win32 Release" (based on "Win32 (x86) External Target") -!MESSAGE "db_java_xa - Win32 Debug" (based on "Win32 (x86) External Target") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "db_java_xa - Win32 Release" - -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Cmd_Line "NMAKE /f db_java_xaj.mak" -# PROP BASE Rebuild_Opt "/a" -# PROP BASE Target_File "db_java_xaj.exe" -# PROP BASE Bsc_Name "db_java_xaj.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Cmd_Line "NMAKE /f db_java_xaj.mak Release/dbxa.jar" -# PROP Rebuild_Opt "/a" -# PROP Target_File "Release/dbxa.jar" -# PROP Bsc_Name "" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_java_xa - Win32 Debug" - -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Cmd_Line "NMAKE /f db_java_xaj.mak" -# PROP BASE Rebuild_Opt "/a" -# PROP BASE Target_File "db_java_xaj.exe" -# PROP BASE Bsc_Name "db_java_xaj.bsc" -# PROP BASE Target_Dir "" -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Cmd_Line "NMAKE /f db_java_xaj.mak Debug/dbxa.jar" -# PROP Rebuild_Opt "/a" -# PROP Target_File "Debug/dbxa.jar" -# PROP Bsc_Name "" -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "db_java_xa - Win32 Release" -# Name "db_java_xa - Win32 Debug" - -!IF "$(CFG)" == "db_java_xa - Win32 Release" - -!ELSEIF "$(CFG)" == "db_java_xa - Win32 Debug" - -!ENDIF - -# Begin Source File - -SOURCE=.\db_java_xaj.mak -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_java_xaj.mak b/db/build_win32/db_java_xaj.mak deleted file mode 100644 index c2dbc920d..000000000 --- a/db/build_win32/db_java_xaj.mak +++ /dev/null @@ -1,21 +0,0 @@ -JAVA_XADIR=../java/src/com/sleepycat/db/xa - -JAVA_XASRCS=\ - $(JAVA_XADIR)/DbXAResource.java \ - $(JAVA_XADIR)/DbXid.java - -Release/dbxa.jar : $(JAVA_XASRCS) - @echo compiling Berkeley DB XA classes - @javac -g -d ./Release/classes -classpath "$(CLASSPATH);./Release/classes" $(JAVA_XASRCS) - @echo creating jar file - @cd .\Release\classes - @jar cf ../dbxa.jar com\sleepycat\db\xa\*.class - @echo Java XA build finished - -Debug/dbxa.jar : $(JAVA_XASRCS) - @echo compiling Berkeley DB XA classes - @javac -g -d ./Debug/classes -classpath "$(CLASSPATH);./Debug/classes" $(JAVA_XASRCS) - @echo creating jar file - @cd .\Debug\classes - @jar cf ../dbxa.jar com\sleepycat\db\xa\*.class - @echo Java XA build finished diff --git a/db/build_win32/db_lib.dsp b/db/build_win32/db_lib.dsp deleted file mode 100644 index a7fb41579..000000000 --- a/db/build_win32/db_lib.dsp +++ /dev/null @@ -1,92 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_lib" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Generic Project" 0x010a - -CFG=db_lib - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_lib.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_lib.mak" CFG="db_lib - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_lib - Win32 Release" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Debug" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Release Static" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Debug Static" (based on "Win32 (x86) Generic Project") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "db_lib - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_Static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_Static" -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "db_lib - Win32 Release" -# Name "db_lib - Win32 Debug" -# Name "db_lib - Win32 Release Static" -# Name "db_lib - Win32 Debug Static" -# End Target -# End Project diff --git a/db/build_win32/db_load.dsp b/db/build_win32/db_load.dsp deleted file mode 100644 index 277b02b71..000000000 --- a/db/build_win32/db_load.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_load" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_load - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_load.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_load.mak" CFG="db_load - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_load - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_load - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_load - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_load - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_load - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_load - Win32 Release" -# Name "db_load - Win32 Debug" -# Name "db_load - Win32 Release Static" -# Name "db_load - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_load\db_load.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_perf.dsp b/db/build_win32/db_perf.dsp deleted file mode 100644 index 2e2617d61..000000000 --- a/db/build_win32/db_perf.dsp +++ /dev/null @@ -1,224 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_perf" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_perf - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_perf.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_perf.mak" CFG="db_perf - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_perf - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_perf - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_perf - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_perf - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_perf - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_perf - Win32 Release" -# Name "db_perf - Win32 Debug" -# Name "db_perf - Win32 Release Static" -# Name "db_perf - Win32 Debug Static" -# Begin Source File - -SOURCE=..\test_perf\db_perf.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_checkpoint.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_config.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_dbs.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_dead.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_debug.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_file.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_key.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_log.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_misc.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_op.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_parse.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_rand.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_spawn.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_stat.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_sync.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_thread.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_txn.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_util.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_printlog.dsp b/db/build_win32/db_printlog.dsp deleted file mode 100644 index 7ca7fec5f..000000000 --- a/db/build_win32/db_printlog.dsp +++ /dev/null @@ -1,184 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_printlog" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_printlog - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_printlog.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_printlog.mak" CFG="db_printlog - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_printlog - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_printlog - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_printlog - Win32 Release" -# Name "db_printlog - Win32 Debug" -# Name "db_printlog - Win32 Release Static" -# Name "db_printlog - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\btree_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db_printlog\db_printlog.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_autop.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_autop.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_autop.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_autop.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_autop.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_autop.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_recover.dsp b/db/build_win32/db_recover.dsp deleted file mode 100644 index e41a41f69..000000000 --- a/db/build_win32/db_recover.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_recover" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_recover - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_recover.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_recover.mak" CFG="db_recover - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_recover - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_recover - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_recover - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_recover - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_recover - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_recover - Win32 Release" -# Name "db_recover - Win32 Debug" -# Name "db_recover - Win32 Release Static" -# Name "db_recover - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_recover\db_recover.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_small.dsp b/db/build_win32/db_small.dsp deleted file mode 100644 index f82b0b08f..000000000 --- a/db/build_win32/db_small.dsp +++ /dev/null @@ -1,720 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_small" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=db_small - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_small.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_small.mak" CFG="db_small - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_small - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "db_small - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_small - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_small" -# PROP BASE Intermediate_Dir "Release_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_small" -# PROP Intermediate_Dir "Release_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_small/libdb43s.lib" -# ADD LIB32 /nologo /out:"Release_small/libdb43s.lib" - -!ELSEIF "$(CFG)" == "db_small - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_small" -# PROP BASE Intermediate_Dir "Debug_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_small" -# PROP Intermediate_Dir "Debug_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_small/libdb43sd.lib" -# ADD LIB32 /nologo /out:"Debug_small/libdb43sd.lib" - -!ENDIF - -# Begin Target - -# Name "db_small - Win32 Release Static" -# Name "db_small - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\crypto_stub.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy_stub.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stub.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stub.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stub.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_stat.dsp b/db/build_win32/db_stat.dsp deleted file mode 100644 index 5397b52b4..000000000 --- a/db/build_win32/db_stat.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_stat" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_stat - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_stat.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_stat.mak" CFG="db_stat - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_stat - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_stat - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_stat - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_stat - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_stat - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_stat - Win32 Release" -# Name "db_stat - Win32 Debug" -# Name "db_stat - Win32 Release Static" -# Name "db_stat - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_stat\db_stat.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_static.dsp b/db/build_win32/db_static.dsp deleted file mode 100644 index 063db5791..000000000 --- a/db/build_win32/db_static.dsp +++ /dev/null @@ -1,864 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_static" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=db_static - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_static.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_static.mak" CFG="db_static - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_static - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "db_static - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_static - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb43s.lib" -# ADD LIB32 /nologo /out:"Release_static/libdb43s.lib" - -!ELSEIF "$(CFG)" == "db_static - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb43sd.lib" -# ADD LIB32 /nologo /out:"Debug_static/libdb43sd.lib" - -!ENDIF - -# Begin Target - -# Name "db_static - Win32 Release Static" -# Name "db_static - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_verify.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\aes_method.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\crypto.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\mersenne\mt19937db.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-alg-fst.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-api-fst.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ovfl_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfyutil.c -# End Source File -# Begin Source File - -SOURCE=..\dbm\dbm.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_auto.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_conv.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_dup.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_meta.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_method.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_open.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_page.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_rec.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stat.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_verify.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\hsearch\hsearch.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_auto.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_conv.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_files.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_method.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_open.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_rec.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stat.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_verify.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_auto.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_backup.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_method.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_record.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_region.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stat.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_util.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_tcl.dsp b/db/build_win32/db_tcl.dsp deleted file mode 100644 index 665475e50..000000000 --- a/db/build_win32/db_tcl.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_tcl" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_tcl - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_tcl.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_tcl.mak" CFG="db_tcl - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_tcl - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_tcl - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_tcl - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_TCL_SUPPORT" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 Release/libdb43.lib tcl84.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_tcl43.dll" - -!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_TCL_SUPPORT" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib tcl84g.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb_tcl43d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_tcl - Win32 Release" -# Name "db_tcl - Win32 Debug" -# Begin Source File - -SOURCE=.\libdb_tcl.def -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_compat.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_db.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_db_pkg.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_dbcursor.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_env.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_internal.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_lock.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_log.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_mp.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_rep.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_seq.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_txn.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_util.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_test.dsp b/db/build_win32/db_test.dsp deleted file mode 100644 index 457b00cde..000000000 --- a/db/build_win32/db_test.dsp +++ /dev/null @@ -1,100 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_test" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_test - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_test.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_test.mak" CFG="db_test - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_test - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_test - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_test - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Release\*.exe . -# End Special Build Tool - -!ELSEIF "$(CFG)" == "db_test - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /out:"Debug/dbkill.exe" /fixed:no -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Debug\*.exe . -# End Special Build Tool - -!ENDIF - -# Begin Target - -# Name "db_test - Win32 Release" -# Name "db_test - Win32 Debug" -# Begin Source File - -SOURCE=.\dbkill.cpp -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_test.src b/db/build_win32/db_test.src deleted file mode 100644 index 360c19dc2..000000000 --- a/db/build_win32/db_test.src +++ /dev/null @@ -1,97 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:I386 -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Release\*.exe . -# End Special Build Tool - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /out:"Debug/dbkill.exe" /fixed:no -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Debug\*.exe . -# End Special Build Tool - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/db_upgrade.dsp b/db/build_win32/db_upgrade.dsp deleted file mode 100644 index e5c49aac3..000000000 --- a/db/build_win32/db_upgrade.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_upgrade" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_upgrade - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_upgrade.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_upgrade.mak" CFG="db_upgrade - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_upgrade - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_upgrade - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_upgrade - Win32 Release" -# Name "db_upgrade - Win32 Debug" -# Name "db_upgrade - Win32 Release Static" -# Name "db_upgrade - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_upgrade\db_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/db_verify.dsp b/db/build_win32/db_verify.dsp deleted file mode 100644 index 09eb3d18a..000000000 --- a/db/build_win32/db_verify.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_verify" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_verify - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_verify.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_verify.mak" CFG="db_verify - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_verify - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_verify - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_verify - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_verify - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "db_verify - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_verify - Win32 Release" -# Name "db_verify - Win32 Debug" -# Name "db_verify - Win32 Release Static" -# Name "db_verify - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_verify\db_verify.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/dbkill.cpp b/db/build_win32/dbkill.cpp deleted file mode 100644 index 7be76135c..000000000 --- a/db/build_win32/dbkill.cpp +++ /dev/null @@ -1,131 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1999-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: dbkill.cpp,v 11.9 2004/01/28 03:35:52 bostic Exp $ - */ -/* - * Kill - - * Simulate Unix kill on Windows/NT and Windows/9X. - * This good enough to support the Berkeley DB test suite, - * but may be missing some favorite features. - * - * Would have used MKS kill, but it didn't seem to work well - * on Win/9X. Cygnus kill works within the Gnu/Cygnus environment - * (where processes are given small pids, with presumably a translation - * table between small pids and actual process handles), but our test - * environment, via Tcl, does not use the Cygnus environment. - * - * Compile this and install it as c:/tools/kill.exe (or as indicated - * by build_win32/include.tcl ). - */ - -#include -#include -#include -#include - -/* - * Like atol, with specified base. Would use stdlib, but - * strtol("0xFFFF1234", NULL, 16) returns 0x7FFFFFFF and - * strtol("4294712487", NULL, 16) returns 0x7FFFFFFF w/ VC++ - */ -long -myatol(char *s, int base) -{ - long result = 0; - char ch; - int sign = 1; /* + */ - if (base == 0) - base = 10; - if (base != 10 && base != 16) - return LONG_MAX; - while ((ch = *s++) != '\0') { - if (ch == '-') { - sign = -sign; - } - else if (ch >= '0' && ch <= '9') { - result = result * base + (ch - '0'); - } - else if (ch == 'x' || ch == 'X') { - /* Allow leading 0x..., and switch to base 16 */ - base = 16; - } - else if (base == 16 && ch >= 'a' && ch <= 'f') { - result = result * base + (ch - 'a' + 10); - } - else if (base == 16 && ch >= 'A' && ch <= 'F') { - result = result * base + (ch - 'A' + 10); - } - else { - if (sign > 1) - return LONG_MAX; - else - return LONG_MIN; - } - } - return sign * result; -} - -void -usage_exit() -{ - fprintf(stderr, "Usage: kill [ -sig ] pid\n"); - fprintf(stderr, " for win32, sig must be or 0, 15 (TERM)\n"); - exit(EXIT_FAILURE); -} - -int -main(int argc, char **argv) -{ - HANDLE hProcess ; - DWORD accessflag; - long pid; - int sig = 15; - - if (argc > 2) { - if (argv[1][0] != '-') - usage_exit(); - - if (strcmp(argv[1], "-TERM") == 0) - sig = 15; - else { - /* currently sig is more or less ignored, - * we only care if it is zero or not - */ - sig = atoi(&argv[1][1]); - if (sig < 0) - usage_exit(); - } - argc--; - argv++; - } - if (argc < 2) - usage_exit(); - - pid = myatol(argv[1], 10); - /*printf("pid = %ld (0x%lx) (command line %s)\n", pid, pid, argv[1]);*/ - if (pid == LONG_MAX || pid == LONG_MIN) - usage_exit(); - - if (sig == 0) - accessflag = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ; - else - accessflag = STANDARD_RIGHTS_REQUIRED | PROCESS_TERMINATE; - hProcess = OpenProcess(accessflag, FALSE, pid); - if (hProcess == NULL) { - fprintf(stderr, "dbkill: %s: no such process\n", argv[1]); - exit(EXIT_FAILURE); - } - if (sig == 0) - exit(EXIT_SUCCESS); - if (!TerminateProcess(hProcess, 99)) { - DWORD err = GetLastError(); - fprintf(stderr, - "dbkill: cannot kill process: error %d (0x%lx)\n", err, err); - exit(EXIT_FAILURE); - } - return EXIT_SUCCESS; -} diff --git a/db/build_win32/dynamic_dsp.src b/db/build_win32/dynamic_dsp.src deleted file mode 100644 index ff4b431d5..000000000 --- a/db/build_win32/dynamic_dsp.src +++ /dev/null @@ -1,93 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_CREATE_DLL" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/ex_access.dsp b/db/build_win32/ex_access.dsp deleted file mode 100644 index 09c1ad172..000000000 --- a/db/build_win32/ex_access.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_access" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_access - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_access.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_access.mak" CFG="ex_access - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_access - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_access - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_access - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_access - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_access - Win32 Release" -# Name "ex_access - Win32 Debug" -# Name "ex_access - Win32 Release Static" -# Name "ex_access - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_access.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_btrec.dsp b/db/build_win32/ex_btrec.dsp deleted file mode 100644 index 6cbb91071..000000000 --- a/db/build_win32/ex_btrec.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_btrec" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_btrec - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_btrec.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_btrec.mak" CFG="ex_btrec - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_btrec - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_btrec - Win32 Release" -# Name "ex_btrec - Win32 Debug" -# Name "ex_btrec - Win32 Release Static" -# Name "ex_btrec - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_btrec.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_env.dsp b/db/build_win32/ex_env.dsp deleted file mode 100644 index 5d6176014..000000000 --- a/db/build_win32/ex_env.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_env" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_env - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_env.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_env.mak" CFG="ex_env - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_env - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_env - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_env - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_env - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_env - Win32 Release" -# Name "ex_env - Win32 Debug" -# Name "ex_env - Win32 Release Static" -# Name "ex_env - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_env.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_lock.dsp b/db/build_win32/ex_lock.dsp deleted file mode 100644 index 3cb1dc170..000000000 --- a/db/build_win32/ex_lock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_lock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_lock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_lock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_lock.mak" CFG="ex_lock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_lock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_lock - Win32 Release" -# Name "ex_lock - Win32 Debug" -# Name "ex_lock - Win32 Release Static" -# Name "ex_lock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_lock.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_mpool.dsp b/db/build_win32/ex_mpool.dsp deleted file mode 100644 index 27dfd5e93..000000000 --- a/db/build_win32/ex_mpool.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_mpool" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_mpool - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_mpool.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_mpool.mak" CFG="ex_mpool - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_mpool - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_mpool - Win32 Release" -# Name "ex_mpool - Win32 Debug" -# Name "ex_mpool - Win32 Release Static" -# Name "ex_mpool - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_mpool.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_repquote.dsp b/db/build_win32/ex_repquote.dsp deleted file mode 100644 index 76ec321c0..000000000 --- a/db/build_win32/ex_repquote.dsp +++ /dev/null @@ -1,164 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_repquote" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_repquote - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_repquote.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_repquote.mak" CFG="ex_repquote - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_repquote - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_repquote - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib ws2_32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib ws2_32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib ws2_32.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_repquote - Win32 Release" -# Name "ex_repquote - Win32 Debug" -# Name "ex_repquote - Win32 Release Static" -# Name "ex_repquote - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_client.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_main.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_master.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_net.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_util.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_repquote.src b/db/build_win32/ex_repquote.src deleted file mode 100644 index dfcdd4d04..000000000 --- a/db/build_win32/ex_repquote.src +++ /dev/null @@ -1,145 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib ws2_32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib ws2_32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib ws2_32.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/ex_tpcb.dsp b/db/build_win32/ex_tpcb.dsp deleted file mode 100644 index d8029a6dc..000000000 --- a/db/build_win32/ex_tpcb.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_tpcb" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_tpcb - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_tpcb.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_tpcb.mak" CFG="ex_tpcb - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_tpcb - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_tpcb - Win32 Release" -# Name "ex_tpcb - Win32 Debug" -# Name "ex_tpcb - Win32 Release Static" -# Name "ex_tpcb - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_tpcb.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_access.dsp b/db/build_win32/excxx_access.dsp deleted file mode 100644 index a36c3f648..000000000 --- a/db/build_win32/excxx_access.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_access" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_access - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_access.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_access.mak" CFG="excxx_access - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_access - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_access - Win32 Release" -# Name "excxx_access - Win32 Debug" -# Name "excxx_access - Win32 Release Static" -# Name "excxx_access - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\AccessExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_btrec.dsp b/db/build_win32/excxx_btrec.dsp deleted file mode 100644 index 12f0c106d..000000000 --- a/db/build_win32/excxx_btrec.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_btrec" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_btrec - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_btrec.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_btrec.mak" CFG="excxx_btrec - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_btrec - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_btrec - Win32 Release" -# Name "excxx_btrec - Win32 Debug" -# Name "excxx_btrec - Win32 Release Static" -# Name "excxx_btrec - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\BtRecExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_env.dsp b/db/build_win32/excxx_env.dsp deleted file mode 100644 index ae1b2986f..000000000 --- a/db/build_win32/excxx_env.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_env" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_env - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_env.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_env.mak" CFG="excxx_env - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_env - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_env - Win32 Release" -# Name "excxx_env - Win32 Debug" -# Name "excxx_env - Win32 Release Static" -# Name "excxx_env - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\EnvExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_lock.dsp b/db/build_win32/excxx_lock.dsp deleted file mode 100644 index 7bf8aadcb..000000000 --- a/db/build_win32/excxx_lock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_lock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_lock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_lock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_lock.mak" CFG="excxx_lock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_lock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_lock - Win32 Release" -# Name "excxx_lock - Win32 Debug" -# Name "excxx_lock - Win32 Release Static" -# Name "excxx_lock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\LockExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_mpool.dsp b/db/build_win32/excxx_mpool.dsp deleted file mode 100644 index 48172fbf3..000000000 --- a/db/build_win32/excxx_mpool.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_mpool" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_mpool - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_mpool.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_mpool.mak" CFG="excxx_mpool - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_mpool - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_mpool - Win32 Release" -# Name "excxx_mpool - Win32 Debug" -# Name "excxx_mpool - Win32 Release Static" -# Name "excxx_mpool - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\MpoolExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/excxx_tpcb.dsp b/db/build_win32/excxx_tpcb.dsp deleted file mode 100644 index 6a734fdfc..000000000 --- a/db/build_win32/excxx_tpcb.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_tpcb" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_tpcb - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_tpcb.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_tpcb.mak" CFG="excxx_tpcb - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_tpcb - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:I386 - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_tpcb - Win32 Release" -# Name "excxx_tpcb - Win32 Debug" -# Name "excxx_tpcb - Win32 Release Static" -# Name "excxx_tpcb - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\TpcbExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win32/include.tcl b/db/build_win32/include.tcl deleted file mode 100644 index fd0e69f2a..000000000 --- a/db/build_win32/include.tcl +++ /dev/null @@ -1,20 +0,0 @@ -# Automatically built by dist/s_test; may require local editing. - -set tclsh_path SET_YOUR_TCLSH_PATH -set tcllib ./Debug/libdb_tcl43d.dll - -set src_root .. -set test_path ../test -set je_root ../../je - -global testdir -set testdir ./TESTDIR - -global dict -global util_path - -global is_hp_test -global is_qnx_test -global is_windows_test - -set KILL ./dbkill.exe diff --git a/db/build_win32/java_dsp.src b/db/build_win32/java_dsp.src deleted file mode 100644 index 521800c17..000000000 --- a/db/build_win32/java_dsp.src +++ /dev/null @@ -1,129 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Release\libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -O -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -O -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Debug\libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -g -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -g -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/libdb.def b/db/build_win32/libdb.def deleted file mode 100644 index f519ad543..000000000 --- a/db/build_win32/libdb.def +++ /dev/null @@ -1,171 +0,0 @@ -; DO NOT EDIT: automatically built by dist/s_win32. - -EXPORTS - db_create @1 - db_env_create @2 - db_sequence_create @3 - db_strerror @4 - db_version @5 - db_xa_switch @6 - log_compare @7 - db_env_set_func_close @8 - db_env_set_func_dirfree @9 - db_env_set_func_dirlist @10 - db_env_set_func_exists @11 - db_env_set_func_free @12 - db_env_set_func_fsync @13 - db_env_set_func_ftruncate @14 - db_env_set_func_ioinfo @15 - db_env_set_func_malloc @16 - db_env_set_func_map @17 - db_env_set_func_open @18 - db_env_set_func_pread @19 - db_env_set_func_pwrite @20 - db_env_set_func_read @21 - db_env_set_func_realloc @22 - db_env_set_func_rename @23 - db_env_set_func_seek @24 - db_env_set_func_sleep @25 - db_env_set_func_unlink @26 - db_env_set_func_unmap @27 - db_env_set_func_write @28 - db_env_set_func_yield @29 - __db_add_recovery @30 - __db_dbm_close @31 - __db_dbm_delete @32 - __db_dbm_fetch @33 - __db_dbm_firstkey @34 - __db_dbm_init @35 - __db_dbm_nextkey @36 - __db_dbm_store @37 - __db_get_flags_fn @38 - __db_get_seq_flags_fn @39 - __db_hcreate @40 - __db_hdestroy @41 - __db_hsearch @42 - __db_loadme @43 - __db_ndbm_clearerr @44 - __db_ndbm_close @45 - __db_ndbm_delete @46 - __db_ndbm_dirfno @47 - __db_ndbm_error @48 - __db_ndbm_fetch @49 - __db_ndbm_firstkey @50 - __db_ndbm_nextkey @51 - __db_ndbm_open @52 - __db_ndbm_pagfno @53 - __db_ndbm_rdonly @54 - __db_ndbm_store @55 - __db_panic @56 - __db_r_attach @57 - __db_r_detach @58 - __db_win32_mutex_init @59 - __db_win32_mutex_lock @60 - __db_win32_mutex_unlock @61 - __ham_func2 @62 - __ham_func3 @63 - __ham_func4 @64 - __ham_func5 @65 - __ham_test @66 - __lock_id_set @67 - __os_calloc @68 - __os_closehandle @69 - __os_free @70 - __os_ioinfo @71 - __os_malloc @72 - __os_open @73 - __os_openhandle @74 - __os_read @75 - __os_realloc @76 - __os_strdup @77 - __os_umalloc @78 - __os_write @79 - __txn_id_set @80 - __bam_adj_read @81 - __bam_cadjust_read @82 - __bam_cdel_read @83 - __bam_curadj_read @84 - __bam_pgin @85 - __bam_pgout @86 - __bam_rcuradj_read @87 - __bam_relink_read @88 - __bam_repl_read @89 - __bam_root_read @90 - __bam_rsplit_read @91 - __bam_split_read @92 - __crdel_metasub_read @93 - __db_addrem_read @94 - __db_big_read @95 - __db_cksum_read @96 - __db_debug_read @97 - __db_dispatch @98 - __db_dumptree @99 - __db_err @100 - __db_fileid_reset @101 - __db_getlong @102 - __db_getulong @103 - __db_global_values @104 - __db_isbigendian @105 - __db_lsn_reset @106 - __db_noop_read @107 - __db_omode @108 - __db_overwrite @109 - __db_ovref_read @110 - __db_pg_alloc_read @111 - __db_pg_free_read @112 - __db_pg_freedata_read @113 - __db_pg_init_read @114 - __db_pg_new_read @115 - __db_pg_prepare_read @116 - __db_pgin @117 - __db_pgout @118 - __db_pr_callback @119 - __db_rpath @120 - __db_stat_pp @121 - __db_stat_print_pp @122 - __db_util_cache @123 - __db_util_interrupted @124 - __db_util_logset @125 - __db_util_siginit @126 - __db_util_sigresend @127 - __db_verify_internal @128 - __dbreg_register_read @129 - __fop_create_read @130 - __fop_file_remove_read @131 - __fop_remove_read @132 - __fop_rename_read @133 - __fop_write_read @134 - __ham_chgpg_read @135 - __ham_copypage_read @136 - __ham_curadj_read @137 - __ham_get_meta @138 - __ham_groupalloc_read @139 - __ham_insdel_read @140 - __ham_metagroup_read @141 - __ham_newpage_read @142 - __ham_pgin @143 - __ham_pgout @144 - __ham_release_meta @145 - __ham_replace_read @146 - __ham_splitdata_read @147 - __lock_list_print @148 - __log_stat_pp @149 - __os_clock @150 - __os_get_errno @151 - __os_id @152 - __os_set_errno @153 - __os_sleep @154 - __os_ufree @155 - __os_yield @156 - __qam_add_read @157 - __qam_del_read @158 - __qam_delext_read @159 - __qam_incfirst_read @160 - __qam_mvptr_read @161 - __qam_pgin_out @162 - __rep_stat_print @163 - __txn_child_read @164 - __txn_ckp_read @165 - __txn_recycle_read @166 - __txn_regop_read @167 - __txn_xa_regop_read @168 diff --git a/db/build_win32/libdb.rc b/db/build_win32/libdb.rc deleted file mode 100644 index bdd74de18..000000000 --- a/db/build_win32/libdb.rc +++ /dev/null @@ -1,33 +0,0 @@ -1 VERSIONINFO - FILEVERSION 4,0,3,27 - PRODUCTVERSION 4,0,3,27 - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS 0x4L - FILETYPE 0x2L - FILESUBTYPE 0x0L - -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "CompanyName", "Sleepycat Software\0" - VALUE "FileDescription", "Berkeley DB 3.0 DLL\0" - VALUE "FileVersion", "4.3.27\0" - VALUE "InternalName", "libdb.dll\0" - VALUE "LegalCopyright", "Copyright © Sleepycat Software Inc. 1997-2004\0" - VALUE "OriginalFilename", "libdb.dll\0" - VALUE "ProductName", "Sleepycat Software libdb\0" - VALUE "ProductVersion", "4.3.27\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/db/build_win32/libdb_tcl.def b/db/build_win32/libdb_tcl.def deleted file mode 100644 index 5e8386a35..000000000 --- a/db/build_win32/libdb_tcl.def +++ /dev/null @@ -1,7 +0,0 @@ -; $Id: libdb_tcl.def,v 11.7 2002/10/14 23:44:20 mjc Exp $ - -DESCRIPTION 'Berkeley DB TCL interface Library' -EXPORTS - Db_tcl_Init - _NameToPtr - diff --git a/db/build_win32/libdbrc.src b/db/build_win32/libdbrc.src deleted file mode 100644 index 4c644ea9f..000000000 --- a/db/build_win32/libdbrc.src +++ /dev/null @@ -1,33 +0,0 @@ -1 VERSIONINFO - FILEVERSION %MAJOR%,0,%MINOR%,%PATCH% - PRODUCTVERSION %MAJOR%,0,%MINOR%,%PATCH% - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS 0x4L - FILETYPE 0x2L - FILESUBTYPE 0x0L - -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "CompanyName", "Sleepycat Software\0" - VALUE "FileDescription", "Berkeley DB 3.0 DLL\0" - VALUE "FileVersion", "%MAJOR%.%MINOR%.%PATCH%\0" - VALUE "InternalName", "libdb.dll\0" - VALUE "LegalCopyright", "Copyright © Sleepycat Software Inc. 1997-2004\0" - VALUE "OriginalFilename", "libdb.dll\0" - VALUE "ProductName", "Sleepycat Software libdb\0" - VALUE "ProductVersion", "%MAJOR%.%MINOR%.%PATCH%\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/db/build_win32/small_dsp.src b/db/build_win32/small_dsp.src deleted file mode 100644 index 1b42e8c71..000000000 --- a/db/build_win32/small_dsp.src +++ /dev/null @@ -1,85 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_small" -# PROP BASE Intermediate_Dir "Release_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_small" -# PROP Intermediate_Dir "Release_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -# ADD LIB32 /nologo /out:"Release_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_small" -# PROP BASE Intermediate_Dir "Debug_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_small" -# PROP Intermediate_Dir "Debug_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" -# ADD LIB32 /nologo /out:"Debug_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/srcfile_dsp.src b/db/build_win32/srcfile_dsp.src deleted file mode 100644 index 408a55e2a..000000000 --- a/db/build_win32/srcfile_dsp.src +++ /dev/null @@ -1,4 +0,0 @@ -# Begin Source File - -SOURCE=@srcdir@\@srcfile@ -# End Source File diff --git a/db/build_win32/static_dsp.src b/db/build_win32/static_dsp.src deleted file mode 100644 index a2746856c..000000000 --- a/db/build_win32/static_dsp.src +++ /dev/null @@ -1,85 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -# ADD LIB32 /nologo /out:"Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" -# ADD LIB32 /nologo /out:"Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/tcl_dsp.src b/db/build_win32/tcl_dsp.src deleted file mode 100644 index 87ea99cbb..000000000 --- a/db/build_win32/tcl_dsp.src +++ /dev/null @@ -1,93 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_TCL_SUPPORT" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib tcl84.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_tcl@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_TCL_SUPPORT" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib tcl84g.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug/libdb_tcl@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win32/win_db.h b/db/build_win32/win_db.h deleted file mode 100644 index d623610f4..000000000 --- a/db/build_win32/win_db.h +++ /dev/null @@ -1,94 +0,0 @@ -/*- - * $Id: win_db.in,v 11.4 2004/10/07 13:59:24 carol Exp $ - * - * The following provides the information necessary to build Berkeley - * DB on native Windows, and other Windows environments such as MinGW. - */ - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * To build Tcl interface libraries, the include path must be configured to - * use the directory containing , usually the include directory in - * the Tcl distribution. - */ -#ifdef DB_TCL_SUPPORT -#include -#endif - -#define WIN32_LEAN_AND_MEAN -#include - -/* - * All of the necessary includes have been included, ignore the #includes - * in the Berkeley DB source files. - */ -#define NO_SYSTEM_INCLUDES - -/* - * Win32 has getcwd, snprintf and vsnprintf, but under different names. - */ -#define getcwd(buf, size) _getcwd(buf, size) -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -/* - * Win32 does not define getopt and friends in any header file, so we must. - */ -#if defined(__cplusplus) -extern "C" { -#endif -extern int optind; -extern char *optarg; -extern int getopt(int, char * const *, const char *); -#if defined(__cplusplus) -} -#endif - -#ifdef _UNICODE -#define TO_TSTRING(dbenv, s, ts, ret) do { \ - int __len = strlen(s) + 1; \ - ts = NULL; \ - if ((ret = __os_malloc((dbenv), \ - __len * sizeof (_TCHAR), &(ts))) == 0 && \ - MultiByteToWideChar(CP_UTF8, 0, \ - (s), -1, (ts), __len) == 0) \ - ret = __os_get_errno(); \ - } while (0) - -#define FROM_TSTRING(dbenv, ts, s, ret) { \ - int __len = WideCharToMultiByte(CP_UTF8, 0, ts, -1, \ - NULL, 0, NULL, NULL); \ - s = NULL; \ - if ((ret = __os_malloc((dbenv), __len, &(s))) == 0 && \ - WideCharToMultiByte(CP_UTF8, 0, \ - (ts), -1, (s), __len, NULL, NULL) == 0) \ - ret = __os_get_errno(); \ - } while (0) - -#define FREE_STRING(dbenv, s) do { \ - if ((s) != NULL) { \ - __os_free((dbenv), (s)); \ - (s) = NULL; \ - } \ - } while (0) - -#else -#define TO_TSTRING(dbenv, s, ts, ret) (ret) = 0, (ts) = (_TCHAR *)(s) -#define FROM_TSTRING(dbenv, ts, s, ret) (ret) = 0, (s) = (char *)(ts) -#define FREE_STRING(dbenv, ts) -#endif diff --git a/db/build_win64/Berkeley_DB.dsw b/db/build_win64/Berkeley_DB.dsw deleted file mode 100644 index bcce71e8a..000000000 --- a/db/build_win64/Berkeley_DB.dsw +++ /dev/null @@ -1,539 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "build_all"=.\build_all.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_archive - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_checkpoint - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_deadlock - End Project Dependency - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_dump - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_load - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_printlog - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_recover - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_stat - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_upgrade - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_verify - End Project Dependency - Begin Project Dependency - Project_Dep_Name DB_Static - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_access - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_btrec - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_env - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_lock - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_mpool - End Project Dependency - Begin Project Dependency - Project_Dep_Name ex_tpcb - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_access - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_btrec - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_env - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_lock - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_mpool - End Project Dependency - Begin Project Dependency - Project_Dep_Name excxx_tpcb - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_archive"=.\db_archive.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_checkpoint"=.\db_checkpoint.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_deadlock"=.\db_deadlock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_dll"=.\db_dll.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "db_dump"=.\db_dump.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_java"=.\db_java.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_lib"=.\db_lib.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_dll - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_static - End Project Dependency -}}} - -############################################################################### - -Project: "db_load"=.\db_load.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_printlog"=.\db_printlog.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_recover"=.\db_recover.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_stat"=.\db_stat.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_static"=.\db_static.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "db_tcl"=.\db_tcl.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name DB_DLL - End Project Dependency -}}} - -############################################################################### - -Project: "db_test"=.\db_test.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name build_all - End Project Dependency - Begin Project Dependency - Project_Dep_Name db_tcl - End Project Dependency -}}} - -############################################################################### - -Project: "db_upgrade"=.\db_upgrade.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "db_verify"=.\db_verify.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_access"=.\ex_access.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_btrec"=.\ex_btrec.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_env"=.\ex_env.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_lock"=.\ex_lock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_mpool"=.\ex_mpool.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_repquote"=.\ex_repquote.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "ex_tpcb"=.\ex_tpcb.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_access"=.\excxx_access.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_btrec"=.\excxx_btrec.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_env"=.\excxx_env.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_lock"=.\excxx_lock.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_mpool"=.\excxx_mpool.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Project: "excxx_tpcb"=.\excxx_tpcb.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name db_lib - End Project Dependency -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - diff --git a/db/build_win64/app_dsp.src b/db/build_win64/app_dsp.src deleted file mode 100644 index 30af5b6d7..000000000 --- a/db/build_win64/app_dsp.src +++ /dev/null @@ -1,145 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/build_all.dsp b/db/build_win64/build_all.dsp deleted file mode 100644 index 7ae1f9bb0..000000000 --- a/db/build_win64/build_all.dsp +++ /dev/null @@ -1,96 +0,0 @@ -# Microsoft Developer Studio Project File - Name="build_all" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Generic Project" 0x010a - -CFG=build_all - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "build_all.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "build_all.mak" CFG="build_all - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "build_all - Win32 Release" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Debug" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Release Static" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Debug Static" (based on "Win32 (x86) External Target") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "build_all - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Cmd_Line "echo DB Release version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Cmd_Line "echo DB Debug version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Cmd_Line "echo DB Release Static version built." -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "build_all - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_Static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_Static" -# PROP Cmd_Line "echo DB Debug Static version built." -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "build_all - Win32 Release" -# Name "build_all - Win32 Debug" -# Name "build_all - Win32 Release Static" -# Name "build_all - Win32 Debug Static" -# End Target -# End Project diff --git a/db/build_win64/db.h b/db/build_win64/db.h deleted file mode 100644 index 359dede88..000000000 --- a/db/build_win64/db.h +++ /dev/null @@ -1,2242 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/* - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1996-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db.in,v 11.463 2004/10/11 18:47:50 bostic Exp $ - * - * db.h include file layout: - * General. - * Database Environment. - * Locking subsystem. - * Logging subsystem. - * Shared buffer cache (mpool) subsystem. - * Transaction subsystem. - * Access methods. - * Access method cursors. - * Dbm/Ndbm, Hsearch historic interfaces. - */ - -#ifndef _DB_H_ -#define _DB_H_ - -#ifndef __NO_SYSTEM_INCLUDES -#include -#include -#include -#endif - -#if defined(__cplusplus) -extern "C" { -#endif - - -#undef __P -#define __P(protos) protos - -/* - * Berkeley DB version information. - */ -#define DB_VERSION_MAJOR 4 -#define DB_VERSION_MINOR 3 -#define DB_VERSION_PATCH 27 -#define DB_VERSION_STRING "Sleepycat Software: Berkeley DB 4.3.27: (December 22, 2004)" - -/* - * !!! - * Berkeley DB uses specifically sized types. If they're not provided by - * the system, typedef them here. - * - * We protect them against multiple inclusion using __BIT_TYPES_DEFINED__, - * as does BIND and Kerberos, since we don't know for sure what #include - * files the user is using. - * - * !!! - * We also provide the standard u_int, u_long etc., if they're not provided - * by the system. - */ -#ifndef __BIT_TYPES_DEFINED__ -#define __BIT_TYPES_DEFINED__ -typedef unsigned char u_int8_t; -typedef short int16_t; -typedef unsigned short u_int16_t; -typedef int int32_t; -typedef unsigned int u_int32_t; -typedef __int64 int64_t; -typedef unsigned __int64 u_int64_t; -#endif - -#ifndef _WINSOCKAPI_ -typedef unsigned char u_char; -typedef unsigned short u_short; -typedef unsigned int u_int; -typedef unsigned long u_long; -#endif -#ifdef _WIN64 -typedef int64_t ssize_t; -#else -typedef int32_t ssize_t; -#endif - -/* - * uintmax_t -- - * Largest unsigned type, used to align structures in memory. We don't store - * floating point types in structures, so integral types should be sufficient - * (and we don't have to worry about systems that store floats in other than - * power-of-2 numbers of bytes). Additionally this fixes compilers that rewrite - * structure assignments and ANSI C memcpy calls to be in-line instructions - * that happen to require alignment. Note: this alignment isn't sufficient for - * mutexes, which depend on things like cache line alignment. Mutex alignment - * is handled separately, in mutex.h. - * - * uintptr_t -- - * Unsigned type that's the same size as a pointer. There are places where - * DB modifies pointers by discarding the bottom bits to guarantee alignment. - * We can't use uintmax_t, it may be larger than the pointer, and compilers - * get upset about that. So far we haven't run on any machine where there's - * no unsigned type the same size as a pointer -- here's hoping. - */ -typedef u_int64_t uintmax_t; -#ifdef _WIN64 -typedef u_int64_t uintptr_t; -#else -typedef u_int32_t uintptr_t; -#endif - -/* - * Sequences are only available on machines with 64-bit integral types. - */ -typedef int64_t db_seq_t; - -/* Basic types that are exported or quasi-exported. */ -typedef u_int32_t db_pgno_t; /* Page number type. */ -typedef u_int16_t db_indx_t; /* Page offset type. */ -#define DB_MAX_PAGES 0xffffffff /* >= # of pages in a file */ - -typedef u_int32_t db_recno_t; /* Record number type. */ -#define DB_MAX_RECORDS 0xffffffff /* >= # of records in a tree */ - -typedef u_int32_t db_timeout_t; /* Type of a timeout. */ - -/* - * Region offsets are the difference between a pointer in a region and the - * region's base address. With private environments, both addresses are the - * result of calling malloc, and we can't assume anything about what malloc - * will return, so region offsets have to be able to hold differences between - * arbitrary pointers. - */ -typedef uintptr_t roff_t; - -/* - * Forward structure declarations, so we can declare pointers and - * applications can get type checking. - */ -struct __db; typedef struct __db DB; -struct __db_bt_stat; typedef struct __db_bt_stat DB_BTREE_STAT; -struct __db_cipher; typedef struct __db_cipher DB_CIPHER; -struct __db_dbt; typedef struct __db_dbt DBT; -struct __db_env; typedef struct __db_env DB_ENV; -struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; -struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; -struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; -struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; -struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; -struct __db_log_cursor; typedef struct __db_log_cursor DB_LOGC; -struct __db_log_stat; typedef struct __db_log_stat DB_LOG_STAT; -struct __db_lsn; typedef struct __db_lsn DB_LSN; -struct __db_mpool; typedef struct __db_mpool DB_MPOOL; -struct __db_mpool_fstat;typedef struct __db_mpool_fstat DB_MPOOL_FSTAT; -struct __db_mpool_stat; typedef struct __db_mpool_stat DB_MPOOL_STAT; -struct __db_mpoolfile; typedef struct __db_mpoolfile DB_MPOOLFILE; -struct __db_preplist; typedef struct __db_preplist DB_PREPLIST; -struct __db_qam_stat; typedef struct __db_qam_stat DB_QUEUE_STAT; -struct __db_rep; typedef struct __db_rep DB_REP; -struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; -struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; -struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; -struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; -struct __db_txn; typedef struct __db_txn DB_TXN; -struct __db_txn_active; typedef struct __db_txn_active DB_TXN_ACTIVE; -struct __db_txn_stat; typedef struct __db_txn_stat DB_TXN_STAT; -struct __db_txnmgr; typedef struct __db_txnmgr DB_TXNMGR; -struct __dbc; typedef struct __dbc DBC; -struct __dbc_internal; typedef struct __dbc_internal DBC_INTERNAL; -struct __fh_t; typedef struct __fh_t DB_FH; -struct __fname; typedef struct __fname FNAME; -struct __key_range; typedef struct __key_range DB_KEY_RANGE; -struct __mpoolfile; typedef struct __mpoolfile MPOOLFILE; -struct __mutex_t; typedef struct __mutex_t DB_MUTEX; - -/* Key/data structure -- a Data-Base Thang. */ -struct __db_dbt { - /* - * data/size must be fields 1 and 2 for DB 1.85 compatibility. - */ - void *data; /* Key/data */ - u_int32_t size; /* key/data length */ - - u_int32_t ulen; /* RO: length of user buffer. */ - u_int32_t dlen; /* RO: get/put record length. */ - u_int32_t doff; /* RO: get/put record offset. */ - -#define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ -#define DB_DBT_ISSET 0x002 /* Lower level calls set value. */ -#define DB_DBT_MALLOC 0x004 /* Return in malloc'd memory. */ -#define DB_DBT_PARTIAL 0x008 /* Partial put/get. */ -#define DB_DBT_REALLOC 0x010 /* Return in realloc'd memory. */ -#define DB_DBT_USERMEM 0x020 /* Return in user's memory. */ -#define DB_DBT_DUPOK 0x040 /* Insert if duplicate. */ - u_int32_t flags; -}; - -/* - * Common flags -- - * Interfaces which use any of these common flags should never have - * interface specific flags in this range. - */ -#define DB_CREATE 0x0000001 /* Create file as necessary. */ -#define DB_CXX_NO_EXCEPTIONS 0x0000002 /* C++: return error values. */ -#define DB_FORCE 0x0000004 /* Force (anything). */ -#define DB_NOMMAP 0x0000008 /* Don't mmap underlying file. */ -#define DB_RDONLY 0x0000010 /* Read-only (O_RDONLY). */ -#define DB_RECOVER 0x0000020 /* Run normal recovery. */ -#define DB_THREAD 0x0000040 /* Applications are threaded. */ -#define DB_TRUNCATE 0x0000080 /* Discard existing DB (O_TRUNC). */ -#define DB_TXN_NOSYNC 0x0000100 /* Do not sync log on commit. */ -#define DB_TXN_NOT_DURABLE 0x0000200 /* Do not log changes. */ -#define DB_USE_ENVIRON 0x0000400 /* Use the environment. */ -#define DB_USE_ENVIRON_ROOT 0x0000800 /* Use the environment if root. */ - -/* - * Common flags -- - * Interfaces which use any of these common flags should never have - * interface specific flags in this range. - * - * DB_AUTO_COMMIT: - * DB_ENV->set_flags, DB->associate, DB->del, DB->put, DB->open, - * DB->remove, DB->rename, DB->truncate - * DB_DEGREE_2: - * DB->cursor, DB->get, DB->join, DBcursor->c_get, DB_ENV->txn_begin - * DB_DIRTY_READ: - * DB->cursor, DB->get, DB->join, DB->open, DBcursor->c_get, - * DB_ENV->txn_begin - * DB_NOAUTO_COMMIT - * DB->associate, DB->del, DB->put, DB->open, - * DB->remove, DB->rename, DB->truncate - * - * !!! - * The DB_DIRTY_READ and DB_DEGREE_2 bit masks can't be changed without - * also changing the masks for the flags that can be OR'd into DB - * access method and cursor operation values. - */ -#define DB_AUTO_COMMIT 0x01000000/* Implied transaction. */ -#define DB_DEGREE_2 0x02000000/* Degree 2. */ -#define DB_DIRTY_READ 0x04000000/* Dirty Read. */ -#define DB_NO_AUTO_COMMIT 0x08000000/* Override env-wide AUTOCOMMIT. */ - -/* - * Flags private to db_env_create. - */ -#define DB_RPCCLIENT 0x0000001 /* An RPC client environment. */ - -/* - * Flags private to db_create. - */ -#define DB_REP_CREATE 0x0000001 /* Open of an internal rep database. */ -#define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ - -/* - * Flags private to DB_ENV->open. - * Shared flags up to 0x0000800 */ -#define DB_INIT_CDB 0x0001000 /* Concurrent Access Methods. */ -#define DB_INIT_LOCK 0x0002000 /* Initialize locking. */ -#define DB_INIT_LOG 0x0004000 /* Initialize logging. */ -#define DB_INIT_MPOOL 0x0008000 /* Initialize mpool. */ -#define DB_INIT_REP 0x0010000 /* Initialize replication. */ -#define DB_INIT_TXN 0x0020000 /* Initialize transactions. */ -#define DB_JOINENV 0x0040000 /* Initialize all subsystems present. */ -#define DB_LOCKDOWN 0x0080000 /* Lock memory into physical core. */ -#define DB_PRIVATE 0x0100000 /* DB_ENV is process local. */ -#define DB_RECOVER_FATAL 0x0200000 /* Run catastrophic recovery. */ -#define DB_SYSTEM_MEM 0x0400000 /* Use system-backed memory. */ - -/* - * Flags private to DB->open. - * Shared flags up to 0x0000800 */ -#define DB_EXCL 0x0001000 /* Exclusive open (O_EXCL). */ -#define DB_FCNTL_LOCKING 0x0002000 /* UNDOC: fcntl(2) locking. */ -#define DB_RDWRMASTER 0x0004000 /* UNDOC: allow subdb master open R/W */ -#define DB_WRITEOPEN 0x0008000 /* UNDOC: open with write lock. */ - -/* - * Flags private to DB_ENV->txn_begin. - * Shared flags up to 0x0000800 */ -#define DB_TXN_NOWAIT 0x0001000 /* Do not wait for locks in this TXN. */ -#define DB_TXN_SYNC 0x0002000 /* Always sync log on commit. */ - -/* - * Flags private to DB_ENV->set_encrypt. - */ -#define DB_ENCRYPT_AES 0x0000001 /* AES, assumes SHA1 checksum */ - -/* - * Flags private to DB_ENV->set_flags. - * Shared flags up to 0x00000800 */ -#define DB_CDB_ALLDB 0x00001000/* Set CDB locking per environment. */ -#define DB_DIRECT_DB 0x00002000/* Don't buffer databases in the OS. */ -#define DB_DIRECT_LOG 0x00004000/* Don't buffer log files in the OS. */ -#define DB_DSYNC_LOG 0x00008000/* Set O_DSYNC on the log. */ -#define DB_LOG_AUTOREMOVE 0x00010000/* Automatically remove log files. */ -#define DB_LOG_INMEMORY 0x00020000/* Store logs in buffers in memory. */ -#define DB_NOLOCKING 0x00040000/* Set locking/mutex behavior. */ -#define DB_NOPANIC 0x00080000/* Set panic state per DB_ENV. */ -#define DB_OVERWRITE 0x00100000/* Overwrite unlinked region files. */ -#define DB_PANIC_ENVIRONMENT 0x00200000/* Set panic state per environment. */ -#define DB_REGION_INIT 0x00400000/* Page-fault regions on open. */ -#define DB_TIME_NOTGRANTED 0x00800000/* Return NOTGRANTED on timeout. */ -/* Shared flags at 0x01000000 */ -/* Shared flags at 0x02000000 */ -/* Shared flags at 0x04000000 */ -/* Shared flags at 0x08000000 */ -#define DB_TXN_WRITE_NOSYNC 0x10000000/* Write, don't sync, on txn commit. */ -#define DB_YIELDCPU 0x20000000/* Yield the CPU (a lot). */ - -/* - * Flags private to DB->set_feedback's callback. - */ -#define DB_UPGRADE 0x0000001 /* Upgrading. */ -#define DB_VERIFY 0x0000002 /* Verifying. */ - -/* - * Flags private to DB_MPOOLFILE->open. - * Shared flags up to 0x0000800 */ -#define DB_DIRECT 0x0001000 /* Don't buffer the file in the OS. */ -#define DB_DURABLE_UNKNOWN 0x0002000 /* internal: durability on open. */ -#define DB_EXTENT 0x0004000 /* internal: dealing with an extent. */ -#define DB_ODDFILESIZE 0x0008000 /* Truncate file to N * pgsize. */ - -/* - * Flags private to DB->set_flags. - */ -#define DB_CHKSUM 0x0000001 /* Do checksumming */ -#define DB_DUP 0x0000002 /* Btree, Hash: duplicate keys. */ -#define DB_DUPSORT 0x0000004 /* Btree, Hash: duplicate keys. */ -#define DB_ENCRYPT 0x0000008 /* Btree, Hash: duplicate keys. */ -#define DB_INORDER 0x0000010 /* Queue: strict ordering on consume. */ -#define DB_RECNUM 0x0000020 /* Btree: record numbers. */ -#define DB_RENUMBER 0x0000040 /* Recno: renumber on insert/delete. */ -#define DB_REVSPLITOFF 0x0000080 /* Btree: turn off reverse splits. */ -#define DB_SNAPSHOT 0x0000100 /* Recno: snapshot the input. */ - -/* - * Flags private to the DB_ENV->stat_print, DB->stat and DB->stat_print methods. - */ -#define DB_STAT_ALL 0x0000001 /* Print: Everything. */ -#define DB_STAT_CLEAR 0x0000002 /* Clear stat after returning values. */ -#define DB_STAT_LOCK_CONF 0x0000004 /* Print: Lock conflict matrix. */ -#define DB_STAT_LOCK_LOCKERS 0x0000008 /* Print: Lockers. */ -#define DB_STAT_LOCK_OBJECTS 0x0000010 /* Print: Lock objects. */ -#define DB_STAT_LOCK_PARAMS 0x0000020 /* Print: Lock parameters. */ -#define DB_STAT_MEMP_HASH 0x0000040 /* Print: Mpool hash buckets. */ -#define DB_STAT_SUBSYSTEM 0x0000080 /* Print: Subsystems too. */ - -/* - * Flags private to DB->join. - */ -#define DB_JOIN_NOSORT 0x0000001 /* Don't try to optimize join. */ - -/* - * Flags private to DB->verify. - */ -#define DB_AGGRESSIVE 0x0000001 /* Salvage whatever could be data.*/ -#define DB_NOORDERCHK 0x0000002 /* Skip sort order/hashing check. */ -#define DB_ORDERCHKONLY 0x0000004 /* Only perform the order check. */ -#define DB_PR_PAGE 0x0000008 /* Show page contents (-da). */ -#define DB_PR_RECOVERYTEST 0x0000010 /* Recovery test (-dr). */ -#define DB_PRINTABLE 0x0000020 /* Use printable format for salvage. */ -#define DB_SALVAGE 0x0000040 /* Salvage what looks like data. */ -#define DB_UNREF 0x0000080 /* Report unreferenced pages. */ -/* - * !!! - * These must not go over 0x8000, or they will collide with the flags - * used by __bam_vrfy_subtree. - */ - -/* - * Flags private to DB->set_rep_transport's send callback. - */ -#define DB_REP_NOBUFFER 0x0000001 /* Do not buffer this message. */ -#define DB_REP_PERMANENT 0x0000002 /* Important--app. may want to flush. */ - -/******************************************************* - * Locking. - *******************************************************/ -#define DB_LOCKVERSION 1 - -#define DB_FILE_ID_LEN 20 /* Unique file ID length. */ - -/* - * Deadlock detector modes; used in the DB_ENV structure to configure the - * locking subsystem. - */ -#define DB_LOCK_NORUN 0 -#define DB_LOCK_DEFAULT 1 /* Default policy. */ -#define DB_LOCK_EXPIRE 2 /* Only expire locks, no detection. */ -#define DB_LOCK_MAXLOCKS 3 /* Select locker with max locks. */ -#define DB_LOCK_MAXWRITE 4 /* Select locker with max writelocks. */ -#define DB_LOCK_MINLOCKS 5 /* Select locker with min locks. */ -#define DB_LOCK_MINWRITE 6 /* Select locker with min writelocks. */ -#define DB_LOCK_OLDEST 7 /* Select oldest locker. */ -#define DB_LOCK_RANDOM 8 /* Select random locker. */ -#define DB_LOCK_YOUNGEST 9 /* Select youngest locker. */ - -/* Flag values for lock_vec(), lock_get(). */ -#define DB_LOCK_ABORT 0x001 /* Internal: Lock during abort. */ -#define DB_LOCK_NOWAIT 0x002 /* Don't wait on unavailable lock. */ -#define DB_LOCK_RECORD 0x004 /* Internal: record lock. */ -#define DB_LOCK_REMOVE 0x008 /* Internal: flag object removed. */ -#define DB_LOCK_SET_TIMEOUT 0x010 /* Internal: set lock timeout. */ -#define DB_LOCK_SWITCH 0x020 /* Internal: switch existing lock. */ -#define DB_LOCK_UPGRADE 0x040 /* Internal: upgrade existing lock. */ - -/* - * Simple R/W lock modes and for multi-granularity intention locking. - * - * !!! - * These values are NOT random, as they are used as an index into the lock - * conflicts arrays, i.e., DB_LOCK_IWRITE must be == 3, and DB_LOCK_IREAD - * must be == 4. - */ -typedef enum { - DB_LOCK_NG=0, /* Not granted. */ - DB_LOCK_READ=1, /* Shared/read. */ - DB_LOCK_WRITE=2, /* Exclusive/write. */ - DB_LOCK_WAIT=3, /* Wait for event */ - DB_LOCK_IWRITE=4, /* Intent exclusive/write. */ - DB_LOCK_IREAD=5, /* Intent to share/read. */ - DB_LOCK_IWR=6, /* Intent to read and write. */ - DB_LOCK_DIRTY=7, /* Dirty Read. */ - DB_LOCK_WWRITE=8 /* Was Written. */ -} db_lockmode_t; - -/* - * Request types. - */ -typedef enum { - DB_LOCK_DUMP=0, /* Display held locks. */ - DB_LOCK_GET=1, /* Get the lock. */ - DB_LOCK_GET_TIMEOUT=2, /* Get lock with a timeout. */ - DB_LOCK_INHERIT=3, /* Pass locks to parent. */ - DB_LOCK_PUT=4, /* Release the lock. */ - DB_LOCK_PUT_ALL=5, /* Release locker's locks. */ - DB_LOCK_PUT_OBJ=6, /* Release locker's locks on obj. */ - DB_LOCK_PUT_READ=7, /* Release locker's read locks. */ - DB_LOCK_TIMEOUT=8, /* Force a txn to timeout. */ - DB_LOCK_TRADE=9, /* Trade locker ids on a lock. */ - DB_LOCK_UPGRADE_WRITE=10 /* Upgrade writes for dirty reads. */ -} db_lockop_t; - -/* - * Status of a lock. - */ -typedef enum { - DB_LSTAT_ABORTED=1, /* Lock belongs to an aborted txn. */ - DB_LSTAT_EXPIRED=2, /* Lock has expired. */ - DB_LSTAT_FREE=3, /* Lock is unallocated. */ - DB_LSTAT_HELD=4, /* Lock is currently held. */ - DB_LSTAT_NOTEXIST=5, /* Object on which lock was waiting - * was removed */ - DB_LSTAT_PENDING=6, /* Lock was waiting and has been - * promoted; waiting for the owner - * to run and upgrade it to held. */ - DB_LSTAT_WAITING=7 /* Lock is on the wait queue. */ -}db_status_t; - -/* Lock statistics structure. */ -struct __db_lock_stat { - u_int32_t st_id; /* Last allocated locker ID. */ - u_int32_t st_cur_maxid; /* Current maximum unused ID. */ - u_int32_t st_maxlocks; /* Maximum number of locks in table. */ - u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ - u_int32_t st_maxobjects; /* Maximum num of objects in table. */ - int st_nmodes; /* Number of lock modes. */ - u_int32_t st_nlocks; /* Current number of locks. */ - u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ - u_int32_t st_nlockers; /* Current number of lockers. */ - u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ - u_int32_t st_nobjects; /* Current number of objects. */ - u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ - u_int32_t st_nconflicts; /* Number of lock conflicts. */ - u_int32_t st_nrequests; /* Number of lock gets. */ - u_int32_t st_nreleases; /* Number of lock puts. */ - u_int32_t st_nnowaits; /* Number of requests that would have - waited, but NOWAIT was set. */ - u_int32_t st_ndeadlocks; /* Number of lock deadlocks. */ - db_timeout_t st_locktimeout; /* Lock timeout. */ - u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ - db_timeout_t st_txntimeout; /* Transaction timeout. */ - u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - roff_t st_regsize; /* Region size. */ -}; - -/* - * DB_LOCK_ILOCK -- - * Internal DB access method lock. - */ -struct __db_ilock { - db_pgno_t pgno; /* Page being locked. */ - u_int8_t fileid[DB_FILE_ID_LEN];/* File id. */ -#define DB_HANDLE_LOCK 1 -#define DB_RECORD_LOCK 2 -#define DB_PAGE_LOCK 3 - u_int32_t type; /* Type of lock. */ -}; - -/* - * DB_LOCK -- - * The structure is allocated by the caller and filled in during a - * lock_get request (or a lock_vec/DB_LOCK_GET). - */ -struct __db_lock_u { - roff_t off; /* Offset of the lock in the region */ - u_int32_t ndx; /* Index of the object referenced by - * this lock; used for locking. */ - u_int32_t gen; /* Generation number of this lock. */ - db_lockmode_t mode; /* mode of this lock. */ -}; - -/* Lock request structure. */ -struct __db_lockreq { - db_lockop_t op; /* Operation. */ - db_lockmode_t mode; /* Requested mode. */ - db_timeout_t timeout; /* Time to expire lock. */ - DBT *obj; /* Object being locked. */ - DB_LOCK lock; /* Lock returned. */ -}; - -/******************************************************* - * Logging. - *******************************************************/ -#define DB_LOGVERSION 10 /* Current log version. */ -#define DB_LOGOLDVER 10 /* Oldest log version supported. */ -#define DB_LOGMAGIC 0x040988 - -/* Flag values for DB_ENV->log_archive(). */ -#define DB_ARCH_ABS 0x001 /* Absolute pathnames. */ -#define DB_ARCH_DATA 0x002 /* Data files. */ -#define DB_ARCH_LOG 0x004 /* Log files. */ -#define DB_ARCH_REMOVE 0x008 /* Remove log files. */ - -/* Flag values for DB_ENV->log_put(). */ -#define DB_FLUSH 0x001 /* Flush data to disk (public). */ -#define DB_LOG_CHKPNT 0x002 /* Flush supports a checkpoint */ -#define DB_LOG_COMMIT 0x004 /* Flush supports a commit */ -#define DB_LOG_NOCOPY 0x008 /* Don't copy data */ -#define DB_LOG_NOT_DURABLE 0x010 /* Do not log; keep in memory */ -#define DB_LOG_PERM 0x020 /* Flag record with REP_PERMANENT */ -#define DB_LOG_RESEND 0x040 /* Resent log record */ -#define DB_LOG_WRNOSYNC 0x080 /* Write, don't sync log_put */ - -/* - * A DB_LSN has two parts, a fileid which identifies a specific file, and an - * offset within that file. The fileid is an unsigned 4-byte quantity that - * uniquely identifies a file within the log directory -- currently a simple - * counter inside the log. The offset is also an unsigned 4-byte value. The - * log manager guarantees the offset is never more than 4 bytes by switching - * to a new log file before the maximum length imposed by an unsigned 4-byte - * offset is reached. - */ -struct __db_lsn { - u_int32_t file; /* File ID. */ - u_int32_t offset; /* File offset. */ -}; - -/* - * Application-specified log record types start at DB_user_BEGIN, and must not - * equal or exceed DB_debug_FLAG. - * - * DB_debug_FLAG is the high-bit of the u_int32_t that specifies a log record - * type. If the flag is set, it's a log record that was logged for debugging - * purposes only, even if it reflects a database change -- the change was part - * of a non-durable transaction. - */ -#define DB_user_BEGIN 10000 -#define DB_debug_FLAG 0x80000000 - -/* - * DB_LOGC -- - * Log cursor. - */ -struct __db_log_cursor { - DB_ENV *dbenv; /* Enclosing dbenv. */ - - DB_FH *c_fhp; /* File handle. */ - DB_LSN c_lsn; /* Cursor: LSN */ - u_int32_t c_len; /* Cursor: record length */ - u_int32_t c_prev; /* Cursor: previous record's offset */ - - DBT c_dbt; /* Return DBT. */ - -#define DB_LOGC_BUF_SIZE (32 * 1024) - u_int8_t *bp; /* Allocated read buffer. */ - u_int32_t bp_size; /* Read buffer length in bytes. */ - u_int32_t bp_rlen; /* Read buffer valid data length. */ - DB_LSN bp_lsn; /* Read buffer first byte LSN. */ - - u_int32_t bp_maxrec; /* Max record length in the log file. */ - - /* Methods. */ - int (*close) __P((DB_LOGC *, u_int32_t)); - int (*get) __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); - -#define DB_LOG_DISK 0x01 /* Log record came from disk. */ -#define DB_LOG_LOCKED 0x02 /* Log region already locked */ -#define DB_LOG_SILENT_ERR 0x04 /* Turn-off error messages. */ - u_int32_t flags; -}; - -/* Log statistics structure. */ -struct __db_log_stat { - u_int32_t st_magic; /* Log file magic number. */ - u_int32_t st_version; /* Log file version number. */ - int st_mode; /* Log file mode. */ - u_int32_t st_lg_bsize; /* Log buffer size. */ - u_int32_t st_lg_size; /* Log file size. */ - u_int32_t st_w_bytes; /* Bytes to log. */ - u_int32_t st_w_mbytes; /* Megabytes to log. */ - u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ - u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ - u_int32_t st_wcount; /* Total writes to the log. */ - u_int32_t st_wcount_fill; /* Overflow writes to the log. */ - u_int32_t st_scount; /* Total syncs to the log. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - u_int32_t st_cur_file; /* Current log file number. */ - u_int32_t st_cur_offset; /* Current log file offset. */ - u_int32_t st_disk_file; /* Known on disk log file number. */ - u_int32_t st_disk_offset; /* Known on disk log file offset. */ - roff_t st_regsize; /* Region size. */ - u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ - u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ -}; - -/* - * We need to record the first log record of a transaction. - * For user defined logging this macro returns the place to - * put that information, if it is need in rlsnp, otherwise it - * leaves it unchanged. - */ -#define DB_SET_BEGIN_LSNP(txn, rlsnp) ((txn)->set_begin_lsnp(txn, rlsnp)) - -/******************************************************* - * Shared buffer cache (mpool). - *******************************************************/ -/* Flag values for DB_MPOOLFILE->get. */ -#define DB_MPOOL_CREATE 0x001 /* Create a page. */ -#define DB_MPOOL_LAST 0x002 /* Return the last page. */ -#define DB_MPOOL_NEW 0x004 /* Create a new page. */ - -/* Flag values for DB_MPOOLFILE->put, DB_MPOOLFILE->set. */ -#define DB_MPOOL_CLEAN 0x001 /* Page is not modified. */ -#define DB_MPOOL_DIRTY 0x002 /* Page is modified. */ -#define DB_MPOOL_DISCARD 0x004 /* Don't cache the page. */ -#define DB_MPOOL_FREE 0x008 /* Free page if present. */ - -/* Flags values for DB_MPOOLFILE->set_flags. */ -#define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ -#define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ - -/* Priority values for DB_MPOOLFILE->set_priority. */ -typedef enum { - DB_PRIORITY_VERY_LOW=1, - DB_PRIORITY_LOW=2, - DB_PRIORITY_DEFAULT=3, - DB_PRIORITY_HIGH=4, - DB_PRIORITY_VERY_HIGH=5 -} DB_CACHE_PRIORITY; - -/* Per-process DB_MPOOLFILE information. */ -struct __db_mpoolfile { - DB_FH *fhp; /* Underlying file handle. */ - - /* - * !!! - * The ref, pinref and q fields are protected by the region lock. - */ - u_int32_t ref; /* Reference count. */ - - u_int32_t pinref; /* Pinned block reference count. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_mpoolfile) q; - */ - struct { - struct __db_mpoolfile *tqe_next; - struct __db_mpoolfile **tqe_prev; - } q; /* Linked list of DB_MPOOLFILE's. */ - - /* - * !!! - * The rest of the fields (with the exception of the MP_FLUSH flag) - * are not thread-protected, even when they may be modified at any - * time by the application. The reason is the DB_MPOOLFILE handle - * is single-threaded from the viewpoint of the application, and so - * the only fields needing to be thread-protected are those accessed - * by checkpoint or sync threads when using DB_MPOOLFILE structures - * to flush buffers from the cache. - */ - DB_ENV *dbenv; /* Overlying DB_ENV. */ - MPOOLFILE *mfp; /* Underlying MPOOLFILE. */ - - u_int32_t clear_len; /* Cleared length on created pages. */ - u_int8_t /* Unique file ID. */ - fileid[DB_FILE_ID_LEN]; - int ftype; /* File type. */ - int32_t lsn_offset; /* LSN offset in page. */ - u_int32_t gbytes, bytes; /* Maximum file size. */ - DBT *pgcookie; /* Byte-string passed to pgin/pgout. */ - DB_CACHE_PRIORITY /* Cache priority. */ - priority; - - void *addr; /* Address of mmap'd region. */ - size_t len; /* Length of mmap'd region. */ - - u_int32_t config_flags; /* Flags to DB_MPOOLFILE->set_flags. */ - - /* Methods. */ - int (*close) __P((DB_MPOOLFILE *, u_int32_t)); - int (*get) __P((DB_MPOOLFILE *, db_pgno_t *, u_int32_t, void *)); - int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); - int (*put) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*set) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); - int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); - int (*get_ftype) __P((DB_MPOOLFILE *, int *)); - int (*set_ftype) __P((DB_MPOOLFILE *, int)); - int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); - int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); - int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); - int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); - int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); - int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); - int (*sync) __P((DB_MPOOLFILE *)); - - /* - * MP_FILEID_SET, MP_OPEN_CALLED and MP_READONLY do not need to be - * thread protected because they are initialized before the file is - * linked onto the per-process lists, and never modified. - * - * MP_FLUSH is thread protected because it is potentially read/set by - * multiple threads of control. - */ -#define MP_FILEID_SET 0x001 /* Application supplied a file ID. */ -#define MP_FLUSH 0x002 /* Was opened to flush a buffer. */ -#define MP_OPEN_CALLED 0x004 /* File opened. */ -#define MP_READONLY 0x008 /* File is readonly. */ - u_int32_t flags; -}; - -/* Mpool statistics structure. */ -struct __db_mpool_stat { - u_int32_t st_gbytes; /* Total cache size: GB. */ - u_int32_t st_bytes; /* Total cache size: B. */ - u_int32_t st_ncache; /* Number of caches. */ - roff_t st_regsize; /* Region size. */ - size_t st_mmapsize; /* Maximum file size for mmap. */ - int st_maxopenfd; /* Maximum number of open fd's. */ - int st_maxwrite; /* Maximum buffers to write. */ - int st_maxwrite_sleep; /* Sleep after writing max buffers. */ - u_int32_t st_map; /* Pages from mapped files. */ - u_int32_t st_cache_hit; /* Pages found in the cache. */ - u_int32_t st_cache_miss; /* Pages not found in the cache. */ - u_int32_t st_page_create; /* Pages created in the cache. */ - u_int32_t st_page_in; /* Pages read in. */ - u_int32_t st_page_out; /* Pages written out. */ - u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ - u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ - u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ - u_int32_t st_pages; /* Total number of pages. */ - u_int32_t st_page_clean; /* Clean pages. */ - u_int32_t st_page_dirty; /* Dirty pages. */ - u_int32_t st_hash_buckets; /* Number of hash buckets. */ - u_int32_t st_hash_searches; /* Total hash chain searches. */ - u_int32_t st_hash_longest; /* Longest hash chain searched. */ - u_int32_t st_hash_examined; /* Total hash entries searched. */ - u_int32_t st_hash_nowait; /* Hash lock granted with nowait. */ - u_int32_t st_hash_wait; /* Hash lock granted after wait. */ - u_int32_t st_hash_max_wait; /* Max hash lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted with nowait. */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_alloc; /* Number of page allocations. */ - u_int32_t st_alloc_buckets; /* Buckets checked during allocation. */ - u_int32_t st_alloc_max_buckets; /* Max checked during allocation. */ - u_int32_t st_alloc_pages; /* Pages checked during allocation. */ - u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ -}; - -/* Mpool file statistics structure. */ -struct __db_mpool_fstat { - char *file_name; /* File name. */ - u_int32_t st_pagesize; /* Page size. */ - u_int32_t st_map; /* Pages from mapped files. */ - u_int32_t st_cache_hit; /* Pages found in the cache. */ - u_int32_t st_cache_miss; /* Pages not found in the cache. */ - u_int32_t st_page_create; /* Pages created in the cache. */ - u_int32_t st_page_in; /* Pages read in. */ - u_int32_t st_page_out; /* Pages written out. */ -}; - -/******************************************************* - * Transactions and recovery. - *******************************************************/ -#define DB_TXNVERSION 1 - -typedef enum { - DB_TXN_ABORT=0, /* Public. */ - DB_TXN_APPLY=1, /* Public. */ - DB_TXN_BACKWARD_ALLOC=2, /* Internal. */ - DB_TXN_BACKWARD_ROLL=3, /* Public. */ - DB_TXN_FORWARD_ROLL=4, /* Public. */ - DB_TXN_OPENFILES=5, /* Internal. */ - DB_TXN_POPENFILES=6, /* Internal. */ - DB_TXN_PRINT=7 /* Public. */ -} db_recops; - -/* - * BACKWARD_ALLOC is used during the forward pass to pick up any aborted - * allocations for files that were created during the forward pass. - * The main difference between _ALLOC and _ROLL is that the entry for - * the file not exist during the rollforward pass. - */ -#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \ - (op) == DB_TXN_BACKWARD_ROLL || (op) == DB_TXN_BACKWARD_ALLOC) -#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL || (op) == DB_TXN_APPLY) - -struct __db_txn { - DB_TXNMGR *mgrp; /* Pointer to transaction manager. */ - DB_TXN *parent; /* Pointer to transaction's parent. */ - DB_LSN last_lsn; /* Lsn of last log write. */ - u_int32_t txnid; /* Unique transaction id. */ - u_int32_t tid; /* Thread id for use in MT XA. */ - roff_t off; /* Detail structure within region. */ - db_timeout_t lock_timeout; /* Timeout for locks for this txn. */ - db_timeout_t expire; /* Time this txn expires. */ - void *txn_list; /* Undo information for parent. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_txn) links; - * TAILQ_ENTRY(__db_txn) xalinks; - */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } links; /* Links transactions off manager. */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } xalinks; /* Links active XA transactions. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__events, __txn_event) events; - */ - struct { - struct __txn_event *tqh_first; - struct __txn_event **tqh_last; - } events; - - /* - * !!! - * Explicit representations of structures from queue.h. - * STAILQ_HEAD(__logrec, __txn_logrec) logs; - */ - struct { - struct __txn_logrec *stqh_first; - struct __txn_logrec **stqh_last; - } logs; /* Links deferred events. */ - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__kids, __db_txn) kids; - */ - struct __kids { - struct __db_txn *tqh_first; - struct __db_txn **tqh_last; - } kids; - - /* - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_txn) klinks; - */ - struct { - struct __db_txn *tqe_next; - struct __db_txn **tqe_prev; - } klinks; - - void *api_internal; /* C++ API private. */ - void *xml_internal; /* XML API private. */ - - u_int32_t cursors; /* Number of cursors open for txn */ - - /* Methods. */ - int (*abort) __P((DB_TXN *)); - int (*commit) __P((DB_TXN *, u_int32_t)); - int (*discard) __P((DB_TXN *, u_int32_t)); - u_int32_t (*id) __P((DB_TXN *)); - int (*prepare) __P((DB_TXN *, u_int8_t *)); - void (*set_begin_lsnp) __P((DB_TXN *txn, DB_LSN **)); - int (*set_timeout) __P((DB_TXN *, db_timeout_t, u_int32_t)); - -#define TXN_CHILDCOMMIT 0x001 /* Transaction that has committed. */ -#define TXN_COMPENSATE 0x002 /* Compensating transaction. */ -#define TXN_DEADLOCK 0x004 /* Transaction has deadlocked. */ -#define TXN_DEGREE_2 0x008 /* Has degree 2 isolation. */ -#define TXN_DIRTY_READ 0x010 /* Transaction does dirty reads. */ -#define TXN_LOCKTIMEOUT 0x020 /* Transaction has a lock timeout. */ -#define TXN_MALLOC 0x040 /* Structure allocated by TXN system. */ -#define TXN_NOSYNC 0x080 /* Do not sync on prepare and commit. */ -#define TXN_NOWAIT 0x100 /* Do not wait on locks. */ -#define TXN_RESTORED 0x200 /* Transaction has been restored. */ -#define TXN_SYNC 0x400 /* Sync on prepare and commit. */ - u_int32_t flags; -}; - -/* - * Structure used for two phase commit interface. Berkeley DB support for two - * phase commit is compatible with the X/open XA interface. - * - * The XA #define XIDDATASIZE defines the size of a global transaction ID. We - * have our own version here (for name space reasons) which must have the same - * value. - */ -#define DB_XIDDATASIZE 128 -struct __db_preplist { - DB_TXN *txn; - u_int8_t gid[DB_XIDDATASIZE]; -}; - -/* Transaction statistics structure. */ -struct __db_txn_active { - u_int32_t txnid; /* Transaction ID */ - u_int32_t parentid; /* Transaction ID of parent */ - DB_LSN lsn; /* LSN when transaction began */ - u_int32_t xa_status; /* XA status */ - u_int8_t xid[DB_XIDDATASIZE]; /* XA global transaction ID */ -}; - -struct __db_txn_stat { - DB_LSN st_last_ckp; /* lsn of the last checkpoint */ - time_t st_time_ckp; /* time of last checkpoint */ - u_int32_t st_last_txnid; /* last transaction id given out */ - u_int32_t st_maxtxns; /* maximum txns possible */ - u_int32_t st_naborts; /* number of aborted transactions */ - u_int32_t st_nbegins; /* number of begun transactions */ - u_int32_t st_ncommits; /* number of committed transactions */ - u_int32_t st_nactive; /* number of active transactions */ - u_int32_t st_nrestores; /* number of restored transactions - after recovery. */ - u_int32_t st_maxnactive; /* maximum active transactions */ - DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ - u_int32_t st_region_wait; /* Region lock granted after wait. */ - u_int32_t st_region_nowait; /* Region lock granted without wait. */ - roff_t st_regsize; /* Region size. */ -}; - -/******************************************************* - * Replication. - *******************************************************/ -/* Special, out-of-band environment IDs. */ -#define DB_EID_BROADCAST -1 -#define DB_EID_INVALID -2 - -/* rep_start flags values */ -#define DB_REP_CLIENT 0x001 -#define DB_REP_MASTER 0x002 - -/* Replication statistics. */ -struct __db_rep_stat { - /* !!! - * Many replication statistics fields cannot be protected by a mutex - * without an unacceptable performance penalty, since most message - * processing is done without the need to hold a region-wide lock. - * Fields whose comments end with a '+' may be updated without holding - * the replication or log mutexes (as appropriate), and thus may be - * off somewhat (or, on unreasonable architectures under unlucky - * circumstances, garbaged). - */ - u_int32_t st_status; /* Current replication status. */ - DB_LSN st_next_lsn; /* Next LSN to use or expect. */ - DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ - db_pgno_t st_next_pg; /* Next pg we expect. */ - db_pgno_t st_waiting_pg; /* pg we're awaiting, if any. */ - - u_int32_t st_dupmasters; /* # of times a duplicate master - condition was detected.+ */ - int st_env_id; /* Current environment ID. */ - int st_env_priority; /* Current environment priority. */ - u_int32_t st_gen; /* Current generation number. */ - u_int32_t st_egen; /* Current election gen number. */ - u_int32_t st_log_duplicated; /* Log records received multiply.+ */ - u_int32_t st_log_queued; /* Log records currently queued.+ */ - u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ - u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ - u_int32_t st_log_records; /* Log records received and put.+ */ - u_int32_t st_log_requested; /* Log recs. missed and requested.+ */ - int st_master; /* Env. ID of the current master. */ - u_int32_t st_master_changes; /* # of times we've switched masters. */ - u_int32_t st_msgs_badgen; /* Messages with a bad generation #.+ */ - u_int32_t st_msgs_processed; /* Messages received and processed.+ */ - u_int32_t st_msgs_recover; /* Messages ignored because this site - was a client in recovery.+ */ - u_int32_t st_msgs_send_failures;/* # of failed message sends.+ */ - u_int32_t st_msgs_sent; /* # of successful message sends.+ */ - u_int32_t st_newsites; /* # of NEWSITE msgs. received.+ */ - int st_nsites; /* Current number of sites we will - assume during elections. */ - u_int32_t st_nthrottles; /* # of times we were throttled. */ - u_int32_t st_outdated; /* # of times we detected and returned - an OUTDATED condition.+ */ - u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ - u_int32_t st_pg_records; /* Pages received and stored.+ */ - u_int32_t st_pg_requested; /* Pages missed and requested.+ */ - u_int32_t st_startup_complete; /* Site completed client sync-up. */ - u_int32_t st_txns_applied; /* # of transactions applied.+ */ - - /* Elections generally. */ - u_int32_t st_elections; /* # of elections held.+ */ - u_int32_t st_elections_won; /* # of elections won by this site.+ */ - - /* Statistics about an in-progress election. */ - int st_election_cur_winner; /* Current front-runner. */ - u_int32_t st_election_gen; /* Election generation number. */ - DB_LSN st_election_lsn; /* Max. LSN of current winner. */ - int st_election_nsites; /* # of "registered voters". */ - int st_election_nvotes; /* # of "registered voters" needed. */ - int st_election_priority; /* Current election priority. */ - int st_election_status; /* Current election status. */ - u_int32_t st_election_tiebreaker;/* Election tiebreaker value. */ - int st_election_votes; /* Votes received in this round. */ -}; -/* - * The storage record for a sequence. - */ -struct __db_seq_record { - u_int32_t seq_version; /* Version size/number. */ -#define DB_SEQ_DEC 0x00000001 /* Decrement sequence. */ -#define DB_SEQ_INC 0x00000002 /* Increment sequence. */ -#define DB_SEQ_RANGE_SET 0x00000004 /* Range set (internal). */ -#define DB_SEQ_WRAP 0x00000008 /* Wrap sequence at min/max. */ - u_int32_t flags; /* Flags. */ - db_seq_t seq_value; /* Current value. */ - db_seq_t seq_max; /* Max permitted. */ - db_seq_t seq_min; /* Min permitted. */ -}; - -/* - * Handle for a sequence object. - */ -struct __db_sequence { - DB *seq_dbp; /* DB handle for this sequence. */ - DB_MUTEX *seq_mutexp; /* Mutex if sequence is threaded. */ - DB_SEQ_RECORD *seq_rp; /* Pointer to current data. */ - DB_SEQ_RECORD seq_record; /* Data from DB_SEQUENCE. */ - int32_t seq_cache_size; /* Number of values cached. */ - db_seq_t seq_last_value; /* Last value cached. */ - DBT seq_key; /* DBT pointing to sequence key. */ - DBT seq_data; /* DBT pointing to seq_record. */ - - /* API-private structure: used by C++ and Java. */ - void *api_internal; - - int (*close) __P((DB_SEQUENCE *, u_int32_t)); - int (*get) __P((DB_SEQUENCE *, - DB_TXN *, int32_t, db_seq_t *, u_int32_t)); - int (*get_cachesize) __P((DB_SEQUENCE *, int32_t *)); - int (*get_db) __P((DB_SEQUENCE *, DB **)); - int (*get_flags) __P((DB_SEQUENCE *, u_int32_t *)); - int (*get_key) __P((DB_SEQUENCE *, DBT *)); - int (*get_range) __P((DB_SEQUENCE *, - db_seq_t *, db_seq_t *)); - int (*initial_value) __P((DB_SEQUENCE *, db_seq_t)); - int (*open) __P((DB_SEQUENCE *, - DB_TXN *, DBT *, u_int32_t)); - int (*remove) __P((DB_SEQUENCE *, DB_TXN *, u_int32_t)); - int (*set_cachesize) __P((DB_SEQUENCE *, int32_t)); - int (*set_flags) __P((DB_SEQUENCE *, u_int32_t)); - int (*set_range) __P((DB_SEQUENCE *, db_seq_t, db_seq_t)); - int (*stat) __P((DB_SEQUENCE *, - DB_SEQUENCE_STAT **, u_int32_t)); - int (*stat_print) __P((DB_SEQUENCE *, u_int32_t)); -}; - -struct __db_seq_stat { - u_int32_t st_wait; /* Sequence lock granted without wait. */ - u_int32_t st_nowait; /* Sequence lock granted after wait. */ - db_seq_t st_current; /* Current value in db. */ - db_seq_t st_value; /* Current cached value. */ - db_seq_t st_last_value; /* Last cached value. */ - db_seq_t st_min; /* Minimum value. */ - db_seq_t st_max; /* Maximum value. */ - int32_t st_cache_size; /* Cache size. */ - u_int32_t st_flags; /* Flag value. */ -}; - -/******************************************************* - * Access methods. - *******************************************************/ -typedef enum { - DB_BTREE=1, - DB_HASH=2, - DB_RECNO=3, - DB_QUEUE=4, - DB_UNKNOWN=5 /* Figure it out on open. */ -} DBTYPE; - -#define DB_RENAMEMAGIC 0x030800 /* File has been renamed. */ - -#define DB_BTREEVERSION 9 /* Current btree version. */ -#define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ -#define DB_BTREEMAGIC 0x053162 - -#define DB_HASHVERSION 8 /* Current hash version. */ -#define DB_HASHOLDVER 7 /* Oldest hash version supported. */ -#define DB_HASHMAGIC 0x061561 - -#define DB_QAMVERSION 4 /* Current queue version. */ -#define DB_QAMOLDVER 3 /* Oldest queue version supported. */ -#define DB_QAMMAGIC 0x042253 - -#define DB_SEQUENCE_VERSION 1 /* Current sequence version. */ - -/* - * DB access method and cursor operation values. Each value is an operation - * code to which additional bit flags are added. - */ -#define DB_AFTER 1 /* c_put() */ -#define DB_APPEND 2 /* put() */ -#define DB_BEFORE 3 /* c_put() */ -#define DB_CACHED_COUNTS 4 /* stat() */ -#define DB_CONSUME 5 /* get() */ -#define DB_CONSUME_WAIT 6 /* get() */ -#define DB_CURRENT 7 /* c_get(), c_put(), DB_LOGC->get() */ -#define DB_FAST_STAT 8 /* stat() */ -#define DB_FIRST 9 /* c_get(), DB_LOGC->get() */ -#define DB_GET_BOTH 10 /* get(), c_get() */ -#define DB_GET_BOTHC 11 /* c_get() (internal) */ -#define DB_GET_BOTH_RANGE 12 /* get(), c_get() */ -#define DB_GET_RECNO 13 /* c_get() */ -#define DB_JOIN_ITEM 14 /* c_get(); do not do primary lookup */ -#define DB_KEYFIRST 15 /* c_put() */ -#define DB_KEYLAST 16 /* c_put() */ -#define DB_LAST 17 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT 18 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT_DUP 19 /* c_get() */ -#define DB_NEXT_NODUP 20 /* c_get() */ -#define DB_NODUPDATA 21 /* put(), c_put() */ -#define DB_NOOVERWRITE 22 /* put() */ -#define DB_NOSYNC 23 /* close() */ -#define DB_POSITION 24 /* c_dup() */ -#define DB_PREV 25 /* c_get(), DB_LOGC->get() */ -#define DB_PREV_NODUP 26 /* c_get(), DB_LOGC->get() */ -#define DB_RECORDCOUNT 27 /* stat() */ -#define DB_SET 28 /* c_get(), DB_LOGC->get() */ -#define DB_SET_LOCK_TIMEOUT 29 /* set_timout() */ -#define DB_SET_RANGE 30 /* c_get() */ -#define DB_SET_RECNO 31 /* get(), c_get() */ -#define DB_SET_TXN_NOW 32 /* set_timout() (internal) */ -#define DB_SET_TXN_TIMEOUT 33 /* set_timout() */ -#define DB_UPDATE_SECONDARY 34 /* c_get(), c_del() (internal) */ -#define DB_WRITECURSOR 35 /* cursor() */ -#define DB_WRITELOCK 36 /* cursor() (internal) */ - -/* This has to change when the max opcode hits 255. */ -#define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ - -/* - * Masks for flags that can be OR'd into DB access method and cursor - * operation values. - * - * DB_DIRTY_READ 0x04000000 Dirty Read. */ -#define DB_MULTIPLE 0x08000000 /* Return multiple data values. */ -#define DB_MULTIPLE_KEY 0x10000000 /* Return multiple data/key pairs. */ -#define DB_RMW 0x20000000 /* Acquire write flag immediately. */ - -/* - * DB (user visible) error return codes. - * - * !!! - * For source compatibility with DB 2.X deadlock return (EAGAIN), use the - * following: - * #include - * #define DB_LOCK_DEADLOCK EAGAIN - * - * !!! - * We don't want our error returns to conflict with other packages where - * possible, so pick a base error value that's hopefully not common. We - * document that we own the error name space from -30,800 to -30,999. - */ -/* DB (public) error return codes. */ -#define DB_BUFFER_SMALL (-30999)/* User memory too small for return. */ -#define DB_DONOTINDEX (-30998)/* "Null" return from 2ndary callbk. */ -#define DB_KEYEMPTY (-30997)/* Key/data deleted or never created. */ -#define DB_KEYEXIST (-30996)/* The key/data pair already exists. */ -#define DB_LOCK_DEADLOCK (-30995)/* Deadlock. */ -#define DB_LOCK_NOTGRANTED (-30994)/* Lock unavailable. */ -#define DB_LOG_BUFFER_FULL (-30993)/* In-memory log buffer full. */ -#define DB_NOSERVER (-30992)/* Server panic return. */ -#define DB_NOSERVER_HOME (-30991)/* Bad home sent to server. */ -#define DB_NOSERVER_ID (-30990)/* Bad ID sent to server. */ -#define DB_NOTFOUND (-30989)/* Key/data pair not found (EOF). */ -#define DB_OLD_VERSION (-30988)/* Out-of-date version. */ -#define DB_PAGE_NOTFOUND (-30987)/* Requested page not found. */ -#define DB_REP_DUPMASTER (-30986)/* There are two masters. */ -#define DB_REP_HANDLE_DEAD (-30985)/* Rolled back a commit. */ -#define DB_REP_HOLDELECTION (-30984)/* Time to hold an election. */ -#define DB_REP_ISPERM (-30983)/* Cached not written perm written.*/ -#define DB_REP_NEWMASTER (-30982)/* We have learned of a new master. */ -#define DB_REP_NEWSITE (-30981)/* New site entered system. */ -#define DB_REP_NOTPERM (-30980)/* Permanent log record not written. */ -#define DB_REP_STARTUPDONE (-30979)/* Client startup complete. */ -#define DB_REP_UNAVAIL (-30978)/* Site cannot currently be reached. */ -#define DB_RUNRECOVERY (-30977)/* Panic return. */ -#define DB_SECONDARY_BAD (-30976)/* Secondary index corrupt. */ -#define DB_VERIFY_BAD (-30975)/* Verify failed; bad format. */ -#define DB_VERSION_MISMATCH (-30974)/* Environment version mismatch. */ - -/* DB (private) error return codes. */ -#define DB_ALREADY_ABORTED (-30899) -#define DB_DELETED (-30898)/* Recovery file marked deleted. */ -#define DB_LOCK_NOTEXIST (-30897)/* Object to lock is gone. */ -#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ -#define DB_REP_EGENCHG (-30895)/* Egen changed while in election. */ -#define DB_REP_LOGREADY (-30894)/* Rep log ready for recovery. */ -#define DB_REP_PAGEDONE (-30893)/* This page was already done. */ -#define DB_SURPRISE_KID (-30892)/* Child commit where parent - didn't know it was a parent. */ -#define DB_SWAPBYTES (-30891)/* Database needs byte swapping. */ -#define DB_TIMEOUT (-30890)/* Timed out waiting for election. */ -#define DB_TXN_CKP (-30889)/* Encountered ckp record in log. */ -#define DB_VERIFY_FATAL (-30888)/* DB->verify cannot proceed. */ - -/* Database handle. */ -struct __db { - /******************************************************* - * Public: owned by the application. - *******************************************************/ - u_int32_t pgsize; /* Database logical page size. */ - - /* Callbacks. */ - int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); - void (*db_feedback) __P((DB *, int, int)); - int (*dup_compare) __P((DB *, const DBT *, const DBT *)); - - void *app_private; /* Application-private handle. */ - - /******************************************************* - * Private: owned by DB. - *******************************************************/ - DB_ENV *dbenv; /* Backing environment. */ - - DBTYPE type; /* DB access method type. */ - - DB_MPOOLFILE *mpf; /* Backing buffer pool. */ - - DB_MUTEX *mutexp; /* Synchronization for free threading */ - - char *fname, *dname; /* File/database passed to DB->open. */ - u_int32_t open_flags; /* Flags passed to DB->open. */ - - u_int8_t fileid[DB_FILE_ID_LEN];/* File's unique ID for locking. */ - - u_int32_t adj_fileid; /* File's unique ID for curs. adj. */ - -#define DB_LOGFILEID_INVALID -1 - FNAME *log_filename; /* File's naming info for logging. */ - - db_pgno_t meta_pgno; /* Meta page number */ - u_int32_t lid; /* Locker id for handle locking. */ - u_int32_t cur_lid; /* Current handle lock holder. */ - u_int32_t associate_lid; /* Locker id for DB->associate call. */ - DB_LOCK handle_lock; /* Lock held on this handle. */ - - u_int cl_id; /* RPC: remote client id. */ - - time_t timestamp; /* Handle timestamp for replication. */ - - /* - * Returned data memory for DB->get() and friends. - */ - DBT my_rskey; /* Secondary key. */ - DBT my_rkey; /* [Primary] key. */ - DBT my_rdata; /* Data. */ - - /* - * !!! - * Some applications use DB but implement their own locking outside of - * DB. If they're using fcntl(2) locking on the underlying database - * file, and we open and close a file descriptor for that file, we will - * discard their locks. The DB_FCNTL_LOCKING flag to DB->open is an - * undocumented interface to support this usage which leaves any file - * descriptors we open until DB->close. This will only work with the - * DB->open interface and simple caches, e.g., creating a transaction - * thread may open/close file descriptors this flag doesn't protect. - * Locking with fcntl(2) on a file that you don't own is a very, very - * unsafe thing to do. 'Nuff said. - */ - DB_FH *saved_open_fhp; /* Saved file handle. */ - - /* - * Linked list of DBP's, linked from the DB_ENV, used to keep track - * of all open db handles for cursor adjustment. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_ENTRY(__db) dblistlinks; - */ - struct { - struct __db *le_next; - struct __db **le_prev; - } dblistlinks; - - /* - * Cursor queues. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_HEAD(__cq_fq, __dbc) free_queue; - * TAILQ_HEAD(__cq_aq, __dbc) active_queue; - * TAILQ_HEAD(__cq_jq, __dbc) join_queue; - */ - struct __cq_fq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } free_queue; - struct __cq_aq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } active_queue; - struct __cq_jq { - struct __dbc *tqh_first; - struct __dbc **tqh_last; - } join_queue; - - /* - * Secondary index support. - * - * Linked list of secondary indices -- set in the primary. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_HEAD(s_secondaries, __db); - */ - struct { - struct __db *lh_first; - } s_secondaries; - - /* - * List entries for secondaries, and reference count of how - * many threads are updating this secondary (see __db_c_put). - * - * !!! - * Note that these are synchronized by the primary's mutex, but - * filled in in the secondaries. - * - * !!! - * Explicit representations of structures from queue.h. - * LIST_ENTRY(__db) s_links; - */ - struct { - struct __db *le_next; - struct __db **le_prev; - } s_links; - u_int32_t s_refcnt; - - /* Secondary callback and free functions -- set in the secondary. */ - int (*s_callback) __P((DB *, const DBT *, const DBT *, DBT *)); - - /* Reference to primary -- set in the secondary. */ - DB *s_primary; - - /* API-private structure: used by DB 1.85, C++, Java, Perl and Tcl */ - void *api_internal; - - /* Subsystem-private structure. */ - void *bt_internal; /* Btree/Recno access method. */ - void *h_internal; /* Hash access method. */ - void *q_internal; /* Queue access method. */ - void *xa_internal; /* XA. */ - - /* Methods. */ - int (*associate) __P((DB *, DB_TXN *, DB *, int (*)(DB *, const DBT *, - const DBT *, DBT *), u_int32_t)); - int (*close) __P((DB *, u_int32_t)); - int (*cursor) __P((DB *, DB_TXN *, DBC **, u_int32_t)); - int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); - int (*dump) __P((DB *, - const char *, int (*)(void *, const void *), void *, int, int)); - void (*err) __P((DB *, int, const char *, ...)); - void (*errx) __P((DB *, const char *, ...)); - int (*fd) __P((DB *, int *)); - int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*pget) __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); - int (*get_byteswapped) __P((DB *, int *)); - int (*get_cachesize) __P((DB *, u_int32_t *, u_int32_t *, int *)); - int (*get_dbname) __P((DB *, const char **, const char **)); - int (*get_encrypt_flags) __P((DB *, u_int32_t *)); - DB_ENV *(*get_env) __P((DB *)); - void (*get_errfile) __P((DB *, FILE **)); - void (*get_errpfx) __P((DB *, const char **)); - int (*get_flags) __P((DB *, u_int32_t *)); - int (*get_lorder) __P((DB *, int *)); - int (*get_open_flags) __P((DB *, u_int32_t *)); - int (*get_pagesize) __P((DB *, u_int32_t *)); - int (*get_transactional) __P((DB *)); - int (*get_type) __P((DB *, DBTYPE *)); - int (*join) __P((DB *, DBC **, DBC **, u_int32_t)); - int (*key_range) __P((DB *, - DB_TXN *, DBT *, DB_KEY_RANGE *, u_int32_t)); - int (*open) __P((DB *, DB_TXN *, - const char *, const char *, DBTYPE, u_int32_t, int)); - int (*put) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*remove) __P((DB *, const char *, const char *, u_int32_t)); - int (*rename) __P((DB *, - const char *, const char *, const char *, u_int32_t)); - int (*truncate) __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); - int (*set_append_recno) __P((DB *, int (*)(DB *, DBT *, db_recno_t))); - int (*set_alloc) __P((DB *, void *(*)(size_t), - void *(*)(void *, size_t), void (*)(void *))); - int (*set_cachesize) __P((DB *, u_int32_t, u_int32_t, int)); - int (*set_dup_compare) __P((DB *, - int (*)(DB *, const DBT *, const DBT *))); - int (*set_encrypt) __P((DB *, const char *, u_int32_t)); - void (*set_errcall) __P((DB *, - void (*)(const DB_ENV *, const char *, const char *))); - void (*set_errfile) __P((DB *, FILE *)); - void (*set_errpfx) __P((DB *, const char *)); - int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); - int (*set_flags) __P((DB *, u_int32_t)); - int (*set_lorder) __P((DB *, int)); - void (*set_msgcall) __P((DB *, void (*)(const DB_ENV *, const char *))); - void (*get_msgfile) __P((DB *, FILE **)); - void (*set_msgfile) __P((DB *, FILE *)); - int (*set_pagesize) __P((DB *, u_int32_t)); - int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); - int (*stat) __P((DB *, DB_TXN *, void *, u_int32_t)); - int (*stat_print) __P((DB *, u_int32_t)); - int (*sync) __P((DB *, u_int32_t)); - int (*upgrade) __P((DB *, const char *, u_int32_t)); - int (*verify) __P((DB *, - const char *, const char *, FILE *, u_int32_t)); - - int (*get_bt_minkey) __P((DB *, u_int32_t *)); - int (*set_bt_compare) __P((DB *, - int (*)(DB *, const DBT *, const DBT *))); - int (*set_bt_maxkey) __P((DB *, u_int32_t)); - int (*set_bt_minkey) __P((DB *, u_int32_t)); - int (*set_bt_prefix) __P((DB *, - size_t (*)(DB *, const DBT *, const DBT *))); - - int (*get_h_ffactor) __P((DB *, u_int32_t *)); - int (*get_h_nelem) __P((DB *, u_int32_t *)); - int (*set_h_ffactor) __P((DB *, u_int32_t)); - int (*set_h_hash) __P((DB *, - u_int32_t (*)(DB *, const void *, u_int32_t))); - int (*set_h_nelem) __P((DB *, u_int32_t)); - - int (*get_re_delim) __P((DB *, int *)); - int (*get_re_len) __P((DB *, u_int32_t *)); - int (*get_re_pad) __P((DB *, int *)); - int (*get_re_source) __P((DB *, const char **)); - int (*set_re_delim) __P((DB *, int)); - int (*set_re_len) __P((DB *, u_int32_t)); - int (*set_re_pad) __P((DB *, int)); - int (*set_re_source) __P((DB *, const char *)); - - int (*get_q_extentsize) __P((DB *, u_int32_t *)); - int (*set_q_extentsize) __P((DB *, u_int32_t)); - - int (*db_am_remove) __P((DB *, DB_TXN *, const char *, const char *)); - int (*db_am_rename) __P((DB *, DB_TXN *, - const char *, const char *, const char *)); - - /* - * Never called; these are a place to save function pointers - * so that we can undo an associate. - */ - int (*stored_get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); - int (*stored_close) __P((DB *, u_int32_t)); - -#define DB_OK_BTREE 0x01 -#define DB_OK_HASH 0x02 -#define DB_OK_QUEUE 0x04 -#define DB_OK_RECNO 0x08 - u_int32_t am_ok; /* Legal AM choices. */ - -#define DB_AM_CHKSUM 0x00000001 /* Checksumming. */ -#define DB_AM_CL_WRITER 0x00000002 /* Allow writes in client replica. */ -#define DB_AM_COMPENSATE 0x00000004 /* Created by compensating txn. */ -#define DB_AM_CREATED 0x00000008 /* Database was created upon open. */ -#define DB_AM_CREATED_MSTR 0x00000010 /* Encompassing file was created. */ -#define DB_AM_DBM_ERROR 0x00000020 /* Error in DBM/NDBM database. */ -#define DB_AM_DELIMITER 0x00000040 /* Variable length delimiter set. */ -#define DB_AM_DIRTY 0x00000080 /* Support Dirty Reads. */ -#define DB_AM_DISCARD 0x00000100 /* Discard any cached pages. */ -#define DB_AM_DUP 0x00000200 /* DB_DUP. */ -#define DB_AM_DUPSORT 0x00000400 /* DB_DUPSORT. */ -#define DB_AM_ENCRYPT 0x00000800 /* Encryption. */ -#define DB_AM_FIXEDLEN 0x00001000 /* Fixed-length records. */ -#define DB_AM_INMEM 0x00002000 /* In-memory; no sync on close. */ -#define DB_AM_INORDER 0x00004000 /* DB_INORDER. */ -#define DB_AM_IN_RENAME 0x00008000 /* File is being renamed. */ -#define DB_AM_NOT_DURABLE 0x00010000 /* Do not log changes. */ -#define DB_AM_OPEN_CALLED 0x00020000 /* DB->open called. */ -#define DB_AM_PAD 0x00040000 /* Fixed-length record pad. */ -#define DB_AM_PGDEF 0x00080000 /* Page size was defaulted. */ -#define DB_AM_RDONLY 0x00100000 /* Database is readonly. */ -#define DB_AM_RECNUM 0x00200000 /* DB_RECNUM. */ -#define DB_AM_RECOVER 0x00400000 /* DB opened by recovery routine. */ -#define DB_AM_RENUMBER 0x00800000 /* DB_RENUMBER. */ -#define DB_AM_REPLICATION 0x01000000 /* An internal replication file. */ -#define DB_AM_REVSPLITOFF 0x02000000 /* DB_REVSPLITOFF. */ -#define DB_AM_SECONDARY 0x04000000 /* Database is a secondary index. */ -#define DB_AM_SNAPSHOT 0x08000000 /* DB_SNAPSHOT. */ -#define DB_AM_SUBDB 0x10000000 /* Subdatabases supported. */ -#define DB_AM_SWAP 0x20000000 /* Pages need to be byte-swapped. */ -#define DB_AM_TXN 0x40000000 /* Opened in a transaction. */ -#define DB_AM_VERIFYING 0x80000000 /* DB handle is in the verifier. */ - u_int32_t orig_flags; /* Flags at open, for refresh. */ - u_int32_t flags; -}; - -/* - * Macros for bulk get. These are only intended for the C API. - * For C++, use DbMultiple*Iterator. - */ -#define DB_MULTIPLE_INIT(pointer, dbt) \ - (pointer = (u_int8_t *)(dbt)->data + \ - (dbt)->ulen - sizeof(u_int32_t)) -#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ - retdata = NULL; \ - pointer = NULL; \ - break; \ - } \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - if (retdlen == 0 && \ - retdata == (u_int8_t *)(dbt)->data) \ - retdata = NULL; \ - } while (0) -#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey, retklen, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ - retdata = NULL; \ - retkey = NULL; \ - pointer = NULL; \ - break; \ - } \ - retkey = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retklen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - } while (0) - -#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno, retdata, retdlen) \ - do { \ - if (*((u_int32_t *)(pointer)) == (u_int32_t)0) { \ - recno = 0; \ - retdata = NULL; \ - pointer = NULL; \ - break; \ - } \ - recno = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdata = (u_int8_t *) \ - (dbt)->data + *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - retdlen = *(u_int32_t *)(pointer); \ - (pointer) = (u_int32_t *)(pointer) - 1; \ - } while (0) - -/******************************************************* - * Access method cursors. - *******************************************************/ -struct __dbc { - DB *dbp; /* Related DB access method. */ - DB_TXN *txn; /* Associated transaction. */ - - /* - * Active/free cursor queues. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__dbc) links; - */ - struct { - DBC *tqe_next; - DBC **tqe_prev; - } links; - - /* - * The DBT *'s below are used by the cursor routines to return - * data to the user when DBT flags indicate that DB should manage - * the returned memory. They point at a DBT containing the buffer - * and length that will be used, and "belonging" to the handle that - * should "own" this memory. This may be a "my_*" field of this - * cursor--the default--or it may be the corresponding field of - * another cursor, a DB handle, a join cursor, etc. In general, it - * will be whatever handle the user originally used for the current - * DB interface call. - */ - DBT *rskey; /* Returned secondary key. */ - DBT *rkey; /* Returned [primary] key. */ - DBT *rdata; /* Returned data. */ - - DBT my_rskey; /* Space for returned secondary key. */ - DBT my_rkey; /* Space for returned [primary] key. */ - DBT my_rdata; /* Space for returned data. */ - - u_int32_t lid; /* Default process' locker id. */ - u_int32_t locker; /* Locker for this operation. */ - DBT lock_dbt; /* DBT referencing lock. */ - DB_LOCK_ILOCK lock; /* Object to be locked. */ - DB_LOCK mylock; /* CDB lock held on this cursor. */ - - u_int cl_id; /* Remote client id. */ - - DBTYPE dbtype; /* Cursor type. */ - - DBC_INTERNAL *internal; /* Access method private. */ - - int (*c_close) __P((DBC *)); /* Methods: public. */ - int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); - int (*c_del) __P((DBC *, u_int32_t)); - int (*c_dup) __P((DBC *, DBC **, u_int32_t)); - int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); - int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); - int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); - - /* Methods: private. */ - int (*c_am_bulk) __P((DBC *, DBT *, u_int32_t)); - int (*c_am_close) __P((DBC *, db_pgno_t, int *)); - int (*c_am_del) __P((DBC *)); - int (*c_am_destroy) __P((DBC *)); - int (*c_am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_writelock) __P((DBC *)); - -#define DBC_ACTIVE 0x0001 /* Cursor in use. */ -#define DBC_COMPENSATE 0x0002 /* Cursor compensating, don't lock. */ -#define DBC_DEGREE_2 0x0004 /* Cursor has degree 2 isolation. */ -#define DBC_DIRTY_READ 0x0008 /* Cursor supports dirty reads. */ -#define DBC_OPD 0x0010 /* Cursor references off-page dups. */ -#define DBC_RECOVER 0x0020 /* Recovery cursor; don't log/lock. */ -#define DBC_RMW 0x0040 /* Acquire write flag in read op. */ -#define DBC_TRANSIENT 0x0080 /* Cursor is transient. */ -#define DBC_WRITECURSOR 0x0100 /* Cursor may be used to write (CDB). */ -#define DBC_WRITER 0x0200 /* Cursor immediately writing (CDB). */ -#define DBC_MULTIPLE 0x0400 /* Return Multiple data. */ -#define DBC_MULTIPLE_KEY 0x0800 /* Return Multiple keys and data. */ -#define DBC_OWN_LID 0x1000 /* Free lock id on destroy. */ - u_int32_t flags; -}; - -/* Key range statistics structure */ -struct __key_range { - double less; - double equal; - double greater; -}; - -/* Btree/Recno statistics structure. */ -struct __db_bt_stat { - u_int32_t bt_magic; /* Magic number. */ - u_int32_t bt_version; /* Version number. */ - u_int32_t bt_metaflags; /* Metadata flags. */ - u_int32_t bt_nkeys; /* Number of unique keys. */ - u_int32_t bt_ndata; /* Number of data items. */ - u_int32_t bt_pagesize; /* Page size. */ - u_int32_t bt_maxkey; /* Maxkey value. */ - u_int32_t bt_minkey; /* Minkey value. */ - u_int32_t bt_re_len; /* Fixed-length record length. */ - u_int32_t bt_re_pad; /* Fixed-length record pad. */ - u_int32_t bt_levels; /* Tree levels. */ - u_int32_t bt_int_pg; /* Internal pages. */ - u_int32_t bt_leaf_pg; /* Leaf pages. */ - u_int32_t bt_dup_pg; /* Duplicate pages. */ - u_int32_t bt_over_pg; /* Overflow pages. */ - u_int32_t bt_empty_pg; /* Empty pages. */ - u_int32_t bt_free; /* Pages on the free list. */ - u_int32_t bt_int_pgfree; /* Bytes free in internal pages. */ - u_int32_t bt_leaf_pgfree; /* Bytes free in leaf pages. */ - u_int32_t bt_dup_pgfree; /* Bytes free in duplicate pages. */ - u_int32_t bt_over_pgfree; /* Bytes free in overflow pages. */ -}; - -/* Hash statistics structure. */ -struct __db_h_stat { - u_int32_t hash_magic; /* Magic number. */ - u_int32_t hash_version; /* Version number. */ - u_int32_t hash_metaflags; /* Metadata flags. */ - u_int32_t hash_nkeys; /* Number of unique keys. */ - u_int32_t hash_ndata; /* Number of data items. */ - u_int32_t hash_pagesize; /* Page size. */ - u_int32_t hash_ffactor; /* Fill factor specified at create. */ - u_int32_t hash_buckets; /* Number of hash buckets. */ - u_int32_t hash_free; /* Pages on the free list. */ - u_int32_t hash_bfree; /* Bytes free on bucket pages. */ - u_int32_t hash_bigpages; /* Number of big key/data pages. */ - u_int32_t hash_big_bfree; /* Bytes free on big item pages. */ - u_int32_t hash_overflows; /* Number of overflow pages. */ - u_int32_t hash_ovfl_free; /* Bytes free on ovfl pages. */ - u_int32_t hash_dup; /* Number of dup pages. */ - u_int32_t hash_dup_free; /* Bytes free on duplicate pages. */ -}; - -/* Queue statistics structure. */ -struct __db_qam_stat { - u_int32_t qs_magic; /* Magic number. */ - u_int32_t qs_version; /* Version number. */ - u_int32_t qs_metaflags; /* Metadata flags. */ - u_int32_t qs_nkeys; /* Number of unique keys. */ - u_int32_t qs_ndata; /* Number of data items. */ - u_int32_t qs_pagesize; /* Page size. */ - u_int32_t qs_extentsize; /* Pages per extent. */ - u_int32_t qs_pages; /* Data pages. */ - u_int32_t qs_re_len; /* Fixed-length record length. */ - u_int32_t qs_re_pad; /* Fixed-length record pad. */ - u_int32_t qs_pgfree; /* Bytes free in data pages. */ - u_int32_t qs_first_recno; /* First not deleted record. */ - u_int32_t qs_cur_recno; /* Next available record number. */ -}; - -/******************************************************* - * Environment. - *******************************************************/ -#define DB_REGION_MAGIC 0x120897 /* Environment magic number. */ - -/* Database Environment handle. */ -struct __db_env { - /******************************************************* - * Public: owned by the application. - *******************************************************/ - /* Error message callback. */ - void (*db_errcall) __P((const DB_ENV *, const char *, const char *)); - FILE *db_errfile; /* Error message file stream. */ - const char *db_errpfx; /* Error message prefix. */ - - FILE *db_msgfile; /* Statistics message file stream. */ - /* Statistics message callback. */ - void (*db_msgcall) __P((const DB_ENV *, const char *)); - - /* Other Callbacks. */ - void (*db_feedback) __P((DB_ENV *, int, int)); - void (*db_paniccall) __P((DB_ENV *, int)); - - /* App-specified alloc functions. */ - void *(*db_malloc) __P((size_t)); - void *(*db_realloc) __P((void *, size_t)); - void (*db_free) __P((void *)); - - /* - * Currently, the verbose list is a bit field with room for 32 - * entries. There's no reason that it needs to be limited, if - * there are ever more than 32 entries, convert to a bit array. - */ -#define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ -#define DB_VERB_RECOVERY 0x0002 /* Recovery information. */ -#define DB_VERB_REPLICATION 0x0004 /* Replication information. */ -#define DB_VERB_WAITSFOR 0x0008 /* Dump waits-for table. */ - u_int32_t verbose; /* Verbose output. */ - - void *app_private; /* Application-private handle. */ - - int (*app_dispatch) /* User-specified recovery dispatch. */ - __P((DB_ENV *, DBT *, DB_LSN *, db_recops)); - - /* Locking. */ - u_int8_t *lk_conflicts; /* Two dimensional conflict matrix. */ - int lk_modes; /* Number of lock modes in table. */ - u_int32_t lk_max; /* Maximum number of locks. */ - u_int32_t lk_max_lockers;/* Maximum number of lockers. */ - u_int32_t lk_max_objects;/* Maximum number of locked objects. */ - u_int32_t lk_detect; /* Deadlock detect on all conflicts. */ - db_timeout_t lk_timeout; /* Lock timeout period. */ - - /* Logging. */ - u_int32_t lg_bsize; /* Buffer size. */ - u_int32_t lg_size; /* Log file size. */ - u_int32_t lg_regionmax; /* Region size. */ - - /* Memory pool. */ - u_int32_t mp_gbytes; /* Cachesize: GB. */ - u_int32_t mp_bytes; /* Cachesize: Bytes. */ - u_int mp_ncache; /* Number of cache regions. */ - size_t mp_mmapsize; /* Maximum file size for mmap. */ - int mp_maxopenfd; /* Maximum open file descriptors. */ - int mp_maxwrite; /* Maximum buffers to write. */ - int /* Sleep after writing max buffers. */ - mp_maxwrite_sleep; - - /* Replication */ - int rep_eid; /* environment id. */ - int (*rep_send) /* Send function. */ - __P((DB_ENV *, const DBT *, const DBT *, - const DB_LSN *, int, u_int32_t)); - - /* Transactions. */ - u_int32_t tx_max; /* Maximum number of transactions. */ - time_t tx_timestamp; /* Recover to specific timestamp. */ - db_timeout_t tx_timeout; /* Timeout for transactions. */ - - /******************************************************* - * Private: owned by DB. - *******************************************************/ - /* User files, paths. */ - char *db_home; /* Database home. */ - char *db_log_dir; /* Database log file directory. */ - char *db_tmp_dir; /* Database tmp file directory. */ - - char **db_data_dir; /* Database data file directories. */ - int data_cnt; /* Database data file slots. */ - int data_next; /* Next Database data file slot. */ - - int db_mode; /* Default open permissions. */ - int dir_mode; /* Intermediate directory perms. */ - u_int32_t env_lid; /* Locker ID in non-threaded handles. */ - u_int32_t open_flags; /* Flags passed to DB_ENV->open. */ - - void *reginfo; /* REGINFO structure reference. */ - DB_FH *lockfhp; /* fcntl(2) locking file handle. */ - - int (**recover_dtab) /* Dispatch table for recover funcs. */ - __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); - size_t recover_dtab_size; - /* Slots in the dispatch table. */ - - void *cl_handle; /* RPC: remote client handle. */ - u_int cl_id; /* RPC: remote client env id. */ - - int db_ref; /* DB reference count. */ - - long shm_key; /* shmget(2) key. */ - u_int32_t tas_spins; /* test-and-set spins. */ - - /* - * List of open DB handles for this DB_ENV, used for cursor - * adjustment. Must be protected for multi-threaded support. - * - * !!! - * As this structure is allocated in per-process memory, the - * mutex may need to be stored elsewhere on architectures unable - * to support mutexes in heap memory, e.g. HP/UX 9. - * - * !!! - * Explicit representation of structure in queue.h. - * LIST_HEAD(dblist, __db); - */ - DB_MUTEX *dblist_mutexp; /* Mutex. */ - struct { - struct __db *lh_first; - } dblist; - - /* - * XA support. - * - * !!! - * Explicit representations of structures from queue.h. - * TAILQ_ENTRY(__db_env) links; - * TAILQ_HEAD(xa_txn, __db_txn); - */ - struct { - struct __db_env *tqe_next; - struct __db_env **tqe_prev; - } links; - struct __xa_txn { /* XA Active Transactions. */ - struct __db_txn *tqh_first; - struct __db_txn **tqh_last; - } xa_txn; - int xa_rmid; /* XA Resource Manager ID. */ - - /* API-private structure. */ - void *api1_internal; /* C++, Perl API private */ - void *api2_internal; /* Java API private */ - - char *passwd; /* Cryptography support. */ - size_t passwd_len; - void *crypto_handle; /* Primary handle. */ - DB_MUTEX *mt_mutexp; /* Mersenne Twister mutex. */ - int mti; /* Mersenne Twister index. */ - u_long *mt; /* Mersenne Twister state vector. */ - - /* DB_ENV Methods. */ - int (*close) __P((DB_ENV *, u_int32_t)); - int (*dbremove) __P((DB_ENV *, - DB_TXN *, const char *, const char *, u_int32_t)); - int (*dbrename) __P((DB_ENV *, DB_TXN *, - const char *, const char *, const char *, u_int32_t)); - void (*err) __P((const DB_ENV *, int, const char *, ...)); - void (*errx) __P((const DB_ENV *, const char *, ...)); - int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); - int (*remove) __P((DB_ENV *, const char *, u_int32_t)); - int (*stat_print) __P((DB_ENV *, u_int32_t)); - - /* House-keeping. */ - int (*fileid_reset) __P((DB_ENV *, char *, int)); - int (*is_bigendian) __P((void)); - int (*lsn_reset) __P((DB_ENV *, char *, int)); - int (*prdbt) __P((DBT *, - int, const char *, void *, int (*)(void *, const void *), int)); - - /* Setters/getters. */ - int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), - void *(*)(void *, size_t), void (*)(void *))); - int (*set_app_dispatch) __P((DB_ENV *, - int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); - int (*get_data_dirs) __P((DB_ENV *, const char ***)); - int (*set_data_dir) __P((DB_ENV *, const char *)); - int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); - void (*set_errcall) __P((DB_ENV *, - void (*)(const DB_ENV *, const char *, const char *))); - void (*get_errfile) __P((DB_ENV *, FILE **)); - void (*set_errfile) __P((DB_ENV *, FILE *)); - void (*get_errpfx) __P((DB_ENV *, const char **)); - void (*set_errpfx) __P((DB_ENV *, const char *)); - int (*set_feedback) __P((DB_ENV *, void (*)(DB_ENV *, int, int))); - int (*get_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_flags) __P((DB_ENV *, u_int32_t, int)); - int (*get_home) __P((DB_ENV *, const char **)); - int (*set_intermediate_dir) __P((DB_ENV *, int, u_int32_t)); - int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); - int (*set_paniccall) __P((DB_ENV *, void (*)(DB_ENV *, int))); - int (*set_rpc_server) __P((DB_ENV *, - void *, const char *, long, long, u_int32_t)); - int (*get_shm_key) __P((DB_ENV *, long *)); - int (*set_shm_key) __P((DB_ENV *, long)); - void (*set_msgcall) __P((DB_ENV *, - void (*)(const DB_ENV *, const char *))); - void (*get_msgfile) __P((DB_ENV *, FILE **)); - void (*set_msgfile) __P((DB_ENV *, FILE *)); - int (*get_tas_spins) __P((DB_ENV *, u_int32_t *)); - int (*set_tas_spins) __P((DB_ENV *, u_int32_t)); - int (*get_tmp_dir) __P((DB_ENV *, const char **)); - int (*set_tmp_dir) __P((DB_ENV *, const char *)); - int (*get_verbose) __P((DB_ENV *, u_int32_t, int *)); - int (*set_verbose) __P((DB_ENV *, u_int32_t, int)); - - void *lg_handle; /* Log handle and methods. */ - int (*get_lg_bsize) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_bsize) __P((DB_ENV *, u_int32_t)); - int (*get_lg_dir) __P((DB_ENV *, const char **)); - int (*set_lg_dir) __P((DB_ENV *, const char *)); - int (*get_lg_max) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_max) __P((DB_ENV *, u_int32_t)); - int (*get_lg_regionmax) __P((DB_ENV *, u_int32_t *)); - int (*set_lg_regionmax) __P((DB_ENV *, u_int32_t)); - int (*log_archive) __P((DB_ENV *, char **[], u_int32_t)); - int (*log_cursor) __P((DB_ENV *, DB_LOGC **, u_int32_t)); - int (*log_file) __P((DB_ENV *, const DB_LSN *, char *, size_t)); - int (*log_flush) __P((DB_ENV *, const DB_LSN *)); - int (*log_put) __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); - int (*log_stat) __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); - int (*log_stat_print) __P((DB_ENV *, u_int32_t)); - - void *lk_handle; /* Lock handle and methods. */ - int (*get_lk_conflicts) __P((DB_ENV *, const u_int8_t **, int *)); - int (*set_lk_conflicts) __P((DB_ENV *, u_int8_t *, int)); - int (*get_lk_detect) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_detect) __P((DB_ENV *, u_int32_t)); - int (*set_lk_max) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_lockers) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_lockers) __P((DB_ENV *, u_int32_t)); - int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); - int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); - int (*lock_detect) __P((DB_ENV *, u_int32_t, u_int32_t, int *)); - int (*lock_get) __P((DB_ENV *, - u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); - int (*lock_put) __P((DB_ENV *, DB_LOCK *)); - int (*lock_id) __P((DB_ENV *, u_int32_t *)); - int (*lock_id_free) __P((DB_ENV *, u_int32_t)); - int (*lock_stat) __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); - int (*lock_stat_print) __P((DB_ENV *, u_int32_t)); - int (*lock_vec) __P((DB_ENV *, - u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); - - void *mp_handle; /* Mpool handle and methods. */ - int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); - int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); - int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); - int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); - int (*get_mp_max_openfd) __P((DB_ENV *, int *)); - int (*set_mp_max_openfd) __P((DB_ENV *, int)); - int (*get_mp_max_write) __P((DB_ENV *, int *, int *)); - int (*set_mp_max_write) __P((DB_ENV *, int, int)); - int (*memp_fcreate) __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); - int (*memp_register) __P((DB_ENV *, int, - int (*)(DB_ENV *, db_pgno_t, void *, DBT *), - int (*)(DB_ENV *, db_pgno_t, void *, DBT *))); - int (*memp_stat) __P((DB_ENV *, - DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); - int (*memp_stat_print) __P((DB_ENV *, u_int32_t)); - int (*memp_sync) __P((DB_ENV *, DB_LSN *)); - int (*memp_trickle) __P((DB_ENV *, int, int *)); - - void *rep_handle; /* Replication handle and methods. */ - int (*rep_elect) __P((DB_ENV *, int, int, int, - u_int32_t, int *, u_int32_t)); - int (*rep_flush) __P((DB_ENV *)); - int (*rep_process_message) __P((DB_ENV *, DBT *, DBT *, - int *, DB_LSN *)); - int (*rep_start) __P((DB_ENV *, DBT *, u_int32_t)); - int (*rep_stat) __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); - int (*rep_stat_print) __P((DB_ENV *, u_int32_t)); - int (*get_rep_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); - int (*set_rep_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); - int (*set_rep_request) __P((DB_ENV *, u_int32_t, u_int32_t)); - int (*set_rep_transport) __P((DB_ENV *, int, - int (*) (DB_ENV *, const DBT *, const DBT *, const DB_LSN *, - int, u_int32_t))); - - void *tx_handle; /* Txn handle and methods. */ - int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); - int (*set_tx_max) __P((DB_ENV *, u_int32_t)); - int (*get_tx_timestamp) __P((DB_ENV *, time_t *)); - int (*set_tx_timestamp) __P((DB_ENV *, time_t *)); - int (*txn_begin) __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); - int (*txn_checkpoint) __P((DB_ENV *, u_int32_t, u_int32_t, u_int32_t)); - int (*txn_recover) __P((DB_ENV *, - DB_PREPLIST *, long, long *, u_int32_t)); - int (*txn_stat) __P((DB_ENV *, DB_TXN_STAT **, u_int32_t)); - int (*txn_stat_print) __P((DB_ENV *, u_int32_t)); - int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); - int (*set_timeout) __P((DB_ENV *, db_timeout_t, u_int32_t)); - -#define DB_TEST_ELECTINIT 1 /* after __rep_elect_init */ -#define DB_TEST_ELECTVOTE1 2 /* after sending VOTE1 */ -#define DB_TEST_POSTDESTROY 3 /* after destroy op */ -#define DB_TEST_POSTLOG 4 /* after logging all pages */ -#define DB_TEST_POSTLOGMETA 5 /* after logging meta in btree */ -#define DB_TEST_POSTOPEN 6 /* after __os_open */ -#define DB_TEST_POSTSYNC 7 /* after syncing the log */ -#define DB_TEST_PREDESTROY 8 /* before destroy op */ -#define DB_TEST_PREOPEN 9 /* before __os_open */ -#define DB_TEST_SUBDB_LOCKS 10 /* subdb locking tests */ - int test_abort; /* Abort value for testing. */ - int test_check; /* Checkpoint value for testing. */ - int test_copy; /* Copy value for testing. */ - -#define DB_ENV_AUTO_COMMIT 0x0000001 /* DB_AUTO_COMMIT. */ -#define DB_ENV_CDB 0x0000002 /* DB_INIT_CDB. */ -#define DB_ENV_CDB_ALLDB 0x0000004 /* CDB environment wide locking. */ -#define DB_ENV_CREATE 0x0000008 /* DB_CREATE set. */ -#define DB_ENV_DBLOCAL 0x0000010 /* DB_ENV allocated for private DB. */ -#define DB_ENV_DIRECT_DB 0x0000020 /* DB_DIRECT_DB set. */ -#define DB_ENV_DIRECT_LOG 0x0000040 /* DB_DIRECT_LOG set. */ -#define DB_ENV_DSYNC_LOG 0x0000080 /* DB_DSYNC_LOG set. */ -#define DB_ENV_FATAL 0x0000100 /* Doing fatal recovery in env. */ -#define DB_ENV_LOCKDOWN 0x0000200 /* DB_LOCKDOWN set. */ -#define DB_ENV_LOG_AUTOREMOVE 0x0000400 /* DB_LOG_AUTOREMOVE set. */ -#define DB_ENV_LOG_INMEMORY 0x0000800 /* DB_LOG_INMEMORY set. */ -#define DB_ENV_NOLOCKING 0x0001000 /* DB_NOLOCKING set. */ -#define DB_ENV_NOMMAP 0x0002000 /* DB_NOMMAP set. */ -#define DB_ENV_NOPANIC 0x0004000 /* Okay if panic set. */ -#define DB_ENV_OPEN_CALLED 0x0008000 /* DB_ENV->open called. */ -#define DB_ENV_OVERWRITE 0x0010000 /* DB_OVERWRITE set. */ -#define DB_ENV_PRIVATE 0x0020000 /* DB_PRIVATE set. */ -#define DB_ENV_REGION_INIT 0x0040000 /* DB_REGION_INIT set. */ -#define DB_ENV_RPCCLIENT 0x0080000 /* DB_RPCCLIENT set. */ -#define DB_ENV_RPCCLIENT_GIVEN 0x0100000 /* User-supplied RPC client struct */ -#define DB_ENV_SYSTEM_MEM 0x0200000 /* DB_SYSTEM_MEM set. */ -#define DB_ENV_THREAD 0x0400000 /* DB_THREAD set. */ -#define DB_ENV_TIME_NOTGRANTED 0x0800000 /* DB_TIME_NOTGRANTED set. */ -#define DB_ENV_TXN_NOSYNC 0x1000000 /* DB_TXN_NOSYNC set. */ -#define DB_ENV_TXN_WRITE_NOSYNC 0x2000000 /* DB_TXN_WRITE_NOSYNC set. */ -#define DB_ENV_YIELDCPU 0x4000000 /* DB_YIELDCPU set. */ - u_int32_t flags; -}; - -#ifndef DB_DBM_HSEARCH -#define DB_DBM_HSEARCH 0 /* No historic interfaces by default. */ -#endif -#if DB_DBM_HSEARCH != 0 -/******************************************************* - * Dbm/Ndbm historic interfaces. - *******************************************************/ -typedef struct __db DBM; - -#define DBM_INSERT 0 /* Flags to dbm_store(). */ -#define DBM_REPLACE 1 - -/* - * The DB support for ndbm(3) always appends this suffix to the - * file name to avoid overwriting the user's original database. - */ -#define DBM_SUFFIX ".db" - -#if defined(_XPG4_2) -typedef struct { - char *dptr; - size_t dsize; -} datum; -#else -typedef struct { - char *dptr; - int dsize; -} datum; -#endif - -/* - * Translate NDBM calls into DB calls so that DB doesn't step on the - * application's name space. - */ -#define dbm_clearerr(a) __db_ndbm_clearerr(a) -#define dbm_close(a) __db_ndbm_close(a) -#define dbm_delete(a, b) __db_ndbm_delete(a, b) -#define dbm_dirfno(a) __db_ndbm_dirfno(a) -#define dbm_error(a) __db_ndbm_error(a) -#define dbm_fetch(a, b) __db_ndbm_fetch(a, b) -#define dbm_firstkey(a) __db_ndbm_firstkey(a) -#define dbm_nextkey(a) __db_ndbm_nextkey(a) -#define dbm_open(a, b, c) __db_ndbm_open(a, b, c) -#define dbm_pagfno(a) __db_ndbm_pagfno(a) -#define dbm_rdonly(a) __db_ndbm_rdonly(a) -#define dbm_store(a, b, c, d) \ - __db_ndbm_store(a, b, c, d) - -/* - * Translate DBM calls into DB calls so that DB doesn't step on the - * application's name space. - * - * The global variables dbrdonly, dirf and pagf were not retained when 4BSD - * replaced the dbm interface with ndbm, and are not supported here. - */ -#define dbminit(a) __db_dbm_init(a) -#define dbmclose __db_dbm_close -#if !defined(__cplusplus) -#define delete(a) __db_dbm_delete(a) -#endif -#define fetch(a) __db_dbm_fetch(a) -#define firstkey __db_dbm_firstkey -#define nextkey(a) __db_dbm_nextkey(a) -#define store(a, b) __db_dbm_store(a, b) - -/******************************************************* - * Hsearch historic interface. - *******************************************************/ -typedef enum { - FIND, ENTER -} ACTION; - -typedef struct entry { - char *key; - char *data; -} ENTRY; - -#define hcreate(a) __db_hcreate(a) -#define hdestroy __db_hdestroy -#define hsearch(a, b) __db_hsearch(a, b) - -#endif /* DB_DBM_HSEARCH */ - -#if defined(__cplusplus) -} -#endif -#endif /* !_DB_H_ */ - -/* DO NOT EDIT: automatically built by dist/s_include. */ -#ifndef _DB_EXT_PROT_IN_ -#define _DB_EXT_PROT_IN_ - -#if defined(__cplusplus) -extern "C" { -#endif - -int db_create __P((DB **, DB_ENV *, u_int32_t)); -char *db_strerror __P((int)); -int db_env_create __P((DB_ENV **, u_int32_t)); -char *db_version __P((int *, int *, int *)); -int log_compare __P((const DB_LSN *, const DB_LSN *)); -int db_env_set_func_close __P((int (*)(int))); -int db_env_set_func_dirfree __P((void (*)(char **, int))); -int db_env_set_func_dirlist __P((int (*)(const char *, char ***, int *))); -int db_env_set_func_exists __P((int (*)(const char *, int *))); -int db_env_set_func_free __P((void (*)(void *))); -int db_env_set_func_fsync __P((int (*)(int))); -int db_env_set_func_ftruncate __P((int (*)(int, off_t))); -int db_env_set_func_ioinfo __P((int (*)(const char *, int, u_int32_t *, u_int32_t *, u_int32_t *))); -int db_env_set_func_malloc __P((void *(*)(size_t))); -int db_env_set_func_map __P((int (*)(char *, size_t, int, int, void **))); -int db_env_set_func_pread __P((ssize_t (*)(int, void *, size_t, off_t))); -int db_env_set_func_pwrite __P((ssize_t (*)(int, const void *, size_t, off_t))); -int db_env_set_func_open __P((int (*)(const char *, int, ...))); -int db_env_set_func_read __P((ssize_t (*)(int, void *, size_t))); -int db_env_set_func_realloc __P((void *(*)(void *, size_t))); -int db_env_set_func_rename __P((int (*)(const char *, const char *))); -int db_env_set_func_seek __P((int (*)(int, off_t, int))); -int db_env_set_func_sleep __P((int (*)(u_long, u_long))); -int db_env_set_func_unlink __P((int (*)(const char *))); -int db_env_set_func_unmap __P((int (*)(void *, size_t))); -int db_env_set_func_write __P((ssize_t (*)(int, const void *, size_t))); -int db_env_set_func_yield __P((int (*)(void))); -int db_sequence_create __P((DB_SEQUENCE **, DB *, u_int32_t)); -#if DB_DBM_HSEARCH != 0 -int __db_ndbm_clearerr __P((DBM *)); -void __db_ndbm_close __P((DBM *)); -int __db_ndbm_delete __P((DBM *, datum)); -int __db_ndbm_dirfno __P((DBM *)); -int __db_ndbm_error __P((DBM *)); -datum __db_ndbm_fetch __P((DBM *, datum)); -datum __db_ndbm_firstkey __P((DBM *)); -datum __db_ndbm_nextkey __P((DBM *)); -DBM *__db_ndbm_open __P((const char *, int, int)); -int __db_ndbm_pagfno __P((DBM *)); -int __db_ndbm_rdonly __P((DBM *)); -int __db_ndbm_store __P((DBM *, datum, datum, int)); -int __db_dbm_close __P((void)); -int __db_dbm_delete __P((datum)); -datum __db_dbm_fetch __P((datum)); -datum __db_dbm_firstkey __P((void)); -int __db_dbm_init __P((char *)); -datum __db_dbm_nextkey __P((datum)); -int __db_dbm_store __P((datum, datum)); -#endif -#if DB_DBM_HSEARCH != 0 -int __db_hcreate __P((size_t)); -ENTRY *__db_hsearch __P((ENTRY, ACTION)); -void __db_hdestroy __P((void)); -#endif - -#if defined(__cplusplus) -} -#endif -#endif /* !_DB_EXT_PROT_IN_ */ diff --git a/db/build_win64/db_archive.dsp b/db/build_win64/db_archive.dsp deleted file mode 100644 index ce7ffbded..000000000 --- a/db/build_win64/db_archive.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_archive" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_archive - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_archive.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_archive.mak" CFG="db_archive - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_archive - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_archive - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_archive - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_archive - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_archive - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_archive - Win32 Release" -# Name "db_archive - Win32 Debug" -# Name "db_archive - Win32 Release Static" -# Name "db_archive - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_archive\db_archive.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_checkpoint.dsp b/db/build_win64/db_checkpoint.dsp deleted file mode 100644 index a68063fcd..000000000 --- a/db/build_win64/db_checkpoint.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_checkpoint" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_checkpoint - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_checkpoint.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_checkpoint.mak" CFG="db_checkpoint - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_checkpoint - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_checkpoint - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_checkpoint - Win32 Release" -# Name "db_checkpoint - Win32 Debug" -# Name "db_checkpoint - Win32 Release Static" -# Name "db_checkpoint - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_checkpoint\db_checkpoint.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_config.h b/db/build_win64/db_config.h deleted file mode 100644 index 1e4ea1c8c..000000000 --- a/db/build_win64/db_config.h +++ /dev/null @@ -1,443 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/* Define to 1 if you want to build a version for running the test suite. */ -/* #undef CONFIG_TEST */ - -/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using - an operating system environment that supports Win32 calls and semantics. We - don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though - Cygwin/GCC closely emulates the Unix environment. */ -#define DB_WIN32 1 - -/* Define to 1 if you want a debugging version. */ -/* #undef DEBUG */ -#if defined(_DEBUG) -#if !defined(DEBUG) -#define DEBUG 1 -#endif -#endif - -/* Define to 1 if you want a version that logs read operations. */ -/* #undef DEBUG_ROP */ - -/* Define to 1 if you want a version that logs write operations. */ -/* #undef DEBUG_WOP */ - -/* Define to 1 if you want a version with run-time diagnostic checking. */ -/* #undef DIAGNOSTIC */ - -/* Define to 1 if you have the `clock_gettime' function. */ -/* #undef HAVE_CLOCK_GETTIME */ - -/* Define to 1 if Berkeley DB release includes strong cryptography. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_CRYPTO 1 -#endif - -/* Define to 1 if you have the `directio' function. */ -/* #undef HAVE_DIRECTIO */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_DIRENT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ -#define HAVE_EXIT_SUCCESS 1 - -/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ -/* #undef HAVE_FCNTL_F_SETFD */ - -/* Define to 1 if you have the `fdatasync' function. */ -/* #undef HAVE_FDATASYNC */ - -/* Define to 1 if allocated filesystem blocks are not zeroed. */ -#define HAVE_FILESYSTEM_NOTZERO 1 - -/* Define to 1 if you have the `ftruncate' function. */ -#define HAVE_FTRUNCATE 1 - -/* Define to 1 if you have the `getcwd' function. */ -#define HAVE_GETCWD 1 - -/* Define to 1 if you have the `getopt' function. */ -/* #undef HAVE_GETOPT */ - -/* Define to 1 if you have the `getrusage' function. */ -/* #undef HAVE_GETRUSAGE */ - -/* Define to 1 if you have the `gettimeofday' function. */ -/* #undef HAVE_GETTIMEOFDAY */ - -/* Define to 1 if you have the `getuid' function. */ -/* #undef HAVE_GETUID */ - -/* Define to 1 if building Hash access method. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_HASH 1 -#endif - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_INTTYPES_H */ - -/* Define to 1 if you have the `nsl' library (-lnsl). */ -/* #undef HAVE_LIBNSL */ - -/* Define to 1 if the system has the type `long long'. */ -#define HAVE_LONG_LONG 1 - -/* Define to 1 if you have the `memcmp' function. */ -#define HAVE_MEMCMP 1 - -/* Define to 1 if you have the `memcpy' function. */ -#define HAVE_MEMCPY 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `mlock' function. */ -/* #undef HAVE_MLOCK */ - -/* Define to 1 if you have the `mmap' function. */ -/* #undef HAVE_MMAP */ - -/* Define to 1 if you have the `munlock' function. */ -/* #undef HAVE_MUNLOCK */ - -/* Define to 1 if you have the `munmap' function. */ -/* #undef HAVE_MUNMAP */ - -/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ -/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ - -/* Define to 1 to use the AIX _check_lock mutexes. */ -/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ - -/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ -/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ - -/* 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 Apple/Darwin _spin_lock_try mutexes. */ -/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ - -/* Define to 1 to use the UNIX fcntl system call mutexes. */ -/* #undef HAVE_MUTEX_FCNTL */ - -/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. - */ -/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ - -/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ -/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ - -/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ -/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ - -/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ -/* #undef HAVE_MUTEX_MSEM_INIT */ - -/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. - */ -/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ - -/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ -/* #undef HAVE_MUTEX_PTHREADS */ - -/* Define to 1 to use Reliant UNIX initspin mutexes. */ -/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ - -/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. - */ -/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ - -/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ -/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ - -/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ -/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ - -/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ -/* #undef HAVE_MUTEX_SEMA_INIT */ - -/* Define to 1 to use the SGI XXX_lock mutexes. */ -/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ - -/* Define to 1 to use the Solaris _lock_XXX mutexes. */ -/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ - -/* Define to 1 to use the Solaris lwp threads mutexes. */ -/* #undef HAVE_MUTEX_SOLARIS_LWP */ - -/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ -/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ - -/* Define to 1 if mutexes hold system resources. */ -/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ - -/* Define to 1 if fast mutexes are available. */ -#define HAVE_MUTEX_THREADS 1 - -/* Define to 1 to configure mutexes intra-process only. */ -/* #undef HAVE_MUTEX_THREAD_ONLY */ - -/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ -/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ - -/* Define to 1 to use the UNIX International mutexes. */ -/* #undef HAVE_MUTEX_UI_THREADS */ - -/* Define to 1 to use the UTS compiler and assembly language mutexes. */ -/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ - -/* Define to 1 to use VMS mutexes. */ -/* #undef HAVE_MUTEX_VMS */ - -/* Define to 1 to use VxWorks mutexes. */ -/* #undef HAVE_MUTEX_VXWORKS */ - -/* Define to 1 to use the MSVC compiler and Windows mutexes. */ -#define HAVE_MUTEX_WIN32 1 - -/* Define to 1 to use the GCC compiler and Windows mutexes. */ -/* #undef HAVE_MUTEX_WIN32_GCC */ - -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ -/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ - -/* Define to 1 if you have the header file, and it defines `DIR'. */ -/* #undef HAVE_NDIR_H */ - -/* Define to 1 if you have the O_DIRECT flag. */ -/* #undef HAVE_O_DIRECT */ - -/* Define to 1 if you have the `pread' function. */ -/* #undef HAVE_PREAD */ - -/* Define to 1 if you have the `pstat_getdynamic' function. */ -/* #undef HAVE_PSTAT_GETDYNAMIC */ - -/* Define to 1 if you have the `pwrite' function. */ -/* #undef HAVE_PWRITE */ - -/* Define to 1 if building on QNX. */ -/* #undef HAVE_QNX */ - -/* Define to 1 if building Queue access method. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_QUEUE 1 -#endif - -/* Define to 1 if you have the `raise' function. */ -#define HAVE_RAISE 1 - -/* Define to 1 if you have the `rand' function. */ -#define HAVE_RAND 1 - -/* Define to 1 if building replication support. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_REPLICATION 1 -#endif - -/* Define to 1 if building RPC client/server. */ -/* #undef HAVE_RPC */ - -/* Define to 1 if you have the `sched_yield' function. */ -/* #undef HAVE_SCHED_YIELD */ - -/* Define to 1 if you have the `select' function. */ -/* #undef HAVE_SELECT */ - -/* Define to 1 if building sequence support. */ -#define HAVE_SEQUENCE 1 - -/* Define to 1 if you have the `shmget' function. */ -/* #undef HAVE_SHMGET */ - -/* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 - -/* Define to 1 if you have the `srand' function. */ -#define HAVE_SRAND 1 - -/* Define to 1 if building statistics support. */ -#define HAVE_STATISTICS 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STDINT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the `strcasecmp' function. */ -/* #undef HAVE_STRCASECMP */ - -/* Define to 1 if you have the `strdup' function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the `strerror' function. */ -#define HAVE_STRERROR 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strtol' function. */ -#define HAVE_STRTOL 1 - -/* Define to 1 if you have the `strtoul' function. */ -#define HAVE_STRTOUL 1 - -/* Define to 1 if `st_blksize' is member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ - -/* Define to 1 if you have the `sysconf' function. */ -/* #undef HAVE_SYSCONF */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FCNTL_H 1 - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SELECT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TIME_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UNISTD_H */ - -/* Define to 1 if unlink of file with open file descriptors will fail. */ -/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ - -/* Define to 1 if the system has the type `unsigned long long'. */ -#define HAVE_UNSIGNED_LONG_LONG 1 - -/* Define to 1 if building access method verification support. */ -#ifndef HAVE_SMALLBUILD -#define HAVE_VERIFY 1 -#endif - -/* Define to 1 if you have the `vsnprintf' function. */ -#define HAVE_VSNPRINTF 1 - -/* Define to 1 if building VxWorks. */ -/* #undef HAVE_VXWORKS */ - -/* Define to 1 if you have the `yield' function. */ -/* #undef HAVE_YIELD */ - -/* Define to 1 if you have the `_fstati64' function. */ -#define HAVE__FSTATI64 1 - -/* Define to a value if using non-standard mutex alignment. */ -/* #undef MUTEX_ALIGN */ - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "support@sleepycat.com" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "Berkeley DB" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Berkeley DB 4.3.27" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "db-4.3.27" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "4.3.27" - -/* Define to 1 if the `S_IS*' macros in do not work properly. */ -/* #undef STAT_MACROS_BROKEN */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define to 1 if you can safely include both and . */ -/* #undef TIME_WITH_SYS_TIME */ - -/* Define to 1 to mask harmless uninitialized memory read/writes. */ -/* #undef UMRW */ - -/* Number of bits in a file offset, on hosts where this is settable. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define for large files, on AIX-style hosts. */ -/* #undef _LARGE_FILES */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* - * Exit success/failure macros. - */ -#ifndef HAVE_EXIT_SUCCESS -#define EXIT_FAILURE 1 -#define EXIT_SUCCESS 0 -#endif - -/* - * Don't step on the namespace. Other libraries may have their own - * implementations of these functions, we don't want to use their - * implementations or force them to use ours based on the load order. - */ -#ifndef HAVE_GETCWD -#define getcwd __db_Cgetcwd -#endif -#ifndef HAVE_MEMCMP -#define memcmp __db_Cmemcmp -#endif -#ifndef HAVE_MEMCPY -#define memcpy __db_Cmemcpy -#endif -#ifndef HAVE_MEMMOVE -#define memmove __db_Cmemmove -#endif -#ifndef HAVE_RAISE -#define raise __db_Craise -#endif -#ifndef HAVE_SNPRINTF -#define snprintf __db_Csnprintf -#endif -#ifndef HAVE_STRCASECMP -#define strcasecmp __db_Cstrcasecmp -#define strncasecmp __db_Cstrncasecmp -#endif -#ifndef HAVE_STRERROR -#define strerror __db_Cstrerror -#endif -#ifndef HAVE_VSNPRINTF -#define vsnprintf __db_Cvsnprintf -#endif - -#include "win_db.h" - -/* - * Microsoft's compiler _doesn't_ define __STDC__ unless you invoke it with - * arguments turning OFF all vendor extensions. Even more unfortunately, if - * we do that, it fails to parse windows.h!!!!! So, we define __STDC__ here, - * after windows.h comes in. Note: the compiler knows we've defined it, and - * starts enforcing strict ANSI compliance from this point on. - */ -#define __STDC__ 1 diff --git a/db/build_win64/db_cxx.h b/db/build_win64/db_cxx.h deleted file mode 100644 index abba7b635..000000000 --- a/db/build_win64/db_cxx.h +++ /dev/null @@ -1,1089 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db_cxx.in,v 11.147 2004/10/07 21:39:48 bostic Exp $ - */ - -#ifndef _DB_CXX_H_ -#define _DB_CXX_H_ -// -// C++ assumptions: -// -// To ensure portability to many platforms, both new and old, we make -// few assumptions about the C++ compiler and library. For example, -// we do not expect STL, templates or namespaces to be available. The -// "newest" C++ feature used is exceptions, which are used liberally -// to transmit error information. Even the use of exceptions can be -// disabled at runtime, to do so, use the DB_CXX_NO_EXCEPTIONS flags -// with the DbEnv or Db constructor. -// -// C++ naming conventions: -// -// - All top level class names start with Db. -// - All class members start with lower case letter. -// - All private data members are suffixed with underscore. -// - Use underscores to divide names into multiple words. -// - Simple data accessors are named with get_ or set_ prefix. -// - All method names are taken from names of functions in the C -// layer of db (usually by dropping a prefix like "db_"). -// These methods have the same argument types and order, -// other than dropping the explicit arg that acts as "this". -// -// As a rule, each DbFoo object has exactly one underlying DB_FOO struct -// (defined in db.h) associated with it. In some cases, we inherit directly -// from the DB_FOO structure to make this relationship explicit. Often, -// the underlying C layer allocates and deallocates these structures, so -// there is no easy way to add any data to the DbFoo class. When you see -// a comment about whether data is permitted to be added, this is what -// is going on. Of course, if we need to add data to such C++ classes -// in the future, we will arrange to have an indirect pointer to the -// DB_FOO struct (as some of the classes already have). -// - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Forward declarations -// - -#include - -#define HAVE_CXX_STDHEADERS 1 -#ifdef HAVE_CXX_STDHEADERS -#include -#include -#define __DB_STD(x) std::x -#else -#include -#include -#define __DB_STD(x) x -#endif - -#include "db.h" - -class Db; // forward -class Dbc; // forward -class DbEnv; // forward -class DbInfo; // forward -class DbLock; // forward -class DbLogc; // forward -class DbLsn; // forward -class DbMpoolFile; // forward -class DbPreplist; // forward -class Dbt; // forward -class DbTxn; // forward -class DbLock; // forward -class DbSequence; // forward -class Dbt; // forward - -class DbMultipleIterator; // forward -class DbMultipleKeyDataIterator; // forward -class DbMultipleRecnoDataIterator; // forward -class DbMultipleDataIterator; // forward - -class DbException; // forward -class DbDeadlockException; // forward -class DbLockNotGrantedException; // forward -class DbMemoryException; // forward -class DbRunRecoveryException; // forward - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Turn off inappropriate compiler warnings -// - -#ifdef _MSC_VER - -// These are level 4 warnings that are explicitly disabled. -// With Visual C++, by default you do not see above level 3 unless -// you use /W4. But we like to compile with the highest level -// warnings to catch other errors. -// -// 4201: nameless struct/union -// triggered by standard include file -// -// 4514: unreferenced inline function has been removed -// certain include files in MSVC define methods that are not called -// -#pragma warning(disable: 4201 4514) - -#endif - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Mechanisms for declaring classes -// - -// -// Every class defined in this file has an _exported next to the class name. -// This is needed for WinTel machines so that the class methods can -// be exported or imported in a DLL as appropriate. Users of the DLL -// use the define DB_USE_DLL. When the DLL is built, DB_CREATE_DLL -// must be defined. -// -#if defined(_MSC_VER) - -# if defined(DB_CREATE_DLL) -# define _exported __declspec(dllexport) // creator of dll -# elif defined(DB_USE_DLL) -# define _exported __declspec(dllimport) // user of dll -# else -# define _exported // static lib creator or user -# endif - -#else /* _MSC_VER */ - -# define _exported - -#endif /* _MSC_VER */ - -// Some interfaces can be customized by allowing users to define -// callback functions. For performance and logistical reasons, some -// callback functions must be declared in extern "C" blocks. For others, -// we allow you to declare the callbacks in C++ or C (or an extern "C" -// block) as you wish. See the set methods for the callbacks for -// the choices. -// -extern "C" { - typedef void * (*db_malloc_fcn_type) - (size_t); - typedef void * (*db_realloc_fcn_type) - (void *, size_t); - typedef void (*db_free_fcn_type) - (void *); - typedef int (*bt_compare_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef size_t (*bt_prefix_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef int (*dup_compare_fcn_type) /*C++ version available*/ - (DB *, const DBT *, const DBT *); - typedef u_int32_t (*h_hash_fcn_type) /*C++ version available*/ - (DB *, const void *, u_int32_t); - typedef int (*pgin_fcn_type) - (DB_ENV *dbenv, db_pgno_t pgno, void *pgaddr, DBT *pgcookie); - typedef int (*pgout_fcn_type) - (DB_ENV *dbenv, db_pgno_t pgno, void *pgaddr, DBT *pgcookie); -} - -// -// Represents a database table = a set of keys with associated values. -// -class _exported Db -{ - friend class DbEnv; - -public: - Db(DbEnv*, u_int32_t); // create a Db object, then call open() - virtual ~Db(); // does *not* call close. - - // These methods exactly match those in the C interface. - // - virtual int associate(DbTxn *txn, Db *secondary, - int (*callback)(Db *, const Dbt *, const Dbt *, Dbt *), - u_int32_t flags); - virtual int close(u_int32_t flags); - virtual int cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags); - virtual int del(DbTxn *txnid, Dbt *key, u_int32_t flags); - virtual void err(int, const char *, ...); - virtual void errx(const char *, ...); - virtual int fd(int *fdp); - virtual int get(DbTxn *txnid, Dbt *key, Dbt *data, u_int32_t flags); - virtual void *get_app_private() const; - virtual int get_byteswapped(int *); - virtual int get_dbname(const char **, const char **); - virtual int get_open_flags(u_int32_t *); - virtual int get_type(DBTYPE *); - virtual int get_transactional(); - virtual int join(Dbc **curslist, Dbc **dbcp, u_int32_t flags); - virtual int key_range(DbTxn *, Dbt *, DB_KEY_RANGE *, u_int32_t); - virtual int open(DbTxn *txnid, - const char *, const char *subname, DBTYPE, u_int32_t, int); - virtual int pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Dbt *data, - u_int32_t flags); - virtual int put(DbTxn *, Dbt *, Dbt *, u_int32_t); - virtual int remove(const char *, const char *, u_int32_t); - virtual int rename(const char *, const char *, const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); - virtual void set_app_private(void *); - virtual int set_append_recno(int (*)(Db *, Dbt *, db_recno_t)); - virtual int set_bt_compare(bt_compare_fcn_type); /*deprecated*/ - virtual int set_bt_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int set_bt_maxkey(u_int32_t); - virtual int get_bt_minkey(u_int32_t *); - virtual int set_bt_minkey(u_int32_t); - virtual int set_bt_prefix(bt_prefix_fcn_type); /*deprecated*/ - virtual int set_bt_prefix(size_t (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); - virtual int set_cachesize(u_int32_t, u_int32_t, int); - virtual int set_dup_compare(dup_compare_fcn_type); /*deprecated*/ - virtual int set_dup_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_encrypt_flags(u_int32_t *); - virtual int set_encrypt(const char *, u_int32_t); - virtual void set_errcall( - void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); - virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); - virtual void set_errpfx(const char *); - virtual int set_feedback(void (*)(Db *, int, int)); - virtual int get_flags(u_int32_t *); - virtual int set_flags(u_int32_t); - virtual int get_h_ffactor(u_int32_t *); - virtual int set_h_ffactor(u_int32_t); - virtual int set_h_hash(h_hash_fcn_type); /*deprecated*/ - virtual int set_h_hash(u_int32_t (*)(Db *, const void *, u_int32_t)); - virtual int get_h_nelem(u_int32_t *); - virtual int set_h_nelem(u_int32_t); - virtual int get_lorder(int *); - virtual int set_lorder(int); - virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); - virtual void set_msgfile(FILE *); - virtual int get_pagesize(u_int32_t *); - virtual int set_pagesize(u_int32_t); - virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int get_re_delim(int *); - virtual int set_re_delim(int); - virtual int get_re_len(u_int32_t *); - virtual int set_re_len(u_int32_t); - virtual int get_re_pad(int *); - virtual int set_re_pad(int); - virtual int get_re_source(const char **); - virtual int set_re_source(const char *); - virtual int get_q_extentsize(u_int32_t *); - virtual int set_q_extentsize(u_int32_t); - virtual int stat(DbTxn *, void *sp, u_int32_t flags); - virtual int stat_print(u_int32_t flags); - virtual int sync(u_int32_t flags); - virtual int truncate(DbTxn *, u_int32_t *, u_int32_t); - virtual int upgrade(const char *name, u_int32_t flags); - virtual int verify(const char *, const char *, __DB_STD(ostream) *, - u_int32_t); - - // These additional methods are not in the C interface, and - // are only available for C++. - // - virtual __DB_STD(ostream) *get_error_stream(); - virtual void set_error_stream(__DB_STD(ostream) *); - virtual __DB_STD(ostream) *get_message_stream(); - virtual void set_message_stream(__DB_STD(ostream) *); - - virtual DbEnv *get_env(); - virtual DbMpoolFile *get_mpf(); - - virtual DB *get_DB() - { - return imp_; - } - - virtual const DB *get_const_DB() const - { - return imp_; - } - - static Db* get_Db(DB *db) - { - return (Db *)db->api_internal; - } - - static const Db* get_const_Db(const DB *db) - { - return (const Db *)db->api_internal; - } - -private: - // no copying - Db(const Db &); - Db &operator = (const Db &); - - void cleanup(); - int initialize(); - int error_policy(); - - // instance data - DB *imp_; - DbEnv *env_; - DbMpoolFile *mpf_; - int construct_error_; - u_int32_t flags_; - u_int32_t construct_flags_; - -public: - // These are public only because they need to be called - // via C callback functions. They should never be used by - // external users of this class. - // - int (*append_recno_callback_)(Db *, Dbt *, db_recno_t); - int (*associate_callback_)(Db *, const Dbt *, const Dbt *, Dbt *); - int (*bt_compare_callback_)(Db *, const Dbt *, const Dbt *); - size_t (*bt_prefix_callback_)(Db *, const Dbt *, const Dbt *); - int (*dup_compare_callback_)(Db *, const Dbt *, const Dbt *); - void (*feedback_callback_)(Db *, int, int); - u_int32_t (*h_hash_callback_)(Db *, const void *, u_int32_t); -}; - -// -// Cursor -// -class _exported Dbc : protected DBC -{ - friend class Db; - -public: - int close(); - int count(db_recno_t *countp, u_int32_t flags); - int del(u_int32_t flags); - int dup(Dbc** cursorp, u_int32_t flags); - int get(Dbt* key, Dbt *data, u_int32_t flags); - int pget(Dbt* key, Dbt* pkey, Dbt *data, u_int32_t flags); - int put(Dbt* key, Dbt *data, u_int32_t flags); - -private: - // No data is permitted in this class (see comment at top) - - // Note: use Db::cursor() to get pointers to a Dbc, - // and call Dbc::close() rather than delete to release them. - // - Dbc(); - ~Dbc(); - - // no copying - Dbc(const Dbc &); - Dbc &operator = (const Dbc &); -}; - -// -// Berkeley DB environment class. Provides functions for opening databases. -// User of this library can use this class as a starting point for -// developing a DB application - derive their application class from -// this one, add application control logic. -// -// Note that if you use the default constructor, you must explicitly -// call appinit() before any other db activity (e.g. opening files) -// -class _exported DbEnv -{ - friend class Db; - friend class DbLock; - friend class DbMpoolFile; - -public: - // After using this constructor, you can set any needed - // parameters for the environment using the set_* methods. - // Then call open() to finish initializing the environment - // and attaching it to underlying files. - // - DbEnv(u_int32_t flags); - - virtual ~DbEnv(); - - // These methods match those in the C interface. - // - virtual int close(u_int32_t); - virtual int dbremove(DbTxn *txn, const char *name, const char *subdb, - u_int32_t flags); - virtual int dbrename(DbTxn *txn, const char *name, const char *subdb, - const char *newname, u_int32_t flags); - virtual void err(int, const char *, ...); - virtual void errx(const char *, ...); - virtual void *get_app_private() const; - virtual int get_home(const char **); - virtual int get_open_flags(u_int32_t *); - virtual int open(const char *, u_int32_t, int); - virtual int remove(const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); - virtual void set_app_private(void *); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); - virtual int set_cachesize(u_int32_t, u_int32_t, int); - virtual int get_data_dirs(const char ***); - virtual int set_data_dir(const char *); - virtual int get_encrypt_flags(u_int32_t *); - virtual int set_encrypt(const char *, u_int32_t); - virtual void set_errcall( - void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); - virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); - virtual void set_errpfx(const char *); - virtual int get_flags(u_int32_t *); - virtual int set_flags(u_int32_t, int); - virtual int set_feedback(void (*)(DbEnv *, int, int)); - virtual int get_lg_bsize(u_int32_t *); - virtual int set_lg_bsize(u_int32_t); - virtual int get_lg_dir(const char **); - virtual int set_lg_dir(const char *); - virtual int get_lg_max(u_int32_t *); - virtual int set_lg_max(u_int32_t); - virtual int get_lg_regionmax(u_int32_t *); - virtual int set_lg_regionmax(u_int32_t); - virtual int get_lk_conflicts(const u_int8_t **, int *); - virtual int set_lk_conflicts(u_int8_t *, int); - virtual int get_lk_detect(u_int32_t *); - virtual int set_lk_detect(u_int32_t); - virtual int set_lk_max(u_int32_t); - virtual int get_lk_max_lockers(u_int32_t *); - virtual int set_lk_max_lockers(u_int32_t); - virtual int get_lk_max_locks(u_int32_t *); - virtual int set_lk_max_locks(u_int32_t); - virtual int get_lk_max_objects(u_int32_t *); - virtual int set_lk_max_objects(u_int32_t); - virtual int get_mp_mmapsize(size_t *); - virtual int set_mp_mmapsize(size_t); - virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); - virtual void set_msgfile(FILE *); - virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int set_rpc_server(void *, char *, long, long, u_int32_t); - virtual int get_shm_key(long *); - virtual int set_shm_key(long); - virtual int get_timeout(db_timeout_t *, u_int32_t); - virtual int set_timeout(db_timeout_t, u_int32_t); - virtual int get_tmp_dir(const char **); - virtual int set_tmp_dir(const char *); - virtual int get_tas_spins(u_int32_t *); - virtual int set_tas_spins(u_int32_t); - virtual int get_tx_max(u_int32_t *); - virtual int set_tx_max(u_int32_t); - virtual int set_app_dispatch(int (*)(DbEnv *, - Dbt *, DbLsn *, db_recops)); - virtual int get_tx_timestamp(time_t *); - virtual int set_tx_timestamp(time_t *); - virtual int get_verbose(u_int32_t which, int *); - virtual int set_verbose(u_int32_t which, int); - - // Version information. A static method so it can be obtained anytime. - // - static char *version(int *major, int *minor, int *patch); - - // Convert DB errors to strings - static char *strerror(int); - - // If an error is detected and the error call function - // or stream is set, a message is dispatched or printed. - // If a prefix is set, each message is prefixed. - // - // You can use set_errcall() or set_errfile() above to control - // error functionality. Alternatively, you can call - // set_error_stream() to force all errors to a C++ stream. - // It is unwise to mix these approaches. - // - virtual __DB_STD(ostream) *get_error_stream(); - virtual void set_error_stream(__DB_STD(ostream) *); - virtual __DB_STD(ostream) *get_message_stream(); - virtual void set_message_stream(__DB_STD(ostream) *); - - // used internally - static void runtime_error(DbEnv *env, const char *caller, int err, - int error_policy); - static void runtime_error_dbt(DbEnv *env, const char *caller, Dbt *dbt, - int error_policy); - static void runtime_error_lock_get(DbEnv *env, const char *caller, - int err, db_lockop_t op, db_lockmode_t mode, - const Dbt *obj, DbLock lock, int index, - int error_policy); - - // Lock functions - // - virtual int lock_detect(u_int32_t flags, u_int32_t atype, int *aborted); - virtual int lock_get(u_int32_t locker, u_int32_t flags, const Dbt *obj, - db_lockmode_t lock_mode, DbLock *lock); - virtual int lock_id(u_int32_t *idp); - virtual int lock_id_free(u_int32_t id); - virtual int lock_put(DbLock *lock); - virtual int lock_stat(DB_LOCK_STAT **statp, u_int32_t flags); - virtual int lock_stat_print(u_int32_t flags); - virtual int lock_vec(u_int32_t locker, u_int32_t flags, - DB_LOCKREQ list[], int nlist, DB_LOCKREQ **elistp); - - // Log functions - // - virtual int log_archive(char **list[], u_int32_t flags); - static int log_compare(const DbLsn *lsn0, const DbLsn *lsn1); - virtual int log_cursor(DbLogc **cursorp, u_int32_t flags); - virtual int log_file(DbLsn *lsn, char *namep, size_t len); - virtual int log_flush(const DbLsn *lsn); - virtual int log_put(DbLsn *lsn, const Dbt *data, u_int32_t flags); - - virtual int log_stat(DB_LOG_STAT **spp, u_int32_t flags); - virtual int log_stat_print(u_int32_t flags); - - // Mpool functions - // - virtual int memp_fcreate(DbMpoolFile **dbmfp, u_int32_t flags); - virtual int memp_register(int ftype, - pgin_fcn_type pgin_fcn, - pgout_fcn_type pgout_fcn); - virtual int memp_stat(DB_MPOOL_STAT - **gsp, DB_MPOOL_FSTAT ***fsp, u_int32_t flags); - virtual int memp_stat_print(u_int32_t flags); - virtual int memp_sync(DbLsn *lsn); - virtual int memp_trickle(int pct, int *nwrotep); - - // Transaction functions - // - virtual int txn_begin(DbTxn *pid, DbTxn **tid, u_int32_t flags); - virtual int txn_checkpoint(u_int32_t kbyte, u_int32_t min, - u_int32_t flags); - virtual int txn_recover(DbPreplist *preplist, long count, - long *retp, u_int32_t flags); - virtual int txn_stat(DB_TXN_STAT **statp, u_int32_t flags); - virtual int txn_stat_print(u_int32_t flags); - - // Replication functions - // - virtual int rep_elect(int, int, int, u_int32_t, int *, u_int32_t); - virtual int rep_process_message(Dbt *, Dbt *, int *, DbLsn *); - virtual int rep_start(Dbt *, u_int32_t); - virtual int rep_stat(DB_REP_STAT **statp, u_int32_t flags); - virtual int rep_stat_print(u_int32_t flags); - virtual int get_rep_limit(u_int32_t *, u_int32_t *); - virtual int set_rep_limit(u_int32_t, u_int32_t); - virtual int set_rep_transport(int, int (*)(DbEnv *, - const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t)); - - // Conversion functions - // - virtual DB_ENV *get_DB_ENV() - { - return imp_; - } - - virtual const DB_ENV *get_const_DB_ENV() const - { - return imp_; - } - - static DbEnv* get_DbEnv(DB_ENV *dbenv) - { - return dbenv ? (DbEnv *)dbenv->api1_internal : 0; - } - - static const DbEnv* get_const_DbEnv(const DB_ENV *dbenv) - { - return dbenv ? (const DbEnv *)dbenv->api1_internal : 0; - } - - // For internal use only. - static DbEnv* wrap_DB_ENV(DB_ENV *dbenv); - - // These are public only because they need to be called - // via C functions. They should never be called by users - // of this class. - // - static int _app_dispatch_intercept(DB_ENV *env, DBT *dbt, DB_LSN *lsn, - db_recops op); - static void _paniccall_intercept(DB_ENV *env, int errval); - static void _feedback_intercept(DB_ENV *env, int opcode, int pct); - static int _rep_send_intercept(DB_ENV *env, - const DBT *cntrl, const DBT *data, - const DB_LSN *lsn, int id, - u_int32_t flags); - static void _stream_error_function(const DB_ENV *env, - const char *prefix, - const char *message); - static void _stream_message_function(const DB_ENV *env, - const char *message); - -private: - void cleanup(); - int initialize(DB_ENV *env); - int error_policy(); - - // For internal use only. - DbEnv(DB_ENV *, u_int32_t flags); - - // no copying - DbEnv(const DbEnv &); - void operator = (const DbEnv &); - - // instance data - DB_ENV *imp_; - int construct_error_; - u_int32_t construct_flags_; - __DB_STD(ostream) *error_stream_; - __DB_STD(ostream) *message_stream_; - - int (*app_dispatch_callback_)(DbEnv *, Dbt *, DbLsn *, db_recops); - void (*error_callback_)(const DbEnv *, const char *, const char *); - void (*feedback_callback_)(DbEnv *, int, int); - void (*message_callback_)(const DbEnv *, const char *); - void (*paniccall_callback_)(DbEnv *, int); - int (*pgin_callback_)(DbEnv *dbenv, db_pgno_t pgno, - void *pgaddr, Dbt *pgcookie); - int (*pgout_callback_)(DbEnv *dbenv, db_pgno_t pgno, - void *pgaddr, Dbt *pgcookie); - int (*rep_send_callback_)(DbEnv *, - const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t); -}; - -// -// Lock -// -class _exported DbLock -{ - friend class DbEnv; - -public: - DbLock(); - DbLock(const DbLock &); - DbLock &operator = (const DbLock &); - -protected: - // We can add data to this class if needed - // since its contained class is not allocated by db. - // (see comment at top) - - DbLock(DB_LOCK); - DB_LOCK lock_; -}; - -// -// Log cursor -// -class _exported DbLogc : protected DB_LOGC -{ - friend class DbEnv; - -public: - int close(u_int32_t _flags); - int get(DbLsn *lsn, Dbt *data, u_int32_t _flags); - -private: - // No data is permitted in this class (see comment at top) - - // Note: use Db::cursor() to get pointers to a Dbc, - // and call Dbc::close() rather than delete to release them. - // - DbLogc(); - ~DbLogc(); - - // no copying - DbLogc(const Dbc &); - DbLogc &operator = (const Dbc &); -}; - -// -// Log sequence number -// -class _exported DbLsn : public DB_LSN -{ - friend class DbEnv; // friendship needed to cast to base class - friend class DbLogc; // friendship needed to cast to base class -}; - -// -// Memory pool file -// -class _exported DbMpoolFile -{ - friend class DbEnv; - friend class Db; - -public: - int close(u_int32_t flags); - int get(db_pgno_t *pgnoaddr, u_int32_t flags, void *pagep); - int open(const char *file, u_int32_t flags, int mode, size_t pagesize); - int get_transactional(void); - int put(void *pgaddr, u_int32_t flags); - int set(void *pgaddr, u_int32_t flags); - int get_clear_len(u_int32_t *len); - int set_clear_len(u_int32_t len); - int get_fileid(u_int8_t *fileid); - int set_fileid(u_int8_t *fileid); - int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags, int onoff); - int get_ftype(int *ftype); - int set_ftype(int ftype); - int get_lsn_offset(int32_t *offsetp); - int set_lsn_offset(int32_t offset); - int get_maxsize(u_int32_t *gbytes, u_int32_t *bytes); - int set_maxsize(u_int32_t gbytes, u_int32_t bytes); - int get_pgcookie(DBT *dbt); - int set_pgcookie(DBT *dbt); - int get_priority(DB_CACHE_PRIORITY *priorityp); - int set_priority(DB_CACHE_PRIORITY priority); - int sync(); - - virtual DB_MPOOLFILE *get_DB_MPOOLFILE() - { - return imp_; - } - - virtual const DB_MPOOLFILE *get_const_DB_MPOOLFILE() const - { - return imp_; - } - -private: - DB_MPOOLFILE *imp_; - - // We can add data to this class if needed - // since it is implemented via a pointer. - // (see comment at top) - - // Note: use DbEnv::memp_fcreate() to get pointers to a DbMpoolFile, - // and call DbMpoolFile::close() rather than delete to release them. - // - DbMpoolFile(); - - // Shut g++ up. -protected: - virtual ~DbMpoolFile(); - -private: - // no copying - DbMpoolFile(const DbMpoolFile &); - void operator = (const DbMpoolFile &); -}; - -// -// This is filled in and returned by the DbEnv::txn_recover() method. -// -class _exported DbPreplist -{ -public: - DbTxn *txn; - u_int8_t gid[DB_XIDDATASIZE]; -}; - -// -// A sequence record in a database -// -class _exported DbSequence -{ -public: - DbSequence(Db *db, u_int32_t flags); - virtual ~DbSequence(); - - int open(DbTxn *txnid, Dbt *key, u_int32_t flags); - int initial_value(db_seq_t value); - int close(u_int32_t flags); - int remove(DbTxn *txnid, u_int32_t flags); - int stat(DB_SEQUENCE_STAT **sp, u_int32_t flags); - int stat_print(u_int32_t flags); - - int get(DbTxn *txnid, int32_t delta, db_seq_t *retp, u_int32_t flags); - int get_cachesize(int32_t *sizep); - int set_cachesize(int32_t size); - int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags); - int get_range(db_seq_t *minp, db_seq_t *maxp); - int set_range(db_seq_t min, db_seq_t max); - - Db *get_db(); - Dbt *get_key(); - - virtual DB_SEQUENCE *get_DB_SEQUENCE() - { - return imp_; - } - - virtual const DB_SEQUENCE *get_const_DB_SEQUENCE() const - { - return imp_; - } - - static DbSequence* get_DbSequence(DB_SEQUENCE *seq) - { - return (DbSequence *)seq->api_internal; - } - - static const DbSequence* get_const_DbSequence(const DB_SEQUENCE *seq) - { - return (const DbSequence *)seq->api_internal; - } - - // For internal use only. - static DbSequence* wrap_DB_SEQUENCE(DB_SEQUENCE *seq); - -private: - DbSequence(DB_SEQUENCE *seq); - // no copying - DbSequence(const DbSequence &); - DbSequence &operator = (const DbSequence &); - - DB_SEQUENCE *imp_; - DBT key_; -}; - -// -// Transaction -// -class _exported DbTxn -{ - friend class DbEnv; - -public: - int abort(); - int commit(u_int32_t flags); - int discard(u_int32_t flags); - u_int32_t id(); - int prepare(u_int8_t *gid); - int set_timeout(db_timeout_t timeout, u_int32_t flags); - - virtual DB_TXN *get_DB_TXN() - { - return imp_; - } - - virtual const DB_TXN *get_const_DB_TXN() const - { - return imp_; - } - - static DbTxn* get_DbTxn(DB_TXN *txn) - { - return (DbTxn *)txn->api_internal; - } - - static const DbTxn* get_const_DbTxn(const DB_TXN *txn) - { - return (const DbTxn *)txn->api_internal; - } - - // For internal use only. - static DbTxn* wrap_DB_TXN(DB_TXN *txn); - -private: - DB_TXN *imp_; - - // We can add data to this class if needed - // since it is implemented via a pointer. - // (see comment at top) - - // Note: use DbEnv::txn_begin() to get pointers to a DbTxn, - // and call DbTxn::abort() or DbTxn::commit rather than - // delete to release them. - // - DbTxn(); - // For internal use only. - DbTxn(DB_TXN *txn); - virtual ~DbTxn(); - - // no copying - DbTxn(const DbTxn &); - void operator = (const DbTxn &); -}; - -// -// A chunk of data, maybe a key or value. -// -class _exported Dbt : private DBT -{ - friend class Db; - friend class Dbc; - friend class DbEnv; - friend class DbLogc; - friend class DbSequence; - -public: - // key/data - void *get_data() const { return data; } - void set_data(void *value) { data = value; } - - // key/data length - u_int32_t get_size() const { return size; } - void set_size(u_int32_t value) { size = value; } - - // RO: length of user buffer. - u_int32_t get_ulen() const { return ulen; } - void set_ulen(u_int32_t value) { ulen = value; } - - // RO: get/put record length. - u_int32_t get_dlen() const { return dlen; } - void set_dlen(u_int32_t value) { dlen = value; } - - // RO: get/put record offset. - u_int32_t get_doff() const { return doff; } - void set_doff(u_int32_t value) { doff = value; } - - // flags - u_int32_t get_flags() const { return flags; } - void set_flags(u_int32_t value) { flags = value; } - - // Conversion functions - DBT *get_DBT() { return (DBT *)this; } - const DBT *get_const_DBT() const { return (const DBT *)this; } - - static Dbt* get_Dbt(DBT *dbt) { return (Dbt *)dbt; } - static const Dbt* get_const_Dbt(const DBT *dbt) - { return (const Dbt *)dbt; } - - Dbt(void *data, u_int32_t size); - Dbt(); - ~Dbt(); - Dbt(const Dbt &); - Dbt &operator = (const Dbt &); - -private: - // Note: no extra data appears in this class (other than - // inherited from DBT) since we need DBT and Dbt objects - // to have interchangable pointers. - // - // When subclassing this class, remember that callback - // methods like bt_compare, bt_prefix, dup_compare may - // internally manufacture DBT objects (which later are - // cast to Dbt), so such callbacks might receive objects - // not of your subclassed type. -}; - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// multiple key/data/reco iterator classes -// - -// DbMultipleIterator is a shared private base class for the three types -// of bulk-return Iterator; it should never be instantiated directly, -// but it handles the functionality shared by its subclasses. -class _exported DbMultipleIterator -{ -public: - DbMultipleIterator(const Dbt &dbt); -protected: - u_int8_t *data_; - u_int32_t *p_; -}; - -class _exported DbMultipleKeyDataIterator : private DbMultipleIterator -{ -public: - DbMultipleKeyDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(Dbt &key, Dbt &data); -}; - -class _exported DbMultipleRecnoDataIterator : private DbMultipleIterator -{ -public: - DbMultipleRecnoDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(db_recno_t &recno, Dbt &data); -}; - -class _exported DbMultipleDataIterator : private DbMultipleIterator -{ -public: - DbMultipleDataIterator(const Dbt &dbt) : DbMultipleIterator(dbt) {} - bool next(Dbt &data); -}; - -//////////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////// -// -// Exception classes -// - -// Almost any error in the DB library throws a DbException. -// Every exception should be considered an abnormality -// (e.g. bug, misuse of DB, file system error). -// -class _exported DbException : public __DB_STD(exception) -{ -public: - virtual ~DbException() throw(); - DbException(int err); - DbException(const char *description); - DbException(const char *description, int err); - DbException(const char *prefix, const char *description, int err); - int get_errno() const; - virtual const char *what() const throw(); - DbEnv *get_env() const; - void set_env(DbEnv *env); - - DbException(const DbException &); - DbException &operator = (const DbException &); - -private: - void describe(const char *prefix, const char *description); - - char *what_; - int err_; // errno - DbEnv *env_; -}; - -// -// A specific sort of exception that occurs when -// an operation is aborted to resolve a deadlock. -// -class _exported DbDeadlockException : public DbException -{ -public: - virtual ~DbDeadlockException() throw(); - DbDeadlockException(const char *description); - - DbDeadlockException(const DbDeadlockException &); - DbDeadlockException &operator = (const DbDeadlockException &); -}; - -// -// A specific sort of exception that occurs when -// a lock is not granted, e.g. by lock_get or lock_vec. -// Note that the Dbt is only live as long as the Dbt used -// in the offending call. -// -class _exported DbLockNotGrantedException : public DbException -{ -public: - virtual ~DbLockNotGrantedException() throw(); - DbLockNotGrantedException(const char *prefix, db_lockop_t op, - db_lockmode_t mode, const Dbt *obj, const DbLock lock, int index); - DbLockNotGrantedException(const char *description); - - DbLockNotGrantedException(const DbLockNotGrantedException &); - DbLockNotGrantedException &operator = - (const DbLockNotGrantedException &); - - db_lockop_t get_op() const; - db_lockmode_t get_mode() const; - const Dbt* get_obj() const; - DbLock *get_lock() const; - int get_index() const; - -private: - db_lockop_t op_; - db_lockmode_t mode_; - const Dbt *obj_; - DbLock *lock_; - int index_; -}; - -// -// A specific sort of exception that occurs when -// user declared memory is insufficient in a Dbt. -// -class _exported DbMemoryException : public DbException -{ -public: - virtual ~DbMemoryException() throw(); - DbMemoryException(Dbt *dbt); - DbMemoryException(const char *prefix, Dbt *dbt); - - DbMemoryException(const DbMemoryException &); - DbMemoryException &operator = (const DbMemoryException &); - - Dbt *get_dbt() const; -private: - Dbt *dbt_; -}; - -// -// A specific sort of exception that occurs when -// recovery is required before continuing DB activity. -// -class _exported DbRunRecoveryException : public DbException -{ -public: - virtual ~DbRunRecoveryException() throw(); - DbRunRecoveryException(const char *description); - - DbRunRecoveryException(const DbRunRecoveryException &); - DbRunRecoveryException &operator = (const DbRunRecoveryException &); -}; -#endif /* !_DB_CXX_H_ */ diff --git a/db/build_win64/db_deadlock.dsp b/db/build_win64/db_deadlock.dsp deleted file mode 100644 index efd268610..000000000 --- a/db/build_win64/db_deadlock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_deadlock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_deadlock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_deadlock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_deadlock.mak" CFG="db_deadlock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_deadlock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_deadlock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_deadlock - Win32 Release" -# Name "db_deadlock - Win32 Debug" -# Name "db_deadlock - Win32 Release Static" -# Name "db_deadlock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_deadlock\db_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_dll.dsp b/db/build_win64/db_dll.dsp deleted file mode 100644 index af74213b2..000000000 --- a/db/build_win64/db_dll.dsp +++ /dev/null @@ -1,880 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_dll" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_dll - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_dll.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_dll.mak" CFG="db_dll - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_dll - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_dll - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_dll - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb43.dll" - -!ELSEIF "$(CFG)" == "db_dll - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_CREATE_DLL" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb43d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_dll - Win32 Release" -# Name "db_dll - Win32 Debug" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_verify.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=..\build_win32\libdb.def -# End Source File -# Begin Source File - -SOURCE=..\build_win32\libdb.rc -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\aes_method.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\crypto.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\mersenne\mt19937db.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-alg-fst.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-api-fst.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ovfl_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfyutil.c -# End Source File -# Begin Source File - -SOURCE=..\dbm\dbm.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_auto.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_conv.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_dup.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_meta.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_method.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_open.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_page.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_rec.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stat.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_verify.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\hsearch\hsearch.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_auto.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_conv.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_files.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_method.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_open.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_rec.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stat.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_verify.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_auto.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_backup.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_method.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_record.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_region.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stat.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_util.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_dump.dsp b/db/build_win64/db_dump.dsp deleted file mode 100644 index 9fc059677..000000000 --- a/db/build_win64/db_dump.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_dump" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_dump - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_dump.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_dump.mak" CFG="db_dump - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_dump - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_dump - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_dump - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_dump - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_dump - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_dump - Win32 Release" -# Name "db_dump - Win32 Debug" -# Name "db_dump - Win32 Release Static" -# Name "db_dump - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_dump\db_dump.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_int.h b/db/build_win64/db_int.h deleted file mode 100644 index 046e3de5a..000000000 --- a/db/build_win64/db_int.h +++ /dev/null @@ -1,592 +0,0 @@ -/* DO NOT EDIT: automatically built by dist/s_win32. */ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1996-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db_int.in,v 11.155 2004/10/28 16:07:38 ubell Exp $ - */ - -#ifndef _DB_INTERNAL_H_ -#define _DB_INTERNAL_H_ - -/******************************************************* - * System includes, db.h, a few general DB includes. The DB includes are - * here because it's OK if db_int.h includes queue structure declarations. - *******************************************************/ -#ifndef NO_SYSTEM_INCLUDES -#if defined(STDC_HEADERS) || defined(__cplusplus) -#include -#else -#include -#endif -#include -#endif - -#include "db.h" - -#include "dbinc/queue.h" -#include "dbinc/shqueue.h" - -#if defined(__cplusplus) -extern "C" { -#endif - -/******************************************************* - * General purpose constants and macros. - *******************************************************/ -#ifndef UINT16_MAX -#define UINT16_MAX 65535 /* Maximum 16-bit unsigned. */ -#endif -#ifndef UINT32_MAX -#ifdef __STDC__ -#define UINT32_MAX 4294967295U /* Maximum 32-bit unsigned. */ -#else -#define UINT32_MAX 0xffffffff /* Maximum 32-bit unsigned. */ -#endif -#endif - -#if defined(HAVE_LONG_LONG) && defined(HAVE_UNSIGNED_LONG_LONG) -#undef INT64_MAX -#undef INT64_MIN -#undef UINT64_MAX - -#ifdef DB_WIN32 -#define INT64_MAX _I64_MAX -#define INT64_MIN _I64_MIN -#define UINT64_MAX _UI64_MAX - -#define INT64_FMT "%l64d" -#define UINT64_FMT "%l64u" -#else -/* - * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can - * handle 64-bit values, but the system's constants don't include the LL/ULL - * suffix, and so can't be compiled using the 32-bit compiler. - */ -#define INT64_MAX 9223372036854775807LL -#define INT64_MIN (-INT64_MAX-1) -#define UINT64_MAX 18446744073709551615ULL - -#define INT64_FMT "%lld" -#define UINT64_FMT "%llu" -#endif /* DB_WIN32 */ -#endif /* HAVE_LONG_LONG && HAVE_UNSIGNED_LONG_LONG */ - -#define MEGABYTE 1048576 -#define GIGABYTE 1073741824 - -#define MS_PER_SEC 1000 /* Milliseconds in a second. */ -#define USEC_PER_MS 1000 /* Microseconds in a millisecond. */ - -#define RECNO_OOB 0 /* Illegal record number. */ - -/* Test for a power-of-two (tests true for zero, which doesn't matter here). */ -#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0) - -/* Test for valid page sizes. */ -#define DB_MIN_PGSIZE 0x000200 /* Minimum page size (512). */ -#define DB_MAX_PGSIZE 0x010000 /* Maximum page size (65536). */ -#define IS_VALID_PAGESIZE(x) \ - (POWER_OF_TWO(x) && (x) >= DB_MIN_PGSIZE && ((x) <= DB_MAX_PGSIZE)) - -/* Minimum number of pages cached, by default. */ -#define DB_MINPAGECACHE 16 - -/* - * If we are unable to determine the underlying filesystem block size, use - * 8K on the grounds that most OS's use less than 8K for a VM page size. - */ -#define DB_DEF_IOSIZE (8 * 1024) - -/* Align an integer to a specific boundary. */ -#undef DB_ALIGN -#define DB_ALIGN(v, bound) \ - (((v) + (bound) - 1) & ~(((uintmax_t)bound) - 1)) - -/* Increment a pointer to a specific boundary. */ -#undef ALIGNP_INC -#define ALIGNP_INC(p, bound) \ - (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)bound) - 1)) - -/* Decrement a pointer to a specific boundary. */ -#undef ALIGNP_DEC -#define ALIGNP_DEC(p, bound) \ - (void *)((uintptr_t)(p) & ~(((uintptr_t)bound) - 1)) - -/* - * Print an address as a u_long (a u_long is the largest type we can print - * portably). Most 64-bit systems have made longs 64-bits, so this should - * work. - */ -#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p)) - -/* - * Convert a pointer to a small integral value. - * - * The (u_int16_t)(uintptr_t) cast avoids warnings: the (uintptr_t) cast - * converts the value to an integral type, and the (u_int16_t) cast converts - * it to a small integral type so we don't get complaints when we assign the - * final result to an integral type smaller than uintptr_t. - */ -#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p)) -#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p)) - -/* - * There are several on-page structures that are declared to have a number of - * fields followed by a variable length array of items. The structure size - * without including the variable length array or the address of the first of - * those elements can be found using SSZ. - * - * This macro can also be used to find the offset of a structure element in a - * structure. This is used in various places to copy structure elements from - * unaligned memory references, e.g., pointers into a packed page. - * - * There are two versions because compilers object if you take the address of - * an array. - */ -#undef SSZ -#define SSZ(name, field) P_TO_UINT16(&(((name *)0)->field)) - -#undef SSZA -#define SSZA(name, field) P_TO_UINT16(&(((name *)0)->field[0])) - -/* Structure used to print flag values. */ -typedef struct __fn { - u_int32_t mask; /* Flag value. */ - const char *name; /* Flag name. */ -} FN; - -/* Set, clear and test flags. */ -#define FLD_CLR(fld, f) (fld) &= ~(f) -#define FLD_ISSET(fld, f) ((fld) & (f)) -#define FLD_SET(fld, f) (fld) |= (f) -#define F_CLR(p, f) (p)->flags &= ~(f) -#define F_ISSET(p, f) ((p)->flags & (f)) -#define F_SET(p, f) (p)->flags |= (f) -#define LF_CLR(f) ((flags) &= ~(f)) -#define LF_ISSET(f) ((flags) & (f)) -#define LF_SET(f) ((flags) |= (f)) - -/* - * Calculate a percentage. The values can overflow 32-bit integer arithmetic - * so we use floating point. - * - * When calculating a bytes-vs-page size percentage, we're getting the inverse - * of the percentage in all cases, that is, we want 100 minus the percentage we - * calculate. - */ -#define DB_PCT(v, total) \ - ((int)((total) == 0 ? 0 : ((double)(v) * 100) / (total))) -#define DB_PCT_PG(v, total, pgsize) \ - ((int)((total) == 0 ? 0 : \ - 100 - ((double)(v) * 100) / ((total) * (pgsize)))) - -/* - * Structure used for callback message aggregation. - * - * Display values in XXX_stat_print calls. - */ -typedef struct __db_msgbuf { - char *buf; /* Heap allocated buffer. */ - char *cur; /* Current end of message. */ - size_t len; /* Allocated length of buffer. */ -} DB_MSGBUF; -#define DB_MSGBUF_INIT(a) do { \ - (a)->buf = (a)->cur = NULL; \ - (a)->len = 0; \ -} while (0) -#define DB_MSGBUF_FLUSH(dbenv, a) do { \ - if ((a)->buf != NULL) { \ - if ((a)->cur != (a)->buf) \ - __db_msg(dbenv, "%s", (a)->buf); \ - __os_free(dbenv, (a)->buf); \ - DB_MSGBUF_INIT(a); \ - } \ -} while (0) -#define STAT_FMT(msg, fmt, type, v) do { \ - DB_MSGBUF __mb; \ - DB_MSGBUF_INIT(&__mb); \ - __db_msgadd(dbenv, &__mb, fmt, (type)(v)); \ - __db_msgadd(dbenv, &__mb, "\t%s", msg); \ - DB_MSGBUF_FLUSH(dbenv, &__mb); \ -} while (0) -#define STAT_HEX(msg, v) \ - __db_msg(dbenv, "%#lx\t%s", (u_long)(v), msg) -#define STAT_ISSET(msg, p) \ - __db_msg(dbenv, "%sSet\t%s", (p) == NULL ? "!" : " ", msg) -#define STAT_LONG(msg, v) \ - __db_msg(dbenv, "%ld\t%s", (long)(v), msg) -#define STAT_LSN(msg, lsnp) \ - __db_msg(dbenv, "%lu/%lu\t%s", \ - (u_long)(lsnp)->file, (u_long)(lsnp)->offset, msg) -#define STAT_STRING(msg, p) do { \ - const char *__p = p; /* p may be a function call. */ \ - __db_msg(dbenv, "%s\t%s", __p == NULL ? "!Set" : __p, msg); \ -} while (0) -#define STAT_ULONG(msg, v) \ - __db_msg(dbenv, "%lu\t%s", (u_long)(v), msg) - -/******************************************************* - * API return values - *******************************************************/ -/* - * Return values that are OK for each different call. Most calls have a - * standard 'return of 0 is only OK value', but some, like db->get have - * DB_NOTFOUND as a return value, but it really isn't an error. - */ -#define DB_RETOK_STD(ret) ((ret) == 0) -#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST || \ - (ret) == DB_NOTFOUND) -#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) -#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) -#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) -#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) -#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) -#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ - (ret) == DB_REP_ISPERM || \ - (ret) == DB_REP_NEWMASTER || \ - (ret) == DB_REP_NEWSITE || \ - (ret) == DB_REP_NOTPERM || \ - (ret) == DB_REP_STARTUPDONE) - -/* Find a reasonable operation-not-supported error. */ -#ifdef EOPNOTSUPP -#define DB_OPNOTSUP EOPNOTSUPP -#else -#ifdef ENOTSUP -#define DB_OPNOTSUP ENOTSUP -#else -#define DB_OPNOTSUP EINVAL -#endif -#endif - -/******************************************************* - * Files. - *******************************************************/ -/* - * We use 1024 as the maximum path length. It's too hard to figure out what - * the real path length is, as it was traditionally stored in , - * and that file isn't always available. - */ -#undef MAXPATHLEN -#define MAXPATHLEN 1024 - -#define PATH_DOT "." /* Current working directory. */ - /* Path separator character(s). */ -#define PATH_SEPARATOR "\\/:" - -/******************************************************* - * Environment. - *******************************************************/ -/* Type passed to __db_appname(). */ -typedef enum { - DB_APP_NONE=0, /* No type (region). */ - DB_APP_DATA, /* Data file. */ - DB_APP_LOG, /* Log file. */ - DB_APP_TMP /* Temporary file. */ -} APPNAME; - -/* - * CDB_LOCKING CDB product locking. - * CRYPTO_ON Security has been configured. - * LOCKING_ON Locking has been configured. - * LOGGING_ON Logging has been configured. - * MPOOL_ON Memory pool has been configured. - * REP_ON Replication has been configured. - * RPC_ON RPC has been configured. - * TXN_ON Transactions have been configured. - */ -#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_CDB) -#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle != NULL) -#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != NULL) -#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != NULL) -#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NULL) -#define REP_ON(dbenv) ((dbenv)->rep_handle != NULL) -#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL) -#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL) - -/* - * STD_LOCKING Standard locking, that is, locking was configured and CDB - * was not. We do not do locking in off-page duplicate trees, - * so we check for that in the cursor first. - */ -#define STD_LOCKING(dbc) \ - (!F_ISSET(dbc, DBC_OPD) && \ - !CDB_LOCKING((dbc)->dbp->dbenv) && LOCKING_ON((dbc)->dbp->dbenv)) - -/* - * IS_RECOVERING: The system is running recovery. - */ -#define IS_RECOVERING(dbenv) \ - (LOGGING_ON(dbenv) && \ - F_ISSET((DB_LOG *)(dbenv)->lg_handle, DBLOG_RECOVER)) - -/* Initialization methods are often illegal before/after open is called. */ -#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \ - if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - return (__db_mi_open(dbenv, name, 1)); -#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \ - if (!F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - return (__db_mi_open(dbenv, name, 0)); - -/* We're not actually user hostile, honest. */ -#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) \ - if (handle == NULL) \ - return (__db_env_config(dbenv, i, flags)); -#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags) \ - if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ - ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) - -/******************************************************* - * Database Access Methods. - *******************************************************/ -/* - * DB_IS_THREADED -- - * The database handle is free-threaded (was opened with DB_THREAD). - */ -#define DB_IS_THREADED(dbp) \ - ((dbp)->mutexp != NULL) - -/* Initialization methods are often illegal before/after open is called. */ -#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \ - if (F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ - return (__db_mi_open((dbp)->dbenv, name, 1)); -#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \ - if (!F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ - return (__db_mi_open((dbp)->dbenv, name, 0)); -/* Some initialization methods are illegal if environment isn't local. */ -#define DB_ILLEGAL_IN_ENV(dbp, name) \ - if (!F_ISSET((dbp)->dbenv, DB_ENV_DBLOCAL)) \ - return (__db_mi_env((dbp)->dbenv, name)); -#define DB_ILLEGAL_METHOD(dbp, flags) { \ - int __ret; \ - if ((__ret = __dbh_am_chk(dbp, flags)) != 0) \ - return (__ret); \ -} - -/* - * Common DBC->internal fields. Each access method adds additional fields - * to this list, but the initial fields are common. - */ -#define __DBC_INTERNAL \ - DBC *opd; /* Off-page duplicate cursor. */\ - \ - void *page; /* Referenced page. */ \ - db_pgno_t root; /* Tree root. */ \ - db_pgno_t pgno; /* Referenced page number. */ \ - db_indx_t indx; /* Referenced key item index. */\ - \ - DB_LOCK lock; /* Cursor lock. */ \ - db_lockmode_t lock_mode; /* Lock mode. */ - -struct __dbc_internal { - __DBC_INTERNAL -}; - -/* Actions that __db_master_update can take. */ -typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_action; - -/* - * Access-method-common macro for determining whether a cursor - * has been initialized. - */ -#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno != PGNO_INVALID) - -/* Free the callback-allocated buffer, if necessary, hanging off of a DBT. */ -#define FREE_IF_NEEDED(sdbp, dbt) \ - if (F_ISSET((dbt), DB_DBT_APPMALLOC)) { \ - __os_ufree((sdbp)->dbenv, (dbt)->data); \ - F_CLR((dbt), DB_DBT_APPMALLOC); \ - } - -/* - * Use memory belonging to object "owner" to return the results of - * any no-DBT-flag get ops on cursor "dbc". - */ -#define SET_RET_MEM(dbc, owner) \ - do { \ - (dbc)->rskey = &(owner)->my_rskey; \ - (dbc)->rkey = &(owner)->my_rkey; \ - (dbc)->rdata = &(owner)->my_rdata; \ - } while (0) - -/* Use the return-data memory src is currently set to use in dest as well. */ -#define COPY_RET_MEM(src, dest) \ - do { \ - (dest)->rskey = (src)->rskey; \ - (dest)->rkey = (src)->rkey; \ - (dest)->rdata = (src)->rdata; \ - } while (0) - -/* Reset the returned-memory pointers to their defaults. */ -#define RESET_RET_MEM(dbc) \ - do { \ - (dbc)->rskey = &(dbc)->my_rskey; \ - (dbc)->rkey = &(dbc)->my_rkey; \ - (dbc)->rdata = &(dbc)->my_rdata; \ - } while (0) - -/******************************************************* - * Mpool. - *******************************************************/ -/* - * File types for DB access methods. Negative numbers are reserved to DB. - */ -#define DB_FTYPE_SET -1 /* Call pgin/pgout functions. */ -#define DB_FTYPE_NOTSET 0 /* Don't call... */ - -/* Structure used as the DB pgin/pgout pgcookie. */ -typedef struct __dbpginfo { - size_t db_pagesize; /* Underlying page size. */ - u_int32_t flags; /* Some DB_AM flags needed. */ - DBTYPE type; /* DB type */ -} DB_PGINFO; - -/******************************************************* - * Log. - *******************************************************/ -/* Initialize an LSN to 'zero'. */ -#define ZERO_LSN(LSN) do { \ - (LSN).file = 0; \ - (LSN).offset = 0; \ -} while (0) -#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN).offset == 0) - -#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN).offset == 0) -#define INIT_LSN(LSN) do { \ - (LSN).file = 1; \ - (LSN).offset = 0; \ -} while (0) - -#define MAX_LSN(LSN) do { \ - (LSN).file = UINT32_MAX; \ - (LSN).offset = UINT32_MAX; \ -} while (0) -#define IS_MAX_LSN(LSN) \ - ((LSN).file == UINT32_MAX && (LSN).offset == UINT32_MAX) - -/* If logging is turned off, smash the lsn. */ -#define LSN_NOT_LOGGED(LSN) do { \ - (LSN).file = 0; \ - (LSN).offset = 1; \ -} while (0) -#define IS_NOT_LOGGED_LSN(LSN) \ - ((LSN).file == 0 && (LSN).offset == 1) - -/******************************************************* - * Txn. - *******************************************************/ -#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSET((C)->txn, TXN_NOWAIT)) -#define NOWAIT_FLAG(txn) \ - ((txn) != NULL && F_ISSET((txn), TXN_NOWAIT) ? DB_LOCK_NOWAIT : 0) -#define IS_SUBTRANSACTION(txn) \ - ((txn) != NULL && (txn)->parent != NULL) - -/******************************************************* - * Crypto. - *******************************************************/ -#define DB_IV_BYTES 16 /* Bytes per IV */ -#define DB_MAC_KEY 20 /* Bytes per MAC checksum */ - -/******************************************************* - * Secondaries over RPC. - *******************************************************/ -#ifdef CONFIG_TEST -/* - * These are flags passed to DB->associate calls by the Tcl API if running - * over RPC. The RPC server will mask out these flags before making the real - * DB->associate call. - * - * These flags must coexist with the valid flags to DB->associate (currently - * DB_AUTO_COMMIT and DB_CREATE). DB_AUTO_COMMIT is in the group of - * high-order shared flags (0xff000000), and DB_CREATE is in the low-order - * group (0x00000fff), so we pick a range in between. - */ -#define DB_RPC2ND_MASK 0x00f00000 /* Reserved bits. */ - -#define DB_RPC2ND_REVERSEDATA 0x00100000 /* callback_n(0) _s_reversedata. */ -#define DB_RPC2ND_NOOP 0x00200000 /* callback_n(1) _s_noop */ -#define DB_RPC2ND_CONCATKEYDATA 0x00300000 /* callback_n(2) _s_concatkeydata */ -#define DB_RPC2ND_CONCATDATAKEY 0x00400000 /* callback_n(3) _s_concatdatakey */ -#define DB_RPC2ND_REVERSECONCAT 0x00500000 /* callback_n(4) _s_reverseconcat */ -#define DB_RPC2ND_TRUNCDATA 0x00600000 /* callback_n(5) _s_truncdata */ -#define DB_RPC2ND_CONSTANT 0x00700000 /* callback_n(6) _s_constant */ -#define DB_RPC2ND_GETZIP 0x00800000 /* sj_getzip */ -#define DB_RPC2ND_GETNAME 0x00900000 /* sj_getname */ -#endif - -/******************************************************* - * Forward structure declarations. - *******************************************************/ -struct __db_reginfo_t; typedef struct __db_reginfo_t REGINFO; -struct __db_txnhead; typedef struct __db_txnhead DB_TXNHEAD; -struct __db_txnlist; typedef struct __db_txnlist DB_TXNLIST; -struct __vrfy_childinfo; typedef struct __vrfy_childinfo VRFY_CHILDINFO; -struct __vrfy_dbinfo; typedef struct __vrfy_dbinfo VRFY_DBINFO; -struct __vrfy_pageinfo; typedef struct __vrfy_pageinfo VRFY_PAGEINFO; - -#if defined(__cplusplus) -} -#endif - -/******************************************************* - * Remaining general DB includes. - *******************************************************/ - - -#include "dbinc/globals.h" -#include "dbinc/debug.h" -#include "dbinc/mutex.h" -#include "dbinc/region.h" -#include "dbinc_auto/mutex_ext.h" /* XXX: Include after region.h. */ -#include "dbinc_auto/env_ext.h" -#include "dbinc/os.h" -#include "dbinc/rep.h" -#include "dbinc_auto/clib_ext.h" -#include "dbinc_auto/common_ext.h" - -/******************************************************* - * Remaining Log. - * These need to be defined after the general includes - * because they need rep.h from above. - *******************************************************/ -/* - * Test if the environment is currently logging changes. If we're in recovery - * or we're a replication client, we don't need to log changes because they're - * already in the log, even though we have a fully functional log system. - */ -#define DBENV_LOGGING(dbenv) \ - (LOGGING_ON(dbenv) && !IS_REP_CLIENT(dbenv) && \ - (!IS_RECOVERING(dbenv))) - -/* - * Test if we need to log a change. By default, we don't log operations without - * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. - * This is because we want to get log records for read/write operations, and, if - * we trying to debug something, more information is always better. - * - * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; - * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING - * is true. - * - * We explicitly use LOGGING_ON/IS_REP_CLIENT here because we don't want to pull - * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and - * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. - */ -#if defined(DIAGNOSTIC) || defined(DEBUG_ROP) || defined(DEBUG_WOP) -#define DBC_LOGGING(dbc) \ - (LOGGING_ON((dbc)->dbp->dbenv) && \ - !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) -#else -#define DBC_LOGGING(dbc) \ - ((dbc)->txn != NULL && LOGGING_ON((dbc)->dbp->dbenv) && \ - !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) -#endif - -#endif /* !_DB_INTERNAL_H_ */ diff --git a/db/build_win64/db_java.dsp b/db/build_win64/db_java.dsp deleted file mode 100644 index dcf152708..000000000 --- a/db/build_win64/db_java.dsp +++ /dev/null @@ -1,132 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_java" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_java - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_java.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_java.mak" CFG="db_java - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_java - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_java - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_java - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb_java43.dll" -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Release\libdb_java43.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -O -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -O -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ELSEIF "$(CFG)" == "db_java - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb_java43d.dll" /fixed:no -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Debug\libdb_java43d.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -g -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -g -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ENDIF - -# Begin Target - -# Name "db_java - Win32 Release" -# Name "db_java - Win32 Debug" -# Begin Source File - -SOURCE=..\libdb_java\db_java_wrap.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_lib.dsp b/db/build_win64/db_lib.dsp deleted file mode 100644 index a7fb41579..000000000 --- a/db/build_win64/db_lib.dsp +++ /dev/null @@ -1,92 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_lib" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Generic Project" 0x010a - -CFG=db_lib - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_lib.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_lib.mak" CFG="db_lib - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_lib - Win32 Release" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Debug" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Release Static" (based on "Win32 (x86) Generic Project") -!MESSAGE "db_lib - Win32 Debug Static" (based on "Win32 (x86) Generic Project") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" - -!IF "$(CFG)" == "db_lib - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "db_lib - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_Static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_Static" -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "db_lib - Win32 Release" -# Name "db_lib - Win32 Debug" -# Name "db_lib - Win32 Release Static" -# Name "db_lib - Win32 Debug Static" -# End Target -# End Project diff --git a/db/build_win64/db_load.dsp b/db/build_win64/db_load.dsp deleted file mode 100644 index 71ae7a299..000000000 --- a/db/build_win64/db_load.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_load" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_load - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_load.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_load.mak" CFG="db_load - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_load - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_load - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_load - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_load - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_load - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_load - Win32 Release" -# Name "db_load - Win32 Debug" -# Name "db_load - Win32 Release Static" -# Name "db_load - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_load\db_load.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_perf.dsp b/db/build_win64/db_perf.dsp deleted file mode 100644 index 93ce956fe..000000000 --- a/db/build_win64/db_perf.dsp +++ /dev/null @@ -1,224 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_perf" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_perf - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_perf.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_perf.mak" CFG="db_perf - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_perf - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_perf - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_perf - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_perf - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_perf - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_perf - Win32 Release" -# Name "db_perf - Win32 Debug" -# Name "db_perf - Win32 Release Static" -# Name "db_perf - Win32 Debug Static" -# Begin Source File - -SOURCE=..\test_perf\db_perf.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_checkpoint.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_config.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_dbs.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_dead.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_debug.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_file.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_key.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_log.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_misc.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_op.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_parse.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_rand.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_spawn.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_stat.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_sync.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_thread.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_txn.c -# End Source File -# Begin Source File - -SOURCE=..\test_perf\perf_util.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_printlog.dsp b/db/build_win64/db_printlog.dsp deleted file mode 100644 index 5fb97bef5..000000000 --- a/db/build_win64/db_printlog.dsp +++ /dev/null @@ -1,184 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_printlog" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_printlog - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_printlog.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_printlog.mak" CFG="db_printlog - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_printlog - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_printlog - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_printlog - Win32 Release" -# Name "db_printlog - Win32 Debug" -# Name "db_printlog - Win32 Release Static" -# Name "db_printlog - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\btree_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_autop.c -# End Source File -# Begin Source File - -SOURCE=..\db_printlog\db_printlog.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_autop.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_autop.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_autop.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_autop.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_autop.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_autop.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_recover.dsp b/db/build_win64/db_recover.dsp deleted file mode 100644 index 039530fd6..000000000 --- a/db/build_win64/db_recover.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_recover" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_recover - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_recover.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_recover.mak" CFG="db_recover - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_recover - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_recover - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_recover - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_recover - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_recover - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_recover - Win32 Release" -# Name "db_recover - Win32 Debug" -# Name "db_recover - Win32 Release Static" -# Name "db_recover - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_recover\db_recover.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_small.dsp b/db/build_win64/db_small.dsp deleted file mode 100644 index f82b0b08f..000000000 --- a/db/build_win64/db_small.dsp +++ /dev/null @@ -1,720 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_small" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=db_small - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_small.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_small.mak" CFG="db_small - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_small - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "db_small - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_small - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_small" -# PROP BASE Intermediate_Dir "Release_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_small" -# PROP Intermediate_Dir "Release_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_small/libdb43s.lib" -# ADD LIB32 /nologo /out:"Release_small/libdb43s.lib" - -!ELSEIF "$(CFG)" == "db_small - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_small" -# PROP BASE Intermediate_Dir "Debug_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_small" -# PROP Intermediate_Dir "Debug_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_small/libdb43sd.lib" -# ADD LIB32 /nologo /out:"Debug_small/libdb43sd.lib" - -!ENDIF - -# Begin Target - -# Name "db_small - Win32 Release Static" -# Name "db_small - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\crypto_stub.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy_stub.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stub.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stub.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stub.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_stat.dsp b/db/build_win64/db_stat.dsp deleted file mode 100644 index 8ff259572..000000000 --- a/db/build_win64/db_stat.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_stat" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_stat - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_stat.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_stat.mak" CFG="db_stat - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_stat - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_stat - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_stat - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_stat - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_stat - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_stat - Win32 Release" -# Name "db_stat - Win32 Debug" -# Name "db_stat - Win32 Release Static" -# Name "db_stat - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_stat\db_stat.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_static.dsp b/db/build_win64/db_static.dsp deleted file mode 100644 index 063db5791..000000000 --- a/db/build_win64/db_static.dsp +++ /dev/null @@ -1,864 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_static" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=db_static - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_static.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_static.mak" CFG="db_static - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_static - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "db_static - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_static - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb43s.lib" -# ADD LIB32 /nologo /out:"Release_static/libdb43s.lib" - -!ELSEIF "$(CFG)" == "db_static - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb43sd.lib" -# ADD LIB32 /nologo /out:"Debug_static/libdb43sd.lib" - -!ENDIF - -# Begin Target - -# Name "db_static - Win32 Release Static" -# Name "db_static - Win32 Debug Static" -# Begin Source File - -SOURCE=..\btree\bt_compare.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_conv.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_curadj.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_cursor.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_delete.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_method.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_open.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_put.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rec.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_recno.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_rsearch.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_search.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_split.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_stat.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\btree\bt_verify.c -# End Source File -# Begin Source File - -SOURCE=..\btree\btree_auto.c -# End Source File -# Begin Source File - -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_byteorder.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_err.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_getlong.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_idspace.c -# End Source File -# Begin Source File - -SOURCE=..\common\db_log2.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_cache.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_log.c -# End Source File -# Begin Source File - -SOURCE=..\common\util_sig.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\aes_method.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\crypto.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\mersenne\mt19937db.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-alg-fst.c -# End Source File -# Begin Source File - -SOURCE=..\crypto\rijndael\rijndael-api-fst.c -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_db.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_dbt.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_env.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_except.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_lock.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_logc.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_mpool.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_multi.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_seq.cpp -# End Source File -# Begin Source File - -SOURCE=..\cxx\cxx_txn.cpp -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\crdel_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_am.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_auto.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_cam.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_conv.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dispatch.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_dup.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_iface.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_join.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_meta.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_method.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_open.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_overflow.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ovfl_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_pr.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rec.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_remove.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_rename.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_ret.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setid.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_setlsn.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_stati.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_upg_opd.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfy.c -# End Source File -# Begin Source File - -SOURCE=..\db\db_vrfyutil.c -# End Source File -# Begin Source File - -SOURCE=..\dbm\dbm.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_auto.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_rec.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_stat.c -# End Source File -# Begin Source File - -SOURCE=..\dbreg\dbreg_util.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_file.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_method.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_open.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_recover.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_region.c -# End Source File -# Begin Source File - -SOURCE=..\env\env_stat.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fileops_auto.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_basic.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_rec.c -# End Source File -# Begin Source File - -SOURCE=..\fileops\fop_util.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_auto.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_conv.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_dup.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_func.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_meta.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_method.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_open.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_page.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_rec.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_reclaim.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_stat.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\hash\hash_verify.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\hmac.c -# End Source File -# Begin Source File - -SOURCE=..\hmac\sha1.c -# End Source File -# Begin Source File - -SOURCE=..\hsearch\hsearch.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_deadlock.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_id.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_list.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_method.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_region.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_stat.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_timer.c -# End Source File -# Begin Source File - -SOURCE=..\lock\lock_util.c -# End Source File -# Begin Source File - -SOURCE=..\log\log.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_archive.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_compare.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_get.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_method.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_put.c -# End Source File -# Begin Source File - -SOURCE=..\log\log_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_bh.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fget.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fmethod.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fopen.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fput.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_fset.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_method.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_region.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_register.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_stat.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_sync.c -# End Source File -# Begin Source File - -SOURCE=..\mp\mp_trickle.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mut_win32.c -# End Source File -# Begin Source File - -SOURCE=..\mutex\mutex.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_alloc.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_id.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_method.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_oflags.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_region.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_root.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_rpath.c -# End Source File -# Begin Source File - -SOURCE=..\os\os_tmpdir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_abs.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_clock.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_config.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_dir.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_errno.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fid.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_fsync.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_handle.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_map.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_open.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rename.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_rw.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_seek.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_sleep.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_spin.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_stat.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_truncate.c -# End Source File -# Begin Source File - -SOURCE=..\os_win32\os_unlink.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_auto.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_conv.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_files.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_method.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_open.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_rec.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_stat.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\qam\qam_verify.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_auto.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_backup.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_method.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_record.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_region.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_stat.c -# End Source File -# Begin Source File - -SOURCE=..\rep\rep_util.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\seq_stat.c -# End Source File -# Begin Source File - -SOURCE=..\sequence\sequence.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_auto.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_method.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_rec.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_recover.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_region.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_stat.c -# End Source File -# Begin Source File - -SOURCE=..\txn\txn_util.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_db.c -# End Source File -# Begin Source File - -SOURCE=..\xa\xa_map.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_tcl.dsp b/db/build_win64/db_tcl.dsp deleted file mode 100644 index 0ce84a247..000000000 --- a/db/build_win64/db_tcl.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_tcl" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=db_tcl - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_tcl.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_tcl.mak" CFG="db_tcl - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_tcl - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_tcl - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_tcl - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_TCL_SUPPORT" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 Release/libdb43.lib tcl84.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb_tcl43.dll" - -!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_TCL_SUPPORT" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib tcl84g.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb_tcl43d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_tcl - Win32 Release" -# Name "db_tcl - Win32 Debug" -# Begin Source File - -SOURCE=..\build_win32\libdb_tcl.def -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_compat.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_db.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_db_pkg.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_dbcursor.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_env.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_internal.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_lock.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_log.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_mp.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_rep.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_seq.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_txn.c -# End Source File -# Begin Source File - -SOURCE=..\tcl\tcl_util.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_test.dsp b/db/build_win64/db_test.dsp deleted file mode 100644 index c12971a5a..000000000 --- a/db/build_win64/db_test.dsp +++ /dev/null @@ -1,100 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_test" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_test - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_test.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_test.mak" CFG="db_test - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_test - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_test - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_test - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Release\*.exe . -# End Special Build Tool - -!ELSEIF "$(CFG)" == "db_test - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /out:"Debug/dbkill.exe" /fixed:no -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Debug\*.exe . -# End Special Build Tool - -!ENDIF - -# Begin Target - -# Name "db_test - Win32 Release" -# Name "db_test - Win32 Debug" -# Begin Source File - -SOURCE=..\build_win32\dbkill.cpp -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_test.src b/db/build_win64/db_test.src deleted file mode 100644 index 960143e04..000000000 --- a/db/build_win64/db_test.src +++ /dev/null @@ -1,97 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /subsystem:console /machine:IA64 -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Release\*.exe . -# End Special Build Tool - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /out:"Debug/dbkill.exe" /fixed:no -# Begin Special Build Tool -SOURCE="$(InputPath)" -PostBuild_Desc=Copy built executable files. -PostBuild_Cmds=copy Debug\*.exe . -# End Special Build Tool - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/db_upgrade.dsp b/db/build_win64/db_upgrade.dsp deleted file mode 100644 index ef51dbce4..000000000 --- a/db/build_win64/db_upgrade.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_upgrade" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_upgrade - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_upgrade.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_upgrade.mak" CFG="db_upgrade - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_upgrade - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_upgrade - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_upgrade - Win32 Release" -# Name "db_upgrade - Win32 Debug" -# Name "db_upgrade - Win32 Release Static" -# Name "db_upgrade - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_upgrade\db_upgrade.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/db_verify.dsp b/db/build_win64/db_verify.dsp deleted file mode 100644 index 02a03de9e..000000000 --- a/db/build_win64/db_verify.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="db_verify" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=db_verify - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "db_verify.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "db_verify.mak" CFG="db_verify - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "db_verify - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "db_verify - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "db_verify - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "db_verify - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "db_verify - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "db_verify - Win32 Release" -# Name "db_verify - Win32 Debug" -# Name "db_verify - Win32 Release Static" -# Name "db_verify - Win32 Debug Static" -# Begin Source File - -SOURCE=..\db_verify\db_verify.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/dynamic_dsp.src b/db/build_win64/dynamic_dsp.src deleted file mode 100644 index 5f409e3de..000000000 --- a/db/build_win64/dynamic_dsp.src +++ /dev/null @@ -1,93 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_CREATE_DLL" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/ex_access.dsp b/db/build_win64/ex_access.dsp deleted file mode 100644 index f58224544..000000000 --- a/db/build_win64/ex_access.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_access" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_access - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_access.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_access.mak" CFG="ex_access - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_access - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_access - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_access - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_access - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_access - Win32 Release" -# Name "ex_access - Win32 Debug" -# Name "ex_access - Win32 Release Static" -# Name "ex_access - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_access.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_btrec.dsp b/db/build_win64/ex_btrec.dsp deleted file mode 100644 index 698c7453c..000000000 --- a/db/build_win64/ex_btrec.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_btrec" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_btrec - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_btrec.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_btrec.mak" CFG="ex_btrec - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_btrec - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_btrec - Win32 Release" -# Name "ex_btrec - Win32 Debug" -# Name "ex_btrec - Win32 Release Static" -# Name "ex_btrec - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_btrec.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_env.dsp b/db/build_win64/ex_env.dsp deleted file mode 100644 index 703e4e921..000000000 --- a/db/build_win64/ex_env.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_env" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_env - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_env.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_env.mak" CFG="ex_env - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_env - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_env - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_env - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_env - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_env - Win32 Release" -# Name "ex_env - Win32 Debug" -# Name "ex_env - Win32 Release Static" -# Name "ex_env - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_env.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_lock.dsp b/db/build_win64/ex_lock.dsp deleted file mode 100644 index 4d11379ec..000000000 --- a/db/build_win64/ex_lock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_lock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_lock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_lock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_lock.mak" CFG="ex_lock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_lock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_lock - Win32 Release" -# Name "ex_lock - Win32 Debug" -# Name "ex_lock - Win32 Release Static" -# Name "ex_lock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_lock.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_mpool.dsp b/db/build_win64/ex_mpool.dsp deleted file mode 100644 index 36f156f5d..000000000 --- a/db/build_win64/ex_mpool.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_mpool" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_mpool - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_mpool.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_mpool.mak" CFG="ex_mpool - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_mpool - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_mpool - Win32 Release" -# Name "ex_mpool - Win32 Debug" -# Name "ex_mpool - Win32 Release Static" -# Name "ex_mpool - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_mpool.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_repquote.dsp b/db/build_win64/ex_repquote.dsp deleted file mode 100644 index 699e72baa..000000000 --- a/db/build_win64/ex_repquote.dsp +++ /dev/null @@ -1,164 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_repquote" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_repquote - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_repquote.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_repquote.mak" CFG="ex_repquote - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_repquote - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_repquote - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_repquote - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib ws2_32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_repquote - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_repquote - Win32 Release" -# Name "ex_repquote - Win32 Debug" -# Name "ex_repquote - Win32 Release Static" -# Name "ex_repquote - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_client.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_main.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_master.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_net.c -# End Source File -# Begin Source File - -SOURCE=..\examples_c\ex_repquote\ex_rq_util.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_repquote.src b/db/build_win64/ex_repquote.src deleted file mode 100644 index da08375ec..000000000 --- a/db/build_win64/ex_repquote.src +++ /dev/null @@ -1,145 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib ws2_32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib ws2_32.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/ex_tpcb.dsp b/db/build_win64/ex_tpcb.dsp deleted file mode 100644 index 15c92708f..000000000 --- a/db/build_win64/ex_tpcb.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="ex_tpcb" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=ex_tpcb - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "ex_tpcb.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "ex_tpcb.mak" CFG="ex_tpcb - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "ex_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "ex_tpcb - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "ex_tpcb - Win32 Release" -# Name "ex_tpcb - Win32 Debug" -# Name "ex_tpcb - Win32 Release Static" -# Name "ex_tpcb - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_c\ex_tpcb.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_access.dsp b/db/build_win64/excxx_access.dsp deleted file mode 100644 index 53aa6acf4..000000000 --- a/db/build_win64/excxx_access.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_access" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_access - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_access.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_access.mak" CFG="excxx_access - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_access - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_access - Win32 Release" -# Name "excxx_access - Win32 Debug" -# Name "excxx_access - Win32 Release Static" -# Name "excxx_access - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\AccessExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_btrec.dsp b/db/build_win64/excxx_btrec.dsp deleted file mode 100644 index 852a61f25..000000000 --- a/db/build_win64/excxx_btrec.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_btrec" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_btrec - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_btrec.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_btrec.mak" CFG="excxx_btrec - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_btrec - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_btrec - Win32 Release" -# Name "excxx_btrec - Win32 Debug" -# Name "excxx_btrec - Win32 Release Static" -# Name "excxx_btrec - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\BtRecExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_env.dsp b/db/build_win64/excxx_env.dsp deleted file mode 100644 index 44ee9a2fa..000000000 --- a/db/build_win64/excxx_env.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_env" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_env - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_env.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_env.mak" CFG="excxx_env - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_env - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_env - Win32 Release" -# Name "excxx_env - Win32 Debug" -# Name "excxx_env - Win32 Release Static" -# Name "excxx_env - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\EnvExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_lock.dsp b/db/build_win64/excxx_lock.dsp deleted file mode 100644 index af0327793..000000000 --- a/db/build_win64/excxx_lock.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_lock" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_lock - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_lock.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_lock.mak" CFG="excxx_lock - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_lock - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_lock - Win32 Release" -# Name "excxx_lock - Win32 Debug" -# Name "excxx_lock - Win32 Release Static" -# Name "excxx_lock - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\LockExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_mpool.dsp b/db/build_win64/excxx_mpool.dsp deleted file mode 100644 index 22af8b36b..000000000 --- a/db/build_win64/excxx_mpool.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_mpool" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_mpool - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_mpool.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_mpool.mak" CFG="excxx_mpool - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_mpool - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_mpool - Win32 Release" -# Name "excxx_mpool - Win32 Debug" -# Name "excxx_mpool - Win32 Release Static" -# Name "excxx_mpool - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\MpoolExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/excxx_tpcb.dsp b/db/build_win64/excxx_tpcb.dsp deleted file mode 100644 index fd513fd9b..000000000 --- a/db/build_win64/excxx_tpcb.dsp +++ /dev/null @@ -1,148 +0,0 @@ -# Microsoft Developer Studio Project File - Name="excxx_tpcb" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=excxx_tpcb - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "excxx_tpcb.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "excxx_tpcb.mak" CFG="excxx_tpcb - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "excxx_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Release Static" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Debug Static" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "excxx_tpcb - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release/libdb43.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb43d.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Release_static/libdb43.lib /nologo /subsystem:console /machine:IA64 -# ADD LINK32 Release_static/libdb43s.lib /nologo /subsystem:console /machine:IA64 - -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 Debug_static/libdb43d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no -# ADD LINK32 Debug_static/libdb43sd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:console /debug /machine:IA64 /fixed:no - -!ENDIF - -# Begin Target - -# Name "excxx_tpcb - Win32 Release" -# Name "excxx_tpcb - Win32 Debug" -# Name "excxx_tpcb - Win32 Release Static" -# Name "excxx_tpcb - Win32 Debug Static" -# Begin Source File - -SOURCE=..\examples_cxx\TpcbExample.cpp -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_win64/java_dsp.src b/db/build_win64/java_dsp.src deleted file mode 100644 index 36d5c5ba4..000000000 --- a/db/build_win64/java_dsp.src +++ /dev/null @@ -1,129 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Release\libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -O -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -O -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no -# Begin Custom Build - Compiling java files using javac -ProjDir=. -InputPath=.\Debug\libdb_java@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll -SOURCE="$(InputPath)" - -"force_compilation.txt" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" - echo compiling Berkeley DB classes - mkdir "$(OUTDIR)\classes" - javac -g -d "$(OUTDIR)\classes" -classpath "$(OUTDIR)/classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java - echo compiling examples - mkdir "$(OUTDIR)\classes.ex" - javac -g -d "$(OUTDIR)\classes.ex" -classpath "$(OUTDIR)\classes;$(OUTDIR)\classes.ex" ..\examples_java\src\com\sleepycat\examples\db\*.java ..\examples_java\src\com\sleepycat\examples\db\GettingStarted\*.java ..\examples_java\src\com\sleepycat\examples\collections\access\*.java ..\examples_java\src\com\sleepycat\examples\collections\hello\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\basic\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\entity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\tuple\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\sentity\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\marshal\*.java ..\examples_java\src\com\sleepycat\examples\collections\ship\factory\*.java - echo creating jar files - jar cf "$(OUTDIR)\db.jar" -C "$(OUTDIR)\classes" . - jar cf "$(OUTDIR)\dbexamples.jar" -C "$(OUTDIR)\classes.ex" . - echo Java build finished - -# End Custom Build - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/libdbrc.src b/db/build_win64/libdbrc.src deleted file mode 100644 index 4c644ea9f..000000000 --- a/db/build_win64/libdbrc.src +++ /dev/null @@ -1,33 +0,0 @@ -1 VERSIONINFO - FILEVERSION %MAJOR%,0,%MINOR%,%PATCH% - PRODUCTVERSION %MAJOR%,0,%MINOR%,%PATCH% - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS 0x4L - FILETYPE 0x2L - FILESUBTYPE 0x0L - -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "CompanyName", "Sleepycat Software\0" - VALUE "FileDescription", "Berkeley DB 3.0 DLL\0" - VALUE "FileVersion", "%MAJOR%.%MINOR%.%PATCH%\0" - VALUE "InternalName", "libdb.dll\0" - VALUE "LegalCopyright", "Copyright © Sleepycat Software Inc. 1997-2004\0" - VALUE "OriginalFilename", "libdb.dll\0" - VALUE "ProductName", "Sleepycat Software libdb\0" - VALUE "ProductVersion", "%MAJOR%.%MINOR%.%PATCH%\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END diff --git a/db/build_win64/small_dsp.src b/db/build_win64/small_dsp.src deleted file mode 100644 index 1b42e8c71..000000000 --- a/db/build_win64/small_dsp.src +++ /dev/null @@ -1,85 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_small" -# PROP BASE Intermediate_Dir "Release_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_small" -# PROP Intermediate_Dir "Release_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -# ADD LIB32 /nologo /out:"Release_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_small" -# PROP BASE Intermediate_Dir "Debug_small" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_small" -# PROP Intermediate_Dir "Debug_small" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "HAVE_SMALLBUILD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" -# ADD LIB32 /nologo /out:"Debug_small/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/srcfile_dsp.src b/db/build_win64/srcfile_dsp.src deleted file mode 100644 index 408a55e2a..000000000 --- a/db/build_win64/srcfile_dsp.src +++ /dev/null @@ -1,4 +0,0 @@ -# Begin Source File - -SOURCE=@srcdir@\@srcfile@ -# End Source File diff --git a/db/build_win64/static_dsp.src b/db/build_win64/static_dsp.src deleted file mode 100644 index a2746856c..000000000 --- a/db/build_win64/static_dsp.src +++ /dev/null @@ -1,85 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=@project_name@ - Win32 Debug Static -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug Static" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release Static" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 Debug Static" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release Static" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_static" -# PROP BASE Intermediate_Dir "Release_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_static" -# PROP Intermediate_Dir "Release_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MT /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -# ADD LIB32 /nologo /out:"Release_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug Static" - -# PROP BASE Use_MFC 1 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_static" -# PROP BASE Intermediate_Dir "Debug_static" -# PROP BASE Target_Dir "" -# PROP Use_MFC 1 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_static" -# PROP Intermediate_Dir "Debug_static" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX"config.h" /FD /c -# ADD CPP /nologo /MTd /W3 /GX /Z7 /Od /I "." /I ".." /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX"config.h" /FD /c -# ADD BASE RSC /l 0xc09 -# ADD RSC /l 0xc09 -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" -# ADD LIB32 /nologo /out:"Debug_static/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release Static" -# Name "@project_name@ - Win32 Debug Static" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/tcl_dsp.src b/db/build_win64/tcl_dsp.src deleted file mode 100644 index 2d25d7407..000000000 --- a/db/build_win64/tcl_dsp.src +++ /dev/null @@ -1,93 +0,0 @@ -# Microsoft Developer Studio Project File - Name="@project_name@" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=@project_name@ - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "@project_name@ - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /Ob2 /I "." /I ".." /D "DB_TCL_SUPPORT" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /YX /FD /c -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /machine:IA64 -# ADD LINK32 Release/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib tcl84.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release/libdb_tcl@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" - -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 2 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DB_TCL_SUPPORT" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_CREATE_DLL" /D "_WINDLL" /D "_AFXDLL" /YX"config.h" /FD /c -# SUBTRACT CPP /Fr -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /nologo /subsystem:windows /dll /debug /machine:IA64 /pdbtype:sept -# ADD LINK32 Debug/libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib tcl84g.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug/libdb_tcl@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no - -!ENDIF - -# Begin Target - -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -@SOURCE_FILES@ -# End Target -# End Project diff --git a/db/build_win64/win_db.h b/db/build_win64/win_db.h deleted file mode 100644 index d623610f4..000000000 --- a/db/build_win64/win_db.h +++ /dev/null @@ -1,94 +0,0 @@ -/*- - * $Id: win_db.in,v 11.4 2004/10/07 13:59:24 carol Exp $ - * - * The following provides the information necessary to build Berkeley - * DB on native Windows, and other Windows environments such as MinGW. - */ - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * To build Tcl interface libraries, the include path must be configured to - * use the directory containing , usually the include directory in - * the Tcl distribution. - */ -#ifdef DB_TCL_SUPPORT -#include -#endif - -#define WIN32_LEAN_AND_MEAN -#include - -/* - * All of the necessary includes have been included, ignore the #includes - * in the Berkeley DB source files. - */ -#define NO_SYSTEM_INCLUDES - -/* - * Win32 has getcwd, snprintf and vsnprintf, but under different names. - */ -#define getcwd(buf, size) _getcwd(buf, size) -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -/* - * Win32 does not define getopt and friends in any header file, so we must. - */ -#if defined(__cplusplus) -extern "C" { -#endif -extern int optind; -extern char *optarg; -extern int getopt(int, char * const *, const char *); -#if defined(__cplusplus) -} -#endif - -#ifdef _UNICODE -#define TO_TSTRING(dbenv, s, ts, ret) do { \ - int __len = strlen(s) + 1; \ - ts = NULL; \ - if ((ret = __os_malloc((dbenv), \ - __len * sizeof (_TCHAR), &(ts))) == 0 && \ - MultiByteToWideChar(CP_UTF8, 0, \ - (s), -1, (ts), __len) == 0) \ - ret = __os_get_errno(); \ - } while (0) - -#define FROM_TSTRING(dbenv, ts, s, ret) { \ - int __len = WideCharToMultiByte(CP_UTF8, 0, ts, -1, \ - NULL, 0, NULL, NULL); \ - s = NULL; \ - if ((ret = __os_malloc((dbenv), __len, &(s))) == 0 && \ - WideCharToMultiByte(CP_UTF8, 0, \ - (ts), -1, (s), __len, NULL, NULL) == 0) \ - ret = __os_get_errno(); \ - } while (0) - -#define FREE_STRING(dbenv, s) do { \ - if ((s) != NULL) { \ - __os_free((dbenv), (s)); \ - (s) = NULL; \ - } \ - } while (0) - -#else -#define TO_TSTRING(dbenv, s, ts, ret) (ret) = 0, (ts) = (_TCHAR *)(s) -#define FROM_TSTRING(dbenv, ts, s, ret) (ret) = 0, (s) = (char *)(ts) -#define FREE_STRING(dbenv, ts) -#endif diff --git a/db/build_wince/Berkeley_DB.sln b/db/build_wince/Berkeley_DB.sln new file mode 100644 index 000000000..30ad4af7f --- /dev/null +++ b/db/build_wince/Berkeley_DB.sln @@ -0,0 +1,61 @@ + +Microsoft Visual Studio Solution File, Format Version 9.00 +# Visual Studio 2005 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "db_small", "db_small.vcproj", "{6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "db_static", "db_static.vcproj", "{4AB4958F-8DD0-49B5-8C02-014B5637C59A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wce_tpcb", "wce_tpcb.vcproj", "{F2CE670A-ABAE-414A-9A17-8079AB58613F}" + ProjectSection(ProjectDependencies) = postProject + {4AB4958F-8DD0-49B5-8C02-014B5637C59A} = {4AB4958F-8DD0-49B5-8C02-014B5637C59A} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Pocket PC 2003 (ARMV4) = Debug|Pocket PC 2003 (ARMV4) + Debug|Smartphone 2003 (ARMV4) = Debug|Smartphone 2003 (ARMV4) + Release|Pocket PC 2003 (ARMV4) = Release|Pocket PC 2003 (ARMV4) + Release|Smartphone 2003 (ARMV4) = Release|Smartphone 2003 (ARMV4) + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Pocket PC 2003 (ARMV4).ActiveCfg = Debug|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Pocket PC 2003 (ARMV4).Build.0 = Debug|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Pocket PC 2003 (ARMV4).Deploy.0 = Debug|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Smartphone 2003 (ARMV4).ActiveCfg = Debug|Smartphone 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Smartphone 2003 (ARMV4).Build.0 = Debug|Smartphone 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Debug|Smartphone 2003 (ARMV4).Deploy.0 = Debug|Smartphone 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Pocket PC 2003 (ARMV4).ActiveCfg = Release|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Pocket PC 2003 (ARMV4).Build.0 = Release|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Pocket PC 2003 (ARMV4).Deploy.0 = Release|Pocket PC 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Smartphone 2003 (ARMV4).ActiveCfg = Release|Smartphone 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Smartphone 2003 (ARMV4).Build.0 = Release|Smartphone 2003 (ARMV4) + {6A2849DA-8F7C-4B50-BDAE-AE7752EF8213}.Release|Smartphone 2003 (ARMV4).Deploy.0 = Release|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Pocket PC 2003 (ARMV4).ActiveCfg = Debug|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Pocket PC 2003 (ARMV4).Build.0 = Debug|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Pocket PC 2003 (ARMV4).Deploy.0 = Debug|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Smartphone 2003 (ARMV4).ActiveCfg = Debug|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Smartphone 2003 (ARMV4).Build.0 = Debug|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Debug|Smartphone 2003 (ARMV4).Deploy.0 = Debug|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Pocket PC 2003 (ARMV4).ActiveCfg = Release|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Pocket PC 2003 (ARMV4).Build.0 = Release|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Pocket PC 2003 (ARMV4).Deploy.0 = Release|Pocket PC 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Smartphone 2003 (ARMV4).ActiveCfg = Release|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Smartphone 2003 (ARMV4).Build.0 = Release|Smartphone 2003 (ARMV4) + {4AB4958F-8DD0-49B5-8C02-014B5637C59A}.Release|Smartphone 2003 (ARMV4).Deploy.0 = Release|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Pocket PC 2003 (ARMV4).ActiveCfg = Debug|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Pocket PC 2003 (ARMV4).Build.0 = Debug|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Pocket PC 2003 (ARMV4).Deploy.0 = Debug|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Smartphone 2003 (ARMV4).ActiveCfg = Debug|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Smartphone 2003 (ARMV4).Build.0 = Debug|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Debug|Smartphone 2003 (ARMV4).Deploy.0 = Debug|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Pocket PC 2003 (ARMV4).ActiveCfg = Release|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Pocket PC 2003 (ARMV4).Build.0 = Release|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Pocket PC 2003 (ARMV4).Deploy.0 = Release|Pocket PC 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Smartphone 2003 (ARMV4).ActiveCfg = Release|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Smartphone 2003 (ARMV4).Build.0 = Release|Smartphone 2003 (ARMV4) + {F2CE670A-ABAE-414A-9A17-8079AB58613F}.Release|Smartphone 2003 (ARMV4).Deploy.0 = Release|Smartphone 2003 (ARMV4) + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/db/build_wince/Berkeley_DB.vcw b/db/build_wince/Berkeley_DB.vcw new file mode 100644 index 000000000..8732cc0b6 --- /dev/null +++ b/db/build_wince/Berkeley_DB.vcw @@ -0,0 +1,56 @@ +Microsoft eMbedded Visual Tools Workspace File, Format Version 4.00 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! + +############################################################################### + +Project: "db_small"=.\db_small.vcp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "db_static"=.\db_static.vcp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "wce_tpcb"=.\wce_tpcb.vcp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ + Begin Project Dependency + Project_Dep_Name db_static + End Project Dependency +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + diff --git a/db/build_wince/app_vcp.src b/db/build_wince/app_vcp.src new file mode 100644 index 000000000..c0fd8369d --- /dev/null +++ b/db/build_wince/app_vcp.src @@ -0,0 +1,181 @@ +# Microsoft eMbedded Visual Tools Project File - Name="@project_name@" - Package Owner=<4> +# Microsoft eMbedded Visual Tools Generated Build File, Format Version 6.02 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (WCE ARMV4) Application" 0xa301 +# TARGTYPE "Win32 (WCE emulator) Application" 0xa601 + +CFG=@project_name@ - Win32 (WCE emulator) Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "@project_name@.vcn". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "@project_name@.vcn" CFG="@project_name@ - Win32 (WCE emulator) Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "@project_name@ - Win32 (WCE emulator) Release" (based on "Win32 (WCE emulator) Application") +!MESSAGE "@project_name@ - Win32 (WCE emulator) Debug" (based on "Win32 (WCE emulator) Application") +!MESSAGE "@project_name@ - Win32 (WCE ARMV4) Release" (based on "Win32 (WCE ARMV4) Application") +!MESSAGE "@project_name@ - Win32 (WCE ARMV4) Debug" (based on "Win32 (WCE ARMV4) Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +# PROP ATL_Project 2 + +!IF "$(CFG)" == "@project_name@ - Win32 (WCE emulator) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_EMU" +# PROP BASE Intermediate_Dir "@lib_rel_dest@_EMU/@project_name@" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_EMU" +# PROP Intermediate_Dir "@lib_rel_dest@_EMU/@project_name@" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "NDEBUG" /d "$(CePlatform)" /d "_X86_" /d "x86" /d "_i386_" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "NDEBUG" /d "$(CePlatform)" /d "_X86_" /d "x86" /d "_i386_" /r +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /Gs8192 @extra_cppflags@ /GF /O2 /c +# ADD CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /I "." /I ".." /D "_i386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "__NO_SYSTEM_INCLUDES" /Gs8192 @extra_cppflags@ /GF /O2 /c +MTL=midl.exe +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"@lib_rel_dest@_EMU" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"@lib_rel_dest@_EMU" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE emulator) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_EMU" +# PROP BASE Intermediate_Dir "@lib_debug_dest@_EMU\@project_name@" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_EMU" +# PROP Intermediate_Dir "@lib_debug_dest@_EMU\@project_name@" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d "$(CePlatform)" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "DEBUG" /d "_X86_" /d "x86" /d "_i386_" /r +# ADD RSC /l 0x409 /d "$(CePlatform)" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "DEBUG" /d "_X86_" /d "x86" /d "_i386_" /r +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D "_i386_" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /Gs8192 @extra_cppflags@ /GF /c +# ADD CPP /nologo /W3 /Zi /Od /I "." /I ".." /D "DEBUG" /D "_i386_" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "__NO_SYSTEM_INCLUDES" /Gs8192 @extra_cppflags@ /GF /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"@lib_debug_dest@_EMU" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /out:"Debug_EMU/@project_name@.exe" /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"@lib_debug_dest@_EMU" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE ARMV4) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_ARMV4" +# PROP BASE Intermediate_Dir "Release_ARMV4/@project_name@" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_ARMV4" +# PROP Intermediate_Dir "Release_ARMV4/@project_name@" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "NDEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "NDEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "NDEBUG" /O2 /M$(CECrtMT) @extra_cppflags@ /c +# ADD CPP /nologo /W3 /I "." /I ".." /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "NDEBUG" /O2 /M$(CECrtMT) @extra_cppflags@ /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"@lib_rel_dest@_ARMV4" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"@lib_rel_dest@_ARMV4" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE ARMV4) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_ARMV4" +# PROP BASE Intermediate_Dir "Debug_ARMV4/@project_name@" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_ARMV4" +# PROP Intermediate_Dir "Debug_ARMV4/@project_name@" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "DEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "DEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "UNICODE" /D "_UNICODE" /M$(CECrtMTDebug) @extra_cppflags@ /c +# ADD CPP /nologo /W3 /Zi /Od /I "." /I ".." /D "DEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "UNICODE" /D "_UNICODE" /M$(CECrtMTDebug) @extra_cppflags@ /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"@lib_debug_dest@_ARMV4" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"@lib_debug_dest@_ARMV4" + +!ENDIF + +# Begin Target + +# Name "@project_name@ - Win32 (WCE emulator) Release" +# Name "@project_name@ - Win32 (WCE emulator) Debug" +# Name "@project_name@ - Win32 (WCE ARMV4) Release" +# Name "@project_name@ - Win32 (WCE ARMV4) Debug" + +# Begin Group "Files" + +@SOURCE_FILES@ + +# End Group + +# End Target +# End Project diff --git a/db/build_wince/app_vcproj.src b/db/build_wince/app_vcproj.src new file mode 100644 index 000000000..550a8b74c --- /dev/null +++ b/db/build_wince/app_vcproj.src @@ -0,0 +1,433 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +@SOURCE_FILES@ + + + + + diff --git a/db/build_wince/clib_port.h b/db/build_wince/clib_port.h new file mode 100644 index 000000000..54ad58aa3 --- /dev/null +++ b/db/build_wince/clib_port.h @@ -0,0 +1,205 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +#define INT64_FMT "%I64d" +#define UINT64_FMT "%I64u" +#endif /* HAVE_64BIT_TYPES */ + +/* + * Exit success/failure macros. + */ +#ifndef HAVE_EXIT_SUCCESS +#define EXIT_FAILURE 1 +#define EXIT_SUCCESS 0 +#endif + +/* + * Don't step on the namespace. Other libraries may have their own + * implementations of these functions, we don't want to use their + * implementations or force them to use ours based on the load order. + */ +#ifndef HAVE_ATOI +#define atoi __db_Catoi +#endif +#ifndef HAVE_ATOL +#define atol __db_Catol +#endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif +#ifndef HAVE_GETADDRINFO +#define freeaddrinfo(a) __db_Cfreeaddrinfo(a) +#define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) +#endif +#ifndef HAVE_GETCWD +#define getcwd __db_Cgetcwd +#endif +#ifndef HAVE_GETOPT +#define getopt __db_Cgetopt +#define optarg __db_Coptarg +#define opterr __db_Copterr +#define optind __db_Coptind +#define optopt __db_Coptopt +#define optreset __db_Coptreset +#endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif +#ifndef HAVE_ISSPACE +#define isspace __db_Cisspace +#endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif +#ifndef HAVE_MEMCMP +#define memcmp __db_Cmemcmp +#endif +#ifndef HAVE_MEMCPY +#define memcpy __db_Cmemcpy +#endif +#ifndef HAVE_MEMMOVE +#define memmove __db_Cmemmove +#endif +#ifndef HAVE_PRINTF +#define printf __db_Cprintf +#define fprintf __db_Cfprintf +#endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif +#ifndef HAVE_RAISE +#define raise __db_Craise +#endif +#ifndef HAVE_RAND +#define rand __db_Crand +#define srand __db_Csrand +#endif +#ifndef HAVE_SNPRINTF +#define snprintf __db_Csnprintf +#endif +#ifndef HAVE_STRCASECMP +#define strcasecmp __db_Cstrcasecmp +#define strncasecmp __db_Cstrncasecmp +#endif +#ifndef HAVE_STRCAT +#define strcat __db_Cstrcat +#endif +#ifndef HAVE_STRCHR +#define strchr __db_Cstrchr +#endif +#ifndef HAVE_STRDUP +#define strdup __db_Cstrdup +#endif +#ifndef HAVE_STRERROR +#define strerror __db_Cstrerror +#endif +#ifndef HAVE_STRNCAT +#define strncat __db_Cstrncat +#endif +#ifndef HAVE_STRNCMP +#define strncmp __db_Cstrncmp +#endif +#ifndef HAVE_STRRCHR +#define strrchr __db_Cstrrchr +#endif +#ifndef HAVE_STRSEP +#define strsep __db_Cstrsep +#endif +#ifndef HAVE_STRTOL +#define strtol __db_Cstrtol +#endif +#ifndef HAVE_STRTOUL +#define strtoul __db_Cstrtoul +#endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif +#ifndef HAVE_VSNPRINTF +#define vsnprintf __db_Cvsnprintf +#endif diff --git a/db/build_wince/db.h b/db/build_wince/db.h new file mode 100644 index 000000000..f9c4d9e20 --- /dev/null +++ b/db/build_wince/db.h @@ -0,0 +1,2698 @@ +/* DO NOT EDIT: automatically built by dist/s_windows. */ +/* + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db.in,v 12.158 2007/06/28 14:23:35 mjc Exp $ + * + * db.h include file layout: + * General. + * Database Environment. + * Locking subsystem. + * Logging subsystem. + * Shared buffer cache (mpool) subsystem. + * Transaction subsystem. + * Access methods. + * Access method cursors. + * Dbm/Ndbm, Hsearch historic interfaces. + */ + +#ifndef _DB_H_ +#define _DB_H_ + +#ifndef __NO_SYSTEM_INCLUDES +#include +#include +#include +#endif + +/* + * Turn off inappropriate compiler warnings + */ +#ifdef _MSC_VER +/* + * This warning is explicitly disabled in Visual C++ by default. + * It is necessary to explicitly enable the /Wall flag to generate this + * warning. + * Since this is a shared include file it should compile without warnings + * at the highest warning level, so third party applications can use + * higher warning levels cleanly. + * + * 4820: 'bytes' bytes padding added after member 'member' + * The type and order of elements caused the compiler to + * add padding to the end of a struct. + */ +#pragma warning(push) +#pragma warning(disable: 4820) +#endif /* _MSC_VER */ +#if defined(__cplusplus) +extern "C" { +#endif + + +#undef __P +#define __P(protos) protos + +/* + * Berkeley DB version information. + */ +#define DB_VERSION_MAJOR 4 +#define DB_VERSION_MINOR 6 +#define DB_VERSION_PATCH 18 +#define DB_VERSION_STRING "Berkeley DB 4.6.18: (July 17, 2007)" + +/* + * !!! + * Berkeley DB uses specifically sized types. If they're not provided by + * the system, typedef them here. + * + * We protect them against multiple inclusion using __BIT_TYPES_DEFINED__, + * as does BIND and Kerberos, since we don't know for sure what #include + * files the user is using. + * + * !!! + * We also provide the standard u_int, u_long etc., if they're not provided + * by the system. + */ +#ifndef __BIT_TYPES_DEFINED__ +#define __BIT_TYPES_DEFINED__ +typedef unsigned char u_int8_t; +typedef short int16_t; +typedef unsigned short u_int16_t; +typedef int int32_t; +typedef unsigned int u_int32_t; +typedef __int64 int64_t; +typedef unsigned __int64 u_int64_t; +#endif + +#ifndef _WINSOCKAPI_ +typedef unsigned char u_char; +typedef unsigned int u_int; +typedef unsigned long u_long; +#endif +typedef unsigned short u_short; + +/* + * Missing ANSI types. + * + * uintmax_t -- + * Largest unsigned type, used to align structures in memory. We don't store + * floating point types in structures, so integral types should be sufficient + * (and we don't have to worry about systems that store floats in other than + * power-of-2 numbers of bytes). Additionally this fixes compilers that rewrite + * structure assignments and ANSI C memcpy calls to be in-line instructions + * that happen to require alignment. + * + * uintptr_t -- + * Unsigned type that's the same size as a pointer. There are places where + * DB modifies pointers by discarding the bottom bits to guarantee alignment. + * We can't use uintmax_t, it may be larger than the pointer, and compilers + * get upset about that. So far we haven't run on any machine where there's + * no unsigned type the same size as a pointer -- here's hoping. + */ +typedef u_int64_t uintmax_t; +#ifdef _WIN64 +typedef u_int64_t uintptr_t; +#else +typedef u_int32_t uintptr_t; +#endif + +/* + * Windows defines off_t to long (i.e., 32 bits). We need to pass 64-bit + * file offsets, so we declare our own. + */ +#define off_t __db_off_t +typedef int64_t off_t; +typedef int pid_t; +#ifdef _WIN64 +typedef int64_t ssize_t; +#else +typedef int32_t ssize_t; +#endif + +/* + * Sequences are only available on machines with 64-bit integral types. + */ +typedef int64_t db_seq_t; + +/* Thread and process identification. */ +typedef u_int32_t db_threadid_t; + +/* Basic types that are exported or quasi-exported. */ +typedef u_int32_t db_pgno_t; /* Page number type. */ +typedef u_int16_t db_indx_t; /* Page offset type. */ +#define DB_MAX_PAGES 0xffffffff /* >= # of pages in a file */ + +typedef u_int32_t db_recno_t; /* Record number type. */ +#define DB_MAX_RECORDS 0xffffffff /* >= # of records in a tree */ + +typedef u_int32_t db_timeout_t; /* Type of a timeout. */ + +/* + * Region offsets are the difference between a pointer in a region and the + * region's base address. With private environments, both addresses are the + * result of calling malloc, and we can't assume anything about what malloc + * will return, so region offsets have to be able to hold differences between + * arbitrary pointers. + */ +typedef uintptr_t roff_t; + +/* + * Forward structure declarations, so we can declare pointers and + * applications can get type checking. + */ +struct __db; typedef struct __db DB; +struct __db_bt_stat; typedef struct __db_bt_stat DB_BTREE_STAT; +struct __db_cipher; typedef struct __db_cipher DB_CIPHER; +struct __db_compact; typedef struct __db_compact DB_COMPACT; +struct __db_dbt; typedef struct __db_dbt DBT; +struct __db_env; typedef struct __db_env DB_ENV; +struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; +struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; +struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; +struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; +struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; +struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; +struct __db_log; typedef struct __db_log DB_LOG; +struct __db_log_cursor; typedef struct __db_log_cursor DB_LOGC; +struct __db_log_stat; typedef struct __db_log_stat DB_LOG_STAT; +struct __db_lsn; typedef struct __db_lsn DB_LSN; +struct __db_mpool; typedef struct __db_mpool DB_MPOOL; +struct __db_mpool_fstat;typedef struct __db_mpool_fstat DB_MPOOL_FSTAT; +struct __db_mpool_stat; typedef struct __db_mpool_stat DB_MPOOL_STAT; +struct __db_mpoolfile; typedef struct __db_mpoolfile DB_MPOOLFILE; +struct __db_mutex_stat; typedef struct __db_mutex_stat DB_MUTEX_STAT; +struct __db_mutex_t; typedef struct __db_mutex_t DB_MUTEX; +struct __db_mutexmgr; typedef struct __db_mutexmgr DB_MUTEXMGR; +struct __db_preplist; typedef struct __db_preplist DB_PREPLIST; +struct __db_qam_stat; typedef struct __db_qam_stat DB_QUEUE_STAT; +struct __db_rep; typedef struct __db_rep DB_REP; +struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; +struct __db_repmgr_site; \ + typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; +struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; +struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; +struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; +struct __db_txn; typedef struct __db_txn DB_TXN; +struct __db_txn_active; typedef struct __db_txn_active DB_TXN_ACTIVE; +struct __db_txn_stat; typedef struct __db_txn_stat DB_TXN_STAT; +struct __db_txnmgr; typedef struct __db_txnmgr DB_TXNMGR; +struct __dbc; typedef struct __dbc DBC; +struct __dbc_internal; typedef struct __dbc_internal DBC_INTERNAL; +struct __fh_t; typedef struct __fh_t DB_FH; +struct __fname; typedef struct __fname FNAME; +struct __key_range; typedef struct __key_range DB_KEY_RANGE; +struct __mpoolfile; typedef struct __mpoolfile MPOOLFILE; + +/* Key/data structure -- a Data-Base Thang. */ +struct __db_dbt { + void *data; /* Key/data */ + u_int32_t size; /* key/data length */ + + u_int32_t ulen; /* RO: length of user buffer. */ + u_int32_t dlen; /* RO: get/put record length. */ + u_int32_t doff; /* RO: get/put record offset. */ + + void *app_data; + +#define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ + u_int32_t flags; +}; + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + */ +#define DB_CREATE 0x0000001 /* Create file as necessary. */ +#define DB_DURABLE_UNKNOWN 0x0000002 /* Durability on open (internal). */ +#define DB_FORCE 0x0000004 /* Force (anything). */ +#define DB_MULTIVERSION 0x0000008 /* Multiversion concurrency control. */ +#define DB_NOMMAP 0x0000010 /* Don't mmap underlying file. */ +#define DB_RDONLY 0x0000020 /* Read-only (O_RDONLY). */ +#define DB_RECOVER 0x0000040 /* Run normal recovery. */ +#define DB_THREAD 0x0000080 /* Applications are threaded. */ +#define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ +#define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ + +/* + * Common flags -- + * Interfaces which use any of these common flags should never have + * interface specific flags in this range. + * + * DB_AUTO_COMMIT: + * DB_ENV->set_flags, DB->open + * (Note: until the 4.3 release, legal to DB->associate, DB->del, + * DB->put, DB->remove, DB->rename and DB->truncate, and others.) + * DB_READ_COMMITTED: + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin + * DB_READ_UNCOMMITTED: + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, + * DB_ENV->txn_begin + * DB_TXN_SNAPSHOT: + * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor + * + * !!! + * The DB_READ_COMMITTED and DB_READ_UNCOMMITTED bit masks can't be changed + * without also changing the masks for the flags that can be OR'd into DB + * access method and cursor operation values. + */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ +#define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ + +#define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ +#define DB_DEGREE_2 0x04000000/* Historic name. */ + +#define DB_READ_UNCOMMITTED 0x08000000/* Degree 1 isolation. */ +#define DB_DIRTY_READ 0x08000000/* Historic name. */ + +#define DB_TXN_SNAPSHOT 0x10000000/* Snapshot isolation. */ + +/* + * Flags common to db_env_create and db_create. + */ +#define DB_CXX_NO_EXCEPTIONS 0x0000001 /* C++: return error values. */ + +/* + * Flags private to db_env_create. + * Shared flags up to 0x0000001 */ +#define DB_RPCCLIENT 0x0000002 /* An RPC client environment. */ + +/* + * Flags private to db_create. + * Shared flags up to 0x0000001 */ +#define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ + +/* + * Flags shared by DB_ENV->remove and DB_ENV->open. + * Shared flags up to 0x0002000 */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ + +#define DB_JOINENV 0x0 /* Compatibility. */ + +/* + * Flags private to DB->open. + * Shared flags up to 0x0002000 */ +#define DB_EXCL 0x0004000 /* Exclusive open (O_EXCL). */ +#define DB_FCNTL_LOCKING 0x0008000 /* UNDOC: fcntl(2) locking. */ +#define DB_NO_AUTO_COMMIT 0x0010000 /* Override env-wide AUTOCOMMIT. */ +#define DB_RDWRMASTER 0x0020000 /* UNDOC: allow subdb master open R/W */ +#define DB_WRITEOPEN 0x0040000 /* UNDOC: open with write lock. */ + +/* + * Flags private to DB->associate. + * Shared flags up to 0x0002000 */ +#define DB_IMMUTABLE_KEY 0x0004000 /* Secondary key is immutable. */ +/* Shared flags at 0x1000000 */ + +/* + * Flags private to DB_ENV->txn_begin. + * Shared flags up to 0x0002000 */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ + +/* + * Flags private to DB_ENV->set_encrypt. + */ +#define DB_ENCRYPT_AES 0x0000001 /* AES, assumes SHA1 checksum */ + +/* + * Flags private to DB_ENV->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CDB_ALLDB 0x00004000/* Set CDB locking per environment. */ +#define DB_DIRECT_DB 0x00008000/* Don't buffer databases in the OS. */ +#define DB_DIRECT_LOG 0x00010000/* Don't buffer log files in the OS. */ +#define DB_DSYNC_DB 0x00020000/* Set O_DSYNC on the databases. */ +#define DB_DSYNC_LOG 0x00040000/* Set O_DSYNC on the log. */ +#define DB_LOG_AUTOREMOVE 0x00080000/* Automatically remove log files. */ +#define DB_LOG_INMEMORY 0x00100000/* Store logs in buffers in memory. */ +#define DB_NOLOCKING 0x00200000/* Set locking/mutex behavior. */ +#define DB_NOPANIC 0x00400000/* Set panic state per DB_ENV. */ +#define DB_OVERWRITE 0x00800000/* Overwrite unlinked region files. */ +#define DB_PANIC_ENVIRONMENT 0x01000000/* Set panic state per environment. */ +/* Shared flags at 0x02000000 */ +/* Shared flags at 0x04000000 */ +/* Shared flags at 0x08000000 */ +/* Shared flags at 0x10000000 */ +#define DB_REGION_INIT 0x20000000/* Page-fault regions on open. */ +#define DB_TIME_NOTGRANTED 0x40000000/* Return NOTGRANTED on timeout. */ +#define DB_YIELDCPU 0x80000000/* Yield the CPU (a lot). */ + +/* + * Flags private to DB->set_feedback's callback. + */ +#define DB_UPGRADE 0x0000001 /* Upgrading. */ +#define DB_VERIFY 0x0000002 /* Verifying. */ + +/* + * Flags private to DB->compact. + * Shared flags up to 0x00002000 + */ +#define DB_FREELIST_ONLY 0x00004000 /* Just sort and truncate. */ +#define DB_FREE_SPACE 0x00008000 /* Free space . */ +#define DB_COMPACT_FLAGS \ + (DB_FREELIST_ONLY | DB_FREE_SPACE) + +/* + * Flags private to DB_MPOOLFILE->open. + * Shared flags up to 0x0002000 */ +#define DB_DIRECT 0x0004000 /* Don't buffer the file in the OS. */ +#define DB_EXTENT 0x0008000 /* internal: dealing with an extent. */ +#define DB_ODDFILESIZE 0x0010000 /* Truncate file to N * pgsize. */ + +/* + * Flags private to DB->set_flags. + * Shared flags up to 0x00002000 */ +#define DB_CHKSUM 0x00004000 /* Do checksumming */ +#define DB_DUP 0x00008000 /* Btree, Hash: duplicate keys. */ +#define DB_DUPSORT 0x00010000 /* Btree, Hash: duplicate keys. */ +#define DB_ENCRYPT 0x00020000 /* Btree, Hash: duplicate keys. */ +#define DB_INORDER 0x00040000 /* Queue: strict ordering on consume */ +#define DB_RECNUM 0x00080000 /* Btree: record numbers. */ +#define DB_RENUMBER 0x00100000 /* Recno: renumber on insert/delete. */ +#define DB_REVSPLITOFF 0x00200000 /* Btree: turn off reverse splits. */ +#define DB_SNAPSHOT 0x00400000 /* Recno: snapshot the input. */ + +/* + * Flags private to the DB_ENV->stat_print, DB->stat and DB->stat_print methods. + */ +#define DB_FAST_STAT 0x0000001 /* Don't traverse the database. */ +#define DB_STAT_ALL 0x0000002 /* Print: Everything. */ +#define DB_STAT_CLEAR 0x0000004 /* Clear stat after returning values. */ +#define DB_STAT_LOCK_CONF 0x0000008 /* Print: Lock conflict matrix. */ +#define DB_STAT_LOCK_LOCKERS 0x0000010 /* Print: Lockers. */ +#define DB_STAT_LOCK_OBJECTS 0x0000020 /* Print: Lock objects. */ +#define DB_STAT_LOCK_PARAMS 0x0000040 /* Print: Lock parameters. */ +#define DB_STAT_MEMP_HASH 0x0000080 /* Print: Mpool hash buckets. */ +#define DB_STAT_NOERROR 0x0000100 /* Internal: continue on error. */ +#define DB_STAT_SUBSYSTEM 0x0000200 /* Print: Subsystems too. */ + +/* + * Flags private to DB->join. + */ +#define DB_JOIN_NOSORT 0x0000001 /* Don't try to optimize join. */ + +/* + * Flags private to DB->verify. + */ +#define DB_AGGRESSIVE 0x0000001 /* Salvage whatever could be data.*/ +#define DB_NOORDERCHK 0x0000002 /* Skip sort order/hashing check. */ +#define DB_ORDERCHKONLY 0x0000004 /* Only perform the order check. */ +#define DB_PR_PAGE 0x0000008 /* Show page contents (-da). */ +#define DB_PR_RECOVERYTEST 0x0000010 /* Recovery test (-dr). */ +#define DB_PRINTABLE 0x0000020 /* Use printable format for salvage. */ +#define DB_SALVAGE 0x0000040 /* Salvage what looks like data. */ +#define DB_UNREF 0x0000080 /* Report unreferenced pages. */ +/* + * !!! + * These must not go over 0x8000, or they will collide with the flags + * used by __bam_vrfy_subtree. + */ + +/* + * Flags private to DB->rep_set_transport's send callback. + */ +#define DB_REP_ANYWHERE 0x0000001 /* Message can be serviced anywhere. */ +#define DB_REP_NOBUFFER 0x0000002 /* Do not buffer this message. */ +#define DB_REP_PERMANENT 0x0000004 /* Important--app. may want to flush. */ +#define DB_REP_REREQUEST 0x0000008 /* This msg already been requested. */ + +/******************************************************* + * Mutexes. + *******************************************************/ +typedef u_int32_t db_mutex_t; + +/* + * Flag arguments for DbEnv.mutex_alloc, DbEnv.is_alive and for the + * DB_MUTEX structure. + */ +#define DB_MUTEX_ALLOCATED 0x01 /* Mutex currently allocated. */ +#define DB_MUTEX_LOCKED 0x02 /* Mutex currently locked. */ +#define DB_MUTEX_LOGICAL_LOCK 0x04 /* Mutex backs a database lock. */ +#define DB_MUTEX_PROCESS_ONLY 0x08 /* Mutex private to a process. */ +#define DB_MUTEX_SELF_BLOCK 0x10 /* Must be able to block self. */ + +struct __db_mutex_stat { + /* The following fields are maintained in the region's copy. */ + u_int32_t st_mutex_align; /* Mutex alignment */ + u_int32_t st_mutex_tas_spins; /* Mutex test-and-set spins */ + u_int32_t st_mutex_cnt; /* Mutex count */ + u_int32_t st_mutex_free; /* Available mutexes */ + u_int32_t st_mutex_inuse; /* Mutexes in use */ + u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ + + /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* This is the length of the buffer passed to DB_ENV->thread_id_string() */ +#define DB_THREADID_STRLEN 128 + +/******************************************************* + * Locking. + *******************************************************/ +#define DB_LOCKVERSION 1 + +#define DB_FILE_ID_LEN 20 /* Unique file ID length. */ + +/* + * Deadlock detector modes; used in the DB_ENV structure to configure the + * locking subsystem. + */ +#define DB_LOCK_NORUN 0 +#define DB_LOCK_DEFAULT 1 /* Default policy. */ +#define DB_LOCK_EXPIRE 2 /* Only expire locks, no detection. */ +#define DB_LOCK_MAXLOCKS 3 /* Select locker with max locks. */ +#define DB_LOCK_MAXWRITE 4 /* Select locker with max writelocks. */ +#define DB_LOCK_MINLOCKS 5 /* Select locker with min locks. */ +#define DB_LOCK_MINWRITE 6 /* Select locker with min writelocks. */ +#define DB_LOCK_OLDEST 7 /* Select oldest locker. */ +#define DB_LOCK_RANDOM 8 /* Select random locker. */ +#define DB_LOCK_YOUNGEST 9 /* Select youngest locker. */ + +/* Flag values for lock_vec(), lock_get(). */ +#define DB_LOCK_ABORT 0x001 /* Internal: Lock during abort. */ +#define DB_LOCK_NOWAIT 0x002 /* Don't wait on unavailable lock. */ +#define DB_LOCK_RECORD 0x004 /* Internal: record lock. */ +#define DB_LOCK_SET_TIMEOUT 0x008 /* Internal: set lock timeout. */ +#define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ +#define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ + +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + +/* + * Simple R/W lock modes and for multi-granularity intention locking. + * + * !!! + * These values are NOT random, as they are used as an index into the lock + * conflicts arrays, i.e., DB_LOCK_IWRITE must be == 3, and DB_LOCK_IREAD + * must be == 4. + */ +typedef enum { + DB_LOCK_NG=0, /* Not granted. */ + DB_LOCK_READ=1, /* Shared/read. */ + DB_LOCK_WRITE=2, /* Exclusive/write. */ + DB_LOCK_WAIT=3, /* Wait for event */ + DB_LOCK_IWRITE=4, /* Intent exclusive/write. */ + DB_LOCK_IREAD=5, /* Intent to share/read. */ + DB_LOCK_IWR=6, /* Intent to read and write. */ + DB_LOCK_READ_UNCOMMITTED=7, /* Degree 1 isolation. */ + DB_LOCK_WWRITE=8 /* Was Written. */ +} db_lockmode_t; + +/* + * Request types. + */ +typedef enum { + DB_LOCK_DUMP=0, /* Display held locks. */ + DB_LOCK_GET=1, /* Get the lock. */ + DB_LOCK_GET_TIMEOUT=2, /* Get lock with a timeout. */ + DB_LOCK_INHERIT=3, /* Pass locks to parent. */ + DB_LOCK_PUT=4, /* Release the lock. */ + DB_LOCK_PUT_ALL=5, /* Release locker's locks. */ + DB_LOCK_PUT_OBJ=6, /* Release locker's locks on obj. */ + DB_LOCK_PUT_READ=7, /* Release locker's read locks. */ + DB_LOCK_TIMEOUT=8, /* Force a txn to timeout. */ + DB_LOCK_TRADE=9, /* Trade locker ids on a lock. */ + DB_LOCK_UPGRADE_WRITE=10 /* Upgrade writes for dirty reads. */ +} db_lockop_t; + +/* + * Status of a lock. + */ +typedef enum { + DB_LSTAT_ABORTED=1, /* Lock belongs to an aborted txn. */ + DB_LSTAT_EXPIRED=2, /* Lock has expired. */ + DB_LSTAT_FREE=3, /* Lock is unallocated. */ + DB_LSTAT_HELD=4, /* Lock is currently held. */ + DB_LSTAT_PENDING=5, /* Lock was waiting and has been + * promoted; waiting for the owner + * to run and upgrade it to held. */ + DB_LSTAT_WAITING=6 /* Lock is on the wait queue. */ +}db_status_t; + +/* Lock statistics structure. */ +struct __db_lock_stat { + u_int32_t st_id; /* Last allocated locker ID. */ + u_int32_t st_cur_maxid; /* Current maximum unused ID. */ + u_int32_t st_maxlocks; /* Maximum number of locks in table. */ + u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ + u_int32_t st_maxobjects; /* Maximum num of objects in table. */ + int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_nlocks; /* Current number of locks. */ + u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ + u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ + u_int32_t st_nobjects; /* Current number of objects. */ + u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_ndeadlocks; /* Number of lock deadlocks. */ + db_timeout_t st_locktimeout; /* Lock timeout. */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + db_timeout_t st_txntimeout; /* Transaction timeout. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ +}; + +/* + * DB_LOCK_ILOCK -- + * Internal DB access method lock. + */ +struct __db_ilock { + db_pgno_t pgno; /* Page being locked. */ + u_int8_t fileid[DB_FILE_ID_LEN];/* File id. */ +#define DB_HANDLE_LOCK 1 +#define DB_RECORD_LOCK 2 +#define DB_PAGE_LOCK 3 + u_int32_t type; /* Type of lock. */ +}; + +/* + * DB_LOCK -- + * The structure is allocated by the caller and filled in during a + * lock_get request (or a lock_vec/DB_LOCK_GET). + */ +struct __db_lock_u { + roff_t off; /* Offset of the lock in the region */ + u_int32_t ndx; /* Index of the object referenced by + * this lock; used for locking. */ + u_int32_t gen; /* Generation number of this lock. */ + db_lockmode_t mode; /* mode of this lock. */ +}; + +/* Lock request structure. */ +struct __db_lockreq { + db_lockop_t op; /* Operation. */ + db_lockmode_t mode; /* Requested mode. */ + db_timeout_t timeout; /* Time to expire lock. */ + DBT *obj; /* Object being locked. */ + DB_LOCK lock; /* Lock returned. */ +}; + +/******************************************************* + * Logging. + *******************************************************/ +#define DB_LOGVERSION 13 /* Current log version. */ +#define DB_LOGOLDVER 8 /* Oldest log version supported. */ +#define DB_LOGMAGIC 0x040988 + +/* Flag values for DB_ENV->log_archive(). */ +#define DB_ARCH_ABS 0x001 /* Absolute pathnames. */ +#define DB_ARCH_DATA 0x002 /* Data files. */ +#define DB_ARCH_LOG 0x004 /* Log files. */ +#define DB_ARCH_REMOVE 0x008 /* Remove log files. */ + +/* Flag values for DB_ENV->log_put(). */ +#define DB_FLUSH 0x001 /* Flush data to disk (public). */ +#define DB_LOG_CHKPNT 0x002 /* Flush supports a checkpoint */ +#define DB_LOG_COMMIT 0x004 /* Flush supports a commit */ +#define DB_LOG_NOCOPY 0x008 /* Don't copy data */ +#define DB_LOG_NOT_DURABLE 0x010 /* Do not log; keep in memory */ +#define DB_LOG_WRNOSYNC 0x020 /* Write, don't sync log_put */ + +/* + * A DB_LSN has two parts, a fileid which identifies a specific file, and an + * offset within that file. The fileid is an unsigned 4-byte quantity that + * uniquely identifies a file within the log directory -- currently a simple + * counter inside the log. The offset is also an unsigned 4-byte value. The + * log manager guarantees the offset is never more than 4 bytes by switching + * to a new log file before the maximum length imposed by an unsigned 4-byte + * offset is reached. + */ +struct __db_lsn { + u_int32_t file; /* File ID. */ + u_int32_t offset; /* File offset. */ +}; + +/* + * Application-specified log record types start at DB_user_BEGIN, and must not + * equal or exceed DB_debug_FLAG. + * + * DB_debug_FLAG is the high-bit of the u_int32_t that specifies a log record + * type. If the flag is set, it's a log record that was logged for debugging + * purposes only, even if it reflects a database change -- the change was part + * of a non-durable transaction. + */ +#define DB_user_BEGIN 10000 +#define DB_debug_FLAG 0x80000000 + +/* + * DB_LOGC -- + * Log cursor. + */ +struct __db_log_cursor { + DB_ENV *dbenv; /* Enclosing dbenv. */ + + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ + + DBT dbt; /* Return DBT. */ + DB_LSN p_lsn; /* Persist LSN. */ + u_int32_t p_version; /* Persist version. */ + + u_int8_t *bp; /* Allocated read buffer. */ + u_int32_t bp_size; /* Read buffer length in bytes. */ + u_int32_t bp_rlen; /* Read buffer valid data length. */ + DB_LSN bp_lsn; /* Read buffer first byte LSN. */ + + u_int32_t bp_maxrec; /* Max record length in the log file. */ + + /* DB_LOGC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_LOGC *, u_int32_t)); + int (*get) __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); + int (*version) __P((DB_LOGC *, u_int32_t *, u_int32_t)); + /* DB_LOGC PUBLIC HANDLE LIST END */ + +#define DB_LOG_DISK 0x01 /* Log record came from disk. */ +#define DB_LOG_LOCKED 0x02 /* Log region already locked */ +#define DB_LOG_SILENT_ERR 0x04 /* Turn-off error messages. */ + u_int32_t flags; +}; + +/* Log statistics structure. */ +struct __db_log_stat { + u_int32_t st_magic; /* Log file magic number. */ + u_int32_t st_version; /* Log file version number. */ + int st_mode; /* Log file permissions mode. */ + u_int32_t st_lg_bsize; /* Log buffer size. */ + u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_record; /* Records entered into the log. */ + u_int32_t st_w_bytes; /* Bytes to log. */ + u_int32_t st_w_mbytes; /* Megabytes to log. */ + u_int32_t st_wcount; /* Total I/O writes to the log. */ + u_int32_t st_wcount_fill; /* Overflow writes to the log. */ + u_int32_t st_rcount; /* Total I/O reads from the log. */ + u_int32_t st_scount; /* Total syncs to the log. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_cur_file; /* Current log file number. */ + u_int32_t st_cur_offset; /* Current log file offset. */ + u_int32_t st_disk_file; /* Known on disk log file number. */ + u_int32_t st_disk_offset; /* Known on disk log file offset. */ + u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ + u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* + * We need to record the first log record of a transaction. For user + * defined logging this macro returns the place to put that information, + * if it is need in rlsnp, otherwise it leaves it unchanged. We also + * need to track the last record of the transaction, this returns the + * place to put that info. + */ +#define DB_SET_TXN_LSNP(txn, blsnp, llsnp) \ + ((txn)->set_txn_lsnp(txn, blsnp, llsnp)) + +/******************************************************* + * Shared buffer cache (mpool). + *******************************************************/ +/* Flag values for DB_MPOOLFILE->get. */ +#define DB_MPOOL_CREATE 0x001 /* Create a page. */ +#define DB_MPOOL_DIRTY 0x002 /* Get page for an update. */ +#define DB_MPOOL_EDIT 0x004 /* Modify without copying. */ +#define DB_MPOOL_FREE 0x008 /* Free page if present. */ +#define DB_MPOOL_LAST 0x010 /* Return the last page. */ +#define DB_MPOOL_NEW 0x020 /* Create a new page. */ + +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ + +/* Flags values for DB_MPOOLFILE->set_flags. */ +#define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ +#define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ + +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ +typedef enum { + DB_PRIORITY_UNCHANGED=0, + DB_PRIORITY_VERY_LOW=1, + DB_PRIORITY_LOW=2, + DB_PRIORITY_DEFAULT=3, + DB_PRIORITY_HIGH=4, + DB_PRIORITY_VERY_HIGH=5 +} DB_CACHE_PRIORITY; + +/* Per-process DB_MPOOLFILE information. */ +struct __db_mpoolfile { + DB_FH *fhp; /* Underlying file handle. */ + + /* + * !!! + * The ref, pinref and q fields are protected by the region lock. + */ + u_int32_t ref; /* Reference count. */ + + u_int32_t pinref; /* Pinned block reference count. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_mpoolfile) q; + */ + struct { + struct __db_mpoolfile *tqe_next; + struct __db_mpoolfile **tqe_prev; + } q; /* Linked list of DB_MPOOLFILE's. */ + + /* + * !!! + * The rest of the fields (with the exception of the MP_FLUSH flag) + * are not thread-protected, even when they may be modified at any + * time by the application. The reason is the DB_MPOOLFILE handle + * is single-threaded from the viewpoint of the application, and so + * the only fields needing to be thread-protected are those accessed + * by checkpoint or sync threads when using DB_MPOOLFILE structures + * to flush buffers from the cache. + */ + DB_ENV *dbenv; /* Overlying DB_ENV. */ + MPOOLFILE *mfp; /* Underlying MPOOLFILE. */ + + u_int32_t clear_len; /* Cleared length on created pages. */ + u_int8_t /* Unique file ID. */ + fileid[DB_FILE_ID_LEN]; + int ftype; /* File type. */ + int32_t lsn_offset; /* LSN offset in page. */ + u_int32_t gbytes, bytes; /* Maximum file size. */ + DBT *pgcookie; /* Byte-string passed to pgin/pgout. */ + int32_t priority; /* Cache priority. */ + + void *addr; /* Address of mmap'd region. */ + size_t len; /* Length of mmap'd region. */ + + u_int32_t config_flags; /* Flags to DB_MPOOLFILE->set_flags. */ + + /* DB_MPOOLFILE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_MPOOLFILE *, u_int32_t)); + int (*get) + __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); + int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); + int (*get_ftype) __P((DB_MPOOLFILE *, int *)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); + int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); + int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); + int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); + int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); + int (*sync) __P((DB_MPOOLFILE *)); + /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ + + /* + * MP_FILEID_SET, MP_OPEN_CALLED and MP_READONLY do not need to be + * thread protected because they are initialized before the file is + * linked onto the per-process lists, and never modified. + * + * MP_FLUSH is thread protected because it is potentially read/set by + * multiple threads of control. + */ +#define MP_FILEID_SET 0x001 /* Application supplied a file ID. */ +#define MP_FLUSH 0x002 /* Was opened to flush a buffer. */ +#define MP_MULTIVERSION 0x004 /* Opened for multiversion access. */ +#define MP_OPEN_CALLED 0x008 /* File opened. */ +#define MP_READONLY 0x010 /* File is readonly. */ + u_int32_t flags; +}; + +/* Mpool statistics structure. */ +struct __db_mpool_stat { + u_int32_t st_gbytes; /* Total cache size: GB. */ + u_int32_t st_bytes; /* Total cache size: B. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ + size_t st_mmapsize; /* Maximum file size for mmap. */ + int st_maxopenfd; /* Maximum number of open fd's. */ + int st_maxwrite; /* Maximum buffers to write. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ + u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ + u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ + u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ + u_int32_t st_page_clean; /* Clean pages. */ + u_int32_t st_page_dirty; /* Dirty pages. */ + u_int32_t st_hash_buckets; /* Number of hash buckets. */ + u_int32_t st_hash_searches; /* Total hash chain searches. */ + u_int32_t st_hash_longest; /* Longest hash chain searched. */ + u_int32_t st_hash_examined; /* Total hash entries searched. */ + u_int32_t st_hash_nowait; /* Hash lock granted with nowait. */ + u_int32_t st_hash_wait; /* Hash lock granted after wait. */ + u_int32_t st_hash_max_nowait; /* Max hash lock granted with nowait. */ + u_int32_t st_hash_max_wait; /* Max hash lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted with nowait. */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_mvcc_frozen; /* Buffers frozen. */ + u_int32_t st_mvcc_thawed; /* Buffers thawed. */ + u_int32_t st_mvcc_freed; /* Frozen buffers freed. */ + u_int32_t st_alloc; /* Number of page allocations. */ + u_int32_t st_alloc_buckets; /* Buckets checked during allocation. */ + u_int32_t st_alloc_max_buckets; /* Max checked during allocation. */ + u_int32_t st_alloc_pages; /* Pages checked during allocation. */ + u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ + u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/* Mpool file statistics structure. */ +struct __db_mpool_fstat { + char *file_name; /* File name. */ + u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_map; /* Pages from mapped files. */ + u_int32_t st_cache_hit; /* Pages found in the cache. */ + u_int32_t st_cache_miss; /* Pages not found in the cache. */ + u_int32_t st_page_create; /* Pages created in the cache. */ + u_int32_t st_page_in; /* Pages read in. */ + u_int32_t st_page_out; /* Pages written out. */ +#endif +}; + +/******************************************************* + * Transactions and recovery. + *******************************************************/ +#define DB_TXNVERSION 1 + +typedef enum { + DB_TXN_ABORT=0, /* Public. */ + DB_TXN_APPLY=1, /* Public. */ + DB_TXN_BACKWARD_ALLOC=2, /* Internal. */ + DB_TXN_BACKWARD_ROLL=3, /* Public. */ + DB_TXN_FORWARD_ROLL=4, /* Public. */ + DB_TXN_OPENFILES=5, /* Internal. */ + DB_TXN_POPENFILES=6, /* Internal. */ + DB_TXN_PRINT=7 /* Public. */ +} db_recops; + +/* + * BACKWARD_ALLOC is used during the forward pass to pick up any aborted + * allocations for files that were created during the forward pass. + * The main difference between _ALLOC and _ROLL is that the entry for + * the file not exist during the rollforward pass. + */ +#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \ + (op) == DB_TXN_BACKWARD_ROLL || (op) == DB_TXN_BACKWARD_ALLOC) +#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL || (op) == DB_TXN_APPLY) + +struct __db_txn { + DB_TXNMGR *mgrp; /* Pointer to transaction manager. */ + DB_TXN *parent; /* Pointer to transaction's parent. */ + + u_int32_t txnid; /* Unique transaction id. */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ + + db_threadid_t tid; /* Thread id for use in MT XA. */ + void *td; /* Detail structure within region. */ + db_timeout_t lock_timeout; /* Timeout for locks for this txn. */ + db_timeout_t expire; /* Time transaction expires. */ + void *txn_list; /* Undo information for parent. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) links; + * TAILQ_ENTRY(__db_txn) xalinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } links; /* Links transactions off manager. */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } xalinks; /* Links active XA transactions. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__kids, __db_txn) kids; + */ + struct __kids { + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } kids; + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__events, __txn_event) events; + */ + struct { + struct __txn_event *tqh_first; + struct __txn_event **tqh_last; + } events; /* Links deferred events. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * STAILQ_HEAD(__logrec, __txn_logrec) logs; + */ + struct { + struct __txn_logrec *stqh_first; + struct __txn_logrec **stqh_last; + } logs; /* Links in memory log records. */ + + /* + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_txn) klinks; + */ + struct { + struct __db_txn *tqe_next; + struct __db_txn **tqe_prev; + } klinks; + + void *api_internal; /* C++ API private. */ + void *xml_internal; /* XML API private. */ + + u_int32_t cursors; /* Number of cursors open for txn */ + + /* DB_TXN PUBLIC HANDLE LIST BEGIN */ + int (*abort) __P((DB_TXN *)); + int (*commit) __P((DB_TXN *, u_int32_t)); + int (*discard) __P((DB_TXN *, u_int32_t)); + int (*get_name) __P((DB_TXN *, const char **)); + u_int32_t (*id) __P((DB_TXN *)); + int (*prepare) __P((DB_TXN *, u_int8_t *)); + int (*set_name) __P((DB_TXN *, const char *)); + int (*set_timeout) __P((DB_TXN *, db_timeout_t, u_int32_t)); + /* DB_TXN PUBLIC HANDLE LIST END */ + + /* DB_TXN PRIVATE HANDLE LIST BEGIN */ + void (*set_txn_lsnp) __P((DB_TXN *txn, DB_LSN **, DB_LSN **)); + /* DB_TXN PRIVATE HANDLE LIST END */ + +#define TXN_CHILDCOMMIT 0x0001 /* Txn has committed. */ +#define TXN_CDSGROUP 0x0002 /* CDS group handle. */ +#define TXN_COMPENSATE 0x0004 /* Compensating transaction. */ +#define TXN_DEADLOCK 0x0008 /* Txn has deadlocked. */ +#define TXN_LOCKTIMEOUT 0x0010 /* Txn has a lock timeout. */ +#define TXN_MALLOC 0x0020 /* Structure allocated by TXN system. */ +#define TXN_NOSYNC 0x0040 /* Do not sync on prepare and commit. */ +#define TXN_NOWAIT 0x0080 /* Do not wait on locks. */ +#define TXN_PRIVATE 0x0100 /* Txn owned by cursor.. */ +#define TXN_READ_COMMITTED 0x0200 /* Txn has degree 2 isolation. */ +#define TXN_READ_UNCOMMITTED 0x0400 /* Txn has degree 1 isolation. */ +#define TXN_RESTORED 0x0800 /* Txn has been restored. */ +#define TXN_SNAPSHOT 0x1000 /* Snapshot Isolation. */ +#define TXN_SYNC 0x2000 /* Write and sync on prepare/commit. */ +#define TXN_WRITE_NOSYNC 0x4000 /* Write only on prepare/commit. */ + u_int32_t flags; +}; + +#define TXN_SYNC_FLAGS (TXN_SYNC | TXN_NOSYNC | TXN_WRITE_NOSYNC) + +/* + * Structure used for two phase commit interface. Berkeley DB support for two + * phase commit is compatible with the X/Open XA interface. + * + * The XA #define XIDDATASIZE defines the size of a global transaction ID. We + * have our own version here (for name space reasons) which must have the same + * value. + */ +#define DB_XIDDATASIZE 128 +struct __db_preplist { + DB_TXN *txn; + u_int8_t gid[DB_XIDDATASIZE]; +}; + +/* Transaction statistics structure. */ +struct __db_txn_active { + u_int32_t txnid; /* Transaction ID */ + u_int32_t parentid; /* Transaction ID of parent */ + pid_t pid; /* Process owning txn ID */ + db_threadid_t tid; /* Thread owning txn ID */ + + DB_LSN lsn; /* LSN when transaction began */ + + DB_LSN read_lsn; /* Read LSN for MVCC */ + u_int32_t mvcc_ref; /* MVCC reference count */ + +#define TXN_ABORTED 1 +#define TXN_COMMITTED 2 +#define TXN_PREPARED 3 +#define TXN_RUNNING 4 + u_int32_t status; /* Status of the transaction */ + +#define TXN_XA_ABORTED 1 +#define TXN_XA_DEADLOCKED 2 +#define TXN_XA_ENDED 3 +#define TXN_XA_PREPARED 4 +#define TXN_XA_STARTED 5 +#define TXN_XA_SUSPENDED 6 + u_int32_t xa_status; /* XA status */ + + u_int8_t xid[DB_XIDDATASIZE]; /* Global transaction ID */ + char name[51]; /* 50 bytes of name, nul termination */ +}; + +struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS + DB_LSN st_last_ckp; /* lsn of the last checkpoint */ + time_t st_time_ckp; /* time of last checkpoint */ + u_int32_t st_last_txnid; /* last transaction id given out */ + u_int32_t st_maxtxns; /* maximum txns possible */ + u_int32_t st_naborts; /* number of aborted transactions */ + u_int32_t st_nbegins; /* number of begun transactions */ + u_int32_t st_ncommits; /* number of committed transactions */ + u_int32_t st_nactive; /* number of active transactions */ + u_int32_t st_nsnapshot; /* number of snapshot transactions */ + u_int32_t st_maxnactive; /* maximum active transactions */ + u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ + DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ + u_int32_t st_region_wait; /* Region lock granted after wait. */ + u_int32_t st_region_nowait; /* Region lock granted without wait. */ + roff_t st_regsize; /* Region size. */ +#endif +}; + +/******************************************************* + * Replication. + *******************************************************/ +/* Special, out-of-band environment IDs. */ +#define DB_EID_BROADCAST -1 +#define DB_EID_INVALID -2 + +/* rep_config flag values. */ +#define DB_REP_CONF_BULK 0x0001 /* Bulk transfer. */ +#define DB_REP_CONF_DELAYCLIENT 0x0002 /* Delay client synchronization. */ +#define DB_REP_CONF_NOAUTOINIT 0x0004 /* No automatic client init. */ +#define DB_REP_CONF_NOWAIT 0x0008 /* Don't wait, return error. */ + +/* + * Operation code values for rep_start and/or repmgr_start. Just one of the + * following values should be passed in the flags parameter. (If we ever need + * additional, independent bit flags for these methods, we can start allocating + * them from the high-order byte of the flags word, as we currently do elsewhere + * for DB_AFTER through DB_WRITELOCK and DB_AUTO_COMMIT, etc.) + */ +#define DB_REP_CLIENT 1 +#define DB_REP_ELECTION 2 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 + +/* Acknowledgement policies. */ +#define DB_REPMGR_ACKS_ALL 1 +#define DB_REPMGR_ACKS_ALL_PEERS 2 +#define DB_REPMGR_ACKS_NONE 3 +#define DB_REPMGR_ACKS_ONE 4 +#define DB_REPMGR_ACKS_ONE_PEER 5 +#define DB_REPMGR_ACKS_QUORUM 6 + +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ + +/* Event notification types. */ +#define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ +#define DB_EVENT_PANIC 1 +#define DB_EVENT_REP_CLIENT 2 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 + +/* Flag value for repmgr_add_remote_site. */ +#define DB_REPMGR_PEER 0x01 + +/* Replication Manager site status. */ +struct __db_repmgr_site { + int eid; + char *host; + u_int port; + +#define DB_REPMGR_CONNECTED 0x01 +#define DB_REPMGR_DISCONNECTED 0x02 + u_int32_t status; +}; + +/* Replication statistics. */ +struct __db_rep_stat { + /* !!! + * Many replication statistics fields cannot be protected by a mutex + * without an unacceptable performance penalty, since most message + * processing is done without the need to hold a region-wide lock. + * Fields whose comments end with a '+' may be updated without holding + * the replication or log mutexes (as appropriate), and thus may be + * off somewhat (or, on unreasonable architectures under unlucky + * circumstances, garbaged). + */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS + u_int32_t st_status; /* Current replication status. */ + DB_LSN st_next_lsn; /* Next LSN to use or expect. */ + DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ + db_pgno_t st_next_pg; /* Next pg we expect. */ + db_pgno_t st_waiting_pg; /* pg we're awaiting, if any. */ + + u_int32_t st_dupmasters; /* # of times a duplicate master + condition was detected.+ */ + int st_env_id; /* Current environment ID. */ + int st_env_priority; /* Current environment priority. */ + u_int32_t st_bulk_fills; /* Bulk buffer fills. */ + u_int32_t st_bulk_overflows; /* Bulk buffer overflows. */ + u_int32_t st_bulk_records; /* Bulk records stored. */ + u_int32_t st_bulk_transfers; /* Transfers of bulk buffers. */ + u_int32_t st_client_rerequests; /* Number of forced rerequests. */ + u_int32_t st_client_svc_req; /* Number of client service requests + received by this client. */ + u_int32_t st_client_svc_miss; /* Number of client service requests + missing on this client. */ + u_int32_t st_gen; /* Current generation number. */ + u_int32_t st_egen; /* Current election gen number. */ + u_int32_t st_log_duplicated; /* Log records received multiply.+ */ + u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ + u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ + u_int32_t st_log_records; /* Log records received and put.+ */ + u_int32_t st_log_requested; /* Log recs. missed and requested.+ */ + int st_master; /* Env. ID of the current master. */ + u_int32_t st_master_changes; /* # of times we've switched masters. */ + u_int32_t st_msgs_badgen; /* Messages with a bad generation #.+ */ + u_int32_t st_msgs_processed; /* Messages received and processed.+ */ + u_int32_t st_msgs_recover; /* Messages ignored because this site + was a client in recovery.+ */ + u_int32_t st_msgs_send_failures;/* # of failed message sends.+ */ + u_int32_t st_msgs_sent; /* # of successful message sends.+ */ + u_int32_t st_newsites; /* # of NEWSITE msgs. received.+ */ + int st_nsites; /* Current number of sites we will + assume during elections. */ + u_int32_t st_nthrottles; /* # of times we were throttled. */ + u_int32_t st_outdated; /* # of times we detected and returned + an OUTDATED condition.+ */ + u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ + u_int32_t st_pg_records; /* Pages received and stored.+ */ + u_int32_t st_pg_requested; /* Pages missed and requested.+ */ + u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ + + /* Elections generally. */ + u_int32_t st_elections; /* # of elections held.+ */ + u_int32_t st_elections_won; /* # of elections won by this site.+ */ + + /* Statistics about an in-progress election. */ + int st_election_cur_winner; /* Current front-runner. */ + u_int32_t st_election_gen; /* Election generation number. */ + DB_LSN st_election_lsn; /* Max. LSN of current winner. */ + int st_election_nsites; /* # of "registered voters". */ + int st_election_nvotes; /* # of "registered voters" needed. */ + int st_election_priority; /* Current election priority. */ + int st_election_status; /* Current election status. */ + u_int32_t st_election_tiebreaker;/* Election tiebreaker value. */ + int st_election_votes; /* Votes received in this round. */ + u_int32_t st_election_sec; /* Last election time seconds. */ + u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ +}; + +/******************************************************* + * Sequences. + *******************************************************/ +/* + * The storage record for a sequence. + */ +struct __db_seq_record { + u_int32_t seq_version; /* Version size/number. */ +#define DB_SEQ_DEC 0x00000001 /* Decrement sequence. */ +#define DB_SEQ_INC 0x00000002 /* Increment sequence. */ +#define DB_SEQ_RANGE_SET 0x00000004 /* Range set (internal). */ +#define DB_SEQ_WRAP 0x00000008 /* Wrap sequence at min/max. */ +#define DB_SEQ_WRAPPED 0x00000010 /* Just wrapped (internal). */ + u_int32_t flags; /* Flags. */ + db_seq_t seq_value; /* Current value. */ + db_seq_t seq_max; /* Max permitted. */ + db_seq_t seq_min; /* Min permitted. */ +}; + +/* + * Handle for a sequence object. + */ +struct __db_sequence { + DB *seq_dbp; /* DB handle for this sequence. */ + db_mutex_t mtx_seq; /* Mutex if sequence is threaded. */ + DB_SEQ_RECORD *seq_rp; /* Pointer to current data. */ + DB_SEQ_RECORD seq_record; /* Data from DB_SEQUENCE. */ + int32_t seq_cache_size; /* Number of values cached. */ + db_seq_t seq_last_value; /* Last value cached. */ + DBT seq_key; /* DBT pointing to sequence key. */ + DBT seq_data; /* DBT pointing to seq_record. */ + + /* API-private structure: used by C++ and Java. */ + void *api_internal; + + /* DB_SEQUENCE PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DB_SEQUENCE *, u_int32_t)); + int (*get) __P((DB_SEQUENCE *, + DB_TXN *, int32_t, db_seq_t *, u_int32_t)); + int (*get_cachesize) __P((DB_SEQUENCE *, int32_t *)); + int (*get_db) __P((DB_SEQUENCE *, DB **)); + int (*get_flags) __P((DB_SEQUENCE *, u_int32_t *)); + int (*get_key) __P((DB_SEQUENCE *, DBT *)); + int (*get_range) __P((DB_SEQUENCE *, + db_seq_t *, db_seq_t *)); + int (*initial_value) __P((DB_SEQUENCE *, db_seq_t)); + int (*open) __P((DB_SEQUENCE *, + DB_TXN *, DBT *, u_int32_t)); + int (*remove) __P((DB_SEQUENCE *, DB_TXN *, u_int32_t)); + int (*set_cachesize) __P((DB_SEQUENCE *, int32_t)); + int (*set_flags) __P((DB_SEQUENCE *, u_int32_t)); + int (*set_range) __P((DB_SEQUENCE *, db_seq_t, db_seq_t)); + int (*stat) __P((DB_SEQUENCE *, + DB_SEQUENCE_STAT **, u_int32_t)); + int (*stat_print) __P((DB_SEQUENCE *, u_int32_t)); + /* DB_SEQUENCE PUBLIC HANDLE LIST END */ +}; + +struct __db_seq_stat { + u_int32_t st_wait; /* Sequence lock granted w/o wait. */ + u_int32_t st_nowait; /* Sequence lock granted after wait. */ + db_seq_t st_current; /* Current value in db. */ + db_seq_t st_value; /* Current cached value. */ + db_seq_t st_last_value; /* Last cached value. */ + db_seq_t st_min; /* Minimum value. */ + db_seq_t st_max; /* Maximum value. */ + int32_t st_cache_size; /* Cache size. */ + u_int32_t st_flags; /* Flag value. */ +}; + +/******************************************************* + * Access methods. + *******************************************************/ +typedef enum { + DB_BTREE=1, + DB_HASH=2, + DB_RECNO=3, + DB_QUEUE=4, + DB_UNKNOWN=5 /* Figure it out on open. */ +} DBTYPE; + +#define DB_RENAMEMAGIC 0x030800 /* File has been renamed. */ + +#define DB_BTREEVERSION 9 /* Current btree version. */ +#define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ +#define DB_BTREEMAGIC 0x053162 + +#define DB_HASHVERSION 9 /* Current hash version. */ +#define DB_HASHOLDVER 7 /* Oldest hash version supported. */ +#define DB_HASHMAGIC 0x061561 + +#define DB_QAMVERSION 4 /* Current queue version. */ +#define DB_QAMOLDVER 3 /* Oldest queue version supported. */ +#define DB_QAMMAGIC 0x042253 + +#define DB_SEQUENCE_VERSION 2 /* Current sequence version. */ +#define DB_SEQUENCE_OLDVER 1 /* Oldest sequence version supported. */ + +/* + * DB access method and cursor operation values. Each value is an operation + * code to which additional bit flags are added. + */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ + +/* This has to change when the max opcode hits 255. */ +#define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ + +/* + * Masks for flags that can be OR'd into DB access method and cursor + * operation values. Three top bits have already been taken: + * + * DB_AUTO_COMMIT 0x02000000 + * DB_READ_COMMITTED 0x04000000 + * DB_READ_UNCOMMITTED 0x08000000 + */ +#define DB_MULTIPLE 0x10000000 /* Return multiple data values. */ +#define DB_MULTIPLE_KEY 0x20000000 /* Return multiple data/key pairs. */ +#define DB_RMW 0x40000000 /* Acquire write lock immediately. */ + +/* + * DB (user visible) error return codes. + * + * !!! + * We don't want our error returns to conflict with other packages where + * possible, so pick a base error value that's hopefully not common. We + * document that we own the error name space from -30,800 to -30,999. + */ +/* DB (public) error return codes. */ +#define DB_BUFFER_SMALL (-30999)/* User memory too small for return. */ +#define DB_DONOTINDEX (-30998)/* "Null" return from 2ndary callbk. */ +#define DB_KEYEMPTY (-30997)/* Key/data deleted or never created. */ +#define DB_KEYEXIST (-30996)/* The key/data pair already exists. */ +#define DB_LOCK_DEADLOCK (-30995)/* Deadlock. */ +#define DB_LOCK_NOTGRANTED (-30994)/* Lock unavailable. */ +#define DB_LOG_BUFFER_FULL (-30993)/* In-memory log buffer full. */ +#define DB_NOSERVER (-30992)/* Server panic return. */ +#define DB_NOSERVER_HOME (-30991)/* Bad home sent to server. */ +#define DB_NOSERVER_ID (-30990)/* Bad ID sent to server. */ +#define DB_NOTFOUND (-30989)/* Key/data pair not found (EOF). */ +#define DB_OLD_VERSION (-30988)/* Out-of-date version. */ +#define DB_PAGE_NOTFOUND (-30987)/* Requested page not found. */ +#define DB_REP_DUPMASTER (-30986)/* There are two masters. */ +#define DB_REP_HANDLE_DEAD (-30985)/* Rolled back a commit. */ +#define DB_REP_HOLDELECTION (-30984)/* Time to hold an election. */ +#define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ +#define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ +#define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ +#define DB_REP_NEWSITE (-30978)/* New site entered system. */ +#define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ +#define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ +#define DB_RUNRECOVERY (-30975)/* Panic return. */ +#define DB_SECONDARY_BAD (-30974)/* Secondary index corrupt. */ +#define DB_VERIFY_BAD (-30973)/* Verify failed; bad format. */ +#define DB_VERSION_MISMATCH (-30972)/* Environment version mismatch. */ + +/* DB (private) error return codes. */ +#define DB_ALREADY_ABORTED (-30899) +#define DB_DELETED (-30898)/* Recovery file marked deleted. */ +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent + didn't know it was a parent. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ + +/* Database handle. */ +struct __db { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ + + /* Callbacks. */ + int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); + void (*db_feedback) __P((DB *, int, int)); + int (*dup_compare) __P((DB *, const DBT *, const DBT *)); + + void *app_private; /* Application-private handle. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + DB_ENV *dbenv; /* Backing environment. */ + + DBTYPE type; /* DB access method type. */ + + DB_MPOOLFILE *mpf; /* Backing buffer pool. */ + + db_mutex_t mutex; /* Synchronization for free threading */ + + char *fname, *dname; /* File/database passed to DB->open. */ + u_int32_t open_flags; /* Flags passed to DB->open. */ + + u_int8_t fileid[DB_FILE_ID_LEN];/* File's unique ID for locking. */ + + u_int32_t adj_fileid; /* File's unique ID for curs. adj. */ + +#define DB_LOGFILEID_INVALID -1 + FNAME *log_filename; /* File's naming info for logging. */ + + db_pgno_t meta_pgno; /* Meta page number */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ + DB_LOCK handle_lock; /* Lock held on this handle. */ + + u_int cl_id; /* RPC: remote client id. */ + + time_t timestamp; /* Handle timestamp for replication. */ + u_int32_t fid_gen; /* Rep generation number for fids. */ + + /* + * Returned data memory for DB->get() and friends. + */ + DBT my_rskey; /* Secondary key. */ + DBT my_rkey; /* [Primary] key. */ + DBT my_rdata; /* Data. */ + + /* + * !!! + * Some applications use DB but implement their own locking outside of + * DB. If they're using fcntl(2) locking on the underlying database + * file, and we open and close a file descriptor for that file, we will + * discard their locks. The DB_FCNTL_LOCKING flag to DB->open is an + * undocumented interface to support this usage which leaves any file + * descriptors we open until DB->close. This will only work with the + * DB->open interface and simple caches, e.g., creating a transaction + * thread may open/close file descriptors this flag doesn't protect. + * Locking with fcntl(2) on a file that you don't own is a very, very + * unsafe thing to do. 'Nuff said. + */ + DB_FH *saved_open_fhp; /* Saved file handle. */ + + /* + * Linked list of DBP's, linked from the DB_ENV, used to keep track + * of all open db handles for cursor adjustment. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db) dblistlinks; + */ + struct { + struct __db *tqe_next; + struct __db **tqe_prev; + } dblistlinks; + + /* + * Cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_HEAD(__cq_fq, __dbc) free_queue; + * TAILQ_HEAD(__cq_aq, __dbc) active_queue; + * TAILQ_HEAD(__cq_jq, __dbc) join_queue; + */ + struct __cq_fq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } free_queue; + struct __cq_aq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } active_queue; + struct __cq_jq { + struct __dbc *tqh_first; + struct __dbc **tqh_last; + } join_queue; + + /* + * Secondary index support. + * + * Linked list of secondary indices -- set in the primary. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_HEAD(s_secondaries, __db); + */ + struct { + struct __db *lh_first; + } s_secondaries; + + /* + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). + * + * !!! + * Note that these are synchronized by the primary's mutex, but + * filled in in the secondaries. + * + * !!! + * Explicit representations of structures from queue.h. + * LIST_ENTRY(__db) s_links; + */ + struct { + struct __db *le_next; + struct __db **le_prev; + } s_links; + u_int32_t s_refcnt; + + /* Secondary callback and free functions -- set in the secondary. */ + int (*s_callback) __P((DB *, const DBT *, const DBT *, DBT *)); + + /* Reference to primary -- set in the secondary. */ + DB *s_primary; + +#define DB_ASSOC_IMMUTABLE_KEY 0x00000001 /* Secondary key is immutable. */ + + /* Flags passed to associate -- set in the secondary. */ + u_int32_t s_assoc_flags; + + /* API-private structure: used by DB 1.85, C++, Java, Perl and Tcl */ + void *api_internal; + + /* Subsystem-private structure. */ + void *bt_internal; /* Btree/Recno access method. */ + void *h_internal; /* Hash access method. */ + void *q_internal; /* Queue access method. */ + void *xa_internal; /* XA. */ + + /* DB PUBLIC HANDLE LIST BEGIN */ + int (*associate) __P((DB *, DB_TXN *, DB *, + int (*)(DB *, const DBT *, const DBT *, DBT *), u_int32_t)); + int (*close) __P((DB *, u_int32_t)); + int (*compact) __P((DB *, + DB_TXN *, DBT *, DBT *, DB_COMPACT *, u_int32_t, DBT *)); + int (*cursor) __P((DB *, DB_TXN *, DBC **, u_int32_t)); + int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + void (*err) __P((DB *, int, const char *, ...)); + void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); + int (*fd) __P((DB *, int *)); + int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*get_bt_minkey) __P((DB *, u_int32_t *)); + int (*get_byteswapped) __P((DB *, int *)); + int (*get_cachesize) __P((DB *, u_int32_t *, u_int32_t *, int *)); + int (*get_dbname) __P((DB *, const char **, const char **)); + int (*get_encrypt_flags) __P((DB *, u_int32_t *)); + DB_ENV *(*get_env) __P((DB *)); + void (*get_errfile) __P((DB *, FILE **)); + void (*get_errpfx) __P((DB *, const char **)); + int (*get_flags) __P((DB *, u_int32_t *)); + int (*get_h_ffactor) __P((DB *, u_int32_t *)); + int (*get_h_nelem) __P((DB *, u_int32_t *)); + int (*get_lorder) __P((DB *, int *)); + DB_MPOOLFILE *(*get_mpf) __P((DB *)); + void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); + int (*get_open_flags) __P((DB *, u_int32_t *)); + int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); + int (*get_q_extentsize) __P((DB *, u_int32_t *)); + int (*get_re_delim) __P((DB *, int *)); + int (*get_re_len) __P((DB *, u_int32_t *)); + int (*get_re_pad) __P((DB *, int *)); + int (*get_re_source) __P((DB *, const char **)); + int (*get_transactional) __P((DB *)); + int (*get_type) __P((DB *, DBTYPE *)); + int (*join) __P((DB *, DBC **, DBC **, u_int32_t)); + int (*key_range) + __P((DB *, DB_TXN *, DBT *, DB_KEY_RANGE *, u_int32_t)); + int (*open) __P((DB *, + DB_TXN *, const char *, const char *, DBTYPE, u_int32_t, int)); + int (*pget) __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*remove) __P((DB *, const char *, const char *, u_int32_t)); + int (*rename) __P((DB *, + const char *, const char *, const char *, u_int32_t)); + int (*set_alloc) __P((DB *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_append_recno) __P((DB *, int (*)(DB *, DBT *, db_recno_t))); + int (*set_bt_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_bt_minkey) __P((DB *, u_int32_t)); + int (*set_bt_prefix) + __P((DB *, size_t (*)(DB *, const DBT *, const DBT *))); + int (*set_cachesize) __P((DB *, u_int32_t, u_int32_t, int)); + int (*set_dup_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_encrypt) __P((DB *, const char *, u_int32_t)); + void (*set_errcall) __P((DB *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB *, FILE *)); + void (*set_errpfx) __P((DB *, const char *)); + int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); + int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); + int (*set_h_ffactor) __P((DB *, u_int32_t)); + int (*set_h_hash) + __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); + int (*set_h_nelem) __P((DB *, u_int32_t)); + int (*set_lorder) __P((DB *, int)); + void (*set_msgcall) __P((DB *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB *, FILE *)); + int (*set_pagesize) __P((DB *, u_int32_t)); + int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); + int (*set_q_extentsize) __P((DB *, u_int32_t)); + int (*set_re_delim) __P((DB *, int)); + int (*set_re_len) __P((DB *, u_int32_t)); + int (*set_re_pad) __P((DB *, int)); + int (*set_re_source) __P((DB *, const char *)); + int (*stat) __P((DB *, DB_TXN *, void *, u_int32_t)); + int (*stat_print) __P((DB *, u_int32_t)); + int (*sync) __P((DB *, u_int32_t)); + int (*truncate) __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); + int (*upgrade) __P((DB *, const char *, u_int32_t)); + int (*verify) + __P((DB *, const char *, const char *, FILE *, u_int32_t)); + /* DB PUBLIC HANDLE LIST END */ + + /* DB PRIVATE HANDLE LIST BEGIN */ + int (*dump) __P((DB *, const char *, + int (*)(void *, const void *), void *, int, int)); + int (*db_am_remove) __P((DB *, DB_TXN *, const char *, const char *)); + int (*db_am_rename) __P((DB *, DB_TXN *, + const char *, const char *, const char *)); + /* DB PRIVATE HANDLE LIST END */ + + /* + * Never called; these are a place to save function pointers + * so that we can undo an associate. + */ + int (*stored_get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); + int (*stored_close) __P((DB *, u_int32_t)); + +#define DB_OK_BTREE 0x01 +#define DB_OK_HASH 0x02 +#define DB_OK_QUEUE 0x04 +#define DB_OK_RECNO 0x08 + u_int32_t am_ok; /* Legal AM choices. */ + + /* + * This field really ought to be an AM_FLAG, but we have + * have run out of bits. If/when we decide to split up + * the flags, we can incorporate it. + */ + int preserve_fid; /* Do not free fileid on close. */ + +#define DB_AM_CHKSUM 0x00000001 /* Checksumming */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ + u_int32_t orig_flags; /* Flags at open, for refresh */ + u_int32_t flags; +}; + +/* + * Macros for bulk get. These are only intended for the C API. + * For C++, use DbMultiple*Iterator. + */ +#define DB_MULTIPLE_INIT(pointer, dbt) \ + (pointer = (u_int8_t *)(dbt)->data + \ + (dbt)->ulen - sizeof(u_int32_t)) +#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + if (retdlen == 0 && \ + retdata == (u_int8_t *)(dbt)->data) \ + retdata = NULL; \ + } while (0) +#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey, retklen, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)-1) { \ + retdata = NULL; \ + retkey = NULL; \ + pointer = NULL; \ + break; \ + } \ + retkey = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retklen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno, retdata, retdlen) \ + do { \ + if (*((u_int32_t *)(pointer)) == (u_int32_t)0) { \ + recno = 0; \ + retdata = NULL; \ + pointer = NULL; \ + break; \ + } \ + recno = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdata = (u_int8_t *) \ + (dbt)->data + *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + retdlen = *(u_int32_t *)(pointer); \ + (pointer) = (u_int32_t *)(pointer) - 1; \ + } while (0) + +/******************************************************* + * Access method cursors. + *******************************************************/ +struct __dbc { + DB *dbp; /* Related DB access method. */ + DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ + + /* + * Active/free cursor queues. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__dbc) links; + */ + struct { + DBC *tqe_next; + DBC **tqe_prev; + } links; + + /* + * The DBT *'s below are used by the cursor routines to return + * data to the user when DBT flags indicate that DB should manage + * the returned memory. They point at a DBT containing the buffer + * and length that will be used, and "belonging" to the handle that + * should "own" this memory. This may be a "my_*" field of this + * cursor--the default--or it may be the corresponding field of + * another cursor, a DB handle, a join cursor, etc. In general, it + * will be whatever handle the user originally used for the current + * DB interface call. + */ + DBT *rskey; /* Returned secondary key. */ + DBT *rkey; /* Returned [primary] key. */ + DBT *rdata; /* Returned data. */ + + DBT my_rskey; /* Space for returned secondary key. */ + DBT my_rkey; /* Space for returned [primary] key. */ + DBT my_rdata; /* Space for returned data. */ + + void *lref; /* Reference to default locker. */ + DB_LOCKER *locker; /* Locker for this operation. */ + DBT lock_dbt; /* DBT referencing lock. */ + DB_LOCK_ILOCK lock; /* Object to be locked. */ + DB_LOCK mylock; /* CDB lock held on this cursor. */ + + u_int cl_id; /* Remote client id. */ + + DBTYPE dbtype; /* Cursor type. */ + + DBC_INTERNAL *internal; /* Access method private. */ + + /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ + int (*c_close) __P((DBC *)); + int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*c_del) __P((DBC *, u_int32_t)); + int (*c_dup) __P((DBC *, DBC **, u_int32_t)); + int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); + + /* DBC PRIVATE HANDLE LIST BEGIN */ + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); + /* DBC PRIVATE HANDLE LIST END */ + +/* + * DBC_DONTLOCK and DBC_RECOVER are used during recovery and transaction + * abort. If a transaction is being aborted or recovered then DBC_RECOVER + * will be set and locking and logging will be disabled on this cursor. If + * we are performing a compensating transaction (e.g. free page processing) + * then DB_DONTLOCK will be set to inhibit locking, but logging will still + * be required. DB_DONTLOCK is also used if the whole database is locked. + */ +#define DBC_ACTIVE 0x0001 /* Cursor in use. */ +#define DBC_DONTLOCK 0x0002 /* Don't lock on this cursor. */ +#define DBC_MULTIPLE 0x0004 /* Return Multiple data. */ +#define DBC_MULTIPLE_KEY 0x0008 /* Return Multiple keys and data. */ +#define DBC_OPD 0x0010 /* Cursor references off-page dups. */ +#define DBC_OWN_LID 0x0020 /* Free lock id on destroy. */ +#define DBC_READ_COMMITTED 0x0040 /* Cursor has degree 2 isolation. */ +#define DBC_READ_UNCOMMITTED 0x0080 /* Cursor has degree 1 isolation. */ +#define DBC_RECOVER 0x0100 /* Recovery cursor; don't log/lock. */ +#define DBC_RMW 0x0200 /* Acquire write flag in read op. */ +#define DBC_TRANSIENT 0x0400 /* Cursor is transient. */ +#define DBC_WRITECURSOR 0x0800 /* Cursor may be used to write (CDB). */ +#define DBC_WRITER 0x1000 /* Cursor immediately writing (CDB). */ + u_int32_t flags; +}; + +/* Key range statistics structure */ +struct __key_range { + double less; + double equal; + double greater; +}; + +/* Btree/Recno statistics structure. */ +struct __db_bt_stat { + u_int32_t bt_magic; /* Magic number. */ + u_int32_t bt_version; /* Version number. */ + u_int32_t bt_metaflags; /* Metadata flags. */ + u_int32_t bt_nkeys; /* Number of unique keys. */ + u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ + u_int32_t bt_pagesize; /* Page size. */ + u_int32_t bt_minkey; /* Minkey value. */ + u_int32_t bt_re_len; /* Fixed-length record length. */ + u_int32_t bt_re_pad; /* Fixed-length record pad. */ + u_int32_t bt_levels; /* Tree levels. */ + u_int32_t bt_int_pg; /* Internal pages. */ + u_int32_t bt_leaf_pg; /* Leaf pages. */ + u_int32_t bt_dup_pg; /* Duplicate pages. */ + u_int32_t bt_over_pg; /* Overflow pages. */ + u_int32_t bt_empty_pg; /* Empty pages. */ + u_int32_t bt_free; /* Pages on the free list. */ + u_int32_t bt_int_pgfree; /* Bytes free in internal pages. */ + u_int32_t bt_leaf_pgfree; /* Bytes free in leaf pages. */ + u_int32_t bt_dup_pgfree; /* Bytes free in duplicate pages. */ + u_int32_t bt_over_pgfree; /* Bytes free in overflow pages. */ +}; + +struct __db_compact { + /* Input Parameters. */ + u_int32_t compact_fillpercent; /* Desired fillfactor: 1-100 */ + db_timeout_t compact_timeout; /* Lock timeout. */ + u_int32_t compact_pages; /* Max pages to process. */ + /* Output Stats. */ + u_int32_t compact_pages_free; /* Number of pages freed. */ + u_int32_t compact_pages_examine; /* Number of pages examine. */ + u_int32_t compact_levels; /* Number of levels removed. */ + u_int32_t compact_deadlock; /* Number of deadlocks. */ + db_pgno_t compact_pages_truncated; /* Pages truncated to OS. */ + /* Internal. */ + db_pgno_t compact_truncate; /* Page number for truncation */ +}; + +/* Hash statistics structure. */ +struct __db_h_stat { + u_int32_t hash_magic; /* Magic number. */ + u_int32_t hash_version; /* Version number. */ + u_int32_t hash_metaflags; /* Metadata flags. */ + u_int32_t hash_nkeys; /* Number of unique keys. */ + u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ + u_int32_t hash_pagesize; /* Page size. */ + u_int32_t hash_ffactor; /* Fill factor specified at create. */ + u_int32_t hash_buckets; /* Number of hash buckets. */ + u_int32_t hash_free; /* Pages on the free list. */ + u_int32_t hash_bfree; /* Bytes free on bucket pages. */ + u_int32_t hash_bigpages; /* Number of big key/data pages. */ + u_int32_t hash_big_bfree; /* Bytes free on big item pages. */ + u_int32_t hash_overflows; /* Number of overflow pages. */ + u_int32_t hash_ovfl_free; /* Bytes free on ovfl pages. */ + u_int32_t hash_dup; /* Number of dup pages. */ + u_int32_t hash_dup_free; /* Bytes free on duplicate pages. */ +}; + +/* Queue statistics structure. */ +struct __db_qam_stat { + u_int32_t qs_magic; /* Magic number. */ + u_int32_t qs_version; /* Version number. */ + u_int32_t qs_metaflags; /* Metadata flags. */ + u_int32_t qs_nkeys; /* Number of unique keys. */ + u_int32_t qs_ndata; /* Number of data items. */ + u_int32_t qs_pagesize; /* Page size. */ + u_int32_t qs_extentsize; /* Pages per extent. */ + u_int32_t qs_pages; /* Data pages. */ + u_int32_t qs_re_len; /* Fixed-length record length. */ + u_int32_t qs_re_pad; /* Fixed-length record pad. */ + u_int32_t qs_pgfree; /* Bytes free in data pages. */ + u_int32_t qs_first_recno; /* First not deleted record. */ + u_int32_t qs_cur_recno; /* Next available record number. */ +}; + +/******************************************************* + * Environment. + *******************************************************/ +#define DB_REGION_MAGIC 0x120897 /* Environment magic number. */ + +/* Database Environment handle. */ +struct __db_env { + /******************************************************* + * Public: owned by the application. + *******************************************************/ + /* Error message callback. */ + void (*db_errcall) __P((const DB_ENV *, const char *, const char *)); + FILE *db_errfile; /* Error message file stream. */ + const char *db_errpfx; /* Error message prefix. */ + + FILE *db_msgfile; /* Statistics message file stream. */ + /* Statistics message callback. */ + void (*db_msgcall) __P((const DB_ENV *, const char *)); + + /* Other Callbacks. */ + void (*db_feedback) __P((DB_ENV *, int, int)); + void (*db_paniccall) __P((DB_ENV *, int)); + void (*db_event_func) __P((DB_ENV *, u_int32_t, void *)); + + /* App-specified alloc functions. */ + void *(*db_malloc) __P((size_t)); + void *(*db_realloc) __P((void *, size_t)); + void (*db_free) __P((void *)); + + /* Application callback to copy data to/from a custom data source. */ +#define DB_USERCOPY_GETDATA 0x0001 +#define DB_USERCOPY_SETDATA 0x0002 + int (*dbt_usercopy) + __P((DBT *, u_int32_t, void *, u_int32_t, u_int32_t)); + + /* + * Currently, the verbose list is a bit field with room for 32 + * entries. There's no reason that it needs to be limited, if + * there are ever more than 32 entries, convert to a bit array. + */ +#define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ + u_int32_t verbose; /* Verbose output. */ + + void *app_private; /* Application-private handle. */ + + int (*app_dispatch) /* User-specified recovery dispatch. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops)); + + /* Mutexes. */ + u_int32_t mutex_align; /* Mutex alignment */ + u_int32_t mutex_cnt; /* Number of mutexes to configure */ + u_int32_t mutex_inc; /* Number of mutexes to add */ + u_int32_t mutex_tas_spins;/* Test-and-set spin count */ + + struct { + int alloc_id; /* Allocation ID argument */ + u_int32_t flags; /* Flags argument */ + } *mutex_iq; /* Initial mutexes queue */ + u_int mutex_iq_next; /* Count of initial mutexes */ + u_int mutex_iq_max; /* Maximum initial mutexes */ + + /* Locking. */ + u_int8_t *lk_conflicts; /* Two dimensional conflict matrix. */ + int lk_modes; /* Number of lock modes in table. */ + u_int32_t lk_max; /* Maximum number of locks. */ + u_int32_t lk_max_lockers;/* Maximum number of lockers. */ + u_int32_t lk_max_objects;/* Maximum number of locked objects. */ + u_int32_t lk_detect; /* Deadlock detect on all conflicts. */ + db_timeout_t lk_timeout; /* Lock timeout period. */ + + /* Logging. */ + u_int32_t lg_bsize; /* Buffer size. */ + u_int32_t lg_size; /* Log file size. */ + u_int32_t lg_regionmax; /* Region size. */ + int lg_filemode; /* Log file permission mode. */ + + /* Memory pool. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ + size_t mp_mmapsize; /* Maximum file size for mmap. */ + int mp_maxopenfd; /* Maximum open file descriptors. */ + int mp_maxwrite; /* Maximum buffers to write. */ + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ + + /* Transactions. */ + u_int32_t tx_max; /* Maximum number of transactions. */ + time_t tx_timestamp; /* Recover to specific timestamp. */ + db_timeout_t tx_timeout; /* Timeout for transactions. */ + + /* Thread tracking. */ + u_int32_t thr_nbucket; /* Number of hash buckets. */ + u_int32_t thr_max; /* Max before garbage collection. */ + void *thr_hashtab; /* Hash table of DB_THREAD_INFO. */ + + /******************************************************* + * Private: owned by DB. + *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + + pid_t pid_cache; /* Cached process ID. */ + + /* User files, paths. */ + char *db_home; /* Database home. */ + char *db_log_dir; /* Database log file directory. */ + char *db_tmp_dir; /* Database tmp file directory. */ + + char **db_data_dir; /* Database data file directories. */ + int data_cnt; /* Database data file slots. */ + int data_next; /* Next Database data file slot. */ + + int db_mode; /* Default open permissions. */ + int dir_mode; /* Intermediate directory perms. */ + void *env_lref; /* Locker in non-threaded handles. */ + u_int32_t open_flags; /* Flags passed to DB_ENV->open. */ + + void *reginfo; /* REGINFO structure reference. */ + DB_FH *lockfhp; /* fcntl(2) locking file handle. */ + + DB_FH *registry; /* DB_REGISTER file handle. */ + u_int32_t registry_off; /* + * Offset of our slot. We can't use + * off_t because its size depends on + * build settings. + */ + + /* Return IDs. */ + void (*thread_id) __P((DB_ENV *, pid_t *, db_threadid_t *)); + /* Return if IDs alive. */ + int (*is_alive) + __P((DB_ENV *, pid_t, db_threadid_t, u_int32_t)); + /* Format IDs into a string. */ + char *(*thread_id_string) + __P((DB_ENV *, pid_t, db_threadid_t, char *)); + + int (**recover_dtab) /* Dispatch table for recover funcs. */ + __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); + size_t recover_dtab_size; + /* Slots in the dispatch table. */ + + void *cl_handle; /* RPC: remote client handle. */ + u_int cl_id; /* RPC: remote client env id. */ + + int db_ref; /* DB reference count. */ + + long shm_key; /* shmget(2) key. */ + + /* + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. + * + * !!! + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__dblist, __db); + */ + db_mutex_t mtx_dblist; /* Mutex. */ + struct __dblist { + struct __db *tqh_first; + struct __db **tqh_last; + } dblist; + + /* + * XA support. + * + * !!! + * Explicit representations of structures from queue.h. + * TAILQ_ENTRY(__db_env) links; + * TAILQ_HEAD(xa_txn, __db_txn); + */ + struct { + struct __db_env *tqe_next; + struct __db_env **tqe_prev; + } links; + struct __xa_txn { /* XA Active Transactions. */ + struct __db_txn *tqh_first; + struct __db_txn **tqh_last; + } xa_txn; + int xa_rmid; /* XA Resource Manager ID. */ + + char *passwd; /* Cryptography support. */ + size_t passwd_len; + void *crypto_handle; /* Primary handle. */ + db_mutex_t mtx_mt; /* Mersenne Twister mutex. */ + int mti; /* Mersenne Twister index. */ + u_long *mt; /* Mersenne Twister state vector. */ + + /* API-private structure. */ + void *api1_internal; /* C++, Perl API private */ + void *api2_internal; /* Java API private */ + + DB_LOCKTAB *lk_handle; /* Lock handle. */ + DB_LOG *lg_handle; /* Log handle. */ + DB_MPOOL *mp_handle; /* Mpool handle. */ + DB_MUTEXMGR *mutex_handle; /* Mutex handle. */ + DB_REP *rep_handle; /* Replication handle. */ + DB_TXNMGR *tx_handle; /* Txn handle. */ + + /* DB_ENV PUBLIC HANDLE LIST BEGIN */ + int (*cdsgroup_begin) __P((DB_ENV *, DB_TXN **)); + int (*close) __P((DB_ENV *, u_int32_t)); + int (*dbremove) __P((DB_ENV *, + DB_TXN *, const char *, const char *, u_int32_t)); + int (*dbrename) __P((DB_ENV *, + DB_TXN *, const char *, const char *, const char *, u_int32_t)); + void (*err) __P((const DB_ENV *, int, const char *, ...)); + void (*errx) __P((const DB_ENV *, const char *, ...)); + int (*failchk) __P((DB_ENV *, u_int32_t)); + int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*get_data_dirs) __P((DB_ENV *, const char ***)); + int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); + void (*get_errfile) __P((DB_ENV *, FILE **)); + void (*get_errpfx) __P((DB_ENV *, const char **)); + int (*get_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_home) __P((DB_ENV *, const char **)); + int (*get_lg_bsize) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_dir) __P((DB_ENV *, const char **)); + int (*get_lg_filemode) __P((DB_ENV *, int *)); + int (*get_lg_max) __P((DB_ENV *, u_int32_t *)); + int (*get_lg_regionmax) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_conflicts) __P((DB_ENV *, const u_int8_t **, int *)); + int (*get_lk_detect) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_lockers) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); + int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); + int (*get_mp_max_openfd) __P((DB_ENV *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); + int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); + void (*get_msgfile) __P((DB_ENV *, FILE **)); + int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); + int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); + int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); + int (*get_tmp_dir) __P((DB_ENV *, const char **)); + int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); + int (*get_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*get_verbose) __P((DB_ENV *, u_int32_t, int *)); + int (*is_bigendian) __P((void)); + int (*lock_detect) __P((DB_ENV *, u_int32_t, u_int32_t, int *)); + int (*lock_get) __P((DB_ENV *, + u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); + int (*lock_id) __P((DB_ENV *, u_int32_t *)); + int (*lock_id_free) __P((DB_ENV *, u_int32_t)); + int (*lock_put) __P((DB_ENV *, DB_LOCK *)); + int (*lock_stat) __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); + int (*lock_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lock_vec) __P((DB_ENV *, + u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); + int (*log_archive) __P((DB_ENV *, char **[], u_int32_t)); + int (*log_cursor) __P((DB_ENV *, DB_LOGC **, u_int32_t)); + int (*log_file) __P((DB_ENV *, const DB_LSN *, char *, size_t)); + int (*log_flush) __P((DB_ENV *, const DB_LSN *)); + int (*log_printf) __P((DB_ENV *, DB_TXN *, const char *, ...)); + int (*log_put) __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); + int (*log_stat) __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); + int (*log_stat_print) __P((DB_ENV *, u_int32_t)); + int (*lsn_reset) __P((DB_ENV *, const char *, u_int32_t)); + int (*memp_fcreate) __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); + int (*memp_register) __P((DB_ENV *, int, int (*)(DB_ENV *, + db_pgno_t, void *, DBT *), int (*)(DB_ENV *, + db_pgno_t, void *, DBT *))); + int (*memp_stat) __P((DB_ENV *, + DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); + int (*memp_stat_print) __P((DB_ENV *, u_int32_t)); + int (*memp_sync) __P((DB_ENV *, DB_LSN *)); + int (*memp_trickle) __P((DB_ENV *, int, int *)); + int (*mutex_alloc) __P((DB_ENV *, u_int32_t, db_mutex_t *)); + int (*mutex_free) __P((DB_ENV *, db_mutex_t)); + int (*mutex_get_align) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_increment) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_max) __P((DB_ENV *, u_int32_t *)); + int (*mutex_get_tas_spins) __P((DB_ENV *, u_int32_t *)); + int (*mutex_lock) __P((DB_ENV *, db_mutex_t)); + int (*mutex_set_align) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_increment) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_max) __P((DB_ENV *, u_int32_t)); + int (*mutex_set_tas_spins) __P((DB_ENV *, u_int32_t)); + int (*mutex_stat) __P((DB_ENV *, DB_MUTEX_STAT **, u_int32_t)); + int (*mutex_stat_print) __P((DB_ENV *, u_int32_t)); + int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); + int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); + int (*remove) __P((DB_ENV *, const char *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); + int (*rep_flush) __P((DB_ENV *)); + int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); + int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); + int (*rep_get_nsites) __P((DB_ENV *, int *)); + int (*rep_get_priority) __P((DB_ENV *, int *)); + int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); + int (*rep_process_message) + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); + int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*rep_set_nsites) __P((DB_ENV *, int)); + int (*rep_set_priority) __P((DB_ENV *, int)); + int (*rep_set_timeout) __P((DB_ENV *, int, db_timeout_t)); + int (*rep_set_transport) __P((DB_ENV *, int, int (*)(DB_ENV *, + const DBT *, const DBT *, const DB_LSN *, int, u_int32_t))); + int (*rep_start) __P((DB_ENV *, DBT *, u_int32_t)); + int (*rep_stat) __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); + int (*rep_stat_print) __P((DB_ENV *, u_int32_t)); + int (*rep_sync) __P((DB_ENV *, u_int32_t)); + int (*repmgr_add_remote_site) __P((DB_ENV *, const char *, u_int, + int *, u_int32_t)); + int (*repmgr_get_ack_policy) __P((DB_ENV *, int *)); + int (*repmgr_set_ack_policy) __P((DB_ENV *, int)); + int (*repmgr_set_local_site) __P((DB_ENV *, const char *, u_int, + u_int32_t)); + int (*repmgr_site_list) __P((DB_ENV *, u_int *, + DB_REPMGR_SITE **)); + int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); + int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), + void *(*)(void *, size_t), void (*)(void *))); + int (*set_app_dispatch) + __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); + int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_data_dir) __P((DB_ENV *, const char *)); + int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); + void (*set_errcall) __P((DB_ENV *, + void (*)(const DB_ENV *, const char *, const char *))); + void (*set_errfile) __P((DB_ENV *, FILE *)); + void (*set_errpfx) __P((DB_ENV *, const char *)); + int (*set_event_notify) + __P((DB_ENV *, void (*)(DB_ENV *, u_int32_t, void *))); + int (*set_feedback) __P((DB_ENV *, void (*)(DB_ENV *, int, int))); + int (*set_flags) __P((DB_ENV *, u_int32_t, int)); + int (*set_intermediate_dir) __P((DB_ENV *, int, u_int32_t)); + int (*set_isalive) __P((DB_ENV *, + int (*)(DB_ENV *, pid_t, db_threadid_t, u_int32_t))); + int (*set_lg_bsize) __P((DB_ENV *, u_int32_t)); + int (*set_lg_dir) __P((DB_ENV *, const char *)); + int (*set_lg_filemode) __P((DB_ENV *, int)); + int (*set_lg_max) __P((DB_ENV *, u_int32_t)); + int (*set_lg_regionmax) __P((DB_ENV *, u_int32_t)); + int (*set_lk_conflicts) __P((DB_ENV *, u_int8_t *, int)); + int (*set_lk_detect) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_lockers) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); + int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); + int (*set_mp_max_openfd) __P((DB_ENV *, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); + int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); + void (*set_msgcall) + __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); + void (*set_msgfile) __P((DB_ENV *, FILE *)); + int (*set_paniccall) __P((DB_ENV *, void (*)(DB_ENV *, int))); + int (*set_rep_request) __P((DB_ENV *, u_int32_t, u_int32_t)); + int (*set_rpc_server) + __P((DB_ENV *, void *, const char *, long, long, u_int32_t)); + int (*set_shm_key) __P((DB_ENV *, long)); + int (*set_thread_count) __P((DB_ENV *, u_int32_t)); + int (*set_thread_id) __P((DB_ENV *, + void (*)(DB_ENV *, pid_t *, db_threadid_t *))); + int (*set_thread_id_string) __P((DB_ENV *, + char *(*)(DB_ENV *, pid_t, db_threadid_t, char *))); + int (*set_timeout) __P((DB_ENV *, db_timeout_t, u_int32_t)); + int (*set_tmp_dir) __P((DB_ENV *, const char *)); + int (*set_tx_max) __P((DB_ENV *, u_int32_t)); + int (*set_tx_timestamp) __P((DB_ENV *, time_t *)); + int (*set_verbose) __P((DB_ENV *, u_int32_t, int)); + int (*stat_print) __P((DB_ENV *, u_int32_t)); + int (*txn_begin) __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); + int (*txn_checkpoint) __P((DB_ENV *, u_int32_t, u_int32_t, u_int32_t)); + int (*txn_recover) + __P((DB_ENV *, DB_PREPLIST *, long, long *, u_int32_t)); + int (*txn_stat) __P((DB_ENV *, DB_TXN_STAT **, u_int32_t)); + int (*txn_stat_print) __P((DB_ENV *, u_int32_t)); + /* DB_ENV PUBLIC HANDLE LIST END */ + + /* DB_ENV PRIVATE HANDLE LIST BEGIN */ + int (*prdbt) __P((DBT *, + int, const char *, void *, int (*)(void *, const void *), int)); + /* DB_ENV PRIVATE HANDLE LIST END */ + +#define DB_TEST_ELECTINIT 1 /* after __rep_elect_init */ +#define DB_TEST_ELECTVOTE1 2 /* after sending VOTE1 */ +#define DB_TEST_POSTDESTROY 3 /* after destroy op */ +#define DB_TEST_POSTLOG 4 /* after logging all pages */ +#define DB_TEST_POSTLOGMETA 5 /* after logging meta in btree */ +#define DB_TEST_POSTOPEN 6 /* after __os_open */ +#define DB_TEST_POSTSYNC 7 /* after syncing the log */ +#define DB_TEST_PREDESTROY 8 /* before destroy op */ +#define DB_TEST_PREOPEN 9 /* before __os_open */ +#define DB_TEST_RECYCLE 10 /* test rep and txn_recycle */ +#define DB_TEST_SUBDB_LOCKS 11 /* subdb locking tests */ + int test_abort; /* Abort value for testing. */ + int test_check; /* Checkpoint value for testing. */ + int test_copy; /* Copy value for testing. */ + +#define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ +#define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ +#define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ + u_int32_t flags; +}; + +#ifndef DB_DBM_HSEARCH +#define DB_DBM_HSEARCH 0 /* No historic interfaces by default. */ +#endif +#if DB_DBM_HSEARCH != 0 +/******************************************************* + * Dbm/Ndbm historic interfaces. + *******************************************************/ +typedef struct __db DBM; + +#define DBM_INSERT 0 /* Flags to dbm_store(). */ +#define DBM_REPLACE 1 + +/* + * The DB support for ndbm(3) always appends this suffix to the + * file name to avoid overwriting the user's original database. + */ +#define DBM_SUFFIX ".db" + +#if defined(_XPG4_2) +typedef struct { + char *dptr; + size_t dsize; +} datum; +#else +typedef struct { + char *dptr; + int dsize; +} datum; +#endif + +/* + * Translate NDBM calls into DB calls so that DB doesn't step on the + * application's name space. + */ +#define dbm_clearerr(a) __db_ndbm_clearerr(a) +#define dbm_close(a) __db_ndbm_close(a) +#define dbm_delete(a, b) __db_ndbm_delete(a, b) +#define dbm_dirfno(a) __db_ndbm_dirfno(a) +#define dbm_error(a) __db_ndbm_error(a) +#define dbm_fetch(a, b) __db_ndbm_fetch(a, b) +#define dbm_firstkey(a) __db_ndbm_firstkey(a) +#define dbm_nextkey(a) __db_ndbm_nextkey(a) +#define dbm_open(a, b, c) __db_ndbm_open(a, b, c) +#define dbm_pagfno(a) __db_ndbm_pagfno(a) +#define dbm_rdonly(a) __db_ndbm_rdonly(a) +#define dbm_store(a, b, c, d) \ + __db_ndbm_store(a, b, c, d) + +/* + * Translate DBM calls into DB calls so that DB doesn't step on the + * application's name space. + * + * The global variables dbrdonly, dirf and pagf were not retained when 4BSD + * replaced the dbm interface with ndbm, and are not supported here. + */ +#define dbminit(a) __db_dbm_init(a) +#define dbmclose __db_dbm_close +#if !defined(__cplusplus) +#define delete(a) __db_dbm_delete(a) +#endif +#define fetch(a) __db_dbm_fetch(a) +#define firstkey __db_dbm_firstkey +#define nextkey(a) __db_dbm_nextkey(a) +#define store(a, b) __db_dbm_store(a, b) + +/******************************************************* + * Hsearch historic interface. + *******************************************************/ +typedef enum { + FIND, ENTER +} ACTION; + +typedef struct entry { + char *key; + char *data; +} ENTRY; + +#define hcreate(a) __db_hcreate(a) +#define hdestroy __db_hdestroy +#define hsearch(a, b) __db_hsearch(a, b) + +#endif /* DB_DBM_HSEARCH */ + +#if defined(__cplusplus) +} +#endif + +/* Restore default compiler warnings */ +#ifdef _MSC_VER +#pragma warning(pop) +#endif +#endif /* !_DB_H_ */ + +/* DO NOT EDIT: automatically built by dist/s_include. */ +#ifndef _DB_EXT_PROT_IN_ +#define _DB_EXT_PROT_IN_ + +#if defined(__cplusplus) +extern "C" { +#endif + +int db_create __P((DB **, DB_ENV *, u_int32_t)); +char *db_strerror __P((int)); +int db_env_create __P((DB_ENV **, u_int32_t)); +char *db_version __P((int *, int *, int *)); +int log_compare __P((const DB_LSN *, const DB_LSN *)); +int db_env_set_func_close __P((int (*)(int))); +int db_env_set_func_dirfree __P((void (*)(char **, int))); +int db_env_set_func_dirlist __P((int (*)(const char *, char ***, int *))); +int db_env_set_func_exists __P((int (*)(const char *, int *))); +int db_env_set_func_free __P((void (*)(void *))); +int db_env_set_func_fsync __P((int (*)(int))); +int db_env_set_func_ftruncate __P((int (*)(int, off_t))); +int db_env_set_func_ioinfo __P((int (*)(const char *, int, u_int32_t *, u_int32_t *, u_int32_t *))); +int db_env_set_func_malloc __P((void *(*)(size_t))); +int db_env_set_func_map __P((int (*)(char *, size_t, int, int, void **))); +int db_env_set_func_pread __P((ssize_t (*)(int, void *, size_t, off_t))); +int db_env_set_func_pwrite __P((ssize_t (*)(int, const void *, size_t, off_t))); +int db_env_set_func_open __P((int (*)(const char *, int, ...))); +int db_env_set_func_read __P((ssize_t (*)(int, void *, size_t))); +int db_env_set_func_realloc __P((void *(*)(void *, size_t))); +int db_env_set_func_rename __P((int (*)(const char *, const char *))); +int db_env_set_func_seek __P((int (*)(int, off_t, int))); +int db_env_set_func_sleep __P((int (*)(u_long, u_long))); +int db_env_set_func_unlink __P((int (*)(const char *))); +int db_env_set_func_unmap __P((int (*)(void *, size_t))); +int db_env_set_func_write __P((ssize_t (*)(int, const void *, size_t))); +int db_env_set_func_yield __P((int (*)(void))); +int db_sequence_create __P((DB_SEQUENCE **, DB *, u_int32_t)); +#if DB_DBM_HSEARCH != 0 +int __db_ndbm_clearerr __P((DBM *)); +void __db_ndbm_close __P((DBM *)); +int __db_ndbm_delete __P((DBM *, datum)); +int __db_ndbm_dirfno __P((DBM *)); +int __db_ndbm_error __P((DBM *)); +datum __db_ndbm_fetch __P((DBM *, datum)); +datum __db_ndbm_firstkey __P((DBM *)); +datum __db_ndbm_nextkey __P((DBM *)); +DBM *__db_ndbm_open __P((const char *, int, int)); +int __db_ndbm_pagfno __P((DBM *)); +int __db_ndbm_rdonly __P((DBM *)); +int __db_ndbm_store __P((DBM *, datum, datum, int)); +int __db_dbm_close __P((void)); +int __db_dbm_delete __P((datum)); +datum __db_dbm_fetch __P((datum)); +datum __db_dbm_firstkey __P((void)); +int __db_dbm_init __P((char *)); +datum __db_dbm_nextkey __P((datum)); +int __db_dbm_store __P((datum, datum)); +#endif +#if DB_DBM_HSEARCH != 0 +int __db_hcreate __P((size_t)); +ENTRY *__db_hsearch __P((ENTRY, ACTION)); +void __db_hdestroy __P((void)); +#endif + +#if defined(__cplusplus) +} +#endif +#endif /* !_DB_EXT_PROT_IN_ */ diff --git a/db/build_wince/db_config.h b/db/build_wince/db_config.h new file mode 100644 index 000000000..09389efd5 --- /dev/null +++ b/db/build_wince/db_config.h @@ -0,0 +1,561 @@ +/* DO NOT EDIT: automatically built by dist/s_windows. */ +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +#define DB_WIN32 1 + +/* Define to 1 if you want a debugging version. */ +#if defined(_DEBUG) +#if !defined(DEBUG) +#define DEBUG 1 +#endif +#endif + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +#define HAVE_64BIT_TYPES 1 + +/* Define to 1 if you have the `abort' function. */ +/* #undef HAVE_ABORT */ + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +#define HAVE_ATOL 1 + +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_CRYPTO 1 +#endif + +/* Define to 1 if you have the `ctime_r' function. */ +/* #undef HAVE_CTIME_R */ + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_DIRENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + +/* Define to 1 if you have the `fcntl' function. */ +/* #undef HAVE_FCNTL */ + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + +/* Define to 1 if you have the `ftruncate' function. */ +/* #undef HAVE_FTRUNCATE */ + +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +/* #undef HAVE_GETCWD */ + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +/* + * Windows does not have the getopt function, but as Berkeley DB example + * programs require getopt, we handle it outside of this configuration. + */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_HASH 1 +#endif + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define to 1 if you have the `isalpha' function. */ +#define HAVE_ISALPHA 1 + +/* Define to 1 if you have the `isdigit' function. */ +#define HAVE_ISDIGIT 1 + +/* Define to 1 if you have the `isprint' function. */ +#define HAVE_ISPRINT 1 + +/* Define to 1 if you have the `localtime' function. */ +/* #undef HAVE_LOCALTIME */ + +/* Define to 1 if you have the `isspace' function. */ +#define HAVE_ISSPACE 1 + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +/* #undef HAVE_MUNMAP */ + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +/* #undef HAVE_MUTEX_PTHREADS */ + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + +/* Define to 1 if mutexes hold system resources. */ +/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ + +/* Define to 1 to configure mutexes intra-process only. */ +/* #undef HAVE_MUTEX_THREAD_ONLY */ + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +#define HAVE_MUTEX_WIN32 1 + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +#define HAVE_PRINTF 1 + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + +/* Define to 1 if building Queue access method. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_QUEUE 1 +#endif + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rand' function. */ +#define HAVE_RAND 1 + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + +/* Define to 1 if you have the `sched_yield' function. */ +/* #undef HAVE_SCHED_YIELD */ + +/* Define to 1 if you have the `select' function. */ +/* #undef HAVE_SELECT */ + +/* Define to 1 if you have the `shmget' function. */ +/* #undef HAVE_SHMGET */ + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +#define HAVE_SIMPLE_THREAD_TYPE 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +#define HAVE_STAT 1 + +/* Define to 1 if building statistics support. */ +#define HAVE_STATISTICS 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +/* #undef HAVE_STRDUP */ + +/* Define to 1 if you have the `strerror' function. */ +/* #undef HAVE_STRERROR */ + +/* Define to 1 if you have the `strftime' function. */ +/* #undef HAVE_STRFTIME */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncat' function. */ +#define HAVE_STRNCAT 1 + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +/* #undef HAVE_STRSEP */ + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +/* #undef HAVE_SYSCONF */ + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SELECT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TIME_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `time' function. */ +/* #undef HAVE_TIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_VERIFY 1 +#endif + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +#define HAVE__FSTATI64 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "Oracle Technology Network Berkeley DB forum" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB 4.6.18" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-4.6.18" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "4.6.18" + +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline __inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_wince/db_int.h b/db/build_wince/db_int.h new file mode 100644 index 000000000..157a4a65a --- /dev/null +++ b/db/build_wince/db_int.h @@ -0,0 +1,774 @@ +/* DO NOT EDIT: automatically built by dist/s_windows. */ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_int.in,v 12.58 2007/05/30 14:06:39 bostic Exp $ + */ + +#ifndef _DB_INT_H_ +#define _DB_INT_H_ + +/******************************************************* + * Berkeley DB ANSI/POSIX include files. + *******************************************************/ +#ifdef HAVE_SYSTEM_INCLUDE_FILES +#include +#ifdef DIAG_MVCC +#include +#endif +#include + +#if defined(__INCLUDE_SELECT_H) +#ifdef HAVE_SYS_SELECT_H +#include +#endif +#ifdef HAVE_VXWORKS +#include +#endif +#endif + +#if TIME_WITH_SYS_TIME +#include +#include +#else +#if HAVE_SYS_TIME_H +#include +#else +#include +#endif +#endif + +#ifdef HAVE_VXWORKS +#include +#else +#include +#endif + +#if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H +#include +#endif +#include +#include +#include +#endif + +#if defined(STDC_HEADERS) || defined(__cplusplus) +#include +#else +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" +#endif + +#include "db.h" +#include "clib_port.h" + +#include "dbinc/queue.h" +#include "dbinc/shqueue.h" + +#if defined(__cplusplus) +extern "C" { +#endif + +/******************************************************* + * General purpose constants and macros. + *******************************************************/ +#undef FALSE +#define FALSE 0 +#undef TRUE +#define TRUE (!FALSE) + +#define MEGABYTE 1048576 +#define GIGABYTE 1073741824 + +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ + +#define RECNO_OOB 0 /* Illegal record number. */ + +/* Test for a power-of-two (tests true for zero, which doesn't matter here). */ +#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0) + +/* Test for valid page sizes. */ +#define DB_MIN_PGSIZE 0x000200 /* Minimum page size (512). */ +#define DB_MAX_PGSIZE 0x010000 /* Maximum page size (65536). */ +#define IS_VALID_PAGESIZE(x) \ + (POWER_OF_TWO(x) && (x) >= DB_MIN_PGSIZE && ((x) <= DB_MAX_PGSIZE)) + +/* Minimum number of pages cached, by default. */ +#define DB_MINPAGECACHE 16 + +/* + * If we are unable to determine the underlying filesystem block size, use + * 8K on the grounds that most OS's use less than 8K for a VM page size. + */ +#define DB_DEF_IOSIZE (8 * 1024) + +/* Align an integer to a specific boundary. */ +#undef DB_ALIGN +#define DB_ALIGN(v, bound) \ + (((v) + (bound) - 1) & ~(((uintmax_t)(bound)) - 1)) + +/* Increment a pointer to a specific boundary. */ +#undef ALIGNP_INC +#define ALIGNP_INC(p, bound) \ + (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) + +/* + * Print an address as a u_long (a u_long is the largest type we can print + * portably). Most 64-bit systems have made longs 64-bits, so this should + * work. + */ +#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p)) + +/* + * Convert a pointer to a small integral value. + * + * The (u_int16_t)(uintptr_t) cast avoids warnings: the (uintptr_t) cast + * converts the value to an integral type, and the (u_int16_t) cast converts + * it to a small integral type so we don't get complaints when we assign the + * final result to an integral type smaller than uintptr_t. + */ +#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p)) +#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p)) + +/* + * There are several on-page structures that are declared to have a number of + * fields followed by a variable length array of items. The structure size + * without including the variable length array or the address of the first of + * those elements can be found using SSZ. + * + * This macro can also be used to find the offset of a structure element in a + * structure. This is used in various places to copy structure elements from + * unaligned memory references, e.g., pointers into a packed page. + * + * There are two versions because compilers object if you take the address of + * an array. + */ +#undef SSZ +#define SSZ(name, field) P_TO_UINT16(&(((name *)0)->field)) + +#undef SSZA +#define SSZA(name, field) P_TO_UINT16(&(((name *)0)->field[0])) + +/* Structure used to print flag values. */ +typedef struct __fn { + u_int32_t mask; /* Flag value. */ + const char *name; /* Flag name. */ +} FN; + +/* Set, clear and test flags. */ +#define FLD_CLR(fld, f) (fld) &= ~(f) +#define FLD_ISSET(fld, f) ((fld) & (f)) +#define FLD_SET(fld, f) (fld) |= (f) +#define F_CLR(p, f) (p)->flags &= ~(f) +#define F_ISSET(p, f) ((p)->flags & (f)) +#define F_SET(p, f) (p)->flags |= (f) +#define LF_CLR(f) ((flags) &= ~(f)) +#define LF_ISSET(f) ((flags) & (f)) +#define LF_SET(f) ((flags) |= (f)) + +/* + * Calculate a percentage. The values can overflow 32-bit integer arithmetic + * so we use floating point. + * + * When calculating a bytes-vs-page size percentage, we're getting the inverse + * of the percentage in all cases, that is, we want 100 minus the percentage we + * calculate. + */ +#define DB_PCT(v, total) \ + ((int)((total) == 0 ? 0 : ((double)(v) * 100) / (total))) +#define DB_PCT_PG(v, total, pgsize) \ + ((int)((total) == 0 ? 0 : \ + 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) + +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + +/* + * Structure used for callback message aggregation. + * + * Display values in XXX_stat_print calls. + */ +typedef struct __db_msgbuf { + char *buf; /* Heap allocated buffer. */ + char *cur; /* Current end of message. */ + size_t len; /* Allocated length of buffer. */ +} DB_MSGBUF; +#define DB_MSGBUF_INIT(a) do { \ + (a)->buf = (a)->cur = NULL; \ + (a)->len = 0; \ +} while (0) +#define DB_MSGBUF_FLUSH(dbenv, a) do { \ + if ((a)->buf != NULL) { \ + if ((a)->cur != (a)->buf) \ + __db_msg(dbenv, "%s", (a)->buf); \ + __os_free(dbenv, (a)->buf); \ + DB_MSGBUF_INIT(a); \ + } \ +} while (0) +#define STAT_FMT(msg, fmt, type, v) do { \ + DB_MSGBUF __mb; \ + DB_MSGBUF_INIT(&__mb); \ + __db_msgadd(dbenv, &__mb, fmt, (type)(v)); \ + __db_msgadd(dbenv, &__mb, "\t%s", msg); \ + DB_MSGBUF_FLUSH(dbenv, &__mb); \ +} while (0) +#define STAT_HEX(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", (u_long)(v), msg) +#define STAT_ISSET(msg, p) \ + __db_msg(dbenv, "%sSet\t%s", (p) == NULL ? "!" : " ", msg) +#define STAT_LONG(msg, v) \ + __db_msg(dbenv, "%ld\t%s", (long)(v), msg) +#define STAT_LSN(msg, lsnp) \ + __db_msg(dbenv, "%lu/%lu\t%s", \ + (u_long)(lsnp)->file, (u_long)(lsnp)->offset, msg) +#define STAT_POINTER(msg, v) \ + __db_msg(dbenv, "%#lx\t%s", P_TO_ULONG(v), msg) +#define STAT_STRING(msg, p) do { \ + const char *__p = p; /* p may be a function call. */ \ + __db_msg(dbenv, "%s\t%s", __p == NULL ? "!Set" : __p, msg); \ +} while (0) +#define STAT_ULONG(msg, v) \ + __db_msg(dbenv, "%lu\t%s", (u_long)(v), msg) + +/* + * There are quite a few places in Berkeley DB where we want to initialize + * a DBT from a string or other random pointer type, using a length typed + * to size_t in most cases. This macro avoids a lot of casting. The macro + * comes in two flavors because we often want to clear the DBT first. + */ +#define DB_SET_DBT(dbt, d, s) do { \ + (dbt).data = (void *)(d); \ + (dbt).size = (u_int32_t)(s); \ +} while (0) +#define DB_INIT_DBT(dbt, d, s) do { \ + memset(&(dbt), 0, sizeof(dbt)); \ + DB_SET_DBT(dbt, d, s); \ +} while (0) + +/******************************************************* + * API return values + *******************************************************/ +/* + * Return values that are OK for each different call. Most calls have a + * standard 'return of 0 is only OK value', but some, like db->get have + * DB_NOTFOUND as a return value, but it really isn't an error. + */ +#define DB_RETOK_STD(ret) ((ret) == 0) +#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) == DB_KEYEMPTY || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST || \ + (ret) == DB_NOTFOUND) +#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) +#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) +#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) +#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) +#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ + (ret) == DB_REP_IGNORE || \ + (ret) == DB_REP_ISPERM || \ + (ret) == DB_REP_NEWMASTER || \ + (ret) == DB_REP_NEWSITE || \ + (ret) == DB_REP_NOTPERM) + +/* Find a reasonable operation-not-supported error. */ +#ifdef EOPNOTSUPP +#define DB_OPNOTSUP EOPNOTSUPP +#else +#ifdef ENOTSUP +#define DB_OPNOTSUP ENOTSUP +#else +#define DB_OPNOTSUP EINVAL +#endif +#endif + +/******************************************************* + * Files. + *******************************************************/ +/* + * We use 1024 as the maximum path length. It's too hard to figure out what + * the real path length is, as it was traditionally stored in , + * and that file isn't always available. + */ +#define DB_MAXPATHLEN 1024 + +#define PATH_DOT "." /* Current working directory. */ + /* Path separator character(s). */ +#define PATH_SEPARATOR "\\/:" + +/******************************************************* + * Environment. + *******************************************************/ +/* Type passed to __db_appname(). */ +typedef enum { + DB_APP_NONE=0, /* No type (region). */ + DB_APP_DATA, /* Data file. */ + DB_APP_LOG, /* Log file. */ + DB_APP_TMP /* Temporary file. */ +} APPNAME; + +/* + * A set of macros to check if various functionality has been configured. + * + * ALIVE_ON The is_alive function is configured. + * CDB_LOCKING CDB product locking. + * CRYPTO_ON Security has been configured. + * LOCKING_ON Locking has been configured. + * LOGGING_ON Logging has been configured. + * MUTEX_ON Mutexes have been configured. + * MPOOL_ON Memory pool has been configured. + * REP_ON Replication has been configured. + * RPC_ON RPC has been configured. + * TXN_ON Transactions have been configured. + * + * REP_ON is more complex than most: if the BDB library was compiled without + * replication support, dbenv->rep_handle will be NULL; if the BDB library + * has replication support, but it was not configured, the region reference + * will be NULL. + */ +#define ALIVE_ON(dbenv) ((dbenv)->is_alive != NULL) +#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_CDB) +#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle != NULL) +#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != NULL) +#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != NULL) +#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NULL) +#define MUTEX_ON(dbenv) ((dbenv)->mutex_handle != NULL) +#define REP_ON(dbenv) \ + ((dbenv)->rep_handle != NULL && (dbenv)->rep_handle->region != NULL) +#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL) +#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL) + +/* + * STD_LOCKING Standard locking, that is, locking was configured and CDB + * was not. We do not do locking in off-page duplicate trees, + * so we check for that in the cursor first. + */ +#define STD_LOCKING(dbc) \ + (!F_ISSET(dbc, DBC_OPD) && \ + !CDB_LOCKING((dbc)->dbp->dbenv) && LOCKING_ON((dbc)->dbp->dbenv)) + +/* + * IS_RECOVERING: The system is running recovery. + */ +#define IS_RECOVERING(dbenv) \ + (LOGGING_ON(dbenv) && F_ISSET((dbenv)->lg_handle, DBLOG_RECOVER)) + +/* Initialization methods are often illegal before/after open is called. */ +#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 1)); +#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \ + if (!F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + return (__db_mi_open(dbenv, name, 0)); + +/* We're not actually user hostile, honest. */ +#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) \ + if (handle == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_REQUIRES_CONFIG_XX(dbenv, handle, i, flags) \ + if ((dbenv)->handle->region == NULL) \ + return (__db_env_config(dbenv, i, flags)); +#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags) \ + if (F_ISSET((dbenv), DB_ENV_OPEN_CALLED)) \ + ENV_REQUIRES_CONFIG(dbenv, handle, i, flags) + +#define ENV_ENTER(dbenv, ip) do { \ + int __ret; \ + if ((dbenv)->thr_hashtab == NULL) \ + ip = NULL; \ + else { \ + if ((__ret = \ + __env_set_state(dbenv, &(ip), THREAD_ACTIVE)) != 0) \ + return (__ret); \ + } \ +} while (0) + +#ifdef DIAGNOSTIC +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) { \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ + (ip)->dbth_state = THREAD_OUT; \ + } \ +} while (0) +#else +#define ENV_LEAVE(dbenv, ip) do { \ + if ((ip) != NULL) \ + (ip)->dbth_state = THREAD_OUT; \ +} while (0) +#endif +#ifdef DIAGNOSTIC +#define CHECK_THREAD(dbenv) do { \ + DB_THREAD_INFO *__ip; \ + if ((dbenv)->thr_hashtab != NULL) { \ + (void)__env_set_state(dbenv, &__ip, THREAD_DIAGNOSTIC); \ + DB_ASSERT(dbenv, \ + __ip != NULL && __ip->dbth_state != THREAD_OUT); \ + } \ +} while (0) +#ifdef HAVE_STATISTICS +#define CHECK_MTX_THREAD(dbenv, mtx) do { \ + if (mtx->alloc_id != MTX_MUTEX_REGION && \ + mtx->alloc_id != MTX_ENV_REGION && \ + mtx->alloc_id != MTX_APPLICATION) \ + CHECK_THREAD(dbenv); \ +} while (0) +#else +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif +#else +#define CHECK_THREAD(dbenv) +#define CHECK_MTX_THREAD(dbenv, mtx) +#endif + +typedef enum { + THREAD_SLOT_NOT_IN_USE=0, + THREAD_OUT, + THREAD_ACTIVE, + THREAD_BLOCKED +#ifdef DIAGNOSTIC + , THREAD_DIAGNOSTIC +#endif +} DB_THREAD_STATE; + +typedef struct __db_thread_info { + pid_t dbth_pid; + db_threadid_t dbth_tid; + DB_THREAD_STATE dbth_state; + SH_TAILQ_ENTRY dbth_links; +} DB_THREAD_INFO; + +typedef struct __env_thread_info { + u_int32_t thr_count; + u_int32_t thr_max; + u_int32_t thr_nbucket; + roff_t thr_hashoff; +} THREAD_INFO; + +#define DB_EVENT(dbenv, e, einfo) do { \ + if ((dbenv)->db_event_func != NULL) \ + (dbenv)->db_event_func(dbenv, e, einfo); \ +} while (0) + +/******************************************************* + * Database Access Methods. + *******************************************************/ +/* + * DB_IS_THREADED -- + * The database handle is free-threaded (was opened with DB_THREAD). + */ +#define DB_IS_THREADED(dbp) \ + ((dbp)->mutex != MUTEX_INVALID) + +/* Initialization methods are often illegal before/after open is called. */ +#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \ + if (F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 1)); +#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \ + if (!F_ISSET((dbp), DB_AM_OPEN_CALLED)) \ + return (__db_mi_open((dbp)->dbenv, name, 0)); +/* Some initialization methods are illegal if environment isn't local. */ +#define DB_ILLEGAL_IN_ENV(dbp, name) \ + if (!F_ISSET((dbp)->dbenv, DB_ENV_DBLOCAL)) \ + return (__db_mi_env((dbp)->dbenv, name)); +#define DB_ILLEGAL_METHOD(dbp, flags) { \ + int __ret; \ + if ((__ret = __dbh_am_chk(dbp, flags)) != 0) \ + return (__ret); \ +} + +/* + * Common DBC->internal fields. Each access method adds additional fields + * to this list, but the initial fields are common. + */ +#define __DBC_INTERNAL \ + DBC *opd; /* Off-page duplicate cursor. */\ + \ + void *page; /* Referenced page. */ \ + db_pgno_t root; /* Tree root. */ \ + db_pgno_t pgno; /* Referenced page number. */ \ + db_indx_t indx; /* Referenced key item index. */\ + \ + DB_LOCK lock; /* Cursor lock. */ \ + db_lockmode_t lock_mode; /* Lock mode. */ + +struct __dbc_internal { + __DBC_INTERNAL +}; + +/* Actions that __db_master_update can take. */ +typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_action; + +/* + * Access-method-common macro for determining whether a cursor + * has been initialized. + */ +#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno != PGNO_INVALID) + +/* Free the callback-allocated buffer, if necessary, hanging off of a DBT. */ +#define FREE_IF_NEEDED(dbenv, dbt) \ + if (F_ISSET((dbt), DB_DBT_APPMALLOC)) { \ + __os_ufree((dbenv), (dbt)->data); \ + F_CLR((dbt), DB_DBT_APPMALLOC); \ + } + +/* + * Use memory belonging to object "owner" to return the results of + * any no-DBT-flag get ops on cursor "dbc". + */ +#define SET_RET_MEM(dbc, owner) \ + do { \ + (dbc)->rskey = &(owner)->my_rskey; \ + (dbc)->rkey = &(owner)->my_rkey; \ + (dbc)->rdata = &(owner)->my_rdata; \ + } while (0) + +/* Use the return-data memory src is currently set to use in dest as well. */ +#define COPY_RET_MEM(src, dest) \ + do { \ + (dest)->rskey = (src)->rskey; \ + (dest)->rkey = (src)->rkey; \ + (dest)->rdata = (src)->rdata; \ + } while (0) + +/* Reset the returned-memory pointers to their defaults. */ +#define RESET_RET_MEM(dbc) \ + do { \ + (dbc)->rskey = &(dbc)->my_rskey; \ + (dbc)->rkey = &(dbc)->my_rkey; \ + (dbc)->rdata = &(dbc)->my_rdata; \ + } while (0) + +/******************************************************* + * Mpool. + *******************************************************/ +/* + * File types for DB access methods. Negative numbers are reserved to DB. + */ +#define DB_FTYPE_SET -1 /* Call pgin/pgout functions. */ +#define DB_FTYPE_NOTSET 0 /* Don't call... */ +#define DB_LSN_OFF_NOTSET -1 /* Not yet set. */ +#define DB_CLEARLEN_NOTSET UINT32_MAX /* Not yet set. */ + +/* Structure used as the DB pgin/pgout pgcookie. */ +typedef struct __dbpginfo { + size_t db_pagesize; /* Underlying page size. */ + u_int32_t flags; /* Some DB_AM flags needed. */ + DBTYPE type; /* DB type */ +} DB_PGINFO; + +/******************************************************* + * Log. + *******************************************************/ +/* Initialize an LSN to 'zero'. */ +#define ZERO_LSN(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 0; \ +} while (0) +#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN).offset == 0) + +#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN).offset == 0) +#define INIT_LSN(LSN) do { \ + (LSN).file = 1; \ + (LSN).offset = 0; \ +} while (0) + +#define MAX_LSN(LSN) do { \ + (LSN).file = UINT32_MAX; \ + (LSN).offset = UINT32_MAX; \ +} while (0) +#define IS_MAX_LSN(LSN) \ + ((LSN).file == UINT32_MAX && (LSN).offset == UINT32_MAX) + +/* If logging is turned off, smash the lsn. */ +#define LSN_NOT_LOGGED(LSN) do { \ + (LSN).file = 0; \ + (LSN).offset = 1; \ +} while (0) +#define IS_NOT_LOGGED_LSN(LSN) \ + ((LSN).file == 0 && (LSN).offset == 1) + +/* + * LOG_COMPARE -- compare two LSNs. + */ + +#define LOG_COMPARE(lsn0, lsn1) \ + ((lsn0)->file != (lsn1)->file ? \ + ((lsn0)->file < (lsn1)->file ? -1 : 1) : \ + ((lsn0)->offset != (lsn1)->offset ? \ + ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) + +/******************************************************* + * Txn. + *******************************************************/ +#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSET((C)->txn, TXN_NOWAIT)) +#define NOWAIT_FLAG(txn) \ + ((txn) != NULL && F_ISSET((txn), TXN_NOWAIT) ? DB_LOCK_NOWAIT : 0) +#define IS_REAL_TXN(txn) \ + ((txn) != NULL && !F_ISSET(txn, TXN_CDSGROUP)) +#define IS_SUBTRANSACTION(txn) \ + ((txn) != NULL && (txn)->parent != NULL) + +/******************************************************* + * Crypto. + *******************************************************/ +#define DB_IV_BYTES 16 /* Bytes per IV */ +#define DB_MAC_KEY 20 /* Bytes per MAC checksum */ + +/******************************************************* + * Secondaries over RPC. + *******************************************************/ +#ifdef CONFIG_TEST +/* + * These are flags passed to DB->associate calls by the Tcl API if running + * over RPC. The RPC server will mask out these flags before making the real + * DB->associate call. + * + * These flags must coexist with the valid flags to DB->associate (currently + * DB_AUTO_COMMIT and DB_CREATE). DB_AUTO_COMMIT is in the group of + * high-order shared flags (0xff000000), and DB_CREATE is in the low-order + * group (0x00000fff), so we pick a range in between. + */ +#define DB_RPC2ND_MASK 0x00f00000 /* Reserved bits. */ + +#define DB_RPC2ND_REVERSEDATA 0x00100000 /* callback_n(0) _s_reversedata. */ +#define DB_RPC2ND_NOOP 0x00200000 /* callback_n(1) _s_noop */ +#define DB_RPC2ND_CONCATKEYDATA 0x00300000 /* callback_n(2) _s_concatkeydata */ +#define DB_RPC2ND_CONCATDATAKEY 0x00400000 /* callback_n(3) _s_concatdatakey */ +#define DB_RPC2ND_REVERSECONCAT 0x00500000 /* callback_n(4) _s_reverseconcat */ +#define DB_RPC2ND_TRUNCDATA 0x00600000 /* callback_n(5) _s_truncdata */ +#define DB_RPC2ND_CONSTANT 0x00700000 /* callback_n(6) _s_constant */ +#define DB_RPC2ND_GETZIP 0x00800000 /* sj_getzip */ +#define DB_RPC2ND_GETNAME 0x00900000 /* sj_getname */ +#endif + +/******************************************************* + * Forward structure declarations. + *******************************************************/ +struct __db_reginfo_t; typedef struct __db_reginfo_t REGINFO; +struct __db_txnhead; typedef struct __db_txnhead DB_TXNHEAD; +struct __db_txnlist; typedef struct __db_txnlist DB_TXNLIST; +struct __vrfy_childinfo;typedef struct __vrfy_childinfo VRFY_CHILDINFO; +struct __vrfy_dbinfo; typedef struct __vrfy_dbinfo VRFY_DBINFO; +struct __vrfy_pageinfo; typedef struct __vrfy_pageinfo VRFY_PAGEINFO; + +typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; + +#if defined(__cplusplus) +} +#endif + +/******************************************************* + * Remaining general DB includes. + *******************************************************/ + + +#include "dbinc/globals.h" +#include "dbinc/clock.h" +#include "dbinc/debug.h" +#include "dbinc/region.h" +#include "dbinc_auto/env_ext.h" +#include "dbinc/mutex.h" +#include "dbinc/os.h" +#ifdef HAVE_REPLICATION_THREADS +#include "dbinc/repmgr.h" +#endif +#include "dbinc/rep.h" +#include "dbinc_auto/clib_ext.h" +#include "dbinc_auto/common_ext.h" + +/******************************************************* + * Remaining Log. + * These need to be defined after the general includes + * because they need rep.h from above. + *******************************************************/ +/* + * Test if the environment is currently logging changes. If we're in recovery + * or we're a replication client, we don't need to log changes because they're + * already in the log, even though we have a fully functional log system. + */ +#define DBENV_LOGGING(dbenv) \ + (LOGGING_ON(dbenv) && !IS_REP_CLIENT(dbenv) && \ + (!IS_RECOVERING(dbenv))) + +/* + * Test if we need to log a change. By default, we don't log operations without + * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. + * This is because we want to get log records for read/write operations, and, if + * we are trying to debug something, more information is always better. + * + * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; + * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING + * is true. + * + * We explicitly use LOGGING_ON/IS_REP_CLIENT here because we don't want to pull + * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and + * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. + * + * If we're not in recovery (master - doing an abort or a client applying + * a txn), then a client's only path through here is on an internal + * operation, and a master's only path through here is a transactional + * operation. Detect if either is not the case. + */ +#if defined(DIAGNOSTIC) || defined(DEBUG_ROP) || defined(DEBUG_WOP) +#define DBC_LOGGING(dbc) __dbc_logging(dbc) +#else +#define DBC_LOGGING(dbc) \ + ((dbc)->txn != NULL && LOGGING_ON((dbc)->dbp->dbenv) && \ + !F_ISSET((dbc), DBC_RECOVER) && !IS_REP_CLIENT((dbc)->dbp->dbenv)) +#endif + +#endif /* !_DB_INT_H_ */ diff --git a/db/build_wince/db_small.vcp b/db/build_wince/db_small.vcp new file mode 100644 index 000000000..504cd8c88 --- /dev/null +++ b/db/build_wince/db_small.vcp @@ -0,0 +1,858 @@ +# Microsoft eMbedded Visual Tools Project File - Name="db_small" - Package Owner=<4> +# Microsoft eMbedded Visual Tools Generated Build File, Format Version 6.02 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (WCE ARMV4) Static Library" 0xa304 +# TARGTYPE "Win32 (WCE emulator) Static Library" 0xa604 + +CFG=db_small - Win32 (WCE emulator) Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "db_small.vcn". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "db_small.vcn" CFG="db_small - Win32 (WCE emulator) Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "db_small - Win32 (WCE emulator) Release" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "db_small - Win32 (WCE emulator) Debug" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "db_small - Win32 (WCE ARMV4) Release" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE "db_small - Win32 (WCE ARMV4) Debug" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +# PROP ATL_Project 2 + +!IF "$(CFG)" == "db_small - Win32 (WCE emulator) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_EMU" +# PROP BASE Intermediate_Dir "Release_EMU/db_small" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_EMU" +# PROP Intermediate_Dir "Release_EMU/db_small" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /Yu"stdafx.h" /Gs8192 /D "HAVE_SMALLBUILD" /GF /O2 /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 /D "HAVE_SMALLBUILD" /GF /O2 /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_EMU/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_EMU/libdb_small46s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_small - Win32 (WCE emulator) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_EMU" +# PROP BASE Intermediate_Dir "Debug_EMU/db_small" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_EMU" +# PROP Intermediate_Dir "Debug_EMU/db_small" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /Yu"stdafx.h" /Gs8192 /D "HAVE_SMALLBUILD" /GF /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 /D "HAVE_SMALLBUILD" /GF /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_EMU/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_EMU/libdb_small46sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_small - Win32 (WCE ARMV4) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_ARMV4" +# PROP BASE Intermediate_Dir "Release_ARMV4/db_small" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_ARMV4" +# PROP Intermediate_Dir "Release_ARMV4/db_small" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /O2 /M$(CECrtMT) /D "HAVE_SMALLBUILD" /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /O2 /M$(CECrtMT) /D "HAVE_SMALLBUILD" /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_ARMV4/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_ARMV4/libdb_small46s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_small - Win32 (WCE ARMV4) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_ARMV4" +# PROP BASE Intermediate_Dir "Debug_ARMV4/db_small" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_ARMV4" +# PROP Intermediate_Dir "Debug_ARMV4/db_small" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /M$(CECrtMTDebug) /D "HAVE_SMALLBUILD" /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /M$(CECrtMTDebug) /D "HAVE_SMALLBUILD" /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_ARMV4/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_ARMV4/libdb_small46sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ENDIF + +# Begin Target + +# Name "db_small - Win32 (WCE emulator) Release" +# Name "db_small - Win32 (WCE emulator) Debug" +# Name "db_small - Win32 (WCE ARMV4) Release" +# Name "db_small - Win32 (WCE ARMV4) Debug" +# Begin Source File + +SOURCE=..\btree\bt_compact.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_compare.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_conv.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_curadj.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_cursor.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_delete.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_method.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_open.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_put.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_rec.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_reclaim.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_recno.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_rsearch.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_search.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_split.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_stat.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_upgrade.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_verify.c +# End Source File +# Begin Source File + +SOURCE=..\btree\btree_auto.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strdup.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strerror.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strsep.c +# End Source File +# Begin Source File + +SOURCE=..\common\crypto_stub.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_byteorder.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_err.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_getlong.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_idspace.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_log2.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File + +SOURCE=..\common\mkpath.c +# End Source File +# Begin Source File + +SOURCE=..\common\util_cache.c +# End Source File +# Begin Source File + +SOURCE=..\common\util_log.c +# End Source File +# Begin Source File + +SOURCE=..\db\crdel_auto.c +# End Source File +# Begin Source File + +SOURCE=..\db\crdel_rec.c +# End Source File +# Begin Source File + +SOURCE=..\db\db.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_am.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_auto.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_cam.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_cds.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_conv.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_dispatch.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_dup.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_iface.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_join.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_meta.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_method.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_open.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_overflow.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_pr.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_rec.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_reclaim.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_remove.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_rename.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_ret.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_setid.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_setlsn.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_stati.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_truncate.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_upg.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_upg_opd.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_vrfy_stub.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_auto.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_rec.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_stat.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_util.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_config.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_file.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_globals.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_method.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_open.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_recover.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_region.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_register.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_stat.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fileops_auto.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_basic.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_rec.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_util.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_func.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_stub.c +# End Source File +# Begin Source File + +SOURCE=..\hmac\hmac.c +# End Source File +# Begin Source File + +SOURCE=..\hmac\sha1.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_deadlock.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_id.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_list.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_method.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_region.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_stat.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_timer.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_util.c +# End Source File +# Begin Source File + +SOURCE=..\log\log.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_archive.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_compare.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_debug.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_get.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_method.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_put.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_bh.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fget.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fmethod.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fopen.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fput.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fset.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_method.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_mvcc.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_region.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_register.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_sync.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_trickle.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_method.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_region.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_win32.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_abort.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_fzero.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_oflags.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_pid.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_region.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_root.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_rpath.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_tmpdir.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_uid.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\ce_ctime.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\ce_time.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_abs.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_clock.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_config.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_dir.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_errno.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_fid.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_flock.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_fsync.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_getenv.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_handle.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_map.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_mkdir.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_open.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_rename.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_rw.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_seek.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_sleep.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_spin.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_stat.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_truncate.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_unlink.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_yield.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_stub.c +# End Source File +# Begin Source File + +SOURCE=..\rep\rep_stub.c +# End Source File +# Begin Source File + +SOURCE=..\repmgr\repmgr_stub.c +# End Source File +# Begin Source File + +SOURCE=..\sequence\seq_stat.c +# End Source File +# Begin Source File + +SOURCE=..\sequence\sequence.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_auto.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_chkpt.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_method.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_rec.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_recover.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_region.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_stat.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_util.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa_db.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa_map.c +# End Source File +# End Target +# End Project diff --git a/db/build_wince/db_small.vcproj b/db/build_wince/db_small.vcproj new file mode 100644 index 000000000..38432134f --- /dev/null +++ b/db/build_wince/db_small.vcproj @@ -0,0 +1,7442 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/db/build_wince/db_static.vcp b/db/build_wince/db_static.vcp new file mode 100644 index 000000000..f15968752 --- /dev/null +++ b/db/build_wince/db_static.vcp @@ -0,0 +1,970 @@ +# Microsoft eMbedded Visual Tools Project File - Name="db_static" - Package Owner=<4> +# Microsoft eMbedded Visual Tools Generated Build File, Format Version 6.02 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (WCE ARMV4) Static Library" 0xa304 +# TARGTYPE "Win32 (WCE emulator) Static Library" 0xa604 + +CFG=db_static - Win32 (WCE emulator) Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "db_static.vcn". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "db_static.vcn" CFG="db_static - Win32 (WCE emulator) Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "db_static - Win32 (WCE emulator) Release" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "db_static - Win32 (WCE emulator) Debug" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "db_static - Win32 (WCE ARMV4) Release" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE "db_static - Win32 (WCE ARMV4) Debug" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +# PROP ATL_Project 2 + +!IF "$(CFG)" == "db_static - Win32 (WCE emulator) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_EMU" +# PROP BASE Intermediate_Dir "Release_EMU/db_static" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_EMU" +# PROP Intermediate_Dir "Release_EMU/db_static" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /Yu"stdafx.h" /Gs8192 /GF /O2 /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 /GF /O2 /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_EMU/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_EMU/libdb46s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_static - Win32 (WCE emulator) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_EMU" +# PROP BASE Intermediate_Dir "Debug_EMU/db_static" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_EMU" +# PROP Intermediate_Dir "Debug_EMU/db_static" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /Yu"stdafx.h" /Gs8192 /GF /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 /GF /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_EMU/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_EMU/libdb46sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_static - Win32 (WCE ARMV4) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_ARMV4" +# PROP BASE Intermediate_Dir "Release_ARMV4/db_static" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_ARMV4" +# PROP Intermediate_Dir "Release_ARMV4/db_static" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /O2 /M$(CECrtMT) /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /O2 /M$(CECrtMT) /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_ARMV4/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_ARMV4/libdb46s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "db_static - Win32 (WCE ARMV4) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_ARMV4" +# PROP BASE Intermediate_Dir "Debug_ARMV4/db_static" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_ARMV4" +# PROP Intermediate_Dir "Debug_ARMV4/db_static" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /M$(CECrtMTDebug) /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /M$(CECrtMTDebug) /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_ARMV4/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_ARMV4/libdb46sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ENDIF + +# Begin Target + +# Name "db_static - Win32 (WCE emulator) Release" +# Name "db_static - Win32 (WCE emulator) Debug" +# Name "db_static - Win32 (WCE ARMV4) Release" +# Name "db_static - Win32 (WCE ARMV4) Debug" +# Begin Source File + +SOURCE=..\btree\bt_compact.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_compare.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_conv.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_curadj.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_cursor.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_delete.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_method.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_open.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_put.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_rec.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_reclaim.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_recno.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_rsearch.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_search.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_split.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_stat.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_upgrade.c +# End Source File +# Begin Source File + +SOURCE=..\btree\bt_verify.c +# End Source File +# Begin Source File + +SOURCE=..\btree\btree_auto.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strdup.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strerror.c +# End Source File +# Begin Source File + +SOURCE=..\clib\strsep.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_byteorder.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_err.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_getlong.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_idspace.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_log2.c +# End Source File +# Begin Source File + +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File + +SOURCE=..\common\mkpath.c +# End Source File +# Begin Source File + +SOURCE=..\common\util_cache.c +# End Source File +# Begin Source File + +SOURCE=..\common\util_log.c +# End Source File +# Begin Source File + +SOURCE=..\crypto\aes_method.c +# End Source File +# Begin Source File + +SOURCE=..\crypto\crypto.c +# End Source File +# Begin Source File + +SOURCE=..\crypto\mersenne\mt19937db.c +# End Source File +# Begin Source File + +SOURCE=..\crypto\rijndael\rijndael-alg-fst.c +# End Source File +# Begin Source File + +SOURCE=..\crypto\rijndael\rijndael-api-fst.c +# End Source File +# Begin Source File + +SOURCE=..\db\crdel_auto.c +# End Source File +# Begin Source File + +SOURCE=..\db\crdel_rec.c +# End Source File +# Begin Source File + +SOURCE=..\db\db.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_am.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_auto.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_cam.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_cds.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_conv.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_dispatch.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_dup.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_iface.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_join.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_meta.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_method.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_open.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_overflow.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_ovfl_vrfy.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_pr.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_rec.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_reclaim.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_remove.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_rename.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_ret.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_setid.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_setlsn.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_stati.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_truncate.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_upg.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_upg_opd.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_vrfy.c +# End Source File +# Begin Source File + +SOURCE=..\db\db_vrfyutil.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_auto.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_rec.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_stat.c +# End Source File +# Begin Source File + +SOURCE=..\dbreg\dbreg_util.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_config.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_file.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_globals.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_method.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_open.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_recover.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_region.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_register.c +# End Source File +# Begin Source File + +SOURCE=..\env\env_stat.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fileops_auto.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_basic.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_rec.c +# End Source File +# Begin Source File + +SOURCE=..\fileops\fop_util.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_auto.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_conv.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_dup.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_func.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_meta.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_method.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_open.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_page.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_rec.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_reclaim.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_stat.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_upgrade.c +# End Source File +# Begin Source File + +SOURCE=..\hash\hash_verify.c +# End Source File +# Begin Source File + +SOURCE=..\hmac\hmac.c +# End Source File +# Begin Source File + +SOURCE=..\hmac\sha1.c +# End Source File +# Begin Source File + +SOURCE=..\hsearch\hsearch.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_deadlock.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_id.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_list.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_method.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_region.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_stat.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_timer.c +# End Source File +# Begin Source File + +SOURCE=..\lock\lock_util.c +# End Source File +# Begin Source File + +SOURCE=..\log\log.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_archive.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_compare.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_debug.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_get.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_method.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_put.c +# End Source File +# Begin Source File + +SOURCE=..\log\log_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_bh.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fget.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fmethod.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fopen.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fput.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_fset.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_method.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_mvcc.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_region.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_register.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_sync.c +# End Source File +# Begin Source File + +SOURCE=..\mp\mp_trickle.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_method.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_region.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_stat.c +# End Source File +# Begin Source File + +SOURCE=..\mutex\mut_win32.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_abort.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_alloc.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_fzero.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_oflags.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_pid.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_region.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_root.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_rpath.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_tmpdir.c +# End Source File +# Begin Source File + +SOURCE=..\os\os_uid.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\ce_ctime.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\ce_time.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_abs.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_clock.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_config.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_dir.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_errno.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_fid.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_flock.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_fsync.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_getenv.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_handle.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_map.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_mkdir.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_open.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_rename.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_rw.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_seek.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_sleep.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_spin.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_stat.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_truncate.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_unlink.c +# End Source File +# Begin Source File + +SOURCE=..\os_windows\os_yield.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_auto.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_conv.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_files.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_method.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_open.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_rec.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_stat.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_upgrade.c +# End Source File +# Begin Source File + +SOURCE=..\qam\qam_verify.c +# End Source File +# Begin Source File + +SOURCE=..\rep\rep_stub.c +# End Source File +# Begin Source File + +SOURCE=..\repmgr\repmgr_stub.c +# End Source File +# Begin Source File + +SOURCE=..\sequence\seq_stat.c +# End Source File +# Begin Source File + +SOURCE=..\sequence\sequence.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_auto.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_chkpt.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_failchk.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_method.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_rec.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_recover.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_region.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_stat.c +# End Source File +# Begin Source File + +SOURCE=..\txn\txn_util.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa_db.c +# End Source File +# Begin Source File + +SOURCE=..\xa\xa_map.c +# End Source File +# End Target +# End Project diff --git a/db/build_wince/db_static.vcproj b/db/build_wince/db_static.vcproj new file mode 100644 index 000000000..1f48be4b0 --- /dev/null +++ b/db/build_wince/db_static.vcproj @@ -0,0 +1,8562 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/db/build_wince/errno.h b/db/build_wince/errno.h new file mode 100644 index 000000000..935efcce2 --- /dev/null +++ b/db/build_wince/errno.h @@ -0,0 +1,188 @@ +/*- + * Copyright (c) 1982, 1986, 1989, 1993 + * The Regents of the University of California. All rights reserved. + * (c) UNIX System Laboratories, Inc. + * All or some portions of this file are derived from material licensed + * to the University of California by American Telephone and Telegraph + * Co. or Unix System Laboratories, Inc. and are reproduced herein with + * the permission of UNIX System Laboratories, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)errno.h 8.5 (Berkeley) 1/21/94 + * FreeBSD: /repoman/r/ncvs/src/sys/sys/errno.h,v 1.28 2005/04/02 12:33:28 das Exp $ + * + * $Id: errno.h,v 1.4 2006/11/09 14:23:11 bostic Exp $ + */ + +#ifndef _SYS_ERRNO_H_ +#define _SYS_ERRNO_H_ + +#undef errno +#define errno DB_GLOBAL(db_errno) + +#define EPERM 1 /* Operation not permitted */ +#define ENOENT 2 /* No such file or directory */ +#define ESRCH 3 /* No such process */ +#define EINTR 4 /* Interrupted system call */ +#define EIO 5 /* Input/output error */ +#define ENXIO 6 /* Device not configured */ +#define E2BIG 7 /* Argument list too long */ +#define ENOEXEC 8 /* Exec format error */ +#define EBADF 9 /* Bad file descriptor */ +#define ECHILD 10 /* No child processes */ +#define EDEADLK 11 /* Resource deadlock avoided */ + /* 11 was EAGAIN */ +#define ENOMEM 12 /* Cannot allocate memory */ +#define EACCES 13 /* Permission denied */ +#define EFAULT 14 /* Bad address */ +#ifndef _POSIX_SOURCE +#define ENOTBLK 15 /* Block device required */ +#endif +#define EBUSY 16 /* Device busy */ +#define EEXIST 17 /* File exists */ +#define EXDEV 18 /* Cross-device link */ +#define ENODEV 19 /* Operation not supported by device */ +#define ENOTDIR 20 /* Not a directory */ +#define EISDIR 21 /* Is a directory */ +#define EINVAL 22 /* Invalid argument */ +#define ENFILE 23 /* Too many open files in system */ +#define EMFILE 24 /* Too many open files */ +#define ENOTTY 25 /* Inappropriate ioctl for device */ +#ifndef _POSIX_SOURCE +#define ETXTBSY 26 /* Text file busy */ +#endif +#define EFBIG 27 /* File too large */ +#define ENOSPC 28 /* No space left on device */ +#define ESPIPE 29 /* Illegal seek */ +#define EROFS 30 /* Read-only filesystem */ +#define EMLINK 31 /* Too many links */ +#define EPIPE 32 /* Broken pipe */ + +/* math software */ +#define EDOM 33 /* Numerical argument out of domain */ +#define ERANGE 34 /* Result too large */ + +/* non-blocking and interrupt i/o */ +#define EAGAIN 35 /* Resource temporarily unavailable */ +#ifndef _POSIX_SOURCE +#define EWOULDBLOCK EAGAIN /* Operation would block */ +#define EINPROGRESS 36 /* Operation now in progress */ + +#ifndef EALREADY /* BREW already has an EALREADY. */ +#define EALREADY 37 /* Operation already in progress */ +#endif + +/* ipc/network software -- argument errors */ +#define ENOTSOCK 38 /* Socket operation on non-socket */ +#define EDESTADDRREQ 39 /* Destination address required */ +#define EMSGSIZE 40 /* Message too long */ +#define EPROTOTYPE 41 /* Protocol wrong type for socket */ +#define ENOPROTOOPT 42 /* Protocol not available */ +#define EPROTONOSUPPORT 43 /* Protocol not supported */ +#define ESOCKTNOSUPPORT 44 /* Socket type not supported */ +#define EOPNOTSUPP 45 /* Operation not supported */ +#define ENOTSUP EOPNOTSUPP /* Operation not supported */ +#define EPFNOSUPPORT 46 /* Protocol family not supported */ +#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */ +#define EADDRINUSE 48 /* Address already in use */ +#define EADDRNOTAVAIL 49 /* Can't assign requested address */ + +/* ipc/network software -- operational errors */ +#define ENETDOWN 50 /* Network is down */ +#define ENETUNREACH 51 /* Network is unreachable */ +#define ENETRESET 52 /* Network dropped connection on reset */ +#define ECONNABORTED 53 /* Software caused connection abort */ +#define ECONNRESET 54 /* Connection reset by peer */ +#define ENOBUFS 55 /* No buffer space available */ +#define EISCONN 56 /* Socket is already connected */ +#define ENOTCONN 57 /* Socket is not connected */ +#define ESHUTDOWN 58 /* Can't send after socket shutdown */ +#define ETOOMANYREFS 59 /* Too many references: can't splice */ +#define ETIMEDOUT 60 /* Operation timed out */ +#define ECONNREFUSED 61 /* Connection refused */ + +#define ELOOP 62 /* Too many levels of symbolic links */ +#endif /* _POSIX_SOURCE */ +#define ENAMETOOLONG 63 /* File name too long */ + +/* should be rearranged */ +#ifndef _POSIX_SOURCE +#define EHOSTDOWN 64 /* Host is down */ +#define EHOSTUNREACH 65 /* No route to host */ +#endif /* _POSIX_SOURCE */ +#define ENOTEMPTY 66 /* Directory not empty */ + +/* quotas & mush */ +#ifndef _POSIX_SOURCE +#define EPROCLIM 67 /* Too many processes */ +#define EUSERS 68 /* Too many users */ +#define EDQUOT 69 /* Disc quota exceeded */ + +/* Network File System */ +#define ESTALE 70 /* Stale NFS file handle */ +#define EREMOTE 71 /* Too many levels of remote in path */ +#define EBADRPC 72 /* RPC struct is bad */ +#define ERPCMISMATCH 73 /* RPC version wrong */ +#define EPROGUNAVAIL 74 /* RPC prog. not avail */ +#define EPROGMISMATCH 75 /* Program version wrong */ +#define EPROCUNAVAIL 76 /* Bad procedure for program */ +#endif /* _POSIX_SOURCE */ + +#define ENOLCK 77 /* No locks available */ +#define ENOSYS 78 /* Function not implemented */ + +#ifndef _POSIX_SOURCE +#define EFTYPE 79 /* Inappropriate file type or format */ +#define EAUTH 80 /* Authentication error */ +#define ENEEDAUTH 81 /* Need authenticator */ +#define EIDRM 82 /* Identifier removed */ +#define ENOMSG 83 /* No message of desired type */ +#define EOVERFLOW 84 /* Value too large to be stored in data type */ +#define ECANCELED 85 /* Operation canceled */ +#define EILSEQ 86 /* Illegal byte sequence */ +#define ENOATTR 87 /* Attribute not found */ + +#define EDOOFUS 88 /* Programming error */ +#endif /* _POSIX_SOURCE */ + +#define EBADMSG 89 /* Bad message */ +#define EMULTIHOP 90 /* Multihop attempted */ +#define ENOLINK 91 /* Link has been severed */ +#define EPROTO 92 /* Protocol error */ + +#ifndef _POSIX_SOURCE +#define ELAST 92 /* Must be equal largest errno */ +#endif /* _POSIX_SOURCE */ + +#ifdef _KERNEL +/* pseudo-errors returned inside kernel to modify return to process */ +#define ERESTART (-1) /* restart syscall */ +#define EJUSTRETURN (-2) /* don't modify regs, just return */ +#define ENOIOCTL (-3) /* ioctl not handled by this layer */ +#define EDIRIOCTL (-4) /* do direct ioctl in GEOM */ +#endif + +#endif diff --git a/db/build_wince/rsrcfile_vcproj.src b/db/build_wince/rsrcfile_vcproj.src new file mode 100644 index 000000000..7b932545b --- /dev/null +++ b/db/build_wince/rsrcfile_vcproj.src @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + diff --git a/db/build_wince/srcfile_vcp.src b/db/build_wince/srcfile_vcp.src new file mode 100644 index 000000000..408a55e2a --- /dev/null +++ b/db/build_wince/srcfile_vcp.src @@ -0,0 +1,4 @@ +# Begin Source File + +SOURCE=@srcdir@\@srcfile@ +# End Source File diff --git a/db/build_wince/srcfile_vcproj.src b/db/build_wince/srcfile_vcproj.src new file mode 100644 index 000000000..ed9a035e6 --- /dev/null +++ b/db/build_wince/srcfile_vcproj.src @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + diff --git a/db/build_wince/static_vcp.src b/db/build_wince/static_vcp.src new file mode 100644 index 000000000..6f2a3f1e3 --- /dev/null +++ b/db/build_wince/static_vcp.src @@ -0,0 +1,151 @@ +# Microsoft eMbedded Visual Tools Project File - Name="@project_name@" - Package Owner=<4> +# Microsoft eMbedded Visual Tools Generated Build File, Format Version 6.02 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (WCE ARMV4) Static Library" 0xa304 +# TARGTYPE "Win32 (WCE emulator) Static Library" 0xa604 + +CFG=@project_name@ - Win32 (WCE emulator) Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "@project_name@.vcn". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "@project_name@.vcn" CFG="@project_name@ - Win32 (WCE emulator) Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "@project_name@ - Win32 (WCE emulator) Release" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "@project_name@ - Win32 (WCE emulator) Debug" (based on "Win32 (WCE emulator) Static Library") +!MESSAGE "@project_name@ - Win32 (WCE ARMV4) Release" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE "@project_name@ - Win32 (WCE ARMV4) Debug" (based on "Win32 (WCE ARMV4) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +# PROP ATL_Project 2 + +!IF "$(CFG)" == "@project_name@ - Win32 (WCE emulator) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_EMU" +# PROP BASE Intermediate_Dir "Release_EMU/@project_name@" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_EMU" +# PROP Intermediate_Dir "Release_EMU/@project_name@" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /Yu"stdafx.h" /Gs8192 @extra_cppflags@ /GF /O2 /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 @extra_cppflags@ /GF /O2 /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_EMU/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +# ADD LIB32 /nologo /out:"@lib_rel_dest@_EMU/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE emulator) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_EMU" +# PROP BASE Intermediate_Dir "Debug_EMU/@project_name@" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_EMU" +# PROP Intermediate_Dir "Debug_EMU/@project_name@" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /Yu"stdafx.h" /Gs8192 @extra_cppflags@ /GF /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /Gs8192 @extra_cppflags@ /GF /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_debug_dest@_EMU/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +# ADD LIB32 /nologo /out:"@lib_debug_dest@_EMU/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE ARMV4) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_ARMV4" +# PROP BASE Intermediate_Dir "Release_ARMV4/@project_name@" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_ARMV4" +# PROP Intermediate_Dir "Release_ARMV4/@project_name@" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /O2 /M$(CECrtMT) @extra_cppflags@ /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "NDEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /O2 /M$(CECrtMT) @extra_cppflags@ /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_ARMV4/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +# ADD LIB32 /nologo /out:"@lib_rel_dest@_ARMV4/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 (WCE ARMV4) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_ARMV4" +# PROP BASE Intermediate_Dir "Debug_ARMV4/@project_name@" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_ARMV4" +# PROP Intermediate_Dir "Debug_ARMV4/@project_name@" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /Yu"stdafx.h" /M$(CECrtMTDebug) @extra_cppflags@ /c +# ADD CPP /nologo /W3 /I "." /I ".." /D "DB_WIN32" /D "DB_WINCE" /Zi /Od /D "DEBUG" /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "_LIB" /D "__NO_SYSTEM_INCLUDES" /Yu"stdafx.h" /M$(CECrtMTDebug) @extra_cppflags@ /c +# SUBTRACT CPP /YX /Yc /Yu +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_debug_dest@_ARMV4/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +# ADD LIB32 /nologo /out:"@lib_debug_dest@_ARMV4/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo + +!ENDIF + +# Begin Target + +# Name "@project_name@ - Win32 (WCE emulator) Release" +# Name "@project_name@ - Win32 (WCE emulator) Debug" +# Name "@project_name@ - Win32 (WCE ARMV4) Release" +# Name "@project_name@ - Win32 (WCE ARMV4) Debug" +@SOURCE_FILES@ +# End Target +# End Project diff --git a/db/build_wince/static_vcproj.src b/db/build_wince/static_vcproj.src new file mode 100644 index 000000000..65c9dea88 --- /dev/null +++ b/db/build_wince/static_vcproj.src @@ -0,0 +1,363 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +@SOURCE_FILES@ + + + + diff --git a/db/build_wince/wce_tpcb.vcp b/db/build_wince/wce_tpcb.vcp new file mode 100644 index 000000000..5b50787d7 --- /dev/null +++ b/db/build_wince/wce_tpcb.vcp @@ -0,0 +1,192 @@ +# Microsoft eMbedded Visual Tools Project File - Name="wce_tpcb" - Package Owner=<4> +# Microsoft eMbedded Visual Tools Generated Build File, Format Version 6.02 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (WCE ARMV4) Application" 0xa301 +# TARGTYPE "Win32 (WCE emulator) Application" 0xa601 + +CFG=wce_tpcb - Win32 (WCE emulator) Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "wce_tpcb.vcn". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "wce_tpcb.vcn" CFG="wce_tpcb - Win32 (WCE emulator) Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "wce_tpcb - Win32 (WCE emulator) Release" (based on "Win32 (WCE emulator) Application") +!MESSAGE "wce_tpcb - Win32 (WCE emulator) Debug" (based on "Win32 (WCE emulator) Application") +!MESSAGE "wce_tpcb - Win32 (WCE ARMV4) Release" (based on "Win32 (WCE ARMV4) Application") +!MESSAGE "wce_tpcb - Win32 (WCE ARMV4) Debug" (based on "Win32 (WCE ARMV4) Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +# PROP ATL_Project 2 + +!IF "$(CFG)" == "wce_tpcb - Win32 (WCE emulator) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_EMU" +# PROP BASE Intermediate_Dir "Release_EMU/wce_tpcb" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_EMU" +# PROP Intermediate_Dir "Release_EMU/wce_tpcb" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "NDEBUG" /d "$(CePlatform)" /d "_X86_" /d "x86" /d "_i386_" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "NDEBUG" /d "$(CePlatform)" /d "_X86_" /d "x86" /d "_i386_" /r +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /Gs8192 /D "__NO_SYSTEM_INCLUDES" /GF /O2 /c +# ADD CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "_i386_" /D UNDER_CE=$(CEVersion) /I "." /I ".." /D "_i386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "NDEBUG" /D "__NO_SYSTEM_INCLUDES" /Gs8192 /D "__NO_SYSTEM_INCLUDES" /GF /O2 /c +MTL=midl.exe +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46s.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"Release_EMU" +# ADD LINK32 libdb46s.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"Release_EMU" + +!ELSEIF "$(CFG)" == "wce_tpcb - Win32 (WCE emulator) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_EMU" +# PROP BASE Intermediate_Dir "Debug_EMU\wce_tpcb" +# PROP BASE CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_EMU" +# PROP Intermediate_Dir "Debug_EMU\wce_tpcb" +# PROP CPU_ID "{32E52003-403E-442D-BE48-DE10F8C6131D}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d "$(CePlatform)" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "DEBUG" /d "_X86_" /d "x86" /d "_i386_" /r +# ADD RSC /l 0x409 /d "$(CePlatform)" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "DEBUG" /d "_X86_" /d "x86" /d "_i386_" /r +CPP=cl.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D "_i386_" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /Gs8192 /D "__NO_SYSTEM_INCLUDES" /GF /c +# ADD CPP /nologo /W3 /Zi /Od /I "." /I ".." /D "DEBUG" /D "_i386_" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "i_386_" /D "UNICODE" /D "_UNICODE" /D "_X86_" /D "x86" /D "__NO_SYSTEM_INCLUDES" /Gs8192 /D "__NO_SYSTEM_INCLUDES" /GF /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46sd.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"Debug_EMU" +# ADD LINK32 libdb46sd.lib commctrl.lib coredll.lib $(CEx86Corelibc) /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"OLDNAMES.lib" /nodefaultlib:$(CENoDefaultLib) /out:"Debug_EMU/wce_tpcb.exe" /subsystem:$(CESubsystem) /MACHINE:IX86 /libpath:"Debug_EMU" + +!ELSEIF "$(CFG)" == "wce_tpcb - Win32 (WCE ARMV4) Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_ARMV4" +# PROP BASE Intermediate_Dir "Release_ARMV4/wce_tpcb" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_ARMV4" +# PROP Intermediate_Dir "Release_ARMV4/wce_tpcb" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "NDEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "NDEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "NDEBUG" /O2 /M$(CECrtMT) /D "__NO_SYSTEM_INCLUDES" /c +# ADD CPP /nologo /W3 /I "." /I ".." /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "NDEBUG" /O2 /M$(CECrtMT) /D "__NO_SYSTEM_INCLUDES" /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46s.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"Release_ARMV4" +# ADD LINK32 libdb46s.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"Release_ARMV4" + +!ELSEIF "$(CFG)" == "wce_tpcb - Win32 (WCE ARMV4) Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_ARMV4" +# PROP BASE Intermediate_Dir "Debug_ARMV4/wce_tpcb" +# PROP BASE CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP BASE Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_ARMV4" +# PROP Intermediate_Dir "Debug_ARMV4/wce_tpcb" +# PROP CPU_ID "{ECBEA43D-CD7B-4852-AD55-D4227B5D624B}" +# PROP Platform_ID "{8A9A2F80-6887-11D3-842E-005004848CBA}" +# PROP Target_Dir "" +RSC=rc.exe +# ADD BASE RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "DEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +# ADD RSC /l 0x409 /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "DEBUG" /d "UNICODE" /d "_UNICODE" /d "$(CePlatform)" /d "ARM" /d "_ARM_" /d "ARMV4" /r +CPP=clarm.exe +# ADD BASE CPP /nologo /W3 /Zi /Od /D "DEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "UNICODE" /D "_UNICODE" /M$(CECrtMTDebug) /D "__NO_SYSTEM_INCLUDES" /c +# ADD CPP /nologo /W3 /Zi /Od /I "." /I ".." /D "DEBUG" /D "ARM" /D "_ARM_" /D "ARMV4" /D UNDER_CE=$(CEVersion) /D _WIN32_WCE=$(CEVersion) /D "$(CePlatform)" /D "UNICODE" /D "_UNICODE" /M$(CECrtMTDebug) /D "__NO_SYSTEM_INCLUDES" /c +# SUBTRACT CPP +MTL=midl.exe +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46sd.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"Debug_ARMV4" +# ADD LINK32 libdb46sd.lib commctrl.lib coredll.lib /nologo /base:"0x00010000" /stack:0x10000,0x1000 /entry:"WinMainCRTStartup" /debug /nodefaultlib:"$(CENoDefaultLib)" /subsystem:$(CESubsystem) /align:"4096" /MACHINE:ARM /libpath:"Debug_ARMV4" + +!ENDIF + +# Begin Target + +# Name "wce_tpcb - Win32 (WCE emulator) Release" +# Name "wce_tpcb - Win32 (WCE emulator) Debug" +# Name "wce_tpcb - Win32 (WCE ARMV4) Release" +# Name "wce_tpcb - Win32 (WCE ARMV4) Debug" + +# Begin Group "Files" + +# Begin Source File + +SOURCE=..\examples_cxx\wce_tpcb\TpcbExample.cpp +# End Source File +# Begin Source File + +SOURCE=..\examples_cxx\wce_tpcb\TpcbUI.cpp +# End Source File +# Begin Source File + +SOURCE=..\examples_cxx\wce_tpcb\wce_tpcb.rc +# End Source File + +# End Group + +# End Target +# End Project diff --git a/db/build_wince/wce_tpcb.vcproj b/db/build_wince/wce_tpcb.vcproj new file mode 100644 index 000000000..af7b40101 --- /dev/null +++ b/db/build_wince/wce_tpcb.vcproj @@ -0,0 +1,552 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/db/build_windows/Berkeley_DB.dsw b/db/build_windows/Berkeley_DB.dsw index 0f2c7777d..ee3b06b83 100644 --- a/db/build_windows/Berkeley_DB.dsw +++ b/db/build_windows/Berkeley_DB.dsw @@ -159,6 +159,21 @@ Package=<4> ############################################################################### +Project: "db_codegen"=.\db_codegen.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ + Begin Project Dependency + Project_Dep_Name db_dll + End Project Dependency +}}} + +############################################################################### + Project: "db_deadlock"=.\db_deadlock.dsp - Package Owner=<4> Package=<5> diff --git a/db/build_windows/app_dsp.src b/db/build_windows/app_dsp.src index 0ae7afaa9..0a7a57951 100644 --- a/db/build_windows/app_dsp.src +++ b/db/build_windows/app_dsp.src @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=@project_name@ - Win32 Debug +CFG=@project_name@ - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=@project_name@ - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" +!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "@project_name@ - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "@project_name@ - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "@project_name@ - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "@project_name@ - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "@project_name@ - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "@project_name@ - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=@project_name@ - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "@project_name@ - Win32 Release" +!IF "$(CFG)" == "@project_name@ - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -59,7 +63,7 @@ LINK32=link.exe # ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"@lib_rel_dest@" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -84,7 +88,7 @@ LINK32=link.exe # ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"@lib_debug_dest@" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -110,7 +114,7 @@ LINK32=link.exe # ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"@lib_debug_dest@_ASCII" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -240,18 +244,126 @@ LINK32=link.exe # ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"@lib_rel_dest@_IA64" @POST_BUILD@ +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@bin_debug_dest@_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@bin_debug_dest@_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"@lib_debug_dest@_AMD64" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@bin_rel_dest@_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@bin_rel_dest@_AMD64" +# PROP Intermediate_Dir "Release_AMD64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"@lib_rel_dest@_AMD64" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@bin_debug_dest@_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@bin_debug_dest@_IA64" +# PROP Intermediate_Dir "Debug_IA64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"@lib_debug_dest@_IA64" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@bin_rel_dest@_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@bin_rel_dest@_IA64" +# PROP Intermediate_Dir "Release_IA64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"@lib_rel_dest@_IA64" +@POST_BUILD@ + !ENDIF # Begin Target -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 ASCII Debug" -# Name "@project_name@ - Win32 ASCII Release" +# Name "@project_name@ - Win32 Release x86" +# Name "@project_name@ - Win32 Debug x86" +# Name "@project_name@ - Win32 ASCII Debug x86" +# Name "@project_name@ - Win32 ASCII Release x86" # Name "@project_name@ - x64 Debug AMD64" # Name "@project_name@ - x64 Release AMD64" # Name "@project_name@ - x64 Debug IA64" # Name "@project_name@ - x64 Release IA64" +# Name "@project_name@ - Win32 Debug AMD64" +# Name "@project_name@ - Win32 Release AMD64" +# Name "@project_name@ - Win32 Debug IA64" +# Name "@project_name@ - Win32 Release IA64" @SOURCE_FILES@ # Begin Source File diff --git a/db/build_windows/build_all.dsp b/db/build_windows/build_all.dsp index fdd922c67..e09dc873f 100644 --- a/db/build_windows/build_all.dsp +++ b/db/build_windows/build_all.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) External Target" 0x0106 -CFG=build_all - Win32 Debug +CFG=build_all - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=build_all - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "build_all.mak" CFG="build_all - Win32 Debug" +!MESSAGE NMAKE /f "build_all.mak" CFG="build_all - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "build_all - Win32 Release" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 Debug" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 ASCII Debug" (based on "Win32 (x86) External Target") -!MESSAGE "build_all - Win32 ASCII Release" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Release x86" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Debug x86" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 ASCII Debug x86" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 ASCII Release x86" (based on "Win32 (x86) External Target") !MESSAGE "build_all - x64 Debug AMD64" (based on "Win32 (x86) External Target") !MESSAGE "build_all - x64 Release AMD64" (based on "Win32 (x86) External Target") !MESSAGE "build_all - x64 Debug IA64" (based on "Win32 (x86) External Target") !MESSAGE "build_all - x64 Release IA64" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Debug AMD64" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Release AMD64" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Debug IA64" (based on "Win32 (x86) External Target") +!MESSAGE "build_all - Win32 Release IA64" (based on "Win32 (x86) External Target") !MESSAGE # Begin Project @@ -32,7 +36,7 @@ CFG=build_all - Win32 Debug # PROP Scc_ProjName "" # PROP Scc_LocalPath "" -!IF "$(CFG)" == "build_all - Win32 Release" +!IF "$(CFG)" == "build_all - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -46,7 +50,7 @@ CFG=build_all - Win32 Debug # PROP Cmd_Line "echo DB Release version built." # PROP Target_Dir "" -!ELSEIF "$(CFG)" == "build_all - Win32 Debug" +!ELSEIF "$(CFG)" == "build_all - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -60,7 +64,7 @@ CFG=build_all - Win32 Debug # PROP Cmd_Line "echo DB Debug version built." # PROP Target_Dir "" -!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -75,7 +79,7 @@ CFG=build_all - Win32 Debug # PROP Cmd_Line "echo DB Debug version built." # PROP Target_Dir "" -!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -150,34 +154,95 @@ CFG=build_all - Win32 Debug # PROP Cmd_Line "echo DB Release version built." # PROP Target_Dir "" +!ELSEIF "$(CFG)" == "build_all - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/build_all" +# PROP BASE Cmd_Line "echo DB Debug version built." +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/build_all" +# PROP Cmd_Line "echo DB Debug version built." +# PROP Target_Dir "" + +!ELSEIF "$(CFG)" == "build_all - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/build_all" +# PROP BASE Cmd_Line "echo DB Release version built." +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/build_all" +# PROP Cmd_Line "echo DB Release version built." +# PROP Target_Dir "" + +!ELSEIF "$(CFG)" == "build_all - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64" +# PROP BASE Cmd_Line "echo DB Debug version built." +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64" +# PROP Cmd_Line "echo DB Debug version built." +# PROP Target_Dir "" + +!ELSEIF "$(CFG)" == "build_all - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64" +# PROP BASE Cmd_Line "echo DB Release version built." +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64" +# PROP Cmd_Line "echo DB Release version built." +# PROP Target_Dir "" + !ENDIF # Begin Target -# Name "build_all - Win32 Release" -# Name "build_all - Win32 Debug" -# Name "build_all - Win32 ASCII Debug" -# Name "build_all - Win32 ASCII Release" +# Name "build_all - Win32 Release x86" +# Name "build_all - Win32 Debug x86" +# Name "build_all - Win32 ASCII Debug x86" +# Name "build_all - Win32 ASCII Release x86" # Name "build_all - x64 Debug AMD64" # Name "build_all - x64 Release AMD64" # Name "build_all - x64 Debug IA64" # Name "build_all - x64 Release IA64" - -!IF "$(CFG)" == "build_all - Win32 Release" - -!ELSEIF "$(CFG)" == "build_all - Win32 Debug" - -!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Debug" - -!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Release" - +# Name "build_all - Win32 Debug AMD64" +# Name "build_all - Win32 Release AMD64" +# Name "build_all - Win32 Debug IA64" +# Name "build_all - Win32 Release IA64" + +!IF "$(CFG)" == "build_all - Win32 Release x86" +!ELSEIF "$(CFG)" == "build_all - Win32 Debug x86" +!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Debug x86" +!ELSEIF "$(CFG)" == "build_all - Win32 ASCII Release x86" !ELSEIF "$(CFG)" == "build_all - x64 Debug AMD64" - !ELSEIF "$(CFG)" == "build_all - x64 Release AMD64" - !ELSEIF "$(CFG)" == "build_all - x64 Debug IA64" - !ELSEIF "$(CFG)" == "build_all - x64 Release IA64" +!ELSEIF "$(CFG)" == "build_all - Win32 Debug AMD64" +!ELSEIF "$(CFG)" == "build_all - Win32 Release AMD64" +!ELSEIF "$(CFG)" == "build_all - Win32 Debug IA64" +!ELSEIF "$(CFG)" == "build_all - Win32 Release IA64" !ENDIF diff --git a/db/build_windows/clib_port.h b/db/build_windows/clib_port.h index cfefbb37d..54ad58aa3 100644 --- a/db/build_windows/clib_port.h +++ b/db/build_windows/clib_port.h @@ -1,3 +1,78 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +#define INT64_FMT "%I64d" +#define UINT64_FMT "%I64u" +#endif /* HAVE_64BIT_TYPES */ + /* * Exit success/failure macros. */ @@ -17,6 +92,21 @@ #ifndef HAVE_ATOL #define atol __db_Catol #endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif #ifndef HAVE_GETADDRINFO #define freeaddrinfo(a) __db_Cfreeaddrinfo(a) #define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) @@ -32,9 +122,21 @@ #define optopt __db_Coptopt #define optreset __db_Coptreset #endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif #ifndef HAVE_ISSPACE #define isspace __db_Cisspace #endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif #ifndef HAVE_MEMCMP #define memcmp __db_Cmemcmp #endif @@ -48,6 +150,9 @@ #define printf __db_Cprintf #define fprintf __db_Cfprintf #endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif #ifndef HAVE_RAISE #define raise __db_Craise #endif @@ -92,6 +197,9 @@ #ifndef HAVE_STRTOUL #define strtoul __db_Cstrtoul #endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif #ifndef HAVE_VSNPRINTF #define vsnprintf __db_Cvsnprintf #endif diff --git a/db/build_windows/db.h b/db/build_windows/db.h index ab0fdf058..f9c4d9e20 100644 --- a/db/build_windows/db.h +++ b/db/build_windows/db.h @@ -2,10 +2,9 @@ /* * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db.in,v 12.108 2006/09/13 14:53:37 mjc Exp $ + * $Id: db.in,v 12.158 2007/06/28 14:23:35 mjc Exp $ * * db.h include file layout: * General. @@ -22,7 +21,7 @@ #ifndef _DB_H_ #define _DB_H_ -#ifndef __NO_SYSTEM_INCLUDES +#ifndef __NO_SYSTEM_INCLUDES #include #include #include @@ -59,9 +58,9 @@ extern "C" { * Berkeley DB version information. */ #define DB_VERSION_MAJOR 4 -#define DB_VERSION_MINOR 5 -#define DB_VERSION_PATCH 20 -#define DB_VERSION_STRING "Berkeley DB 4.5.20: (September 20, 2006)" +#define DB_VERSION_MINOR 6 +#define DB_VERSION_PATCH 18 +#define DB_VERSION_STRING "Berkeley DB 4.6.18: (July 17, 2007)" /* * !!! @@ -89,17 +88,14 @@ typedef unsigned __int64 u_int64_t; #ifndef _WINSOCKAPI_ typedef unsigned char u_char; -typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; #endif -#ifdef _WIN64 -typedef int64_t ssize_t; -#else -typedef int32_t ssize_t; -#endif +typedef unsigned short u_short; /* + * Missing ANSI types. + * * uintmax_t -- * Largest unsigned type, used to align structures in memory. We don't store * floating point types in structures, so integral types should be sufficient @@ -122,6 +118,19 @@ typedef u_int64_t uintptr_t; typedef u_int32_t uintptr_t; #endif +/* + * Windows defines off_t to long (i.e., 32 bits). We need to pass 64-bit + * file offsets, so we declare our own. + */ +#define off_t __db_off_t +typedef int64_t off_t; +typedef int pid_t; +#ifdef _WIN64 +typedef int64_t ssize_t; +#else +typedef int32_t ssize_t; +#endif + /* * Sequences are only available on machines with 64-bit integral types. */ @@ -129,7 +138,6 @@ typedef int64_t db_seq_t; /* Thread and process identification. */ typedef u_int32_t db_threadid_t; -typedef int pid_t; /* Basic types that are exported or quasi-exported. */ typedef u_int32_t db_pgno_t; /* Page number type. */ @@ -163,7 +171,9 @@ struct __db_env; typedef struct __db_env DB_ENV; struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; struct __db_log; typedef struct __db_log DB_LOG; @@ -183,6 +193,8 @@ struct __db_rep; typedef struct __db_rep DB_REP; struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; struct __db_repmgr_site; \ typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; @@ -209,13 +221,14 @@ struct __db_dbt { void *app_data; #define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ -#define DB_DBT_ISSET 0x002 /* Lower level calls set value. */ -#define DB_DBT_MALLOC 0x004 /* Return in malloc'd memory. */ -#define DB_DBT_PARTIAL 0x008 /* Partial put/get. */ -#define DB_DBT_REALLOC 0x010 /* Return in realloc'd memory. */ -#define DB_DBT_USERCOPY 0x020 /* Use the user-supplied callback. */ -#define DB_DBT_USERMEM 0x040 /* Return in user's memory. */ -#define DB_DBT_DUPOK 0x080 /* Insert if duplicate. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ u_int32_t flags; }; @@ -234,10 +247,10 @@ struct __db_dbt { #define DB_THREAD 0x0000080 /* Applications are threaded. */ #define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ #define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ -#define DB_TXN_NOT_DURABLE 0x0000400 /* Do not log changes. */ -#define DB_TXN_WRITE_NOSYNC 0x0000800 /* Write the log but don't sync. */ -#define DB_USE_ENVIRON 0x0001000 /* Use the environment. */ -#define DB_USE_ENVIRON_ROOT 0x0002000 /* Use the environment if root. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ /* * Common flags -- @@ -249,9 +262,9 @@ struct __db_dbt { * (Note: until the 4.3 release, legal to DB->associate, DB->del, * DB->put, DB->remove, DB->rename and DB->truncate, and others.) * DB_READ_COMMITTED: - * DB->cursor, DB->get, DB->join, DBcursor->c_get, DB_ENV->txn_begin + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin * DB_READ_UNCOMMITTED: - * DB->cursor, DB->get, DB->join, DB->open, DBcursor->c_get, + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, * DB_ENV->txn_begin * DB_TXN_SNAPSHOT: * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor @@ -261,6 +274,7 @@ struct __db_dbt { * without also changing the masks for the flags that can be OR'd into DB * access method and cursor operation values. */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ #define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ #define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ @@ -287,19 +301,24 @@ struct __db_dbt { #define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ /* - * Flags private to DB_ENV->open. + * Flags shared by DB_ENV->remove and DB_ENV->open. * Shared flags up to 0x0002000 */ -#define DB_INIT_CDB 0x0004000 /* Concurrent Access Methods. */ -#define DB_INIT_LOCK 0x0008000 /* Initialize locking. */ -#define DB_INIT_LOG 0x0010000 /* Initialize logging. */ -#define DB_INIT_MPOOL 0x0020000 /* Initialize mpool. */ -#define DB_INIT_REP 0x0040000 /* Initialize replication. */ -#define DB_INIT_TXN 0x0080000 /* Initialize transactions. */ -#define DB_LOCKDOWN 0x0100000 /* Lock memory into physical core. */ -#define DB_PRIVATE 0x0200000 /* DB_ENV is process local. */ -#define DB_RECOVER_FATAL 0x0400000 /* Run catastrophic recovery. */ -#define DB_REGISTER 0x0800000 /* Multi-process registry. */ -#define DB_SYSTEM_MEM 0x1000000 /* Use system-backed memory. */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ #define DB_JOINENV 0x0 /* Compatibility. */ @@ -321,8 +340,13 @@ struct __db_dbt { /* * Flags private to DB_ENV->txn_begin. * Shared flags up to 0x0002000 */ -#define DB_TXN_NOWAIT 0x0004000 /* Do not wait for locks in this TXN. */ -#define DB_TXN_SYNC 0x0008000 /* Always sync log on commit. */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ /* * Flags private to DB_ENV->set_encrypt. @@ -455,9 +479,11 @@ struct __db_mutex_stat { u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /* This is the length of the buffer passed to DB_ENV->thread_id_string() */ @@ -493,6 +519,11 @@ struct __db_mutex_stat { #define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ #define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + /* * Simple R/W lock modes and for multi-granularity intention locking. * @@ -552,9 +583,10 @@ struct __db_lock_stat { u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ u_int32_t st_maxobjects; /* Maximum num of objects in table. */ int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_nlocks; /* Current number of locks. */ u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ - u_int32_t st_nlockers; /* Current number of lockers. */ u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ u_int32_t st_nobjects; /* Current number of objects. */ u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ @@ -569,9 +601,29 @@ struct __db_lock_stat { u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ db_timeout_t st_txntimeout; /* Transaction timeout. */ u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ }; /* @@ -612,7 +664,7 @@ struct __db_lockreq { /******************************************************* * Logging. *******************************************************/ -#define DB_LOGVERSION 12 /* Current log version. */ +#define DB_LOGVERSION 13 /* Current log version. */ #define DB_LOGOLDVER 8 /* Oldest log version supported. */ #define DB_LOGMAGIC 0x040988 @@ -663,12 +715,12 @@ struct __db_lsn { struct __db_log_cursor { DB_ENV *dbenv; /* Enclosing dbenv. */ - DB_FH *c_fhp; /* File handle. */ - DB_LSN c_lsn; /* Cursor: LSN */ - u_int32_t c_len; /* Cursor: record length */ - u_int32_t c_prev; /* Cursor: previous record's offset */ + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ - DBT c_dbt; /* Return DBT. */ + DBT dbt; /* Return DBT. */ DB_LSN p_lsn; /* Persist LSN. */ u_int32_t p_version; /* Persist version. */ @@ -698,11 +750,12 @@ struct __db_log_stat { int st_mode; /* Log file permissions mode. */ u_int32_t st_lg_bsize; /* Log buffer size. */ u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_record; /* Records entered into the log. */ u_int32_t st_w_bytes; /* Bytes to log. */ u_int32_t st_w_mbytes; /* Megabytes to log. */ - u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ - u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ u_int32_t st_wcount; /* Total I/O writes to the log. */ u_int32_t st_wcount_fill; /* Overflow writes to the log. */ u_int32_t st_rcount; /* Total I/O reads from the log. */ @@ -713,9 +766,10 @@ struct __db_log_stat { u_int32_t st_cur_offset; /* Current log file offset. */ u_int32_t st_disk_file; /* Known on disk log file number. */ u_int32_t st_disk_offset; /* Known on disk log file offset. */ - roff_t st_regsize; /* Region size. */ u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* @@ -739,15 +793,16 @@ struct __db_log_stat { #define DB_MPOOL_LAST 0x010 /* Return the last page. */ #define DB_MPOOL_NEW 0x020 /* Create a new page. */ -/* Flag values for DB_MPOOLFILE->put, DB_MPOOLFILE->set. */ -#define DB_MPOOL_DISCARD 0x001 /* Don't cache the page. */ +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ /* Flags values for DB_MPOOLFILE->set_flags. */ #define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ #define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ -/* Priority values for DB_MPOOLFILE->set_priority. */ +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ typedef enum { + DB_PRIORITY_UNCHANGED=0, DB_PRIORITY_VERY_LOW=1, DB_PRIORITY_LOW=2, DB_PRIORITY_DEFAULT=3, @@ -808,24 +863,24 @@ struct __db_mpoolfile { int (*close) __P((DB_MPOOLFILE *, u_int32_t)); int (*get) __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); - int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); - int (*put) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*set) __P((DB_MPOOLFILE *, void *, u_int32_t)); int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); int (*get_ftype) __P((DB_MPOOLFILE *, int *)); - int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); - int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); - int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); int (*sync) __P((DB_MPOOLFILE *)); /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ @@ -850,12 +905,14 @@ struct __db_mpoolfile { struct __db_mpool_stat { u_int32_t st_gbytes; /* Total cache size: GB. */ u_int32_t st_bytes; /* Total cache size: B. */ - u_int32_t st_ncache; /* Number of caches. */ - roff_t st_regsize; /* Region size. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ size_t st_mmapsize; /* Maximum file size for mmap. */ int st_maxopenfd; /* Maximum number of open fd's. */ int st_maxwrite; /* Maximum buffers to write. */ - int st_maxwrite_sleep; /* Sleep after writing max buffers. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ @@ -865,7 +922,6 @@ struct __db_mpool_stat { u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ - u_int32_t st_pages; /* Total number of pages. */ u_int32_t st_page_clean; /* Clean pages. */ u_int32_t st_page_dirty; /* Dirty pages. */ u_int32_t st_hash_buckets; /* Number of hash buckets. */ @@ -887,18 +943,22 @@ struct __db_mpool_stat { u_int32_t st_alloc_pages; /* Pages checked during allocation. */ u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* Mpool file statistics structure. */ struct __db_mpool_fstat { char *file_name; /* File name. */ u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ u_int32_t st_page_create; /* Pages created in the cache. */ u_int32_t st_page_in; /* Pages read in. */ u_int32_t st_page_out; /* Pages written out. */ +#endif }; /******************************************************* @@ -932,7 +992,8 @@ struct __db_txn { DB_TXN *parent; /* Pointer to transaction's parent. */ u_int32_t txnid; /* Unique transaction id. */ - char *name; /* Transaction name */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ db_threadid_t tid; /* Thread id for use in MT XA. */ void *td; /* Detail structure within region. */ @@ -973,7 +1034,7 @@ struct __db_txn { struct { struct __txn_event *tqh_first; struct __txn_event **tqh_last; - } events; + } events; /* Links deferred events. */ /* * !!! @@ -983,7 +1044,7 @@ struct __db_txn { struct { struct __txn_logrec *stqh_first; struct __txn_logrec **stqh_last; - } logs; /* Links deferred events. */ + } logs; /* Links in memory log records. */ /* * !!! @@ -1080,6 +1141,9 @@ struct __db_txn_active { }; struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS DB_LSN st_last_ckp; /* lsn of the last checkpoint */ time_t st_time_ckp; /* time of last checkpoint */ u_int32_t st_last_txnid; /* last transaction id given out */ @@ -1089,14 +1153,13 @@ struct __db_txn_stat { u_int32_t st_ncommits; /* number of committed transactions */ u_int32_t st_nactive; /* number of active transactions */ u_int32_t st_nsnapshot; /* number of snapshot transactions */ - u_int32_t st_nrestores; /* number of restored transactions - after recovery. */ u_int32_t st_maxnactive; /* maximum active transactions */ u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /******************************************************* @@ -1121,8 +1184,11 @@ struct __db_txn_stat { */ #define DB_REP_CLIENT 1 #define DB_REP_ELECTION 2 -#define DB_REP_FULL_ELECTION 3 -#define DB_REP_MASTER 4 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 /* Acknowledgement policies. */ #define DB_REPMGR_ACKS_ALL 1 @@ -1132,33 +1198,38 @@ struct __db_txn_stat { #define DB_REPMGR_ACKS_ONE_PEER 5 #define DB_REPMGR_ACKS_QUORUM 6 -/* Replication Framework timeout configuration values. */ -#define DB_REP_ACK_TIMEOUT 1 -#define DB_REP_ELECTION_TIMEOUT 2 -#define DB_REP_ELECTION_RETRY 3 -#define DB_REP_CONNECTION_RETRY 4 +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ /* Event notification types. */ #define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ #define DB_EVENT_PANIC 1 #define DB_EVENT_REP_CLIENT 2 -#define DB_EVENT_REP_MASTER 3 -#define DB_EVENT_REP_NEWMASTER 4 -#define DB_EVENT_REP_STARTUPDONE 5 -#define DB_EVENT_WRITE_FAILED 6 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 /* Flag value for repmgr_add_remote_site. */ #define DB_REPMGR_PEER 0x01 /* Replication Manager site status. */ struct __db_repmgr_site { - int eid; - char *host; - u_int port; + int eid; + char *host; + u_int port; #define DB_REPMGR_CONNECTED 0x01 #define DB_REPMGR_DISCONNECTED 0x02 - u_int32_t status; + u_int32_t status; }; /* Replication statistics. */ @@ -1172,6 +1243,9 @@ struct __db_rep_stat { * off somewhat (or, on unreasonable architectures under unlucky * circumstances, garbaged). */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_status; /* Current replication status. */ DB_LSN st_next_lsn; /* Next LSN to use or expect. */ DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ @@ -1194,7 +1268,6 @@ struct __db_rep_stat { u_int32_t st_gen; /* Current generation number. */ u_int32_t st_egen; /* Current election gen number. */ u_int32_t st_log_duplicated; /* Log records received multiply.+ */ - u_int32_t st_log_queued; /* Log records currently queued.+ */ u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ u_int32_t st_log_records; /* Log records received and put.+ */ @@ -1216,8 +1289,8 @@ struct __db_rep_stat { u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ u_int32_t st_pg_records; /* Pages received and stored.+ */ u_int32_t st_pg_requested; /* Pages missed and requested.+ */ - u_int32_t st_startup_complete; /* Site completed client sync-up. */ u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ /* Elections generally. */ u_int32_t st_elections; /* # of elections held.+ */ @@ -1235,6 +1308,17 @@ struct __db_rep_stat { int st_election_votes; /* Votes received in this round. */ u_int32_t st_election_sec; /* Last election time seconds. */ u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ }; /******************************************************* @@ -1324,7 +1408,7 @@ typedef enum { #define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ #define DB_BTREEMAGIC 0x053162 -#define DB_HASHVERSION 8 /* Current hash version. */ +#define DB_HASHVERSION 9 /* Current hash version. */ #define DB_HASHOLDVER 7 /* Oldest hash version supported. */ #define DB_HASHMAGIC 0x061561 @@ -1339,39 +1423,37 @@ typedef enum { * DB access method and cursor operation values. Each value is an operation * code to which additional bit flags are added. */ -#define DB_AFTER 1 /* c_put() */ -#define DB_APPEND 2 /* put() */ -#define DB_BEFORE 3 /* c_put() */ -#define DB_CONSUME 4 /* get() */ -#define DB_CONSUME_WAIT 5 /* get() */ -#define DB_CURRENT 6 /* c_get(), c_put(), DB_LOGC->get() */ -#define DB_FIRST 7 /* c_get(), DB_LOGC->get() */ -#define DB_GET_BOTH 8 /* get(), c_get() */ -#define DB_GET_BOTHC 9 /* c_get() (internal) */ -#define DB_GET_BOTH_RANGE 10 /* get(), c_get() */ -#define DB_GET_RECNO 11 /* c_get() */ -#define DB_JOIN_ITEM 12 /* c_get(); do not do primary lookup */ -#define DB_KEYFIRST 13 /* c_put() */ -#define DB_KEYLAST 14 /* c_put() */ -#define DB_LAST 15 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT 16 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT_DUP 17 /* c_get() */ -#define DB_NEXT_NODUP 18 /* c_get() */ -#define DB_NODUPDATA 19 /* put(), c_put() */ -#define DB_NOOVERWRITE 20 /* put() */ -#define DB_NOSYNC 21 /* close() */ -#define DB_POSITION 22 /* c_dup() */ -#define DB_PREV 23 /* c_get(), DB_LOGC->get() */ -#define DB_PREV_NODUP 24 /* c_get(), DB_LOGC->get() */ -#define DB_SET 25 /* c_get(), DB_LOGC->get() */ -#define DB_SET_LOCK_TIMEOUT 26 /* set_timout() */ -#define DB_SET_RANGE 27 /* c_get() */ -#define DB_SET_RECNO 28 /* get(), c_get() */ -#define DB_SET_TXN_NOW 29 /* set_timout() (internal) */ -#define DB_SET_TXN_TIMEOUT 30 /* set_timout() */ -#define DB_UPDATE_SECONDARY 31 /* c_get(), c_del() (internal) */ -#define DB_WRITECURSOR 32 /* cursor() */ -#define DB_WRITELOCK 33 /* cursor() (internal) */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ /* This has to change when the max opcode hits 255. */ #define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ @@ -1416,8 +1498,8 @@ typedef enum { #define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ #define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ #define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ -#define DB_REP_LOCKOUT (-30980)/* API/Replication lockout now. */ -#define DB_REP_NEWMASTER (-30979)/* We have learned of a new master. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ #define DB_REP_NEWSITE (-30978)/* New site entered system. */ #define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ #define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ @@ -1429,17 +1511,19 @@ typedef enum { /* DB (private) error return codes. */ #define DB_ALREADY_ABORTED (-30899) #define DB_DELETED (-30898)/* Recovery file marked deleted. */ -#define DB_NEEDSPLIT (-30897)/* Page needs to be split. */ -#define DB_REP_BULKOVF (-30896)/* Rep bulk buffer overflow. */ -#define DB_REP_EGENCHG (-30895)/* Egen changed while in election. */ -#define DB_REP_LOGREADY (-30894)/* Rep log ready for recovery. */ -#define DB_REP_PAGEDONE (-30893)/* This page was already done. */ -#define DB_SURPRISE_KID (-30892)/* Child commit where parent +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent didn't know it was a parent. */ -#define DB_SWAPBYTES (-30891)/* Database needs byte swapping. */ -#define DB_TIMEOUT (-30890)/* Timed out waiting for election. */ -#define DB_TXN_CKP (-30889)/* Encountered ckp record in log. */ -#define DB_VERIFY_FATAL (-30888)/* DB->verify cannot proceed. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ /* Database handle. */ struct __db { @@ -1447,6 +1531,7 @@ struct __db { * Public: owned by the application. *******************************************************/ u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ /* Callbacks. */ int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); @@ -1477,9 +1562,10 @@ struct __db { FNAME *log_filename; /* File's naming info for logging. */ db_pgno_t meta_pgno; /* Meta page number */ - u_int32_t lid; /* Locker id for handle locking. */ - u_int32_t cur_lid; /* Current handle lock holder. */ - u_int32_t associate_lid; /* Locker id for DB->associate call. */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ DB_LOCK handle_lock; /* Lock held on this handle. */ u_int cl_id; /* RPC: remote client id. */ @@ -1558,8 +1644,8 @@ struct __db { } s_secondaries; /* - * List entries for secondaries, and reference count of how - * many threads are updating this secondary (see __db_c_put). + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). * * !!! * Note that these are synchronized by the primary's mutex, but @@ -1605,6 +1691,7 @@ struct __db { int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); void (*err) __P((DB *, int, const char *, ...)); void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); int (*fd) __P((DB *, int *)); int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int (*get_bt_minkey) __P((DB *, u_int32_t *)); @@ -1621,8 +1708,10 @@ struct __db { int (*get_lorder) __P((DB *, int *)); DB_MPOOLFILE *(*get_mpf) __P((DB *)); void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); int (*get_open_flags) __P((DB *, u_int32_t *)); int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); int (*get_q_extentsize) __P((DB *, u_int32_t *)); int (*get_re_delim) __P((DB *, int *)); int (*get_re_len) __P((DB *, u_int32_t *)); @@ -1658,6 +1747,8 @@ struct __db { void (*set_errpfx) __P((DB *, const char *)); int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); int (*set_h_ffactor) __P((DB *, u_int32_t)); int (*set_h_hash) __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); @@ -1667,6 +1758,7 @@ struct __db { void (*set_msgfile) __P((DB *, FILE *)); int (*set_pagesize) __P((DB *, u_int32_t)); int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); int (*set_q_extentsize) __P((DB *, u_int32_t)); int (*set_re_delim) __P((DB *, int)); int (*set_re_len) __P((DB *, u_int32_t)); @@ -1710,36 +1802,35 @@ struct __db { int preserve_fid; /* Do not free fileid on close. */ #define DB_AM_CHKSUM 0x00000001 /* Checksumming */ -#define DB_AM_CL_WRITER 0x00000002 /* Allow writes in client replica */ -#define DB_AM_COMPENSATE 0x00000004 /* Created by compensating txn */ -#define DB_AM_CREATED 0x00000008 /* Database was created upon open */ -#define DB_AM_CREATED_MSTR 0x00000010 /* Encompassing file was created */ -#define DB_AM_DBM_ERROR 0x00000020 /* Error in DBM/NDBM database */ -#define DB_AM_DELIMITER 0x00000040 /* Variable length delimiter set */ -#define DB_AM_DISCARD 0x00000080 /* Discard any cached pages */ -#define DB_AM_DUP 0x00000100 /* DB_DUP */ -#define DB_AM_DUPSORT 0x00000200 /* DB_DUPSORT */ -#define DB_AM_ENCRYPT 0x00000400 /* Encryption */ -#define DB_AM_FIXEDLEN 0x00000800 /* Fixed-length records */ -#define DB_AM_INMEM 0x00001000 /* In-memory; no sync on close */ -#define DB_AM_INORDER 0x00002000 /* DB_INORDER */ -#define DB_AM_IN_RENAME 0x00004000 /* File is being renamed */ -#define DB_AM_NOT_DURABLE 0x00008000 /* Do not log changes */ -#define DB_AM_OPEN_CALLED 0x00010000 /* DB->open called */ -#define DB_AM_PAD 0x00020000 /* Fixed-length record pad */ -#define DB_AM_PGDEF 0x00040000 /* Page size was defaulted */ -#define DB_AM_RDONLY 0x00080000 /* Database is readonly */ -#define DB_AM_READ_UNCOMMITTED 0x00100000 /* Support degree 1 isolation */ -#define DB_AM_RECNUM 0x00200000 /* DB_RECNUM */ -#define DB_AM_RECOVER 0x00400000 /* DB opened by recovery routine */ -#define DB_AM_RENUMBER 0x00800000 /* DB_RENUMBER */ -#define DB_AM_REVSPLITOFF 0x01000000 /* DB_REVSPLITOFF */ -#define DB_AM_SECONDARY 0x02000000 /* Database is a secondary index */ -#define DB_AM_SNAPSHOT 0x04000000 /* DB_SNAPSHOT */ -#define DB_AM_SUBDB 0x08000000 /* Subdatabases supported */ -#define DB_AM_SWAP 0x10000000 /* Pages need to be byte-swapped */ -#define DB_AM_TXN 0x20000000 /* Opened in a transaction */ -#define DB_AM_VERIFYING 0x40000000 /* DB handle is in the verifier */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ u_int32_t orig_flags; /* Flags at open, for refresh */ u_int32_t flags; }; @@ -1810,6 +1901,7 @@ struct __db { struct __dbc { DB *dbp; /* Related DB access method. */ DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ /* * Active/free cursor queues. @@ -1843,7 +1935,7 @@ struct __dbc { DBT my_rdata; /* Space for returned data. */ void *lref; /* Reference to default locker. */ - u_int32_t locker; /* Locker for this operation. */ + DB_LOCKER *locker; /* Locker for this operation. */ DBT lock_dbt; /* DBT referencing lock. */ DB_LOCK_ILOCK lock; /* Object to be locked. */ DB_LOCK mylock; /* CDB lock held on this cursor. */ @@ -1855,6 +1947,18 @@ struct __dbc { DBC_INTERNAL *internal; /* Access method private. */ /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ int (*c_close) __P((DBC *)); int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); int (*c_del) __P((DBC *, u_int32_t)); @@ -1862,16 +1966,15 @@ struct __dbc { int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); - /* DBC PUBLIC HANDLE LIST END */ /* DBC PRIVATE HANDLE LIST BEGIN */ - int (*c_am_bulk) __P((DBC *, DBT *, u_int32_t)); - int (*c_am_close) __P((DBC *, db_pgno_t, int *)); - int (*c_am_del) __P((DBC *)); - int (*c_am_destroy) __P((DBC *)); - int (*c_am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_writelock) __P((DBC *)); + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); /* DBC PRIVATE HANDLE LIST END */ /* @@ -1912,6 +2015,7 @@ struct __db_bt_stat { u_int32_t bt_metaflags; /* Metadata flags. */ u_int32_t bt_nkeys; /* Number of unique keys. */ u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ u_int32_t bt_pagesize; /* Page size. */ u_int32_t bt_minkey; /* Minkey value. */ u_int32_t bt_re_len; /* Fixed-length record length. */ @@ -1951,6 +2055,7 @@ struct __db_h_stat { u_int32_t hash_metaflags; /* Metadata flags. */ u_int32_t hash_nkeys; /* Number of unique keys. */ u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ u_int32_t hash_pagesize; /* Page size. */ u_int32_t hash_ffactor; /* Fill factor specified at create. */ u_int32_t hash_buckets; /* Number of hash buckets. */ @@ -2022,10 +2127,12 @@ struct __db_env { * there are ever more than 32 entries, convert to a bit array. */ #define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ -#define DB_VERB_RECOVERY 0x0002 /* Recovery information. */ -#define DB_VERB_REGISTER 0x0004 /* Dump waits-for table. */ -#define DB_VERB_REPLICATION 0x0008 /* Replication information. */ -#define DB_VERB_WAITSFOR 0x0010 /* Dump waits-for table. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ u_int32_t verbose; /* Verbose output. */ void *app_private; /* Application-private handle. */ @@ -2062,14 +2169,15 @@ struct __db_env { int lg_filemode; /* Log file permission mode. */ /* Memory pool. */ - u_int32_t mp_gbytes; /* Cachesize: GB. */ - u_int32_t mp_bytes; /* Cachesize: Bytes. */ - u_int mp_ncache; /* Number of cache regions. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ size_t mp_mmapsize; /* Maximum file size for mmap. */ int mp_maxopenfd; /* Maximum open file descriptors. */ int mp_maxwrite; /* Maximum buffers to write. */ - int /* Sleep after writing max buffers. */ - mp_maxwrite_sleep; + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ /* Transactions. */ u_int32_t tx_max; /* Maximum number of transactions. */ @@ -2084,6 +2192,8 @@ struct __db_env { /******************************************************* * Private: owned by DB. *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + pid_t pid_cache; /* Cached process ID. */ /* User files, paths. */ @@ -2132,13 +2242,21 @@ struct __db_env { long shm_key; /* shmget(2) key. */ /* - * List of open DB handles for this DB_ENV, used for cursor - * adjustment. Must be protected for multi-threaded support. + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. * * !!! - * As this structure is allocated in per-process memory, the - * mutex may need to be stored elsewhere on architectures unable - * to support mutexes in heap memory, e.g. HP/UX 9. + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. * * !!! * Explicit representation of structure in queue.h. @@ -2198,6 +2316,7 @@ struct __db_env { int (*failchk) __P((DB_ENV *, u_int32_t)); int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); int (*get_data_dirs) __P((DB_ENV *, const char ***)); int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); void (*get_errfile) __P((DB_ENV *, FILE **)); @@ -2215,11 +2334,12 @@ struct __db_env { int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); int (*get_mp_max_openfd) __P((DB_ENV *, int *)); - int (*get_mp_max_write) __P((DB_ENV *, int *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); void (*get_msgfile) __P((DB_ENV *, FILE **)); int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); int (*get_tmp_dir) __P((DB_ENV *, const char **)); int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); @@ -2270,8 +2390,7 @@ struct __db_env { int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); int (*remove) __P((DB_ENV *, const char *, u_int32_t)); - int (*rep_elect) - __P((DB_ENV *, int, int, int *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); int (*rep_flush) __P((DB_ENV *)); int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); @@ -2279,8 +2398,9 @@ struct __db_env { int (*rep_get_priority) __P((DB_ENV *, int *)); int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); int (*rep_process_message) - __P((DB_ENV *, DBT *, DBT *, int *, DB_LSN *)); + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_nsites) __P((DB_ENV *, int)); int (*rep_set_priority) __P((DB_ENV *, int)); @@ -2300,11 +2420,14 @@ struct __db_env { int (*repmgr_site_list) __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), void *(*)(void *, size_t), void (*)(void *))); int (*set_app_dispatch) __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*set_data_dir) __P((DB_ENV *, const char *)); int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); void (*set_errcall) __P((DB_ENV *, @@ -2329,7 +2452,7 @@ struct __db_env { int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); int (*set_mp_max_openfd) __P((DB_ENV *, int)); - int (*set_mp_max_write) __P((DB_ENV *, int, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); void (*set_msgcall) __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); @@ -2381,33 +2504,35 @@ struct __db_env { #define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ #define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ #define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ -#define DB_ENV_CREATE 0x00000008 /* DB_CREATE set. */ -#define DB_ENV_DBLOCAL 0x00000010 /* Environment for a private DB. */ -#define DB_ENV_DIRECT_DB 0x00000020 /* DB_DIRECT_DB set. */ -#define DB_ENV_DIRECT_LOG 0x00000040 /* DB_DIRECT_LOG set. */ -#define DB_ENV_DSYNC_DB 0x00000080 /* DB_DSYNC_DB set. */ -#define DB_ENV_DSYNC_LOG 0x00000100 /* DB_DSYNC_LOG set. */ -#define DB_ENV_FATAL 0x00000200 /* Doing fatal recovery in env. */ -#define DB_ENV_LOCKDOWN 0x00000400 /* DB_LOCKDOWN set. */ -#define DB_ENV_LOG_AUTOREMOVE 0x00000800 /* DB_LOG_AUTOREMOVE set. */ -#define DB_ENV_LOG_INMEMORY 0x00001000 /* DB_LOG_INMEMORY set. */ -#define DB_ENV_MULTIVERSION 0x00002000 /* DB_MULTIVERSION set. */ -#define DB_ENV_NOLOCKING 0x00004000 /* DB_NOLOCKING set. */ -#define DB_ENV_NOMMAP 0x00008000 /* DB_NOMMAP set. */ -#define DB_ENV_NOPANIC 0x00010000 /* Okay if panic set. */ -#define DB_ENV_OPEN_CALLED 0x00020000 /* DB_ENV->open called. */ -#define DB_ENV_OVERWRITE 0x00040000 /* DB_OVERWRITE set. */ -#define DB_ENV_PRIVATE 0x00080000 /* DB_PRIVATE set. */ -#define DB_ENV_REGION_INIT 0x00100000 /* DB_REGION_INIT set. */ -#define DB_ENV_RPCCLIENT 0x00200000 /* DB_RPCCLIENT set. */ -#define DB_ENV_RPCCLIENT_GIVEN 0x00400000 /* User-supplied RPC client struct */ -#define DB_ENV_SYSTEM_MEM 0x00800000 /* DB_SYSTEM_MEM set. */ -#define DB_ENV_THREAD 0x01000000 /* DB_THREAD set. */ -#define DB_ENV_TIME_NOTGRANTED 0x02000000 /* DB_TIME_NOTGRANTED set. */ -#define DB_ENV_TXN_NOSYNC 0x04000000 /* DB_TXN_NOSYNC set. */ -#define DB_ENV_TXN_SNAPSHOT 0x08000000 /* DB_TXN_SNAPSHOT set. */ -#define DB_ENV_TXN_WRITE_NOSYNC 0x10000000 /* DB_TXN_WRITE_NOSYNC set. */ -#define DB_ENV_YIELDCPU 0x20000000 /* DB_YIELDCPU set. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ u_int32_t flags; }; diff --git a/db/build_windows/db_archive.dsp b/db/build_windows/db_archive.dsp index 4e9dc7633..e569447b4 100644 --- a/db/build_windows/db_archive.dsp +++ b/db/build_windows/db_archive.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_archive - Win32 Debug +CFG=db_archive - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_archive - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_archive.mak" CFG="db_archive - Win32 Debug" +!MESSAGE NMAKE /f "db_archive.mak" CFG="db_archive - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_archive - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_archive - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_archive - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_archive - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_archive - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_archive - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_archive - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_archive - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_archive - Win32 Release" +!IF "$(CFG)" == "db_archive - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_archive - Win32 Debug" +!ELSEIF "$(CFG)" == "db_archive - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_archive - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_archive - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_archive - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_archive - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_archive - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_archive - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_archive - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_archive - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_archive - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_archive" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_archive" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_archive - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_archive" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_archive" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_archive - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_archive" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_archive" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_archive - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_archive" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_archive" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_archive - Win32 Release" -# Name "db_archive - Win32 Debug" -# Name "db_archive - Win32 ASCII Debug" -# Name "db_archive - Win32 ASCII Release" +# Name "db_archive - Win32 Release x86" +# Name "db_archive - Win32 Debug x86" +# Name "db_archive - Win32 ASCII Debug x86" +# Name "db_archive - Win32 ASCII Release x86" # Name "db_archive - x64 Debug AMD64" # Name "db_archive - x64 Release AMD64" # Name "db_archive - x64 Debug IA64" # Name "db_archive - x64 Release IA64" +# Name "db_archive - Win32 Debug AMD64" +# Name "db_archive - Win32 Release AMD64" +# Name "db_archive - Win32 Debug IA64" +# Name "db_archive - Win32 Release IA64" # Begin Source File SOURCE=..\db_archive\db_archive.c diff --git a/db/build_windows/db_checkpoint.dsp b/db/build_windows/db_checkpoint.dsp index 83bec7d2f..c196fbf8d 100644 --- a/db/build_windows/db_checkpoint.dsp +++ b/db/build_windows/db_checkpoint.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_checkpoint - Win32 Debug +CFG=db_checkpoint - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_checkpoint - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_checkpoint.mak" CFG="db_checkpoint - Win32 Debug" +!MESSAGE NMAKE /f "db_checkpoint.mak" CFG="db_checkpoint - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_checkpoint - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_checkpoint - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_checkpoint - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_checkpoint - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_checkpoint - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_checkpoint - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_checkpoint - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_checkpoint - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_checkpoint - Win32 Release" +!IF "$(CFG)" == "db_checkpoint - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug" +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_checkpoint - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_checkpoint - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_checkpoint - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_checkpoint - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_checkpoint - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_checkpoint" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_checkpoint" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_checkpoint" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_checkpoint" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_checkpoint" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_checkpoint" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_checkpoint - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_checkpoint" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_checkpoint" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_checkpoint - Win32 Release" -# Name "db_checkpoint - Win32 Debug" -# Name "db_checkpoint - Win32 ASCII Debug" -# Name "db_checkpoint - Win32 ASCII Release" +# Name "db_checkpoint - Win32 Release x86" +# Name "db_checkpoint - Win32 Debug x86" +# Name "db_checkpoint - Win32 ASCII Debug x86" +# Name "db_checkpoint - Win32 ASCII Release x86" # Name "db_checkpoint - x64 Debug AMD64" # Name "db_checkpoint - x64 Release AMD64" # Name "db_checkpoint - x64 Debug IA64" # Name "db_checkpoint - x64 Release IA64" +# Name "db_checkpoint - Win32 Debug AMD64" +# Name "db_checkpoint - Win32 Release AMD64" +# Name "db_checkpoint - Win32 Debug IA64" +# Name "db_checkpoint - Win32 Release IA64" # Begin Source File SOURCE=..\db_checkpoint\db_checkpoint.c diff --git a/db/build_windows/db_codegen.dsp b/db/build_windows/db_codegen.dsp new file mode 100644 index 000000000..d6f5f86e3 --- /dev/null +++ b/db/build_windows/db_codegen.dsp @@ -0,0 +1,372 @@ +# Microsoft Developer Studio Project File - Name="db_codegen" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=db_codegen - Win32 Debug x86 +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "db_codegen.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "db_codegen.mak" CFG="db_codegen - Win32 Debug x86" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "db_codegen - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - x64 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - x64 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - x64 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_codegen - Win32 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "db_codegen - Win32 Release x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release/db_codegen" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 Debug x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug/db_codegen" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 ASCII Debug x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_ASCII" +# PROP BASE Intermediate_Dir "Debug_ASCII/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_ASCII" +# PROP Intermediate_Dir "Debug_ASCII/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 ASCII Release x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_ASCII" +# PROP BASE Intermediate_Dir "Release_ASCII/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_ASCII" +# PROP Intermediate_Dir "Release_ASCII/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" + +!ELSEIF "$(CFG)" == "db_codegen - x64 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_codegen - x64 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_codegen - x64 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_codegen - x64 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_codegen - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_codegen" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_codegen" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ENDIF + +# Begin Target + +# Name "db_codegen - Win32 Release x86" +# Name "db_codegen - Win32 Debug x86" +# Name "db_codegen - Win32 ASCII Debug x86" +# Name "db_codegen - Win32 ASCII Release x86" +# Name "db_codegen - x64 Debug AMD64" +# Name "db_codegen - x64 Release AMD64" +# Name "db_codegen - x64 Debug IA64" +# Name "db_codegen - x64 Release IA64" +# Name "db_codegen - Win32 Debug AMD64" +# Name "db_codegen - Win32 Release AMD64" +# Name "db_codegen - Win32 Debug IA64" +# Name "db_codegen - Win32 Release IA64" +# Begin Source File + +SOURCE=..\db_codegen\code_capi.c +# End Source File +# Begin Source File + +SOURCE=..\db_codegen\code_parse.c +# End Source File +# Begin Source File + +SOURCE=..\db_codegen\db_codegen.c +# End Source File +# Begin Source File + +SOURCE=..\clib\getopt.c +# End Source File +# End Target +# End Project diff --git a/db/build_windows/db_config.h b/db/build_windows/db_config.h index 8e182ce63..74a036897 100644 --- a/db/build_windows/db_config.h +++ b/db/build_windows/db_config.h @@ -36,6 +36,12 @@ /* Define to 1 if you have the `atol' function. */ #define HAVE_ATOL 1 +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + /* Define to 1 if you have the `clock_gettime' function. */ /* #undef HAVE_CLOCK_GETTIME */ @@ -66,6 +72,9 @@ /* Define to 1 if you have the `fchmod' function. */ /* #undef HAVE_FCHMOD */ +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + /* Define to 1 if you have the `fcntl' function. */ /* #undef HAVE_FCNTL */ @@ -75,12 +84,27 @@ /* Define to 1 if you have the `fdatasync' function. */ /* #undef HAVE_FDATASYNC */ +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #define HAVE_FILESYSTEM_NOTZERO 1 +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + /* Define to 1 if you have the `getaddrinfo' function. */ /* #undef HAVE_GETADDRINFO */ @@ -111,6 +135,9 @@ #define HAVE_HASH 1 #endif +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_INTTYPES_H */ @@ -123,6 +150,9 @@ /* Define to 1 if you have the `isprint' function. */ #define HAVE_ISPRINT 1 +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + /* Define to 1 if you have the `isspace' function. */ #define HAVE_ISSPACE 1 @@ -178,6 +208,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ /* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ /* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ @@ -222,6 +255,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ /* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + /* Define to 1 if mutexes hold system resources. */ /* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ @@ -249,10 +285,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ /* #undef HAVE_MUTEX_WIN32_GCC */ -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -282,6 +320,9 @@ /* Define to 1 if building on QNX. */ /* #undef HAVE_QNX */ +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + /* Define to 1 if building Queue access method. */ #ifndef HAVE_SMALLBUILD #define HAVE_QUEUE 1 @@ -306,6 +347,9 @@ /* Define to 1 if building RPC client/server. */ /* #undef HAVE_RPC */ +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + /* Define to 1 if you have the `sched_yield' function. */ /* #undef HAVE_SCHED_YIELD */ @@ -337,7 +381,7 @@ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strcasecmp' function. */ -/* #undef HAVE_STRCASECMP */ +#define HAVE_STRCASECMP 1 /* Define to 1 if you have the `strcat' function. */ #define HAVE_STRCAT 1 @@ -384,13 +428,13 @@ /* Define to 1 if you have the `sysconf' function. */ /* #undef HAVE_SYSCONF */ +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FCNTL_H 1 - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ @@ -398,6 +442,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SELECT_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 @@ -407,12 +454,18 @@ /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + /* Define to 1 if you have the header file. */ /* #undef HAVE_UNISTD_H */ /* Define to 1 if unlink of file with open file descriptors will fail. */ /* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ +/* Define to 1 if port includes historic database upgrade support. */ +#define HAVE_UPGRADE_SUPPORT 1 + /* Define to 1 if building access method verification support. */ #ifndef HAVE_SMALLBUILD #define HAVE_VERIFY 1 @@ -437,13 +490,49 @@ #define PACKAGE_NAME "Berkeley DB" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "Berkeley DB 4.5.20" +#define PACKAGE_STRING "Berkeley DB 4.6.18" /* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "db-4.5.20" +#define PACKAGE_TARNAME "db-4.6.18" /* Define to the version of this package. */ -#define PACKAGE_VERSION "4.5.20" +#define PACKAGE_VERSION "4.6.18" + +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ @@ -466,14 +555,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ -#include "clib_port.h" -#include "win_db.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline __inline +#endif -/* - * Microsoft's compiler _doesn't_ define __STDC__ unless you invoke it with - * arguments turning OFF all vendor extensions. Even more unfortunately, if - * we do that, it fails to parse windows.h!!!!! So, we define __STDC__ here, - * after windows.h comes in. Note: the compiler knows we've defined it, and - * starts enforcing strict ANSI compliance from this point on. - */ -#define __STDC__ 1 +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/build_windows/db_cxx.h b/db/build_windows/db_cxx.h index 23d5dfc7f..f6acfc052 100644 --- a/db/build_windows/db_cxx.h +++ b/db/build_windows/db_cxx.h @@ -2,10 +2,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: db_cxx.in,v 12.28 2006/09/13 14:53:37 mjc Exp $ + * $Id: db_cxx.in,v 12.40 2007/06/28 13:02:50 mjc Exp $ */ #ifndef _DB_CXX_H_ @@ -163,6 +162,8 @@ extern "C" { (DB *, const DBT *, const DBT *); typedef int (*dup_compare_fcn_type) /*C++ version available*/ (DB *, const DBT *, const DBT *); + typedef int (*h_compare_fcn_type) /*C++ version available*/ + (DB *, const DBT *, const DBT *); typedef u_int32_t (*h_hash_fcn_type) /*C++ version available*/ (DB *, const void *, u_int32_t); typedef int (*pgin_fcn_type) @@ -184,93 +185,98 @@ public: // These methods exactly match those in the C interface. // - virtual int associate(DbTxn *txn, Db *secondary, - int (*callback)(Db *, const Dbt *, const Dbt *, Dbt *), - u_int32_t flags); + virtual int associate(DbTxn *txn, Db *secondary, int (*callback) + (Db *, const Dbt *, const Dbt *, Dbt *), u_int32_t flags); virtual int close(u_int32_t flags); - virtual int compact(DbTxn *txnid, Dbt *start, Dbt *stop, - DB_COMPACT *c_data, u_int32_t flags, Dbt *end); + virtual int compact(DbTxn *txnid, Dbt *start, + Dbt *stop, DB_COMPACT *c_data, u_int32_t flags, Dbt *end); virtual int cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags); virtual int del(DbTxn *txnid, Dbt *key, u_int32_t flags); virtual void err(int, const char *, ...); virtual void errx(const char *, ...); + virtual int exists(DbTxn *txnid, Dbt *key, u_int32_t flags); virtual int fd(int *fdp); virtual int get(DbTxn *txnid, Dbt *key, Dbt *data, u_int32_t flags); - virtual void *get_app_private() const; + virtual int get_bt_minkey(u_int32_t *); virtual int get_byteswapped(int *); + virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int get_dbname(const char **, const char **); + virtual int get_encrypt_flags(u_int32_t *); + virtual void get_errfile(FILE **); + virtual void get_errpfx(const char **); + virtual int get_flags(u_int32_t *); + virtual int get_h_ffactor(u_int32_t *); + virtual int get_h_nelem(u_int32_t *); + virtual int get_lorder(int *); + virtual void get_msgfile(FILE **); + virtual int get_multiple(); virtual int get_open_flags(u_int32_t *); - virtual int get_type(DBTYPE *); + virtual int get_pagesize(u_int32_t *); + virtual int get_priority(DB_CACHE_PRIORITY *); + virtual int get_q_extentsize(u_int32_t *); + virtual int get_re_delim(int *); + virtual int get_re_len(u_int32_t *); + virtual int get_re_pad(int *); + virtual int get_re_source(const char **); virtual int get_transactional(); + virtual int get_type(DBTYPE *); virtual int join(Dbc **curslist, Dbc **dbcp, u_int32_t flags); virtual int key_range(DbTxn *, Dbt *, DB_KEY_RANGE *, u_int32_t); virtual int open(DbTxn *txnid, const char *, const char *subname, DBTYPE, u_int32_t, int); - virtual int pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Dbt *data, - u_int32_t flags); + virtual int pget(DbTxn *txnid, + Dbt *key, Dbt *pkey, Dbt *data, u_int32_t flags); virtual int put(DbTxn *, Dbt *, Dbt *, u_int32_t); virtual int remove(const char *, const char *, u_int32_t); virtual int rename(const char *, const char *, const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); + virtual int set_alloc( + db_malloc_fcn_type, db_realloc_fcn_type, db_free_fcn_type); virtual void set_app_private(void *); virtual int set_append_recno(int (*)(Db *, Dbt *, db_recno_t)); virtual int set_bt_compare(bt_compare_fcn_type); /*deprecated*/ virtual int set_bt_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_bt_minkey(u_int32_t *); virtual int set_bt_minkey(u_int32_t); virtual int set_bt_prefix(bt_prefix_fcn_type); /*deprecated*/ virtual int set_bt_prefix(size_t (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int set_cachesize(u_int32_t, u_int32_t, int); virtual int set_dup_compare(dup_compare_fcn_type); /*deprecated*/ virtual int set_dup_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_encrypt_flags(u_int32_t *); virtual int set_encrypt(const char *, u_int32_t); virtual void set_errcall( void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); virtual void set_errpfx(const char *); virtual int set_feedback(void (*)(Db *, int, int)); - virtual int get_flags(u_int32_t *); virtual int set_flags(u_int32_t); - virtual int get_h_ffactor(u_int32_t *); + virtual int set_h_compare(h_compare_fcn_type); /*deprecated*/ + virtual int set_h_compare(int (*)(Db *, const Dbt *, const Dbt *)); virtual int set_h_ffactor(u_int32_t); virtual int set_h_hash(h_hash_fcn_type); /*deprecated*/ virtual int set_h_hash(u_int32_t (*)(Db *, const void *, u_int32_t)); - virtual int get_h_nelem(u_int32_t *); virtual int set_h_nelem(u_int32_t); - virtual int get_lorder(int *); virtual int set_lorder(int); virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); virtual void set_msgfile(FILE *); - virtual int get_pagesize(u_int32_t *); virtual int set_pagesize(u_int32_t); virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int get_re_delim(int *); + virtual int set_priority(DB_CACHE_PRIORITY); + virtual int set_q_extentsize(u_int32_t); virtual int set_re_delim(int); - virtual int get_re_len(u_int32_t *); virtual int set_re_len(u_int32_t); - virtual int get_re_pad(int *); virtual int set_re_pad(int); - virtual int get_re_source(const char **); virtual int set_re_source(const char *); - virtual int get_q_extentsize(u_int32_t *); - virtual int set_q_extentsize(u_int32_t); virtual int stat(DbTxn *, void *sp, u_int32_t flags); virtual int stat_print(u_int32_t flags); virtual int sync(u_int32_t flags); virtual int truncate(DbTxn *, u_int32_t *, u_int32_t); virtual int upgrade(const char *name, u_int32_t flags); - virtual int verify(const char *, const char *, __DB_STD(ostream) *, - u_int32_t); + virtual int verify( + const char *, const char *, __DB_STD(ostream) *, u_int32_t); // These additional methods are not in the C interface, and // are only available for C++. // + virtual void *get_app_private() const; virtual __DB_STD(ostream) *get_error_stream(); virtual void set_error_stream(__DB_STD(ostream) *); virtual __DB_STD(ostream) *get_message_stream(); @@ -327,6 +333,7 @@ public: size_t (*bt_prefix_callback_)(Db *, const Dbt *, const Dbt *); int (*dup_compare_callback_)(Db *, const Dbt *, const Dbt *); void (*feedback_callback_)(Db *, int, int); + int (*h_compare_callback_)(Db *, const Dbt *, const Dbt *); u_int32_t (*h_hash_callback_)(Db *, const void *, u_int32_t); }; @@ -343,8 +350,10 @@ public: int del(u_int32_t flags); int dup(Dbc** cursorp, u_int32_t flags); int get(Dbt* key, Dbt *data, u_int32_t flags); + int get_priority(DB_CACHE_PRIORITY *priorityp); int pget(Dbt* key, Dbt* pkey, Dbt *data, u_int32_t flags); int put(Dbt* key, Dbt *data, u_int32_t flags); + int set_priority(DB_CACHE_PRIORITY priority); private: // No data is permitted in this class (see comment at top) @@ -409,6 +418,8 @@ public: virtual void set_app_private(void *); virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int set_cachesize(u_int32_t, u_int32_t, int); + virtual int get_cache_max(u_int32_t *, u_int32_t *); + virtual int set_cache_max(u_int32_t, u_int32_t); virtual int get_data_dirs(const char ***); virtual int set_data_dir(const char *); virtual int get_encrypt_flags(u_int32_t *); @@ -452,8 +463,8 @@ public: virtual int set_mp_mmapsize(size_t); virtual int get_mp_max_openfd(int *); virtual int set_mp_max_openfd(int); - virtual int get_mp_max_write(int *, int *); - virtual int set_mp_max_write(int, int); + virtual int get_mp_max_write(int *, db_timeout_t *); + virtual int set_mp_max_write(int, db_timeout_t); virtual void set_msgcall(void (*)(const DbEnv *, const char *)); virtual void get_msgfile(FILE **); virtual void set_msgfile(FILE *); @@ -572,17 +583,19 @@ public: // Replication functions // - virtual int rep_elect(int, int, int *, u_int32_t); + virtual int rep_elect(int, int, u_int32_t); virtual int rep_flush(); - virtual int rep_process_message(Dbt *, Dbt *, int *, DbLsn *); + virtual int rep_process_message(Dbt *, Dbt *, int, DbLsn *); virtual int rep_start(Dbt *, u_int32_t); virtual int rep_stat(DB_REP_STAT **statp, u_int32_t flags); virtual int rep_stat_print(u_int32_t flags); + virtual int rep_set_lease(u_int32_t, u_int32_t); virtual int rep_get_limit(u_int32_t *, u_int32_t *); virtual int rep_set_limit(u_int32_t, u_int32_t); virtual int rep_set_transport(int, int (*)(DbEnv *, const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t)); virtual int set_rep_request(u_int32_t, u_int32_t); + virtual int get_thread_count(u_int32_t *); virtual int set_thread_count(u_int32_t); virtual int set_thread_id(void (*)(DbEnv *, pid_t *, db_threadid_t *)); virtual int set_thread_id_string(char *(*)(DbEnv *, @@ -595,7 +608,7 @@ public: // virtual int rep_get_nsites(int *n); virtual int rep_set_nsites(int n); - virtual int rep_get_priority(int *priority); + virtual int rep_get_priority(int *priorityp); virtual int rep_set_priority(int priority); virtual int rep_get_timeout(int which, db_timeout_t *timeout); virtual int rep_set_timeout(int which, db_timeout_t timeout); @@ -607,6 +620,8 @@ public: u_int32_t flags); virtual int repmgr_site_list(u_int *countp, DB_REPMGR_SITE **listp); virtual int repmgr_start(int nthreads, u_int32_t flags); + virtual int repmgr_stat(DB_REPMGR_STAT **statp, u_int32_t flags); + virtual int repmgr_stat_print(u_int32_t flags); // Conversion functions // @@ -719,6 +734,7 @@ class _exported DbLogc : protected DB_LOGC public: int close(u_int32_t _flags); int get(DbLsn *lsn, Dbt *data, u_int32_t _flags); + int version(u_int32_t *versionp, u_int32_t _flags); private: // No data is permitted in this class (see comment at top) @@ -754,25 +770,25 @@ class _exported DbMpoolFile public: int close(u_int32_t flags); int get(db_pgno_t *pgnoaddr, DbTxn *txn, u_int32_t flags, void *pagep); - int open(const char *file, u_int32_t flags, int mode, size_t pagesize); - int get_transactional(void); - int put(void *pgaddr, u_int32_t flags); - int set(void *pgaddr, u_int32_t flags); int get_clear_len(u_int32_t *len); - int set_clear_len(u_int32_t len); int get_fileid(u_int8_t *fileid); - int set_fileid(u_int8_t *fileid); int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags, int onoff); int get_ftype(int *ftype); - int set_ftype(int ftype); + int get_last_pgno(db_pgno_t *pgnop); int get_lsn_offset(int32_t *offsetp); - int set_lsn_offset(int32_t offset); int get_maxsize(u_int32_t *gbytes, u_int32_t *bytes); - int set_maxsize(u_int32_t gbytes, u_int32_t bytes); int get_pgcookie(DBT *dbt); - int set_pgcookie(DBT *dbt); int get_priority(DB_CACHE_PRIORITY *priorityp); + int get_transactional(void); + int open(const char *file, u_int32_t flags, int mode, size_t pagesize); + int put(void *pgaddr, DB_CACHE_PRIORITY priority, u_int32_t flags); + int set_clear_len(u_int32_t len); + int set_fileid(u_int8_t *fileid); + int set_flags(u_int32_t flags, int onoff); + int set_ftype(int ftype); + int set_lsn_offset(int32_t offset); + int set_maxsize(u_int32_t gbytes, u_int32_t bytes); + int set_pgcookie(DBT *dbt); int set_priority(DB_CACHE_PRIORITY priority); int sync(); diff --git a/db/build_windows/db_deadlock.dsp b/db/build_windows/db_deadlock.dsp index c6b4f5c3d..05c64342d 100644 --- a/db/build_windows/db_deadlock.dsp +++ b/db/build_windows/db_deadlock.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_deadlock - Win32 Debug +CFG=db_deadlock - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_deadlock - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_deadlock.mak" CFG="db_deadlock - Win32 Debug" +!MESSAGE NMAKE /f "db_deadlock.mak" CFG="db_deadlock - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_deadlock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_deadlock - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_deadlock - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_deadlock - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_deadlock - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_deadlock - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_deadlock - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_deadlock - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_deadlock - Win32 Release" +!IF "$(CFG)" == "db_deadlock - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug" +!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_deadlock - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_deadlock - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_deadlock - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_deadlock - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_deadlock - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_deadlock - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_deadlock - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_deadlock - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_deadlock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_deadlock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_deadlock - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_deadlock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_deadlock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_deadlock - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_deadlock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_deadlock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_deadlock - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_deadlock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_deadlock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_deadlock - Win32 Release" -# Name "db_deadlock - Win32 Debug" -# Name "db_deadlock - Win32 ASCII Debug" -# Name "db_deadlock - Win32 ASCII Release" +# Name "db_deadlock - Win32 Release x86" +# Name "db_deadlock - Win32 Debug x86" +# Name "db_deadlock - Win32 ASCII Debug x86" +# Name "db_deadlock - Win32 ASCII Release x86" # Name "db_deadlock - x64 Debug AMD64" # Name "db_deadlock - x64 Release AMD64" # Name "db_deadlock - x64 Debug IA64" # Name "db_deadlock - x64 Release IA64" +# Name "db_deadlock - Win32 Debug AMD64" +# Name "db_deadlock - Win32 Release AMD64" +# Name "db_deadlock - Win32 Debug IA64" +# Name "db_deadlock - Win32 Release IA64" # Begin Source File SOURCE=..\db_deadlock\db_deadlock.c diff --git a/db/build_windows/db_dll.dsp b/db/build_windows/db_dll.dsp index 9c15ce57a..e99f4eaa3 100644 --- a/db/build_windows/db_dll.dsp +++ b/db/build_windows/db_dll.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 -CFG=db_dll - Win32 Debug +CFG=db_dll - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_dll - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_dll.mak" CFG="db_dll - Win32 Debug" +!MESSAGE NMAKE /f "db_dll.mak" CFG="db_dll - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_dll - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_dll - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_dll - Win32 ASCII Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_dll - Win32 ASCII Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Release x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 ASCII Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 ASCII Release x86" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_dll - x64 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_dll - x64 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_dll - x64 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_dll - x64 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_dll - Win32 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # Begin Project @@ -35,7 +39,7 @@ CPP=cl.exe MTL=midl.exe RSC=rc.exe -!IF "$(CFG)" == "db_dll - Win32 Release" +!IF "$(CFG)" == "db_dll - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -59,9 +63,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb45.dll" /libpath:"$(OUTDIR)" +# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb46.dll" /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_dll - Win32 Debug" +!ELSEIF "$(CFG)" == "db_dll - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -86,9 +90,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_dll - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_dll - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -114,10 +118,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb45d.dll" /fixed:no -# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb46d.dll" /fixed:no +# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_dll - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_dll - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -141,8 +145,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb45.dll" -# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb46.dll" +# ADD LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb46.dll" /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_dll - x64 Debug AMD64" @@ -169,8 +173,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb45d.dll" /fixed:no -# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb46d.dll" /fixed:no +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_dll - x64 Release AMD64" @@ -196,8 +200,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb45.dll" -# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb46.dll" +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb46.dll" /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_dll - x64 Debug IA64" @@ -225,8 +229,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb45d.dll" /fixed:no -# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb46d.dll" /fixed:no +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_dll - x64 Release IA64" @@ -252,21 +256,136 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb45.dll" -# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb46.dll" +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb46.dll" /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_dll - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_dll" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_dll" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /Wp64 /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb46d.dll" /fixed:no +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_dll - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_dll" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_dll" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb46.dll" +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb46.dll" /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_dll - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_dll" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_dll" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# SUBTRACT CPP /Fr +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb46d.dll" /fixed:no +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb46d.dll" /fixed:no /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_dll - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_dll" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_dll" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb46.dll" +# ADD LINK32 ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb46.dll" /libpath:"$(OUTDIR)" !ENDIF # Begin Target -# Name "db_dll - Win32 Release" -# Name "db_dll - Win32 Debug" -# Name "db_dll - Win32 ASCII Debug" -# Name "db_dll - Win32 ASCII Release" +# Name "db_dll - Win32 Release x86" +# Name "db_dll - Win32 Debug x86" +# Name "db_dll - Win32 ASCII Debug x86" +# Name "db_dll - Win32 ASCII Release x86" # Name "db_dll - x64 Debug AMD64" # Name "db_dll - x64 Release AMD64" # Name "db_dll - x64 Debug IA64" # Name "db_dll - x64 Release IA64" +# Name "db_dll - Win32 Debug AMD64" +# Name "db_dll - Win32 Release AMD64" +# Name "db_dll - Win32 Debug IA64" +# Name "db_dll - Win32 Release IA64" # Begin Source File SOURCE=..\btree\bt_compact.c @@ -361,10 +480,6 @@ SOURCE=..\clib\getaddrinfo.c # End Source File # Begin Source File -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - SOURCE=..\clib\strsep.c # End Source File # Begin Source File @@ -373,10 +488,6 @@ SOURCE=..\common\db_byteorder.c # End Source File # Begin Source File -SOURCE=..\common\db_clock.c -# End Source File -# Begin Source File - SOURCE=..\common\db_err.c # End Source File # Begin Source File @@ -393,6 +504,10 @@ SOURCE=..\common\db_log2.c # End Source File # Begin Source File +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File + SOURCE=..\common\mkpath.c # End Source File # Begin Source File @@ -621,11 +736,7 @@ SOURCE=..\dbreg\dbreg_util.c # End Source File # Begin Source File -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c +SOURCE=..\env\env_alloc.c # End Source File # Begin Source File @@ -641,10 +752,18 @@ SOURCE=..\env\env_file.c # End Source File # Begin Source File +SOURCE=..\env\env_globals.c +# End Source File +# Begin Source File + SOURCE=..\env\env_method.c # End Source File # Begin Source File +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File + SOURCE=..\env\env_open.c # End Source File # Begin Source File @@ -865,6 +984,10 @@ SOURCE=..\mp\mp_register.c # End Source File # Begin Source File +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File + SOURCE=..\mp\mp_stat.c # End Source File # Begin Source File @@ -901,15 +1024,15 @@ SOURCE=..\mutex\mut_win32.c # End Source File # Begin Source File -SOURCE=..\os\os_alloc.c +SOURCE=..\os\os_abort.c # End Source File # Begin Source File -SOURCE=..\os\os_fzero.c +SOURCE=..\os\os_alloc.c # End Source File # Begin Source File -SOURCE=..\os\os_mkdir.c +SOURCE=..\os\os_fzero.c # End Source File # Begin Source File @@ -985,6 +1108,10 @@ SOURCE=..\os_windows\os_map.c # End Source File # Begin Source File +SOURCE=..\os_windows\os_mkdir.c +# End Source File +# Begin Source File + SOURCE=..\os_windows\os_open.c # End Source File # Begin Source File @@ -1077,6 +1204,10 @@ SOURCE=..\rep\rep_elect.c # End Source File # Begin Source File +SOURCE=..\rep\rep_lease.c +# End Source File +# Begin Source File + SOURCE=..\rep\rep_log.c # End Source File # Begin Source File diff --git a/db/build_windows/db_dump.dsp b/db/build_windows/db_dump.dsp index 10a681499..200cd3c68 100644 --- a/db/build_windows/db_dump.dsp +++ b/db/build_windows/db_dump.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_dump - Win32 Debug +CFG=db_dump - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_dump - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_dump.mak" CFG="db_dump - Win32 Debug" +!MESSAGE NMAKE /f "db_dump.mak" CFG="db_dump - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_dump - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_dump - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_dump - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_dump - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_dump - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_dump - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_dump - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_dump - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_dump - Win32 Release" +!IF "$(CFG)" == "db_dump - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_dump - Win32 Debug" +!ELSEIF "$(CFG)" == "db_dump - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_dump - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_dump - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_dump - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_dump - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_dump - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_dump - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_dump - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_dump - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_dump - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_dump" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_dump" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_dump - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_dump" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_dump" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_dump - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_dump" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_dump" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_dump - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_dump" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_dump" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_dump - Win32 Release" -# Name "db_dump - Win32 Debug" -# Name "db_dump - Win32 ASCII Debug" -# Name "db_dump - Win32 ASCII Release" +# Name "db_dump - Win32 Release x86" +# Name "db_dump - Win32 Debug x86" +# Name "db_dump - Win32 ASCII Debug x86" +# Name "db_dump - Win32 ASCII Release x86" # Name "db_dump - x64 Debug AMD64" # Name "db_dump - x64 Release AMD64" # Name "db_dump - x64 Debug IA64" # Name "db_dump - x64 Release IA64" +# Name "db_dump - Win32 Debug AMD64" +# Name "db_dump - Win32 Release AMD64" +# Name "db_dump - Win32 Debug IA64" +# Name "db_dump - Win32 Release IA64" # Begin Source File SOURCE=..\db_dump\db_dump.c diff --git a/db/build_windows/db_hotbackup.dsp b/db/build_windows/db_hotbackup.dsp index aa6a270bb..d983147ad 100644 --- a/db/build_windows/db_hotbackup.dsp +++ b/db/build_windows/db_hotbackup.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_hotbackup - Win32 Debug +CFG=db_hotbackup - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_hotbackup - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_hotbackup.mak" CFG="db_hotbackup - Win32 Debug" +!MESSAGE NMAKE /f "db_hotbackup.mak" CFG="db_hotbackup - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_hotbackup - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_hotbackup - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_hotbackup - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_hotbackup - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_hotbackup - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_hotbackup - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_hotbackup - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_hotbackup - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_hotbackup - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_hotbackup - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_hotbackup - Win32 Release" +!IF "$(CFG)" == "db_hotbackup - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Debug" +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_hotbackup - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_hotbackup - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_hotbackup - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_hotbackup - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_hotbackup - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_hotbackup - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_hotbackup" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_hotbackup" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_hotbackup" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_hotbackup" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_hotbackup" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_hotbackup" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_hotbackup - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_hotbackup" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_hotbackup" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_hotbackup - Win32 Release" -# Name "db_hotbackup - Win32 Debug" -# Name "db_hotbackup - Win32 ASCII Debug" -# Name "db_hotbackup - Win32 ASCII Release" +# Name "db_hotbackup - Win32 Release x86" +# Name "db_hotbackup - Win32 Debug x86" +# Name "db_hotbackup - Win32 ASCII Debug x86" +# Name "db_hotbackup - Win32 ASCII Release x86" # Name "db_hotbackup - x64 Debug AMD64" # Name "db_hotbackup - x64 Release AMD64" # Name "db_hotbackup - x64 Debug IA64" # Name "db_hotbackup - x64 Release IA64" +# Name "db_hotbackup - Win32 Debug AMD64" +# Name "db_hotbackup - Win32 Release AMD64" +# Name "db_hotbackup - Win32 Debug IA64" +# Name "db_hotbackup - Win32 Release IA64" # Begin Source File SOURCE=..\db_hotbackup\db_hotbackup.c diff --git a/db/build_windows/db_int.h b/db/build_windows/db_int.h index 02aa4e86e..157a4a65a 100644 --- a/db/build_windows/db_int.h +++ b/db/build_windows/db_int.h @@ -2,19 +2,18 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_int.in,v 12.41 2006/09/19 15:06:59 bostic Exp $ + * $Id: db_int.in,v 12.58 2007/05/30 14:06:39 bostic Exp $ */ #ifndef _DB_INT_H_ #define _DB_INT_H_ /******************************************************* - * Berkeley DB includes. + * Berkeley DB ANSI/POSIX include files. *******************************************************/ -#ifndef NO_SYSTEM_INCLUDES +#ifdef HAVE_SYSTEM_INCLUDE_FILES #include #ifdef DIAG_MVCC #include @@ -48,7 +47,9 @@ #endif #if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H #include +#endif #include #include #include @@ -70,9 +71,34 @@ #include #include #include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" #endif #include "db.h" +#include "clib_port.h" #include "dbinc/queue.h" #include "dbinc/shqueue.h" @@ -84,41 +110,6 @@ extern "C" { /******************************************************* * General purpose constants and macros. *******************************************************/ -#ifndef UINT16_MAX -#define UINT16_MAX 65535 /* Maximum 16-bit unsigned. */ -#endif -#ifndef UINT32_MAX -#ifdef __STDC__ -#define UINT32_MAX 4294967295U /* Maximum 32-bit unsigned. */ -#else -#define UINT32_MAX 0xffffffff /* Maximum 32-bit unsigned. */ -#endif -#endif - -#if defined(HAVE_64BIT_TYPES) -#undef INT64_MAX -#undef INT64_MIN -#undef UINT64_MAX - -#ifdef DB_WIN32 -#define INT64_MAX _I64_MAX -#define INT64_MIN _I64_MIN -#define UINT64_MAX _UI64_MAX -#else -/* - * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can - * handle 64-bit values, but the system's constants don't include the LL/ULL - * suffix, and so can't be compiled using the 32-bit compiler. - */ -#define INT64_MAX 9223372036854775807LL -#define INT64_MIN (-INT64_MAX-1) -#define UINT64_MAX 18446744073709551615ULL -#endif /* DB_WIN32 */ - -#define INT64_FMT "%I64d" -#define UINT64_FMT "%I64u" -#endif /* HAVE_64BIT_TYPES */ - #undef FALSE #define FALSE 0 #undef TRUE @@ -127,8 +118,13 @@ extern "C" { #define MEGABYTE 1048576 #define GIGABYTE 1073741824 -#define MS_PER_SEC 1000 /* Milliseconds in a second. */ -#define USEC_PER_MS 1000 /* Microseconds in a millisecond. */ +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ #define RECNO_OOB 0 /* Illegal record number. */ @@ -160,11 +156,6 @@ extern "C" { #define ALIGNP_INC(p, bound) \ (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) -/* Decrement a pointer to a specific boundary. */ -#undef ALIGNP_DEC -#define ALIGNP_DEC(p, bound) \ - (void *)((uintptr_t)(p) & ~(((uintptr_t)(bound)) - 1)) - /* * Print an address as a u_long (a u_long is the largest type we can print * portably). Most 64-bit systems have made longs 64-bits, so this should @@ -233,6 +224,17 @@ typedef struct __fn { ((int)((total) == 0 ? 0 : \ 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + /* * Structure used for callback message aggregation. * @@ -313,6 +315,7 @@ typedef struct __db_msgbuf { #define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) #define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) #define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) #define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ @@ -437,7 +440,7 @@ typedef enum { #ifdef DIAGNOSTIC #define ENV_LEAVE(dbenv, ip) do { \ if ((ip) != NULL) { \ - DB_ASSERT(dbenv, ip->dbth_state == THREAD_ACTIVE); \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ (ip)->dbth_state = THREAD_OUT; \ } \ } while (0) @@ -648,7 +651,6 @@ typedef struct __dbpginfo { ((lsn0)->offset != (lsn1)->offset ? \ ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) - /******************************************************* * Txn. *******************************************************/ @@ -715,6 +717,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; #include "dbinc/globals.h" +#include "dbinc/clock.h" #include "dbinc/debug.h" #include "dbinc/region.h" #include "dbinc_auto/env_ext.h" @@ -745,7 +748,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * Test if we need to log a change. By default, we don't log operations without * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. * This is because we want to get log records for read/write operations, and, if - * we trying to debug something, more information is always better. + * we are trying to debug something, more information is always better. * * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING @@ -755,7 +758,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. * - * If we're not in recovery (master - doing an abort a client applying + * If we're not in recovery (master - doing an abort or a client applying * a txn), then a client's only path through here is on an internal * operation, and a master's only path through here is a transactional * operation. Detect if either is not the case. diff --git a/db/build_windows/db_java.dsp b/db/build_windows/db_java.dsp index 996cfc9e3..7d633c1d6 100644 --- a/db/build_windows/db_java.dsp +++ b/db/build_windows/db_java.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 -CFG=db_java - Win32 Debug +CFG=db_java - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_java - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_java.mak" CFG="db_java - Win32 Debug" +!MESSAGE NMAKE /f "db_java.mak" CFG="db_java - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_java - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_java - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_java - Win32 ASCII Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_java - Win32 ASCII Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Release x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 ASCII Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 ASCII Release x86" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_java - x64 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_java - x64 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_java - x64 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_java - x64 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_java - Win32 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # Begin Project @@ -35,7 +39,7 @@ CPP=cl.exe MTL=midl.exe RSC=rc.exe -!IF "$(CFG)" == "db_java - Win32 Release" +!IF "$(CFG)" == "db_java - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -58,8 +62,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_java45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /machine:I386 +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_java46.dll" /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -78,7 +82,7 @@ SOURCE="$(InputPath)" echo Java build finished # End Custom Build -!ELSEIF "$(CFG)" == "db_java - Win32 Debug" +!ELSEIF "$(CFG)" == "db_java - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -102,8 +106,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb_java45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -122,7 +126,7 @@ SOURCE="$(InputPath)" echo Java build finished # End Custom Build -!ELSEIF "$(CFG)" == "db_java - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_java - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -148,8 +152,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_java45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_java45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_java46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -168,7 +172,7 @@ SOURCE="$(InputPath)" echo Java build finished # End Custom Build -!ELSEIF "$(CFG)" == "db_java - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_java - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -192,8 +196,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_java45.dll" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_java45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_java46.dll" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_java46.dll" /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -237,8 +241,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -281,8 +285,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java45.dll" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java46.dll" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java46.dll" /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -327,8 +331,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_java45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_java45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_java46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -371,8 +375,187 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java45.dll" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java46.dll" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java46.dll" /libpath:"$(OUTDIR)" +# Begin Custom Build - Compiling java files using javac +ProjDir=. +InputPath=$(OUTDIR)/libdb_java44d.dll +SOURCE="$(InputPath)" + +"force_compilation.txt" : $(SOURCE) "$(INTDIR)" + echo compiling Berkeley DB classes + mkdir "$(INTDIR)\classes" + javac -g -d "$(INTDIR)\classes" -classpath "$(INTDIR)\classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java ..\java\src\com\sleepycat\util\keyrange\*.java + echo compiling examples + mkdir "$(INTDIR)\classes.ex" + javac -g -d "$(INTDIR)\classes.ex" -classpath "$(INTDIR)\classes;$(INTDIR)\classes.ex" ..\examples_java\src\db\*.java ..\examples_java\src\db\GettingStarted\*.java ..\examples_java\src\db\repquote\*.java ..\examples_java\src\collections\access\*.java ..\examples_java\src\collections\hello\*.java ..\examples_java\src\collections\ship\basic\*.java ..\examples_java\src\collections\ship\entity\*.java ..\examples_java\src\collections\ship\tuple\*.java ..\examples_java\src\collections\ship\sentity\*.java ..\examples_java\src\collections\ship\marshal\*.java ..\examples_java\src\collections\ship\factory\*.java + echo creating jar files + jar cf "$(OUTDIR)/db.jar" -C "$(INTDIR)\classes" . + jar cf "$(OUTDIR)/dbexamples.jar" -C "$(INTDIR)\classes.ex" . + echo Java build finished +# End Custom Build + +!ELSEIF "$(CFG)" == "db_java - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_java" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_java" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /Wp64 /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" +# Begin Custom Build - Compiling java files using javac +ProjDir=. +InputPath=$(OUTDIR)/libdb_java44d.dll +SOURCE="$(InputPath)" + +"force_compilation.txt" : $(SOURCE) "$(INTDIR)" + echo compiling Berkeley DB classes + mkdir "$(INTDIR)\classes" + javac -g -d "$(INTDIR)\classes" -classpath "$(INTDIR)\classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java ..\java\src\com\sleepycat\util\keyrange\*.java + echo compiling examples + mkdir "$(INTDIR)\classes.ex" + javac -g -d "$(INTDIR)\classes.ex" -classpath "$(INTDIR)\classes;$(INTDIR)\classes.ex" ..\examples_java\src\db\*.java ..\examples_java\src\db\GettingStarted\*.java ..\examples_java\src\db\repquote\*.java ..\examples_java\src\collections\access\*.java ..\examples_java\src\collections\hello\*.java ..\examples_java\src\collections\ship\basic\*.java ..\examples_java\src\collections\ship\entity\*.java ..\examples_java\src\collections\ship\tuple\*.java ..\examples_java\src\collections\ship\sentity\*.java ..\examples_java\src\collections\ship\marshal\*.java ..\examples_java\src\collections\ship\factory\*.java + echo creating jar files + jar cf "$(OUTDIR)/db.jar" -C "$(INTDIR)\classes" . + jar cf "$(OUTDIR)/dbexamples.jar" -C "$(INTDIR)\classes.ex" . + echo Java build finished +# End Custom Build + +!ELSEIF "$(CFG)" == "db_java - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_java" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_java" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java46.dll" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_java46.dll" /libpath:"$(OUTDIR)" +# Begin Custom Build - Compiling java files using javac +ProjDir=. +InputPath=$(OUTDIR)/libdb_java44d.dll +SOURCE="$(InputPath)" + +"force_compilation.txt" : $(SOURCE) "$(INTDIR)" + echo compiling Berkeley DB classes + mkdir "$(INTDIR)\classes" + javac -g -d "$(INTDIR)\classes" -classpath "$(INTDIR)\classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java ..\java\src\com\sleepycat\util\keyrange\*.java + echo compiling examples + mkdir "$(INTDIR)\classes.ex" + javac -g -d "$(INTDIR)\classes.ex" -classpath "$(INTDIR)\classes;$(INTDIR)\classes.ex" ..\examples_java\src\db\*.java ..\examples_java\src\db\GettingStarted\*.java ..\examples_java\src\db\repquote\*.java ..\examples_java\src\collections\access\*.java ..\examples_java\src\collections\hello\*.java ..\examples_java\src\collections\ship\basic\*.java ..\examples_java\src\collections\ship\entity\*.java ..\examples_java\src\collections\ship\tuple\*.java ..\examples_java\src\collections\ship\sentity\*.java ..\examples_java\src\collections\ship\marshal\*.java ..\examples_java\src\collections\ship\factory\*.java + echo creating jar files + jar cf "$(OUTDIR)/db.jar" -C "$(INTDIR)\classes" . + jar cf "$(OUTDIR)/dbexamples.jar" -C "$(INTDIR)\classes.ex" . + echo Java build finished +# End Custom Build + +!ELSEIF "$(CFG)" == "db_java - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_java" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_java" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# SUBTRACT CPP /Fr +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_java46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_java46d.dll" /fixed:no /libpath:"$(OUTDIR)" +# Begin Custom Build - Compiling java files using javac +ProjDir=. +InputPath=$(OUTDIR)/libdb_java44d.dll +SOURCE="$(InputPath)" + +"force_compilation.txt" : $(SOURCE) "$(INTDIR)" + echo compiling Berkeley DB classes + mkdir "$(INTDIR)\classes" + javac -g -d "$(INTDIR)\classes" -classpath "$(INTDIR)\classes" ..\java\src\com\sleepycat\db\*.java ..\java\src\com\sleepycat\db\internal\*.java ..\java\src\com\sleepycat\bind\*.java ..\java\src\com\sleepycat\bind\serial\*.java ..\java\src\com\sleepycat\bind\tuple\*.java ..\java\src\com\sleepycat\collections\*.java ..\java\src\com\sleepycat\compat\*.java ..\java\src\com\sleepycat\util\*.java ..\java\src\com\sleepycat\util\keyrange\*.java + echo compiling examples + mkdir "$(INTDIR)\classes.ex" + javac -g -d "$(INTDIR)\classes.ex" -classpath "$(INTDIR)\classes;$(INTDIR)\classes.ex" ..\examples_java\src\db\*.java ..\examples_java\src\db\GettingStarted\*.java ..\examples_java\src\db\repquote\*.java ..\examples_java\src\collections\access\*.java ..\examples_java\src\collections\hello\*.java ..\examples_java\src\collections\ship\basic\*.java ..\examples_java\src\collections\ship\entity\*.java ..\examples_java\src\collections\ship\tuple\*.java ..\examples_java\src\collections\ship\sentity\*.java ..\examples_java\src\collections\ship\marshal\*.java ..\examples_java\src\collections\ship\factory\*.java + echo creating jar files + jar cf "$(OUTDIR)/db.jar" -C "$(INTDIR)\classes" . + jar cf "$(OUTDIR)/dbexamples.jar" -C "$(INTDIR)\classes.ex" . + echo Java build finished +# End Custom Build + +!ELSEIF "$(CFG)" == "db_java - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_java" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_java" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java46.dll" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_java46.dll" /libpath:"$(OUTDIR)" # Begin Custom Build - Compiling java files using javac ProjDir=. InputPath=$(OUTDIR)/libdb_java44d.dll @@ -395,14 +578,18 @@ SOURCE="$(InputPath)" # Begin Target -# Name "db_java - Win32 Release" -# Name "db_java - Win32 Debug" -# Name "db_java - Win32 ASCII Debug" -# Name "db_java - Win32 ASCII Release" +# Name "db_java - Win32 Release x86" +# Name "db_java - Win32 Debug x86" +# Name "db_java - Win32 ASCII Debug x86" +# Name "db_java - Win32 ASCII Release x86" # Name "db_java - x64 Debug AMD64" # Name "db_java - x64 Release AMD64" # Name "db_java - x64 Debug IA64" # Name "db_java - x64 Release IA64" +# Name "db_java - Win32 Debug AMD64" +# Name "db_java - Win32 Release AMD64" +# Name "db_java - Win32 Debug IA64" +# Name "db_java - Win32 Release IA64" # Begin Source File SOURCE=..\libdb_java\db_java_wrap.c diff --git a/db/build_windows/db_load.dsp b/db/build_windows/db_load.dsp index b75c2f83a..8482daabb 100644 --- a/db/build_windows/db_load.dsp +++ b/db/build_windows/db_load.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_load - Win32 Debug +CFG=db_load - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_load - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_load.mak" CFG="db_load - Win32 Debug" +!MESSAGE NMAKE /f "db_load.mak" CFG="db_load - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_load - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_load - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_load - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_load - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_load - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_load - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_load - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_load - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_load - Win32 Release" +!IF "$(CFG)" == "db_load - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_load - Win32 Debug" +!ELSEIF "$(CFG)" == "db_load - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_load - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_load - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_load - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_load - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_load - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_load - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_load - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_load - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_load - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_load - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_load - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_load - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_load - Win32 Release" -# Name "db_load - Win32 Debug" -# Name "db_load - Win32 ASCII Debug" -# Name "db_load - Win32 ASCII Release" +# Name "db_load - Win32 Release x86" +# Name "db_load - Win32 Debug x86" +# Name "db_load - Win32 ASCII Debug x86" +# Name "db_load - Win32 ASCII Release x86" # Name "db_load - x64 Debug AMD64" # Name "db_load - x64 Release AMD64" # Name "db_load - x64 Debug IA64" # Name "db_load - x64 Release IA64" +# Name "db_load - Win32 Debug AMD64" +# Name "db_load - Win32 Release AMD64" +# Name "db_load - Win32 Debug IA64" +# Name "db_load - Win32 Release IA64" # Begin Source File SOURCE=..\db_load\db_load.c diff --git a/db/build_windows/db_perf.dsp b/db/build_windows/db_perf.dsp index de5dee7af..154dd42fe 100644 --- a/db/build_windows/db_perf.dsp +++ b/db/build_windows/db_perf.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_perf - Win32 Debug +CFG=db_perf - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_perf - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_perf.mak" CFG="db_perf - Win32 Debug" +!MESSAGE NMAKE /f "db_perf.mak" CFG="db_perf - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_perf - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_perf - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_perf - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_perf - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_perf - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_perf - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_perf - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_perf - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_perf - Win32 Release" +!IF "$(CFG)" == "db_perf - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_perf - Win32 Debug" +!ELSEIF "$(CFG)" == "db_perf - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_perf - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_perf - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_perf - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_perf - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_perf - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_perf - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_perf - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_perf - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_perf - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_perf" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_perf" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_perf - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_perf" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_perf" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_perf - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_perf" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_perf" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_perf - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_perf" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_perf" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_perf - Win32 Release" -# Name "db_perf - Win32 Debug" -# Name "db_perf - Win32 ASCII Debug" -# Name "db_perf - Win32 ASCII Release" +# Name "db_perf - Win32 Release x86" +# Name "db_perf - Win32 Debug x86" +# Name "db_perf - Win32 ASCII Debug x86" +# Name "db_perf - Win32 ASCII Release x86" # Name "db_perf - x64 Debug AMD64" # Name "db_perf - x64 Release AMD64" # Name "db_perf - x64 Debug IA64" # Name "db_perf - x64 Release IA64" +# Name "db_perf - Win32 Debug AMD64" +# Name "db_perf - Win32 Release AMD64" +# Name "db_perf - Win32 Debug IA64" +# Name "db_perf - Win32 Release IA64" # Begin Source File SOURCE=..\test_perf\db_perf.c diff --git a/db/build_windows/db_printlog.dsp b/db/build_windows/db_printlog.dsp index d166f676a..5ff39d191 100644 --- a/db/build_windows/db_printlog.dsp +++ b/db/build_windows/db_printlog.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_printlog - Win32 Debug +CFG=db_printlog - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_printlog - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_printlog.mak" CFG="db_printlog - Win32 Debug" +!MESSAGE NMAKE /f "db_printlog.mak" CFG="db_printlog - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_printlog - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_printlog - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_printlog - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_printlog - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_printlog - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_printlog - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_printlog - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_printlog - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_printlog - Win32 Release" +!IF "$(CFG)" == "db_printlog - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug" +!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_printlog - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_printlog - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_printlog - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_printlog - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_printlog - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_printlog - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_printlog - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_printlog - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_printlog" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_printlog" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_printlog - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_printlog" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_printlog" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_printlog - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_printlog" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_printlog" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_printlog - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_printlog" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_printlog" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_printlog - Win32 Release" -# Name "db_printlog - Win32 Debug" -# Name "db_printlog - Win32 ASCII Debug" -# Name "db_printlog - Win32 ASCII Release" +# Name "db_printlog - Win32 Release x86" +# Name "db_printlog - Win32 Debug x86" +# Name "db_printlog - Win32 ASCII Debug x86" +# Name "db_printlog - Win32 ASCII Release x86" # Name "db_printlog - x64 Debug AMD64" # Name "db_printlog - x64 Release AMD64" # Name "db_printlog - x64 Debug IA64" # Name "db_printlog - x64 Release IA64" +# Name "db_printlog - Win32 Debug AMD64" +# Name "db_printlog - Win32 Release AMD64" +# Name "db_printlog - Win32 Debug IA64" +# Name "db_printlog - Win32 Release IA64" # Begin Source File SOURCE=..\btree\btree_autop.c diff --git a/db/build_windows/db_recover.dsp b/db/build_windows/db_recover.dsp index de11c70f0..b63a8a1b3 100644 --- a/db/build_windows/db_recover.dsp +++ b/db/build_windows/db_recover.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_recover - Win32 Debug +CFG=db_recover - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_recover - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_recover.mak" CFG="db_recover - Win32 Debug" +!MESSAGE NMAKE /f "db_recover.mak" CFG="db_recover - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_recover - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_recover - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_recover - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_recover - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_recover - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_recover - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_recover - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_recover - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_recover - Win32 Release" +!IF "$(CFG)" == "db_recover - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_recover - Win32 Debug" +!ELSEIF "$(CFG)" == "db_recover - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_recover - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_recover - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_recover - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_recover - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_recover - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_recover - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_recover - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_recover - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_recover - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_recover" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_recover" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_recover - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_recover" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_recover" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_recover - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_recover" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_recover" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_recover - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_recover" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_recover" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_recover - Win32 Release" -# Name "db_recover - Win32 Debug" -# Name "db_recover - Win32 ASCII Debug" -# Name "db_recover - Win32 ASCII Release" +# Name "db_recover - Win32 Release x86" +# Name "db_recover - Win32 Debug x86" +# Name "db_recover - Win32 ASCII Debug x86" +# Name "db_recover - Win32 ASCII Release x86" # Name "db_recover - x64 Debug AMD64" # Name "db_recover - x64 Release AMD64" # Name "db_recover - x64 Debug IA64" # Name "db_recover - x64 Release IA64" +# Name "db_recover - Win32 Debug AMD64" +# Name "db_recover - Win32 Release AMD64" +# Name "db_recover - Win32 Debug IA64" +# Name "db_recover - Win32 Release IA64" # Begin Source File SOURCE=..\db_recover\db_recover.c diff --git a/db/build_windows/db_reptest.dsp b/db/build_windows/db_reptest.dsp index 6b2ecbf89..432eb402d 100644 --- a/db/build_windows/db_reptest.dsp +++ b/db/build_windows/db_reptest.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_reptest - Win32 Debug +CFG=db_reptest - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_reptest - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_reptest.mak" CFG="db_reptest - Win32 Debug" +!MESSAGE NMAKE /f "db_reptest.mak" CFG="db_reptest - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_reptest - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_reptest - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_reptest - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_reptest - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_reptest - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_reptest - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_reptest - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_reptest - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_reptest - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_reptest - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_reptest - Win32 Release" +!IF "$(CFG)" == "db_reptest - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_reptest - Win32 Debug" +!ELSEIF "$(CFG)" == "db_reptest - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_reptest - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_reptest - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_reptest - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_reptest - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_reptest - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_reptest - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_reptest - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_reptest - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_reptest - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_reptest" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_reptest" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_reptest - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_reptest" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_reptest" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_reptest - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_reptest" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_reptest" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_reptest - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_reptest" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_reptest" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_reptest - Win32 Release" -# Name "db_reptest - Win32 Debug" -# Name "db_reptest - Win32 ASCII Debug" -# Name "db_reptest - Win32 ASCII Release" +# Name "db_reptest - Win32 Release x86" +# Name "db_reptest - Win32 Debug x86" +# Name "db_reptest - Win32 ASCII Debug x86" +# Name "db_reptest - Win32 ASCII Release x86" # Name "db_reptest - x64 Debug AMD64" # Name "db_reptest - x64 Release AMD64" # Name "db_reptest - x64 Debug IA64" # Name "db_reptest - x64 Release IA64" +# Name "db_reptest - Win32 Debug AMD64" +# Name "db_reptest - Win32 Release AMD64" +# Name "db_reptest - Win32 Debug IA64" +# Name "db_reptest - Win32 Release IA64" # Begin Source File SOURCE=..\test_perf\perf_rand.c diff --git a/db/build_windows/db_small.dsp b/db/build_windows/db_small.dsp index d6cdc1e77..acb9fbe8d 100644 --- a/db/build_windows/db_small.dsp +++ b/db/build_windows/db_small.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Static Library" 0x0104 -CFG=db_small - Win32 Debug +CFG=db_small - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_small - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_small.mak" CFG="db_small - Win32 Debug" +!MESSAGE NMAKE /f "db_small.mak" CFG="db_small - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_small - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "db_small - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE "db_small - Win32 ASCII Release" (based on "Win32 (x86) Static Library") -!MESSAGE "db_small - Win32 ASCII Debug" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Debug x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 ASCII Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 ASCII Debug x86" (based on "Win32 (x86) Static Library") !MESSAGE "db_small - x64 Debug AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "db_small - x64 Release AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "db_small - x64 Debug IA64" (based on "Win32 (x86) Static Library") !MESSAGE "db_small - x64 Release IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Debug AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Release AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Debug IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_small - Win32 Release IA64" (based on "Win32 (x86) Static Library") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_small - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_small - Win32 Release" +!IF "$(CFG)" == "db_small - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -54,10 +58,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb_small45s.lib" -# ADD LIB32 /nologo /out:"Release/libdb_small45s.lib" +# ADD BASE LIB32 /nologo /out:"Release/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release/libdb_small46s.lib" -!ELSEIF "$(CFG)" == "db_small - Win32 Debug" +!ELSEIF "$(CFG)" == "db_small - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -77,10 +81,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb_small45sd.lib" -# ADD LIB32 /nologo /out:"Debug/libdb_small45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug/libdb_small46sd.lib" -!ELSEIF "$(CFG)" == "db_small - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_small - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -100,10 +104,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_ASCII/libdb_small45s.lib" -# ADD LIB32 /nologo /out:"Release_ASCII/libdb_small45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_ASCII/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_ASCII/libdb_small46s.lib" -!ELSEIF "$(CFG)" == "db_small - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_small - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -123,8 +127,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_ASCII/libdb_small45sd.lib" -# ADD LIB32 /nologo /out:"Debug_ASCII/libdb_small45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_ASCII/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_ASCII/libdb_small46sd.lib" !ELSEIF "$(CFG)" == "db_small - x64 Debug AMD64" @@ -146,8 +150,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb_small45sd.lib" -# ADD LIB32 /nologo /out:"Debug_AMD64/libdb_small45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_AMD64/libdb_small46sd.lib" !ELSEIF "$(CFG)" == "db_small - x64 Release AMD64" @@ -169,8 +173,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb_small45s.lib" -# ADD LIB32 /nologo /out:"Release_AMD64/libdb_small45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_AMD64/libdb_small46s.lib" !ELSEIF "$(CFG)" == "db_small - x64 Debug IA64" @@ -192,8 +196,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb_small45sd.lib" -# ADD LIB32 /nologo /out:"Debug_IA64/libdb_small45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_IA64/libdb_small46sd.lib" !ELSEIF "$(CFG)" == "db_small - x64 Release IA64" @@ -215,21 +219,117 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb_small45s.lib" -# ADD LIB32 /nologo /out:"Release_IA64/libdb_small45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_IA64/libdb_small46s.lib" + +!ELSEIF "$(CFG)" == "db_small - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug/db_small" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_small" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /Wp64 /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_AMD64/libdb_small46sd.lib" + +!ELSEIF "$(CFG)" == "db_small - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_small" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_small" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_AMD64/libdb_small46s.lib" + +!ELSEIF "$(CFG)" == "db_small - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_small" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_small" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb_small46sd.lib" +# ADD LIB32 /nologo /out:"Debug_IA64/libdb_small46sd.lib" + +!ELSEIF "$(CFG)" == "db_small - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_small" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_small" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "HAVE_SMALLBUILD" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb_small46s.lib" +# ADD LIB32 /nologo /out:"Release_IA64/libdb_small46s.lib" !ENDIF # Begin Target -# Name "db_small - Win32 Release" -# Name "db_small - Win32 Debug" -# Name "db_small - Win32 ASCII Release" -# Name "db_small - Win32 ASCII Debug" +# Name "db_small - Win32 Release x86" +# Name "db_small - Win32 Debug x86" +# Name "db_small - Win32 ASCII Release x86" +# Name "db_small - Win32 ASCII Debug x86" # Name "db_small - x64 Debug AMD64" # Name "db_small - x64 Release AMD64" # Name "db_small - x64 Debug IA64" # Name "db_small - x64 Release IA64" +# Name "db_small - Win32 Debug AMD64" +# Name "db_small - Win32 Release AMD64" +# Name "db_small - Win32 Debug IA64" +# Name "db_small - Win32 Release IA64" # Begin Source File SOURCE=..\btree\bt_compact.c @@ -308,10 +408,6 @@ SOURCE=..\clib\ctime.c # End Source File # Begin Source File -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - SOURCE=..\clib\strsep.c # End Source File # Begin Source File @@ -340,6 +436,10 @@ SOURCE=..\common\db_log2.c # End Source File # Begin Source File +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File + SOURCE=..\common\mkpath.c # End Source File # Begin Source File @@ -536,11 +636,7 @@ SOURCE=..\dbreg\dbreg_util.c # End Source File # Begin Source File -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c +SOURCE=..\env\env_alloc.c # End Source File # Begin Source File @@ -556,10 +652,18 @@ SOURCE=..\env\env_file.c # End Source File # Begin Source File +SOURCE=..\env\env_globals.c +# End Source File +# Begin Source File + SOURCE=..\env\env_method.c # End Source File # Begin Source File +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File + SOURCE=..\env\env_open.c # End Source File # Begin Source File @@ -728,6 +832,10 @@ SOURCE=..\mp\mp_register.c # End Source File # Begin Source File +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File + SOURCE=..\mp\mp_stat.c # End Source File # Begin Source File @@ -764,15 +872,15 @@ SOURCE=..\mutex\mut_win32.c # End Source File # Begin Source File -SOURCE=..\os\os_alloc.c +SOURCE=..\os\os_abort.c # End Source File # Begin Source File -SOURCE=..\os\os_fzero.c +SOURCE=..\os\os_alloc.c # End Source File # Begin Source File -SOURCE=..\os\os_mkdir.c +SOURCE=..\os\os_fzero.c # End Source File # Begin Source File @@ -848,6 +956,10 @@ SOURCE=..\os_windows\os_map.c # End Source File # Begin Source File +SOURCE=..\os_windows\os_mkdir.c +# End Source File +# Begin Source File + SOURCE=..\os_windows\os_open.c # End Source File # Begin Source File @@ -896,6 +1008,10 @@ SOURCE=..\rep\rep_stub.c # End Source File # Begin Source File +SOURCE=..\repmgr\repmgr_stub.c +# End Source File +# Begin Source File + SOURCE=..\sequence\seq_stat.c # End Source File # Begin Source File diff --git a/db/build_windows/db_stat.dsp b/db/build_windows/db_stat.dsp index fc806e9ed..75bc8a5f9 100644 --- a/db/build_windows/db_stat.dsp +++ b/db/build_windows/db_stat.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_stat - Win32 Debug +CFG=db_stat - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_stat - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_stat.mak" CFG="db_stat - Win32 Debug" +!MESSAGE NMAKE /f "db_stat.mak" CFG="db_stat - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_stat - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_stat - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_stat - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_stat - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_stat - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_stat - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_stat - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_stat - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_stat - Win32 Release" +!IF "$(CFG)" == "db_stat - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_stat - Win32 Debug" +!ELSEIF "$(CFG)" == "db_stat - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_stat - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_stat - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_stat - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_stat - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_stat - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_stat - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_stat - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_stat - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_stat - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_stat" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_stat" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_stat - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_stat" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_stat" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_stat - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_stat" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_stat" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_stat - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_stat" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_stat" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_stat - Win32 Release" -# Name "db_stat - Win32 Debug" -# Name "db_stat - Win32 ASCII Debug" -# Name "db_stat - Win32 ASCII Release" +# Name "db_stat - Win32 Release x86" +# Name "db_stat - Win32 Debug x86" +# Name "db_stat - Win32 ASCII Debug x86" +# Name "db_stat - Win32 ASCII Release x86" # Name "db_stat - x64 Debug AMD64" # Name "db_stat - x64 Release AMD64" # Name "db_stat - x64 Debug IA64" # Name "db_stat - x64 Release IA64" +# Name "db_stat - Win32 Debug AMD64" +# Name "db_stat - Win32 Release AMD64" +# Name "db_stat - Win32 Debug IA64" +# Name "db_stat - Win32 Release IA64" # Begin Source File SOURCE=..\db_stat\db_stat.c diff --git a/db/build_windows/db_static.dsp b/db/build_windows/db_static.dsp index df640f47c..c7e00cd7d 100644 --- a/db/build_windows/db_static.dsp +++ b/db/build_windows/db_static.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Static Library" 0x0104 -CFG=db_static - Win32 Debug +CFG=db_static - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_static - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_static.mak" CFG="db_static - Win32 Debug" +!MESSAGE NMAKE /f "db_static.mak" CFG="db_static - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_static - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "db_static - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE "db_static - Win32 ASCII Release" (based on "Win32 (x86) Static Library") -!MESSAGE "db_static - Win32 ASCII Debug" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Debug x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 ASCII Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 ASCII Debug x86" (based on "Win32 (x86) Static Library") !MESSAGE "db_static - x64 Debug AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "db_static - x64 Release AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "db_static - x64 Debug IA64" (based on "Win32 (x86) Static Library") !MESSAGE "db_static - x64 Release IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Debug AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Release AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Debug IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "db_static - Win32 Release IA64" (based on "Win32 (x86) Static Library") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_static - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_static - Win32 Release" +!IF "$(CFG)" == "db_static - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -54,10 +58,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release/libdb45s.lib" -# ADD LIB32 /nologo /out:"Release/libdb45s.lib" +# ADD BASE LIB32 /nologo /out:"Release/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release/libdb46s.lib" -!ELSEIF "$(CFG)" == "db_static - Win32 Debug" +!ELSEIF "$(CFG)" == "db_static - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -77,10 +81,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug/libdb45sd.lib" -# ADD LIB32 /nologo /out:"Debug/libdb45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug/libdb46sd.lib" -!ELSEIF "$(CFG)" == "db_static - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_static - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -100,10 +104,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_ASCII/libdb45s.lib" -# ADD LIB32 /nologo /out:"Release_ASCII/libdb45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_ASCII/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_ASCII/libdb46s.lib" -!ELSEIF "$(CFG)" == "db_static - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_static - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -123,8 +127,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_ASCII/libdb45sd.lib" -# ADD LIB32 /nologo /out:"Debug_ASCII/libdb45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_ASCII/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_ASCII/libdb46sd.lib" !ELSEIF "$(CFG)" == "db_static - x64 Debug AMD64" @@ -146,8 +150,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb45sd.lib" -# ADD LIB32 /nologo /out:"Debug_AMD64/libdb45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_AMD64/libdb46sd.lib" !ELSEIF "$(CFG)" == "db_static - x64 Release AMD64" @@ -169,8 +173,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb45s.lib" -# ADD LIB32 /nologo /out:"Release_AMD64/libdb45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_AMD64/libdb46s.lib" !ELSEIF "$(CFG)" == "db_static - x64 Debug IA64" @@ -192,8 +196,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb45sd.lib" -# ADD LIB32 /nologo /out:"Debug_IA64/libdb45sd.lib" +# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_IA64/libdb46sd.lib" !ELSEIF "$(CFG)" == "db_static - x64 Release IA64" @@ -215,21 +219,117 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb45s.lib" -# ADD LIB32 /nologo /out:"Release_IA64/libdb45s.lib" +# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_IA64/libdb46s.lib" + +!ELSEIF "$(CFG)" == "db_static - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug/db_static" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_static" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /Wp64 /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_AMD64/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_AMD64/libdb46sd.lib" + +!ELSEIF "$(CFG)" == "db_static - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_static" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_static" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_AMD64/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_AMD64/libdb46s.lib" + +!ELSEIF "$(CFG)" == "db_static - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_static" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_static" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Debug_IA64/libdb46sd.lib" +# ADD LIB32 /nologo /out:"Debug_IA64/libdb46sd.lib" + +!ELSEIF "$(CFG)" == "db_static - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_static" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_static" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"Release_IA64/libdb46s.lib" +# ADD LIB32 /nologo /out:"Release_IA64/libdb46s.lib" !ENDIF # Begin Target -# Name "db_static - Win32 Release" -# Name "db_static - Win32 Debug" -# Name "db_static - Win32 ASCII Release" -# Name "db_static - Win32 ASCII Debug" +# Name "db_static - Win32 Release x86" +# Name "db_static - Win32 Debug x86" +# Name "db_static - Win32 ASCII Release x86" +# Name "db_static - Win32 ASCII Debug x86" # Name "db_static - x64 Debug AMD64" # Name "db_static - x64 Release AMD64" # Name "db_static - x64 Debug IA64" # Name "db_static - x64 Release IA64" +# Name "db_static - Win32 Debug AMD64" +# Name "db_static - Win32 Release AMD64" +# Name "db_static - Win32 Debug IA64" +# Name "db_static - Win32 Release IA64" # Begin Source File SOURCE=..\btree\bt_compact.c @@ -316,10 +416,6 @@ SOURCE=..\clib\getaddrinfo.c # End Source File # Begin Source File -SOURCE=..\clib\strcasecmp.c -# End Source File -# Begin Source File - SOURCE=..\clib\strsep.c # End Source File # Begin Source File @@ -328,10 +424,6 @@ SOURCE=..\common\db_byteorder.c # End Source File # Begin Source File -SOURCE=..\common\db_clock.c -# End Source File -# Begin Source File - SOURCE=..\common\db_err.c # End Source File # Begin Source File @@ -348,6 +440,10 @@ SOURCE=..\common\db_log2.c # End Source File # Begin Source File +SOURCE=..\common\db_shash.c +# End Source File +# Begin Source File + SOURCE=..\common\mkpath.c # End Source File # Begin Source File @@ -576,11 +672,7 @@ SOURCE=..\dbreg\dbreg_util.c # End Source File # Begin Source File -SOURCE=..\env\db_salloc.c -# End Source File -# Begin Source File - -SOURCE=..\env\db_shash.c +SOURCE=..\env\env_alloc.c # End Source File # Begin Source File @@ -596,10 +688,18 @@ SOURCE=..\env\env_file.c # End Source File # Begin Source File +SOURCE=..\env\env_globals.c +# End Source File +# Begin Source File + SOURCE=..\env\env_method.c # End Source File # Begin Source File +SOURCE=..\env\env_name.c +# End Source File +# Begin Source File + SOURCE=..\env\env_open.c # End Source File # Begin Source File @@ -820,6 +920,10 @@ SOURCE=..\mp\mp_register.c # End Source File # Begin Source File +SOURCE=..\mp\mp_resize.c +# End Source File +# Begin Source File + SOURCE=..\mp\mp_stat.c # End Source File # Begin Source File @@ -856,15 +960,15 @@ SOURCE=..\mutex\mut_win32.c # End Source File # Begin Source File -SOURCE=..\os\os_alloc.c +SOURCE=..\os\os_abort.c # End Source File # Begin Source File -SOURCE=..\os\os_fzero.c +SOURCE=..\os\os_alloc.c # End Source File # Begin Source File -SOURCE=..\os\os_mkdir.c +SOURCE=..\os\os_fzero.c # End Source File # Begin Source File @@ -940,6 +1044,10 @@ SOURCE=..\os_windows\os_map.c # End Source File # Begin Source File +SOURCE=..\os_windows\os_mkdir.c +# End Source File +# Begin Source File + SOURCE=..\os_windows\os_open.c # End Source File # Begin Source File @@ -1032,6 +1140,10 @@ SOURCE=..\rep\rep_elect.c # End Source File # Begin Source File +SOURCE=..\rep\rep_lease.c +# End Source File +# Begin Source File + SOURCE=..\rep\rep_log.c # End Source File # Begin Source File diff --git a/db/build_windows/db_tcl.dsp b/db/build_windows/db_tcl.dsp index 82c02fffe..87d83fa98 100644 --- a/db/build_windows/db_tcl.dsp +++ b/db/build_windows/db_tcl.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 -CFG=db_tcl - Win32 Debug +CFG=db_tcl - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_tcl - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_tcl.mak" CFG="db_tcl - Win32 Debug" +!MESSAGE NMAKE /f "db_tcl.mak" CFG="db_tcl - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_tcl - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_tcl - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_tcl - Win32 ASCII Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "db_tcl - Win32 ASCII Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Release x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 ASCII Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 ASCII Release x86" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_tcl - x64 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_tcl - x64 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_tcl - x64 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "db_tcl - x64 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "db_tcl - Win32 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # Begin Project @@ -35,7 +39,7 @@ CPP=cl.exe MTL=midl.exe RSC=rc.exe -!IF "$(CFG)" == "db_tcl - Win32 Release" +!IF "$(CFG)" == "db_tcl - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -58,10 +62,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /machine:I386 -# ADD LINK32 libdb45.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_tcl45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /machine:I386 +# ADD LINK32 libdb46.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release/libdb_tcl46.dll" /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug" +!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -85,10 +89,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb_tcl45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept +# ADD LINK32 libdb46d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_tcl - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_tcl - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -114,10 +118,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_tcl45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_tcl45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_tcl46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib tcl84g.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"Debug_ASCII/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" -!ELSEIF "$(CFG)" == "db_tcl - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_tcl - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -141,8 +145,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_tcl45.dll" -# ADD LINK32 libdb45.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_tcl45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_tcl46.dll" +# ADD LINK32 libdb46.lib tcl84.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"Release_ASCII/libdb_tcl46.dll" /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_tcl - x64 Debug AMD64" @@ -169,8 +173,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_tcl - x64 Release AMD64" @@ -196,8 +200,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl45.dll" -# ADD LINK32 libdb45.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl46.dll" +# ADD LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl46.dll" /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_tcl - x64 Debug IA64" @@ -225,8 +229,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl45d.dll" /fixed:no -# ADD LINK32 libdb45d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl45d.dll" /fixed:no /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" !ELSEIF "$(CFG)" == "db_tcl - x64 Release IA64" @@ -252,27 +256,146 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl45.dll" -# ADD LINK32 libdb45.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl45.dll" /libpath:"$(OUTDIR)" +# ADD BASE LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl46.dll" +# ADD LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl46.dll" /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_tcl" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_tcl" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /FD /Wp64 /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"Debug_AMD64/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_tcl - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_tcl" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_tcl" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl46.dll" +# ADD LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"Release_AMD64/libdb_tcl46.dll" /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_tcl - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_tcl" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_tcl" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# SUBTRACT CPP /Fr +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl46d.dll" /fixed:no +# ADD LINK32 libdb46d.lib tcl84g.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"Debug_IA64/libdb_tcl46d.dll" /fixed:no /libpath:"$(OUTDIR)" + +!ELSEIF "$(CFG)" == "db_tcl - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_tcl" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_tcl" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "DB_TCL_SUPPORT" /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl46.dll" +# ADD LINK32 libdb46.lib tcl84.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"Release_IA64/libdb_tcl46.dll" /libpath:"$(OUTDIR)" !ENDIF # Begin Target -# Name "db_tcl - Win32 Release" -# Name "db_tcl - Win32 Debug" -# Name "db_tcl - Win32 ASCII Debug" -# Name "db_tcl - Win32 ASCII Release" +# Name "db_tcl - Win32 Release x86" +# Name "db_tcl - Win32 Debug x86" +# Name "db_tcl - Win32 ASCII Debug x86" +# Name "db_tcl - Win32 ASCII Release x86" # Name "db_tcl - x64 Debug AMD64" # Name "db_tcl - x64 Release AMD64" # Name "db_tcl - x64 Debug IA64" # Name "db_tcl - x64 Release IA64" +# Name "db_tcl - Win32 Debug AMD64" +# Name "db_tcl - Win32 Release AMD64" +# Name "db_tcl - Win32 Debug IA64" +# Name "db_tcl - Win32 Release IA64" # Begin Source File SOURCE=.\libdb_tcl.def # End Source File # Begin Source File +SOURCE=..\os\os_abort.c +# End Source File +# Begin Source File + SOURCE=..\tcl\tcl_compat.c # End Source File # Begin Source File diff --git a/db/build_windows/db_test.dsp b/db/build_windows/db_test.dsp index eff4cf7e5..0efc350b7 100644 --- a/db/build_windows/db_test.dsp +++ b/db/build_windows/db_test.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_test - Win32 Debug +CFG=db_test - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_test - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_test.mak" CFG="db_test - Win32 Debug" +!MESSAGE NMAKE /f "db_test.mak" CFG="db_test - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_test - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_test - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_test - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_test - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_test - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_test - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_test - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_test - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_test - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_test - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_test - Win32 Release" +!IF "$(CFG)" == "db_test - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,14 +60,14 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . # End Special Build Tool -!ELSEIF "$(CFG)" == "db_test - Win32 Debug" +!ELSEIF "$(CFG)" == "db_test - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -85,14 +89,14 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . # End Special Build Tool -!ELSEIF "$(CFG)" == "db_test - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_test - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -114,15 +118,15 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . # End Special Build Tool -!ELSEIF "$(CFG)" == "db_test - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_test - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -144,8 +148,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. @@ -174,8 +178,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. @@ -234,8 +238,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. @@ -264,8 +268,128 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Copy built executable files. +PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . +# End Special Build Tool + +!ELSEIF "$(CFG)" == "db_test - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_test" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_test" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Copy built executable files. +PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . +# End Special Build Tool + +!ELSEIF "$(CFG)" == "db_test - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_test" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_test" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Copy built executable files. +PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . +# End Special Build Tool + +!ELSEIF "$(CFG)" == "db_test - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_test" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_test" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Copy built executable files. +PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . +# End Special Build Tool + +!ELSEIF "$(CFG)" == "db_test - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_test" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_test" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib /out:"dbkill.exe" bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Copy built executable files. @@ -276,14 +400,18 @@ PostBuild_Cmds=copy $(OUTDIR)\*.exe . copy $(OUTDIR)\*.dll . # Begin Target -# Name "db_test - Win32 Release" -# Name "db_test - Win32 Debug" -# Name "db_test - Win32 ASCII Debug" -# Name "db_test - Win32 ASCII Release" +# Name "db_test - Win32 Release x86" +# Name "db_test - Win32 Debug x86" +# Name "db_test - Win32 ASCII Debug x86" +# Name "db_test - Win32 ASCII Release x86" # Name "db_test - x64 Debug AMD64" # Name "db_test - x64 Release AMD64" # Name "db_test - x64 Debug IA64" # Name "db_test - x64 Release IA64" +# Name "db_test - Win32 Debug AMD64" +# Name "db_test - Win32 Release AMD64" +# Name "db_test - Win32 Debug IA64" +# Name "db_test - Win32 Release IA64" # Begin Source File SOURCE=.\dbkill.cpp diff --git a/db/build_windows/db_upgrade.dsp b/db/build_windows/db_upgrade.dsp index e2cd5ac4e..7e8aa621c 100644 --- a/db/build_windows/db_upgrade.dsp +++ b/db/build_windows/db_upgrade.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_upgrade - Win32 Debug +CFG=db_upgrade - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_upgrade - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_upgrade.mak" CFG="db_upgrade - Win32 Debug" +!MESSAGE NMAKE /f "db_upgrade.mak" CFG="db_upgrade - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_upgrade - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_upgrade - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_upgrade - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_upgrade - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_upgrade - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_upgrade - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_upgrade - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_upgrade - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_upgrade - Win32 Release" +!IF "$(CFG)" == "db_upgrade - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug" +!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_upgrade - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_upgrade - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_upgrade - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_upgrade - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_upgrade - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_upgrade - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_upgrade - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_upgrade - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_upgrade" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_upgrade" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_upgrade - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_upgrade" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_upgrade" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_upgrade - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_upgrade" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_upgrade" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_upgrade - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_upgrade" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_upgrade" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_upgrade - Win32 Release" -# Name "db_upgrade - Win32 Debug" -# Name "db_upgrade - Win32 ASCII Debug" -# Name "db_upgrade - Win32 ASCII Release" +# Name "db_upgrade - Win32 Release x86" +# Name "db_upgrade - Win32 Debug x86" +# Name "db_upgrade - Win32 ASCII Debug x86" +# Name "db_upgrade - Win32 ASCII Release x86" # Name "db_upgrade - x64 Debug AMD64" # Name "db_upgrade - x64 Release AMD64" # Name "db_upgrade - x64 Debug IA64" # Name "db_upgrade - x64 Release IA64" +# Name "db_upgrade - Win32 Debug AMD64" +# Name "db_upgrade - Win32 Release AMD64" +# Name "db_upgrade - Win32 Debug IA64" +# Name "db_upgrade - Win32 Release IA64" # Begin Source File SOURCE=..\db_upgrade\db_upgrade.c diff --git a/db/build_windows/db_verify.dsp b/db/build_windows/db_verify.dsp index f084bc9a2..51e5d985a 100644 --- a/db/build_windows/db_verify.dsp +++ b/db/build_windows/db_verify.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=db_verify - Win32 Debug +CFG=db_verify - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=db_verify - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "db_verify.mak" CFG="db_verify - Win32 Debug" +!MESSAGE NMAKE /f "db_verify.mak" CFG="db_verify - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "db_verify - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "db_verify - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "db_verify - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_verify - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "db_verify - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "db_verify - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "db_verify - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=db_verify - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "db_verify - Win32 Release" +!IF "$(CFG)" == "db_verify - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "db_verify - Win32 Debug" +!ELSEIF "$(CFG)" == "db_verify - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "db_verify - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "db_verify - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "db_verify - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "db_verify - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "db_verify - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "db_verify - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "db_verify - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "db_verify - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "db_verify - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/db_verify" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/db_verify" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "db_verify - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/db_verify" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/db_verify" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "db_verify - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/db_verify" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/db_verify" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "db_verify - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/db_verify" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/db_verify" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "db_verify - Win32 Release" -# Name "db_verify - Win32 Debug" -# Name "db_verify - Win32 ASCII Debug" -# Name "db_verify - Win32 ASCII Release" +# Name "db_verify - Win32 Release x86" +# Name "db_verify - Win32 Debug x86" +# Name "db_verify - Win32 ASCII Debug x86" +# Name "db_verify - Win32 ASCII Release x86" # Name "db_verify - x64 Debug AMD64" # Name "db_verify - x64 Release AMD64" # Name "db_verify - x64 Debug IA64" # Name "db_verify - x64 Release IA64" +# Name "db_verify - Win32 Debug AMD64" +# Name "db_verify - Win32 Release AMD64" +# Name "db_verify - Win32 Debug IA64" +# Name "db_verify - Win32 Release IA64" # Begin Source File SOURCE=..\db_verify\db_verify.c diff --git a/db/build_windows/dbkill.cpp b/db/build_windows/dbkill.cpp index b186bde42..6c1f940fb 100644 --- a/db/build_windows/dbkill.cpp +++ b/db/build_windows/dbkill.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: dbkill.cpp,v 12.4 2006/08/24 14:45:08 bostic Exp $ + * $Id: dbkill.cpp,v 12.6 2007/05/17 15:14:54 bostic Exp $ */ /* * Kill - diff --git a/db/build_windows/dynamic_dsp.src b/db/build_windows/dynamic_dsp.src index fb6862cb7..c4d99d5a4 100644 --- a/db/build_windows/dynamic_dsp.src +++ b/db/build_windows/dynamic_dsp.src @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 -CFG=@project_name@ - Win32 Debug +CFG=@project_name@ - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=@project_name@ - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" +!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 ASCII Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "@project_name@ - Win32 ASCII Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Release x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 ASCII Debug x86" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 ASCII Release x86" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "@project_name@ - x64 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "@project_name@ - x64 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "@project_name@ - x64 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "@project_name@ - x64 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Debug AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Release AMD64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Debug IA64" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "@project_name@ - Win32 Release IA64" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # Begin Project @@ -35,7 +39,7 @@ CPP=cl.exe MTL=midl.exe RSC=rc.exe -!IF "$(CFG)" == "@project_name@ - Win32 Release" +!IF "$(CFG)" == "@project_name@ - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -62,7 +66,7 @@ LINK32=link.exe # ADD LINK32 @release_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:I386 /out:"@bin_rel_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" /libpath:"$(OUTDIR)" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -90,7 +94,7 @@ LINK32=link.exe # ADD LINK32 @debug_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"@bin_debug_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no /libpath:"$(OUTDIR)" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -120,7 +124,7 @@ LINK32=link.exe # ADD LINK32 @debug_libs@ kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /pdb:none /debug /machine:I386 /out:"@bin_debug_dest@_ASCII/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no /libpath:"$(OUTDIR)" @POST_BUILD@ -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -263,18 +267,137 @@ LINK32=link.exe # ADD LINK32 @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"@bin_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" /libpath:"$(OUTDIR)" @POST_BUILD@ +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /FD /Wp64 /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:AMD64 /out:"@bin_debug_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no +# ADD LINK32 @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:AMD64 /out:"@bin_debug_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no /libpath:"$(OUTDIR)" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_AMD64" +# PROP Intermediate_Dir "Release_AMD64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"@bin_rel_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" +# ADD LINK32 @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:AMD64 /out:"@bin_rel_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" /libpath:"$(OUTDIR)" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_IA64" +# PROP Intermediate_Dir "Debug_IA64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# SUBTRACT BASE CPP /Fr +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "DIAGNOSTIC" /D "CONFIG_TEST" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# SUBTRACT CPP /Fr +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /debug /machine:IA64 /out:"@bin_debug_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no +# ADD LINK32 @debug_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /export:__db_assert /debug /machine:IA64 /out:"@bin_debug_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.dll" /fixed:no /libpath:"$(OUTDIR)" +@POST_BUILD@ + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/@project_name@" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_IA64" +# PROP Intermediate_Dir "Release_IA64/@project_name@" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /Ob2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "DB_CREATE_DLL" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"@bin_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" +# ADD LINK32 @release_libs@ bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /base:"0x13000000" /subsystem:windows /dll /machine:IA64 /out:"@bin_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.dll" /libpath:"$(OUTDIR)" +@POST_BUILD@ + !ENDIF # Begin Target -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 ASCII Debug" -# Name "@project_name@ - Win32 ASCII Release" +# Name "@project_name@ - Win32 Release x86" +# Name "@project_name@ - Win32 Debug x86" +# Name "@project_name@ - Win32 ASCII Debug x86" +# Name "@project_name@ - Win32 ASCII Release x86" # Name "@project_name@ - x64 Debug AMD64" # Name "@project_name@ - x64 Release AMD64" # Name "@project_name@ - x64 Debug IA64" # Name "@project_name@ - x64 Release IA64" +# Name "@project_name@ - Win32 Debug AMD64" +# Name "@project_name@ - Win32 Release AMD64" +# Name "@project_name@ - Win32 Debug IA64" +# Name "@project_name@ - Win32 Release IA64" @SOURCE_FILES@ # End Target diff --git a/db/build_windows/ex_access.dsp b/db/build_windows/ex_access.dsp index b6fa3cd77..cd5b420ca 100644 --- a/db/build_windows/ex_access.dsp +++ b/db/build_windows/ex_access.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_access - Win32 Debug +CFG=ex_access - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_access - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_access.mak" CFG="ex_access - Win32 Debug" +!MESSAGE NMAKE /f "ex_access.mak" CFG="ex_access - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_access - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_access - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_access - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_access - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_access - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_access - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_access - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_access - Win32 Release" +!IF "$(CFG)" == "ex_access - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_access - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_access - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_access - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_access - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_access - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_access - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_access - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_access - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_access - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_access - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_access - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_access - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_access - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_access - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_access - Win32 Release" -# Name "ex_access - Win32 Debug" -# Name "ex_access - Win32 ASCII Debug" -# Name "ex_access - Win32 ASCII Release" +# Name "ex_access - Win32 Release x86" +# Name "ex_access - Win32 Debug x86" +# Name "ex_access - Win32 ASCII Debug x86" +# Name "ex_access - Win32 ASCII Release x86" # Name "ex_access - x64 Debug AMD64" # Name "ex_access - x64 Release AMD64" # Name "ex_access - x64 Debug IA64" # Name "ex_access - x64 Release IA64" +# Name "ex_access - Win32 Debug AMD64" +# Name "ex_access - Win32 Release AMD64" +# Name "ex_access - Win32 Debug IA64" +# Name "ex_access - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_access.c diff --git a/db/build_windows/ex_btrec.dsp b/db/build_windows/ex_btrec.dsp index 7d31080f9..b2b48b389 100644 --- a/db/build_windows/ex_btrec.dsp +++ b/db/build_windows/ex_btrec.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_btrec - Win32 Debug +CFG=ex_btrec - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_btrec - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_btrec.mak" CFG="ex_btrec - Win32 Debug" +!MESSAGE NMAKE /f "ex_btrec.mak" CFG="ex_btrec - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_btrec - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_btrec - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_btrec - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_btrec - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_btrec - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_btrec - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_btrec - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_btrec - Win32 Release" +!IF "$(CFG)" == "ex_btrec - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_btrec - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_btrec - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_btrec - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_btrec - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_btrec - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_btrec - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_btrec - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_btrec - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_btrec - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_btrec - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_btrec - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_btrec - Win32 Release" -# Name "ex_btrec - Win32 Debug" -# Name "ex_btrec - Win32 ASCII Debug" -# Name "ex_btrec - Win32 ASCII Release" +# Name "ex_btrec - Win32 Release x86" +# Name "ex_btrec - Win32 Debug x86" +# Name "ex_btrec - Win32 ASCII Debug x86" +# Name "ex_btrec - Win32 ASCII Release x86" # Name "ex_btrec - x64 Debug AMD64" # Name "ex_btrec - x64 Release AMD64" # Name "ex_btrec - x64 Debug IA64" # Name "ex_btrec - x64 Release IA64" +# Name "ex_btrec - Win32 Debug AMD64" +# Name "ex_btrec - Win32 Release AMD64" +# Name "ex_btrec - Win32 Debug IA64" +# Name "ex_btrec - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_btrec.c diff --git a/db/build_windows/ex_csvcode.dsp b/db/build_windows/ex_csvcode.dsp index 43b083696..1f6e5e090 100644 --- a/db/build_windows/ex_csvcode.dsp +++ b/db/build_windows/ex_csvcode.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_csvcode - Win32 Debug +CFG=ex_csvcode - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_csvcode - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_csvcode.mak" CFG="ex_csvcode - Win32 Debug" +!MESSAGE NMAKE /f "ex_csvcode.mak" CFG="ex_csvcode - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_csvcode - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvcode - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvcode - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvcode - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvcode - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvcode - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvcode - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvcode - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvcode - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_csvcode - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_csvcode - Win32 Release" +!IF "$(CFG)" == "ex_csvcode - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,14 +60,14 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc # End Special Build Tool -!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -85,14 +89,14 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc # End Special Build Tool -!ELSEIF "$(CFG)" == "ex_csvcode - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -114,15 +118,15 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc # End Special Build Tool -!ELSEIF "$(CFG)" == "ex_csvcode - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -144,8 +148,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c @@ -174,8 +178,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c @@ -234,8 +238,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c @@ -264,8 +268,128 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Generate csv_local.c +PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc +# End Special Build Tool + +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_csvcode" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_csvcode" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Generate csv_local.c +PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc +# End Special Build Tool + +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_csvcode" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_csvcode" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Generate csv_local.c +PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc +# End Special Build Tool + +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_csvcode" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_csvcode" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# Begin Special Build Tool +SOURCE="$(InputPath)" +PostBuild_Desc=Generate csv_local.c +PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../examples_c/csv/csv_local.h -f ../examples_c/csv/sample.desc +# End Special Build Tool + +!ELSEIF "$(CFG)" == "ex_csvcode - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_csvcode" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_csvcode" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" # Begin Special Build Tool SOURCE="$(InputPath)" PostBuild_Desc=Generate csv_local.c @@ -276,14 +400,18 @@ PostBuild_Cmds=$(OUTDIR)\ex_csvcode.exe -c ../examples_c/csv/csv_local.c -h ../e # Begin Target -# Name "ex_csvcode - Win32 Release" -# Name "ex_csvcode - Win32 Debug" -# Name "ex_csvcode - Win32 ASCII Debug" -# Name "ex_csvcode - Win32 ASCII Release" +# Name "ex_csvcode - Win32 Release x86" +# Name "ex_csvcode - Win32 Debug x86" +# Name "ex_csvcode - Win32 ASCII Debug x86" +# Name "ex_csvcode - Win32 ASCII Release x86" # Name "ex_csvcode - x64 Debug AMD64" # Name "ex_csvcode - x64 Release AMD64" # Name "ex_csvcode - x64 Debug IA64" # Name "ex_csvcode - x64 Release IA64" +# Name "ex_csvcode - Win32 Debug AMD64" +# Name "ex_csvcode - Win32 Release AMD64" +# Name "ex_csvcode - Win32 Debug IA64" +# Name "ex_csvcode - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\csv\code.c diff --git a/db/build_windows/ex_csvload.dsp b/db/build_windows/ex_csvload.dsp index a7a99e2f4..d856ddd49 100644 --- a/db/build_windows/ex_csvload.dsp +++ b/db/build_windows/ex_csvload.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_csvload - Win32 Debug +CFG=ex_csvload - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_csvload - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_csvload.mak" CFG="ex_csvload - Win32 Debug" +!MESSAGE NMAKE /f "ex_csvload.mak" CFG="ex_csvload - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_csvload - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvload - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvload - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvload - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvload - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvload - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvload - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvload - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvload - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_csvload - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_csvload - Win32 Release" +!IF "$(CFG)" == "ex_csvload - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_csvload - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_csvload - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_csvload - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_csvload - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_csvload - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_csvload - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_csvload - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_csvload - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_csvload - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_csvload - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_csvload - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_csvload" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_csvload" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_csvload - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_csvload" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_csvload" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_csvload - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_csvload" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_csvload" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_csvload - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_csvload" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_csvload" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_csvload - Win32 Release" -# Name "ex_csvload - Win32 Debug" -# Name "ex_csvload - Win32 ASCII Debug" -# Name "ex_csvload - Win32 ASCII Release" +# Name "ex_csvload - Win32 Release x86" +# Name "ex_csvload - Win32 Debug x86" +# Name "ex_csvload - Win32 ASCII Debug x86" +# Name "ex_csvload - Win32 ASCII Release x86" # Name "ex_csvload - x64 Debug AMD64" # Name "ex_csvload - x64 Release AMD64" # Name "ex_csvload - x64 Debug IA64" # Name "ex_csvload - x64 Release IA64" +# Name "ex_csvload - Win32 Debug AMD64" +# Name "ex_csvload - Win32 Release AMD64" +# Name "ex_csvload - Win32 Debug IA64" +# Name "ex_csvload - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\csv\DbRecord.c diff --git a/db/build_windows/ex_csvquery.dsp b/db/build_windows/ex_csvquery.dsp index 8c0197043..7c420fc74 100644 --- a/db/build_windows/ex_csvquery.dsp +++ b/db/build_windows/ex_csvquery.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_csvquery - Win32 Debug +CFG=ex_csvquery - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_csvquery - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_csvquery.mak" CFG="ex_csvquery - Win32 Debug" +!MESSAGE NMAKE /f "ex_csvquery.mak" CFG="ex_csvquery - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_csvquery - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvquery - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvquery - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_csvquery - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvquery - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvquery - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvquery - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_csvquery - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_csvquery - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_csvquery - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_csvquery - Win32 Release" +!IF "$(CFG)" == "ex_csvquery - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_csvquery - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_csvquery - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_csvquery - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_csvquery - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_csvquery - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_csvquery - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_csvquery" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_csvquery" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_csvquery" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_csvquery" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_csvquery" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_csvquery" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_csvquery - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_csvquery" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_csvquery" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_csvquery - Win32 Release" -# Name "ex_csvquery - Win32 Debug" -# Name "ex_csvquery - Win32 ASCII Debug" -# Name "ex_csvquery - Win32 ASCII Release" +# Name "ex_csvquery - Win32 Release x86" +# Name "ex_csvquery - Win32 Debug x86" +# Name "ex_csvquery - Win32 ASCII Debug x86" +# Name "ex_csvquery - Win32 ASCII Release x86" # Name "ex_csvquery - x64 Debug AMD64" # Name "ex_csvquery - x64 Release AMD64" # Name "ex_csvquery - x64 Debug IA64" # Name "ex_csvquery - x64 Release IA64" +# Name "ex_csvquery - Win32 Debug AMD64" +# Name "ex_csvquery - Win32 Release AMD64" +# Name "ex_csvquery - Win32 Debug IA64" +# Name "ex_csvquery - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\csv\DbRecord.c diff --git a/db/build_windows/ex_env.dsp b/db/build_windows/ex_env.dsp index 0fdfd4cc4..553d5f4c3 100644 --- a/db/build_windows/ex_env.dsp +++ b/db/build_windows/ex_env.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_env - Win32 Debug +CFG=ex_env - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_env - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_env.mak" CFG="ex_env - Win32 Debug" +!MESSAGE NMAKE /f "ex_env.mak" CFG="ex_env - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_env - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_env - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_env - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_env - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_env - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_env - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_env - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_env - Win32 Release" +!IF "$(CFG)" == "ex_env - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_env - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_env - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_env - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_env - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_env - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_env - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_env - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_env - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_env - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_env - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_env - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_env - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_env - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_env - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_env - Win32 Release" -# Name "ex_env - Win32 Debug" -# Name "ex_env - Win32 ASCII Debug" -# Name "ex_env - Win32 ASCII Release" +# Name "ex_env - Win32 Release x86" +# Name "ex_env - Win32 Debug x86" +# Name "ex_env - Win32 ASCII Debug x86" +# Name "ex_env - Win32 ASCII Release x86" # Name "ex_env - x64 Debug AMD64" # Name "ex_env - x64 Release AMD64" # Name "ex_env - x64 Debug IA64" # Name "ex_env - x64 Release IA64" +# Name "ex_env - Win32 Debug AMD64" +# Name "ex_env - Win32 Release AMD64" +# Name "ex_env - Win32 Debug IA64" +# Name "ex_env - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_env.c diff --git a/db/build_windows/ex_lock.dsp b/db/build_windows/ex_lock.dsp index 24a34975c..9059ac89c 100644 --- a/db/build_windows/ex_lock.dsp +++ b/db/build_windows/ex_lock.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_lock - Win32 Debug +CFG=ex_lock - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_lock - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_lock.mak" CFG="ex_lock - Win32 Debug" +!MESSAGE NMAKE /f "ex_lock.mak" CFG="ex_lock - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_lock - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_lock - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_lock - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_lock - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_lock - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_lock - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_lock - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_lock - Win32 Release" +!IF "$(CFG)" == "ex_lock - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_lock - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_lock - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_lock - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_lock - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_lock - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_lock - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_lock - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_lock - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_lock - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_lock - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_lock - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_lock - Win32 Release" -# Name "ex_lock - Win32 Debug" -# Name "ex_lock - Win32 ASCII Debug" -# Name "ex_lock - Win32 ASCII Release" +# Name "ex_lock - Win32 Release x86" +# Name "ex_lock - Win32 Debug x86" +# Name "ex_lock - Win32 ASCII Debug x86" +# Name "ex_lock - Win32 ASCII Release x86" # Name "ex_lock - x64 Debug AMD64" # Name "ex_lock - x64 Release AMD64" # Name "ex_lock - x64 Debug IA64" # Name "ex_lock - x64 Release IA64" +# Name "ex_lock - Win32 Debug AMD64" +# Name "ex_lock - Win32 Release AMD64" +# Name "ex_lock - Win32 Debug IA64" +# Name "ex_lock - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_lock.c diff --git a/db/build_windows/ex_mpool.dsp b/db/build_windows/ex_mpool.dsp index f4434c4d5..7898f4589 100644 --- a/db/build_windows/ex_mpool.dsp +++ b/db/build_windows/ex_mpool.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_mpool - Win32 Debug +CFG=ex_mpool - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_mpool - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_mpool.mak" CFG="ex_mpool - Win32 Debug" +!MESSAGE NMAKE /f "ex_mpool.mak" CFG="ex_mpool - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_mpool - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_mpool - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_mpool - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_mpool - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_mpool - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_mpool - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_mpool - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_mpool - Win32 Release" +!IF "$(CFG)" == "ex_mpool - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_mpool - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_mpool - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_mpool - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_mpool - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_mpool - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_mpool - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_mpool - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_mpool - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_mpool - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_mpool - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_mpool - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_mpool - Win32 Release" -# Name "ex_mpool - Win32 Debug" -# Name "ex_mpool - Win32 ASCII Debug" -# Name "ex_mpool - Win32 ASCII Release" +# Name "ex_mpool - Win32 Release x86" +# Name "ex_mpool - Win32 Debug x86" +# Name "ex_mpool - Win32 ASCII Debug x86" +# Name "ex_mpool - Win32 ASCII Release x86" # Name "ex_mpool - x64 Debug AMD64" # Name "ex_mpool - x64 Release AMD64" # Name "ex_mpool - x64 Debug IA64" # Name "ex_mpool - x64 Release IA64" +# Name "ex_mpool - Win32 Debug AMD64" +# Name "ex_mpool - Win32 Release AMD64" +# Name "ex_mpool - Win32 Debug IA64" +# Name "ex_mpool - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_mpool.c diff --git a/db/build_windows/ex_rep_base.dsp b/db/build_windows/ex_rep_base.dsp index 759ccbaa5..f4e1fe3ed 100644 --- a/db/build_windows/ex_rep_base.dsp +++ b/db/build_windows/ex_rep_base.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_rep_base - Win32 Debug +CFG=ex_rep_base - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_rep_base - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_rep_base.mak" CFG="ex_rep_base - Win32 Debug" +!MESSAGE NMAKE /f "ex_rep_base.mak" CFG="ex_rep_base - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_rep_base - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_base - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_base - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_base - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_base - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_base - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_base - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_base - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_base - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_rep_base - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_rep_base - Win32 Release" +!IF "$(CFG)" == "ex_rep_base - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_rep_base - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_rep_base - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_rep_base - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_rep_base - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_rep_base - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_rep_base - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_rep_base" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_rep_base" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_rep_base" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_rep_base" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_rep_base" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_rep_base" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_rep_base - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_rep_base" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_rep_base" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib ws2_32.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_rep_base - Win32 Release" -# Name "ex_rep_base - Win32 Debug" -# Name "ex_rep_base - Win32 ASCII Debug" -# Name "ex_rep_base - Win32 ASCII Release" +# Name "ex_rep_base - Win32 Release x86" +# Name "ex_rep_base - Win32 Debug x86" +# Name "ex_rep_base - Win32 ASCII Debug x86" +# Name "ex_rep_base - Win32 ASCII Release x86" # Name "ex_rep_base - x64 Debug AMD64" # Name "ex_rep_base - x64 Release AMD64" # Name "ex_rep_base - x64 Debug IA64" # Name "ex_rep_base - x64 Release IA64" +# Name "ex_rep_base - Win32 Debug AMD64" +# Name "ex_rep_base - Win32 Release AMD64" +# Name "ex_rep_base - Win32 Debug IA64" +# Name "ex_rep_base - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_rep\base\rep_base.c diff --git a/db/build_windows/ex_rep_mgr.dsp b/db/build_windows/ex_rep_mgr.dsp index e7a814f88..e9215f38c 100644 --- a/db/build_windows/ex_rep_mgr.dsp +++ b/db/build_windows/ex_rep_mgr.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_rep_mgr - Win32 Debug +CFG=ex_rep_mgr - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_rep_mgr - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_rep_mgr.mak" CFG="ex_rep_mgr - Win32 Debug" +!MESSAGE NMAKE /f "ex_rep_mgr.mak" CFG="ex_rep_mgr - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_rep_mgr - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_mgr - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_mgr - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_rep_mgr - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_mgr - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_mgr - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_mgr - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_rep_mgr - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_rep_mgr - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_rep_mgr - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_rep_mgr - Win32 Release" +!IF "$(CFG)" == "ex_rep_mgr - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_rep_mgr - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_rep_mgr - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_rep_mgr - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_rep_mgr - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_rep_mgr" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_rep_mgr" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_rep_mgr" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_rep_mgr" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_rep_mgr" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_rep_mgr" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_rep_mgr - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_rep_mgr" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_rep_mgr" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_rep_mgr - Win32 Release" -# Name "ex_rep_mgr - Win32 Debug" -# Name "ex_rep_mgr - Win32 ASCII Debug" -# Name "ex_rep_mgr - Win32 ASCII Release" +# Name "ex_rep_mgr - Win32 Release x86" +# Name "ex_rep_mgr - Win32 Debug x86" +# Name "ex_rep_mgr - Win32 ASCII Debug x86" +# Name "ex_rep_mgr - Win32 ASCII Release x86" # Name "ex_rep_mgr - x64 Debug AMD64" # Name "ex_rep_mgr - x64 Release AMD64" # Name "ex_rep_mgr - x64 Debug IA64" # Name "ex_rep_mgr - x64 Release IA64" +# Name "ex_rep_mgr - Win32 Debug AMD64" +# Name "ex_rep_mgr - Win32 Release AMD64" +# Name "ex_rep_mgr - Win32 Debug IA64" +# Name "ex_rep_mgr - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_rep\common\rep_common.c diff --git a/db/build_windows/ex_sequence.dsp b/db/build_windows/ex_sequence.dsp index 1da0885dd..da8e83caf 100644 --- a/db/build_windows/ex_sequence.dsp +++ b/db/build_windows/ex_sequence.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_sequence - Win32 Debug +CFG=ex_sequence - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_sequence - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_sequence.mak" CFG="ex_sequence - Win32 Debug" +!MESSAGE NMAKE /f "ex_sequence.mak" CFG="ex_sequence - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_sequence - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_sequence - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_sequence - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_sequence - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_sequence - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_sequence - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_sequence - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_sequence - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_sequence - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_sequence - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_sequence - Win32 Release" +!IF "$(CFG)" == "ex_sequence - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_sequence - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_sequence - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_sequence - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_sequence - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_sequence - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_sequence - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_sequence - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_sequence - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_sequence - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_sequence - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_sequence - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_sequence - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_sequence - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_sequence - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_sequence - Win32 Release" -# Name "ex_sequence - Win32 Debug" -# Name "ex_sequence - Win32 ASCII Debug" -# Name "ex_sequence - Win32 ASCII Release" +# Name "ex_sequence - Win32 Release x86" +# Name "ex_sequence - Win32 Debug x86" +# Name "ex_sequence - Win32 ASCII Debug x86" +# Name "ex_sequence - Win32 ASCII Release x86" # Name "ex_sequence - x64 Debug AMD64" # Name "ex_sequence - x64 Release AMD64" # Name "ex_sequence - x64 Debug IA64" # Name "ex_sequence - x64 Release IA64" +# Name "ex_sequence - Win32 Debug AMD64" +# Name "ex_sequence - Win32 Release AMD64" +# Name "ex_sequence - Win32 Debug IA64" +# Name "ex_sequence - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_sequence.c diff --git a/db/build_windows/ex_tpcb.dsp b/db/build_windows/ex_tpcb.dsp index 889533e3d..056d1a14b 100644 --- a/db/build_windows/ex_tpcb.dsp +++ b/db/build_windows/ex_tpcb.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_tpcb - Win32 Debug +CFG=ex_tpcb - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_tpcb - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_tpcb.mak" CFG="ex_tpcb - Win32 Debug" +!MESSAGE NMAKE /f "ex_tpcb.mak" CFG="ex_tpcb - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_tpcb - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_tpcb - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_tpcb - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_tpcb - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_tpcb - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_tpcb - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_tpcb - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_tpcb - Win32 Release" +!IF "$(CFG)" == "ex_tpcb - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_tpcb - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_tpcb - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_tpcb - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_tpcb - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_tpcb - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_tpcb - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_tpcb - Win32 Release" -# Name "ex_tpcb - Win32 Debug" -# Name "ex_tpcb - Win32 ASCII Debug" -# Name "ex_tpcb - Win32 ASCII Release" +# Name "ex_tpcb - Win32 Release x86" +# Name "ex_tpcb - Win32 Debug x86" +# Name "ex_tpcb - Win32 ASCII Debug x86" +# Name "ex_tpcb - Win32 ASCII Release x86" # Name "ex_tpcb - x64 Debug AMD64" # Name "ex_tpcb - x64 Release AMD64" # Name "ex_tpcb - x64 Debug IA64" # Name "ex_tpcb - x64 Release IA64" +# Name "ex_tpcb - Win32 Debug AMD64" +# Name "ex_tpcb - Win32 Release AMD64" +# Name "ex_tpcb - Win32 Debug IA64" +# Name "ex_tpcb - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\ex_tpcb.c diff --git a/db/build_windows/ex_txnguide.dsp b/db/build_windows/ex_txnguide.dsp index a33327620..399035a0f 100644 --- a/db/build_windows/ex_txnguide.dsp +++ b/db/build_windows/ex_txnguide.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_txnguide - Win32 Debug +CFG=ex_txnguide - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_txnguide - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_txnguide.mak" CFG="ex_txnguide - Win32 Debug" +!MESSAGE NMAKE /f "ex_txnguide.mak" CFG="ex_txnguide - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_txnguide - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_txnguide - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_txnguide - Win32 Release" +!IF "$(CFG)" == "ex_txnguide - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_txnguide - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_txnguide - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_txnguide - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_txnguide - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_txnguide - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_txnguide - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_txnguide - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_txnguide - Win32 Release" -# Name "ex_txnguide - Win32 Debug" -# Name "ex_txnguide - Win32 ASCII Debug" -# Name "ex_txnguide - Win32 ASCII Release" +# Name "ex_txnguide - Win32 Release x86" +# Name "ex_txnguide - Win32 Debug x86" +# Name "ex_txnguide - Win32 ASCII Debug x86" +# Name "ex_txnguide - Win32 ASCII Release x86" # Name "ex_txnguide - x64 Debug AMD64" # Name "ex_txnguide - x64 Release AMD64" # Name "ex_txnguide - x64 Debug IA64" # Name "ex_txnguide - x64 Release IA64" +# Name "ex_txnguide - Win32 Debug AMD64" +# Name "ex_txnguide - Win32 Release AMD64" +# Name "ex_txnguide - Win32 Debug IA64" +# Name "ex_txnguide - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\txn_guide\txn_guide.c diff --git a/db/build_windows/ex_txnguide_inmem.dsp b/db/build_windows/ex_txnguide_inmem.dsp index 7b0dc40a9..c62b1b108 100644 --- a/db/build_windows/ex_txnguide_inmem.dsp +++ b/db/build_windows/ex_txnguide_inmem.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=ex_txnguide_inmem - Win32 Debug +CFG=ex_txnguide_inmem - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=ex_txnguide_inmem - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "ex_txnguide_inmem.mak" CFG="ex_txnguide_inmem - Win32 Debug" +!MESSAGE NMAKE /f "ex_txnguide_inmem.mak" CFG="ex_txnguide_inmem - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "ex_txnguide_inmem - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide_inmem - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide_inmem - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "ex_txnguide_inmem - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide_inmem - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide_inmem - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide_inmem - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "ex_txnguide_inmem - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "ex_txnguide_inmem - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=ex_txnguide_inmem - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "ex_txnguide_inmem - Win32 Release" +!IF "$(CFG)" == "ex_txnguide_inmem - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Debug" +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "ex_txnguide_inmem - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "ex_txnguide_inmem - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "ex_txnguide_inmem - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "ex_txnguide_inmem - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/ex_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/ex_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/ex_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/ex_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/ex_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/ex_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "ex_txnguide_inmem - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/ex_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/ex_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "ex_txnguide_inmem - Win32 Release" -# Name "ex_txnguide_inmem - Win32 Debug" -# Name "ex_txnguide_inmem - Win32 ASCII Debug" -# Name "ex_txnguide_inmem - Win32 ASCII Release" +# Name "ex_txnguide_inmem - Win32 Release x86" +# Name "ex_txnguide_inmem - Win32 Debug x86" +# Name "ex_txnguide_inmem - Win32 ASCII Debug x86" +# Name "ex_txnguide_inmem - Win32 ASCII Release x86" # Name "ex_txnguide_inmem - x64 Debug AMD64" # Name "ex_txnguide_inmem - x64 Release AMD64" # Name "ex_txnguide_inmem - x64 Debug IA64" # Name "ex_txnguide_inmem - x64 Release IA64" +# Name "ex_txnguide_inmem - Win32 Debug AMD64" +# Name "ex_txnguide_inmem - Win32 Release AMD64" +# Name "ex_txnguide_inmem - Win32 Debug IA64" +# Name "ex_txnguide_inmem - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\txn_guide\txn_guide_inmemory.c diff --git a/db/build_windows/example_database_load.dsp b/db/build_windows/example_database_load.dsp index 3eed16250..157198578 100644 --- a/db/build_windows/example_database_load.dsp +++ b/db/build_windows/example_database_load.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=example_database_load - Win32 Debug +CFG=example_database_load - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=example_database_load - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "example_database_load.mak" CFG="example_database_load - Win32 Debug" +!MESSAGE NMAKE /f "example_database_load.mak" CFG="example_database_load - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "example_database_load - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_load - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_load - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_load - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_load - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_load - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_load - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_load - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_load - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=example_database_load - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "example_database_load - Win32 Release" +!IF "$(CFG)" == "example_database_load - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "example_database_load - Win32 Debug" +!ELSEIF "$(CFG)" == "example_database_load - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "example_database_load - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "example_database_load - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "example_database_load - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "example_database_load - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "example_database_load - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "example_database_load - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "example_database_load - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "example_database_load - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "example_database_load - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "example_database_load - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "example_database_load - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "example_database_load - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "example_database_load - Win32 Release" -# Name "example_database_load - Win32 Debug" -# Name "example_database_load - Win32 ASCII Debug" -# Name "example_database_load - Win32 ASCII Release" +# Name "example_database_load - Win32 Release x86" +# Name "example_database_load - Win32 Debug x86" +# Name "example_database_load - Win32 ASCII Debug x86" +# Name "example_database_load - Win32 ASCII Release x86" # Name "example_database_load - x64 Debug AMD64" # Name "example_database_load - x64 Release AMD64" # Name "example_database_load - x64 Debug IA64" # Name "example_database_load - x64 Release IA64" +# Name "example_database_load - Win32 Debug AMD64" +# Name "example_database_load - Win32 Release AMD64" +# Name "example_database_load - Win32 Debug IA64" +# Name "example_database_load - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\getting_started\example_database_load.c diff --git a/db/build_windows/example_database_read.dsp b/db/build_windows/example_database_read.dsp index 65d241b8f..456836746 100644 --- a/db/build_windows/example_database_read.dsp +++ b/db/build_windows/example_database_read.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=example_database_read - Win32 Debug +CFG=example_database_read - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=example_database_read - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "example_database_read.mak" CFG="example_database_read - Win32 Debug" +!MESSAGE NMAKE /f "example_database_read.mak" CFG="example_database_read - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "example_database_read - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_read - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_read - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "example_database_read - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_read - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_read - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_read - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "example_database_read - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "example_database_read - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=example_database_read - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "example_database_read - Win32 Release" +!IF "$(CFG)" == "example_database_read - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "example_database_read - Win32 Debug" +!ELSEIF "$(CFG)" == "example_database_read - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "example_database_read - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "example_database_read - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "example_database_read - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "example_database_read - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "example_database_read - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "example_database_read - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "example_database_read - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "example_database_read - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "example_database_read - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "example_database_read - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "example_database_read - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "example_database_read - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "example_database_read - Win32 Release" -# Name "example_database_read - Win32 Debug" -# Name "example_database_read - Win32 ASCII Debug" -# Name "example_database_read - Win32 ASCII Release" +# Name "example_database_read - Win32 Release x86" +# Name "example_database_read - Win32 Debug x86" +# Name "example_database_read - Win32 ASCII Debug x86" +# Name "example_database_read - Win32 ASCII Release x86" # Name "example_database_read - x64 Debug AMD64" # Name "example_database_read - x64 Release AMD64" # Name "example_database_read - x64 Debug IA64" # Name "example_database_read - x64 Release IA64" +# Name "example_database_read - Win32 Debug AMD64" +# Name "example_database_read - Win32 Release AMD64" +# Name "example_database_read - Win32 Debug IA64" +# Name "example_database_read - Win32 Release IA64" # Begin Source File SOURCE=..\examples_c\getting_started\example_database_read.c diff --git a/db/build_windows/excxx_access.dsp b/db/build_windows/excxx_access.dsp index 9e18187da..4e268fa15 100644 --- a/db/build_windows/excxx_access.dsp +++ b/db/build_windows/excxx_access.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_access - Win32 Debug +CFG=excxx_access - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_access - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_access.mak" CFG="excxx_access - Win32 Debug" +!MESSAGE NMAKE /f "excxx_access.mak" CFG="excxx_access - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_access - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_access - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_access - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_access - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_access - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_access - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_access - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_access - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_access - Win32 Release" +!IF "$(CFG)" == "excxx_access - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_access - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_access - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_access - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_access - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_access - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_access - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_access - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_access - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_access - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_access - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_access - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_access" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_access" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_access - Win32 Release" -# Name "excxx_access - Win32 Debug" -# Name "excxx_access - Win32 ASCII Debug" -# Name "excxx_access - Win32 ASCII Release" +# Name "excxx_access - Win32 Release x86" +# Name "excxx_access - Win32 Debug x86" +# Name "excxx_access - Win32 ASCII Debug x86" +# Name "excxx_access - Win32 ASCII Release x86" # Name "excxx_access - x64 Debug AMD64" # Name "excxx_access - x64 Release AMD64" # Name "excxx_access - x64 Debug IA64" # Name "excxx_access - x64 Release IA64" +# Name "excxx_access - Win32 Debug AMD64" +# Name "excxx_access - Win32 Release AMD64" +# Name "excxx_access - Win32 Debug IA64" +# Name "excxx_access - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\AccessExample.cpp diff --git a/db/build_windows/excxx_btrec.dsp b/db/build_windows/excxx_btrec.dsp index 568a8be64..2c61142f8 100644 --- a/db/build_windows/excxx_btrec.dsp +++ b/db/build_windows/excxx_btrec.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_btrec - Win32 Debug +CFG=excxx_btrec - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_btrec - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_btrec.mak" CFG="excxx_btrec - Win32 Debug" +!MESSAGE NMAKE /f "excxx_btrec.mak" CFG="excxx_btrec - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_btrec - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_btrec - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_btrec - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_btrec - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_btrec - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_btrec - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_btrec - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_btrec - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_btrec - Win32 Release" +!IF "$(CFG)" == "excxx_btrec - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_btrec - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_btrec - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_btrec - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_btrec - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_btrec - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_btrec - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_btrec" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_btrec" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_btrec - Win32 Release" -# Name "excxx_btrec - Win32 Debug" -# Name "excxx_btrec - Win32 ASCII Debug" -# Name "excxx_btrec - Win32 ASCII Release" +# Name "excxx_btrec - Win32 Release x86" +# Name "excxx_btrec - Win32 Debug x86" +# Name "excxx_btrec - Win32 ASCII Debug x86" +# Name "excxx_btrec - Win32 ASCII Release x86" # Name "excxx_btrec - x64 Debug AMD64" # Name "excxx_btrec - x64 Release AMD64" # Name "excxx_btrec - x64 Debug IA64" # Name "excxx_btrec - x64 Release IA64" +# Name "excxx_btrec - Win32 Debug AMD64" +# Name "excxx_btrec - Win32 Release AMD64" +# Name "excxx_btrec - Win32 Debug IA64" +# Name "excxx_btrec - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\BtRecExample.cpp diff --git a/db/build_windows/excxx_env.dsp b/db/build_windows/excxx_env.dsp index 75ed4f88c..a1c1e8a77 100644 --- a/db/build_windows/excxx_env.dsp +++ b/db/build_windows/excxx_env.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_env - Win32 Debug +CFG=excxx_env - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_env - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_env.mak" CFG="excxx_env - Win32 Debug" +!MESSAGE NMAKE /f "excxx_env.mak" CFG="excxx_env - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_env - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_env - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_env - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_env - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_env - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_env - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_env - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_env - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_env - Win32 Release" +!IF "$(CFG)" == "excxx_env - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_env - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_env - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_env - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_env - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_env - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_env - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_env - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_env - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_env - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_env - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_env - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_env" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_env" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_env - Win32 Release" -# Name "excxx_env - Win32 Debug" -# Name "excxx_env - Win32 ASCII Debug" -# Name "excxx_env - Win32 ASCII Release" +# Name "excxx_env - Win32 Release x86" +# Name "excxx_env - Win32 Debug x86" +# Name "excxx_env - Win32 ASCII Debug x86" +# Name "excxx_env - Win32 ASCII Release x86" # Name "excxx_env - x64 Debug AMD64" # Name "excxx_env - x64 Release AMD64" # Name "excxx_env - x64 Debug IA64" # Name "excxx_env - x64 Release IA64" +# Name "excxx_env - Win32 Debug AMD64" +# Name "excxx_env - Win32 Release AMD64" +# Name "excxx_env - Win32 Debug IA64" +# Name "excxx_env - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\EnvExample.cpp diff --git a/db/build_windows/excxx_example_database_load.dsp b/db/build_windows/excxx_example_database_load.dsp index a25bf56ae..54050e6f3 100644 --- a/db/build_windows/excxx_example_database_load.dsp +++ b/db/build_windows/excxx_example_database_load.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_example_database_load - Win32 Debug +CFG=excxx_example_database_load - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_example_database_load - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_example_database_load.mak" CFG="excxx_example_database_load - Win32 Debug" +!MESSAGE NMAKE /f "excxx_example_database_load.mak" CFG="excxx_example_database_load - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_example_database_load - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_load - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_load - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_load - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_load - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_load - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_load - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_load - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_load - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_example_database_load - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_example_database_load - Win32 Release" +!IF "$(CFG)" == "excxx_example_database_load - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_example_database_load - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_example_database_load - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_example_database_load - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_example_database_load - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_example_database_load - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_example_database_load" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_example_database_load" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_example_database_load - Win32 Release" -# Name "excxx_example_database_load - Win32 Debug" -# Name "excxx_example_database_load - Win32 ASCII Debug" -# Name "excxx_example_database_load - Win32 ASCII Release" +# Name "excxx_example_database_load - Win32 Release x86" +# Name "excxx_example_database_load - Win32 Debug x86" +# Name "excxx_example_database_load - Win32 ASCII Debug x86" +# Name "excxx_example_database_load - Win32 ASCII Release x86" # Name "excxx_example_database_load - x64 Debug AMD64" # Name "excxx_example_database_load - x64 Release AMD64" # Name "excxx_example_database_load - x64 Debug IA64" # Name "excxx_example_database_load - x64 Release IA64" +# Name "excxx_example_database_load - Win32 Debug AMD64" +# Name "excxx_example_database_load - Win32 Release AMD64" +# Name "excxx_example_database_load - Win32 Debug IA64" +# Name "excxx_example_database_load - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\getting_started\MyDb.cpp diff --git a/db/build_windows/excxx_example_database_read.dsp b/db/build_windows/excxx_example_database_read.dsp index 804bf70c6..3aed5ea66 100644 --- a/db/build_windows/excxx_example_database_read.dsp +++ b/db/build_windows/excxx_example_database_read.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_example_database_read - Win32 Debug +CFG=excxx_example_database_read - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_example_database_read - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_example_database_read.mak" CFG="excxx_example_database_read - Win32 Debug" +!MESSAGE NMAKE /f "excxx_example_database_read.mak" CFG="excxx_example_database_read - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_example_database_read - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_read - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_read - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_example_database_read - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_read - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_read - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_read - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_example_database_read - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_example_database_read - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_example_database_read - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_example_database_read - Win32 Release" +!IF "$(CFG)" == "excxx_example_database_read - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_example_database_read - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_example_database_read - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_example_database_read - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_example_database_read - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_example_database_read - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_example_database_read" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_example_database_read" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_example_database_read - Win32 Release" -# Name "excxx_example_database_read - Win32 Debug" -# Name "excxx_example_database_read - Win32 ASCII Debug" -# Name "excxx_example_database_read - Win32 ASCII Release" +# Name "excxx_example_database_read - Win32 Release x86" +# Name "excxx_example_database_read - Win32 Debug x86" +# Name "excxx_example_database_read - Win32 ASCII Debug x86" +# Name "excxx_example_database_read - Win32 ASCII Release x86" # Name "excxx_example_database_read - x64 Debug AMD64" # Name "excxx_example_database_read - x64 Release AMD64" # Name "excxx_example_database_read - x64 Debug IA64" # Name "excxx_example_database_read - x64 Release IA64" +# Name "excxx_example_database_read - Win32 Debug AMD64" +# Name "excxx_example_database_read - Win32 Release AMD64" +# Name "excxx_example_database_read - Win32 Debug IA64" +# Name "excxx_example_database_read - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\getting_started\MyDb.cpp diff --git a/db/build_windows/excxx_lock.dsp b/db/build_windows/excxx_lock.dsp index 51845a1dc..378d5de86 100644 --- a/db/build_windows/excxx_lock.dsp +++ b/db/build_windows/excxx_lock.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_lock - Win32 Debug +CFG=excxx_lock - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_lock - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_lock.mak" CFG="excxx_lock - Win32 Debug" +!MESSAGE NMAKE /f "excxx_lock.mak" CFG="excxx_lock - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_lock - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_lock - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_lock - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_lock - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_lock - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_lock - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_lock - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_lock - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_lock - Win32 Release" +!IF "$(CFG)" == "excxx_lock - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_lock - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_lock - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_lock - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_lock - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_lock - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_lock - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_lock - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_lock - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_lock - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_lock - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_lock - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_lock" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_lock" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_lock - Win32 Release" -# Name "excxx_lock - Win32 Debug" -# Name "excxx_lock - Win32 ASCII Debug" -# Name "excxx_lock - Win32 ASCII Release" +# Name "excxx_lock - Win32 Release x86" +# Name "excxx_lock - Win32 Debug x86" +# Name "excxx_lock - Win32 ASCII Debug x86" +# Name "excxx_lock - Win32 ASCII Release x86" # Name "excxx_lock - x64 Debug AMD64" # Name "excxx_lock - x64 Release AMD64" # Name "excxx_lock - x64 Debug IA64" # Name "excxx_lock - x64 Release IA64" +# Name "excxx_lock - Win32 Debug AMD64" +# Name "excxx_lock - Win32 Release AMD64" +# Name "excxx_lock - Win32 Debug IA64" +# Name "excxx_lock - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\LockExample.cpp diff --git a/db/build_windows/excxx_mpool.dsp b/db/build_windows/excxx_mpool.dsp index 140d56a4a..c8545f2e3 100644 --- a/db/build_windows/excxx_mpool.dsp +++ b/db/build_windows/excxx_mpool.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_mpool - Win32 Debug +CFG=excxx_mpool - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_mpool - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_mpool.mak" CFG="excxx_mpool - Win32 Debug" +!MESSAGE NMAKE /f "excxx_mpool.mak" CFG="excxx_mpool - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_mpool - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_mpool - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_mpool - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_mpool - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_mpool - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_mpool - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_mpool - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_mpool - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_mpool - Win32 Release" +!IF "$(CFG)" == "excxx_mpool - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_mpool - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_mpool - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_mpool - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_mpool - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_mpool - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_mpool - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_mpool" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_mpool" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_mpool - Win32 Release" -# Name "excxx_mpool - Win32 Debug" -# Name "excxx_mpool - Win32 ASCII Debug" -# Name "excxx_mpool - Win32 ASCII Release" +# Name "excxx_mpool - Win32 Release x86" +# Name "excxx_mpool - Win32 Debug x86" +# Name "excxx_mpool - Win32 ASCII Debug x86" +# Name "excxx_mpool - Win32 ASCII Release x86" # Name "excxx_mpool - x64 Debug AMD64" # Name "excxx_mpool - x64 Release AMD64" # Name "excxx_mpool - x64 Debug IA64" # Name "excxx_mpool - x64 Release IA64" +# Name "excxx_mpool - Win32 Debug AMD64" +# Name "excxx_mpool - Win32 Release AMD64" +# Name "excxx_mpool - Win32 Debug IA64" +# Name "excxx_mpool - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\MpoolExample.cpp diff --git a/db/build_windows/excxx_repquote.dsp b/db/build_windows/excxx_repquote.dsp index 34b8a996a..bee67bacd 100644 --- a/db/build_windows/excxx_repquote.dsp +++ b/db/build_windows/excxx_repquote.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_repquote - Win32 Debug +CFG=excxx_repquote - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_repquote - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_repquote.mak" CFG="excxx_repquote - Win32 Debug" +!MESSAGE NMAKE /f "excxx_repquote.mak" CFG="excxx_repquote - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_repquote - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_repquote - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_repquote - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_repquote - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_repquote - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_repquote - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_repquote - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_repquote - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_repquote - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_repquote - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_repquote - Win32 Release" +!IF "$(CFG)" == "excxx_repquote - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_repquote - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_repquote - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_repquote - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_repquote - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_repquote - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_repquote - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_repquote" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_repquote" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_repquote" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_repquote" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_repquote" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_repquote" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_repquote - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_repquote" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_repquote" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_repquote - Win32 Release" -# Name "excxx_repquote - Win32 Debug" -# Name "excxx_repquote - Win32 ASCII Debug" -# Name "excxx_repquote - Win32 ASCII Release" +# Name "excxx_repquote - Win32 Release x86" +# Name "excxx_repquote - Win32 Debug x86" +# Name "excxx_repquote - Win32 ASCII Debug x86" +# Name "excxx_repquote - Win32 ASCII Release x86" # Name "excxx_repquote - x64 Debug AMD64" # Name "excxx_repquote - x64 Release AMD64" # Name "excxx_repquote - x64 Debug IA64" # Name "excxx_repquote - x64 Release IA64" +# Name "excxx_repquote - Win32 Debug AMD64" +# Name "excxx_repquote - Win32 Release AMD64" +# Name "excxx_repquote - Win32 Debug IA64" +# Name "excxx_repquote - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\excxx_repquote\RepConfigInfo.cpp diff --git a/db/build_windows/excxx_sequence.dsp b/db/build_windows/excxx_sequence.dsp index be5b1f002..178a9aa68 100644 --- a/db/build_windows/excxx_sequence.dsp +++ b/db/build_windows/excxx_sequence.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_sequence - Win32 Debug +CFG=excxx_sequence - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_sequence - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_sequence.mak" CFG="excxx_sequence - Win32 Debug" +!MESSAGE NMAKE /f "excxx_sequence.mak" CFG="excxx_sequence - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_sequence - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_sequence - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_sequence - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_sequence - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_sequence - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_sequence - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_sequence - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_sequence - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_sequence - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_sequence - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_sequence - Win32 Release" +!IF "$(CFG)" == "excxx_sequence - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_sequence - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_sequence - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_sequence - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_sequence - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_sequence - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_sequence - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_sequence - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_sequence" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_sequence" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_sequence - Win32 Release" -# Name "excxx_sequence - Win32 Debug" -# Name "excxx_sequence - Win32 ASCII Debug" -# Name "excxx_sequence - Win32 ASCII Release" +# Name "excxx_sequence - Win32 Release x86" +# Name "excxx_sequence - Win32 Debug x86" +# Name "excxx_sequence - Win32 ASCII Debug x86" +# Name "excxx_sequence - Win32 ASCII Release x86" # Name "excxx_sequence - x64 Debug AMD64" # Name "excxx_sequence - x64 Release AMD64" # Name "excxx_sequence - x64 Debug IA64" # Name "excxx_sequence - x64 Release IA64" +# Name "excxx_sequence - Win32 Debug AMD64" +# Name "excxx_sequence - Win32 Release AMD64" +# Name "excxx_sequence - Win32 Debug IA64" +# Name "excxx_sequence - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\SequenceExample.cpp diff --git a/db/build_windows/excxx_tpcb.dsp b/db/build_windows/excxx_tpcb.dsp index 26032d795..24246aff5 100644 --- a/db/build_windows/excxx_tpcb.dsp +++ b/db/build_windows/excxx_tpcb.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_tpcb - Win32 Debug +CFG=excxx_tpcb - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_tpcb - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_tpcb.mak" CFG="excxx_tpcb - Win32 Debug" +!MESSAGE NMAKE /f "excxx_tpcb.mak" CFG="excxx_tpcb - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_tpcb - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_tpcb - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_tpcb - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_tpcb - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_tpcb - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_tpcb - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_tpcb - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_tpcb - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_tpcb - Win32 Release" +!IF "$(CFG)" == "excxx_tpcb - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_tpcb - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_tpcb - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_tpcb - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_tpcb - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_tpcb - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_tpcb" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_tpcb" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_tpcb - Win32 Release" -# Name "excxx_tpcb - Win32 Debug" -# Name "excxx_tpcb - Win32 ASCII Debug" -# Name "excxx_tpcb - Win32 ASCII Release" +# Name "excxx_tpcb - Win32 Release x86" +# Name "excxx_tpcb - Win32 Debug x86" +# Name "excxx_tpcb - Win32 ASCII Debug x86" +# Name "excxx_tpcb - Win32 ASCII Release x86" # Name "excxx_tpcb - x64 Debug AMD64" # Name "excxx_tpcb - x64 Release AMD64" # Name "excxx_tpcb - x64 Debug IA64" # Name "excxx_tpcb - x64 Release IA64" +# Name "excxx_tpcb - Win32 Debug AMD64" +# Name "excxx_tpcb - Win32 Release AMD64" +# Name "excxx_tpcb - Win32 Debug IA64" +# Name "excxx_tpcb - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\TpcbExample.cpp diff --git a/db/build_windows/excxx_txnguide.dsp b/db/build_windows/excxx_txnguide.dsp index d22ded8f2..b73d7bfa2 100644 --- a/db/build_windows/excxx_txnguide.dsp +++ b/db/build_windows/excxx_txnguide.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_txnguide - Win32 Debug +CFG=excxx_txnguide - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_txnguide - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_txnguide.mak" CFG="excxx_txnguide - Win32 Debug" +!MESSAGE NMAKE /f "excxx_txnguide.mak" CFG="excxx_txnguide - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_txnguide - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_txnguide - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_txnguide - Win32 Release" +!IF "$(CFG)" == "excxx_txnguide - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_txnguide - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_txnguide - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_txnguide - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_txnguide - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_txnguide - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_txnguide" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_txnguide" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_txnguide - Win32 Release" -# Name "excxx_txnguide - Win32 Debug" -# Name "excxx_txnguide - Win32 ASCII Debug" -# Name "excxx_txnguide - Win32 ASCII Release" +# Name "excxx_txnguide - Win32 Release x86" +# Name "excxx_txnguide - Win32 Debug x86" +# Name "excxx_txnguide - Win32 ASCII Debug x86" +# Name "excxx_txnguide - Win32 ASCII Release x86" # Name "excxx_txnguide - x64 Debug AMD64" # Name "excxx_txnguide - x64 Release AMD64" # Name "excxx_txnguide - x64 Debug IA64" # Name "excxx_txnguide - x64 Release IA64" +# Name "excxx_txnguide - Win32 Debug AMD64" +# Name "excxx_txnguide - Win32 Release AMD64" +# Name "excxx_txnguide - Win32 Debug IA64" +# Name "excxx_txnguide - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\txn_guide\TxnGuide.cpp diff --git a/db/build_windows/excxx_txnguide_inmem.dsp b/db/build_windows/excxx_txnguide_inmem.dsp index c54be9030..801c1b3bd 100644 --- a/db/build_windows/excxx_txnguide_inmem.dsp +++ b/db/build_windows/excxx_txnguide_inmem.dsp @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Console Application" 0x0103 -CFG=excxx_txnguide_inmem - Win32 Debug +CFG=excxx_txnguide_inmem - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=excxx_txnguide_inmem - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "excxx_txnguide_inmem.mak" CFG="excxx_txnguide_inmem - Win32 Debug" +!MESSAGE NMAKE /f "excxx_txnguide_inmem.mak" CFG="excxx_txnguide_inmem - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "excxx_txnguide_inmem - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide_inmem - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide_inmem - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "excxx_txnguide_inmem - Win32 ASCII Release" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide_inmem - x64 Debug AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide_inmem - x64 Release AMD64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide_inmem - x64 Debug IA64" (based on "Win32 (x86) Console Application") !MESSAGE "excxx_txnguide_inmem - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "excxx_txnguide_inmem - Win32 Release IA64" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=excxx_txnguide_inmem - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "excxx_txnguide_inmem - Win32 Release" +!IF "$(CFG)" == "excxx_txnguide_inmem - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -56,9 +60,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" -!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Debug" +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,9 +84,9 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" -!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -104,10 +108,10 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" -!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -129,8 +133,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" !ELSEIF "$(CFG)" == "excxx_txnguide_inmem - x64 Debug AMD64" @@ -154,8 +158,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" !ELSEIF "$(CFG)" == "excxx_txnguide_inmem - x64 Release AMD64" @@ -179,8 +183,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" !ELSEIF "$(CFG)" == "excxx_txnguide_inmem - x64 Debug IA64" @@ -204,8 +208,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" !ELSEIF "$(CFG)" == "excxx_txnguide_inmem - x64 Release IA64" @@ -229,21 +233,125 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/excxx_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/excxx_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/excxx_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/excxx_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/excxx_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/excxx_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "excxx_txnguide_inmem - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/excxx_txnguide_inmem" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/excxx_txnguide_inmem" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" !ENDIF # Begin Target -# Name "excxx_txnguide_inmem - Win32 Release" -# Name "excxx_txnguide_inmem - Win32 Debug" -# Name "excxx_txnguide_inmem - Win32 ASCII Debug" -# Name "excxx_txnguide_inmem - Win32 ASCII Release" +# Name "excxx_txnguide_inmem - Win32 Release x86" +# Name "excxx_txnguide_inmem - Win32 Debug x86" +# Name "excxx_txnguide_inmem - Win32 ASCII Debug x86" +# Name "excxx_txnguide_inmem - Win32 ASCII Release x86" # Name "excxx_txnguide_inmem - x64 Debug AMD64" # Name "excxx_txnguide_inmem - x64 Release AMD64" # Name "excxx_txnguide_inmem - x64 Debug IA64" # Name "excxx_txnguide_inmem - x64 Release IA64" +# Name "excxx_txnguide_inmem - Win32 Debug AMD64" +# Name "excxx_txnguide_inmem - Win32 Release AMD64" +# Name "excxx_txnguide_inmem - Win32 Debug IA64" +# Name "excxx_txnguide_inmem - Win32 Release IA64" # Begin Source File SOURCE=..\examples_cxx\txn_guide\TxnGuideInMemory.cpp diff --git a/db/build_windows/include.tcl b/db/build_windows/include.tcl index e82d66dab..4b504373f 100644 --- a/db/build_windows/include.tcl +++ b/db/build_windows/include.tcl @@ -1,7 +1,7 @@ # Automatically built by dist/s_test; may require local editing. set tclsh_path SET_YOUR_TCLSH_PATH -set tcllib ./Debug/libdb_tcl45d.dll +set tcllib ./Debug/libdb_tcl46d.dll set src_root .. set test_path ../test diff --git a/db/build_windows/libdb.def b/db/build_windows/libdb.def index ac3379f9e..f68dea3ee 100644 --- a/db/build_windows/libdb.def +++ b/db/build_windows/libdb.def @@ -35,8 +35,8 @@ EXPORTS __db_ndbm_rdonly @32 __db_ndbm_store @33 __db_panic @34 - __db_r_attach @35 - __db_r_detach @36 + __db_win32_mutex_lock @35 + __db_win32_mutex_unlock @36 __ham_func2 @37 __ham_func3 @38 __ham_func4 @39 @@ -48,130 +48,133 @@ EXPORTS __os_dirfree @45 __os_dirlist @46 __os_free @47 - __os_get_syserr @48 - __os_getenv @49 - __os_ioinfo @50 - __os_malloc @51 - __os_mkdir @52 - __os_open @53 - __os_openhandle @54 - __os_posix_err @55 - __os_read @56 - __os_realloc @57 - __os_strdup @58 - __os_umalloc @59 - __os_unlink @60 - __os_write @61 - __txn_id_set @62 - __bam_adj_read @63 - __bam_cadjust_read @64 - __bam_cdel_read @65 - __bam_curadj_read @66 - __bam_merge_read @67 - __bam_pgin @68 - __bam_pgno_read @69 - __bam_pgout @70 - __bam_rcuradj_read @71 - __bam_relink_43_read @72 - __bam_relink_read @73 - __bam_repl_read @74 - __bam_root_read @75 - __bam_rsplit_read @76 - __bam_split_read @77 - __crdel_inmem_create_read @78 - __crdel_inmem_remove_read @79 - __crdel_inmem_rename_read @80 - __crdel_metasub_read @81 - __db_addrem_read @82 - __db_big_read @83 - __db_cksum_read @84 - __db_ctime @85 - __db_debug_read @86 - __db_dispatch @87 - __db_dl @88 - __db_dumptree @89 - __db_err @90 - __db_errx @91 - __db_getlong @92 - __db_getulong @93 - __db_global_values @94 - __db_isbigendian @95 - __db_mkpath @96 - __db_msg @97 - __db_noop_read @98 - __db_omode @99 - __db_ovref_read @100 - __db_pg_alloc_42_read @101 - __db_pg_alloc_read @102 - __db_pg_free_42_read @103 - __db_pg_free_read @104 - __db_pg_freedata_42_read @105 - __db_pg_freedata_read @106 - __db_pg_init_read @107 - __db_pg_new_read @108 - __db_pg_prepare_read @109 - __db_pg_sort_read @110 - __db_pgin @111 - __db_pgout @112 - __db_pr_callback @113 - __db_relink_42_read @114 - __db_rpath @115 - __db_stat_pp @116 - __db_stat_print_pp @117 - __db_util_cache @118 - __db_util_interrupted @119 - __db_util_logset @120 - __db_util_siginit @121 - __db_util_sigresend @122 - __db_verify_internal @123 - __dbreg_register_read @124 - __fop_create_read @125 - __fop_file_remove_read @126 - __fop_remove_read @127 - __fop_rename_read @128 - __fop_write_read @129 - __ham_chgpg_read @130 - __ham_copypage_read @131 - __ham_curadj_read @132 - __ham_get_meta @133 - __ham_groupalloc_42_read @134 - __ham_groupalloc_read @135 - __ham_insdel_read @136 - __ham_metagroup_42_read @137 - __ham_metagroup_read @138 - __ham_newpage_read @139 - __ham_pgin @140 - __ham_pgout @141 - __ham_release_meta @142 - __ham_replace_read @143 - __ham_splitdata_read @144 - __lock_list_print @145 - __log_stat_pp @146 - __mutex_set_wait_info @147 - __os_abspath @148 - __os_clock @149 - __os_exists @150 - __os_get_errno @151 - __os_id @152 - __os_mapfile @153 - __os_seek @154 - __os_set_errno @155 - __os_sleep @156 - __os_spin @157 - __os_ufree @158 - __os_unmapfile @159 - __os_yield @160 - __qam_add_read @161 - __qam_del_read @162 - __qam_delext_read @163 - __qam_incfirst_read @164 - __qam_mvptr_read @165 - __qam_pgin_out @166 - __rep_stat_print @167 - __txn_child_read @168 - __txn_ckp_42_read @169 - __txn_ckp_read @170 - __txn_recycle_read @171 - __txn_regop_42_read @172 - __txn_regop_read @173 - __txn_xa_regop_read @174 + __os_fsync @48 + __os_get_syserr @49 + __os_getenv @50 + __os_ioinfo @51 + __os_malloc @52 + __os_mkdir @53 + __os_open @54 + __os_openhandle @55 + __os_posix_err @56 + __os_read @57 + __os_realloc @58 + __os_rename @59 + __os_strdup @60 + __os_umalloc @61 + __os_unlink @62 + __os_write @63 + __txn_id_set @64 + __bam_adj_read @65 + __bam_cadjust_read @66 + __bam_cdel_read @67 + __bam_curadj_read @68 + __bam_merge_read @69 + __bam_pgin @70 + __bam_pgno_read @71 + __bam_pgout @72 + __bam_rcuradj_read @73 + __bam_relink_43_read @74 + __bam_relink_read @75 + __bam_repl_read @76 + __bam_root_read @77 + __bam_rsplit_read @78 + __bam_split_read @79 + __config_split @80 + __crdel_inmem_create_read @81 + __crdel_inmem_remove_read @82 + __crdel_inmem_rename_read @83 + __crdel_metasub_read @84 + __db_addrem_read @85 + __db_big_read @86 + __db_cksum_read @87 + __db_ctime @88 + __db_debug_read @89 + __db_dispatch @90 + __db_dl @91 + __db_dumptree @92 + __db_err @93 + __db_errx @94 + __db_getlong @95 + __db_getulong @96 + __db_global_values @97 + __db_isbigendian @98 + __db_mkpath @99 + __db_msg @100 + __db_noop_read @101 + __db_omode @102 + __db_ovref_read @103 + __db_pg_alloc_42_read @104 + __db_pg_alloc_read @105 + __db_pg_free_42_read @106 + __db_pg_free_read @107 + __db_pg_freedata_42_read @108 + __db_pg_freedata_read @109 + __db_pg_init_read @110 + __db_pg_new_read @111 + __db_pg_prepare_read @112 + __db_pg_sort_read @113 + __db_pgin @114 + __db_pgout @115 + __db_pr_callback @116 + __db_relink_42_read @117 + __db_rpath @118 + __db_stat_pp @119 + __db_stat_print_pp @120 + __db_util_cache @121 + __db_util_interrupted @122 + __db_util_logset @123 + __db_util_siginit @124 + __db_util_sigresend @125 + __db_verify_internal @126 + __dbreg_register_read @127 + __fop_create_read @128 + __fop_file_remove_read @129 + __fop_remove_read @130 + __fop_rename_read @131 + __fop_write_read @132 + __ham_chgpg_read @133 + __ham_copypage_read @134 + __ham_curadj_read @135 + __ham_get_meta @136 + __ham_groupalloc_42_read @137 + __ham_groupalloc_read @138 + __ham_insdel_read @139 + __ham_metagroup_42_read @140 + __ham_metagroup_read @141 + __ham_newpage_read @142 + __ham_pgin @143 + __ham_pgout @144 + __ham_release_meta @145 + __ham_replace_read @146 + __ham_splitdata_read @147 + __lock_list_print @148 + __log_stat_pp @149 + __mutex_set_wait_info @150 + __os_abspath @151 + __os_exists @152 + __os_get_errno @153 + __os_gettime @154 + __os_id @155 + __os_mapfile @156 + __os_seek @157 + __os_set_errno @158 + __os_sleep @159 + __os_spin @160 + __os_ufree @161 + __os_unmapfile @162 + __os_yield @163 + __qam_add_read @164 + __qam_del_read @165 + __qam_delext_read @166 + __qam_incfirst_read @167 + __qam_mvptr_read @168 + __qam_pgin_out @169 + __rep_stat_print @170 + __txn_child_read @171 + __txn_ckp_42_read @172 + __txn_ckp_read @173 + __txn_recycle_read @174 + __txn_regop_42_read @175 + __txn_regop_read @176 + __txn_xa_regop_read @177 diff --git a/db/build_windows/libdb.rc b/db/build_windows/libdb.rc index 4b0666cc5..2c70a9ee4 100644 --- a/db/build_windows/libdb.rc +++ b/db/build_windows/libdb.rc @@ -1,6 +1,6 @@ 1 VERSIONINFO - FILEVERSION 4,0,5,20 - PRODUCTVERSION 4,0,5,20 + FILEVERSION 4,0,6,18 + PRODUCTVERSION 4,0,6,18 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -16,14 +16,14 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "CompanyName", "Oracle Corporation\0" - VALUE "FileDescription", "Berkeley DB 4.5 DLL\0" - VALUE "FileVersion", "4.5.20\0" - VALUE "InternalName", "libdb45.dll\0" - VALUE "LegalCopyright", "Copyright © Oracle Corporation 1997-2006\0" - VALUE "OriginalFilename", "libdb45.dll\0" - VALUE "ProductName", "Oracle Corporation libdb\0" - VALUE "ProductVersion", "4.5.20\0" + VALUE "CompanyName", "Oracle\0" + VALUE "FileDescription", "Berkeley DB 4.6 DLL\0" + VALUE "FileVersion", "4.6.18\0" + VALUE "InternalName", "libdb46.dll\0" + VALUE "LegalCopyright", "Copyright © Oracle 1997,2007\0" + VALUE "OriginalFilename", "libdb46.dll\0" + VALUE "ProductName", "Oracle libdb\0" + VALUE "ProductVersion", "4.6.18\0" END END BLOCK "VarFileInfo" diff --git a/db/build_windows/libdbrc.src b/db/build_windows/libdbrc.src index e624e77a1..091d596e5 100644 --- a/db/build_windows/libdbrc.src +++ b/db/build_windows/libdbrc.src @@ -16,13 +16,13 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "CompanyName", "Oracle Corporation\0" + VALUE "CompanyName", "Oracle\0" VALUE "FileDescription", "Berkeley DB %MAJOR%.%MINOR% DLL\0" VALUE "FileVersion", "%MAJOR%.%MINOR%.%PATCH%\0" VALUE "InternalName", "libdb%MAJOR%%MINOR%.dll\0" - VALUE "LegalCopyright", "Copyright © Oracle Corporation 1997-2006\0" + VALUE "LegalCopyright", "Copyright © Oracle 1997,2007\0" VALUE "OriginalFilename", "libdb%MAJOR%%MINOR%.dll\0" - VALUE "ProductName", "Oracle Corporation libdb\0" + VALUE "ProductName", "Oracle libdb\0" VALUE "ProductVersion", "%MAJOR%.%MINOR%.%PATCH%\0" END END diff --git a/db/build_windows/static_dsp.src b/db/build_windows/static_dsp.src index aba9c79cc..68b2efeb6 100644 --- a/db/build_windows/static_dsp.src +++ b/db/build_windows/static_dsp.src @@ -4,7 +4,7 @@ # TARGTYPE "Win32 (x86) Static Library" 0x0104 -CFG=@project_name@ - Win32 Debug +CFG=@project_name@ - Win32 Debug x86 !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE @@ -13,18 +13,22 @@ CFG=@project_name@ - Win32 Debug !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE -!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug" +!MESSAGE NMAKE /f "@project_name@.mak" CFG="@project_name@ - Win32 Debug x86" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE -!MESSAGE "@project_name@ - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 ASCII Release" (based on "Win32 (x86) Static Library") -!MESSAGE "@project_name@ - Win32 ASCII Debug" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Debug x86" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 ASCII Release x86" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 ASCII Debug x86" (based on "Win32 (x86) Static Library") !MESSAGE "@project_name@ - x64 Debug AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "@project_name@ - x64 Release AMD64" (based on "Win32 (x86) Static Library") !MESSAGE "@project_name@ - x64 Debug IA64" (based on "Win32 (x86) Static Library") !MESSAGE "@project_name@ - x64 Release IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Debug AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Release AMD64" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Debug IA64" (based on "Win32 (x86) Static Library") +!MESSAGE "@project_name@ - Win32 Release IA64" (based on "Win32 (x86) Static Library") !MESSAGE # Begin Project @@ -34,7 +38,7 @@ CFG=@project_name@ - Win32 Debug CPP=cl.exe RSC=rc.exe -!IF "$(CFG)" == "@project_name@ - Win32 Release" +!IF "$(CFG)" == "@project_name@ - Win32 Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -57,7 +61,7 @@ LIB32=link.exe -lib # ADD BASE LIB32 /nologo /out:"@lib_rel_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" # ADD LIB32 /nologo /out:"@lib_rel_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -80,7 +84,7 @@ LIB32=link.exe -lib # ADD BASE LIB32 /nologo /out:"@lib_debug_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" # ADD LIB32 /nologo /out:"@lib_debug_dest@/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Release x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 @@ -103,7 +107,7 @@ LIB32=link.exe -lib # ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_ASCII/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" # ADD LIB32 /nologo /out:"@lib_rel_dest@_ASCII/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" -!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 ASCII Debug x86" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 @@ -218,18 +222,114 @@ LIB32=link.exe -lib # ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" # ADD LIB32 /nologo /out:"@lib_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_AMD64" +# PROP BASE Intermediate_Dir "Debug/@project_name@" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/@project_name@" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /Wp64 /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_debug_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +# ADD LIB32 /nologo /out:"@lib_debug_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/@project_name@" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_AMD64" +# PROP Intermediate_Dir "Release_AMD64/@project_name@" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +# ADD LIB32 /nologo /out:"@lib_rel_dest@_AMD64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "@lib_debug_dest@_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/@project_name@" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "@lib_debug_dest@_IA64" +# PROP Intermediate_Dir "Debug_IA64/@project_name@" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_debug_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" +# ADD LIB32 /nologo /out:"@lib_debug_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@sd.lib" + +!ELSEIF "$(CFG)" == "@project_name@ - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "@lib_rel_dest@_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/@project_name@" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "@lib_rel_dest@_IA64" +# PROP Intermediate_Dir "Release_IA64/@project_name@" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" @extra_cppflags@ /Wp64 /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo /out:"@lib_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" +# ADD LIB32 /nologo /out:"@lib_rel_dest@_IA64/libdb@lib_suffix@@DB_VERSION_MAJOR@@DB_VERSION_MINOR@s.lib" + !ENDIF # Begin Target -# Name "@project_name@ - Win32 Release" -# Name "@project_name@ - Win32 Debug" -# Name "@project_name@ - Win32 ASCII Release" -# Name "@project_name@ - Win32 ASCII Debug" +# Name "@project_name@ - Win32 Release x86" +# Name "@project_name@ - Win32 Debug x86" +# Name "@project_name@ - Win32 ASCII Release x86" +# Name "@project_name@ - Win32 ASCII Debug x86" # Name "@project_name@ - x64 Debug AMD64" # Name "@project_name@ - x64 Release AMD64" # Name "@project_name@ - x64 Debug IA64" # Name "@project_name@ - x64 Release IA64" +# Name "@project_name@ - Win32 Debug AMD64" +# Name "@project_name@ - Win32 Release AMD64" +# Name "@project_name@ - Win32 Debug IA64" +# Name "@project_name@ - Win32 Release IA64" @SOURCE_FILES@ # End Target # End Project diff --git a/db/build_windows/test_mutex.dsp b/db/build_windows/test_mutex.dsp new file mode 100644 index 000000000..d9b16f4ce --- /dev/null +++ b/db/build_windows/test_mutex.dsp @@ -0,0 +1,364 @@ +# Microsoft Developer Studio Project File - Name="test_mutex" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=test_mutex - Win32 Debug x86 +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "test_mutex.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "test_mutex.mak" CFG="test_mutex - Win32 Debug x86" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "test_mutex - Win32 Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 ASCII Debug x86" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 ASCII Release x86" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - x64 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - x64 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - x64 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - x64 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 Debug AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 Release AMD64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 Debug IA64" (based on "Win32 (x86) Console Application") +!MESSAGE "test_mutex - Win32 Release IA64" (based on "Win32 (x86) Console Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "test_mutex - Win32 Release x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release/test_mutex" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 Debug x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug/test_mutex" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 ASCII Debug x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_ASCII" +# PROP BASE Intermediate_Dir "Debug_ASCII/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_ASCII" +# PROP Intermediate_Dir "Debug_ASCII/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 ASCII Release x86" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_ASCII" +# PROP BASE Intermediate_Dir "Release_ASCII/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_ASCII" +# PROP Intermediate_Dir "Release_ASCII/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" + +!ELSEIF "$(CFG)" == "test_mutex - x64 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "test_mutex - x64 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "test_mutex - x64 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "test_mutex - x64 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 Debug AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_AMD64" +# PROP BASE Intermediate_Dir "Debug_AMD64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_AMD64" +# PROP Intermediate_Dir "Debug_AMD64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 Release AMD64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_AMD64" +# PROP BASE Intermediate_Dir "Release_AMD64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_AMD64" +# PROP Intermediate_Dir "Release_AMD64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 Debug IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug_IA64" +# PROP BASE Intermediate_Dir "Debug_IA64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug_IA64" +# PROP Intermediate_Dir "Debug_IA64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no +# ADD LINK32 libdb46d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" + +!ELSEIF "$(CFG)" == "test_mutex - Win32 Release IA64" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release_IA64" +# PROP BASE Intermediate_Dir "Release_IA64/test_mutex" +# PROP BASE Ignore_Export_Lib 0 +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release_IA64" +# PROP Intermediate_Dir "Release_IA64/test_mutex" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" +# ADD LINK32 libdb46.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" + +!ENDIF + +# Begin Target + +# Name "test_mutex - Win32 Release x86" +# Name "test_mutex - Win32 Debug x86" +# Name "test_mutex - Win32 ASCII Debug x86" +# Name "test_mutex - Win32 ASCII Release x86" +# Name "test_mutex - x64 Debug AMD64" +# Name "test_mutex - x64 Release AMD64" +# Name "test_mutex - x64 Debug IA64" +# Name "test_mutex - x64 Release IA64" +# Name "test_mutex - Win32 Debug AMD64" +# Name "test_mutex - Win32 Release AMD64" +# Name "test_mutex - Win32 Debug IA64" +# Name "test_mutex - Win32 Release IA64" +# Begin Source File + +SOURCE=..\mutex\test_mutex.c +# End Source File +# Begin Source File + +SOURCE=..\clib\getopt.c +# End Source File +# End Target +# End Project diff --git a/db/build_windows/tm.dsp b/db/build_windows/tm.dsp deleted file mode 100644 index 5917fc796..000000000 --- a/db/build_windows/tm.dsp +++ /dev/null @@ -1,256 +0,0 @@ -# Microsoft Developer Studio Project File - Name="tm" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Console Application" 0x0103 - -CFG=tm - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "tm.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "tm.mak" CFG="tm - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "tm - Win32 Release" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - Win32 Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - Win32 ASCII Debug" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - Win32 ASCII Release" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - x64 Debug AMD64" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - x64 Release AMD64" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - x64 Debug IA64" (based on "Win32 (x86) Console Application") -!MESSAGE "tm - x64 Release IA64" (based on "Win32 (x86) Console Application") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "tm - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release/tm" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release" - -!ELSEIF "$(CFG)" == "tm - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug/tm" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug" - -!ELSEIF "$(CFG)" == "tm - Win32 ASCII Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_ASCII" -# PROP BASE Intermediate_Dir "Debug_ASCII/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_ASCII" -# PROP Intermediate_Dir "Debug_ASCII/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_ASCII" - -!ELSEIF "$(CFG)" == "tm - Win32 ASCII Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_ASCII" -# PROP BASE Intermediate_Dir "Release_ASCII/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_ASCII" -# PROP Intermediate_Dir "Release_ASCII/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c -# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcmt" /libpath:"Release_ASCII" - -!ELSEIF "$(CFG)" == "tm - x64 Debug AMD64" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_AMD64" -# PROP BASE Intermediate_Dir "Debug_AMD64/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_AMD64" -# PROP Intermediate_Dir "Debug_AMD64/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:AMD64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_AMD64" - -!ELSEIF "$(CFG)" == "tm - x64 Release AMD64" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_AMD64" -# PROP BASE Intermediate_Dir "Release_AMD64/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_AMD64" -# PROP Intermediate_Dir "Release_AMD64/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:AMD64 /nodefaultlib:"libcmt" /libpath:"Release_AMD64" - -!ELSEIF "$(CFG)" == "tm - x64 Debug IA64" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug_IA64" -# PROP BASE Intermediate_Dir "Debug_IA64/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug_IA64" -# PROP Intermediate_Dir "Debug_IA64/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD CPP /nologo /MDd /W3 /EHsc /Z7 /Od /I "." /I ".." /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no -# ADD LINK32 libdb45d.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /debug /machine:IA64 /nodefaultlib:"libcmtd" /fixed:no /libpath:"Debug_IA64" - -!ELSEIF "$(CFG)" == "tm - x64 Release IA64" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release_IA64" -# PROP BASE Intermediate_Dir "Release_IA64/tm" -# PROP BASE Ignore_Export_Lib 0 -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release_IA64" -# PROP Intermediate_Dir "Release_IA64/tm" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD CPP /nologo /MD /W3 /EHsc /O2 /I "." /I ".." /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /Wp64 /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" -# ADD LINK32 libdb45.lib bufferoverflowU.lib kernel32.lib user32.lib advapi32.lib shell32.lib /nologo /subsystem:console /machine:IA64 /nodefaultlib:"libcmt" /libpath:"Release_IA64" - -!ENDIF - -# Begin Target - -# Name "tm - Win32 Release" -# Name "tm - Win32 Debug" -# Name "tm - Win32 ASCII Debug" -# Name "tm - Win32 ASCII Release" -# Name "tm - x64 Debug AMD64" -# Name "tm - x64 Release AMD64" -# Name "tm - x64 Debug IA64" -# Name "tm - x64 Release IA64" -# Begin Source File - -SOURCE=..\mutex\tm.c -# End Source File -# Begin Source File - -SOURCE=..\clib\getopt.c -# End Source File -# End Target -# End Project diff --git a/db/build_windows/win_db.h b/db/build_windows/win_db.h deleted file mode 100644 index 88d3b15b4..000000000 --- a/db/build_windows/win_db.h +++ /dev/null @@ -1,143 +0,0 @@ -/*- - * $Id: win_db.h,v 12.188 2006/09/20 20:08:48 bostic Exp $ - * - * The following provides the information necessary to build Berkeley - * DB on native Windows, and other Windows environments such as MinGW. - */ - -/* - * Avoid warnings with Visual Studio 8. - */ -#define _CRT_SECURE_NO_DEPRECATE 1 - -/* - * Windows NT 4.0 and later required for the replication manager. - */ -#ifdef HAVE_REPLICATION_THREADS -#define _WIN32_WINNT 0x0400 -#endif - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * To build Tcl interface libraries, the include path must be configured to - * use the directory containing , usually the include directory in - * the Tcl distribution. - */ -#ifdef DB_TCL_SUPPORT -#include -#endif - -#define WIN32_LEAN_AND_MEAN -#include -#include - -#ifdef HAVE_GETADDRINFO -/* - * Need explicit includes for IPv6 support on Windows. Both are necessary to - * ensure that pre WinXP versions have an implementation of the getaddrinfo API. - */ -#include -#include -#endif - -/* - * All of the necessary includes have been included, ignore the #includes - * in the Berkeley DB source files. - */ -#define NO_SYSTEM_INCLUDES - -/* - * Microsoft's C runtime library has fsync, getcwd, getpid, snprintf and - * vsnprintf, but under different names. - */ -#define fsync _commit -#define getcwd(buf, size) _getcwd(buf, size) -#define getpid _getpid -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -#define h_errno WSAGetLastError() - -/* - * Windows defines off_t to long (i.e., 32 bits). We need to pass 64-bit - * file offsets, so we declare our own. - */ -#define off_t __db_off_t -typedef __int64 off_t; - -/* - * Win32 does not have getopt. - * - * The externs are here (instead of using db_config.h and clib_port.h), - * because Berkeley DB example programs use getopt and they can't #include - * those files. - */ -#if defined(__cplusplus) -extern "C" { -#endif -extern int getopt(int, char * const *, const char *); -#if defined(__cplusplus) -} -#endif - -#ifdef _UNICODE -#define TO_TSTRING(dbenv, s, ts, ret) do { \ - int __len = (int)strlen(s) + 1; \ - ts = NULL; \ - if ((ret = __os_malloc((dbenv), \ - __len * sizeof(_TCHAR), &(ts))) == 0 && \ - MultiByteToWideChar(CP_UTF8, 0, \ - (s), -1, (ts), __len) == 0) \ - ret = __os_posix_err(__os_get_syserr()); \ - } while (0) - -#define FROM_TSTRING(dbenv, ts, s, ret) { \ - int __len = WideCharToMultiByte(CP_UTF8, 0, ts, -1, \ - NULL, 0, NULL, NULL); \ - s = NULL; \ - if ((ret = __os_malloc((dbenv), __len, &(s))) == 0 && \ - WideCharToMultiByte(CP_UTF8, 0, \ - (ts), -1, (s), __len, NULL, NULL) == 0) \ - ret = __os_posix_err(__os_get_syserr()); \ - } while (0) - -#define FREE_STRING(dbenv, s) do { \ - if ((s) != NULL) { \ - __os_free((dbenv), (s)); \ - (s) = NULL; \ - } \ - } while (0) - -#else -#define TO_TSTRING(dbenv, s, ts, ret) (ret) = 0, (ts) = (_TCHAR *)(s) -#define FROM_TSTRING(dbenv, ts, s, ret) (ret) = 0, (s) = (char *)(ts) -#define FREE_STRING(dbenv, ts) -#endif - -#ifndef INVALID_HANDLE_VALUE -#define INVALID_HANDLE_VALUE ((HANDLE)-1) -#endif - -#ifndef INVALID_FILE_ATTRIBUTES -#define INVALID_FILE_ATTRIBUTES ((DWORD)-1) -#endif - -#ifndef INVALID_SET_FILE_POINTER -#define INVALID_SET_FILE_POINTER ((DWORD)-1) -#endif diff --git a/db/clib/abort.c b/db/clib/abort.c deleted file mode 100644 index d3069a442..000000000 --- a/db/clib/abort.c +++ /dev/null @@ -1,29 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. - * - * $Id: abort.c,v 1.3 2006/09/07 14:12:59 bostic Exp $ - */ - -#include "db_config.h" - -#include "db_int.h" - -/* - * abort -- - * - * PUBLIC: #ifndef HAVE_ABORT - * PUBLIC: void abort __P((void)); - * PUBLIC: #endif - */ -void -abort() -{ -#ifdef SIGABRT - raise(SIGABRT); /* Try and drop core. */ -#endif - exit(1); - /* NOTREACHED */ -} diff --git a/db/clib/ctime.c b/db/clib/ctime.c index 49375d5da..b6a5c606e 100644 --- a/db/clib/ctime.c +++ b/db/clib/ctime.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: ctime.c,v 12.10 2006/08/24 14:45:09 bostic Exp $ + * $Id: ctime.c,v 12.12 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/getaddrinfo.c b/db/clib/getaddrinfo.c index 769dda67d..c2d5ba2e9 100644 --- a/db/clib/getaddrinfo.c +++ b/db/clib/getaddrinfo.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2006,2007 Oracle. All rights reserved. * - * $Id: getaddrinfo.c,v 1.5 2006/08/24 14:45:09 bostic Exp $ + * $Id: getaddrinfo.c,v 1.8 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" @@ -58,6 +57,11 @@ __db_getaddrinfo(dbenv, nodename, port, servname, hints, res) COMPQUIET(hints, NULL); COMPQUIET(servname, NULL); + /* INADDR_NONE is not defined on Solaris 2.6, 2.7 or 2.8. */ +#ifndef INADDR_NONE +#define INADDR_NONE ((u_long)0xffffffff) +#endif + /* * Basic implementation of IPv4 component of getaddrinfo. * Limited to the functionality used by repmgr. @@ -85,11 +89,22 @@ __db_getaddrinfo(dbenv, nodename, port, servname, hints, res) * errors. The only function we currently * use that needs h_errno is gethostbyname, * so we deal with it here. + * + * hstrerror is not available on Solaris 2.6 + * (it is in libresolv but is a private, + * unexported symbol). */ +#ifdef HAVE_HSTRERROR __db_errx(dbenv, "%s(%u): host lookup failed: %s", nodename == NULL ? "" : nodename, port, hstrerror(h_errno)); +#else + __db_errx(dbenv, + "%s(%u): host lookup failed: %d", + nodename == NULL ? "" : nodename, port, + h_errno); +#endif switch (h_errno) { case HOST_NOT_FOUND: case NO_DATA: diff --git a/db/clib/getcwd.c b/db/clib/getcwd.c index 7a2ce2d7d..97e6f9af7 100644 --- a/db/clib/getcwd.c +++ b/db/clib/getcwd.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1989, 1991, 1993 @@ -32,14 +31,14 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: getcwd.c,v 12.5 2006/08/24 14:45:09 bostic Exp $ + * $Id: getcwd.c,v 12.9 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" #include "db_int.h" -#ifndef NO_SYSTEM_INCLUDES +#ifdef HAVE_SYSTEM_INCLUDE_FILES #if HAVE_DIRENT_H # include # define NAMLEN(dirent) strlen((dirent)->d_name) @@ -63,7 +62,7 @@ (dp->d_name[1] == '.' && dp->d_name[2] == '\0'))) #ifndef dirfd -#define dirfd(dirp) ((dirp)->dd_fd) +#define dirfd(dirp) ((dirp)->dd_fd) #endif /* diff --git a/db/clib/getopt.c b/db/clib/getopt.c index 86b436809..ea486c817 100644 --- a/db/clib/getopt.c +++ b/db/clib/getopt.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1987, 1993, 1994 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: getopt.c,v 12.4 2006/08/24 14:45:10 bostic Exp $ + * $Id: getopt.c,v 12.6 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/isalpha.c b/db/clib/isalpha.c index 7d77d8dad..f8588411f 100644 --- a/db/clib/isalpha.c +++ b/db/clib/isalpha.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2005,2007 Oracle. All rights reserved. * - * $Id: isalpha.c,v 1.2 2006/08/24 14:45:10 bostic Exp $ + * $Id: isalpha.c,v 1.4 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/isdigit.c b/db/clib/isdigit.c index 95c490f84..e81eef8e1 100644 --- a/db/clib/isdigit.c +++ b/db/clib/isdigit.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2005,2007 Oracle. All rights reserved. * - * $Id: isdigit.c,v 1.2 2006/08/24 14:45:10 bostic Exp $ + * $Id: isdigit.c,v 1.4 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/isprint.c b/db/clib/isprint.c index 481b64772..4e5d4f04c 100644 --- a/db/clib/isprint.c +++ b/db/clib/isprint.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2005,2007 Oracle. All rights reserved. * - * $Id: isprint.c,v 1.2 2006/08/24 14:45:10 bostic Exp $ + * $Id: isprint.c,v 1.4 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/isspace.c b/db/clib/isspace.c index 18ed4dcfc..07955defa 100644 --- a/db/clib/isspace.c +++ b/db/clib/isspace.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2005,2007 Oracle. All rights reserved. * - * $Id: isspace.c,v 1.2 2006/08/24 14:45:10 bostic Exp $ + * $Id: isspace.c,v 1.4 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/memcmp.c b/db/clib/memcmp.c index 8b4f4c347..6ebfeeeb5 100644 --- a/db/clib/memcmp.c +++ b/db/clib/memcmp.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: memcmp.c,v 12.4 2006/08/24 14:45:10 bostic Exp $ + * $Id: memcmp.c,v 12.6 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/memmove.c b/db/clib/memmove.c index b52ffbea0..bc1c4b205 100644 --- a/db/clib/memmove.c +++ b/db/clib/memmove.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: memmove.c,v 12.5 2006/08/24 14:45:10 bostic Exp $ + * $Id: memmove.c,v 12.7 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/printf.c b/db/clib/printf.c index 62c1daf0f..461667306 100644 --- a/db/clib/printf.c +++ b/db/clib/printf.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2005,2007 Oracle. All rights reserved. * - * $Id: printf.c,v 1.5 2006/09/13 19:10:57 bostic Exp $ + * $Id: printf.c,v 1.7 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/qsort.c b/db/clib/qsort.c new file mode 100644 index 000000000..730f22e6a --- /dev/null +++ b/db/clib/qsort.c @@ -0,0 +1,181 @@ +/*- + * Copyright (c) 1992, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * static char sccsid[] = "@(#)qsort.c 8.1 (Berkeley) 6/4/93"; + * Id: qsort.c,v 1.4 1996/04/19 18:40:20 bde + */ + +#include "db_config.h" + +#include "db_int.h" + +static char *med3 __P((char *, + char *, char *, int (*)(const void *, const void *))); +static void swapfunc __P((char *, char *, int, int)); + +#define min(a, b) (a) < (b) ? a : b + +/* + * Qsort routine from Bentley & McIlroy's "Engineering a Sort Function". + */ +#define swapcode(TYPE, parmi, parmj, n) { \ + long i = (n) / sizeof (TYPE); \ + register TYPE *pi = (TYPE *) (parmi); \ + register TYPE *pj = (TYPE *) (parmj); \ + do { \ + register TYPE t = *pi; \ + *pi++ = *pj; \ + *pj++ = t; \ + } while (--i > 0); \ +} + +#define SWAPINIT(a, es) swaptype = ((char *)a - (char *)0) % sizeof(long) || \ + es % sizeof(long) ? 2 : es == sizeof(long)? 0 : 1; + +static inline void +swapfunc(a, b, n, swaptype) + char *a, *b; + int n, swaptype; +{ + if(swaptype <= 1) + swapcode(long, a, b, n) + else + swapcode(char, a, b, n) +} + +#define swap(a, b) \ + if (swaptype == 0) { \ + long t = *(long *)(a); \ + *(long *)(a) = *(long *)(b); \ + *(long *)(b) = t; \ + } else \ + swapfunc(a, b, es, swaptype) + +#define vecswap(a, b, n) if ((n) > 0) swapfunc(a, b, n, swaptype) + +static inline char * +med3(a, b, c, cmp) + char *a, *b, *c; + int (*cmp)(const void *, const void *); +{ + return cmp(a, b) < 0 ? + (cmp(b, c) < 0 ? b : (cmp(a, c) < 0 ? c : a )) + :(cmp(b, c) > 0 ? b : (cmp(a, c) < 0 ? a : c )); +} + +/* + * PUBLIC: #ifndef HAVE_QSORT + * PUBLIC: void qsort __P((void *, + * PUBLIC: size_t, size_t, int(*)(const void *, const void *))); + * PUBLIC: #endif + */ +void +qsort(a, n, es, cmp) + void *a; + size_t n, es; + int (*cmp) __P((const void *, const void *)); +{ + char *pa, *pb, *pc, *pd, *pl, *pm, *pn; + int d, r, swaptype, swap_cnt; + +loop: SWAPINIT(a, es); + swap_cnt = 0; + if (n < 7) { + for (pm = (char *)a + es; pm < (char *)a + n * es; pm += es) + for (pl = pm; pl > (char *)a && cmp(pl - es, pl) > 0; + pl -= es) + swap(pl, pl - es); + return; + } + pm = (char *)a + (n / 2) * es; + if (n > 7) { + pl = a; + pn = (char *)a + (n - 1) * es; + if (n > 40) { + d = (n / 8) * es; + pl = med3(pl, pl + d, pl + 2 * d, cmp); + pm = med3(pm - d, pm, pm + d, cmp); + pn = med3(pn - 2 * d, pn - d, pn, cmp); + } + pm = med3(pl, pm, pn, cmp); + } + swap(a, pm); + pa = pb = (char *)a + es; + + pc = pd = (char *)a + (n - 1) * es; + for (;;) { + while (pb <= pc && (r = cmp(pb, a)) <= 0) { + if (r == 0) { + swap_cnt = 1; + swap(pa, pb); + pa += es; + } + pb += es; + } + while (pb <= pc && (r = cmp(pc, a)) >= 0) { + if (r == 0) { + swap_cnt = 1; + swap(pc, pd); + pd -= es; + } + pc -= es; + } + if (pb > pc) + break; + swap(pb, pc); + swap_cnt = 1; + pb += es; + pc -= es; + } + if (swap_cnt == 0) { /* Switch to insertion sort */ + for (pm = (char *)a + es; pm < (char *)a + n * es; pm += es) + for (pl = pm; pl > (char *)a && cmp(pl - es, pl) > 0; + pl -= es) + swap(pl, pl - es); + return; + } + + pn = (char *)a + n * es; + r = min(pa - (char *)a, pb - pa); + vecswap(a, pb - r, r); + r = min((int)(pd - pc), (int)(pn - pd - es)); + vecswap(pb, pn - r, r); + if ((r = (int)(pb - pa)) > (int)es) + qsort(a, r / es, es, cmp); + if ((r = (int)(pd - pc)) > (int)es) { + /* Iterate rather than recurse to save stack space */ + a = pn - r; + n = r / es; + goto loop; + } +/* qsort(pn - r, r / es, es, cmp);*/ +} diff --git a/db/clib/raise.c b/db/clib/raise.c index 1c5b87589..3e8a83be5 100644 --- a/db/clib/raise.c +++ b/db/clib/raise.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: raise.c,v 12.5 2006/08/24 14:45:10 bostic Exp $ + * $Id: raise.c,v 12.7 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" diff --git a/db/clib/rand.c b/db/clib/rand.c index f46248b91..6b8100600 100644 --- a/db/clib/rand.c +++ b/db/clib/rand.c @@ -13,15 +13,13 @@ * PUBLIC: void srand __P((unsigned int)); * PUBLIC: #endif */ -static unsigned long int next = 1; - int rand(void) /* RAND_MAX assumed to be 32767 */ { - next = next * 1103515245 + 12345; - return (unsigned int) (next/65536) % 32768; + DB_GLOBAL(rand_next) = DB_GLOBAL(rand_next) * 1103515245 + 12345; + return (unsigned int) (DB_GLOBAL(rand_next)/65536) % 32768; } void srand(unsigned int seed) { - next = seed; + DB_GLOBAL(rand_next) = seed; } diff --git a/db/clib/snprintf.c b/db/clib/snprintf.c index f568713c0..1dc852abb 100644 --- a/db/clib/snprintf.c +++ b/db/clib/snprintf.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: snprintf.c,v 12.4 2006/08/24 14:45:10 bostic Exp $ + * $Id: snprintf.c,v 12.7 2007/05/17 15:14:54 bostic Exp $ */ #include "db_config.h" @@ -120,7 +119,7 @@ sprintf_overflow() exit(1); /* But firm. */ - abort(); + __os_abort(); /* NOTREACHED */ } diff --git a/db/clib/strcasecmp.c b/db/clib/strcasecmp.c index 7510f2385..f4e81a5d9 100644 --- a/db/clib/strcasecmp.c +++ b/db/clib/strcasecmp.c @@ -30,53 +30,13 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: strcasecmp.c,v 12.1 2006/05/05 14:53:08 bostic Exp $ + * $Id: strcasecmp.c,v 12.3 2006/10/11 15:31:21 bostic Exp $ */ #include "db_config.h" #include "db_int.h" -/* - * This array is designed for mapping upper and lower case letter - * together for a case independent comparison. The mappings are - * based upon ascii character sequences. - */ -static const unsigned char charmap[] = { - '\000', '\001', '\002', '\003', '\004', '\005', '\006', '\007', - '\010', '\011', '\012', '\013', '\014', '\015', '\016', '\017', - '\020', '\021', '\022', '\023', '\024', '\025', '\026', '\027', - '\030', '\031', '\032', '\033', '\034', '\035', '\036', '\037', - '\040', '\041', '\042', '\043', '\044', '\045', '\046', '\047', - '\050', '\051', '\052', '\053', '\054', '\055', '\056', '\057', - '\060', '\061', '\062', '\063', '\064', '\065', '\066', '\067', - '\070', '\071', '\072', '\073', '\074', '\075', '\076', '\077', - '\100', '\141', '\142', '\143', '\144', '\145', '\146', '\147', - '\150', '\151', '\152', '\153', '\154', '\155', '\156', '\157', - '\160', '\161', '\162', '\163', '\164', '\165', '\166', '\167', - '\170', '\171', '\172', '\133', '\134', '\135', '\136', '\137', - '\140', '\141', '\142', '\143', '\144', '\145', '\146', '\147', - '\150', '\151', '\152', '\153', '\154', '\155', '\156', '\157', - '\160', '\161', '\162', '\163', '\164', '\165', '\166', '\167', - '\170', '\171', '\172', '\173', '\174', '\175', '\176', '\177', - '\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207', - '\210', '\211', '\212', '\213', '\214', '\215', '\216', '\217', - '\220', '\221', '\222', '\223', '\224', '\225', '\226', '\227', - '\230', '\231', '\232', '\233', '\234', '\235', '\236', '\237', - '\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247', - '\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257', - '\260', '\261', '\262', '\263', '\264', '\265', '\266', '\267', - '\270', '\271', '\272', '\273', '\274', '\275', '\276', '\277', - '\300', '\301', '\302', '\303', '\304', '\305', '\306', '\307', - '\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317', - '\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327', - '\330', '\331', '\332', '\333', '\334', '\335', '\336', '\337', - '\340', '\341', '\342', '\343', '\344', '\345', '\346', '\347', - '\350', '\351', '\352', '\353', '\354', '\355', '\356', '\357', - '\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367', - '\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377' -}; - /* * strcasecmp -- * Do strcmp(3) in a case-insensitive manner. @@ -89,14 +49,21 @@ int strcasecmp(s1, s2) const char *s1, *s2; { - register const unsigned char *cm = charmap, - *us1 = (const unsigned char *)s1, - *us2 = (const unsigned char *)s2; + u_char s1ch, s2ch; - while (cm[*us1] == cm[*us2++]) - if (*us1++ == '\0') + for (;;) { + s1ch = *s1++; + s2ch = *s2++; + if (s1ch >= 'A' && s1ch <= 'Z') /* tolower() */ + s1ch += 32; + if (s2ch >= 'A' && s2ch <= 'Z') /* tolower() */ + s2ch += 32; + if (s1ch != s2ch) + return (s1ch - s2ch); + if (s1ch == '\0') return (0); - return (cm[*us1] - cm[*--us2]); + } + /* NOTREACHED */ } /* @@ -112,17 +79,19 @@ strncasecmp(s1, s2, n) const char *s1, *s2; register size_t n; { - if (n != 0) { - register const unsigned char *cm = charmap, - *us1 = (const unsigned char *)s1, - *us2 = (const unsigned char *)s2; + u_char s1ch, s2ch; - do { - if (cm[*us1] != cm[*us2++]) - return (cm[*us1] - cm[*--us2]); - if (*us1++ == '\0') - break; - } while (--n != 0); + for (; n != 0; --n) { + s1ch = *s1++; + s2ch = *s2++; + if (s1ch >= 'A' && s1ch <= 'Z') /* tolower() */ + s1ch += 32; + if (s2ch >= 'A' && s2ch <= 'Z') /* tolower() */ + s2ch += 32; + if (s1ch != s2ch) + return (s1ch - s2ch); + if (s1ch == '\0') + return (0); } return (0); } diff --git a/db/clib/strerror.c b/db/clib/strerror.c index f5c303988..7186f2303 100644 --- a/db/clib/strerror.c +++ b/db/clib/strerror.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1988, 1993 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: strerror.c,v 12.7 2006/08/24 14:45:10 bostic Exp $ + * $Id: strerror.c,v 12.13 2007/05/17 16:57:46 bostic Exp $ */ /* @@ -74,138 +73,153 @@ #include "db_int.h" -static const char *__db_errlist[] = { - "Undefined error: 0", /* 0 - ENOERROR */ - "Operation not permitted", /* 1 - EPERM */ - "No such file or directory", /* 2 - ENOENT */ - "No such process", /* 3 - ESRCH */ - "Interrupted system call", /* 4 - EINTR */ - "Input/output error", /* 5 - EIO */ - "Device not configured", /* 6 - ENXIO */ - "Argument list too long", /* 7 - E2BIG */ - "Exec format error", /* 8 - ENOEXEC */ - "Bad file descriptor", /* 9 - EBADF */ - "No child processes", /* 10 - ECHILD */ - "Resource deadlock avoided", /* 11 - EDEADLK */ - "Cannot allocate memory", /* 12 - ENOMEM */ - "Permission denied", /* 13 - EACCES */ - "Bad address", /* 14 - EFAULT */ - "Block device required", /* 15 - ENOTBLK */ - "Device busy", /* 16 - EBUSY */ - "File exists", /* 17 - EEXIST */ - "Cross-device link", /* 18 - EXDEV */ - "Operation not supported by device", /* 19 - ENODEV */ - "Not a directory", /* 20 - ENOTDIR */ - "Is a directory", /* 21 - EISDIR */ - "Invalid argument", /* 22 - EINVAL */ - "Too many open files in system", /* 23 - ENFILE */ - "Too many open files", /* 24 - EMFILE */ - "Inappropriate ioctl for device", /* 25 - ENOTTY */ - "Text file busy", /* 26 - ETXTBSY */ - "File too large", /* 27 - EFBIG */ - "No space left on device", /* 28 - ENOSPC */ - "Illegal seek", /* 29 - ESPIPE */ - "Read-only file system", /* 30 - EROFS */ - "Too many links", /* 31 - EMLINK */ - "Broken pipe", /* 32 - EPIPE */ +/* + * __db_strerror -- + * Return the string associated with an errno. + * + * PUBLIC: #ifndef HAVE_STRERROR + * PUBLIC: char *strerror __P((int)); + * PUBLIC: #endif + */ +char * +strerror(num) + int num; +{ +#define ERRSTR(v, s) do { \ + if (num == (v)) \ + return (s); \ +} while (0) + ERRSTR(0, "Undefined error: 0"); + ERRSTR(EPERM, "Operation not permitted"); + ERRSTR(ENOENT, "No such file or directory"); + ERRSTR(ESRCH, "No such process"); + ERRSTR(EINTR, "Interrupted system call"); + ERRSTR(EIO, "Input/output error"); + ERRSTR(ENXIO, "Device not configured"); + ERRSTR(E2BIG, "Argument list too long"); + ERRSTR(ENOEXEC, "Exec format error"); + ERRSTR(EBADF, "Bad file descriptor"); + ERRSTR(ECHILD, "No child processes"); + ERRSTR(EDEADLK, "Resource deadlock avoided"); + ERRSTR(ENOMEM, "Cannot allocate memory"); + ERRSTR(EACCES, "Permission denied"); + ERRSTR(EFAULT, "Bad address"); + ERRSTR(ENOTBLK, "Block device required"); + ERRSTR(EBUSY, "Device busy"); + ERRSTR(EEXIST, "File exists"); + ERRSTR(EXDEV, "Cross-device link"); + ERRSTR(ENODEV, "Operation not supported by device"); + ERRSTR(ENOTDIR, "Not a directory"); + ERRSTR(EISDIR, "Is a directory"); + ERRSTR(EINVAL, "Invalid argument"); + ERRSTR(ENFILE, "Too many open files in system"); + ERRSTR(EMFILE, "Too many open files"); + ERRSTR(ENOTTY, "Inappropriate ioctl for device"); + ERRSTR(ETXTBSY, "Text file busy"); + ERRSTR(EFBIG, "File too large"); + ERRSTR(ENOSPC, "No space left on device"); + ERRSTR(ESPIPE, "Illegal seek"); + ERRSTR(EROFS, "Read-only file system"); + ERRSTR(EMLINK, "Too many links"); + ERRSTR(EPIPE, "Broken pipe"); /* math software */ - "Numerical argument out of domain", /* 33 - EDOM */ - "Result too large", /* 34 - ERANGE */ + ERRSTR(EDOM, "Numerical argument out of domain"); + ERRSTR(ERANGE, "Result too large"); /* non-blocking and interrupt i/o */ - "Resource temporarily unavailable", /* 35 - EAGAIN */ - /* 35 - EWOULDBLOCK */ - "Operation now in progress", /* 36 - EINPROGRESS */ - "Operation already in progress", /* 37 - EALREADY */ + ERRSTR(EAGAIN, "Resource temporarily unavailable"); + ERRSTR(EWOULDBLOCK, "Resource temporarily unavailable"); + ERRSTR(EINPROGRESS, "Operation now in progress"); + ERRSTR(EALREADY, "Operation already in progress"); /* ipc/network software -- argument errors */ - "Socket operation on non-socket", /* 38 - ENOTSOCK */ - "Destination address required", /* 39 - EDESTADDRREQ */ - "Message too long", /* 40 - EMSGSIZE */ - "Protocol wrong type for socket", /* 41 - EPROTOTYPE */ - "Protocol not available", /* 42 - ENOPROTOOPT */ - "Protocol not supported", /* 43 - EPROTONOSUPPORT */ - "Socket type not supported", /* 44 - ESOCKTNOSUPPORT */ - "Operation not supported", /* 45 - EOPNOTSUPP */ - "Protocol family not supported", /* 46 - EPFNOSUPPORT */ - /* 47 - EAFNOSUPPORT */ - "Address family not supported by protocol family", - "Address already in use", /* 48 - EADDRINUSE */ - "Can't assign requested address", /* 49 - EADDRNOTAVAIL */ + ERRSTR(ENOTSOCK, "Socket operation on non-socket"); + ERRSTR(EDESTADDRREQ, "Destination address required"); + ERRSTR(EMSGSIZE, "Message too long"); + ERRSTR(EPROTOTYPE, "Protocol wrong type for socket"); + ERRSTR(ENOPROTOOPT, "Protocol not available"); + ERRSTR(EPROTONOSUPPORT, "Protocol not supported"); + ERRSTR(ESOCKTNOSUPPORT, "Socket type not supported"); + ERRSTR(EOPNOTSUPP, "Operation not supported"); + ERRSTR(EPFNOSUPPORT, "Protocol family not supported"); + ERRSTR(EAFNOSUPPORT, "Address family not supported by protocol family"); + ERRSTR(EADDRINUSE, "Address already in use"); + ERRSTR(EADDRNOTAVAIL, "Can't assign requested address"); /* ipc/network software -- operational errors */ - "Network is down", /* 50 - ENETDOWN */ - "Network is unreachable", /* 51 - ENETUNREACH */ - "Network dropped connection on reset", /* 52 - ENETRESET */ - "Software caused connection abort", /* 53 - ECONNABORTED */ - "Connection reset by peer", /* 54 - ECONNRESET */ - "No buffer space available", /* 55 - ENOBUFS */ - "Socket is already connected", /* 56 - EISCONN */ - "Socket is not connected", /* 57 - ENOTCONN */ - "Can't send after socket shutdown", /* 58 - ESHUTDOWN */ - "Too many references: can't splice", /* 59 - ETOOMANYREFS */ - "Operation timed out", /* 60 - ETIMEDOUT */ - "Connection refused", /* 61 - ECONNREFUSED */ - - "Too many levels of symbolic links", /* 62 - ELOOP */ - "File name too long", /* 63 - ENAMETOOLONG */ + ERRSTR(ENETDOWN, "Network is down"); + ERRSTR(ENETUNREACH, "Network is unreachable"); + ERRSTR(ENETRESET, "Network dropped connection on reset"); + ERRSTR(ECONNABORTED, "Software caused connection abort"); + ERRSTR(ECONNRESET, "Connection reset by peer"); + ERRSTR(ENOBUFS, "No buffer space available"); + ERRSTR(EISCONN, "Socket is already connected"); + ERRSTR(ENOTCONN, "Socket is not connected"); + ERRSTR(ESHUTDOWN, "Can't send after socket shutdown"); + ERRSTR(ETOOMANYREFS, "Too many references: can't splice"); + ERRSTR(ETIMEDOUT, "Operation timed out"); + ERRSTR(ECONNREFUSED, "Connection refused"); + + ERRSTR(ELOOP, "Too many levels of symbolic links"); + ERRSTR(ENAMETOOLONG, "File name too long"); /* should be rearranged */ - "Host is down", /* 64 - EHOSTDOWN */ - "No route to host", /* 65 - EHOSTUNREACH */ - "Directory not empty", /* 66 - ENOTEMPTY */ + ERRSTR(EHOSTDOWN, "Host is down"); + ERRSTR(EHOSTUNREACH, "No route to host"); + ERRSTR(ENOTEMPTY, "Directory not empty"); /* quotas & mush */ - "Too many processes", /* 67 - EPROCLIM */ - "Too many users", /* 68 - EUSERS */ - "Disc quota exceeded", /* 69 - EDQUOT */ + ERRSTR(EPROCLIM, "Too many processes"); + ERRSTR(EUSERS, "Too many users"); + ERRSTR(EDQUOT, "Disc quota exceeded"); /* Network File System */ - "Stale NFS file handle", /* 70 - ESTALE */ - "Too many levels of remote in path", /* 71 - EREMOTE */ - "RPC struct is bad", /* 72 - EBADRPC */ - "RPC version wrong", /* 73 - ERPCMISMATCH */ - "RPC prog. not avail", /* 74 - EPROGUNAVAIL */ - "Program version wrong", /* 75 - EPROGMISMATCH */ - "Bad procedure for program", /* 76 - EPROCUNAVAIL */ - - "No locks available", /* 77 - ENOLCK */ - "Function not implemented", /* 78 - ENOSYS */ - "Inappropriate file type or format", /* 79 - EFTYPE */ - "Authentication error", /* 80 - EAUTH */ - "Need authenticator", /* 81 - ENEEDAUTH */ - "Identifier removed", /* 82 - EIDRM */ - "No message of desired type", /* 83 - ENOMSG */ - "Value too large to be stored in data type", /* 84 - EOVERFLOW */ - "Operation canceled", /* 85 - ECANCELED */ - "Illegal byte sequence", /* 86 - EILSEQ */ - "Attribute not found", /* 87 - ENOATTR */ + ERRSTR(ESTALE, "Stale NFS file handle"); + ERRSTR(EREMOTE, "Too many levels of remote in path"); + ERRSTR(EBADRPC, "RPC struct is bad"); + ERRSTR(ERPCMISMATCH, "RPC version wrong"); + ERRSTR(EPROGUNAVAIL, "RPC prog. not avail"); + ERRSTR(EPROGMISMATCH, "Program version wrong"); + ERRSTR(EPROCUNAVAIL, "Bad procedure for program"); + + ERRSTR(ENOLCK, "No locks available"); + ERRSTR(ENOSYS, "Function not implemented"); + ERRSTR(EFTYPE, "Inappropriate file type or format"); +#ifdef EAUTH + ERRSTR(EAUTH, "Authentication error"); +#endif +#ifdef ENEEDAUTH + ERRSTR(ENEEDAUTH, "Need authenticator"); +#endif + ERRSTR(EIDRM, "Identifier removed"); + ERRSTR(ENOMSG, "No message of desired type"); +#ifdef EOVERFLOW + ERRSTR(EOVERFLOW, "Value too large to be stored in data type"); +#endif + ERRSTR(ECANCELED, "Operation canceled"); + ERRSTR(EILSEQ, "Illegal byte sequence"); +#ifdef ENOATTR + ERRSTR(ENOATTR, "Attribute not found"); +#endif /* General */ - "Programming error", /* 88 - EDOOFUS */ - - "Bad message", /* 89 - EBADMSG */ - "Multihop attempted", /* 90 - EMULTIHOP */ - "Link has been severed", /* 91 - ENOLINK */ - "Protocol error", /* 92 - EPROTO */ -}; -static int __db_nerr = sizeof(__db_errlist) / sizeof(__db_errlist[0]); - -/* - * __db_strerror -- - * Return the string associated with an errno. - * - * PUBLIC: #ifndef HAVE_STRERROR - * PUBLIC: char *strerror __P((int)); - * PUBLIC: #endif - */ -char * -strerror(num) - int num; -{ - if (num >= 0 && num < __db_nerr) - return ((char *)__db_errlist[num]); +#ifdef EDOOFUS + ERRSTR(EDOOFUS, "Programming error"); +#endif + +#ifdef EBADMSG + ERRSTR(EBADMSG, "Bad message"); +#endif +#ifdef EMULTIHOP + ERRSTR(EMULTIHOP, "Multihop attempted"); +#endif +#ifdef ENOLINK + ERRSTR(ENOLINK, "Link has been severed"); +#endif +#ifdef EPROTO + ERRSTR(EPROTO, "Protocol error"); +#endif return (__db_unknown_error(num)); } diff --git a/db/common/crypto_stub.c b/db/common/crypto_stub.c index 991622b91..4485b1dd2 100644 --- a/db/common/crypto_stub.c +++ b/db/common/crypto_stub.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: crypto_stub.c,v 12.5 2006/08/24 14:45:10 bostic Exp $ + * $Id: crypto_stub.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/db_byteorder.c b/db/common/db_byteorder.c index 2aa85dfc9..27c7e4688 100644 --- a/db/common/db_byteorder.c +++ b/db/common/db_byteorder.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_byteorder.c,v 12.5 2006/08/24 14:45:10 bostic Exp $ + * $Id: db_byteorder.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/db_clock.c b/db/common/db_clock.c deleted file mode 100644 index 190ee5924..000000000 --- a/db/common/db_clock.c +++ /dev/null @@ -1,31 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 2005-2006 - * Oracle Corporation. All rights reserved. - * - * $Id: db_clock.c,v 1.5 2006/08/24 14:45:11 bostic Exp $ - */ - -#include "db_config.h" - -#include "db_int.h" - -/* - * __db_difftime -- - * - * Compute the difference in seconds and microseconds of two timers. - * - * PUBLIC: void __db_difftime __P((u_int32_t, u_int32_t, u_int32_t, u_int32_t, - * PUBLIC: u_int32_t *, u_int32_t *)); - */ -void -__db_difftime(ssec, esec, susec, eusec, secp, usecp) - u_int32_t ssec, esec, susec, eusec, *secp, *usecp; -{ - if ((*secp = esec - ssec) != 0 && eusec < susec) { - (*secp)--; - eusec += 1000000; - } - *usecp = eusec - susec; -} diff --git a/db/common/db_err.c b/db/common/db_err.c index 0c11148b9..62e16d161 100644 --- a/db/common/db_err.c +++ b/db/common/db_err.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_err.c,v 12.44 2006/09/13 14:53:34 mjc Exp $ + * $Id: db_err.c,v 12.62 2007/05/29 15:23:05 sue Exp $ */ #include "db_config.h" @@ -140,7 +139,7 @@ __db_assert(dbenv, e, file, line) { __db_errx(dbenv, "assert failure: %s/%d: \"%s\"", file, line, e); - abort(); + __os_abort(); /* NOTREACHED */ } #endif @@ -180,7 +179,7 @@ __db_panic(dbenv, errval) int errval; { if (dbenv != NULL) { - __db_panic_set(dbenv, 1); + __env_panic_set(dbenv, 1); __db_err(dbenv, errval, "PANIC"); @@ -197,7 +196,7 @@ __db_panic(dbenv, errval) * test suite to check to make sure that DB_RUNRECOVERY is returned * under certain conditions. */ - abort(); + __os_abort(); /* NOTREACHED */ #endif @@ -209,22 +208,6 @@ __db_panic(dbenv, errval) return (DB_RUNRECOVERY); } -/* - * __db_panic_set -- - * Set/clear unrecoverable error. - * - * PUBLIC: void __db_panic_set __P((DB_ENV *, int)); - */ -void -__db_panic_set(dbenv, on) - DB_ENV *dbenv; - int on; -{ - if (dbenv != NULL && dbenv->reginfo != NULL) - ((REGENV *) - ((REGINFO *)dbenv->reginfo)->primary)->panic = on ? 1 : 0; -} - /* * db_strerror -- * ANSI C strerror(3) for DB. @@ -294,11 +277,12 @@ db_strerror(error) case DB_REP_JOIN_FAILURE: return ("DB_REP_JOIN_FAILURE: Unable to join replication group"); + case DB_REP_LEASE_EXPIRED: + return + ("DB_REP_LEASE_EXPIRED: Replication leases have expired"); case DB_REP_LOCKOUT: return ("DB_REP_LOCKOUT: Waiting for replication recovery to complete"); - case DB_REP_NEWMASTER: - return ("DB_REP_NEWMASTER: A new master has declared itself"); case DB_REP_NEWSITE: return ("DB_REP_NEWSITE: A new site has entered the system"); case DB_REP_NOTPERM: @@ -343,16 +327,14 @@ __db_unknown_error(error) * be a trailing nul byte since the error buffer is nul filled * and longer than any error message. */ - static char ebuf[40]; - - (void)snprintf(ebuf, sizeof(ebuf), "Unknown error: %d", error); - return (ebuf); + (void)snprintf(DB_GLOBAL(error_buf), + sizeof(DB_GLOBAL(error_buf)), "Unknown error: %d", error); + return (DB_GLOBAL(error_buf)); } /* * __db_syserr -- - * Standard DB system-specific error routine. The same as __db_err except - * we use a system-specific function to translate errors to strings. + * Standard error routine. * * PUBLIC: void __db_syserr __P((const DB_ENV *, int, const char *, ...)) * PUBLIC: __attribute__ ((__format__ (__printf__, 3, 4))); @@ -361,20 +343,24 @@ void #ifdef STDC_HEADERS __db_syserr(const DB_ENV *dbenv, int error, const char *fmt, ...) #else -__db_syserr(dbenv, error fmt, va_alist) +__db_syserr(dbenv, error, fmt, va_alist) const DB_ENV *dbenv; int error; const char *fmt; va_dcl #endif { + /* + * The same as DB->err, except we don't default to writing to stderr + * after any output channel has been configured, and we use a system- + * specific function to translate errors to strings. + */ DB_REAL_ERR(dbenv, error, DB_ERROR_SYSTEM, 0, fmt); } /* * __db_err -- - * Standard DB error routine. The same as DB->err, except we don't write - * to stderr if no output mechanism was specified. + * Standard error routine. * * PUBLIC: void __db_err __P((const DB_ENV *, int, const char *, ...)) * PUBLIC: __attribute__ ((__format__ (__printf__, 3, 4))); @@ -383,20 +369,23 @@ void #ifdef STDC_HEADERS __db_err(const DB_ENV *dbenv, int error, const char *fmt, ...) #else -__db_err(dbenv, error fmt, va_alist) +__db_err(dbenv, error, fmt, va_alist) const DB_ENV *dbenv; int error; const char *fmt; va_dcl #endif { + /* + * The same as DB->err, except we don't default to writing to stderr + * once an output channel has been configured. + */ DB_REAL_ERR(dbenv, error, DB_ERROR_SET, 0, fmt); } /* * __db_errx -- - * Standard DB error routine. The same as DB->errx, except we don't write - * to stderr if no output mechanism was specified. + * Standard error routine. * * PUBLIC: void __db_errx __P((const DB_ENV *, const char *, ...)) * PUBLIC: __attribute__ ((__format__ (__printf__, 2, 3))); @@ -411,6 +400,10 @@ __db_errx(dbenv, fmt, va_alist) va_dcl #endif { + /* + * The same as DB->errx, except we don't default to writing to stderr + * once an output channel has been configured. + */ DB_REAL_ERR(dbenv, 0, DB_ERROR_NOT_SET, 0, fmt); } @@ -500,17 +493,34 @@ __db_msgadd(dbenv, mbp, fmt, va_alist) #endif { va_list ap; - size_t len, olen; - char buf[2048]; /* !!!: END OF THE STACK DON'T TRUST SPRINTF. */ #ifdef STDC_HEADERS va_start(ap, fmt); #else va_start(ap); #endif - len = (size_t)vsnprintf(buf, sizeof(buf), fmt, ap); - + __db_msgadd_ap(dbenv, mbp, fmt, ap); va_end(ap); +} + +/* + * __db_msgadd_ap -- + * Aggregate a set of strings into a buffer for the callback API. + * + * PUBLIC: void __db_msgadd_ap + * PUBLIC: __P((DB_ENV *, DB_MSGBUF *, const char *, va_list)); + */ +void +__db_msgadd_ap(dbenv, mbp, fmt, ap) + DB_ENV *dbenv; + DB_MSGBUF *mbp; + const char *fmt; + va_list ap; +{ + size_t len, olen; + char buf[2048]; /* !!!: END OF THE STACK DON'T TRUST SPRINTF. */ + + len = (size_t)vsnprintf(buf, sizeof(buf), fmt, ap); /* * There's a heap buffer in the DB_ENV handle we use to aggregate the @@ -600,7 +610,7 @@ __db_unknown_flag(dbenv, routine, flag) __db_errx(dbenv, "%s: Unknown flag: %#x", routine, (u_int)flag); #ifdef DIAGNOSTIC - abort(); + __os_abort(); /* NOTREACHED */ #endif return (EINVAL); @@ -622,7 +632,7 @@ __db_unknown_type(dbenv, routine, type) routine, __db_dbtype_to_string(type)); #ifdef DIAGNOSTIC - abort(); + __os_abort(); /* NOTREACHED */ #endif return (EINVAL); @@ -641,7 +651,7 @@ __db_unknown_path(dbenv, routine) __db_errx(dbenv, "%s: Unexpected code path error", routine); #ifdef DIAGNOSTIC - abort(); + __os_abort(); /* NOTREACHED */ #endif return (EINVAL); @@ -651,13 +661,13 @@ __db_unknown_path(dbenv, routine) * __db_check_txn -- * Check for common transaction errors. * - * PUBLIC: int __db_check_txn __P((DB *, DB_TXN *, u_int32_t, int)); + * PUBLIC: int __db_check_txn __P((DB *, DB_TXN *, DB_LOCKER *, int)); */ int -__db_check_txn(dbp, txn, assoc_lid, read_op) +__db_check_txn(dbp, txn, assoc_locker, read_op) DB *dbp; DB_TXN *txn; - u_int32_t assoc_lid; + DB_LOCKER *assoc_locker; int read_op; { DB_ENV *dbenv; @@ -683,7 +693,8 @@ __db_check_txn(dbp, txn, assoc_lid, read_op) * a transaction handle for a non-transactional database */ if (txn == NULL || F_ISSET(txn, TXN_PRIVATE)) { - if (dbp->cur_lid >= TXN_MINIMUM) + if (dbp->cur_locker != NULL && + dbp->cur_locker->id >= TXN_MINIMUM) goto open_err; if (!read_op && F_ISSET(dbp, DB_AM_TXN)) { @@ -713,10 +724,12 @@ __db_check_txn(dbp, txn, assoc_lid, read_op) } if (F_ISSET(txn, TXN_DEADLOCK)) - return (__db_txn_deadlock_err(dbenv)); - if (dbp->cur_lid >= TXN_MINIMUM && dbp->cur_lid != txn->txnid) { + return (__db_txn_deadlock_err(dbenv, txn)); + if (dbp->cur_locker != NULL && + dbp->cur_locker->id >= TXN_MINIMUM && + dbp->cur_locker->id != txn->txnid) { if ((ret = __lock_locker_is_parent(dbenv, - dbp->cur_lid, txn->txnid, &isp)) != 0) + dbp->cur_locker, txn->locker, &isp)) != 0) return (ret); if (!isp) goto open_err; @@ -724,7 +737,7 @@ __db_check_txn(dbp, txn, assoc_lid, read_op) } /* - * If dbp->associate_lid is not DB_LOCK_INVALIDID, that means we're in + * If dbp->associate_locker is not NULL, that means we're in * the middle of a DB->associate with DB_CREATE (i.e., a secondary index * creation). * @@ -738,8 +751,8 @@ __db_check_txn(dbp, txn, assoc_lid, read_op) * the secondary in another transaction (presumably by updating the * primary). */ - if (!read_op && dbp->associate_lid != DB_LOCK_INVALIDID && - txn != NULL && dbp->associate_lid != assoc_lid) { + if (!read_op && dbp->associate_locker != NULL && + txn != NULL && dbp->associate_locker != assoc_locker) { __db_errx(dbenv, "Operation forbidden while secondary index is being created"); return (EINVAL); @@ -765,13 +778,22 @@ open_err: * __db_txn_deadlock_err -- * Transaction has allready been deadlocked. * - * PUBLIC: int __db_txn_deadlock_err __P((DB_ENV *)); + * PUBLIC: int __db_txn_deadlock_err __P((DB_ENV *, DB_TXN *)); */ int -__db_txn_deadlock_err(dbenv) +__db_txn_deadlock_err(dbenv, txn) DB_ENV *dbenv; + DB_TXN *txn; { - __db_errx(dbenv, "Previous deadlock return not resolved"); + const char *name; + + name = NULL; + (void)__txn_get_name(txn, &name); + + __db_errx(dbenv, + "%s%sprevious transaction deadlock return not resolved", + name == NULL ? "" : name, name == NULL ? "" : ": "); + return (EINVAL); } @@ -852,7 +874,7 @@ __dbc_logging(dbc) #ifndef DEBUG_ROP /* - * Only check when DEBUG_ROP is not configured. People often do + * Only check when DEBUG_ROP is not configured. People often do * non-transactional reads, and debug_rop is going to write * a log record. */ @@ -862,12 +884,10 @@ __dbc_logging(dbc) rep = db_rep->region; /* - * If we're a client and not running recovery or internally, error. + * If we're a client and not running recovery or non durably, error. */ - if (IS_REP_CLIENT(dbenv) && - !F_ISSET(dbc->dbp, DB_AM_CL_WRITER) && - !F_ISSET(dbc->dbp, DB_AM_NOT_DURABLE)) { - __db_errx(dbenv, "Dbc_logging: Client update"); + if (IS_REP_CLIENT(dbenv) && !F_ISSET(dbc->dbp, DB_AM_NOT_DURABLE)) { + __db_errx(dbenv, "dbc_logging: Client update"); goto err; } @@ -884,12 +904,11 @@ __dbc_logging(dbc) #endif if (0) { -err: __db_errx(dbenv, "Rep: flags 0x%lx msg_th %lu, lockout_th %d", - (u_long)rep->flags, (u_long)rep->msg_th, rep->lockout_th); - __db_errx(dbenv, "Rep: handle %lu, opcnt %lu, in_rec %d", - (u_long)rep->handle_cnt, (u_long)rep->op_cnt, - rep->in_recovery); - abort(); +err: __db_errx(dbenv, "Rep: flags 0x%lx msg_th %lu", + (u_long)rep->flags, (u_long)rep->msg_th); + __db_errx(dbenv, "Rep: handle %lu, opcnt %lu", + (u_long)rep->handle_cnt, (u_long)rep->op_cnt); + __os_abort(); /* NOTREACHED */ } } diff --git a/db/common/db_getlong.c b/db/common/db_getlong.c index 7285c50a7..3cc0a0f57 100644 --- a/db/common/db_getlong.c +++ b/db/common/db_getlong.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_getlong.c,v 12.5 2006/08/24 14:45:11 bostic Exp $ + * $Id: db_getlong.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/db_idspace.c b/db/common/db_idspace.c index 777ced7f1..44575073e 100644 --- a/db/common/db_idspace.c +++ b/db/common/db_idspace.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: db_idspace.c,v 12.4 2006/08/24 14:45:11 bostic Exp $ + * $Id: db_idspace.c,v 12.6 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/db_log2.c b/db/common/db_log2.c index 9adc5d9a5..32bdad02f 100644 --- a/db/common/db_log2.c +++ b/db/common/db_log2.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1995, 1996 @@ -35,7 +34,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_log2.c,v 12.4 2006/08/24 14:45:11 bostic Exp $ + * $Id: db_log2.c,v 12.6 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/db_shash.c b/db/common/db_shash.c new file mode 100644 index 000000000..d3df58a63 --- /dev/null +++ b/db/common/db_shash.c @@ -0,0 +1,104 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_shash.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ + */ + +#include "db_config.h" + +#include "db_int.h" + +/* + * __db_tablesize -- + * Choose a size for the hash table. + * + * PUBLIC: u_int32_t __db_tablesize __P((u_int32_t)); + */ +u_int32_t +__db_tablesize(n_buckets) + u_int32_t n_buckets; +{ + /* + * We try to be clever about how big we make the hash tables. Use a + * prime number close to the "suggested" number of elements that will + * be in the hash table. Use 32 as the minimum hash table size. + * + * Ref: Sedgewick, Algorithms in C, "Hash Functions" + * + * Up to ~250,000 buckets, we use powers of 2. After that, we slow + * the rate of increase by half. For each choice, we then use a + * nearby prime number as the hash value. + * + * If a terabyte is the maximum cache we'll see, and we assume there + * are 10 1K buckets on each hash chain, then 107374182 is the maximum + * number of buckets we'll ever need. + * + * We don't use the obvious static data structure because some C + * compilers (and I use the term loosely), can't handle them. + */ +#define HASH_SIZE(power, prime) { \ + if ((power) >= n_buckets) \ + return (prime); \ +} + HASH_SIZE(32, 37); /* 2^5 */ + HASH_SIZE(64, 67); /* 2^6 */ + HASH_SIZE(128, 131); /* 2^7 */ + HASH_SIZE(256, 257); /* 2^8 */ + HASH_SIZE(512, 521); /* 2^9 */ + HASH_SIZE(1024, 1031); /* 2^10 */ + HASH_SIZE(2048, 2053); /* 2^11 */ + HASH_SIZE(4096, 4099); /* 2^12 */ + HASH_SIZE(8192, 8191); /* 2^13 */ + HASH_SIZE(16384, 16381); /* 2^14 */ + HASH_SIZE(32768, 32771); /* 2^15 */ + HASH_SIZE(65536, 65537); /* 2^16 */ + HASH_SIZE(131072, 131071); /* 2^17 */ + HASH_SIZE(262144, 262147); /* 2^18 */ + HASH_SIZE(393216, 393209); /* 2^18 + 2^18/2 */ + HASH_SIZE(524288, 524287); /* 2^19 */ + HASH_SIZE(786432, 786431); /* 2^19 + 2^19/2 */ + HASH_SIZE(1048576, 1048573); /* 2^20 */ + HASH_SIZE(1572864, 1572869); /* 2^20 + 2^20/2 */ + HASH_SIZE(2097152, 2097169); /* 2^21 */ + HASH_SIZE(3145728, 3145721); /* 2^21 + 2^21/2 */ + HASH_SIZE(4194304, 4194301); /* 2^22 */ + HASH_SIZE(6291456, 6291449); /* 2^22 + 2^22/2 */ + HASH_SIZE(8388608, 8388617); /* 2^23 */ + HASH_SIZE(12582912, 12582917); /* 2^23 + 2^23/2 */ + HASH_SIZE(16777216, 16777213); /* 2^24 */ + HASH_SIZE(25165824, 25165813); /* 2^24 + 2^24/2 */ + HASH_SIZE(33554432, 33554393); /* 2^25 */ + HASH_SIZE(50331648, 50331653); /* 2^25 + 2^25/2 */ + HASH_SIZE(67108864, 67108859); /* 2^26 */ + HASH_SIZE(100663296, 100663291); /* 2^26 + 2^26/2 */ + HASH_SIZE(134217728, 134217757); /* 2^27 */ + HASH_SIZE(201326592, 201326611); /* 2^27 + 2^27/2 */ + HASH_SIZE(268435456, 268435459); /* 2^28 */ + HASH_SIZE(402653184, 402653189); /* 2^28 + 2^28/2 */ + HASH_SIZE(536870912, 536870909); /* 2^29 */ + HASH_SIZE(805306368, 805306357); /* 2^29 + 2^29/2 */ + HASH_SIZE(1073741824, 1073741827); /* 2^30 */ + return (1073741827); +} + +/* + * __db_hashinit -- + * Initialize a hash table that resides in shared memory. + * + * PUBLIC: void __db_hashinit __P((void *, u_int32_t)); + */ +void +__db_hashinit(begin, nelements) + void *begin; + u_int32_t nelements; +{ + u_int32_t i; + SH_TAILQ_HEAD(hash_head) *headp; + + headp = (struct hash_head *)begin; + + for (i = 0; i < nelements; i++, headp++) + SH_TAILQ_INIT(headp); +} diff --git a/db/common/mkpath.c b/db/common/mkpath.c index 3f2cbf73b..de6712762 100644 --- a/db/common/mkpath.c +++ b/db/common/mkpath.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: mkpath.c,v 12.16 2006/08/24 14:45:11 bostic Exp $ + * $Id: mkpath.c,v 12.18 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/util_arg.c b/db/common/util_arg.c index e7cb68cd8..fc9caaac2 100644 --- a/db/common/util_arg.c +++ b/db/common/util_arg.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: util_arg.c,v 12.4 2006/08/24 14:45:11 bostic Exp $ + * $Id: util_arg.c,v 12.6 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/util_cache.c b/db/common/util_cache.c index b9098cb1e..c101c4064 100644 --- a/db/common/util_cache.c +++ b/db/common/util_cache.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: util_cache.c,v 12.4 2006/08/24 14:45:11 bostic Exp $ + * $Id: util_cache.c,v 12.6 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/util_log.c b/db/common/util_log.c index f1888b8ac..384ef37b4 100644 --- a/db/common/util_log.c +++ b/db/common/util_log.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: util_log.c,v 12.11 2006/08/24 14:45:11 bostic Exp $ + * $Id: util_log.c,v 12.13 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/common/util_sig.c b/db/common/util_sig.c index 821253b77..10a154b05 100644 --- a/db/common/util_sig.c +++ b/db/common/util_sig.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: util_sig.c,v 12.5 2006/08/24 14:45:11 bostic Exp $ + * $Id: util_sig.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/crypto/aes_method.c b/db/crypto/aes_method.c index cd4370b3a..bc0d191ff 100644 --- a/db/crypto/aes_method.c +++ b/db/crypto/aes_method.c @@ -1,13 +1,12 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * * Some parts of this code originally written by Adam Stubblefield, * -- astubble@rice.edu. * - * $Id: aes_method.c,v 12.5 2006/08/24 14:45:12 bostic Exp $ + * $Id: aes_method.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" diff --git a/db/crypto/crypto.c b/db/crypto/crypto.c index 72a8444e0..d39f60c7c 100644 --- a/db/crypto/crypto.c +++ b/db/crypto/crypto.c @@ -1,13 +1,12 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * * Some parts of this code originally written by Adam Stubblefield * -- astubble@rice.edu * - * $Id: crypto.c,v 12.10 2006/08/24 14:45:12 bostic Exp $ + * $Id: crypto.c,v 12.20 2007/05/17 15:14:55 bostic Exp $ */ #include "db_config.h" @@ -53,13 +52,12 @@ __crypto_region_init(dbenv) * information that contains the passwd. After we copy the * passwd, we smash and free the one in the dbenv. */ - if ((ret = - __db_shalloc(infop, sizeof(CIPHER), 0, &cipher)) != 0) + if ((ret = __env_alloc(infop, sizeof(CIPHER), &cipher)) != 0) return (ret); memset(cipher, 0, sizeof(*cipher)); - if ((ret = __db_shalloc( - infop, dbenv->passwd_len, 0, &sh_passwd)) != 0) { - __db_shalloc_free(infop, cipher); + if ((ret = + __env_alloc(infop, dbenv->passwd_len, &sh_passwd)) != 0) { + __env_alloc_free(infop, cipher); return (ret); } memset(sh_passwd, 0, dbenv->passwd_len); @@ -113,53 +111,64 @@ __crypto_region_init(dbenv) } /* - * __crypto_dbenv_close -- + * __crypto_env_close -- * Crypto-specific destruction of DB_ENV structure. * - * PUBLIC: int __crypto_dbenv_close __P((DB_ENV *)); + * PUBLIC: int __crypto_env_close __P((DB_ENV *)); */ int -__crypto_dbenv_close(dbenv) +__crypto_env_close(dbenv) DB_ENV *dbenv; { DB_CIPHER *db_cipher; int ret; - ret = 0; - db_cipher = dbenv->crypto_handle; if (dbenv->passwd != NULL) { memset(dbenv->passwd, 0xff, dbenv->passwd_len-1); __os_free(dbenv, dbenv->passwd); dbenv->passwd = NULL; } + if (!CRYPTO_ON(dbenv)) return (0); + + ret = 0; + db_cipher = dbenv->crypto_handle; if (!F_ISSET(db_cipher, CIPHER_ANY)) ret = db_cipher->close(dbenv, db_cipher->data); __os_free(dbenv, db_cipher); + + dbenv->crypto_handle = NULL; return (ret); } /* - * __crypto_region_destroy -- - * Destroy any system resources allocated in the primary region. + * __crypto_env_refresh -- + * Clean up after the crpto system on a close or failed open. * - * PUBLIC: int __crypto_region_destroy __P((DB_ENV *)); + * PUBLIC: int __crypto_env_refresh __P((DB_ENV *)); */ int -__crypto_region_destroy(dbenv) +__crypto_env_refresh(dbenv) DB_ENV *dbenv; { CIPHER *cipher; REGENV *renv; REGINFO *infop; - infop = dbenv->reginfo; - renv = infop->primary; - if (renv->cipher_off != INVALID_ROFF) { - cipher = R_ADDR(infop, renv->cipher_off); - __db_shalloc_free(infop, R_ADDR(infop, cipher->passwd)); - __db_shalloc_free(infop, cipher); + /* + * If a private region, return the memory to the heap. Not needed for + * filesystem-backed or system shared memory regions, that memory isn't + * owned by any particular process. + */ + if (F_ISSET(dbenv, DB_ENV_PRIVATE)) { + infop = dbenv->reginfo; + renv = infop->primary; + if (renv->cipher_off != INVALID_ROFF) { + cipher = R_ADDR(infop, renv->cipher_off); + __env_alloc_free(infop, R_ADDR(infop, cipher->passwd)); + __env_alloc_free(infop, cipher); + } } return (0); } @@ -192,10 +201,10 @@ __crypto_algsetup(dbenv, db_cipher, alg, do_init) ret = __aes_setup(dbenv, db_cipher); break; default: - __db_panic(dbenv, EINVAL); - /* NOTREACHED */ + ret = __db_panic(dbenv, EINVAL); + break; } - if (do_init) + if (ret == 0 && do_init) ret = db_cipher->init(dbenv, db_cipher); return (ret); } @@ -248,8 +257,7 @@ __crypto_decrypt_meta(dbenv, dbp, mbuf, do_metachk) * since been removed). * * Ugly check to jump out if this format is older than what we support. - * It assumes no encrypted page will have an unencrypted magic number, - * but that seems relatively safe. [#10920] + * This works because we do not encrypt the page header. */ if (meta->magic == DB_HASHMAGIC && meta->version <= 5) return (0); @@ -376,9 +384,7 @@ __crypto_set_passwd(dbenv_src, dbenv_dest) REGENV *renv; REGINFO *infop; char *sh_passwd; - int ret; - ret = 0; infop = dbenv_src->reginfo; renv = infop->primary; diff --git a/db/crypto/crypto.html b/db/crypto/crypto.html index 129a7f4f3..1a2dc0c15 100644 --- a/db/crypto/crypto.html +++ b/db/crypto/crypto.html @@ -413,7 +413,7 @@ in the log buffer.  Records in that buffer will be encrypted, so decryption will occur no matter whether we are returning records from the buffer or if we are returning log records directly from the disk. Current checksum checking is done in -__log_get_c_int.  Decryption will be done +__logc_get_int.  Decryption will be done after the checksum is checked.

There are currently two nasty issues with encrypted log records.  The first is that __txn_force_abort overwrites a commit record in diff --git a/db/crypto/mersenne/mt19937db.c b/db/crypto/mersenne/mt19937db.c index 6cd259932..aa20928a2 100644 --- a/db/crypto/mersenne/mt19937db.c +++ b/db/crypto/mersenne/mt19937db.c @@ -1,5 +1,5 @@ /* - * $Id: mt19937db.c,v 12.4 2006/09/08 20:32:02 bostic Exp $ + * $Id: mt19937db.c,v 12.6 2007/04/18 18:16:04 bostic Exp $ */ #include "db_config.h" @@ -138,10 +138,11 @@ static unsigned long __db_genrand(dbenv) DB_ENV *dbenv; { + db_timespec ts; unsigned long y; static unsigned long mag01[2]={0x0, MATRIX_A}; /* mag01[x] = x * MATRIX_A for x=0,1 */ - u_int32_t secs, seed, usecs; + u_int32_t seed; /* * We are called with DB_ENV->mtx_mt locked. @@ -155,11 +156,11 @@ __db_genrand(dbenv) * function will return 4 bytes if we don't send in a key. */ do { - __os_clock(dbenv, &secs, &usecs); - __db_chksum(NULL, (u_int8_t *)&secs, sizeof(secs), NULL, - (u_int8_t *)&seed); + __os_gettime(dbenv, &ts); + __db_chksum(NULL, (u_int8_t *)&ts.tv_sec, + sizeof(ts.tv_sec), NULL, (u_int8_t *)&seed); } while (seed == 0); - __db_sgenrand((long)seed, dbenv->mt, &dbenv->mti); + __db_sgenrand((unsigned long)seed, dbenv->mt, &dbenv->mti); } for (kk=0;kk -#include // needed for set_error_stream -#include - -#include "db_cxx.h" -#include "cxx_int.h" - -#include "db_int.h" -#include "common_ext.h" - -// The reason for a static variable is that some structures -// (like Dbts) have no connection to any Db or DbEnv, so when -// errors occur in their methods, we must have some reasonable -// way to determine whether to throw or return errors. -// -// This variable is taken from flags whenever a DbEnv is constructed. -// Normally there is only one DbEnv per program, and even if not, -// there is typically a single policy of throwing or returning. -// -static int last_known_error_policy = ON_ERROR_UNKNOWN; - -//////////////////////////////////////////////////////////////////////// -// // -// DbEnv // -// // -//////////////////////////////////////////////////////////////////////// - -ostream *DbEnv::error_stream_ = 0; - -// _destroy_check is called when there is a user error in a -// destructor, specifically when close has not been called for an -// object (even if it was never opened). If the DbEnv is being -// destroyed we cannot always use DbEnv::error_stream_, so we'll -// use cerr in that case. -// -void DbEnv::_destroy_check(const char *str, int isDbEnv) -{ - ostream *out; - - out = error_stream_; - if (out == NULL || isDbEnv == 1) - out = &cerr; - - (*out) << "DbEnv::_destroy_check: open " << str << " object destroyed\n"; -} - -// A truism for the DbEnv object is that there is a valid -// DB_ENV handle from the constructor until close(). -// After the close, the DB_ENV handle is invalid and -// no operations are permitted on the DbEnv (other than -// destructor). Leaving the DbEnv handle open and not -// doing a close is generally considered an error. -// -// We used to allow DbEnv objects to be closed and reopened. -// This implied always keeping a valid DB_ENV object, and -// coordinating the open objects between Db/DbEnv turned -// out to be overly complicated. Now we do not allow this. - -DbEnv::DbEnv(u_int32_t flags) -: imp_(0) -, construct_error_(0) -, construct_flags_(flags) -, tx_recover_callback_(0) -, paniccall_callback_(0) -{ - int err; - - COMPQUIET(err, 0); - if ((err = initialize(0)) != 0) - DB_ERROR("DbEnv::DbEnv", err, error_policy()); -} - -DbEnv::DbEnv(DB_ENV *env, u_int32_t flags) -: imp_(0) -, construct_error_(0) -, construct_flags_(flags) -, tx_recover_callback_(0) -, paniccall_callback_(0) -{ - int err; - - COMPQUIET(err, 0); - if ((err = initialize(env)) != 0) - DB_ERROR("DbEnv::DbEnv", err, error_policy()); -} - -// Note: if the user has not closed, we call _destroy_check -// to warn against this non-safe programming practice, -// and call close anyway. -// -DbEnv::~DbEnv() -{ - DB_ENV *env = unwrap(this); - - if (env != NULL) { - _destroy_check("DbEnv", 1); - (void)env->close(env, 0); - - // extra safety - cleanup(); - } -} - -// called by Db destructor when the DbEnv is owned by DB. -void DbEnv::cleanup() -{ - DB_ENV *env = unwrap(this); - - if (env != NULL) { - env->cj_internal = 0; - imp_ = 0; - } -} - -int DbEnv::close(u_int32_t flags) -{ - DB_ENV *env = unwrap(this); - int err, init_err; - - COMPQUIET(init_err, 0); - - // after a close (no matter if success or failure), - // the underlying DB_ENV object must not be accessed, - // so we clean up in advance. - // - cleanup(); - - // It's safe to throw an error after the close, - // since our error mechanism does not peer into - // the DB* structures. - // - if ((err = env->close(env, flags)) != 0) { - DB_ERROR("DbEnv::close", err, error_policy()); - } - return (err); -} - -void DbEnv::err(int error, const char *format, ...) -{ - va_list args; - DB_ENV *env = unwrap(this); - - va_start(args, format); - __db_real_err(env, error, 1, 1, format, args); - va_end(args); -} - -void DbEnv::errx(const char *format, ...) -{ - va_list args; - DB_ENV *env = unwrap(this); - - va_start(args, format); - __db_real_err(env, 0, 0, 1, format, args); - va_end(args); -} - -// used internally during constructor -// to associate an existing DB_ENV with this DbEnv, -// or create a new one. If there is an error, -// construct_error_ is set; this is examined during open. -// -int DbEnv::initialize(DB_ENV *env) -{ - int err; - - last_known_error_policy = error_policy(); - - if (env == 0) { - // Create a new DB_ENV environment. - if ((err = ::db_env_create(&env, - construct_flags_ & ~DB_CXX_NO_EXCEPTIONS)) != 0) { - construct_error_ = err; - return (err); - } - } - imp_ = wrap(env); - env->cj_internal = this; // for DB_ENV* to DbEnv* conversion - return (0); -} - -// Return a tristate value corresponding to whether we should -// throw exceptions on errors: -// ON_ERROR_RETURN -// ON_ERROR_THROW -// ON_ERROR_UNKNOWN -// -int DbEnv::error_policy() -{ - if ((construct_flags_ & DB_CXX_NO_EXCEPTIONS) != 0) { - return (ON_ERROR_RETURN); - } - else { - return (ON_ERROR_THROW); - } -} - -// If an error occurred during the constructor, report it now. -// Otherwise, call the underlying DB->open method. -// -int DbEnv::open(const char *db_home, u_int32_t flags, int mode) -{ - DB_ENV *env = unwrap(this); - int err; - - if ((err = construct_error_) != 0) - DB_ERROR("Db::open", err, error_policy()); - else if ((err = env->open(env, db_home, flags, mode)) != 0) - DB_ERROR("DbEnv::open", err, error_policy()); - - return (err); -} - -int DbEnv::remove(const char *db_home, u_int32_t flags) -{ - DB_ENV *env; - int ret; - - env = unwrap(this); - - // after a remove (no matter if success or failure), - // the underlying DB_ENV object must not be accessed, - // so we clean up in advance. - // - cleanup(); - - if ((ret = env->remove(env, db_home, flags)) != 0) - DB_ERROR("DbEnv::remove", ret, error_policy()); - - return (ret); -} - -// Report an error associated with the DbEnv. -// error_policy is one of: -// ON_ERROR_THROW throw an error -// ON_ERROR_RETURN do nothing here, the caller will return an error -// ON_ERROR_UNKNOWN defer the policy to policy saved in DbEnv::DbEnv -// -void DbEnv::runtime_error(const char *caller, int error, int error_policy) -{ - if (error_policy == ON_ERROR_UNKNOWN) - error_policy = last_known_error_policy; - if (error_policy == ON_ERROR_THROW) { - // Creating and throwing the object in two separate - // statements seems to be necessary for HP compilers. - DbException except(caller, error); - throw except; - } -} - -// static method -char *DbEnv::strerror(int error) -{ - return (db_strerror(error)); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -void _stream_error_function_c(const char *prefix, char *message) -{ - DbEnv::_stream_error_function(prefix, message); -} - -void DbEnv::_stream_error_function(const char *prefix, char *message) -{ - // HP compilers need the extra casts, we don't know why. - if (error_stream_) { - if (prefix) { - (*error_stream_) << prefix << (const char *)": "; - } - if (message) { - (*error_stream_) << (const char *)message; - } - (*error_stream_) << (const char *)"\n"; - } -} - -// Note: This actually behaves a bit like a static function, -// since DB_ENV.db_errcall has no information about which -// db_env triggered the call. A user that has multiple DB_ENVs -// will simply not be able to have different streams for each one. -// -void DbEnv::set_error_stream(ostream *stream) -{ - DB_ENV *dbenv = unwrap(this); - - error_stream_ = stream; - dbenv->set_errcall(dbenv, (stream == 0) ? 0 : - _stream_error_function_c); -} - -// static method -char *DbEnv::version(int *major, int *minor, int *patch) -{ - return (db_version(major, minor, patch)); -} - -// This is a variant of the DB_WO_ACCESS macro to define a simple set_ -// method calling the underlying C method, but unlike a simple -// set method, it may return an error or raise an exception. -// Note this macro expects that input _argspec is an argument -// list element (e.g. "char *arg") defined in terms of "arg". -// -#define DB_DBENV_ACCESS(_name, _argspec) \ - \ -int DbEnv::set_##_name(_argspec) \ -{ \ - int ret; \ - DB_ENV *dbenv = unwrap(this); \ - \ - if ((ret = (*(dbenv->set_##_name))(dbenv, arg)) != 0) {\ - DB_ERROR("DbEnv::set_" # _name, ret, error_policy()); \ - } \ - return (ret); \ -} - -#define DB_DBENV_ACCESS_NORET(_name, _argspec) \ - \ -void DbEnv::set_##_name(_argspec) \ -{ \ - DB_ENV *dbenv = unwrap(this); \ - \ - (*(dbenv->set_##_name))(dbenv, arg); \ - return; \ -} - -DB_DBENV_ACCESS_NORET(errfile, FILE *arg) -DB_DBENV_ACCESS_NORET(errpfx, const char *arg) - -// We keep these alphabetical by field name, -// for comparison with Java's list. -// -DB_DBENV_ACCESS(data_dir, const char *arg) -DB_DBENV_ACCESS(lg_bsize, u_int32_t arg) -DB_DBENV_ACCESS(lg_dir, const char *arg) -DB_DBENV_ACCESS(lg_max, u_int32_t arg) -DB_DBENV_ACCESS(lk_detect, u_int32_t arg) -DB_DBENV_ACCESS(lk_max, u_int32_t arg) -DB_DBENV_ACCESS(lk_max_lockers, u_int32_t arg) -DB_DBENV_ACCESS(lk_max_locks, u_int32_t arg) -DB_DBENV_ACCESS(lk_max_objects, u_int32_t arg) -DB_DBENV_ACCESS(mp_mmapsize, size_t arg) -DB_DBENV_ACCESS(mutexlocks, int arg) -DB_DBENV_ACCESS(tmp_dir, const char *arg) -DB_DBENV_ACCESS(tx_max, u_int32_t arg) - -// Here are the set methods that don't fit the above mold. -// -extern "C" { - typedef void (*db_errcall_fcn_type) - (const char *, char *); -}; - -void DbEnv::set_errcall(void (*arg)(const char *, char *)) -{ - DB_ENV *dbenv = unwrap(this); - - // XXX - // We are casting from a function ptr declared with C++ - // linkage to one (same arg types) declared with C - // linkage. It's hard to imagine a pair of C/C++ - // compilers from the same vendor for which this - // won't work. Unfortunately, we can't use a - // intercept function like the others since the - // function does not have a (DbEnv*) as one of - // the args. If this causes trouble, we can pull - // the same trick we use in Java, namely stuffing - // a (DbEnv*) pointer into the prefix. We're - // avoiding this for the moment because it obfuscates. - // - (*(dbenv->set_errcall))(dbenv, (db_errcall_fcn_type)arg); -} - -int DbEnv::set_cachesize(u_int32_t gbytes, u_int32_t bytes, int ncache) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = - (*(dbenv->set_cachesize))(dbenv, gbytes, bytes, ncache)) != 0) - DB_ERROR("DbEnv::set_cachesize", ret, error_policy()); - - return (ret); -} - -int DbEnv::set_flags(u_int32_t flags, int onoff) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = (dbenv->set_flags)(dbenv, flags, onoff)) != 0) - DB_ERROR("DbEnv::set_flags", ret, error_policy()); - - return (ret); -} - -int DbEnv::set_lk_conflicts(u_int8_t *lk_conflicts, int lk_max) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = (*(dbenv->set_lk_conflicts)) - (dbenv, lk_conflicts, lk_max)) != 0) - DB_ERROR("DbEnv::set_lk_conflicts", ret, error_policy()); - - return (ret); -} - -// static method -int DbEnv::set_pageyield(int arg) -{ - int ret; - - if ((ret = db_env_set_pageyield(arg)) != 0) - DB_ERROR("DbEnv::set_pageyield", ret, last_known_error_policy); - - return (ret); -} - -// static method -int DbEnv::set_panicstate(int arg) -{ - int ret; - - if ((ret = db_env_set_panicstate(arg)) != 0) - DB_ERROR("DbEnv::set_panicstate", ret, last_known_error_policy); - - return (ret); -} - -// static method -int DbEnv::set_region_init(int arg) -{ - int ret; - - if ((ret = db_env_set_region_init(arg)) != 0) - DB_ERROR("DbEnv::set_region_init", ret, last_known_error_policy); - - return (ret); -} - -int DbEnv::set_server(char *host, long tsec, long ssec, u_int32_t flags) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = dbenv->set_server(dbenv, host, tsec, ssec, flags)) != 0) - DB_ERROR("DbEnv::set_server", ret, error_policy()); - - return (ret); -} - -int DbEnv::set_shm_key(long shm_key) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = dbenv->set_shm_key(dbenv, shm_key)) != 0) - DB_ERROR("DbEnv::set_shm_key", ret, error_policy()); - - return (ret); -} - -// static method -int DbEnv::set_tas_spins(u_int32_t arg) -{ - int ret; - - if ((ret = db_env_set_tas_spins(arg)) != 0) - DB_ERROR("DbEnv::set_tas_spins", ret, last_known_error_policy); - - return (ret); -} - -int DbEnv::set_verbose(u_int32_t which, int onoff) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = (*(dbenv->set_verbose))(dbenv, which, onoff)) != 0) - DB_ERROR("DbEnv::set_verbose", ret, error_policy()); - - return (ret); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -int _tx_recover_intercept_c(DB_ENV *env, DBT *dbt, - DB_LSN *lsn, db_recops op) -{ - return (DbEnv::_tx_recover_intercept(env, dbt, lsn, op)); -} - -int DbEnv::_tx_recover_intercept(DB_ENV *env, DBT *dbt, - DB_LSN *lsn, db_recops op) -{ - if (env == 0) { - DB_ERROR("DbEnv::tx_recover_callback", EINVAL, ON_ERROR_UNKNOWN); - return (EINVAL); - } - DbEnv *cxxenv = (DbEnv *)env->cj_internal; - if (cxxenv == 0) { - DB_ERROR("DbEnv::tx_recover_callback", EINVAL, ON_ERROR_UNKNOWN); - return (EINVAL); - } - if (cxxenv->tx_recover_callback_ == 0) { - DB_ERROR("DbEnv::tx_recover_callback", EINVAL, cxxenv->error_policy()); - return (EINVAL); - } - Dbt *cxxdbt = (Dbt *)dbt; - DbLsn *cxxlsn = (DbLsn *)lsn; - return ((*cxxenv->tx_recover_callback_)(cxxenv, cxxdbt, cxxlsn, op)); -} - -int DbEnv::set_tx_recover - (int (*arg)(DbEnv *, Dbt *, DbLsn *, db_recops)) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - tx_recover_callback_ = arg; - if ((ret = - (*(dbenv->set_tx_recover))(dbenv, _tx_recover_intercept_c)) != 0) - DB_ERROR("DbEnv::set_tx_recover", ret, error_policy()); - - return (ret); -} - -int DbEnv::set_tx_timestamp(time_t *timestamp) -{ - int ret; - DB_ENV *dbenv = unwrap(this); - - if ((ret = dbenv->set_tx_timestamp(dbenv, timestamp)) != 0) - DB_ERROR("DbEnv::set_tx_timestamp", ret, error_policy()); - - return (ret); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -void _paniccall_intercept_c(DB_ENV *env, int errval) -{ - DbEnv::_paniccall_intercept(env, errval); -} - -void DbEnv::_paniccall_intercept(DB_ENV *env, int errval) -{ - if (env == 0) { - DB_ERROR("DbEnv::paniccall_callback", EINVAL, ON_ERROR_UNKNOWN); - } - DbEnv *cxxenv = (DbEnv *)env->cj_internal; - if (cxxenv == 0) { - DB_ERROR("DbEnv::paniccall_callback", EINVAL, ON_ERROR_UNKNOWN); - } - if (cxxenv->paniccall_callback_ == 0) { - DB_ERROR("DbEnv::paniccall_callback", EINVAL, cxxenv->error_policy()); - } - (*cxxenv->paniccall_callback_)(cxxenv, errval); -} - -int DbEnv::set_paniccall(void (*arg)(DbEnv *, int)) -{ - DB_ENV *dbenv = unwrap(this); - - paniccall_callback_ = arg; - - return ((*(dbenv->set_paniccall))(dbenv, _paniccall_intercept_c)); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -int _recovery_init_intercept_c(DB_ENV *env) -{ - return (DbEnv::_recovery_init_intercept(env)); -} - -int DbEnv::_recovery_init_intercept(DB_ENV *env) -{ - if (env == 0) { - DB_ERROR("DbEnv::recovery_init_callback", EINVAL, - ON_ERROR_UNKNOWN); - } - DbEnv *cxxenv = (DbEnv *)env->cj_internal; - if (cxxenv == 0) { - DB_ERROR("DbEnv::recovery_init_callback", EINVAL, - ON_ERROR_UNKNOWN); - } - if (cxxenv->recovery_init_callback_ == 0) { - DB_ERROR("DbEnv::recovery_init_callback", EINVAL, - cxxenv->error_policy()); - } - return ((*cxxenv->recovery_init_callback_)(cxxenv)); -} - -int DbEnv::set_recovery_init(int (*arg)(DbEnv *)) -{ - DB_ENV *dbenv = unwrap(this); - - recovery_init_callback_ = arg; - - return ((*(dbenv->set_recovery_init))(dbenv, _recovery_init_intercept_c)); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -void _feedback_intercept_c(DB_ENV *env, int opcode, int pct) -{ - DbEnv::_feedback_intercept(env, opcode, pct); -} - -void DbEnv::_feedback_intercept(DB_ENV *env, int opcode, int pct) -{ - if (env == 0) { - DB_ERROR("DbEnv::feedback_callback", EINVAL, ON_ERROR_UNKNOWN); - return; - } - DbEnv *cxxenv = (DbEnv *)env->cj_internal; - if (cxxenv == 0) { - DB_ERROR("DbEnv::feedback_callback", EINVAL, ON_ERROR_UNKNOWN); - return; - } - if (cxxenv->feedback_callback_ == 0) { - DB_ERROR("DbEnv::feedback_callback", EINVAL, - cxxenv->error_policy()); - return; - } - (*cxxenv->feedback_callback_)(cxxenv, opcode, pct); -} - -int DbEnv::set_feedback(void (*arg)(DbEnv *, int, int)) -{ - DB_ENV *dbenv = unwrap(this); - - feedback_callback_ = arg; - - return ((*(dbenv->set_feedback))(dbenv, _feedback_intercept_c)); -} diff --git a/db/cxx/cxx_db.cpp b/db/cxx/cxx_db.cpp index 0ecc2fe5e..2c95274ff 100644 --- a/db/cxx/cxx_db.cpp +++ b/db/cxx/cxx_db.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_db.cpp,v 12.13 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_db.cpp,v 12.20 2007/06/28 13:02:50 mjc Exp $ */ #include "db_config.h" @@ -97,6 +96,7 @@ Db::Db(DbEnv *env, u_int32_t flags) , bt_prefix_callback_(0) , dup_compare_callback_(0) , feedback_callback_(0) +, h_compare_callback_(0) , h_hash_callback_(0) { if (env_ == 0) @@ -239,6 +239,9 @@ void Db::errx(const char *format, ...) DB_REAL_ERR(db->dbenv, 0, DB_ERROR_NOT_SET, 1, format); } +DB_METHOD(exists, (DbTxn *txnid, Dbt *key, u_int32_t flags), + (db, unwrap(txnid), key, flags), DB_RETOK_EXISTS) + DB_METHOD(fd, (int *fdp), (db, fdp), DB_RETOK_STD) int Db::get(DbTxn *txnid, Dbt *key, Dbt *value, u_int32_t flags) @@ -478,6 +481,14 @@ DB_CALLBACK_C_INTERCEPT(dup_compare, DB_SET_CALLBACK(set_dup_compare, dup_compare, (int (*arg)(Db *cxxthis, const Dbt *data1, const Dbt *data2)), arg) +DB_CALLBACK_C_INTERCEPT(h_compare, + int, (DB *cthis, const DBT *data1, const DBT *data2), + return, + (cxxthis, Dbt::get_const_Dbt(data1), Dbt::get_const_Dbt(data2))) + +DB_SET_CALLBACK(set_h_compare, h_compare, + (int (*arg)(Db *cxxthis, const Dbt *data1, const Dbt *data2)), arg) + DB_CALLBACK_C_INTERCEPT(h_hash, u_int32_t, (DB *cthis, const void *data, u_int32_t len), return, (cxxthis, data, len)) @@ -552,6 +563,8 @@ DB_METHOD(get_flags, (u_int32_t *flagsp), (db, flagsp), DB_RETOK_STD) DB_METHOD(set_flags, (u_int32_t flags), (db, flags), DB_RETOK_STD) +DB_METHOD(set_h_compare, (h_compare_fcn_type func), + (db, func), DB_RETOK_STD) DB_METHOD(get_h_ffactor, (u_int32_t *h_ffactorp), (db, h_ffactorp), DB_RETOK_STD) DB_METHOD(set_h_ffactor, (u_int32_t h_ffactor), @@ -568,10 +581,15 @@ DB_METHOD(set_lorder, (int db_lorder), (db, db_lorder), DB_RETOK_STD) DB_METHOD_VOID(get_msgfile, (FILE **msgfilep), (db, msgfilep)) DB_METHOD_VOID(set_msgfile, (FILE *msgfile), (db, msgfile)) +DB_METHOD_QUIET(get_multiple, (), (db)) DB_METHOD(get_pagesize, (u_int32_t *db_pagesizep), (db, db_pagesizep), DB_RETOK_STD) DB_METHOD(set_pagesize, (u_int32_t db_pagesize), (db, db_pagesize), DB_RETOK_STD) +DB_METHOD(get_priority, (DB_CACHE_PRIORITY *priorityp), + (db, priorityp), DB_RETOK_STD) +DB_METHOD(set_priority, (DB_CACHE_PRIORITY priority), + (db, priority), DB_RETOK_STD) DB_METHOD(get_re_delim, (int *re_delimp), (db, re_delimp), DB_RETOK_STD) DB_METHOD(set_re_delim, (int re_delim), diff --git a/db/cxx/cxx_dbc.cpp b/db/cxx/cxx_dbc.cpp index 4ab337c54..6ef72d331 100644 --- a/db/cxx/cxx_dbc.cpp +++ b/db/cxx/cxx_dbc.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_dbc.cpp,v 12.5 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_dbc.cpp,v 12.10 2007/06/26 16:58:17 bostic Exp $ */ #include "db_config.h" @@ -33,7 +32,7 @@ int Dbc::_name _argspec \ int ret; \ DBC *dbc = this; \ \ - ret = dbc->c_##_name _arglist; \ + ret = dbc->_name _arglist; \ if (!_retok(ret)) \ DB_ERROR(DbEnv::get_DbEnv(dbc->dbp->dbenv), \ "Dbc::" # _name, ret, ON_ERROR_UNKNOWN); \ @@ -58,7 +57,7 @@ int Dbc::dup(Dbc** cursorp, u_int32_t _flags) DBC *dbc = this; DBC *new_cursor = 0; - ret = dbc->c_dup(dbc, &new_cursor, _flags); + ret = dbc->dup(dbc, &new_cursor, _flags); if (DB_RETOK_STD(ret)) // The following cast implies that Dbc can be no larger than DBC @@ -75,7 +74,7 @@ int Dbc::get(Dbt* key, Dbt *data, u_int32_t _flags) int ret; DBC *dbc = this; - ret = dbc->c_get(dbc, key, data, _flags); + ret = dbc->get(dbc, key, data, _flags); if (!DB_RETOK_DBCGET(ret)) { if (ret == DB_BUFFER_SMALL && DB_OVERFLOWED_DBT(key)) @@ -97,7 +96,7 @@ int Dbc::pget(Dbt* key, Dbt *pkey, Dbt *data, u_int32_t _flags) int ret; DBC *dbc = this; - ret = dbc->c_pget(dbc, key, pkey, data, _flags); + ret = dbc->pget(dbc, key, pkey, data, _flags); /* Logic is the same as for Dbc::get - reusing macro. */ if (!DB_RETOK_DBCGET(ret)) { @@ -117,3 +116,6 @@ int Dbc::pget(Dbt* key, Dbt *pkey, Dbt *data, u_int32_t _flags) DBC_METHOD(put, (Dbt* key, Dbt *data, u_int32_t _flags), (dbc, key, data, _flags), DB_RETOK_DBCPUT) +DBC_METHOD(get_priority, (DB_CACHE_PRIORITY *priorityp), + (dbc, priorityp), DB_RETOK_STD) +DBC_METHOD(set_priority, (DB_CACHE_PRIORITY pri), (dbc, pri), DB_RETOK_STD) diff --git a/db/cxx/cxx_dbt.cpp b/db/cxx/cxx_dbt.cpp index cb203e18d..705dea332 100644 --- a/db/cxx/cxx_dbt.cpp +++ b/db/cxx/cxx_dbt.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_dbt.cpp,v 12.4 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_dbt.cpp,v 12.6 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/cxx/cxx_env.cpp b/db/cxx/cxx_env.cpp index ef6dd5678..3db5647c8 100644 --- a/db/cxx/cxx_env.cpp +++ b/db/cxx/cxx_env.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_env.cpp,v 12.32 2006/09/13 14:53:36 mjc Exp $ + * $Id: cxx_env.cpp,v 12.40 2007/06/28 13:02:50 mjc Exp $ */ #include "db_config.h" @@ -408,6 +407,7 @@ bool DbEnv::is_bigendian() return unwrap(this)->is_bigendian() ? true : false; } +DBENV_METHOD(get_thread_count, (u_int32_t *count), (dbenv, count)) DBENV_METHOD(set_thread_count, (u_int32_t count), (dbenv, count)) // used internally during constructor @@ -741,9 +741,9 @@ DBENV_METHOD(get_lk_max_objects, (u_int32_t *max_objectsp), DBENV_METHOD(set_lk_max_objects, (u_int32_t max_objects), (dbenv, max_objects)) DBENV_METHOD(get_mp_max_openfd, (int *maxopenfdp), (dbenv, maxopenfdp)) DBENV_METHOD(set_mp_max_openfd, (int maxopenfd), (dbenv, maxopenfd)) -DBENV_METHOD(get_mp_max_write, (int *maxwritep, int *maxwrite_sleepp), +DBENV_METHOD(get_mp_max_write, (int *maxwritep, db_timeout_t *maxwrite_sleepp), (dbenv, maxwritep, maxwrite_sleepp)) -DBENV_METHOD(set_mp_max_write, (int maxwrite, int maxwrite_sleep), +DBENV_METHOD(set_mp_max_write, (int maxwrite, db_timeout_t maxwrite_sleep), (dbenv, maxwrite, maxwrite_sleep)) DBENV_METHOD(get_mp_mmapsize, (size_t *mmapsizep), (dbenv, mmapsizep)) DBENV_METHOD(set_mp_mmapsize, (size_t mmapsize), (dbenv, mmapsize)) @@ -772,6 +772,10 @@ DBENV_METHOD(get_cachesize, DBENV_METHOD(set_cachesize, (u_int32_t gbytes, u_int32_t bytes, int ncache), (dbenv, gbytes, bytes, ncache)) +DBENV_METHOD(get_cache_max, (u_int32_t *gbytesp, u_int32_t *bytesp), + (dbenv, gbytesp, bytesp)) +DBENV_METHOD(set_cache_max, (u_int32_t gbytes, u_int32_t bytes), + (dbenv, gbytes, bytes)) void DbEnv::set_errcall(void (*arg)(const DbEnv *, const char *, const char *)) { @@ -1039,20 +1043,20 @@ int DbEnv::rep_set_transport(int myid, int (*arg)(DbEnv *, return (ret); } -DBENV_METHOD(rep_elect, (int nsites, int nvotes, int *eidp, u_int32_t flags), - (dbenv, nsites, nvotes, eidp, flags)) +DBENV_METHOD(rep_elect, (int nsites, int nvotes, u_int32_t flags), + (dbenv, nsites, nvotes, flags)) DBENV_METHOD(rep_flush, (), (dbenv)) DBENV_METHOD(rep_get_config, (u_int32_t which, int *onoffp), (dbenv, which, onoffp)) DBENV_METHOD(set_rep_request, (u_int32_t min, u_int32_t max), (dbenv, min, max)) int DbEnv::rep_process_message(Dbt *control, - Dbt *rec, int *idp, DbLsn *ret_lsnp) + Dbt *rec, int id, DbLsn *ret_lsnp) { DB_ENV *dbenv = unwrap(this); int ret; - ret = dbenv->rep_process_message(dbenv, control, rec, idp, ret_lsnp); + ret = dbenv->rep_process_message(dbenv, control, rec, id, ret_lsnp); if (!DB_RETOK_REPPMSG(ret)) DB_ERROR(this, "DbEnv::rep_process_message", ret, error_policy()); @@ -1071,6 +1075,8 @@ DBENV_METHOD(rep_stat, (DB_REP_STAT **statp, u_int32_t flags), DBENV_METHOD(rep_stat_print, (u_int32_t flags), (dbenv, flags)) DBENV_METHOD(rep_sync, (u_int32_t flags), (dbenv, flags)) +DBENV_METHOD(rep_set_lease, (u_int32_t clock_scale_factor, u_int32_t flags), + (dbenv, clock_scale_factor, flags)) DBENV_METHOD(rep_get_limit, (u_int32_t *gbytesp, u_int32_t *bytesp), (dbenv, gbytesp, bytesp)) DBENV_METHOD(rep_set_limit, (u_int32_t gbytes, u_int32_t bytes), @@ -1098,6 +1104,9 @@ DBENV_METHOD(repmgr_site_list, (u_int *countp, DB_REPMGR_SITE **listp), (dbenv, countp, listp)) DBENV_METHOD(repmgr_start, (int nthreads, u_int32_t flags), (dbenv, nthreads, flags)) +DBENV_METHOD(repmgr_stat, (DB_REPMGR_STAT **statp, u_int32_t flags), + (dbenv, statp, flags)) +DBENV_METHOD(repmgr_stat_print, (u_int32_t flags), (dbenv, flags)) // End advanced replication API method implementations. diff --git a/db/cxx/cxx_except.cpp b/db/cxx/cxx_except.cpp index 3a58f6bec..27b642caa 100644 --- a/db/cxx/cxx_except.cpp +++ b/db/cxx/cxx_except.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_except.cpp,v 12.10 2006/09/13 14:53:37 mjc Exp $ + * $Id: cxx_except.cpp,v 12.12 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/cxx/cxx_lock.cpp b/db/cxx/cxx_lock.cpp index 8c5a537a2..7b77330be 100644 --- a/db/cxx/cxx_lock.cpp +++ b/db/cxx/cxx_lock.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_lock.cpp,v 12.4 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_lock.cpp,v 12.6 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/cxx/cxx_log.cpp b/db/cxx/cxx_log.cpp deleted file mode 100644 index 336b9d337..000000000 --- a/db/cxx/cxx_log.cpp +++ /dev/null @@ -1,125 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997, 1998, 1999, 2000 - * Sleepycat Software. All rights reserved. - */ - -#include "db_config.h" - -#ifndef lint -static const char revid[] = "$Id: cxx_log.cpp,v 11.9 2000/09/21 15:05:45 dda Exp $"; -#endif /* not lint */ - -#include - -#include "db_cxx.h" -#include "cxx_int.h" - -//////////////////////////////////////////////////////////////////////// -// // -// DbLog // -// // -//////////////////////////////////////////////////////////////////////// - -int DbEnv::log_archive(char **list[], u_int32_t flags, - db_malloc_fcn_type db_malloc_fcn) -{ - int err; - DB_ENV *env = unwrap(this); - - if ((err = ::log_archive(env, list, flags, db_malloc_fcn)) != 0) { - DB_ERROR("DbEnv::log_archive", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_compare(const DbLsn *lsn0, const DbLsn *lsn1) -{ - return (::log_compare(lsn0, lsn1)); -} - -int DbEnv::log_file(DbLsn *lsn, char *namep, size_t len) -{ - int err; - DB_ENV *env = unwrap(this); - - if ((err = ::log_file(env, lsn, namep, len)) != 0) { - DB_ERROR("DbEnv::log_file", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_flush(const DbLsn *lsn) -{ - int err; - DB_ENV *env = unwrap(this); - - if ((err = ::log_flush(env, lsn)) != 0) { - DB_ERROR("DbEnv::log_flush", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_get(DbLsn *lsn, Dbt *data, u_int32_t flags) -{ - int err; - DB_ENV *env = unwrap(this); - - if ((err = ::log_get(env, lsn, data, flags)) != 0) { - DB_ERROR("DbEnv::log_get", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_put(DbLsn *lsn, const Dbt *data, u_int32_t flags) -{ - int err = 0; - DB_ENV *env = unwrap(this); - - if ((err = ::log_put(env, lsn, data, flags)) != 0) { - DB_ERROR("DbEnv::log_put", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_register(Db *dbp, const char *name) -{ - int err = 0; - DB_ENV *env = unwrap(this); - - if ((err = ::log_register(env, unwrap(dbp), name)) != 0) { - DB_ERROR("DbEnv::log_register", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_stat(DB_LOG_STAT **spp, db_malloc_fcn_type db_malloc_fcn) -{ - int err = 0; - DB_ENV *env = unwrap(this); - - if ((err = ::log_stat(env, spp, db_malloc_fcn)) != 0) { - DB_ERROR("DbEnv::log_stat", err, error_policy()); - return (err); - } - return (0); -} - -int DbEnv::log_unregister(Db *dbp) -{ - int err; - DB_ENV *env = unwrap(this); - - if ((err = ::log_unregister(env, unwrap(dbp))) != 0) { - DB_ERROR("DbEnv::log_unregister", err, error_policy()); - return (err); - } - return (0); -} diff --git a/db/cxx/cxx_logc.cpp b/db/cxx/cxx_logc.cpp index 1e3c4ef70..819f5b0fb 100644 --- a/db/cxx/cxx_logc.cpp +++ b/db/cxx/cxx_logc.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_logc.cpp,v 12.4 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_logc.cpp,v 12.8 2007/06/28 13:02:50 mjc Exp $ */ #include "db_config.h" @@ -44,12 +43,12 @@ int DbLogc::close(u_int32_t _flags) } // The name _flags prevents a name clash with __db_log_cursor::flags -int DbLogc::get(DbLsn *lsn, Dbt *data, u_int32_t _flags) +int DbLogc::get(DbLsn *get_lsn, Dbt *data, u_int32_t _flags) { DB_LOGC *logc = this; int ret; - ret = logc->get(logc, lsn, data, _flags); + ret = logc->get(logc, get_lsn, data, _flags); if (!DB_RETOK_LGGET(ret)) { if (ret == DB_BUFFER_SMALL) @@ -62,3 +61,18 @@ int DbLogc::get(DbLsn *lsn, Dbt *data, u_int32_t _flags) return (ret); } + +// The name _flags prevents a name clash with __db_log_cursor::flags +int DbLogc::version(u_int32_t *versionp, u_int32_t _flags) +{ + DB_LOGC *logc = this; + int ret; + + ret = logc->version(logc, versionp, _flags); + + if (!DB_RETOK_LGGET(ret)) + DB_ERROR(DbEnv::get_DbEnv(logc->dbenv), + "DbLogc::version", ret, ON_ERROR_UNKNOWN); + + return (ret); +} diff --git a/db/cxx/cxx_mpool.cpp b/db/cxx/cxx_mpool.cpp index 1085f0390..db93114ac 100644 --- a/db/cxx/cxx_mpool.cpp +++ b/db/cxx/cxx_mpool.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_mpool.cpp,v 12.5 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_mpool.cpp,v 12.10 2007/06/28 13:02:50 mjc Exp $ */ #include "db_config.h" @@ -88,10 +87,9 @@ DB_MPOOLFILE_METHOD(get, DB_MPOOLFILE_METHOD(open, (const char *file, u_int32_t flags, int mode, size_t pagesize), (mpf, file, flags, mode, pagesize), DB_RETOK_STD) -DB_MPOOLFILE_METHOD(put, (void *pgaddr, u_int32_t flags), - (mpf, pgaddr, flags), DB_RETOK_STD) -DB_MPOOLFILE_METHOD(set, (void *pgaddr, u_int32_t flags), - (mpf, pgaddr, flags), DB_RETOK_STD) +DB_MPOOLFILE_METHOD(put, + (void *pgaddr, DB_CACHE_PRIORITY priority, u_int32_t flags), + (mpf, pgaddr, priority, flags), DB_RETOK_STD) DB_MPOOLFILE_METHOD(get_clear_len, (u_int32_t *lenp), (mpf, lenp), DB_RETOK_STD) DB_MPOOLFILE_METHOD(set_clear_len, (u_int32_t len), @@ -108,6 +106,8 @@ DB_MPOOLFILE_METHOD(get_ftype, (int *ftypep), (mpf, ftypep), DB_RETOK_STD) DB_MPOOLFILE_METHOD(set_ftype, (int ftype), (mpf, ftype), DB_RETOK_STD) +DB_MPOOLFILE_METHOD(get_last_pgno, (db_pgno_t *pgnop), + (mpf, pgnop), DB_RETOK_STD) DB_MPOOLFILE_METHOD(get_lsn_offset, (int32_t *offsetp), (mpf, offsetp), DB_RETOK_STD) DB_MPOOLFILE_METHOD(set_lsn_offset, (int32_t offset), diff --git a/db/cxx/cxx_multi.cpp b/db/cxx/cxx_multi.cpp index a53f09b34..bf1c61e68 100644 --- a/db/cxx/cxx_multi.cpp +++ b/db/cxx/cxx_multi.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_multi.cpp,v 12.7 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_multi.cpp,v 12.9 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/cxx/cxx_seq.cpp b/db/cxx/cxx_seq.cpp index d3a4bd0ad..33b2af37d 100644 --- a/db/cxx/cxx_seq.cpp +++ b/db/cxx/cxx_seq.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_seq.cpp,v 12.6 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_seq.cpp,v 12.9 2007/05/17 17:23:26 bostic Exp $ */ #include "db_config.h" @@ -97,7 +96,7 @@ Db *DbSequence::get_db() Dbt *DbSequence::get_key() { DB_SEQUENCE *seq = unwrap(this); - memset(&key_, 0, sizeof (DBT)); + memset(&key_, 0, sizeof(DBT)); (void)seq->get_key(seq, &key_); return Dbt::get_Dbt(&key_); } diff --git a/db/cxx/cxx_table.cpp b/db/cxx/cxx_table.cpp deleted file mode 100644 index b7b335d26..000000000 --- a/db/cxx/cxx_table.cpp +++ /dev/null @@ -1,808 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997, 1998, 1999, 2000 - * Sleepycat Software. All rights reserved. - */ - -#include "db_config.h" - -#ifndef lint -static const char revid[] = "$Id: cxx_table.cpp,v 11.35 2001/01/11 18:19:49 bostic Exp $"; -#endif /* not lint */ - -#include -#include - -#include "db_cxx.h" -#include "cxx_int.h" - -#include "db_int.h" -#include "db_page.h" -#include "db_ext.h" -#include "common_ext.h" - -//////////////////////////////////////////////////////////////////////// -// // -// Db // -// // -//////////////////////////////////////////////////////////////////////// - -// A truism for the DbEnv object is that there is a valid -// DB_ENV handle from the constructor until close(). -// After the close, the DB handle is invalid and -// no operations are permitted on the Db (other than -// destructor). Leaving the Db handle open and not -// doing a close is generally considered an error. -// -// We used to allow Db objects to be closed and reopened. -// This implied always keeping a valid DB object, and -// coordinating the open objects between Db/DbEnv turned -// out to be overly complicated. Now we do not allow this. - -Db::Db(DbEnv *env, u_int32_t flags) -: imp_(0) -, env_(env) -, construct_error_(0) -, flags_(0) -, construct_flags_(flags) -{ - if (env_ == 0) - flags_ |= DB_CXX_PRIVATE_ENV; - initialize(); -} - -// Note: if the user has not closed, we call _destroy_check -// to warn against this non-safe programming practice. -// We can't close, because the environment may already -// be closed/destroyed. -// -Db::~Db() -{ - DB *db; - - db = unwrap(this); - if (db != NULL) { - DbEnv::_destroy_check("Db", 0); - cleanup(); - } -} - -// private method to initialize during constructor. -// initialize must create a backing DB object, -// and if that creates a new DB_ENV, it must be tied to a new DbEnv. -// If there is an error, construct_error_ is set; this is examined -// during open. -// -int Db::initialize() -{ - u_int32_t cxx_flags; - DB *db; - int err; - DB_ENV *cenv = unwrap(env_); - - cxx_flags = construct_flags_ & DB_CXX_NO_EXCEPTIONS; - - // Create a new underlying DB object. - // We rely on the fact that if a NULL DB_ENV* is given, - // one is allocated by DB. - // - if ((err = db_create(&db, cenv, - construct_flags_ & ~cxx_flags)) != 0) { - construct_error_ = err; - return (err); - } - - // Associate the DB with this object - imp_ = wrap(db); - db->cj_internal = this; - - // Create a new DbEnv from a DB_ENV* if it was created locally. - // It is deleted in Db::close(). - // - if ((flags_ & DB_CXX_PRIVATE_ENV) != 0) - env_ = new DbEnv(db->dbenv, cxx_flags); - - return (0); -} - -// private method to cleanup after destructor or during close. -// If the environment was created by this Db object, we optionally -// delete it, or return it so the caller can delete it after -// last use. -// -void Db::cleanup() -{ - DB *db = unwrap(this); - - if (db != NULL) { - // extra safety - db->cj_internal = 0; - imp_ = 0; - - // we must dispose of the DbEnv object if - // we created it. This will be the case - // if a NULL DbEnv was passed into the constructor. - // The underlying DB_ENV object will be inaccessible - // after the close, so we must clean it up now. - // - if ((flags_ & DB_CXX_PRIVATE_ENV) != 0) { - env_->cleanup(); - delete env_; - env_ = 0; - } - } - construct_error_ = 0; -} - -// Return a tristate value corresponding to whether we should -// throw exceptions on errors: -// ON_ERROR_RETURN -// ON_ERROR_THROW -// ON_ERROR_UNKNOWN -// -int Db::error_policy() -{ - if (env_ != NULL) - return (env_->error_policy()); - else { - // If the env_ is null, that means that the user - // did not attach an environment, so the correct error - // policy can be deduced from constructor flags - // for this Db. - // - if ((construct_flags_ & DB_CXX_NO_EXCEPTIONS) != 0) { - return (ON_ERROR_RETURN); - } - else { - return (ON_ERROR_THROW); - } - } -} - -int Db::close(u_int32_t flags) -{ - DB *db = unwrap(this); - int err; - - // after a DB->close (no matter if success or failure), - // the underlying DB object must not be accessed, - // so we clean up in advance. - // - cleanup(); - - // It's safe to throw an error after the close, - // since our error mechanism does not peer into - // the DB* structures. - // - if ((err = db->close(db, flags)) != 0 && err != DB_INCOMPLETE) - DB_ERROR("Db::close", err, error_policy()); - - return (err); -} - -int Db::cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags) -{ - DB *db = unwrap(this); - DBC *dbc = 0; - int err; - - if ((err = db->cursor(db, unwrap(txnid), &dbc, flags)) != 0) { - DB_ERROR("Db::cursor", err, error_policy()); - return (err); - } - - // The following cast implies that Dbc can be no larger than DBC - *cursorp = (Dbc*)dbc; - return (0); -} - -int Db::del(DbTxn *txnid, Dbt *key, u_int32_t flags) -{ - DB *db = unwrap(this); - int err; - - if ((err = db->del(db, unwrap(txnid), key, flags)) != 0) { - // DB_NOTFOUND is a "normal" return, so should not be - // thrown as an error - // - if (err != DB_NOTFOUND) { - DB_ERROR("Db::del", err, error_policy()); - return (err); - } - } - return (err); -} - -void Db::err(int error, const char *format, ...) -{ - va_list args; - DB *db = unwrap(this); - - va_start(args, format); - __db_real_err(db->dbenv, error, 1, 1, format, args); - va_end(args); -} - -void Db::errx(const char *format, ...) -{ - va_list args; - DB *db = unwrap(this); - - va_start(args, format); - __db_real_err(db->dbenv, 0, 0, 1, format, args); - va_end(args); -} - -int Db::fd(int *fdp) -{ - DB *db = unwrap(this); - int err; - - if ((err = db->fd(db, fdp)) != 0) { - DB_ERROR("Db::fd", err, error_policy()); - return (err); - } - return (0); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -void _db_feedback_intercept_c(DB *db, int opcode, int pct) -{ - Db::_feedback_intercept(db, opcode, pct); -} - -//static -void Db::_feedback_intercept(DB *db, int opcode, int pct) -{ - if (db == 0) { - DB_ERROR("Db::feedback_callback", EINVAL, ON_ERROR_UNKNOWN); - return; - } - Db *cxxdb = (Db *)db->cj_internal; - if (cxxdb == 0) { - DB_ERROR("Db::feedback_callback", EINVAL, ON_ERROR_UNKNOWN); - return; - } - if (cxxdb->feedback_callback_ == 0) { - DB_ERROR("Db::feedback_callback", EINVAL, cxxdb->error_policy()); - return; - } - (*cxxdb->feedback_callback_)(cxxdb, opcode, pct); -} - -int Db::set_feedback(void (*arg)(Db *, int, int)) -{ - DB *db = unwrap(this); - - feedback_callback_ = arg; - - return ((*(db->set_feedback))(db, _db_feedback_intercept_c)); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -int _db_append_recno_intercept_c(DB *db, DBT *data, db_recno_t recno) -{ - return (Db::_append_recno_intercept(db, data, recno)); -} - -//static -int Db::_append_recno_intercept(DB *db, DBT *data, db_recno_t recno) -{ - int err; - - if (db == 0) { - DB_ERROR("Db::append_recno_callback", EINVAL, ON_ERROR_UNKNOWN); - return (EINVAL); - } - Db *cxxdb = (Db *)db->cj_internal; - if (cxxdb == 0) { - DB_ERROR("Db::append_recno_callback", EINVAL, ON_ERROR_UNKNOWN); - return (EINVAL); - } - if (cxxdb->append_recno_callback_ == 0) { - DB_ERROR("Db::append_recno_callback", EINVAL, cxxdb->error_policy()); - return (EINVAL); - } - - // making these copies is slow but portable. - // Another alternative is to cast the DBT* manufactured - // by the C layer to a Dbt*. It 'should be' safe since - // Dbt is a thin shell over DBT, adding no extra data, - // but is nonportable, and could lead to errors if anything - // were added to the Dbt class. - // - Dbt cxxdbt; - memcpy((DBT *)&cxxdbt, data, sizeof(DBT)); - err = (*cxxdb->append_recno_callback_)(cxxdb, &cxxdbt, recno); - memcpy(data, (DBT *)&cxxdbt, sizeof(DBT)); - return (err); -} - -int Db::set_append_recno(int (*arg)(Db *, Dbt *, db_recno_t)) -{ - DB *db = unwrap(this); - - append_recno_callback_ = arg; - - return ((*(db->set_append_recno))(db, _db_append_recno_intercept_c)); -} - -int Db::get(DbTxn *txnid, Dbt *key, Dbt *value, u_int32_t flags) -{ - DB *db = unwrap(this); - int err; - - if ((err = db->get(db, unwrap(txnid), key, value, flags)) != 0) { - // DB_NOTFOUND and DB_KEYEMPTY are "normal" returns, - // so should not be thrown as an error - // - if (err != DB_NOTFOUND && err != DB_KEYEMPTY) { - DB_ERROR("Db::get", err, error_policy()); - return (err); - } - } - return (err); -} - -int Db::get_byteswapped() const -{ - DB *db = (DB *)unwrapConst(this); - return (db->get_byteswapped(db)); -} - -DBTYPE Db::get_type() const -{ - DB *db = (DB *)unwrapConst(this); - return ((DBTYPE)db->get_type(db)); -} - -int Db::join(Dbc **curslist, Dbc **cursorp, u_int32_t flags) -{ - // Dbc is a "compatible" subclass of DBC - - // that is, no virtual functions or even extra data members, - // so this cast, although technically non-portable, - // "should" always be okay. - // - DBC **list = (DBC **)(curslist); - DB *db = unwrap(this); - DBC *dbc = 0; - int err; - - if ((err = db->join(db, list, &dbc, flags)) != 0) { - DB_ERROR("Db::join_cursor", err, error_policy()); - return (err); - } - *cursorp = (Dbc*)dbc; - return (0); -} - -int Db::key_range(DbTxn *txnid, Dbt *key, - DB_KEY_RANGE *results, u_int32_t flags) -{ - DB *db = unwrap(this); - int err; - - if ((err = db->key_range(db, unwrap(txnid), key, - results, flags)) != 0) { - DB_ERROR("Db::key_range", err, error_policy()); - return (err); - } - return (0); -} - -// If an error occurred during the constructor, report it now. -// Otherwise, call the underlying DB->open method. -// -int Db::open(const char *file, const char *database, - DBTYPE type, u_int32_t flags, int mode) -{ - int err; - DB *db = unwrap(this); - - if ((err = construct_error_) != 0) - DB_ERROR("Db::open", construct_error_, error_policy()); - else if ((err = db->open(db, file, database, type, flags, mode)) != 0) - DB_ERROR("Db::open", err, error_policy()); - - return (err); -} - -int Db::put(DbTxn *txnid, Dbt *key, Dbt *value, u_int32_t flags) -{ - int err; - DB *db = unwrap(this); - - if ((err = db->put(db, unwrap(txnid), key, value, flags)) != 0) { - - // DB_KEYEXIST is a "normal" return, so should not be - // thrown as an error - // - if (err != DB_KEYEXIST) { - DB_ERROR("Db::put", err, error_policy()); - return (err); - } - } - return (err); -} - -int Db::rename(const char *file, const char *database, - const char *newname, u_int32_t flags) -{ - int err = 0; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::rename", EINVAL, error_policy()); - return (EINVAL); - } - - // after a DB->rename (no matter if success or failure), - // the underlying DB object must not be accessed, - // so we clean up in advance. - // - cleanup(); - - if ((err = db->rename(db, file, database, newname, flags)) != 0) { - DB_ERROR("Db::rename", err, error_policy()); - return (err); - } - return (0); -} - -int Db::remove(const char *file, const char *database, u_int32_t flags) -{ - int err = 0; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::remove", EINVAL, error_policy()); - return (EINVAL); - } - - // after a DB->remove (no matter if success or failure), - // the underlying DB object must not be accessed, - // so we clean up in advance. - // - cleanup(); - - if ((err = db->remove(db, file, database, flags)) != 0) - DB_ERROR("Db::remove", err, error_policy()); - - return (err); -} - -int Db::stat(void *sp, db_malloc_fcn_type db_malloc_fcn, u_int32_t flags) -{ - int err; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::stat", EINVAL, error_policy()); - return (EINVAL); - } - if ((err = db->stat(db, sp, db_malloc_fcn, flags)) != 0) { - DB_ERROR("Db::stat", err, error_policy()); - return (err); - } - return (0); -} - -int Db::sync(u_int32_t flags) -{ - int err; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::sync", EINVAL, error_policy()); - return (EINVAL); - } - if ((err = db->sync(db, flags)) != 0 && err != DB_INCOMPLETE) { - DB_ERROR("Db::sync", err, error_policy()); - return (err); - } - return (err); -} - -int Db::upgrade(const char *name, u_int32_t flags) -{ - int err; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::upgrade", EINVAL, error_policy()); - return (EINVAL); - } - if ((err = db->upgrade(db, name, flags)) != 0) { - DB_ERROR("Db::upgrade", err, error_policy()); - return (err); - } - return (0); -} - -static int _verify_callback_cxx(void *handle, const void *str_arg) -{ - char *str; - ostream *out; - - str = (char *)str_arg; - out = (ostream *)handle; - - (*out) << str; - if (out->fail()) - return (EIO); - - return (0); -} - -// This is a 'glue' function declared as extern "C" so it will -// be compatible with picky compilers that do not allow mixing -// of function pointers to 'C' functions with function pointers -// to C++ functions. -// -extern "C" -int _verify_callback_c(void *handle, const void *str_arg) -{ - return (_verify_callback_cxx(handle, str_arg)); -} - -int Db::verify(const char *name, const char *subdb, - ostream *ostr, u_int32_t flags) -{ - int err; - DB *db = unwrap(this); - - if (!db) { - DB_ERROR("Db::verify", EINVAL, error_policy()); - return (EINVAL); - } - if ((err = __db_verify_internal(db, name, subdb, ostr, - _verify_callback_c, flags)) != 0) { - DB_ERROR("Db::verify", err, error_policy()); - return (err); - } - return (0); -} - -// This is a variant of the DB_WO_ACCESS macro to define a simple set_ -// method calling the underlying C method, but unlike a simple -// set method, it may return an error or raise an exception. -// Note this macro expects that input _argspec is an argument -// list element (e.g. "char *arg") defined in terms of "arg". -// -#define DB_DB_ACCESS(_name, _argspec) \ -\ -int Db::set_##_name(_argspec) \ -{ \ - int ret; \ - DB *db = unwrap(this); \ - \ - if ((ret = (*(db->set_##_name))(db, arg)) != 0) { \ - DB_ERROR("Db::set_" # _name, ret, error_policy()); \ - } \ - return (ret); \ -} - -#define DB_DB_ACCESS_NORET(_name, _argspec) \ - \ -void Db::set_##_name(_argspec) \ -{ \ - DB *db = unwrap(this); \ - \ - (*(db->set_##_name))(db, arg); \ - return; \ -} - -DB_DB_ACCESS(bt_compare, bt_compare_fcn_type arg) -DB_DB_ACCESS(bt_maxkey, u_int32_t arg) -DB_DB_ACCESS(bt_minkey, u_int32_t arg) -DB_DB_ACCESS(bt_prefix, bt_prefix_fcn_type arg) -DB_DB_ACCESS(dup_compare, dup_compare_fcn_type arg) -DB_DB_ACCESS_NORET(errfile, FILE *arg) -DB_DB_ACCESS_NORET(errpfx, const char *arg) -DB_DB_ACCESS(flags, u_int32_t arg) -DB_DB_ACCESS(h_ffactor, u_int32_t arg) -DB_DB_ACCESS(h_hash, h_hash_fcn_type arg) -DB_DB_ACCESS(h_nelem, u_int32_t arg) -DB_DB_ACCESS(lorder, int arg) -DB_DB_ACCESS(malloc, db_malloc_fcn_type arg) -DB_DB_ACCESS(pagesize, u_int32_t arg) -DB_DB_ACCESS(realloc, db_realloc_fcn_type arg) -DB_DB_ACCESS(re_delim, int arg) -DB_DB_ACCESS(re_len, u_int32_t arg) -DB_DB_ACCESS(re_pad, int arg) -DB_DB_ACCESS(re_source, char *arg) -DB_DB_ACCESS(q_extentsize, u_int32_t arg) - -// Here are the set methods that don't fit the above mold. -// - -void Db::set_errcall(void (*arg)(const char *, char *)) -{ - env_->set_errcall(arg); -} - -int Db::set_cachesize(u_int32_t gbytes, u_int32_t bytes, int ncache) -{ - int ret; - DB *db = unwrap(this); - - if ((ret = (*(db->set_cachesize))(db, gbytes, bytes, ncache)) != 0) { - DB_ERROR("Db::set_cachesize", ret, error_policy()); - } - return (ret); -} - -int Db::set_paniccall(void (*callback)(DbEnv *, int)) -{ - return (env_->set_paniccall(callback)); -} - -void Db::set_error_stream(ostream *error_stream) -{ - env_->set_error_stream(error_stream); -} - -//////////////////////////////////////////////////////////////////////// -// // -// Dbc // -// // -//////////////////////////////////////////////////////////////////////// - -// It's private, and should never be called, but VC4.0 needs it resolved -// -Dbc::~Dbc() -{ -} - -int Dbc::close() -{ - DBC *cursor = this; - int err; - - if ((err = cursor->c_close(cursor)) != 0) { - DB_ERROR("Db::close", err, ON_ERROR_UNKNOWN); - return (err); - } - return (0); -} - -int Dbc::count(db_recno_t *countp, u_int32_t flags_arg) -{ - DBC *cursor = this; - int err; - - if ((err = cursor->c_count(cursor, countp, flags_arg)) != 0) { - DB_ERROR("Db::count", err, ON_ERROR_UNKNOWN); - return (err); - } - return (0); -} - -int Dbc::del(u_int32_t flags_arg) -{ - DBC *cursor = this; - int err; - - if ((err = cursor->c_del(cursor, flags_arg)) != 0) { - - // DB_KEYEMPTY is a "normal" return, so should not be - // thrown as an error - // - if (err != DB_KEYEMPTY) { - DB_ERROR("Db::del", err, ON_ERROR_UNKNOWN); - return (err); - } - } - return (err); -} - -int Dbc::dup(Dbc** cursorp, u_int32_t flags_arg) -{ - DBC *cursor = this; - DBC *new_cursor = 0; - int err; - - if ((err = cursor->c_dup(cursor, &new_cursor, flags_arg)) != 0) { - DB_ERROR("Db::dup", err, ON_ERROR_UNKNOWN); - return (err); - } - - // The following cast implies that Dbc can be no larger than DBC - *cursorp = (Dbc*)new_cursor; - return (0); -} - -int Dbc::get(Dbt* key, Dbt *data, u_int32_t flags_arg) -{ - DBC *cursor = this; - int err; - - if ((err = cursor->c_get(cursor, key, data, flags_arg)) != 0) { - - // DB_NOTFOUND and DB_KEYEMPTY are "normal" returns, - // so should not be thrown as an error - // - if (err != DB_NOTFOUND && err != DB_KEYEMPTY) { - DB_ERROR("Db::get", err, ON_ERROR_UNKNOWN); - return (err); - } - } - return (err); -} - -int Dbc::put(Dbt* key, Dbt *data, u_int32_t flags_arg) -{ - DBC *cursor = this; - int err; - - if ((err = cursor->c_put(cursor, key, data, flags_arg)) != 0) { - - // DB_KEYEXIST is a "normal" return, so should not be - // thrown as an error - // - if (err != DB_KEYEXIST) { - DB_ERROR("Db::put", err, ON_ERROR_UNKNOWN); - return (err); - } - } - return (err); -} - -//////////////////////////////////////////////////////////////////////// -// // -// Dbt // -// // -//////////////////////////////////////////////////////////////////////// - -Dbt::Dbt() -{ - DBT *dbt = this; - memset(dbt, 0, sizeof(DBT)); -} - -Dbt::Dbt(void *data_arg, size_t size_arg) -{ - DBT *dbt = this; - memset(dbt, 0, sizeof(DBT)); - set_data(data_arg); - set_size(size_arg); -} - -Dbt::~Dbt() -{ -} - -Dbt::Dbt(const Dbt &that) -{ - const DBT *from = &that; - DBT *to = this; - memcpy(to, from, sizeof(DBT)); -} - -Dbt &Dbt::operator = (const Dbt &that) -{ - if (this != &that) { - const DBT *from = &that; - DBT *to = this; - memcpy(to, from, sizeof(DBT)); - } - return (*this); -} - -DB_RW_ACCESS(Dbt, void *, data, data) -DB_RW_ACCESS(Dbt, u_int32_t, size, size) -DB_RW_ACCESS(Dbt, u_int32_t, ulen, ulen) -DB_RW_ACCESS(Dbt, u_int32_t, dlen, dlen) -DB_RW_ACCESS(Dbt, u_int32_t, doff, doff) -DB_RW_ACCESS(Dbt, u_int32_t, flags, flags) diff --git a/db/cxx/cxx_txn.cpp b/db/cxx/cxx_txn.cpp index 6456e3461..cb0995d15 100644 --- a/db/cxx/cxx_txn.cpp +++ b/db/cxx/cxx_txn.cpp @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_txn.cpp,v 12.5 2006/08/24 14:45:13 bostic Exp $ + * $Id: cxx_txn.cpp,v 12.7 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/cxx/namemap.txt b/db/cxx/namemap.txt deleted file mode 100644 index 752077185..000000000 --- a/db/cxx/namemap.txt +++ /dev/null @@ -1,21 +0,0 @@ -$Id: namemap.txt,v 10.4 2000/02/19 20:57:54 bostic Exp $ - -The bulk of DB provides for wrapper classes and appropriately named methods -that call into DB. For the most part, there is a straightforward mapping of -names. For the purposes of referencing documentation, this chart shows the -underlying C structure name for each C++ class. In some cases, using the -given C prefix with a C++ method name gives the underlying C function name. -For example, DbMpoolFile::close() is implemented by memp_fclose(). - -C++ C C prefix - -Db DB -DbEnv DB_ENV -Dbc DBC -DbException none -DbInfo DB_INFO -DbLock DB_LOCK lock_ -DbLsn DB_LSN -DbMpoolFile DB_MPOOL_FILE memp_ -Dbt DBT -DbTxn DB_TXN txn_ diff --git a/db/db/Design.fileop b/db/db/Design.fileop deleted file mode 100644 index 187f1ffaf..000000000 --- a/db/db/Design.fileop +++ /dev/null @@ -1,452 +0,0 @@ -# $Id: Design.fileop,v 11.4 2000/02/19 20:57:54 bostic Exp $ - -The design of file operation recovery. - -Keith has asked me to write up notes on our current status of database -create and delete and recovery, why it's so hard, and how we've violated -all the cornerstone assumptions on which our recovery framework is based. - -I am including two documents at the end of this one. The first is the -initial design of the recoverability of file create and delete (there is -no talk of subdatabases there, because we didn't think we'd have to do -anything special there). I will annotate this document on where things -changed. - -The second is the design of recd007 which is supposed to test our ability -to recover these operations regardless of where one crashes. This test -is fundamentally different from our other recovery tests in the following -manner. Normally, the application controls transaction boundaries. -Therefore, we can perform an operation and then decide whether to commit -or abort it. In the normal recovery tests, we force the database into -each of the four possible states from a recovery perspective: - - database is pre-op, undo (do nothing) - database is pre-op, redo - database is post-op, undo - database is post-op, redo (do nothing) - -By copying databases at various points and initiating txn_commit and abort -appropriately, we can make all these things happen. Notice that the one -case we don't handle is where page A is in one state (e.g., pre-op) and -page B is in another state (e.g., post-op). I will argue that these don't -matter because each page is recovered independently. If anyone can poke -holes in this, I'm interested. - -The problem with create/delete recovery testing is that the transaction -is begun and ended all inside the library. Therefore, there is never any -point (outside the library) where we can copy files and or initiate -abort/commit. In order to still put the recovery code through its paces, -Sue designed an infrastructure that lets you tell the library where to -make copies of things and where to suddenly inject errors so that the -transaction gets aborted. This level of detail allows us to push the -create/delete recovery code through just about every recovery path -possible (although I'm sure Mike will tell me I'm wrong when he starts to -run code coverage tools). - -OK, so that's all preamble and a brief discussion of the documents I'm -enclosing. - -Why was this so hard and painful and why is the code so Q@#$!% complicated? -The following is a discussion/explanation, but to the best of my knowledge, -the structure we have in place now works. The key question we need to be -asking is, "Does this need to have to be so complex or should we redesign -portions to simplify it?" At this point, there is no obvious way to simplify -it in my book, but I may be having difficulty seeing this because my mind is -too polluted at this point. - -Our overall strategy for recovery is that we do write-ahead logging, -that is we log an operation and make sure it is on disk before any -data corresponding to the data that log record describes is on disk. -Typically we use log sequence numbers (LSNs) to mark the data so that -during recovery, we can look at the data and determine if it is in a -state before a particular log record or after a particular log record. - -In the good old days, opens were not transaction protected, so we could -do regular old opens during recovery and if the file existed, we opened -it and if it didn't (or appeared corrupt), we didn't and treated it like -a missing file. As will be discussed below in detail, our states are much -more complicated and recovery can't make such simplistic assumptions. - -Also, since we are now dealing with file system operations, we have less -control about when they actually happen and what the state of the system -can be. That is, we have to write create log records synchronously, because -the create/open system call may force a newly created (0-length) file to -disk. This file has to now be identified as being in the "being-created" -state. - -A. We used to make a number of assumptions during recovery: - -1. We could call db_open at any time and one of three things would happen: - a) the file would be opened cleanly - b) the file would not exist - c) we would encounter an error while opening the file - -Case a posed no difficulty. -In Case b, we simply spit out a warning that a file was missing and then - ignored all subsequent operations to that file. -In Case c, we reported a fatal error. - -2. We can always generate a warning if a file is missing. - -3. We never encounter NULL file names in the log. - -B. We also made some assumptions in the main-line library: - -1. If you try to open a file and it exists but is 0-length, then -someone else is trying to open it. - -2. You can write pages anywhere in a file and any non-existent pages -are 0-filled. [This breaks on Windows.] - -3. If you have proper permissions then you can always evict pages from -the buffer pool. - -4. During open, we can close the master database handle as soon as -we're done with it since all the rest of the activity will take place -on the subdatabase handle. - -In our brave new world, most of these assumptions are no longer valid. -Let's address them one at a time. - -A.1 We could call db_open at any time and one of three things would happen: - a) the file would be opened cleanly - b) the file would not exist - c) we would encounter an error while opening the file -There are now additional states. Since we are trying to make file -operations recoverable, you can now die in the middle of such an -operation and we have to be able to pick up the pieces. What this -now means is that: - - * a 0-length file can be an indication of a create in-progress - * you can have a meta-data page but no root page (of a btree) - * if a file doesn't exist, it could mean that it was just about - to be created and needs to be rolled forward. - * if you encounter an error in a file (e.g., the meta-data page - is all 0's) you could still be in mid-open. - -I have now made this all work, but it required significant changes to the -db_open code and error handling and this is the sort of change that makes -everyone nervous. - -A.2. We can always generate a warning if a file is missing. - -Now that we have a delete file method in the API, we need to make sure -that we do not generate warning messages for files that don't exist if -we see that they were explicitly deleted. - -This means that we need to save state during recovery, determine which -files were missing and were not being recreated and were not deleted and -only complain about those. - -A.3. We never encounter NULL file names in the log. - -Now that we allow tranaction protection on memory-resident files, we write -log messages for files with NULL file names. This means that our assumption -of always being able to call "db_open" on any log_register OPEN message found -in the log is no longer valid. - -B.1. If you try to open a file and it exists but is 0-length, then -someone else is trying to open it. - -As discussed for A.1, this is no longer true. It may be instead that you -are in the process of recovering a create. - -B.2. You can write pages anywhere in a file and any non-existent pages -are 0-filled. - -It turns out that this is not true on Windows. This means that places -we do group allocation (hash) must explicitly allocate each page, because -we can't count on recognizing the uninitialized pages later. - -B.3. If you have proper permissions then you can always evict pages from -the buffer pool. - -In the brave new world though, files can be deleted and they may -have pages in the mpool. If you later try to evict these, you -discover that the file doesn't exist. We'd get here when we had -to dirty pages during a remove operation. - -B.4. You can close files any time you want. - -However, if the file takes part in the open/remove transaction, -then we had better not close it until after the transaction -commits/aborts, because we need to be able to get our hands on the -dbp and the open happened in a different transaction. - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -Design for recovering file create and delete in the presence of subdatabases. - -Assumptions: - Remove the O_TRUNCATE flag. - Single-thread all open/create/delete operations. - (Well, almost all; we'll optimize opens without DB_CREATE set.) - The reasoning for this is that with two simultaneous - open/creaters, during recovery, we cannot identify which - transaction successfully created files and therefore cannot - recovery correctly. - File system creates/deletes are synchronous - Once the file is open, subdatabase creates look like regular - get/put operations and a metadata page creation. - -There are 4 cases to deal with: - 1. Open/create file - 2. Open/create subdatabase - 3. Delete - 4. Recovery records - - __db_fileopen_recover - __db_metapage_recover - __db_delete_recover - existing c_put and c_get routines for subdatabase creation - - Note that the open/create of the file and the open/create of the - subdatabase need to be in the same transaction. - -1. Open/create (full file and subdb version) - -If create - LOCK_FILEOP - txn_begin - log create message (open message below) - do file system open/create - if we did not create - abort transaction (before going to open_only) - if (!subdb) - set dbp->open_txn = NULL - else - txn_begin a new transaction for the subdb open - - construct meta-data page - log meta-data page (see metapage) - write the meta-data page - * It may be the case that btrees need to log both meta-data pages - and root pages. If that is the case, I believe that we can use - this same record and recovery routines for both - - txn_commit - UNLOCK_FILEOP - -2. Delete - LOCK_FILEOP - txn_begin - log delete message (delete message below) - mv file __db.file.lsn - txn_commit - unlink __db.file.lsn - UNLOCK_FILEOP - -3. Recovery Routines - -__db_fileopen_recover - if (argp->name.size == 0 - done; - - if (redo) /* Commit */ - __os_open(argp->name, DB_OSO_CREATE, argp->mode, &fh) - __os_closehandle(fh) - if (undo) /* Abort */ - if (argp->name exists) - unlink(argp->name); - -__db_metapage_recover - if (redo) - __os_open(argp->name, 0, 0, &fh) - __os_lseek(meta data page) - __os_write(meta data page) - __os_closehandle(fh); - if (undo) - done = 0; - if (argp->name exists) - if (length of argp->name != 0) - __os_open(argp->name, 0, 0, &fh) - __os_lseek(meta data page) - __os_read(meta data page) - if (read succeeds && page lsn != current_lsn) - done = 1 - __os_closehandle(fh); - if (!done) - unlink(argp->name) - -__db_delete_recover - if (redo) - Check if the backup file still exists and if so, delete it. - - if (undo) - if (__db_appname(__db.file.lsn exists)) - mv __db_appname(__db.file.lsn) __db_appname(file) - -__db_metasub_recover - /* This is like a normal recovery routine */ - Get the metadata page - if (cmp_n && redo) - copy the log page onto the page - update the lsn - make sure page gets put dirty - else if (cmp_p && undo) - update the lsn to the lsn in the log record - make sure page gets put dirty - - if the page was modified, put it back dirty - -In db.src - -# name: filename (before call to __db_appname) -# mode: file system mode -BEGIN open -DBT name DBT s -ARG mode u_int32_t o -END - -# opcode: indicate if it is a create/delete and if it is a subdatabase -# pgsize: page size on which we're going to write the meta-data page -# pgno: page number on which to write this meta-data page -# page: the actual meta-data page -# lsn: LSN of the meta-data page -- 0 for new databases, may be non-0 -# for subdatabases. - -BEGIN metapage -ARG opcode u_int32_t x -DBT name DBT s -ARG pgno db_pgno_t d -DBT page DBT s -POINTER lsn DB_LSN * lu -END - -# We do not need a subdatabase name here because removing a subdatabase -# name is simply a regular bt_delete operation from the master database. -# It will get logged normally. -# name: filename -BEGIN delete -DBT name DBT s -END - -# We also need to reclaim pages, but we can use the existing -# bt_pg_alloc routines. - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -Testing recoverability of create/delete. - -These tests are unlike other tests in that they are going to -require hooks in the library. The reason is that the create -and delete calls are internally wrapped in a transaction, so -that if the call returns, the transaction has already either -commited or aborted. Using only that interface limits what -kind of testing we can do. To match our other recovery testing -efforts, we need to add hooks to trigger aborts at particular -times in the create/delete path. - -The general recovery testing strategy is that we wish to -execute every path through every recovery routine. That -means that we try to: - catch each operation in its pre-operation state - call the recovery function with redo - call the recovery function with undo - catch each operation in its post-operation state - call the recovery function with redo - call the recovery function with undo - -In addition, there are a few critical points in the create and -delete path that we want to make sure we capture. - -1. Test Structure - -The test structure should be similar to the existing recovery -tests. We will want to have a structure in place where we -can execute different commands: - create a file/database - create a file that will contain subdatabases. - create a subdatabase - remove a subdatabase (that contains valid data) - remove a subdatabase (that does not contain any data) - remove a file that used to contain subdatabases - remove a file that contains a database - -The tricky part is capturing the state of the world at the -various points in the create/delete process. - -The critical points in the create process are: - - 1. After we've logged the create, but before we've done anything. - in db/db.c - after the open_retry - after the __crdel_fileopen_log call (and before we've - called __os_open). - - 2. Immediately after the __os_open - - 3. Immediately after each __db_log_page call - in bt_open.c - log meta-data page - log root page - in hash.c - log meta-data page - - 4. With respect to the log records above, shortly after each - log write is an memp_fput. We need to do a sync after - each memp_fput and trigger a point after that sync. - -The critical points in the remove process are: - - 1. Right after the crdel_delete_log in db/db.c - - 2. Right after the __os_rename call (below the crdel_delete_log) - - 3. After the __db_remove_callback call. - -I believe that there are the places where we'll need some sort of hook. - -2. Adding hooks to the library. - -The hooks need two components. One component is to capture the state of -the database at the hook point and the other is to trigger a txn_abort at -the hook point. The second part is fairly trivial. - -The first part requires more thought. Let me explain what we do in a -"normal" recovery test. In a normal recovery test, we save an intial -copy of the database (this copy is called init). Then we execute one -or more operations. Then, right before the commit/abort, we sync the -file, and save another copy (the afterop copy). Finally, we call txn_commit -or txn_abort, sync the file again, and save the database one last time (the -final copy). - -Then we run recovery. The first time, this should be a no-op, because -we've either committed the transaction and are checking to redo it or -we aborted the transaction, undid it on the abort and are checking to -undo it again. - -We then run recovery again on whatever database will force us through -the path that requires work. In the commit case, this means we start -with the init copy of the database and run recovery. This pushes us -through all the redo paths. In the abort case, we start with the afterop -copy which pushes us through all the undo cases. - -In some sense, we're asking the create/delete test to be more exhaustive -by defining all the trigger points, but I think that's the correct thing -to do, since the create/delete is not initiated by a user transaction. - -So, what do we have to do at the hook points? - 1. sync the file to disk. - 2. save the file itself - 3. save any files named __db_backup_name(name, &backup_name, lsn) - Since we may not know the right lsns, I think we should save - every file of the form __db.name.0xNNNNNNNN.0xNNNNNNNN into - some temporary files from which we can restore it to run - recovery. - -3. Putting it all together - -So, the three pieces are writing the test structure, putting in the hooks -and then writing the recovery portions so that we restore the right thing -that the hooks saved in order to initiate recovery. - -Some of the technical issues that need to be solved are: - How does the hook code become active (i.e., we don't - want it in there normally, but it's got to be - there when you configure for testing)? - How do you (the test) tell the library that you want a - particular hook to abort? - How do you (the test) tell the library that you want the - hook code doing its copies (do we really want - *every* test doing these copies during testing? - Maybe it's not a big deal, but maybe it is; we - should at least think about it). diff --git a/db/db/crdel.src b/db/db/crdel.src index 1992dd152..8c1050986 100644 --- a/db/db/crdel.src +++ b/db/db/crdel.src @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: crdel.src,v 12.6 2006/08/24 14:45:15 bostic Exp $ + * $Id: crdel.src,v 12.8 2007/05/17 15:14:56 bostic Exp $ */ PREFIX __crdel diff --git a/db/db/crdel_auto.c b/db/db/crdel_auto.c index ab7f528a9..3122cf174 100644 --- a/db/db/crdel_auto.c +++ b/db/db/crdel_auto.c @@ -158,6 +158,7 @@ __crdel_metasub_log(dbp, txnp, ret_lsnp, flags, pgno, page, lsn) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -167,10 +168,9 @@ __crdel_metasub_log(dbp, txnp, ret_lsnp, flags, pgno, page, lsn) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -388,6 +388,7 @@ __crdel_inmem_create_log(dbenv, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -397,10 +398,9 @@ __crdel_inmem_create_log(dbenv, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -621,6 +621,7 @@ __crdel_inmem_rename_log(dbenv, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -630,10 +631,9 @@ __crdel_inmem_rename_log(dbenv, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -838,6 +838,7 @@ __crdel_inmem_remove_log(dbenv, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -847,10 +848,9 @@ __crdel_inmem_remove_log(dbenv, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); diff --git a/db/db/crdel_rec.c b/db/db/crdel_rec.c index 43f9c4f2c..908bc1346 100644 --- a/db/db/crdel_rec.c +++ b/db/db/crdel_rec.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: crdel_rec.c,v 12.13 2006/08/24 14:45:15 bostic Exp $ + * $Id: crdel_rec.c,v 12.21 2007/06/13 18:21:30 ubell Exp $ */ #include "db_config.h" @@ -40,7 +39,6 @@ __crdel_metasub_recover(dbenv, dbtp, lsnp, op, info) int cmp_p, ret, t_ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__crdel_metasub_print); REC_INTRO(__crdel_metasub_read, 0, 0); @@ -62,7 +60,7 @@ __crdel_metasub_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); memcpy(pagep, argp->page.data, argp->page.size); LSN(pagep) = *lsnp; @@ -73,8 +71,8 @@ __crdel_metasub_recover(dbenv, dbtp, lsnp, op, info) */ if (F_ISSET(file_dbp, DB_AM_INMEM) && argp->pgno == PGNO_BASE_MD && - (ret = __db_meta_setup(file_dbp->dbenv, - file_dbp, file_dbp->dname, (DBMETA *)pagep, 0, 1)) != 0) + (ret = __db_meta_setup(file_dbp->dbenv, file_dbp, + file_dbp->dname, (DBMETA *)pagep, 0, DB_CHK_META)) != 0) goto out; } else if (DB_UNDO(op)) { /* @@ -89,14 +87,15 @@ __crdel_metasub_recover(dbenv, dbtp, lsnp, op, info) * freed. Opening the subdb will have reinitialized the * page, but not the lsn. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); LSN(pagep) = argp->lsn; } done: *lsnp = argp->prev_lsn; ret = 0; -out: if (pagep != NULL && (t_ret = __memp_fput(mpf, pagep, 0)) != 0 && +out: if (pagep != NULL && + (t_ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; @@ -144,7 +143,7 @@ __crdel_inmem_create_recover(dbenv, dbtp, lsnp, op, info) * tmp file. */ if (ret != 0) { - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) goto out; F_SET(dbp, DB_AM_RECOVER | DB_AM_INMEM); @@ -167,14 +166,14 @@ __crdel_inmem_create_recover(dbenv, dbtp, lsnp, op, info) goto out; dbp->preserve_fid = 1; MAKE_INMEM(dbp); - if ((ret = __db_dbenv_setup(dbp, + if ((ret = __db_env_setup(dbp, NULL, NULL, argp->name.data, TXN_INVALID, 0)) != 0) goto out; - ret = __db_dbenv_mpool(dbp, argp->name.data, 0); + ret = __db_env_mpool(dbp, argp->name.data, 0); if (ret == ENOENT) { dbp->pgsize = argp->pgsize; - if ((ret = __db_dbenv_mpool(dbp, + if ((ret = __db_env_mpool(dbp, argp->name.data, DB_CREATE)) != 0) goto out; } else if (ret != 0) @@ -196,9 +195,8 @@ __crdel_inmem_create_recover(dbenv, dbtp, lsnp, op, info) out: if (dbp != NULL) { t_ret = 0; - if (DB_UNDO(op)) - t_ret = __db_refresh(dbp, NULL, DB_NOSYNC, NULL, 0); - else if (do_close || ret != 0) + + if (do_close || ret != 0) t_ret = __db_close(dbp, NULL, DB_NOSYNC); if (t_ret != 0 && ret == 0) ret = t_ret; diff --git a/db/db/db.c b/db/db/db.c index e7975687a..6b2a93e6c 100644 --- a/db/db/db.c +++ b/db/db/db.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -36,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db.c,v 12.42 2006/09/19 15:06:58 bostic Exp $ + * $Id: db.c,v 12.70 2007/06/13 18:57:42 bostic Exp $ */ #include "db_config.h" @@ -56,9 +55,9 @@ static int __db_disassociate __P((DB *)); #ifdef CONFIG_TEST -static void __db_makecopy __P((DB_ENV *, const char *, const char *)); -static int __db_testdocopy __P((DB_ENV *, const char *)); -static int __qam_testdocopy __P((DB *, const char *)); +static int __db_makecopy __P((DB_ENV *, const char *, const char *)); +static int __db_testdocopy __P((DB_ENV *, const char *)); +static int __qam_testdocopy __P((DB *, const char *)); #endif /* @@ -88,7 +87,7 @@ __db_master_open(subdbp, txn, name, flags, mode, dbpp) *dbpp = NULL; /* Open up a handle on the main database. */ - if ((ret = db_create(&dbp, subdbp->dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, subdbp->dbenv, 0)) != 0) return (ret); /* @@ -196,7 +195,7 @@ __db_master_update(mdbp, sdbp, txn, subdb, type, action, newname, flags) memset(&data, 0, sizeof(data)); F_SET(&data, DB_DBT_MALLOC); - ret = __db_c_get(dbc, &key, &data, + ret = __dbc_get(dbc, &key, &data, DB_SET | ((STD_LOCKING(dbc) && modify) ? DB_RMW : 0)); /* @@ -219,7 +218,7 @@ __db_master_update(mdbp, sdbp, txn, subdb, type, action, newname, flags) * Delete the subdatabase entry first; if this fails, * we don't want to touch the actual subdb pages. */ - if ((ret = __db_c_del(dbc, 0)) != 0) + if ((ret = __dbc_del(dbc, 0)) != 0) goto err; /* @@ -273,12 +272,12 @@ __db_master_update(mdbp, sdbp, txn, subdb, type, action, newname, flags) /* * We don't actually care what the meta page of the potentially- - * overwritten DB is; we just care about existence. + * overwritten DB is; we just care about existence. */ memset(&ndata, 0, sizeof(ndata)); F_SET(&ndata, DB_DBT_USERMEM | DB_DBT_PARTIAL); - if ((ret = __db_c_get(ndbc, &key, &ndata, DB_SET)) == 0) { + if ((ret = __dbc_get(ndbc, &key, &ndata, DB_SET)) == 0) { /* A subdb called newname exists. Bail. */ ret = EEXIST; __db_errx(dbenv, "rename: database %s exists", newname); @@ -287,18 +286,18 @@ __db_master_update(mdbp, sdbp, txn, subdb, type, action, newname, flags) goto err; /* - * Now do the put first; we don't want to lose our - * sole reference to the subdb. Use the second cursor - * so that the first one continues to point to the old record. + * Now do the put first; we don't want to lose our only + * reference to the subdb. Use the second cursor so the + * first one continues to point to the old record. */ - if ((ret = __db_c_put(ndbc, &key, &data, DB_KEYFIRST)) != 0) + if ((ret = __dbc_put(ndbc, &key, &data, DB_KEYFIRST)) != 0) goto err; - if ((ret = __db_c_del(dbc, 0)) != 0) { + if ((ret = __dbc_del(dbc, 0)) != 0) { /* * If the delete fails, try to delete the record * we just put, in case we're not txn-protected. */ - (void)__db_c_del(ndbc, 0); + (void)__dbc_del(ndbc, 0); goto err; } @@ -347,7 +346,7 @@ __db_master_update(mdbp, sdbp, txn, subdb, type, action, newname, flags) memset(&ndata, 0, sizeof(ndata)); ndata.data = &t_pgno; ndata.size = sizeof(db_pgno_t); - if ((ret = __db_c_put(dbc, &key, &ndata, DB_KEYLAST)) != 0) + if ((ret = __dbc_put(dbc, &key, &ndata, DB_KEYLAST)) != 0) goto err; F_SET(sdbp, DB_AM_CREATED); break; @@ -358,30 +357,30 @@ done: /* * If we allocated a page: if we're successful, mark the page dirty * and return it to the cache, otherwise, discard/free it. */ - if (p != NULL && - (t_ret = __memp_fput(mdbp->mpf, p, 0)) != 0 && ret == 0) + if (p != NULL && (t_ret = + __memp_fput(mdbp->mpf, p, dbc->priority)) != 0 && ret == 0) ret = t_ret; /* Discard the cursor(s) and data. */ if (data.data != NULL) __os_ufree(dbenv, data.data); - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; - if (ndbc != NULL && (t_ret = __db_c_close(ndbc)) != 0 && ret == 0) + if (ndbc != NULL && (t_ret = __dbc_close(ndbc)) != 0 && ret == 0) ret = t_ret; return (ret); } /* - * __db_dbenv_setup -- + * __db_env_setup -- * Set up the underlying environment during a db_open. * - * PUBLIC: int __db_dbenv_setup __P((DB *, + * PUBLIC: int __db_env_setup __P((DB *, * PUBLIC: DB_TXN *, const char *, const char *, u_int32_t, u_int32_t)); */ int -__db_dbenv_setup(dbp, txn, fname, dname, id, flags) +__db_env_setup(dbp, txn, fname, dname, id, flags) DB *dbp; DB_TXN *txn; const char *fname, *dname; @@ -410,7 +409,7 @@ __db_dbenv_setup(dbp, txn, fname, dname, id, flags) /* Join the underlying cache. */ if ((!F_ISSET(dbp, DB_AM_INMEM) || dname == NULL) && - (ret = __db_dbenv_mpool(dbp, fname, flags)) != 0) + (ret = __db_env_mpool(dbp, fname, flags)) != 0) return (ret); /* We may need a per-thread mutex. */ @@ -425,6 +424,9 @@ __db_dbenv_setup(dbp, txn, fname, dname, id, flags) * still need an FNAME struct, so LOGGING_ON is the correct macro. */ if (LOGGING_ON(dbenv) && dbp->log_filename == NULL && +#if !defined(DEBUG_ROP) && !defined(DEBUG_WOP) && !defined(DIAGNOSTIC) + (txn != NULL || F_ISSET(dbp, DB_AM_RECOVER)) && +#endif (ret = __dbreg_setup(dbp, F_ISSET(dbp, DB_AM_INMEM) ? dname : fname, id)) != 0) return (ret); @@ -434,6 +436,9 @@ __db_dbenv_setup(dbp, txn, fname, dname, id, flags) * that already did so, then assign this dbp a log fileid. */ if (DBENV_LOGGING(dbenv) && !F_ISSET(dbp, DB_AM_RECOVER) && +#if !defined(DEBUG_ROP) && !defined(DEBUG_WOP) && !defined(DIAGNOSTIC) + txn != NULL && +#endif #if !defined(DEBUG_ROP) !F_ISSET(dbp, DB_AM_RDONLY) && #endif @@ -493,13 +498,13 @@ __db_dbenv_setup(dbp, txn, fname, dname, id, flags) } /* - * __db_dbenv_mpool -- + * __db_env_mpool -- * Set up the underlying environment cache during a db_open. * - * PUBLIC: int __db_dbenv_mpool __P((DB *, const char *, u_int32_t)); + * PUBLIC: int __db_env_mpool __P((DB *, const char *, u_int32_t)); */ int -__db_dbenv_mpool(dbp, fname, flags) +__db_env_mpool(dbp, fname, flags) DB *dbp; const char *fname; u_int32_t flags; @@ -514,7 +519,9 @@ __db_dbenv_mpool(dbp, fname, flags) u_int32_t clear_len; dbenv = dbp->dbenv; - lsn_off = 0; + + /* The LSN is the first entry on a DB page, byte offset 0. */ + lsn_off = F_ISSET(dbp, DB_AM_NOT_DURABLE) ? DB_LSN_OFF_NOTSET : 0; /* It's possible that this database is already open. */ if (F_ISSET(dbp, DB_AM_OPEN_CALLED)) @@ -734,6 +741,7 @@ __db_refresh(dbp, txn, flags, deferred_closep, reuse) DBC *dbc; DB_ENV *dbenv; DB_LOCKREQ lreq; + DB_LOCKER *locker; REGENV *renv; REGINFO *infop; u_int32_t save_flags; @@ -748,6 +756,13 @@ __db_refresh(dbp, txn, flags, deferred_closep, reuse) else renv = NULL; + /* + * If this dbp is not completely open, avoid trapping by trying to + * sync without an mpool file. + */ + if (dbp->mpf == NULL) + LF_SET(DB_NOSYNC); + /* If never opened, or not currently open, it's easy. */ if (!F_ISSET(dbp, DB_AM_OPEN_CALLED)) goto never_opened; @@ -790,14 +805,14 @@ __db_refresh(dbp, txn, flags, deferred_closep, reuse) */ resync = TAILQ_FIRST(&dbp->active_queue) == NULL ? 0 : 1; while ((dbc = TAILQ_FIRST(&dbp->active_queue)) != NULL) - if ((t_ret = __db_c_close(dbc)) != 0) { + if ((t_ret = __dbc_close(dbc)) != 0) { if (ret == 0) ret = t_ret; break; } while ((dbc = TAILQ_FIRST(&dbp->free_queue)) != NULL) - if ((t_ret = __db_c_destroy(dbc)) != 0) { + if ((t_ret = __dbc_destroy(dbc)) != 0) { if (ret == 0) ret = t_ret; break; @@ -831,17 +846,17 @@ __db_refresh(dbp, txn, flags, deferred_closep, reuse) never_opened: /* - * At this point, we haven't done anything to render the DB - * handle unusable, at least by a transaction abort. Take the - * opportunity now to log the file close. If this log fails - * and we're in a transaction, we have to bail out of the attempted - * close; we'll need a dbp in order to successfully abort the - * transaction, and we can't conjure a new one up because we haven't - * gotten out the dbreg_register record that represents the close. - * In this case, we put off actually closing the dbp until we've - * performed the abort. + * At this point, we haven't done anything to render the DB handle + * unusable, at least by a transaction abort. Take the opportunity + * now to log the file close if we have initialized the logging + * information. If this log fails and we're in a transaction, + * we have to bail out of the attempted close; we'll need a dbp in + * order to successfully abort the transaction, and we can't conjure + * a new one up because we haven't gotten out the dbreg_register + * record that represents the close. In this case, we put off + * actually closing the dbp until we've performed the abort. */ - if (!reuse && LOGGING_ON(dbp->dbenv)) { + if (!reuse && LOGGING_ON(dbp->dbenv) && dbp->log_filename != NULL) { /* * Discard the log file id, if any. We want to log the close * if and only if this is not a recovery dbp or a client dbp, @@ -849,9 +864,13 @@ never_opened: */ DB_ASSERT(dbenv, renv != NULL); if (F_ISSET(dbp, DB_AM_RECOVER) || IS_REP_CLIENT(dbenv) || - dbp->timestamp != renv->rep_timestamp) - t_ret = __dbreg_revoke_id(dbp, 0, DB_LOGFILEID_INVALID); - else { + dbp->timestamp != renv->rep_timestamp) { + if ((t_ret = __dbreg_revoke_id(dbp, + 0, DB_LOGFILEID_INVALID)) == 0 && ret == 0) + ret = t_ret; + if ((t_ret = __dbreg_teardown(dbp)) != 0 && ret == 0) + ret = t_ret; + } else { if ((t_ret = __dbreg_close_id(dbp, txn, DBREG_CLOSE)) != 0 && txn != NULL) { /* @@ -886,12 +905,6 @@ never_opened: */ } - if (ret == 0) - ret = t_ret; - - /* Discard the log FNAME. */ - if ((t_ret = __dbreg_teardown(dbp)) != 0 && ret == 0) - ret = t_ret; } /* Close any handle we've been holding since the open. */ @@ -969,21 +982,25 @@ never_opened: * access-method specific data. */ - if (!reuse && dbp->lid != DB_LOCK_INVALIDID) { + if (!reuse && dbp->locker != NULL) { /* We may have pending trade operations on this dbp. */ + if (txn == NULL) + txn = dbp->cur_txn; if (IS_REAL_TXN(txn)) - __txn_remlock(dbenv, txn, &dbp->handle_lock, dbp->lid); + __txn_remlock(dbenv, + txn, &dbp->handle_lock, dbp->locker); /* We may be holding the handle lock; release it. */ lreq.op = DB_LOCK_PUT_ALL; lreq.obj = NULL; if ((t_ret = __lock_vec(dbenv, - dbp->lid, 0, &lreq, 1, NULL)) != 0 && ret == 0) + dbp->locker, 0, &lreq, 1, NULL)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __lock_id_free(dbenv, dbp->lid)) != 0 && ret == 0) + if ((t_ret = + __lock_id_free(dbenv, dbp->locker)) != 0 && ret == 0) ret = t_ret; - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; LOCK_INIT(dbp->handle_lock); } @@ -993,10 +1010,13 @@ never_opened: */ if (LOCKING_ON(dbenv) && F_ISSET(dbp, DB_AM_INMEM) && !dbp->preserve_fid && - *(u_int32_t *)dbp->fileid != DB_LOCK_INVALIDID && - (t_ret = __lock_id_free(dbenv, *(u_int32_t *)dbp->fileid)) != 0 && - ret == 0) - ret = t_ret; + *(u_int32_t *)dbp->fileid != DB_LOCK_INVALIDID) { + if ((t_ret = __lock_getlocker(dbenv->lk_handle, + *(u_int32_t *)dbp->fileid, 0, &locker)) == 0) + t_ret = __lock_id_free(dbenv, locker); + if (ret == 0) + ret = t_ret; + } if (reuse) { /* @@ -1035,7 +1055,10 @@ never_opened: dbp->type = DB_UNKNOWN; - /* Discard the thread mutex. */ + /* + * The thread mutex may have been invalidated in __dbreg_close_id if the + * fname refcount did not go to 0. If not, discard the thread mutex. + */ if ((t_ret = __mutex_free(dbenv, &dbp->mutex)) != 0 && ret == 0) ret = t_ret; @@ -1066,8 +1089,9 @@ never_opened: memset(dbp->fileid, 0, sizeof(dbp->fileid)); dbp->adj_fileid = 0; dbp->meta_pgno = 0; - dbp->cur_lid = DB_LOCK_INVALIDID; - dbp->associate_lid = DB_LOCK_INVALIDID; + dbp->cur_locker = NULL; + dbp->cur_txn = NULL; + dbp->associate_locker = NULL; dbp->cl_id = 0; dbp->open_flags = 0; @@ -1087,6 +1111,45 @@ never_opened: return (ret); } +/* + * __db_disassociate -- + * Destroy the association between a given secondary and its primary. + */ +static int +__db_disassociate(sdbp) + DB *sdbp; +{ + DBC *dbc; + int ret, t_ret; + + ret = 0; + + sdbp->s_callback = NULL; + sdbp->s_primary = NULL; + sdbp->get = sdbp->stored_get; + sdbp->close = sdbp->stored_close; + + /* + * Complain, but proceed, if we have any active cursors. (We're in + * the middle of a close, so there's really no turning back.) + */ + if (sdbp->s_refcnt != 1 || + TAILQ_FIRST(&sdbp->active_queue) != NULL || + TAILQ_FIRST(&sdbp->join_queue) != NULL) { + __db_errx(sdbp->dbenv, + "Closing a primary DB while a secondary DB has active cursors is unsafe"); + ret = EINVAL; + } + sdbp->s_refcnt = 0; + + while ((dbc = TAILQ_FIRST(&sdbp->free_queue)) != NULL) + if ((t_ret = __dbc_destroy(dbc)) != 0 && ret == 0) + ret = t_ret; + + F_CLR(sdbp, DB_AM_SECONDARY); + return (ret); +} + /* * __db_log_page * Log a meta-data or root page during a subdatabase create operation. @@ -1127,10 +1190,10 @@ __db_log_page(dbp, txn, lsn, pgno, page) * PUBLIC: const char *, DB_TXN *, char **)); */ #undef BACKUP_PREFIX -#define BACKUP_PREFIX "__db" +#define BACKUP_PREFIX "__db." -#undef MAX_LSN_TO_TEXT -#define MAX_LSN_TO_TEXT 17 +#undef MAX_INT_TO_HEX +#define MAX_INT_TO_HEX 8 int __db_backup_name(dbenv, name, txn, backup) @@ -1139,34 +1202,29 @@ __db_backup_name(dbenv, name, txn, backup) DB_TXN *txn; char **backup; { - DB_LSN lsn; + u_int32_t id; size_t len; int ret; char *p, *retp; + *backup = NULL; + /* * Part of the name may be a full path, so we need to make sure that * we allocate enough space for it, even in the case where we don't * use the entire filename for the backup name. */ - len = strlen(name) + strlen(BACKUP_PREFIX) + 1 + MAX_LSN_TO_TEXT; + len = strlen(name) + strlen(BACKUP_PREFIX) + 2 * MAX_INT_TO_HEX + 1; if ((ret = __os_malloc(dbenv, len, &retp)) != 0) return (ret); /* - * Create the name. Backup file names are in one of three forms: - * - * In a transactional env: __db.LSN(8).LSN(8) - * and - * In VXWORKS (where we want 8.3 support) - * and - * in any other non-transactional env: __db.FILENAME - * - * If the transaction doesn't have a current LSN, we write a dummy - * log record to force it, so we ensure all tmp names are unique. + * Create the name. Backup file names are in one of 2 forms: in a + * transactional env "__db.TXNID.ID", where ID is a random number, + * and in any other env "__db.FILENAME". * * In addition, the name passed may contain an env-relative path. - * In that case, put the __db. in the right place (in the last + * In that case, put the "__db." in the right place (in the last * component of the pathname). * * There are four cases here: @@ -1176,102 +1234,26 @@ __db_backup_name(dbenv, name, txn, backup) * 4. multi-component path + transaction */ p = __db_rpath(name); - if (!IS_REAL_TXN(txn)) { -#ifdef HAVE_VXWORKS - { int i, n; - /* On VxWorks we must support 8.3 names. */ - if (p == NULL) /* Case 1. */ - n = snprintf(retp, - len, "%s%.4s.tmp", BACKUP_PREFIX, name); - else /* Case 3. */ - n = snprintf(retp, len, "%.*s%s%.4s.tmp", - (int)(p - name) + 1, name, BACKUP_PREFIX, p + 1); - - /* - * Overwrite "." in the characters copied from the name. - * If we backup 8 characters from the end, we're guaranteed - * to a) include the four bytes we copied from the name - * and b) not run off the beginning of the string. - */ - for (i = 0, p = (retp + n) - 8; i < 4; p++, i++) - if (*p == '.') - *p = '_'; - } -#else - if (p == NULL) /* Case 1. */ - snprintf(retp, len, "%s.%s", BACKUP_PREFIX, name); - else /* Case 3. */ - snprintf(retp, len, "%.*s%s.%s", - (int)(p - name) + 1, name, BACKUP_PREFIX, p + 1); -#endif - } else { - lsn = ((TXN_DETAIL *)txn->td)->last_lsn; - if (IS_ZERO_LSN(lsn)) { - /* - * Write dummy log record. The two choices for dummy - * log records are __db_noop_log and __db_debug_log; - * unfortunately __db_noop_log requires a valid dbp, - * and we aren't guaranteed to be able to pass one in - * here. - */ - if ((ret = __db_debug_log(dbenv, - txn, &lsn, 0, NULL, 0, NULL, NULL, 0)) != 0) { - __os_free(dbenv, retp); - return (ret); - } - } - + if (IS_REAL_TXN(txn)) { + __os_unique_id(dbenv, &id); if (p == NULL) /* Case 2. */ - snprintf(retp, len, - "%s.%x.%x", BACKUP_PREFIX, lsn.file, lsn.offset); + snprintf(retp, len, "%s%x.%x", + BACKUP_PREFIX, txn->txnid, id); else /* Case 4. */ snprintf(retp, len, "%.*s%x.%x", - (int)(p - name) + 1, name, lsn.file, lsn.offset); + (int)(p - name) + 1, name, txn->txnid, id); + } else { + if (p == NULL) /* Case 1. */ + snprintf(retp, len, "%s%s", BACKUP_PREFIX, name); + else /* Case 3. */ + snprintf(retp, len, "%.*s%s%s", + (int)(p - name) + 1, name, BACKUP_PREFIX, p + 1); } *backup = retp; return (0); } -/* - * __db_disassociate -- - * Destroy the association between a given secondary and its primary. - */ -static int -__db_disassociate(sdbp) - DB *sdbp; -{ - DBC *dbc; - int ret, t_ret; - - ret = 0; - - sdbp->s_callback = NULL; - sdbp->s_primary = NULL; - sdbp->get = sdbp->stored_get; - sdbp->close = sdbp->stored_close; - - /* - * Complain, but proceed, if we have any active cursors. (We're in - * the middle of a close, so there's really no turning back.) - */ - if (sdbp->s_refcnt != 1 || - TAILQ_FIRST(&sdbp->active_queue) != NULL || - TAILQ_FIRST(&sdbp->join_queue) != NULL) { - __db_errx(sdbp->dbenv, - "Closing a primary DB while a secondary DB has active cursors is unsafe"); - ret = EINVAL; - } - sdbp->s_refcnt = 0; - - while ((dbc = TAILQ_FIRST(&sdbp->free_queue)) != NULL) - if ((t_ret = __db_c_destroy(dbc)) != 0 && ret == 0) - ret = t_ret; - - F_CLR(sdbp, DB_AM_SECONDARY); - return (ret); -} - #ifdef CONFIG_TEST /* * __db_testcopy @@ -1337,7 +1319,6 @@ __qam_testdocopy(dbp, name) /* * __db_testdocopy * Create a copy of all backup files and our "main" DB. - * */ static int __db_testdocopy(dbenv, name) @@ -1346,145 +1327,146 @@ __db_testdocopy(dbenv, name) { size_t len; int dircnt, i, ret; - char *backup, *copy, *dir, **namesp, *p, *real_name; + char *copy, **namesp, *p, *real_name; dircnt = 0; - copy = backup = NULL; + copy = NULL; namesp = NULL; - /* Get the real backing file name. */ + /* Create the real backing file name. */ if ((ret = __db_appname(dbenv, DB_APP_DATA, name, 0, NULL, &real_name)) != 0) return (ret); /* - * Maximum size of file, including adding a ".afterop". + * !!! + * There are tests that attempt to copy non-existent files. I'd guess + * it's a testing bug, but I don't have time to figure it out. Block + * the case here. */ - len = strlen(real_name) + - strlen(BACKUP_PREFIX) + 1 + MAX_LSN_TO_TEXT + 9; + if (__os_exists(dbenv, real_name, NULL) != 0) { + __os_free(dbenv, real_name); + return (0); + } + /* + * Copy the file itself. + * + * Allocate space for the file name, including adding an ".afterop" and + * trailing nul byte. + */ + len = strlen(real_name) + sizeof(".afterop"); if ((ret = __os_malloc(dbenv, len, ©)) != 0) goto err; - - if ((ret = __os_malloc(dbenv, len, &backup)) != 0) + snprintf(copy, len, "%s.afterop", real_name); + if ((ret = __db_makecopy(dbenv, real_name, copy)) != 0) goto err; /* - * First copy the file itself. + * Get the directory path to call __os_dirlist(). */ - snprintf(copy, len, "%s.afterop", real_name); - __db_makecopy(dbenv, real_name, copy); - - if ((ret = __os_strdup(dbenv, real_name, &dir)) != 0) + if ((p = __db_rpath(real_name)) != NULL) + *p = '\0'; + if ((ret = __os_dirlist(dbenv, real_name, &namesp, &dircnt)) != 0) goto err; - __os_free(dbenv, real_name); - real_name = NULL; /* - * Create the name. Backup file names are of the form: + * Walk the directory looking for backup files. Backup file names in + * transactional environments are of the form: * - * __db.name.0x[lsn-file].0x[lsn-offset] - * - * which guarantees uniqueness. We want to look for the - * backup name, followed by a '.0x' (so that if they have - * files named, say, 'a' and 'abc' we won't match 'abc' when - * looking for 'a'. - */ - snprintf(backup, len, "%s.%s.0x", BACKUP_PREFIX, name); - - /* - * We need the directory path to do the __os_dirlist. - */ - p = __db_rpath(dir); - if (p != NULL) - *p = '\0'; - ret = __os_dirlist(dbenv, dir, &namesp, &dircnt); -#if DIAGNOSTIC - /* - * XXX - * To get the memory guard code to work because it uses strlen and we - * just moved the end of the string somewhere sooner. This causes the - * guard code to fail because it looks at one byte past the end of the - * string. + * BACKUP_PREFIX.TXNID.ID */ - *p = '/'; -#endif - __os_free(dbenv, dir); - if (ret != 0) - goto err; for (i = 0; i < dircnt; i++) { + /* Check for a related backup file name. */ + if (strncmp( + namesp[i], BACKUP_PREFIX, sizeof(BACKUP_PREFIX) - 1) != 0) + continue; + p = namesp[i] + sizeof(BACKUP_PREFIX); + p += strspn(p, "0123456789ABCDEFabcdef"); + if (*p != '.') + continue; + ++p; + p += strspn(p, "0123456789ABCDEFabcdef"); + if (*p != '\0') + continue; + /* - * Need to check if it is a backup file for this. - * No idea what namesp[i] may be or how long, so - * must use strncmp and not memcmp. We don't want - * to use strcmp either because we are only matching - * the first part of the real file's name. We don't - * know its LSN's. + * Copy the backup file. + * + * Allocate space for the file name, including adding a + * ".afterop" and trailing nul byte. */ - if (strncmp(namesp[i], backup, strlen(backup)) == 0) { - if ((ret = __db_appname(dbenv, DB_APP_DATA, - namesp[i], 0, NULL, &real_name)) != 0) - goto err; - - /* - * This should not happen. Check that old - * .afterop files aren't around. - * If so, just move on. - */ - if (strstr(real_name, ".afterop") != NULL) { - __os_free(dbenv, real_name); - real_name = NULL; - continue; - } - snprintf(copy, len, "%s.afterop", real_name); - __db_makecopy(dbenv, real_name, copy); + if (real_name != NULL) { __os_free(dbenv, real_name); real_name = NULL; } + if ((ret = __db_appname( + dbenv, DB_APP_DATA, namesp[i], 0, NULL, &real_name)) != 0) + goto err; + if (copy != NULL) { + __os_free(dbenv, copy); + copy = NULL; + } + len = strlen(real_name) + sizeof(".afterop"); + if ((ret = __os_malloc(dbenv, len, ©)) != 0) + goto err; + snprintf(copy, len, "%s.afterop", real_name); + if ((ret = __db_makecopy(dbenv, real_name, copy)) != 0) + goto err; } -err: if (backup != NULL) - __os_free(dbenv, backup); +err: if (namesp != NULL) + __os_dirfree(dbenv, namesp, dircnt); if (copy != NULL) __os_free(dbenv, copy); - if (namesp != NULL) - __os_dirfree(dbenv, namesp, dircnt); if (real_name != NULL) __os_free(dbenv, real_name); return (ret); } -static void +static int __db_makecopy(dbenv, src, dest) DB_ENV *dbenv; const char *src, *dest; { DB_FH *rfhp, *wfhp; size_t rcnt, wcnt; + int ret; char *buf; rfhp = wfhp = NULL; - if (__os_malloc(dbenv, 1024, &buf) != 0) - return; + if ((ret = __os_malloc(dbenv, 64 * 1024, &buf)) != 0) + goto err; - if (__os_open(dbenv, - src, DB_OSO_RDONLY, __db_omode(OWNER_RW), &rfhp) != 0) + if ((ret = __os_open(dbenv, src, 0, + DB_OSO_RDONLY, __db_omode(OWNER_RW), &rfhp)) != 0) goto err; - if (__os_open(dbenv, dest, - DB_OSO_CREATE | DB_OSO_TRUNC, __db_omode(OWNER_RW), &wfhp) != 0) + if ((ret = __os_open(dbenv, dest, 0, + DB_OSO_CREATE | DB_OSO_TRUNC, __db_omode(OWNER_RW), &wfhp)) != 0) goto err; - for (;;) - if (__os_read(dbenv, rfhp, buf, 1024, &rcnt) < 0 || rcnt == 0 || - __os_write(dbenv, wfhp, buf, rcnt, &wcnt) < 0) + for (;;) { + if ((ret = + __os_read(dbenv, rfhp, buf, sizeof(buf), &rcnt)) != 0) + goto err; + if (rcnt == 0) break; + if ((ret = + __os_write(dbenv, wfhp, buf, sizeof(buf), &wcnt)) != 0) + goto err; + } -err: if (buf != NULL) + if (0) { +err: __db_err(dbenv, ret, "__db_makecopy: %s -> %s", src, dest); + } + + if (buf != NULL) __os_free(dbenv, buf); if (rfhp != NULL) (void)__os_closehandle(dbenv, rfhp); if (wfhp != NULL) (void)__os_closehandle(dbenv, wfhp); + return (ret); } #endif diff --git a/db/db/db.src b/db/db/db.src index 40ce88677..37c933e57 100644 --- a/db/db/db.src +++ b/db/db/db.src @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db.src,v 12.6 2006/08/24 14:45:15 bostic Exp $ + * $Id: db.src,v 12.9 2007/05/17 15:14:56 bostic Exp $ */ PREFIX __db @@ -139,8 +138,9 @@ END /* * pg_alloc: used to record allocating a new page. * - * meta_lsn: the meta-data page's original lsn. - * meta_pgno the meta-data page number. + * meta_lsn: the original lsn of the page reference by meta_pgno. + * meta_pgno the page pointing at the allocated page in the free list. + * If the list is unsorted this is the metadata page. * page_lsn: the allocated page's original lsn. * pgno: the page allocated. * ptype: the type of the page allocated. @@ -170,6 +170,9 @@ END /* * pg_free: used to record freeing a page. + * If we are maintaining a sorted free list (during compact) meta_pgno + * will be non-zero and refer to the page that preceeds the one we are freeing + * in the free list. Meta_lsn will then be the lsn of that page. * * pgno: the page being freed. * meta_lsn: the meta-data page's original lsn. diff --git a/db/db/db_am.c b/db/db/db_am.c index becfd8b77..2b8990c3d 100644 --- a/db/db/db_am.c +++ b/db/db/db_am.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: db_am.c,v 12.24 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_am.c,v 12.39 2007/06/13 18:21:30 ubell Exp $ */ #include "db_config.h" @@ -17,25 +16,28 @@ #include "dbinc/log.h" #include "dbinc/mp.h" #include "dbinc/qam.h" +#include "dbinc/txn.h" static int __db_append_primary __P((DBC *, DBT *, DBT *)); static int __db_secondary_get __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); +static int __dbc_set_priority __P((DBC *, DB_CACHE_PRIORITY)); +static int __dbc_get_priority __P((DBC *, DB_CACHE_PRIORITY* )); /* * __db_cursor_int -- * Internal routine to create a cursor. * - * PUBLIC: int __db_cursor_int - * PUBLIC: __P((DB *, DB_TXN *, DBTYPE, db_pgno_t, int, u_int32_t, DBC **)); + * PUBLIC: int __db_cursor_int __P((DB *, + * PUBLIC: DB_TXN *, DBTYPE, db_pgno_t, int, DB_LOCKER *, DBC **)); */ int -__db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) +__db_cursor_int(dbp, txn, dbtype, root, is_opd, locker, dbcp) DB *dbp; DB_TXN *txn; DBTYPE dbtype; db_pgno_t root; int is_opd; - u_int32_t lockerid; + DB_LOCKER *locker; DBC **dbcp; { DBC *dbc; @@ -57,6 +59,22 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) * of cursors on the queue for a single database. */ MUTEX_LOCK(dbenv, dbp->mutex); + +#ifndef HAVE_NO_DB_REFCOUNT + /* + * If this DBP is being logged then refcount the log filename + * relative to this transaction. We do this here because we have + * the dbp->mutex which protects the refcount. If we know this + * cursor will not be used in an update, we could avoid this, + * but we don't have that information. + */ + if (txn != NULL && !F_ISSET(dbp, DB_AM_RECOVER) && + dbp->log_filename != NULL && + !is_opd && locker == NULL && !IS_REP_CLIENT(dbenv) && + (ret = __txn_record_fname(dbenv, txn, dbp->log_filename)) != 0) + return (ret); +#endif + TAILQ_FOREACH(dbc, &dbp->free_queue, links) if (dbtype == dbc->dbtype) { TAILQ_REMOVE(&dbp->free_queue, dbc, links); @@ -146,15 +164,15 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) switch (dbtype) { case DB_BTREE: case DB_RECNO: - if ((ret = __bam_c_init(dbc, dbtype)) != 0) + if ((ret = __bamc_init(dbc, dbtype)) != 0) goto err; break; case DB_HASH: - if ((ret = __ham_c_init(dbc)) != 0) + if ((ret = __hamc_init(dbc)) != 0) goto err; break; case DB_QUEUE: - if ((ret = __qam_c_init(dbc)) != 0) + if ((ret = __qamc_init(dbc)) != 0) goto err; break; case DB_UNKNOWN: @@ -169,9 +187,12 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) /* Refresh the DBC structure. */ dbc->dbtype = dbtype; RESET_RET_MEM(dbc); + dbc->set_priority = __dbc_set_priority; + dbc->get_priority = __dbc_get_priority; + dbc->priority = dbp->priority; if ((dbc->txn = txn) != NULL) - dbc->locker = txn->txnid; + dbc->locker = txn->locker; else if (LOCKING_ON(dbenv)) { /* * There are certain cases in which we want to create a @@ -180,7 +201,7 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) * open cursor. * * The most obvious case is cursor duplication; when we - * call DBC->c_dup or __db_c_idup, we want to use the original + * call DBC->dup or __dbc_idup, we want to use the original * cursor's locker ID. * * Another case is when updating secondary indices. Standard @@ -194,8 +215,8 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) * ID into this function. Use this locker ID instead of * the default as the locker ID for our new cursor. */ - if (lockerid != DB_LOCK_INVALIDID) - dbc->locker = lockerid; + if (locker != NULL) + dbc->locker = locker; else { /* * If we are threaded then we need to set the @@ -203,10 +224,9 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) */ if (DB_IS_THREADED(dbp)) { dbenv->thread_id(dbenv, &pid, &tid); - __lock_set_thread_id( - (DB_LOCKER *)dbc->lref, pid, tid); + __lock_set_thread_id(dbc->lref, pid, tid); } - dbc->locker = ((DB_LOCKER *)dbc->lref)->id; + dbc->locker = (DB_LOCKER *)dbc->lref; } } @@ -215,10 +235,10 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) * if the DB is a secondary, make sure they're set properly just * in case we opened some cursors before we were associated. * - * __db_c_get is used by all access methods, so this should be safe. + * __dbc_get is used by all access methods, so this should be safe. */ if (F_ISSET(dbp, DB_AM_SECONDARY)) - dbc->c_get = __db_c_secondary_get_pp; + dbc->get = dbc->c_get = __dbc_secondary_get_pp; if (is_opd) F_SET(dbc, DBC_OPD); @@ -239,7 +259,7 @@ __db_cursor_int(dbp, txn, dbtype, root, is_opd, lockerid, dbcp) switch (dbtype) { case DB_BTREE: case DB_RECNO: - if ((ret = __bam_c_refresh(dbc)) != 0) + if ((ret = __bamc_refresh(dbc)) != 0) goto err; break; case DB_HASH: @@ -349,7 +369,7 @@ __db_put(dbp, txn, key, data, flags) /* * Secondary indices: since we've returned zero from an append * function, we've just put a record, and done so outside - * __db_c_put. We know we're not a secondary-- the interface + * __dbc_put. We know we're not a secondary-- the interface * prevents puts on them--but we may be a primary. If so, * update our secondary indices appropriately. * @@ -376,12 +396,12 @@ __db_put(dbp, txn, key, data, flags) } if (ret == 0) - ret = __db_c_put(dbc, + ret = __dbc_put(dbc, key, data, flags == 0 ? DB_KEYLAST : flags); err: done: /* Close the cursor. */ - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -416,7 +436,7 @@ __db_del(dbp, txn, key, flags) * Walk a cursor through the key/data pairs, deleting as we go. Set * the DB_DBT_USERMEM flag, as this might be a threaded application * and the flags checking will catch us. We don't actually want the - * keys or data, set DB_DBT_ISSET. We rely on __db_c_get to clear + * keys or data, set DB_DBT_ISSET. We rely on __dbc_get to clear * this. */ memset(&data, 0, sizeof(data)); @@ -451,7 +471,7 @@ __db_del(dbp, txn, key, flags) * * !!! * Note that this is the only application-executed delete call in - * Berkeley DB that does not go through the __db_c_del function. + * Berkeley DB that does not go through the __dbc_del function. * If anything other than the delete itself (like a secondary index * update) has to happen there in a particular situation, the * conditions here should be modified not to use these optimizations. @@ -469,7 +489,7 @@ __db_del(dbp, txn, key, flags) #endif /* Fetch the first record. */ - if ((ret = __db_c_get(dbc, key, &data, f_init)) != 0) + if ((ret = __dbc_get(dbc, key, &data, f_init)) != 0) goto err; #ifdef HAVE_HASH @@ -481,19 +501,19 @@ __db_del(dbp, txn, key, flags) if ((dbp->type == DB_BTREE || dbp->type == DB_RECNO) && !F_ISSET(dbp, DB_AM_DUP)) { - ret = dbc->c_am_del(dbc); + ret = dbc->am_del(dbc); goto done; } - } else if ((ret = __db_c_get(dbc, key, &data, f_init)) != 0) + } else if ((ret = __dbc_get(dbc, key, &data, f_init)) != 0) goto err; /* Walk through the set of key/data pairs, deleting as we go. */ for (;;) { - if ((ret = __db_c_del(dbc, 0)) != 0) + if ((ret = __dbc_del(dbc, 0)) != 0) break; F_SET(key, DB_DBT_ISSET); F_SET(&data, DB_DBT_ISSET); - if ((ret = __db_c_get(dbc, key, &data, f_next)) != 0) { + if ((ret = __dbc_get(dbc, key, &data, f_next)) != 0) { if (ret == DB_NOTFOUND) ret = 0; break; @@ -502,7 +522,7 @@ __db_del(dbp, txn, key, flags) done: err: /* Discard the cursor. */ - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -560,13 +580,18 @@ __db_associate(dbp, txn, sdbp, callback, flags) { DB_ENV *dbenv; DBC *pdbc, *sdbc; - DBT skey, key, data; + DBT key, data, skey, *tskeyp; int build, ret, t_ret; + u_int32_t nskey; dbenv = dbp->dbenv; pdbc = sdbc = NULL; ret = 0; + memset(&skey, 0, sizeof(DBT)); + nskey = 0; + tskeyp = NULL; + /* * Check to see if the secondary is empty -- and thus if we should * build it -- before we link it in and risk making it show up in other @@ -586,14 +611,14 @@ __db_associate(dbp, txn, sdbp, callback, flags) memset(&data, 0, sizeof(DBT)); F_SET(&key, DB_DBT_PARTIAL | DB_DBT_USERMEM); F_SET(&data, DB_DBT_PARTIAL | DB_DBT_USERMEM); - if ((ret = __db_c_get(sdbc, &key, &data, + if ((ret = __dbc_get(sdbc, &key, &data, (STD_LOCKING(sdbc) ? DB_RMW : 0) | DB_FIRST)) == DB_NOTFOUND) { build = 1; ret = 0; } - if ((t_ret = __db_c_close(sdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; /* Reset for later error check. */ @@ -654,23 +679,33 @@ __db_associate(dbp, txn, sdbp, callback, flags) txn, dbp->type, PGNO_INVALID, 0, sdbc->locker, &pdbc)) != 0) goto err; - /* Lock out other threads, now that we have a locker ID. */ - dbp->associate_lid = sdbc->locker; + /* Lock out other threads, now that we have a locker. */ + dbp->associate_locker = sdbc->locker; memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); - while ((ret = __db_c_get(pdbc, &key, &data, DB_NEXT)) == 0) { - memset(&skey, 0, sizeof(DBT)); + while ((ret = __dbc_get(pdbc, &key, &data, DB_NEXT)) == 0) { if ((ret = callback(sdbp, &key, &data, &skey)) != 0) { if (ret == DB_DONOTINDEX) continue; goto err; } + if (F_ISSET(&skey, DB_DBT_MULTIPLE)) { +#ifdef DIAGNOSTIC + __db_check_skeyset(sdbp, &skey); +#endif + nskey = skey.size; + tskeyp = (DBT *)skey.data; + } else { + nskey = 1; + tskeyp = &skey; + } SWAP_IF_NEEDED(sdbp, &key); - if ((ret = __db_c_put(sdbc, - &skey, &key, DB_UPDATE_SECONDARY)) != 0) { - FREE_IF_NEEDED(dbenv, &skey); - goto err; + for (; nskey > 0; nskey--, tskeyp++) { + if ((ret = __dbc_put(sdbc, + tskeyp, &key, DB_UPDATE_SECONDARY)) != 0) + goto err; + FREE_IF_NEEDED(dbenv, tskeyp); } SWAP_IF_NEEDED(sdbp, &key); FREE_IF_NEEDED(dbenv, &skey); @@ -679,13 +714,17 @@ __db_associate(dbp, txn, sdbp, callback, flags) ret = 0; } -err: if (sdbc != NULL && (t_ret = __db_c_close(sdbc)) != 0 && ret == 0) +err: if (sdbc != NULL && (t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; - if (pdbc != NULL && (t_ret = __db_c_close(pdbc)) != 0 && ret == 0) + if (pdbc != NULL && (t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; - dbp->associate_lid = DB_LOCK_INVALIDID; + dbp->associate_locker = NULL; + + for (; nskey > 0; nskey--, tskeyp++) + FREE_IF_NEEDED(dbenv, tskeyp); + FREE_IF_NEEDED(dbenv, &skey); return (ret); } @@ -792,12 +831,12 @@ __db_append_primary(dbc, key, data) * correctly-constructed full data item from this partial * put is on the page waiting for us. */ - if ((ret = __db_c_idup(dbc, &pdbc, DB_POSITION)) != 0) + if ((ret = __dbc_idup(dbc, &pdbc, DB_POSITION)) != 0) return (ret); memset(&pkey, 0, sizeof(DBT)); memset(&pdata, 0, sizeof(DBT)); - if ((ret = __db_c_get(pdbc, &pkey, &pdata, DB_CURRENT)) != 0) + if ((ret = __dbc_get(pdbc, &pkey, &pdata, DB_CURRENT)) != 0) goto err; key = &pkey; @@ -808,14 +847,14 @@ __db_append_primary(dbc, key, data) * Loop through the secondary indices, putting a new item in * each that points to the appended item. * - * This is much like the loop in "step 3" in __db_c_put, so + * This is much like the loop in "step 3" in __dbc_put, so * I'm not commenting heavily here; it was unclean to excerpt * just that section into a common function, but the basic * overview is the same here. */ if ((ret = __db_s_first(dbp, &sdbp)) != 0) goto err; - for (; sdbp != NULL && ret == 0; ret = __db_s_next(&sdbp)) { + for (; sdbp != NULL && ret == 0; ret = __db_s_next(&sdbp, dbc->txn)) { memset(&skey, 0, sizeof(DBT)); if ((ret = sdbp->s_callback(sdbp, key, data, &skey)) != 0) { if (ret == DB_DONOTINDEX) @@ -843,7 +882,7 @@ __db_append_primary(dbc, key, data) if (!F_ISSET(sdbp, DB_AM_DUP)) { memset(&oldpkey, 0, sizeof(DBT)); F_SET(&oldpkey, DB_DBT_MALLOC); - ret = __db_c_get(sdbc, &skey, &oldpkey, + ret = __dbc_get(sdbc, &skey, &oldpkey, DB_SET | (STD_LOCKING(dbc) ? DB_RMW : 0)); if (ret == 0) { cmp = __bam_defcmp(sdbp, &oldpkey, key); @@ -864,19 +903,38 @@ __db_append_primary(dbc, key, data) goto err1; } - ret = __db_c_put(sdbc, &skey, key, DB_UPDATE_SECONDARY); + ret = __dbc_put(sdbc, &skey, key, DB_UPDATE_SECONDARY); err1: FREE_IF_NEEDED(dbenv, &skey); - if ((t_ret = __db_c_close(sdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; if (ret != 0) goto err; } -err: if (pdbc != NULL && (t_ret = __db_c_close(pdbc)) != 0 && ret == 0) +err: if (pdbc != NULL && (t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; - if (sdbp != NULL && (t_ret = __db_s_done(sdbp)) != 0 && ret == 0) + if (sdbp != NULL && + (t_ret = __db_s_done(sdbp, dbc->txn)) != 0 && ret == 0) ret = t_ret; return (ret); } + +static int +__dbc_set_priority(dbc, priority) + DBC *dbc; + DB_CACHE_PRIORITY priority; +{ + dbc->priority = priority; + return (0); +} + +static int +__dbc_get_priority(dbc, priority) + DBC *dbc; + DB_CACHE_PRIORITY *priority; +{ + *priority = dbc->priority; + return (0); +} diff --git a/db/db/db_auto.c b/db/db/db_auto.c index f9cdedd7f..75ed90ea2 100644 --- a/db/db/db_auto.c +++ b/db/db/db_auto.c @@ -192,6 +192,7 @@ __db_addrem_log(dbp, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -201,10 +202,9 @@ __db_addrem_log(dbp, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -492,6 +492,7 @@ __db_big_log(dbp, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -501,10 +502,9 @@ __db_big_log(dbp, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -736,6 +736,7 @@ __db_ovref_log(dbp, txnp, ret_lsnp, flags, pgno, adjust, lsn) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -745,10 +746,9 @@ __db_ovref_log(dbp, txnp, ret_lsnp, flags, pgno, adjust, lsn) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1037,6 +1037,7 @@ __db_debug_log(dbenv, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1046,10 +1047,9 @@ __db_debug_log(dbenv, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1266,6 +1266,7 @@ __db_noop_log(dbp, txnp, ret_lsnp, flags, pgno, prevlsn) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1275,10 +1276,9 @@ __db_noop_log(dbp, txnp, ret_lsnp, flags, pgno, prevlsn) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1581,6 +1581,7 @@ __db_pg_alloc_log(dbp, txnp, ret_lsnp, flags, meta_lsn, meta_pgno, page_lsn, pgn *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1590,10 +1591,9 @@ __db_pg_alloc_log(dbp, txnp, ret_lsnp, flags, meta_lsn, meta_pgno, page_lsn, pgn rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -1908,6 +1908,7 @@ __db_pg_free_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, header, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -1917,10 +1918,9 @@ __db_pg_free_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, header, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2108,6 +2108,7 @@ __db_cksum_log(dbenv, txnp, ret_lsnp, flags) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2117,10 +2118,9 @@ __db_cksum_log(dbenv, txnp, ret_lsnp, flags) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2422,6 +2422,7 @@ __db_pg_freedata_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, head *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2431,10 +2432,9 @@ __db_pg_freedata_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, head rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2647,6 +2647,7 @@ __db_pg_prepare_log(dbp, txnp, ret_lsnp, flags, pgno) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2656,10 +2657,9 @@ __db_pg_prepare_log(dbp, txnp, ret_lsnp, flags, pgno) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -2885,6 +2885,7 @@ __db_pg_new_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, header, n *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -2894,10 +2895,9 @@ __db_pg_new_log(dbp, txnp, ret_lsnp, flags, pgno, meta_lsn, meta_pgno, header, n rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -3125,6 +3125,7 @@ __db_pg_init_log(dbp, txnp, ret_lsnp, flags, pgno, header, data) *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -3134,10 +3135,9 @@ __db_pg_init_log(dbp, txnp, ret_lsnp, flags, pgno, header, data) rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); @@ -3389,6 +3389,7 @@ __db_pg_sort_log(dbp, txnp, ret_lsnp, flags, meta, meta_lsn, last_free, last_lsn *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -3398,10 +3399,9 @@ __db_pg_sort_log(dbp, txnp, ret_lsnp, flags, meta, meta_lsn, last_free, last_lsn rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); diff --git a/db/db/db_cam.c b/db/db/db_cam.c index af88d955e..24eba8bb6 100644 --- a/db/db/db_cam.c +++ b/db/db/db_cam.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_cam.c,v 12.43 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_cam.c,v 12.57 2007/06/05 11:46:24 mjc Exp $ */ #include "db_config.h" @@ -19,10 +18,10 @@ #include "dbinc/txn.h" static int __db_buildpartial __P((DB *, DBT *, DBT *, DBT *)); -static int __db_c_cleanup __P((DBC *, DBC *, int)); -static int __db_c_del_oldskey __P((DB *, DBC *, DBT *, DBT *, DBT *)); -static int __db_c_del_secondary __P((DBC *)); -static int __db_c_pget_recno __P((DBC *, DBT *, DBT *, u_int32_t)); +static int __dbc_cleanup __P((DBC *, DBC *, int)); +static int __dbc_del_oldskey __P((DB *, DBC *, DBT *, DBT *, DBT *)); +static int __dbc_del_secondary __P((DBC *)); +static int __dbc_pget_recno __P((DBC *, DBT *, DBT *, u_int32_t)); static int __db_s_count __P((DB *)); static int __db_wrlock_err __P((DB_ENV *)); @@ -50,13 +49,13 @@ static int __db_wrlock_err __P((DB_ENV *)); dbenv, &(dbc)->mylock, DB_LOCK_IWRITE, 0); /* - * __db_c_close -- - * DBC->c_close. + * __dbc_close -- + * DBC->close. * - * PUBLIC: int __db_c_close __P((DBC *)); + * PUBLIC: int __dbc_close __P((DBC *)); */ int -__db_c_close(dbc) +__dbc_close(dbc) DBC *dbc; { DB *dbp; @@ -98,7 +97,7 @@ __db_c_close(dbc) /* Call the access specific cursor close routine. */ if ((t_ret = - dbc->c_am_close(dbc, PGNO_INVALID, NULL)) != 0 && ret == 0) + dbc->am_close(dbc, PGNO_INVALID, NULL)) != 0 && ret == 0) ret = t_ret; /* @@ -143,13 +142,13 @@ __db_c_close(dbc) } /* - * __db_c_destroy -- - * Destroy the cursor, called after DBC->c_close. + * __dbc_destroy -- + * Destroy the cursor, called after DBC->close. * - * PUBLIC: int __db_c_destroy __P((DBC *)); + * PUBLIC: int __dbc_destroy __P((DBC *)); */ int -__db_c_destroy(dbc) +__dbc_destroy(dbc) DBC *dbc; { DB *dbp; @@ -173,7 +172,7 @@ __db_c_destroy(dbc) __os_free(dbenv, dbc->my_rdata.data); /* Call the access specific cursor destroy routine. */ - ret = dbc->c_am_destroy == NULL ? 0 : dbc->c_am_destroy(dbc); + ret = dbc->am_destroy == NULL ? 0 : dbc->am_destroy(dbc); /* * Release the lock id for this cursor. @@ -181,7 +180,7 @@ __db_c_destroy(dbc) if (LOCKING_ON(dbenv) && F_ISSET(dbc, DBC_OWN_LID) && (t_ret = __lock_id_free(dbenv, - ((DB_LOCKER *)dbc->lref)->id)) != 0 && ret == 0) + (DB_LOCKER *)dbc->lref)) != 0 && ret == 0) ret = t_ret; __os_free(dbenv, dbc); @@ -190,13 +189,13 @@ __db_c_destroy(dbc) } /* - * __db_c_count -- + * __dbc_count -- * Return a count of duplicate data items. * - * PUBLIC: int __db_c_count __P((DBC *, db_recno_t *)); + * PUBLIC: int __dbc_count __P((DBC *, db_recno_t *)); */ int -__db_c_count(dbc, recnop) +__dbc_count(dbc, recnop) DBC *dbc; db_recno_t *recnop; { @@ -219,30 +218,30 @@ __db_c_count(dbc, recnop) break; case DB_HASH: if (dbc->internal->opd == NULL) { - if ((ret = __ham_c_count(dbc, recnop)) != 0) + if ((ret = __hamc_count(dbc, recnop)) != 0) return (ret); break; } /* FALLTHROUGH */ case DB_BTREE: - if ((ret = __bam_c_count(dbc, recnop)) != 0) + if ((ret = __bamc_count(dbc, recnop)) != 0) return (ret); break; case DB_UNKNOWN: default: - return (__db_unknown_type(dbenv, "__db_c_count", dbc->dbtype)); + return (__db_unknown_type(dbenv, "__dbc_count", dbc->dbtype)); } return (0); } /* - * __db_c_del -- - * DBC->c_del. + * __dbc_del -- + * DBC->del. * - * PUBLIC: int __db_c_del __P((DBC *, u_int32_t)); + * PUBLIC: int __dbc_del __P((DBC *, u_int32_t)); */ int -__db_c_del(dbc, flags) +__dbc_del(dbc, flags) DBC *dbc; u_int32_t flags; { @@ -273,7 +272,7 @@ __db_c_del(dbc, flags) * delete it ourselves as well, so we can just goto done. */ if (flags != DB_UPDATE_SECONDARY && F_ISSET(dbp, DB_AM_SECONDARY)) { - ret = __db_c_del_secondary(dbc); + ret = __dbc_del_secondary(dbc); goto done; } @@ -282,7 +281,7 @@ __db_c_del(dbc, flags) * and delete any secondary keys that point at the current record. */ if (LIST_FIRST(&dbp->s_secondaries) != NULL && - (ret = __db_c_del_primary(dbc)) != 0) + (ret = __dbc_del_primary(dbc)) != 0) goto done; /* @@ -293,10 +292,10 @@ __db_c_del(dbc, flags) */ opd = dbc->internal->opd; if (opd == NULL) - ret = dbc->c_am_del(dbc); + ret = dbc->am_del(dbc); else - if ((ret = dbc->c_am_writelock(dbc)) == 0) - ret = opd->c_am_del(opd); + if ((ret = dbc->am_writelock(dbc)) == 0) + ret = opd->am_del(opd); /* * If this was an update that is supporting dirty reads @@ -320,13 +319,13 @@ done: CDB_LOCKING_DONE(dbenv, dbc); } /* - * __db_c_dup -- + * __dbc_dup -- * Duplicate a cursor * - * PUBLIC: int __db_c_dup __P((DBC *, DBC **, u_int32_t)); + * PUBLIC: int __dbc_dup __P((DBC *, DBC **, u_int32_t)); */ int -__db_c_dup(dbc_orig, dbcp, flags) +__dbc_dup(dbc_orig, dbcp, flags) DBC *dbc_orig; DBC **dbcp; u_int32_t flags; @@ -337,7 +336,7 @@ __db_c_dup(dbc_orig, dbcp, flags) dbc_n = dbc_nopd = NULL; /* Allocate a new cursor and initialize it. */ - if ((ret = __db_c_idup(dbc_orig, &dbc_n, flags)) != 0) + if ((ret = __dbc_idup(dbc_orig, &dbc_n, flags)) != 0) goto err; *dbcp = dbc_n; @@ -347,28 +346,28 @@ __db_c_dup(dbc_orig, dbcp, flags) */ if (dbc_orig->internal->opd != NULL) { if ((ret = - __db_c_idup(dbc_orig->internal->opd, &dbc_nopd, flags)) != 0) + __dbc_idup(dbc_orig->internal->opd, &dbc_nopd, flags)) != 0) goto err; dbc_n->internal->opd = dbc_nopd; } return (0); err: if (dbc_n != NULL) - (void)__db_c_close(dbc_n); + (void)__dbc_close(dbc_n); if (dbc_nopd != NULL) - (void)__db_c_close(dbc_nopd); + (void)__dbc_close(dbc_nopd); return (ret); } /* - * __db_c_idup -- - * Internal version of __db_c_dup. + * __dbc_idup -- + * Internal version of __dbc_dup. * - * PUBLIC: int __db_c_idup __P((DBC *, DBC **, u_int32_t)); + * PUBLIC: int __dbc_idup __P((DBC *, DBC **, u_int32_t)); */ int -__db_c_idup(dbc_orig, dbcp, flags) +__dbc_idup(dbc_orig, dbcp, flags) DBC *dbc_orig, **dbcp; u_int32_t flags; { @@ -399,22 +398,22 @@ __db_c_idup(dbc_orig, dbcp, flags) switch (dbc_orig->dbtype) { case DB_QUEUE: - if ((ret = __qam_c_dup(dbc_orig, dbc_n)) != 0) + if ((ret = __qamc_dup(dbc_orig, dbc_n)) != 0) goto err; break; case DB_BTREE: case DB_RECNO: - if ((ret = __bam_c_dup(dbc_orig, dbc_n)) != 0) + if ((ret = __bamc_dup(dbc_orig, dbc_n)) != 0) goto err; break; case DB_HASH: - if ((ret = __ham_c_dup(dbc_orig, dbc_n)) != 0) + if ((ret = __hamc_dup(dbc_orig, dbc_n)) != 0) goto err; break; case DB_UNKNOWN: default: ret = __db_unknown_type(dbp->dbenv, - "__db_c_idup", dbc_orig->dbtype); + "__dbc_idup", dbc_orig->dbtype); goto err; } } @@ -433,21 +432,22 @@ __db_c_idup(dbc_orig, dbcp, flags) DB_LOCK_IWRITE : DB_LOCK_READ, &dbc_n->mylock)) != 0) goto err; + dbc_n->priority = dbc_orig->priority; *dbcp = dbc_n; return (0); -err: (void)__db_c_close(dbc_n); +err: (void)__dbc_close(dbc_n); return (ret); } /* - * __db_c_newopd -- + * __dbc_newopd -- * Create a new off-page duplicate cursor. * - * PUBLIC: int __db_c_newopd __P((DBC *, db_pgno_t, DBC *, DBC **)); + * PUBLIC: int __dbc_newopd __P((DBC *, db_pgno_t, DBC *, DBC **)); */ int -__db_c_newopd(dbc_parent, root, oldopd, dbcp) +__dbc_newopd(dbc_parent, root, oldopd, dbcp) DBC *dbc_parent; db_pgno_t root; DBC *oldopd; @@ -474,6 +474,7 @@ __db_c_newopd(dbc_parent, root, oldopd, dbcp) dbc_parent->txn, dbtype, root, 1, dbc_parent->locker, &opd)) != 0) return (ret); + opd->priority = dbc_parent->priority; *dbcp = opd; /* @@ -488,20 +489,20 @@ __db_c_newopd(dbc_parent, root, oldopd, dbcp) * leave the main cursor in our caller with a non-NULL pointer * to a freed off-page dup cursor. */ - if (oldopd != NULL && (ret = __db_c_close(oldopd)) != 0) + if (oldopd != NULL && (ret = __dbc_close(oldopd)) != 0) return (ret); return (0); } /* - * __db_c_get -- + * __dbc_get -- * Get using a cursor. * - * PUBLIC: int __db_c_get __P((DBC *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_get __P((DBC *, DBT *, DBT *, u_int32_t)); */ int -__db_c_get(dbc_arg, key, data, flags) +__dbc_get(dbc_arg, key, data, flags) DBC *dbc_arg; DBT *key, *data; u_int32_t flags; @@ -512,6 +513,7 @@ __db_c_get(dbc_arg, key, data, flags) DB_ENV *dbenv; DB_MPOOLFILE *mpf; db_pgno_t pgno; + db_indx_t indx_off; u_int32_t multi, orig_ulen, tmp_flags, tmp_read_uncommitted, tmp_rmw; u_int8_t type; int key_small, ret, t_ret; @@ -556,7 +558,7 @@ __db_c_get(dbc_arg, key, data, flags) F_SET(dbc_arg, DBC_RMW); if (tmp_read_uncommitted) F_SET(dbc_arg, DBC_READ_UNCOMMITTED); - ret = __bam_c_rget(dbc_arg, data); + ret = __bamc_rget(dbc_arg, data); if (tmp_rmw) F_CLR(dbc_arg, DBC_RMW); if (tmp_read_uncommitted) @@ -572,9 +574,13 @@ __db_c_get(dbc_arg, key, data, flags) * application's DBT if there is a custom comparator: it might be a * partial key containing only the unique identifier. */ - if ((flags == DB_GET_BOTH || flags == DB_GET_BOTH_RANGE || - flags == DB_SET) && - ((BTREE *)dbp->bt_internal)->bt_compare == __bam_defcmp) + if ((flags == DB_GET_BOTH || + flags == DB_GET_BOTH_RANGE || flags == DB_SET) && + ((BTREE *)dbp->bt_internal)->bt_compare == __bam_defcmp +#ifdef HAVE_HASH + && ((HASH *)dbp->h_internal)->h_compare == NULL +#endif + ) F_SET(key, DB_DBT_ISSET); if (flags == DB_GET_BOTH && dbp->dup_compare == NULL) @@ -594,15 +600,16 @@ __db_c_get(dbc_arg, key, data, flags) cp = dbc_arg->internal; if (cp->opd != NULL && (flags == DB_CURRENT || flags == DB_GET_BOTHC || - flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { - if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) + flags == DB_NEXT || flags == DB_NEXT_DUP || + flags == DB_PREV || flags == DB_PREV_DUP)) { + if (tmp_rmw && (ret = dbc_arg->am_writelock(dbc_arg)) != 0) goto err; if (F_ISSET(dbc_arg, DBC_TRANSIENT)) opd = cp->opd; - else if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) + else if ((ret = __dbc_idup(cp->opd, &opd, DB_POSITION)) != 0) goto err; - switch (ret = opd->c_am_get(opd, key, data, flags, NULL)) { + switch (ret = opd->am_get(opd, key, data, flags, NULL)) { case 0: goto done; case DB_NOTFOUND: @@ -612,7 +619,7 @@ __db_c_get(dbc_arg, key, data, flags) * the parent cursor. */ if (flags == DB_NEXT || flags == DB_PREV) { - if ((ret = __db_c_close(opd)) != 0) + if ((ret = __dbc_close(opd)) != 0) goto err; opd = NULL; if (F_ISSET(dbc_arg, DBC_TRANSIENT)) @@ -624,7 +631,7 @@ __db_c_get(dbc_arg, key, data, flags) goto err; } } else if (cp->opd != NULL && F_ISSET(dbc_arg, DBC_TRANSIENT)) { - if ((ret = __db_c_close(cp->opd)) != 0) + if ((ret = __dbc_close(cp->opd)) != 0) goto err; cp->opd = NULL; } @@ -640,6 +647,7 @@ __db_c_get(dbc_arg, key, data, flags) case DB_NEXT_DUP: case DB_NEXT_NODUP: case DB_PREV: + case DB_PREV_DUP: case DB_PREV_NODUP: tmp_flags = DB_POSITION; break; @@ -658,7 +666,7 @@ __db_c_get(dbc_arg, key, data, flags) if (F_ISSET(dbc_arg, DBC_TRANSIENT)) dbc_n = dbc_arg; else { - ret = __db_c_idup(dbc_arg, &dbc_n, tmp_flags); + ret = __dbc_idup(dbc_arg, &dbc_n, tmp_flags); if (tmp_read_uncommitted) F_CLR(dbc_arg, DBC_READ_UNCOMMITTED); @@ -686,7 +694,7 @@ __db_c_get(dbc_arg, key, data, flags) } pgno = PGNO_INVALID; - ret = dbc_n->c_am_get(dbc_n, key, data, flags, &pgno); + ret = dbc_n->am_get(dbc_n, key, data, flags, &pgno); if (tmp_rmw) F_CLR(dbc_n, DBC_RMW); if (tmp_read_uncommitted) @@ -702,7 +710,7 @@ __db_c_get(dbc_arg, key, data, flags) * a new cursor and call the underlying function. */ if (pgno != PGNO_INVALID) { - if ((ret = __db_c_newopd(dbc_arg, + if ((ret = __dbc_newopd(dbc_arg, pgno, cp_n->opd, &cp_n->opd)) != 0) goto err; @@ -726,10 +734,10 @@ __db_c_get(dbc_arg, key, data, flags) tmp_flags = flags; break; default: - ret = __db_unknown_flag(dbenv, "__db_c_get", flags); + ret = __db_unknown_flag(dbenv, "__dbc_get", flags); goto err; } - if ((ret = cp_n->opd->c_am_get( + if ((ret = cp_n->opd->am_get( cp_n->opd, key, data, tmp_flags, NULL)) != 0) goto err; } @@ -790,10 +798,10 @@ done: /* F_ISSET(dbc_arg, DBC_TRANSIENT)) dbc_n = dbc_arg; else { - if ((ret = __db_c_idup(dbc_arg, + if ((ret = __dbc_idup(dbc_arg, &dbc_n, DB_POSITION)) != 0) goto err; - if ((ret = dbc_n->c_am_get(dbc_n, + if ((ret = dbc_n->am_get(dbc_n, key, data, DB_CURRENT, &pgno)) != 0) goto err; } @@ -814,13 +822,13 @@ done: /* /* * Bulk get doesn't use __db_retcopy, so data.size won't * get set up unless there is an error. Assume success - * here. This is the only call to c_am_bulk, and it avoids + * here. This is the only call to am_bulk, and it avoids * setting it exactly the same everywhere. If we have an * DB_BUFFER_SMALL error, it'll get overwritten with the * needed value. */ data->size = data->ulen; - ret = dbc_n->c_am_bulk(dbc_n, data, flags | multi); + ret = dbc_n->am_bulk(dbc_n, data, flags | multi); } else if (!F_ISSET(data, DB_DBT_ISSET)) { dbc = opd != NULL ? opd : cp_n->opd != NULL ? cp_n->opd : dbc_n; cp = dbc->internal; @@ -830,8 +838,9 @@ done: /* goto err; type = TYPE(cp->page); - ret = __db_ret(dbp, dbc->txn, cp->page, cp->indx + - (type == P_LBTREE || type == P_HASH ? O_INDX : 0), + indx_off = ((type == P_LBTREE || + type == P_HASH || type == P_HASH_UNSORTED) ? O_INDX : 0); + ret = __db_ret(dbp, dbc->txn, cp->page, cp->indx + indx_off, data, &dbc_arg->rdata->data, &dbc_arg->rdata->ulen); } @@ -852,9 +861,9 @@ err: /* Don't pass DB_DBT_ISSET back to application level, error or no. */ F_ISSET((BTREE_CURSOR *) dbc_arg->internal->opd->internal, C_DELETED)) if ((t_ret = - dbc_arg->c_am_writelock(dbc_arg)) != 0 && ret == 0) + dbc_arg->am_writelock(dbc_arg)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __db_c_cleanup( + if ((t_ret = __dbc_cleanup( dbc_arg->internal->opd, opd, ret)) != 0 && ret == 0) ret = t_ret; @@ -866,7 +875,7 @@ err: /* Don't pass DB_DBT_ISSET back to application level, error or no. */ ret = DB_BUFFER_SMALL; } - if ((t_ret = __db_c_cleanup(dbc_arg, dbc_n, ret)) != 0 && + if ((t_ret = __dbc_cleanup(dbc_arg, dbc_n, ret)) != 0 && (ret == 0 || ret == DB_BUFFER_SMALL)) ret = t_ret; @@ -876,13 +885,13 @@ err: /* Don't pass DB_DBT_ISSET back to application level, error or no. */ } /* - * __db_c_put -- + * __dbc_put -- * Put using a cursor. * - * PUBLIC: int __db_c_put __P((DBC *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_put __P((DBC *, DBT *, DBT *, u_int32_t)); */ int -__db_c_put(dbc_arg, key, data, flags) +__dbc_put(dbc_arg, key, data, flags) DBC *dbc_arg; DBT *key, *data; u_int32_t flags; @@ -891,10 +900,10 @@ __db_c_put(dbc_arg, key, data, flags) DB *dbp, *sdbp; DBC *dbc_n, *oldopd, *opd, *sdbc, *pdbc; DBT olddata, oldpkey, newdata, pkey, temppkey, tempskey; - DBT *all_skeys, *skeyp; + DBT *all_skeys, *skeyp, *tskeyp; db_pgno_t pgno; int cmp, have_oldrec, ispartial, nodel, re_pad, ret, s_count, t_ret; - u_int32_t re_len, rmw, size, tmp_flags; + u_int32_t re_len, nskey, rmw, size, tmp_flags; /* * Cursor Cleanup Note: @@ -1032,7 +1041,7 @@ __db_c_put(dbc_arg, key, data, flags) * The DB_KEYEMPTY return needs special handling -- if the * cursor is on a deleted key, we return DB_NOTFOUND. */ - ret = __db_c_get(dbc_arg, &pkey, &olddata, rmw | DB_CURRENT); + ret = __dbc_get(dbc_arg, &pkey, &olddata, rmw | DB_CURRENT); if (ret == DB_KEYEMPTY) ret = DB_NOTFOUND; if (ret != 0) @@ -1055,18 +1064,18 @@ __db_c_put(dbc_arg, key, data, flags) * specified key. Dup a cursor (so we have the same * locking info) and do a c_get. */ - if ((ret = __db_c_idup(dbc_arg, &pdbc, 0)) != 0) + if ((ret = __dbc_idup(dbc_arg, &pdbc, 0)) != 0) goto err; /* We should have gotten DB_CURRENT in step 1. */ DB_ASSERT(dbenv, flags != DB_CURRENT); - ret = __db_c_get(pdbc, &pkey, &olddata, rmw | DB_SET); + ret = __dbc_get(pdbc, &pkey, &olddata, rmw | DB_SET); if (ret == DB_KEYEMPTY || ret == DB_NOTFOUND) { nodel = 1; ret = 0; } - if ((t_ret = __db_c_close(pdbc)) != 0) + if ((t_ret = __dbc_close(pdbc)) != 0) ret = t_ret; if (ret != 0) goto err; @@ -1139,7 +1148,7 @@ __db_c_put(dbc_arg, key, data, flags) */ for (ret = __db_s_first(dbp, &sdbp), skeyp = all_skeys; sdbp != NULL && ret == 0; - ret = __db_s_next(&sdbp), ++skeyp) { + ret = __db_s_next(&sdbp, dbc_arg->txn), ++skeyp) { DB_ASSERT(dbenv, skeyp - all_skeys < s_count); /* * Don't process this secondary if the key is immutable and we @@ -1168,17 +1177,33 @@ __db_c_put(dbc_arg, key, data, flags) } /* - * If we have the old record, we can generate and remove the - * old secondary key now. We can also skip the secondary put + * Mark the secondary key DBT(s) as set -- that is, the + * callback returned 0 rather than DB_DONOTINDEX, so we have at + * least one secondary key. + */ + if (F_ISSET(skeyp, DB_DBT_MULTIPLE)) { +#ifdef DIAGNOSTIC + __db_check_skeyset(sdbp, skeyp); +#endif + for (tskeyp = (DBT *)skeyp->data, nskey = skeyp->size; + nskey > 0; nskey--, tskeyp++) + F_SET(tskeyp, DB_DBT_ISSET); + + tskeyp = (DBT *)skeyp->data; + nskey = skeyp->size; + } else { + F_SET(skeyp, DB_DBT_ISSET); + tskeyp = skeyp; + nskey = 1; + } + + /* + * If we have the old record, we can generate and remove any + * old secondary key(s) now. We can also skip the secondary put * if there is no change. */ if (have_oldrec) { - /* - * Mark that the secondary key is set -- that is, the - * callback returned 0 rather than DB_DONOTINDEX. - */ - F_SET(skeyp, DB_DBT_ISSET); - if ((ret = __db_c_del_oldskey(sdbp, dbc_arg, + if ((ret = __dbc_del_oldskey(sdbp, dbc_arg, skeyp, &pkey, &olddata)) == DB_KEYEXIST) continue; else if (ret != 0) @@ -1219,81 +1244,90 @@ __db_c_put(dbc_arg, key, data, flags) */ SWAP_IF_NEEDED(sdbp, &pkey); - /* - * There are three cases here-- - * 1) The secondary supports sorted duplicates. - * If we attempt to put a secondary/primary pair - * that already exists, that's a duplicate duplicate, - * and c_put will return DB_KEYEXIST (see __db_duperr). - * This will leave us with exactly one copy of the - * secondary/primary pair, and this is just right--we'll - * avoid deleting it later, as the old and new secondaries - * will match (since the old secondary is the dup dup - * that's already there). - * 2) The secondary supports duplicates, but they're not - * sorted. We need to avoid putting a duplicate - * duplicate, because the matching old and new secondaries - * will prevent us from deleting anything and we'll - * wind up with two secondary records that point to the - * same primary key. Do a c_get(DB_GET_BOTH); only - * do the put if the secondary doesn't exist. - * 3) The secondary doesn't support duplicates at all. - * In this case, secondary keys must be unique; if - * another primary key already exists for this - * secondary key, we have to either overwrite it or - * not put this one, and in either case we've - * corrupted the secondary index. Do a c_get(DB_SET). - * If the secondary/primary pair already exists, do - * nothing; if the secondary exists with a different - * primary, return an error; and if the secondary - * does not exist, put it. - */ - if (!F_ISSET(sdbp, DB_AM_DUP)) { - /* Case 3. */ - memset(&oldpkey, 0, sizeof(DBT)); - F_SET(&oldpkey, DB_DBT_MALLOC); - ret = __db_c_get(sdbc, - skeyp, &oldpkey, rmw | DB_SET); - if (ret == 0) { - cmp = __bam_defcmp(sdbp, &oldpkey, &pkey); - __os_ufree(dbenv, oldpkey.data); - if (cmp != 0) { - __db_errx(dbenv, "%s%s", + for (; nskey > 0 && ret == 0; nskey--, tskeyp++) { + /* Skip this key if it is already in the database. */ + if (!F_ISSET(tskeyp, DB_DBT_ISSET)) + continue; + + /* + * There are three cases here-- + * 1) The secondary supports sorted duplicates. + * If we attempt to put a secondary/primary pair + * that already exists, that's a duplicate + * duplicate, and c_put will return DB_KEYEXIST + * (see __db_duperr). This will leave us with + * exactly one copy of the secondary/primary pair, + * and this is just right--we'll avoid deleting it + * later, as the old and new secondaries will + * match (since the old secondary is the dup dup + * that's already there). + * 2) The secondary supports duplicates, but they're not + * sorted. We need to avoid putting a duplicate + * duplicate, because the matching old and new + * secondaries will prevent us from deleting + * anything and we'll wind up with two secondary + * records that point to the same primary key. Do + * a c_get(DB_GET_BOTH); only do the put if the + * secondary doesn't exist. + * 3) The secondary doesn't support duplicates at all. + * In this case, secondary keys must be unique; + * if another primary key already exists for this + * secondary key, we have to either overwrite it + * or not put this one, and in either case we've + * corrupted the secondary index. Do a + * c_get(DB_SET). If the secondary/primary pair + * already exists, do nothing; if the secondary + * exists with a different primary, return an + * error; and if the secondary does not exist, + * put it. + */ + if (!F_ISSET(sdbp, DB_AM_DUP)) { + /* Case 3. */ + memset(&oldpkey, 0, sizeof(DBT)); + F_SET(&oldpkey, DB_DBT_MALLOC); + ret = __dbc_get(sdbc, + tskeyp, &oldpkey, rmw | DB_SET); + if (ret == 0) { + cmp = __bam_defcmp(sdbp, + &oldpkey, &pkey); + __os_ufree(dbenv, oldpkey.data); + if (cmp != 0) { + __db_errx(dbenv, "%s%s", "Put results in a non-unique secondary key in an ", "index not configured to support duplicates"); - ret = EINVAL; + ret = EINVAL; + } } + if (ret != DB_NOTFOUND && ret != DB_KEYEMPTY) + break; + } else if (!F_ISSET(sdbp, DB_AM_DUPSORT)) { + /* Case 2. */ + DB_INIT_DBT(tempskey, + tskeyp->data, tskeyp->size); + DB_INIT_DBT(temppkey, + pkey.data, pkey.size); + ret = __dbc_get(sdbc, &tempskey, &temppkey, + rmw | DB_GET_BOTH); + if (ret != DB_NOTFOUND && ret != DB_KEYEMPTY) + break; } - if (ret != DB_NOTFOUND && ret != DB_KEYEMPTY) - goto skipput; - } else if (!F_ISSET(sdbp, DB_AM_DUPSORT)) { - /* Case 2. */ - memset(&tempskey, 0, sizeof(DBT)); - tempskey.data = skeyp->data; - tempskey.size = skeyp->size; - memset(&temppkey, 0, sizeof(DBT)); - temppkey.data = pkey.data; - temppkey.size = pkey.size; - ret = __db_c_get(sdbc, &tempskey, &temppkey, - rmw | DB_GET_BOTH); - if (ret != DB_NOTFOUND && ret != DB_KEYEMPTY) - goto skipput; - } - ret = __db_c_put(sdbc, skeyp, &pkey, DB_UPDATE_SECONDARY); + ret = __dbc_put(sdbc, tskeyp, &pkey, + DB_UPDATE_SECONDARY); - /* - * We don't know yet whether this was a put-overwrite that - * in fact changed nothing. If it was, we may get DB_KEYEXIST. - * This is not an error. - */ - if (ret == DB_KEYEXIST) - ret = 0; + /* + * We don't know yet whether this was a put-overwrite + * that in fact changed nothing. If it was, we may get + * DB_KEYEXIST. This is not an error. + */ + if (ret == DB_KEYEXIST) + ret = 0; + } -skipput: /* Make sure the primary key is back in native byte-order. */ + /* Make sure the primary key is back in native byte-order. */ SWAP_IF_NEEDED(sdbp, &pkey); - if ((t_ret = __db_c_close(sdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; if (ret != 0) @@ -1305,7 +1339,6 @@ skipput: /* Make sure the primary key is back in native byte-order. */ * earlier or it would be cleared in the calls above. */ F_SET(skeyp, DB_DBT_ISSET); - } if (ret != 0) goto err; @@ -1317,19 +1350,22 @@ skipput: /* Make sure the primary key is back in native byte-order. */ if (have_oldrec) goto skip_s_update; - /* If still necessary, go get the old primary key/data. (Step 4.) */ - /* See the comments in step 2. This is real familiar. */ - if ((ret = __db_c_idup(dbc_arg, &pdbc, 0)) != 0) + /* + * If still necessary, go get the old primary key/data. (Step 4.) + * + * See the comments in step 2. This is real familiar. + */ + if ((ret = __dbc_idup(dbc_arg, &pdbc, 0)) != 0) goto err; DB_ASSERT(dbenv, flags != DB_CURRENT); pkey.data = key->data; pkey.size = key->size; - ret = __db_c_get(pdbc, &pkey, &olddata, rmw | DB_SET); + ret = __dbc_get(pdbc, &pkey, &olddata, rmw | DB_SET); if (ret == DB_KEYEMPTY || ret == DB_NOTFOUND) { nodel = 1; ret = 0; } - if ((t_ret = __db_c_close(pdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; if (ret != 0) goto err; @@ -1343,7 +1379,7 @@ skipput: /* Make sure the primary key is back in native byte-order. */ for (ret = __db_s_first(dbp, &sdbp), skeyp = all_skeys; sdbp != NULL && ret == 0; - ret = __db_s_next(&sdbp), skeyp++) { + ret = __db_s_next(&sdbp, dbc_arg->txn), skeyp++) { DB_ASSERT(dbenv, skeyp - all_skeys < s_count); /* * Don't process this secondary if the key is immutable. We @@ -1353,7 +1389,7 @@ skipput: /* Make sure the primary key is back in native byte-order. */ if (FLD_ISSET(sdbp->s_assoc_flags, DB_ASSOC_IMMUTABLE_KEY)) continue; - ret = __db_c_del_oldskey(sdbp, dbc_arg, skeyp, &pkey, &olddata); + ret = __dbc_del_oldskey(sdbp, dbc_arg, skeyp, &pkey, &olddata); if (ret != 0 && ret != DB_KEYEXIST) goto err; } @@ -1389,11 +1425,11 @@ skip_s_update: goto err; } - if ((ret = dbc_arg->c_am_writelock(dbc_arg)) != 0 || - (ret = __db_c_dup(dbc_arg, &dbc_n, DB_POSITION)) != 0) + if ((ret = dbc_arg->am_writelock(dbc_arg)) != 0 || + (ret = __dbc_dup(dbc_arg, &dbc_n, DB_POSITION)) != 0) goto err; opd = dbc_n->internal->opd; - if ((ret = opd->c_am_put( + if ((ret = opd->am_put( opd, key, data, flags, NULL)) != 0) goto err; goto done; @@ -1402,13 +1438,9 @@ skip_s_update: /* * Perform an operation on the main cursor. Duplicate the cursor, * and call the underlying function. - * - * XXX: MARGO - * + */ tmp_flags = flags == DB_AFTER || flags == DB_BEFORE || flags == DB_CURRENT ? DB_POSITION : 0; - */ - tmp_flags = DB_POSITION; /* * If this cursor is going to be closed immediately, we don't @@ -1416,11 +1448,11 @@ skip_s_update: */ if (F_ISSET(dbc_arg, DBC_TRANSIENT)) dbc_n = dbc_arg; - else if ((ret = __db_c_idup(dbc_arg, &dbc_n, tmp_flags)) != 0) + else if ((ret = __dbc_idup(dbc_arg, &dbc_n, tmp_flags)) != 0) goto err; pgno = PGNO_INVALID; - if ((ret = dbc_n->c_am_put(dbc_n, key, data, flags, &pgno)) != 0) + if ((ret = dbc_n->am_put(dbc_n, key, data, flags, &pgno)) != 0) goto err; /* @@ -1429,7 +1461,7 @@ skip_s_update: */ if (pgno != PGNO_INVALID) { oldopd = dbc_n->internal->opd; - if ((ret = __db_c_newopd(dbc_arg, pgno, oldopd, &opd)) != 0) { + if ((ret = __dbc_newopd(dbc_arg, pgno, oldopd, &opd)) != 0) { dbc_n->internal->opd = opd; goto err; } @@ -1438,14 +1470,14 @@ skip_s_update: if (flags == DB_NOOVERWRITE) flags = DB_KEYLAST; - if ((ret = opd->c_am_put( + if ((ret = opd->am_put( opd, key, data, flags, NULL)) != 0) goto err; } done: err: /* Cleanup and cursor resolution. */ - if ((t_ret = __db_c_cleanup(dbc_arg, dbc_n, ret)) != 0 && ret == 0) + if ((t_ret = __dbc_cleanup(dbc_arg, dbc_n, ret)) != 0 && ret == 0) ret = t_ret; /* If newdata or olddata were used, free their buffers. */ @@ -1456,11 +1488,19 @@ err: /* Cleanup and cursor resolution. */ CDB_LOCKING_DONE(dbenv, dbc_arg); - if (sdbp != NULL && (t_ret = __db_s_done(sdbp)) != 0 && ret == 0) + if (sdbp != NULL && + (t_ret = __db_s_done(sdbp, dbc_arg->txn)) != 0 && ret == 0) ret = t_ret; - for (skeyp = all_skeys; skeyp - all_skeys < s_count; skeyp++) + for (skeyp = all_skeys; skeyp - all_skeys < s_count; skeyp++) { + if (F_ISSET(skeyp, DB_DBT_MULTIPLE)) { + for (nskey = skeyp->size, tskeyp = (DBT *)skeyp->data; + nskey > 0; + nskey--, tskeyp++) + FREE_IF_NEEDED(dbenv, tskeyp); + } FREE_IF_NEEDED(dbenv, skeyp); + } if (all_skeys != NULL) __os_free(dbenv, all_skeys); @@ -1468,12 +1508,12 @@ err: /* Cleanup and cursor resolution. */ } /* - * __db_c_del_oldskey -- + * __dbc_del_oldskey -- * Delete an old secondary key, if necessary. * Returns DB_KEYEXIST if the new and old keys match.. */ static int -__db_c_del_oldskey(sdbp, dbc_arg, skey, pkey, olddata) +__dbc_del_oldskey(sdbp, dbc_arg, skey, pkey, olddata) DB *sdbp; DBC *dbc_arg; DBT *skey, *pkey, *olddata; @@ -1481,13 +1521,15 @@ __db_c_del_oldskey(sdbp, dbc_arg, skey, pkey, olddata) DB_ENV *dbenv; DB *dbp; DBC *sdbc; + DBT *toldskeyp, *tskeyp; DBT oldskey, temppkey, tempskey; int ret, t_ret; - u_int32_t rmw; + u_int32_t i, noldskey, nsame, nskey, rmw; sdbc = NULL; dbp = sdbp->s_primary; dbenv = dbp->dbenv; + nsame = 0; rmw = STD_LOCKING(dbc_arg) ? DB_RMW : 0; /* @@ -1501,48 +1543,77 @@ __db_c_del_oldskey(sdbp, dbc_arg, skey, pkey, olddata) return (ret); } - /* - * If there is a new secondary key, check whether it is different from - * the old secondary key before we delete it. Note that bt_compare is - * (and must be) set no matter what access method we're in. - */ - if (F_ISSET(skey, DB_DBT_ISSET) && - ((BTREE *)sdbp->bt_internal)->bt_compare(sdbp, - &oldskey, skey) == 0) { - ret = DB_KEYEXIST; - goto err; + if (F_ISSET(&oldskey, DB_DBT_MULTIPLE)) { +#ifdef DIAGNOSTIC + __db_check_skeyset(sdbp, &oldskey); +#endif + toldskeyp = (DBT *)oldskey.data; + noldskey = oldskey.size; + } else { + toldskeyp = &oldskey; + noldskey = 1; } - if ((ret = __db_cursor_int( - sdbp, dbc_arg->txn, sdbp->type, - PGNO_INVALID, 0, dbc_arg->locker, &sdbc)) != 0) - goto err; - if (CDB_LOCKING(dbenv)) { - DB_ASSERT(dbenv, sdbc->mylock.off == LOCK_INVALID); - F_SET(sdbc, DBC_WRITER); - } + if (F_ISSET(skey, DB_DBT_MULTIPLE)) { + nskey = skey->size; + skey = (DBT *)skey->data; + } else + nskey = F_ISSET(skey, DB_DBT_ISSET) ? 1 : 0; - /* - * Don't let c_get(DB_GET_BOTH) stomp on our data. Use a temp DBT - * instead. - */ - memset(&tempskey, 0, sizeof(DBT)); - tempskey.data = oldskey.data; - tempskey.size = oldskey.size; - SWAP_IF_NEEDED(sdbp, pkey); - memset(&temppkey, 0, sizeof(DBT)); - temppkey.data = pkey->data; - temppkey.size = pkey->size; - if ((ret = __db_c_get(sdbc, - &tempskey, &temppkey, rmw | DB_GET_BOTH)) == 0) - ret = __db_c_del(sdbc, DB_UPDATE_SECONDARY); - else if (ret == DB_NOTFOUND) - ret = __db_secondary_corrupt(dbp); - SWAP_IF_NEEDED(sdbp, pkey); + for (; noldskey > 0 && ret == 0; noldskey--, toldskeyp++) { + /* + * Check whether this old secondary key is also a new key + * before we delete it. Note that bt_compare is (and must be) + * set no matter what access method we're in. + */ + for (i = 0, tskeyp = skey; i < nskey; i++, tskeyp++) + if (((BTREE *)sdbp->bt_internal)->bt_compare(sdbp, + toldskeyp, tskeyp) == 0) { + nsame++; + F_CLR(tskeyp, DB_DBT_ISSET); + break; + } + + if (i < nskey) { + FREE_IF_NEEDED(dbenv, toldskeyp); + continue; + } -err: FREE_IF_NEEDED(dbenv, &oldskey); - if (sdbc != NULL && (t_ret = __db_c_close(sdbc)) != 0 && ret == 0) + if (sdbc == NULL) { + if ((ret = __db_cursor_int( + sdbp, dbc_arg->txn, sdbp->type, + PGNO_INVALID, 0, dbc_arg->locker, &sdbc)) != 0) + goto err; + if (CDB_LOCKING(dbenv)) { + DB_ASSERT(dbenv, + sdbc->mylock.off == LOCK_INVALID); + F_SET(sdbc, DBC_WRITER); + } + } + + /* + * Don't let c_get(DB_GET_BOTH) stomp on our data. Use + * temporary DBTs instead. + */ + SWAP_IF_NEEDED(sdbp, pkey); + DB_INIT_DBT(temppkey, pkey->data, pkey->size); + DB_INIT_DBT(tempskey, toldskeyp->data, toldskeyp->size); + if ((ret = __dbc_get(sdbc, + &tempskey, &temppkey, rmw | DB_GET_BOTH)) == 0) + ret = __dbc_del(sdbc, DB_UPDATE_SECONDARY); + else if (ret == DB_NOTFOUND) + ret = __db_secondary_corrupt(dbp); + SWAP_IF_NEEDED(sdbp, pkey); + FREE_IF_NEEDED(dbenv, toldskeyp); + } + +err: for (; noldskey > 0; noldskey--, toldskeyp++) + FREE_IF_NEEDED(dbenv, toldskeyp); + FREE_IF_NEEDED(dbenv, &oldskey); + if (sdbc != NULL && (t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; + if (ret == 0 && nsame == nskey) + return (DB_KEYEXIST); return (ret); } @@ -1576,11 +1647,11 @@ __db_duperr(dbp, flags) } /* - * __db_c_cleanup -- + * __dbc_cleanup -- * Clean up duplicate cursors. */ static int -__db_c_cleanup(dbc, dbc_n, failed) +__dbc_cleanup(dbc, dbc_n, failed) DBC *dbc, *dbc_n; int failed; { @@ -1597,15 +1668,15 @@ __db_c_cleanup(dbc, dbc_n, failed) /* Discard any pages we're holding. */ if (internal->page != NULL) { - if ((t_ret = - __memp_fput(mpf, internal->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + internal->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; internal->page = NULL; } opd = internal->opd; if (opd != NULL && opd->internal->page != NULL) { - if ((t_ret = - __memp_fput(mpf, opd->internal->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + opd->internal->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; opd->internal->page = NULL; } @@ -1628,15 +1699,15 @@ __db_c_cleanup(dbc, dbc_n, failed) return (ret); if (dbc_n->internal->page != NULL) { - if ((t_ret = __memp_fput( - mpf, dbc_n->internal->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + dbc_n->internal->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; dbc_n->internal->page = NULL; } opd = dbc_n->internal->opd; if (opd != NULL && opd->internal->page != NULL) { - if ((t_ret = - __memp_fput(mpf, opd->internal->page, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + opd->internal->page, dbc->priority)) != 0 && ret == 0) ret = t_ret; opd->internal->page = NULL; } @@ -1666,7 +1737,7 @@ __db_c_cleanup(dbc, dbc_n, failed) * We might want to consider adding a flag to the cursor, so that any * subsequent operations other than close just return an error? */ - if ((t_ret = __db_c_close(dbc_n)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc_n)) != 0 && ret == 0) ret = t_ret; /* @@ -1689,30 +1760,30 @@ __db_c_cleanup(dbc, dbc_n, failed) } /* - * __db_c_secondary_get_pp -- - * This wrapper function for DBC->c_pget() is the DBC->c_get() function + * __dbc_secondary_get_pp -- + * This wrapper function for DBC->pget() is the DBC->get() function * for a secondary index cursor. * - * PUBLIC: int __db_c_secondary_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_secondary_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); */ int -__db_c_secondary_get_pp(dbc, skey, data, flags) +__dbc_secondary_get_pp(dbc, skey, data, flags) DBC *dbc; DBT *skey, *data; u_int32_t flags; { DB_ASSERT(dbc->dbp->dbenv, F_ISSET(dbc->dbp, DB_AM_SECONDARY)); - return (__db_c_pget_pp(dbc, skey, NULL, data, flags)); + return (__dbc_pget_pp(dbc, skey, NULL, data, flags)); } /* - * __db_c_pget -- + * __dbc_pget -- * Get a primary key/data pair through a secondary index. * - * PUBLIC: int __db_c_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); */ int -__db_c_pget(dbc, skey, pkey, data, flags) +__dbc_pget(dbc, skey, pkey, data, flags) DBC *dbc; DBT *skey, *pkey, *data; u_int32_t flags; @@ -1764,7 +1835,7 @@ __db_c_pget(dbc, skey, pkey, data, flags) F_SET(dbc, DBC_RMW); if (tmp_read_uncommitted) F_SET(dbc, DBC_READ_UNCOMMITTED); - ret = __db_c_pget_recno(dbc, pkey, data, flags); + ret = __dbc_pget_recno(dbc, pkey, data, flags); if (tmp_rmw) F_CLR(dbc, DBC_RMW); if (tmp_read_uncommitted) @@ -1823,6 +1894,7 @@ __db_c_pget(dbc, skey, pkey, data, flags) case DB_NEXT_DUP: case DB_NEXT_NODUP: case DB_PREV: + case DB_PREV_DUP: case DB_PREV_NODUP: tmp_flags = DB_POSITION; break; @@ -1831,7 +1903,7 @@ __db_c_pget(dbc, skey, pkey, data, flags) break; } - if ((ret = __db_c_dup(dbc, &dbc_n, tmp_flags)) != 0) + if ((ret = __dbc_dup(dbc, &dbc_n, tmp_flags)) != 0) return (ret); F_SET(dbc_n, DBC_TRANSIENT); @@ -1852,7 +1924,7 @@ __db_c_pget(dbc, skey, pkey, data, flags) retry: /* Step 1. */ dbc_n->rdata = dbc->rkey; dbc_n->rkey = dbc->rskey; - ret = __db_c_get(dbc_n, skey, pkey, flags); + ret = __dbc_get(dbc_n, skey, pkey, flags); /* Restore pkey's flags in case we stomped the PARTIAL flag. */ pkey->flags = save_pkey_flags; @@ -1909,8 +1981,8 @@ retry: /* Step 1. */ * * Alternatively, if the application is handling copying for pkey, we * need to take a copy now. The copy will be freed on exit from - * __db_c_pget_pp (and we must be coming through there if - * DB_DBT_USERCOPY is set). + * __dbc_pget_pp (and we must be coming through there if DB_DBT_USERCOPY + * is set). * * !!! * This assumes that the user must always specify a compatible realloc @@ -1932,7 +2004,7 @@ retry: /* Step 1. */ */ F_SET(pdbc, DBC_TRANSIENT); SET_RET_MEM(pdbc, dbc); - ret = __db_c_get(pdbc, pkey, data, DB_SET); + ret = __dbc_get(pdbc, pkey, data, DB_SET); /* * If the item wasn't found in the primary, this is a bug; our @@ -1941,7 +2013,7 @@ retry: /* Step 1. */ */ /* Now close the primary cursor. */ - if ((t_ret = __db_c_close(pdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; else if (ret == DB_NOTFOUND) { @@ -1953,6 +2025,7 @@ retry: /* Step 1. */ case DB_NEXT_DUP: case DB_NEXT_NODUP: case DB_PREV: + case DB_PREV_DUP: case DB_PREV_NODUP: goto retry; default: @@ -1961,7 +2034,7 @@ retry: /* Step 1. */ } err: /* Cleanup and cursor resolution. */ - if ((t_ret = __db_c_cleanup(dbc, dbc_n, ret)) != 0 && ret == 0) + if ((t_ret = __dbc_cleanup(dbc, dbc_n, ret)) != 0 && ret == 0) ret = t_ret; if (pkeymalloc) { /* @@ -1978,13 +2051,13 @@ err: /* Cleanup and cursor resolution. */ } /* - * __db_c_pget_recno -- + * __dbc_pget_recno -- * Perform a DB_GET_RECNO c_pget on a secondary index. Returns * the secondary's record number in the pkey field and the primary's * in the data field. */ static int -__db_c_pget_recno(sdbc, pkey, data, flags) +__dbc_pget_recno(sdbc, pkey, data, flags) DBC *sdbc; DBT *pkey, *data; u_int32_t flags; @@ -2023,7 +2096,7 @@ __db_c_pget_recno(sdbc, pkey, data, flags) */ memset(&primary_key, 0, sizeof(DBT)); F_SET(&primary_key, DB_DBT_MALLOC); - if ((ret = __db_c_get(sdbc, + if ((ret = __dbc_get(sdbc, &discardme, &primary_key, rmw | DB_CURRENT)) != 0) return (ret); @@ -2031,7 +2104,7 @@ __db_c_pget_recno(sdbc, pkey, data, flags) * Open a cursor on the primary, set it to the right record, * and fetch its recno into "data". * - * (See __db_c_pget for comments on the use of __db_cursor_int.) + * (See __dbc_pget for comments on the use of __db_cursor_int.) * * SET_RET_MEM so that the secondary DBC owns any returned-data * memory. @@ -2040,15 +2113,15 @@ __db_c_pget_recno(sdbc, pkey, data, flags) pdbp->type, PGNO_INVALID, 0, sdbc->locker, &pdbc)) != 0) goto perr; SET_RET_MEM(pdbc, sdbc); - if ((ret = __db_c_get(pdbc, + if ((ret = __dbc_get(pdbc, &primary_key, &discardme, rmw | DB_SET)) != 0) goto perr; - ret = __db_c_get(pdbc, &discardme, data, rmw | DB_GET_RECNO); + ret = __dbc_get(pdbc, &discardme, data, rmw | DB_GET_RECNO); perr: __os_ufree(sdbp->dbenv, primary_key.data); if (pdbc != NULL && - (t_ret = __db_c_close(pdbc)) != 0 && ret == 0) + (t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; if (ret != 0) return (ret); @@ -2063,7 +2136,7 @@ perr: __os_ufree(sdbp->dbenv, primary_key.data); * If it's not an rbtree, return RECNO_OOB in "pkey". */ if (F_ISSET(sdbp, DB_AM_RECNUM)) - return (__db_c_get(sdbc, &discardme, pkey, flags)); + return (__dbc_get(sdbc, &discardme, pkey, flags)); else return (__db_retcopy(dbenv, pkey, &oob, sizeof(oob), &sdbc->rdata->data, &sdbc->rdata->ulen)); @@ -2081,7 +2154,7 @@ __db_wrlock_err(dbenv) } /* - * __db_c_del_secondary -- + * __dbc_del_secondary -- * Perform a delete operation on a secondary index: call through * to the primary and delete the primary record that this record * points to. @@ -2091,7 +2164,7 @@ __db_wrlock_err(dbenv) * to execute both this function and an actual delete. */ static int -__db_c_del_secondary(dbc) +__dbc_del_secondary(dbc) DBC *dbc; { DB_ENV *dbenv; @@ -2099,19 +2172,21 @@ __db_c_del_secondary(dbc) DBC *pdbc; DBT skey, pkey; int ret, t_ret; + u_int32_t rmw; pdbp = dbc->dbp->s_primary; dbenv = pdbp->dbenv; - memset(&skey, 0, sizeof(DBT)); - memset(&pkey, 0, sizeof(DBT)); + rmw = STD_LOCKING(dbc) ? DB_RMW : 0; /* * Get the current item that we're pointing at. * We don't actually care about the secondary key, just * the primary. */ + memset(&skey, 0, sizeof(DBT)); + memset(&pkey, 0, sizeof(DBT)); F_SET(&skey, DB_DBT_PARTIAL | DB_DBT_USERMEM); - if ((ret = __db_c_get(dbc, &skey, &pkey, DB_CURRENT)) != 0) + if ((ret = __dbc_get(dbc, &skey, &pkey, DB_CURRENT)) != 0) return (ret); SWAP_IF_NEEDED(dbc->dbp, &pkey); @@ -2131,7 +2206,7 @@ __db_c_del_secondary(dbc) return (ret); /* - * See comment in __db_c_put--if we're in CDB, + * See comment in __dbc_put--if we're in CDB, * we already hold the locks we need, and we need to flag * the cursor as a WRITER so we don't run into errors * when we try to delete. @@ -2150,39 +2225,41 @@ __db_c_del_secondary(dbc) * every record in the secondary should correspond to some record * in the primary. */ - if ((ret = __db_c_get(pdbc, &pkey, &skey, - (STD_LOCKING(dbc) ? DB_RMW : 0) | DB_SET)) == 0) - ret = __db_c_del(pdbc, 0); + if ((ret = __dbc_get(pdbc, &pkey, &skey, DB_SET | rmw)) == 0) + ret = __dbc_del(pdbc, 0); else if (ret == DB_NOTFOUND) ret = __db_secondary_corrupt(pdbp); - if ((t_ret = __db_c_close(pdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(pdbc)) != 0 && ret == 0) ret = t_ret; return (ret); } /* - * __db_c_del_primary -- + * __dbc_del_primary -- * Perform a delete operation on a primary index. Loop through * all the secondary indices which correspond to this primary * database, and delete any secondary keys that point at the current * record. * - * PUBLIC: int __db_c_del_primary __P((DBC *)); + * PUBLIC: int __dbc_del_primary __P((DBC *)); */ int -__db_c_del_primary(dbc) +__dbc_del_primary(dbc) DBC *dbc; { DB_ENV *dbenv; DB *dbp, *sdbp; DBC *sdbc; + DBT *tskeyp; DBT data, pkey, skey, temppkey, tempskey; + u_int32_t nskey, rmw; int ret, t_ret; dbp = dbc->dbp; dbenv = dbp->dbenv; + rmw = STD_LOCKING(dbc) ? DB_RMW : 0; /* * If we're called at all, we have at least one secondary. @@ -2192,13 +2269,13 @@ __db_c_del_primary(dbc) */ memset(&pkey, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); - if ((ret = __db_c_get(dbc, &pkey, &data, DB_CURRENT)) != 0) + if ((ret = __dbc_get(dbc, &pkey, &data, DB_CURRENT)) != 0) return (ret); memset(&skey, 0, sizeof(DBT)); for (ret = __db_s_first(dbp, &sdbp); sdbp != NULL && ret == 0; - ret = __db_s_next(&sdbp)) { + ret = __db_s_next(&sdbp, dbc->txn)) { /* * Get the secondary key for this secondary and the current * item. @@ -2215,51 +2292,72 @@ __db_c_del_primary(dbc) goto err; } +#ifdef DIAGNOSTIC + if (F_ISSET(&skey, DB_DBT_MULTIPLE)) + __db_check_skeyset(sdbp, &skey); +#endif + /* Open a secondary cursor. */ if ((ret = __db_cursor_int(sdbp, dbc->txn, sdbp->type, PGNO_INVALID, 0, dbc->locker, &sdbc)) != 0) goto err; - /* See comment above and in __db_c_put. */ + /* See comment above and in __dbc_put. */ if (CDB_LOCKING(dbenv)) { DB_ASSERT(dbenv, sdbc->mylock.off == LOCK_INVALID); F_SET(sdbc, DBC_WRITER); } - /* - * Set the secondary cursor to the appropriate item. - * Delete it. - * - * We want to use DB_RMW if locking is on; it's only - * legal then, though. - * - * !!! - * Don't stomp on any callback-allocated buffer in skey - * when we do a c_get(DB_GET_BOTH); use a temp DBT instead. - * Similarly, don't allow pkey to be invalidated when the - * cursor is closed. - */ - memset(&tempskey, 0, sizeof(DBT)); - tempskey.data = skey.data; - tempskey.size = skey.size; - SWAP_IF_NEEDED(sdbp, &pkey); - memset(&temppkey, 0, sizeof(DBT)); - temppkey.data = pkey.data; - temppkey.size = pkey.size; - if ((ret = __db_c_get(sdbc, &tempskey, &temppkey, - (STD_LOCKING(dbc) ? DB_RMW : 0) | DB_GET_BOTH)) == 0) - ret = __db_c_del(sdbc, DB_UPDATE_SECONDARY); - else if (ret == DB_NOTFOUND) - ret = __db_secondary_corrupt(dbp); - SWAP_IF_NEEDED(sdbp, &pkey); - FREE_IF_NEEDED(dbenv, &skey); + if (F_ISSET(&skey, DB_DBT_MULTIPLE)) { + tskeyp = (DBT *)skey.data; + nskey = skey.size; + } else { + tskeyp = &skey; + nskey = 1; + } + + for (; nskey > 0; nskey--, tskeyp++) { + /* + * Set the secondary cursor to the appropriate item. + * Delete it. + * + * We want to use DB_RMW if locking is on; it's only + * legal then, though. + * + * !!! + * Don't stomp on any callback-allocated buffer in skey + * when we do a c_get(DB_GET_BOTH); use a temp DBT + * instead. Similarly, don't allow pkey to be + * invalidated when the cursor is closed. + */ + DB_INIT_DBT(tempskey, tskeyp->data, tskeyp->size); + SWAP_IF_NEEDED(sdbp, &pkey); + DB_INIT_DBT(temppkey, pkey.data, pkey.size); + if ((ret = __dbc_get(sdbc, &tempskey, &temppkey, + DB_GET_BOTH | rmw)) == 0) + ret = __dbc_del(sdbc, DB_UPDATE_SECONDARY); + else if (ret == DB_NOTFOUND) + ret = __db_secondary_corrupt(dbp); + SWAP_IF_NEEDED(sdbp, &pkey); + FREE_IF_NEEDED(dbenv, tskeyp); + } - if ((t_ret = __db_c_close(sdbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(sdbc)) != 0 && ret == 0) ret = t_ret; if (ret != 0) goto err; + + /* + * In the common case where there is a single secondary key, we + * will have freed any application-allocated data in skey + * already. In the multiple key case, we need to free it here. + * It is safe to do this twice as the macro resets the data + * field. + */ + FREE_IF_NEEDED(dbenv, &skey); } -err: if (sdbp != NULL && (t_ret = __db_s_done(sdbp)) != 0 && ret == 0) +err: if (sdbp != NULL && + (t_ret = __db_s_done(sdbp, dbc->txn)) != 0 && ret == 0) ret = t_ret; FREE_IF_NEEDED(dbenv, &skey); return (ret); @@ -2294,11 +2392,12 @@ __db_s_first(pdbp, sdbpp) * __db_s_next -- * Get the next secondary in the list. * - * PUBLIC: int __db_s_next __P((DB **)); + * PUBLIC: int __db_s_next __P((DB **, DB_TXN *)); */ int -__db_s_next(sdbpp) +__db_s_next(sdbpp, txn) DB **sdbpp; + DB_TXN *txn; { DB_ENV *dbenv; DB *sdbp, *pdbp, *closeme; @@ -2348,7 +2447,13 @@ __db_s_next(sdbpp) /* * closeme->close() is a wrapper; call __db_close explicitly. */ - ret = closeme != NULL ? __db_close(closeme, NULL, 0) : 0; + if (closeme == NULL) + ret = 0; + else if (txn == NULL) + ret = __db_close(closeme, NULL, 0); + else + ret = __txn_closeevent(dbenv, txn, closeme); + return (ret); } @@ -2357,15 +2462,16 @@ __db_s_next(sdbpp) * Properly decrement the refcount on a secondary database handle we're * using, without calling __db_s_next. * - * PUBLIC: int __db_s_done __P((DB *)); + * PUBLIC: int __db_s_done __P((DB *, DB_TXN *)); */ int -__db_s_done(sdbp) +__db_s_done(sdbp, txn) DB *sdbp; + DB_TXN *txn; { DB_ENV *dbenv; DB *pdbp; - int doclose; + int doclose, ret; pdbp = sdbp->s_primary; dbenv = pdbp->dbenv; @@ -2379,7 +2485,13 @@ __db_s_done(sdbp) } MUTEX_UNLOCK(dbenv, pdbp->mutex); - return (doclose ? __db_close(sdbp, NULL, 0) : 0); + if (doclose == 0) + ret = 0; + else if (txn == NULL) + ret = __db_close(sdbp, NULL, 0); + else + ret = __txn_closeevent(dbenv, txn, sdbp); + return (ret); } /* @@ -2495,3 +2607,33 @@ __db_partsize(nbytes, data) return (nbytes + data->size - data->dlen); /* Case 2 */ } + +#ifdef DIAGNOSTIC +/* + * __db_check_skeyset -- + * Diagnostic check that the application's callback returns a set of + * secondary keys without repeats. + * + * PUBLIC: #ifdef DIAGNOSTIC + * PUBLIC: void __db_check_skeyset __P((DB *, DBT *)); + * PUBLIC: #endif + */ +void +__db_check_skeyset(sdbp, skeyp) + DB *sdbp; + DBT *skeyp; +{ + DB_ENV *dbenv; + DBT *firstkey, *lastkey, *key1, *key2; + + dbenv = sdbp->dbenv; + + firstkey = (DBT *)skeyp->data; + lastkey = firstkey + skeyp->size; + for (key1 = firstkey; key1 < lastkey; key1++) + for (key2 = key1 + 1; key2 < lastkey; key2++) + DB_ASSERT(dbenv, + ((BTREE *)sdbp->bt_internal)->bt_compare(sdbp, + key1, key2) != 0); +} +#endif diff --git a/db/db/db_cds.c b/db/db/db_cds.c index ee9caa062..433ce3638 100644 --- a/db/db/db_cds.c +++ b/db/db/db_cds.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_cds.c,v 12.5 2006/09/07 05:46:15 mjc Exp $ + * $Id: db_cds.c,v 12.10 2007/07/17 07:29:04 mjc Exp $ */ #include "db_config.h" @@ -50,7 +49,7 @@ static int __cdsgroup_commit(txn, flags) { DB_ENV *dbenv; DB_LOCKREQ lreq; - u_int32_t locker; + DB_LOCKER *locker; int ret, t_ret; COMPQUIET(flags, 0); @@ -65,10 +64,10 @@ static int __cdsgroup_commit(txn, flags) /* We may be holding handle locks; release them. */ lreq.op = DB_LOCK_PUT_ALL; lreq.obj = NULL; - ret = __lock_vec(dbenv, txn->txnid, 0, &lreq, 1, NULL); + ret = __lock_vec(dbenv, txn->locker, 0, &lreq, 1, NULL); dbenv = txn->mgrp->dbenv; - locker = txn->txnid; + locker = txn->locker; __os_free(dbenv, txn->mgrp); __os_free(dbenv, txn); if ((t_ret = __lock_id_free(dbenv, locker)) != 0 && ret == 0) @@ -122,7 +121,8 @@ static int __cdsgroup_set_timeout(txn, timeout, flags) * * PUBLIC: int __cdsgroup_begin __P((DB_ENV *, DB_TXN **)); */ -int __cdsgroup_begin(dbenv, txnpp) +int +__cdsgroup_begin(dbenv, txnpp) DB_ENV *dbenv; DB_TXN **txnpp; { @@ -147,7 +147,7 @@ int __cdsgroup_begin(dbenv, txnpp) goto err; txn->mgrp->dbenv = dbenv; - if ((ret = __lock_id(dbenv, &txn->txnid, NULL)) != 0) + if ((ret = __lock_id(dbenv, &txn->txnid, &txn->locker)) != 0) goto err; txn->flags = TXN_CDSGROUP; diff --git a/db/db/db_conv.c b/db/db/db_conv.c index 94afb1db7..1bb9f36ef 100644 --- a/db/db/db_conv.c +++ b/db/db/db_conv.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -36,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_conv.c,v 12.7 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_conv.c,v 12.15 2007/07/02 16:58:02 alexg Exp $ */ #include "db_config.h" @@ -69,18 +68,19 @@ __db_pgin(dbenv, pg, pp, cookie) DB_CIPHER *db_cipher; DB_LSN not_used; PAGE *pagep; - size_t pg_off, pg_len, sum_len; + size_t sum_len; int is_hmac, ret; - u_int8_t *chksum, *iv; + u_int8_t *chksum; pginfo = (DB_PGINFO *)cookie->data; pagep = (PAGE *)pp; ret = is_hmac = 0; - chksum = iv = NULL; + chksum = NULL; memset(&dummydb, 0, sizeof(DB)); dbp = &dummydb; dummydb.flags = pginfo->flags; + dummydb.pgsize = pginfo->db_pagesize; db_cipher = (DB_CIPHER *)dbenv->crypto_handle; switch (pagep->type) { case P_HASHMETA: @@ -152,49 +152,15 @@ __db_pgin(dbenv, pg, pp, cookie) return (ret); } } - if (F_ISSET(dbp, DB_AM_ENCRYPT)) { - DB_ASSERT(dbenv, db_cipher != NULL); - DB_ASSERT(dbenv, F_ISSET(dbp, DB_AM_CHKSUM)); - - pg_off = P_OVERHEAD(dbp); - DB_ASSERT(dbenv, db_cipher->adj_size(pg_off) == 0); - - switch (pagep->type) { - case P_HASHMETA: - case P_BTREEMETA: - case P_QAMMETA: - /* - * !!! - * For all meta pages it is required that the iv - * be at the same location. Use BTMETA to get to it - * for any meta type. - */ - iv = ((BTMETA *)pp)->iv; - pg_len = DBMETASIZE; - break; - case P_INVALID: - if (IS_ZERO_LSN(LSN(pagep)) && - pagep->pgno == PGNO_INVALID) { - pg_len = 0; - break; - } - /* FALLTHROUGH */ - default: - iv = P_IV(dbp, pagep); - pg_len = pginfo->db_pagesize; - break; - } - if (pg_len != 0 && (ret = db_cipher->decrypt(dbenv, - db_cipher->data, iv, ((u_int8_t *)pagep) + pg_off, - pg_len - pg_off)) != 0) - return (ret); - } + if ((ret = __db_decrypt_pg(dbenv, dbp, pagep)) != 0) + return (ret); switch (pagep->type) { case P_INVALID: if (pginfo->type == DB_QUEUE) return (__qam_pgin_out(dbenv, pg, pp, cookie)); else return (__ham_pgin(dbenv, dbp, pg, pp, cookie)); + case P_HASH_UNSORTED: case P_HASH: case P_HASHMETA: return (__ham_pgin(dbenv, dbp, pg, pp, cookie)); @@ -229,20 +195,17 @@ __db_pgout(dbenv, pg, pp, cookie) DBT *cookie; { DB dummydb, *dbp; - DB_CIPHER *db_cipher; DB_PGINFO *pginfo; PAGE *pagep; - size_t pg_off, pg_len, sum_len; int ret; - u_int8_t *chksum, *iv, *key; pginfo = (DB_PGINFO *)cookie->data; pagep = (PAGE *)pp; - chksum = iv = key = NULL; memset(&dummydb, 0, sizeof(DB)); dbp = &dummydb; dummydb.flags = pginfo->flags; + dummydb.pgsize = pginfo->db_pagesize; ret = 0; switch (pagep->type) { case P_INVALID: @@ -252,6 +215,14 @@ __db_pgout(dbenv, pg, pp, cookie) ret = __ham_pgout(dbenv, dbp, pg, pp, cookie); break; case P_HASH: + case P_HASH_UNSORTED: + /* + * Support pgout of unsorted hash pages - since online + * replication upgrade can cause pages of this type to be + * written out. + * + * FALLTHROUGH + */ case P_HASHMETA: ret = __ham_pgout(dbenv, dbp, pg, pp, cookie); break; @@ -274,6 +245,89 @@ __db_pgout(dbenv, pg, pp, cookie) if (ret) return (ret); + return (__db_encrypt_and_checksum_pg(dbenv, dbp, pagep)); +} + +/* + * __db_decrypt_pg -- + * Utility function to decrypt a db page. + * + * PUBLIC: int __db_decrypt_pg __P((DB_ENV *, DB *, PAGE *)); + */ +int +__db_decrypt_pg (dbenv, dbp, pagep) + DB_ENV *dbenv; + DB *dbp; + PAGE *pagep; +{ + DB_CIPHER *db_cipher; + size_t pg_len, pg_off; + u_int8_t *iv; + int ret; + + db_cipher = (DB_CIPHER *)dbenv->crypto_handle; + ret = 0; + iv = NULL; + if (F_ISSET(dbp, DB_AM_ENCRYPT)) { + DB_ASSERT(dbenv, db_cipher != NULL); + DB_ASSERT(dbenv, F_ISSET(dbp, DB_AM_CHKSUM)); + + pg_off = P_OVERHEAD(dbp); + DB_ASSERT(dbenv, db_cipher->adj_size(pg_off) == 0); + + switch (pagep->type) { + case P_HASHMETA: + case P_BTREEMETA: + case P_QAMMETA: + /* + * !!! + * For all meta pages it is required that the iv + * be at the same location. Use BTMETA to get to it + * for any meta type. + */ + iv = ((BTMETA *)pagep)->iv; + pg_len = DBMETASIZE; + break; + case P_INVALID: + if (IS_ZERO_LSN(LSN(pagep)) && + pagep->pgno == PGNO_INVALID) { + pg_len = 0; + break; + } + /* FALLTHROUGH */ + default: + iv = P_IV(dbp, pagep); + pg_len = dbp->pgsize; + break; + } + if (pg_len != 0) + ret = db_cipher->decrypt(dbenv, db_cipher->data, + iv, ((u_int8_t *)pagep) + pg_off, + pg_len - pg_off); + } + return (ret); +} + +/* + * __db_encrypt_and_checksum_pg -- + * Utility function to encrypt and checksum a db page. + * + * PUBLIC: int __db_encrypt_and_checksum_pg + * PUBLIC: __P((DB_ENV *, DB *, PAGE *)); + */ +int +__db_encrypt_and_checksum_pg (dbenv, dbp, pagep) + DB_ENV *dbenv; + DB *dbp; + PAGE *pagep; +{ + DB_CIPHER *db_cipher; + int ret; + size_t pg_off, pg_len, sum_len; + u_int8_t *chksum, *iv, *key; + + chksum = iv = key = NULL; + db_cipher = (DB_CIPHER *)dbenv->crypto_handle; if (F_ISSET(dbp, DB_AM_ENCRYPT)) { @@ -295,12 +349,12 @@ __db_pgout(dbenv, pg, pp, cookie) * be at the same location. Use BTMETA to get to it * for any meta type. */ - iv = ((BTMETA *)pp)->iv; + iv = ((BTMETA *)pagep)->iv; pg_len = DBMETASIZE; break; default: iv = P_IV(dbp, pagep); - pg_len = pginfo->db_pagesize; + pg_len = dbp->pgsize; break; } if ((ret = db_cipher->encrypt(dbenv, db_cipher->data, @@ -318,15 +372,15 @@ __db_pgout(dbenv, pg, pp, cookie) * be at the same location. Use BTMETA to get to it * for any meta type. */ - chksum = ((BTMETA *)pp)->chksum; + chksum = ((BTMETA *)pagep)->chksum; sum_len = DBMETASIZE; break; default: chksum = P_CHKSUM(dbp, pagep); - sum_len = pginfo->db_pagesize; + sum_len = dbp->pgsize; break; } - __db_chksum(NULL, pp, sum_len, key, chksum); + __db_chksum(NULL, (u_int8_t *)pagep, sum_len, key, chksum); if (F_ISSET(dbp, DB_AM_SWAP) && !F_ISSET(dbp, DB_AM_ENCRYPT)) P_32_SWAP(chksum); } @@ -400,6 +454,7 @@ __db_byteswap(dbenv, dbp, pg, h, pagesize, pgin) } switch (h->type) { + case P_HASH_UNSORTED: case P_HASH: for (i = 0; i < NUM_ENT(h); i++) { if (pgin) diff --git a/db/db/db_dispatch.c b/db/db/db_dispatch.c index 4ef8347ba..1ee385b70 100644 --- a/db/db/db_dispatch.c +++ b/db/db/db_dispatch.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1995, 1996 @@ -35,7 +34,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_dispatch.c,v 12.26 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_dispatch.c,v 12.37 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" @@ -54,7 +53,7 @@ static int __db_limbo_fix __P((DB *, DB_TXN *, static int __db_limbo_bucket __P((DB_ENV *, DB_TXN *, DB_TXNLIST *, db_limbo_state)); static int __db_limbo_move __P((DB_ENV *, DB_TXN *, DB_TXN *, DB_TXNLIST *)); -static int __db_limbo_prepare __P(( DB *, DB_TXN *, DB_TXNLIST *)); +static int __db_limbo_prepare __P((DB *, DB_TXN *, DB_TXNLIST *)); static int __db_lock_move __P((DB_ENV *, u_int8_t *, db_pgno_t, db_lockmode_t, DB_TXN *, DB_TXN *)); static int __db_txnlist_pgnoadd __P((DB_ENV *, DB_TXNHEAD *, @@ -222,6 +221,7 @@ __db_dispatch(dbenv, dtab, dtabsize, db, lsnp, redo, info) case DB___txn_recycle: case DB___txn_ckp: case DB___db_noop: + case DB___dbreg_register: make_call = 1; break; @@ -257,19 +257,8 @@ __db_dispatch(dbenv, dtab, dtabsize, db, lsnp, redo, info) */ make_call = 1; redo = DB_TXN_BACKWARD_ALLOC; - } else -#endif - if (rectype == DB___dbreg_register) { - /* - * This may be a transaction dbreg_register. - * If it is, we only make the call on a COMMIT, - * which we checked above. If it's not, then we - * should always make the call, because we need - * the file open information. - */ - if (txnid == 0) - make_call = 1; } +#endif } break; case DB_TXN_BACKWARD_ALLOC: @@ -424,6 +413,21 @@ __db_txnlist_init(dbenv, low_txn, hi_txn, trunc_lsn, retp) return (0); } +#define FIND_GENERATION(hp, txnid, gen) do { \ + u_int32_t __i; \ + for (__i = 0; __i <= (hp)->generation; __i++) \ + /* The range may wrap around the end. */ \ + if ((hp)->gen_array[__i].txn_min < \ + (hp)->gen_array[__i].txn_max ? \ + ((txnid) >= (hp)->gen_array[__i].txn_min && \ + (txnid) <= (hp)->gen_array[__i].txn_max) : \ + ((txnid) >= (hp)->gen_array[__i].txn_min || \ + (txnid) <= (hp)->gen_array[__i].txn_max)) \ + break; \ + DB_ASSERT(dbenv, __i <= (hp)->generation); \ + gen = (hp)->gen_array[__i].generation; \ +} while (0) + /* * __db_txnlist_add -- * Add an element to our transaction linked list. @@ -446,10 +450,11 @@ __db_txnlist_add(dbenv, hp, txnid, status, lsn) LIST_INSERT_HEAD(&hp->head[DB_TXNLIST_MASK(hp, txnid)], elp, links); + /* Find the most recent generation containing this ID */ + FIND_GENERATION(hp, txnid, elp->u.t.generation); elp->type = TXNLIST_TXNID; elp->u.t.txnid = txnid; elp->u.t.status = status; - elp->u.t.generation = hp->generation; if (txnid > hp->maxid) hp->maxid = txnid; if (lsn != NULL && IS_ZERO_LSN(hp->maxlsn) && status == TXN_COMMIT) @@ -637,7 +642,7 @@ __db_txnlist_find_internal(dbenv, { struct __db_headlink *head; DB_TXNLIST *p; - u_int32_t generation, hash, i; + u_int32_t generation, hash; int ret; ret = 0; @@ -648,18 +653,7 @@ __db_txnlist_find_internal(dbenv, switch (type) { case TXNLIST_TXNID: hash = txnid; - /* Find the most recent generation containing this ID */ - for (i = 0; i <= hp->generation; i++) - /* The range may wrap around the end. */ - if (hp->gen_array[i].txn_min < - hp->gen_array[i].txn_max ? - (txnid >= hp->gen_array[i].txn_min && - txnid <= hp->gen_array[i].txn_max) : - (txnid >= hp->gen_array[i].txn_min || - txnid <= hp->gen_array[i].txn_max)) - break; - DB_ASSERT(dbenv, i <= hp->generation); - generation = hp->gen_array[i].generation; + FIND_GENERATION(hp, txnid, generation); break; case TXNLIST_PGNO: memcpy(&hash, uid, sizeof(hash)); @@ -1003,11 +997,11 @@ __db_lock_move(dbenv, fileid, pgno, mode, ptxn, txn) lock_dbt.size = sizeof(lock_obj); if ((ret = __lock_get(dbenv, - txn->txnid, 0, &lock_dbt, mode, &lock)) == 0) { + txn->locker, 0, &lock_dbt, mode, &lock)) == 0) { memset(&req, 0, sizeof(req)); req.lock = lock; req.op = DB_LOCK_TRADE; - ret = __lock_vec(dbenv, ptxn->txnid, 0, &req, 1, NULL); + ret = __lock_vec(dbenv, ptxn->locker, 0, &req, 1, NULL); } return (ret); } @@ -1109,7 +1103,7 @@ retry: dbp_created = 0; goto next; if (ret != 0) { - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) goto err; /* @@ -1197,7 +1191,8 @@ retry: dbp_created = 0; */ else if (last_pgno == meta->free) { /* No change to page; just put the page back. */ - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = + __memp_fput(mpf, meta, DB_PRIORITY_UNCHANGED)) != 0) goto err; meta = NULL; } else { @@ -1210,7 +1205,8 @@ retry: dbp_created = 0; */ if (!IS_RECOVERING(dbenv) && !T_RESTORED(txn)) __db_errx(dbenv, "Flushing free list to disk"); - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = + __memp_fput(mpf, meta, DB_PRIORITY_UNCHANGED)) != 0) goto err; meta = NULL; /* @@ -1228,7 +1224,8 @@ retry: dbp_created = 0; DB_MPOOL_DIRTY, &meta)) != 0) goto err; meta->free = last_pgno; - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, + meta, DB_PRIORITY_UNCHANGED)) != 0) goto err; meta = NULL; } else { @@ -1264,7 +1261,7 @@ next: } err: if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, DB_PRIORITY_UNCHANGED); return (ret); } @@ -1327,8 +1324,8 @@ __db_limbo_fix(dbp, ctxn, elp, lastp, meta, state) &next, ctxn, 0, &freep)) != 0) goto err; next = NEXT_PGNO(freep); - if ((ret = - __memp_fput(mpf, freep, 0)) != 0) + if ((ret = __memp_fput(mpf, + freep, DB_PRIORITY_UNCHANGED)) != 0) goto err; } @@ -1388,7 +1385,7 @@ __db_limbo_fix(dbp, ctxn, elp, lastp, meta, state) */ if (ret != 0) { /* Assume that this is out of space. */ - (void)__db_c_close(dbc); + (void)__dbc_close(dbc); dbc = NULL; goto err; } @@ -1398,17 +1395,18 @@ __db_limbo_fix(dbp, ctxn, elp, lastp, meta, state) elp->u.p.pgno_array[i] = PGNO_INVALID; if (pagep != NULL) { - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, DB_PRIORITY_UNCHANGED); pagep = NULL; } if (ret != 0) goto err; } -err: if (pagep != NULL && (t_ret = __memp_fput(mpf, pagep, 0)) != 0 && +err: if (pagep != NULL && + (t_ret = __memp_fput(mpf, pagep, DB_PRIORITY_UNCHANGED)) != 0 && ret == 0) ret = t_ret; - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -1447,7 +1445,8 @@ __db_limbo_prepare(dbp, txn, elp) if (IS_ZERO_LSN(LSN(pagep))) ret = __db_pg_prepare_log(dbp, txn, &lsn, 0, pgno); - if ((t_ret = __memp_fput(mpf, pagep, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + pagep, DB_PRIORITY_UNCHANGED)) != 0 && ret == 0) ret = t_ret; if (ret != 0) diff --git a/db/db/db_dup.c b/db/db/db_dup.c index 84b326c0c..f32a3c915 100644 --- a/db/db/db_dup.c +++ b/db/db/db_dup.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_dup.c,v 12.9 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_dup.c,v 12.11 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" diff --git a/db/db/db_iface.c b/db/db/db_iface.c index bf41332df..b6949de8c 100644 --- a/db/db/db_iface.c +++ b/db/db/db_iface.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_iface.c,v 12.51 2006/09/19 15:06:58 bostic Exp $ + * $Id: db_iface.c,v 12.68 2007/06/14 19:00:55 bostic Exp $ */ #include "db_config.h" @@ -25,10 +24,10 @@ static int __db_associate_arg __P((DB *, DB *, int (*)(DB *, const DBT *, const DBT *, DBT *), u_int32_t)); -static int __db_c_del_arg __P((DBC *, u_int32_t)); -static int __db_c_get_arg __P((DBC *, DBT *, DBT *, u_int32_t)); -static int __db_c_pget_arg __P((DBC *, DBT *, u_int32_t)); -static int __db_c_put_arg __P((DBC *, DBT *, DBT *, u_int32_t)); +static int __dbc_del_arg __P((DBC *, u_int32_t)); +static int __dbc_get_arg __P((DBC *, DBT *, DBT *, u_int32_t)); +static int __dbc_pget_arg __P((DBC *, DBT *, u_int32_t)); +static int __dbc_put_arg __P((DBC *, DBT *, DBT *, u_int32_t)); static int __db_curinval __P((const DB_ENV *)); static int __db_cursor_arg __P((DB *, u_int32_t)); static int __db_del_arg __P((DB *, DBT *, u_int32_t)); @@ -127,7 +126,7 @@ __db_associate_pp(dbp, txn, sdbp, callback, flags) goto err; while ((sdbc = TAILQ_FIRST(&sdbp->free_queue)) != NULL) - if ((ret = __db_c_destroy(sdbc)) != 0) + if ((ret = __dbc_destroy(sdbc)) != 0) goto err; ret = __db_associate(dbp, txn, sdbp, callback, flags); @@ -382,7 +381,7 @@ __db_cursor(dbp, txn, dbcp, flags) *dbcp = dbc; return (0); -err: (void)__db_c_close(dbc); +err: (void)__dbc_close(dbc); return (ret); } @@ -528,6 +527,42 @@ __db_del_arg(dbp, key, flags) return (0); } +/* + * __db_exists -- + * DB->exists implementation. + * + * PUBLIC: int __db_exists __P((DB *, DB_TXN *, DBT *, u_int32_t)); + */ +int +__db_exists(dbp, txn, key, flags) + DB *dbp; + DB_TXN *txn; + DBT *key; + u_int32_t flags; +{ + DBT data; + int ret; + + /* + * Most flag checking is done in the DB->get call, we only check for + * specific incompatibilities here. This saves making __get_arg + * aware of the exist method's API constraints. + */ + if ((ret = __db_fchk(dbp->dbenv, "DB->exists", flags, + DB_READ_COMMITTED | DB_READ_UNCOMMITTED | DB_RMW)) != 0) + return (ret); + + /* + * Configure a data DBT that returns no bytes so there's no copy + * of the data. + */ + memset(&data, 0, sizeof(data)); + data.dlen = 0; + data.flags = DB_DBT_PARTIAL | DB_DBT_USERMEM; + + return (dbp->get(dbp, txn, key, &data, flags)); +} + /* * db_fd_pp -- * DB->fd pre/post processing. @@ -600,7 +635,7 @@ __db_get_pp(dbp, txn, key, data, flags) DB_ENV *dbenv; DB_THREAD_INFO *ip; u_int32_t mode; - int handle_check, ret, t_ret, txn_local; + int handle_check, ignore_lease, ret, t_ret, txn_local; dbenv = dbp->dbenv; mode = 0; @@ -610,6 +645,9 @@ __db_get_pp(dbp, txn, key, data, flags) STRIP_AUTO_COMMIT(flags); DB_ILLEGAL_BEFORE_OPEN(dbp, "DB->get"); + ignore_lease = LF_ISSET(DB_IGNORE_LEASE); + LF_CLR(DB_IGNORE_LEASE); + if ((ret = __db_get_arg(dbp, key, data, flags)) != 0) return (ret); @@ -641,6 +679,12 @@ __db_get_pp(dbp, txn, key, data, flags) goto err; ret = __db_get(dbp, txn, key, data, flags); + /* + * Check for master leases. + */ + if (ret == 0 && IS_REP_MASTER(dbenv) && IS_USING_LEASES(dbenv) && + !ignore_lease) + ret = __rep_lease_check(dbenv, 1); err: if (txn_local && (t_ret = __db_txn_auto_resolve(dbenv, txn, 0, ret)) && ret == 0) @@ -708,9 +752,9 @@ __db_get(dbp, txn, key, data, flags) if (LF_ISSET(~(DB_RMW | DB_MULTIPLE)) == 0) LF_SET(DB_SET); - ret = __db_c_get(dbc, key, data, flags); + ret = __dbc_get(dbc, key, data, flags); - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -967,6 +1011,7 @@ __db_key_range_pp(dbp, txn, key, kr, flags) */ switch (dbp->type) { case DB_BTREE: +#ifndef HAVE_BREW if ((ret = __dbt_usercopy(dbenv, key)) != 0) goto err; @@ -978,10 +1023,16 @@ __db_key_range_pp(dbp, txn, key, kr, flags) ret = __bam_key_range(dbc, key, kr, flags); - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; __dbt_userfree(dbenv, key, NULL, NULL); break; +#else + COMPQUIET(dbc, NULL); + COMPQUIET(key, NULL); + COMPQUIET(kr, NULL); + /* FALLTHROUGH */ +#endif case DB_HASH: case DB_QUEUE: case DB_RECNO: @@ -1108,11 +1159,13 @@ __db_open_pp(dbp, txn, fname, dname, type, flags, mode) F_CLR(dbp, DB_AM_DISCARD | DB_AM_CREATED | DB_AM_CREATED_MSTR); /* - * If not transactional, remove the databases/subdatabases. If we're - * transactional, the child transaction abort cleans up. + * If not transactional, remove the databases/subdatabases if it is + * persistent. If we're transactional, the child transaction abort + * cleans up. */ txnerr: if (ret != 0 && !IS_REAL_TXN(txn)) { - remove_me = F_ISSET(dbp, DB_AM_CREATED); + remove_me = (F_ISSET(dbp, DB_AM_CREATED) && + (fname != NULL || dname != NULL)) ? 1 : 0; if (F_ISSET(dbp, DB_AM_CREATED_MSTR) || (dname == NULL && remove_me)) /* Remove file. */ @@ -1289,13 +1342,16 @@ __db_pget_pp(dbp, txn, skey, pkey, data, flags) { DB_ENV *dbenv; DB_THREAD_INFO *ip; - int handle_check, ret, t_ret; + int handle_check, ignore_lease, ret, t_ret; dbenv = dbp->dbenv; PANIC_CHECK(dbenv); DB_ILLEGAL_BEFORE_OPEN(dbp, "DB->pget"); + ignore_lease = LF_ISSET(DB_IGNORE_LEASE); + LF_CLR(DB_IGNORE_LEASE); + if ((ret = __db_pget_arg(dbp, pkey, flags)) != 0 || (ret = __db_get_arg(dbp, skey, data, flags)) != 0) { __dbt_userfree(dbenv, skey, pkey, data); @@ -1313,6 +1369,12 @@ __db_pget_pp(dbp, txn, skey, pkey, data, flags) } ret = __db_pget(dbp, txn, skey, pkey, data, flags); + /* + * Check for master leases. + */ + if (ret == 0 && IS_REP_MASTER(dbenv) && IS_USING_LEASES(dbenv) && + !ignore_lease) + ret = __rep_lease_check(dbenv, 1); err: /* Release replication block. */ if (handle_check && (t_ret = __env_db_rep_exit(dbenv)) != 0 && ret == 0) @@ -1381,9 +1443,9 @@ __db_pget(dbp, txn, skey, pkey, data, flags) if (flags == 0 || flags == DB_RMW) flags |= DB_SET; - ret = __db_c_pget(dbc, skey, pkey, data, flags); + ret = __dbc_pget(dbc, skey, pkey, data, flags); - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -1556,14 +1618,29 @@ __db_put_arg(dbp, key, data, flags) err: return (__db_ferr(dbenv, "DB->put", 0)); } - /* Check for invalid key/data flags. */ - if ((ret = __dbt_ferr(dbp, "key", key, returnkey)) != 0) + /* + * Check for invalid key/data flags. The key may reasonably be NULL + * if DB_APPEND is set and the application doesn't care about the + * returned key. + */ + if (((returnkey && key != NULL) || !returnkey) && + (ret = __dbt_ferr(dbp, "key", key, returnkey)) != 0) return (ret); if ((ret = __dbt_ferr(dbp, "data", data, 0)) != 0) return (ret); - /* Keys shouldn't have partial flags during a put. */ - if (F_ISSET(key, DB_DBT_PARTIAL)) + /* + * The key parameter should not be NULL or have the "partial" flag set + * in a put call unless the user doesn't care about a key value we'd + * return. The user tells us they don't care about the returned key by + * setting the key parameter to NULL or configuring the key DBT to not + * return any information. (Returned keys from a put are always record + * numbers, and returning part of a record number doesn't make sense: + * only accept a partial return if the length returned is 0.) + */ + if ((returnkey && + key != NULL && F_ISSET(key, DB_DBT_PARTIAL) && key->dlen != 0) || + (!returnkey && F_ISSET(key, DB_DBT_PARTIAL))) return (__db_ferr(dbenv, "key DBT", 0)); /* Check for partial puts in the presence of duplicates. */ @@ -1619,6 +1696,11 @@ __db_compact_pp(dbp, txn, start, stop, c_data, flags, end) if (DB_IS_READONLY(dbp)) return (__db_rdonly(dbenv, "DB->compact")); + if (start != NULL && (ret = __dbt_usercopy(dbenv, start)) != 0) + return (ret); + if (stop != NULL && (ret = __dbt_usercopy(dbenv, stop)) != 0) + return (ret); + ENV_ENTER(dbenv, ip); /* Check for replication block. */ @@ -1654,6 +1736,7 @@ err: ret = __dbh_am_chk(dbp, DB_OK_BTREE); ret = t_ret; ENV_LEAVE(dbenv, ip); + __dbt_userfree(dbenv, start, stop, NULL); return (ret); } @@ -1705,13 +1788,13 @@ err: ENV_LEAVE(dbenv, ip); } /* - * __db_c_close_pp -- - * DBC->c_close pre/post processing. + * __dbc_close_pp -- + * DBC->close pre/post processing. * - * PUBLIC: int __db_c_close_pp __P((DBC *)); + * PUBLIC: int __dbc_close_pp __P((DBC *)); */ int -__db_c_close_pp(dbc) +__dbc_close_pp(dbc) DBC *dbc; { DB_ENV *dbenv; @@ -1738,7 +1821,7 @@ __db_c_close_pp(dbc) /* Check for replication block. */ handle_check = dbc->txn == NULL && IS_ENV_REPLICATED(dbenv); - ret = __db_c_close(dbc); + ret = __dbc_close(dbc); /* Release replication block. */ if (handle_check && @@ -1750,13 +1833,13 @@ err: ENV_LEAVE(dbenv, ip); } /* - * __db_c_count_pp -- - * DBC->c_count pre/post processing. + * __dbc_count_pp -- + * DBC->count pre/post processing. * - * PUBLIC: int __db_c_count_pp __P((DBC *, db_recno_t *, u_int32_t)); + * PUBLIC: int __dbc_count_pp __P((DBC *, db_recno_t *, u_int32_t)); */ int -__db_c_count_pp(dbc, recnop, flags) +__dbc_count_pp(dbc, recnop, flags) DBC *dbc; db_recno_t *recnop; u_int32_t flags; @@ -1786,19 +1869,19 @@ __db_c_count_pp(dbc, recnop, flags) ENV_ENTER(dbenv, ip); - ret = __db_c_count(dbc, recnop); + ret = __dbc_count(dbc, recnop); ENV_LEAVE(dbenv, ip); return (ret); } /* - * __db_c_del_pp -- - * DBC->c_del pre/post processing. + * __dbc_del_pp -- + * DBC->del pre/post processing. * - * PUBLIC: int __db_c_del_pp __P((DBC *, u_int32_t)); + * PUBLIC: int __dbc_del_pp __P((DBC *, u_int32_t)); */ int -__db_c_del_pp(dbc, flags) +__dbc_del_pp(dbc, flags) DBC *dbc; u_int32_t flags; { @@ -1812,7 +1895,7 @@ __db_c_del_pp(dbc, flags) PANIC_CHECK(dbenv); - if ((ret = __db_c_del_arg(dbc, flags)) != 0) + if ((ret = __dbc_del_arg(dbc, flags)) != 0) return (ret); ENV_ENTER(dbenv, ip); @@ -1822,18 +1905,18 @@ __db_c_del_pp(dbc, flags) goto err; DEBUG_LWRITE(dbc, dbc->txn, "DBcursor->del", NULL, NULL, flags); - ret = __db_c_del(dbc, flags); + ret = __dbc_del(dbc, flags); err: ENV_LEAVE(dbenv, ip); return (ret); } /* - * __db_c_del_arg -- - * Check DBC->c_del arguments. + * __dbc_del_arg -- + * Check DBC->del arguments. */ static int -__db_c_del_arg(dbc, flags) +__dbc_del_arg(dbc, flags) DBC *dbc; u_int32_t flags; { @@ -1869,13 +1952,13 @@ __db_c_del_arg(dbc, flags) } /* - * __db_c_dup_pp -- - * DBC->c_dup pre/post processing. + * __dbc_dup_pp -- + * DBC->dup pre/post processing. * - * PUBLIC: int __db_c_dup_pp __P((DBC *, DBC **, u_int32_t)); + * PUBLIC: int __dbc_dup_pp __P((DBC *, DBC **, u_int32_t)); */ int -__db_c_dup_pp(dbc, dbcp, flags) +__dbc_dup_pp(dbc, dbcp, flags) DBC *dbc, **dbcp; u_int32_t flags; { @@ -1899,26 +1982,26 @@ __db_c_dup_pp(dbc, dbcp, flags) ENV_ENTER(dbenv, ip); - ret = __db_c_dup(dbc, dbcp, flags); + ret = __dbc_dup(dbc, dbcp, flags); ENV_LEAVE(dbenv, ip); return (ret); } /* - * __db_c_get_pp -- - * DBC->c_get pre/post processing. + * __dbc_get_pp -- + * DBC->get pre/post processing. * - * PUBLIC: int __db_c_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); */ int -__db_c_get_pp(dbc, key, data, flags) +__dbc_get_pp(dbc, key, data, flags) DBC *dbc; DBT *key, *data; u_int32_t flags; { DB *dbp; DB_ENV *dbenv; - int ret; + int ignore_lease, ret; DB_THREAD_INFO *ip; dbp = dbc->dbp; @@ -1926,14 +2009,23 @@ __db_c_get_pp(dbc, key, data, flags) PANIC_CHECK(dbenv); - if ((ret = __db_c_get_arg(dbc, key, data, flags)) != 0) + ignore_lease = LF_ISSET(DB_IGNORE_LEASE); + LF_CLR(DB_IGNORE_LEASE); + if ((ret = __dbc_get_arg(dbc, key, data, flags)) != 0) return (ret); ENV_ENTER(dbenv, ip); DEBUG_LREAD(dbc, dbc->txn, "DBcursor->get", flags == DB_SET || flags == DB_SET_RANGE ? key : NULL, NULL, flags); - ret = __db_c_get(dbc, key, data, flags); + ret = __dbc_get(dbc, key, data, flags); + + /* + * Check for master leases. + */ + if (ret == 0 && IS_REP_MASTER(dbenv) && IS_USING_LEASES(dbenv) && + !ignore_lease) + ret = __rep_lease_check(dbenv, 1); ENV_LEAVE(dbenv, ip); __dbt_userfree(dbenv, key, NULL, data); @@ -1941,11 +2033,11 @@ __db_c_get_pp(dbc, key, data, flags) } /* - * __db_c_get_arg -- + * __dbc_get_arg -- * Common DBC->get argument checking, used by both DBC->get and DBC->pget. */ static int -__db_c_get_arg(dbc, key, data, flags) +__dbc_get_arg(dbc, key, data, flags) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -2009,6 +2101,7 @@ __db_c_get_arg(dbc, key, data, flags) break; case DB_LAST: case DB_PREV: + case DB_PREV_DUP: case DB_PREV_NODUP: if (multi) multi_err: return (__db_ferr(dbenv, "DBcursor->get", 1)); @@ -2077,11 +2170,13 @@ err: __dbt_userfree(dbenv, key, NULL, data); } /* - * The cursor must be initialized for DB_CURRENT, DB_GET_RECNO and - * DB_NEXT_DUP. Return EINVAL for an invalid cursor, otherwise 0. + * The cursor must be initialized for DB_CURRENT, DB_GET_RECNO, + * DB_PREV_DUP and DB_NEXT_DUP. Return EINVAL for an invalid + * cursor, otherwise 0. */ if (!IS_INITIALIZED(dbc) && (flags == DB_CURRENT || - flags == DB_GET_RECNO || flags == DB_NEXT_DUP)) + flags == DB_GET_RECNO || + flags == DB_NEXT_DUP || flags == DB_PREV_DUP)) return (__db_curinval(dbenv)); /* Check for consistent transaction usage. */ @@ -2144,13 +2239,13 @@ __db_secondary_close_pp(dbp, flags) } /* - * __db_c_pget_pp -- - * DBC->c_pget pre/post processing. + * __dbc_pget_pp -- + * DBC->pget pre/post processing. * - * PUBLIC: int __db_c_pget_pp __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_pget_pp __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); */ int -__db_c_pget_pp(dbc, skey, pkey, data, flags) +__dbc_pget_pp(dbc, skey, pkey, data, flags) DBC *dbc; DBT *skey, *pkey, *data; u_int32_t flags; @@ -2158,19 +2253,28 @@ __db_c_pget_pp(dbc, skey, pkey, data, flags) DB *dbp; DB_ENV *dbenv; DB_THREAD_INFO *ip; - int ret; + int ignore_lease, ret; dbp = dbc->dbp; dbenv = dbp->dbenv; PANIC_CHECK(dbenv); - if ((ret = __db_c_pget_arg(dbc, pkey, flags)) != 0 || - (ret = __db_c_get_arg(dbc, skey, data, flags)) != 0) + ignore_lease = LF_ISSET(DB_IGNORE_LEASE); + LF_CLR(DB_IGNORE_LEASE); + if ((ret = __dbc_pget_arg(dbc, pkey, flags)) != 0 || + (ret = __dbc_get_arg(dbc, skey, data, flags)) != 0) return (ret); ENV_ENTER(dbenv, ip); - ret = __db_c_pget(dbc, skey, pkey, data, flags); + ret = __dbc_pget(dbc, skey, pkey, data, flags); + /* + * Check for master leases. + */ + if (ret == 0 && IS_REP_MASTER(dbenv) && IS_USING_LEASES(dbenv) && + !ignore_lease) + ret = __rep_lease_check(dbenv, 1); + ENV_LEAVE(dbenv, ip); __dbt_userfree(dbenv, skey, pkey, data); @@ -2178,11 +2282,11 @@ __db_c_pget_pp(dbc, skey, pkey, data, flags) } /* - * __db_c_pget_arg -- + * __dbc_pget_arg -- * Check DBC->pget arguments. */ static int -__db_c_pget_arg(dbc, pkey, flags) +__dbc_pget_arg(dbc, pkey, flags) DBC *dbc; DBT *pkey; u_int32_t flags; @@ -2225,7 +2329,7 @@ __db_c_pget_arg(dbc, pkey, flags) return (ret); break; default: - /* __db_c_get_arg will catch the rest. */ + /* __dbc_get_arg will catch the rest. */ break; } @@ -2247,13 +2351,13 @@ __db_c_pget_arg(dbc, pkey, flags) } /* - * __db_c_put_pp -- + * __dbc_put_pp -- * DBC->put pre/post processing. * - * PUBLIC: int __db_c_put_pp __P((DBC *, DBT *, DBT *, u_int32_t)); + * PUBLIC: int __dbc_put_pp __P((DBC *, DBT *, DBT *, u_int32_t)); */ int -__db_c_put_pp(dbc, key, data, flags) +__dbc_put_pp(dbc, key, data, flags) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -2268,7 +2372,7 @@ __db_c_put_pp(dbc, key, data, flags) PANIC_CHECK(dbenv); - if ((ret = __db_c_put_arg(dbc, key, data, flags)) != 0) + if ((ret = __dbc_put_arg(dbc, key, data, flags)) != 0) return (ret); ENV_ENTER(dbenv, ip); @@ -2281,7 +2385,7 @@ __db_c_put_pp(dbc, key, data, flags) flags == DB_KEYFIRST || flags == DB_KEYLAST || flags == DB_NODUPDATA || flags == DB_UPDATE_SECONDARY ? key : NULL, data, flags); - ret =__db_c_put(dbc, key, data, flags); + ret =__dbc_put(dbc, key, data, flags); err: ENV_LEAVE(dbenv, ip); __dbt_userfree(dbenv, key, NULL, data); @@ -2289,11 +2393,11 @@ err: ENV_LEAVE(dbenv, ip); } /* - * __db_c_put_arg -- + * __dbc_put_arg -- * Check DBC->put arguments. */ static int -__db_c_put_arg(dbc, key, data, flags) +__dbc_put_arg(dbc, key, data, flags) DBC *dbc; DBT *key, *data; u_int32_t flags; @@ -2341,7 +2445,7 @@ __db_c_put_arg(dbc, key, data, flags) case DB_RECNO: /* Only with mutable record numbers. */ if (!F_ISSET(dbp, DB_AM_RENUMBER)) goto err; - key_flags = 1; + key_flags = key == NULL ? 0 : 1; break; case DB_UNKNOWN: default: @@ -2369,14 +2473,26 @@ __db_c_put_arg(dbc, key, data, flags) err: return (__db_ferr(dbenv, "DBcursor->put", 0)); } - /* Check for invalid key/data flags. */ + /* + * Check for invalid key/data flags. The key may reasonably be NULL + * if DB_AFTER or DB_BEFORE is set and the application doesn't care + * about the returned key, or if the DB_CURRENT flag is set. + */ if (key_flags && (ret = __dbt_ferr(dbp, "key", key, 0)) != 0) return (ret); if ((ret = __dbt_ferr(dbp, "data", data, 0)) != 0) return (ret); - /* Keys shouldn't have partial flags during a put. */ - if (key_flags && F_ISSET(key, DB_DBT_PARTIAL)) + /* + * The key parameter should not be NULL or have the "partial" flag set + * in a put call unless the user doesn't care about a key value we'd + * return. The user tells us they don't care about the returned key by + * setting the key parameter to NULL or configuring the key DBT to not + * return any information. (Returned keys from a put are always record + * numbers, and returning part of a record number doesn't make sense: + * only accept a partial return if the length returned is 0.) + */ + if (key_flags && F_ISSET(key, DB_DBT_PARTIAL) && key->dlen != 0) return (__db_ferr(dbenv, "key DBT", 0)); /* diff --git a/db/db/db_join.c b/db/db/db_join.c index 7d75b344e..101c958fe 100644 --- a/db/db/db_join.c +++ b/db/db/db_join.c @@ -1,10 +1,9 @@ /* * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: db_join.c,v 12.14 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_join.c,v 12.18 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" @@ -13,6 +12,7 @@ #include "dbinc/db_page.h" #include "dbinc/db_join.h" #include "dbinc/btree.h" +#include "dbinc/lock.h" static int __db_join_close_pp __P((DBC *)); static int __db_join_cmp __P((const void *, const void *)); @@ -21,7 +21,7 @@ static int __db_join_get __P((DBC *, DBT *, DBT *, u_int32_t)); static int __db_join_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); static int __db_join_getnext __P((DBC *, DBT *, DBT *, u_int32_t, u_int32_t)); static int __db_join_primget __P((DB *, - DB_TXN *, u_int32_t, DBT *, DBT *, u_int32_t)); + DB_TXN *, DB_LOCKER *, DBT *, DBT *, u_int32_t)); static int __db_join_put __P((DBC *, DBT *, DBT *, u_int32_t)); /* @@ -193,13 +193,13 @@ __db_join(primary, curslist, dbcp, flags) * function beware! */ if ((ret = - __db_c_dup(jc->j_curslist[0], jc->j_workcurs, DB_POSITION)) != 0) + __dbc_dup(jc->j_curslist[0], jc->j_workcurs, DB_POSITION)) != 0) goto err; - dbc->c_close = __db_join_close_pp; - dbc->c_del = __db_join_del; - dbc->c_get = __db_join_get_pp; - dbc->c_put = __db_join_put; + dbc->close = dbc->c_close = __db_join_close_pp; + dbc->del = dbc->c_del = __db_join_del; + dbc->get = dbc->c_get = __db_join_get_pp; + dbc->put = dbc->c_put = __db_join_put; dbc->internal = (DBC_INTERNAL *)jc; dbc->dbp = primary; jc->j_primary = primary; @@ -220,7 +220,7 @@ err: if (jc != NULL) { __os_free(dbenv, jc->j_curslist); if (jc->j_workcurs != NULL) { if (jc->j_workcurs[0] != NULL) - (void)__db_c_close(jc->j_workcurs[0]); + (void)__dbc_close(jc->j_workcurs[0]); __os_free(dbenv, jc->j_workcurs); } if (jc->j_fdupcurs != NULL) @@ -236,7 +236,7 @@ err: if (jc != NULL) { /* * __db_join_close_pp -- - * DBC->c_close pre/post processing for join cursors. + * DBC->close pre/post processing for join cursors. */ static int __db_join_close_pp(dbc) @@ -322,7 +322,7 @@ __db_join_get_pp(dbc, key, data, flags) if (LF_ISSET(DB_READ_COMMITTED | DB_READ_UNCOMMITTED | DB_RMW)) { if (!LOCKING_ON(dbenv)) - return (__db_fnl(dbenv, "DBcursor->c_get")); + return (__db_fnl(dbenv, "DBC->get")); LF_CLR(DB_READ_COMMITTED | DB_READ_UNCOMMITTED | DB_RMW); } @@ -331,7 +331,7 @@ __db_join_get_pp(dbc, key, data, flags) case DB_JOIN_ITEM: break; default: - return (__db_ferr(dbenv, "DBcursor->c_get", 0)); + return (__db_ferr(dbenv, "DBC->get", 0)); } /* @@ -428,7 +428,7 @@ __db_join_get(dbc, key_arg, data_arg, flags) goto samekey; F_CLR(jc, JOIN_RETRY); -retry: ret = __db_c_get(jc->j_workcurs[0], &jc->j_key, key_n, +retry: ret = __dbc_get(jc->j_workcurs[0], &jc->j_key, key_n, opmods | (jc->j_exhausted[0] ? DB_NEXT_DUP : DB_CURRENT)); if (ret == DB_BUFFER_SMALL) { @@ -456,7 +456,7 @@ retry: ret = __db_c_get(jc->j_workcurs[0], &jc->j_key, key_n, */ for (i = 1; i < jc->j_ncurs; i++) { if (jc->j_fdupcurs[i] != NULL && - (ret = __db_c_close(jc->j_fdupcurs[i])) != 0) + (ret = __dbc_close(jc->j_fdupcurs[i])) != 0) goto err; jc->j_fdupcurs[i] = NULL; } @@ -480,7 +480,7 @@ retry: ret = __db_c_get(jc->j_workcurs[0], &jc->j_key, key_n, DB_ASSERT(dbenv, jc->j_curslist[i] != NULL); if (jc->j_workcurs[i] == NULL) /* If this is NULL, we need to dup curslist into it. */ - if ((ret = __db_c_dup(jc->j_curslist[i], + if ((ret = __dbc_dup(jc->j_curslist[i], &jc->j_workcurs[i], DB_POSITION)) != 0) goto err; @@ -532,7 +532,7 @@ retry2: cp = jc->j_workcurs[i]; * and let strange things happen--we * can't make rope childproof. */ - if ((ret = __db_c_close( + if ((ret = __dbc_close( jc->j_workcurs[j])) != 0) goto err; if (!SORTED_SET(jc, 0) || @@ -545,7 +545,7 @@ retry2: cp = jc->j_workcurs[i]; jc->j_workcurs[j] = NULL; else /* Partial reset suffices. */ - if ((__db_c_dup( + if ((__dbc_dup( jc->j_fdupcurs[j], &jc->j_workcurs[j], DB_POSITION)) != 0) @@ -565,12 +565,12 @@ retry2: cp = jc->j_workcurs[i]; jc->j_workcurs[j] != NULL; j++) { if ((ret = - __db_c_close(jc->j_workcurs[j])) != 0) + __dbc_close(jc->j_workcurs[j])) != 0) goto err; jc->j_exhausted[j] = 0; if (jc->j_fdupcurs[j] == NULL) jc->j_workcurs[j] = NULL; - else if ((ret = __db_c_dup(jc->j_fdupcurs[j], + else if ((ret = __dbc_dup(jc->j_fdupcurs[j], &jc->j_workcurs[j], DB_POSITION)) != 0) goto err; } @@ -616,7 +616,7 @@ mem_err: __db_errx(dbenv, * duplicate duplicates; store this into jc->j_fdupcurs[i]. */ if (SORTED_SET(jc, i) && jc->j_fdupcurs[i] == NULL && (ret = - __db_c_dup(cp, &jc->j_fdupcurs[i], DB_POSITION)) != 0) + __dbc_dup(cp, &jc->j_fdupcurs[i], DB_POSITION)) != 0) goto err; } @@ -628,7 +628,7 @@ samekey: /* * Get the key we tried and failed to return last time; * it should be the current datum of all the secondary cursors. */ - if ((ret = __db_c_get(jc->j_workcurs[0], + if ((ret = __dbc_get(jc->j_workcurs[0], &jc->j_key, key_n, DB_CURRENT | opmods)) != 0) return (ret); F_CLR(jc, JOIN_RETRY); @@ -714,7 +714,7 @@ samekey: /* /* * __db_join_close -- - * DBC->c_close for join cursors. + * DBC->close for join cursors. * * PUBLIC: int __db_join_close __P((DBC *)); */ @@ -757,10 +757,10 @@ __db_join_close(dbc) */ for (i = 0; i < jc->j_ncurs; i++) { if (jc->j_workcurs[i] != NULL && - (t_ret = __db_c_close(jc->j_workcurs[i])) != 0) + (t_ret = __dbc_close(jc->j_workcurs[i])) != 0) ret = t_ret; if (jc->j_fdupcurs[i] != NULL && - (t_ret = __db_c_close(jc->j_fdupcurs[i])) != 0) + (t_ret = __dbc_close(jc->j_fdupcurs[i])) != 0) ret = t_ret; } @@ -814,7 +814,7 @@ __db_join_getnext(dbc, key, data, exhausted, opmods) */ memset(&ldata, 0, sizeof(DBT)); F_SET(&ldata, DB_DBT_MALLOC); - if ((ret = __db_c_get(dbc, + if ((ret = __dbc_get(dbc, key, &ldata, opmods | DB_CURRENT)) != 0) break; cmp = func(dbp, data, &ldata); @@ -839,7 +839,7 @@ __db_join_getnext(dbc, key, data, exhausted, opmods) __os_ufree(dbp->dbenv, ldata.data); /* FALLTHROUGH */ case 1: - ret = __db_c_get(dbc, key, data, opmods | DB_GET_BOTHC); + ret = __dbc_get(dbc, key, data, opmods | DB_GET_BOTHC); break; default: ret = EINVAL; @@ -863,8 +863,8 @@ __db_join_cmp(a, b) dbca = *((DBC * const *)a); dbcb = *((DBC * const *)b); - if (__db_c_count(dbca, &counta) != 0 || - __db_c_count(dbcb, &countb) != 0) + if (__dbc_count(dbca, &counta) != 0 || + __dbc_count(dbcb, &countb) != 0) return (0); return ((long)counta - (long)countb); @@ -876,10 +876,10 @@ __db_join_cmp(a, b) * locker ID if we're doing CDB locking. */ static int -__db_join_primget(dbp, txn, lockerid, key, data, flags) +__db_join_primget(dbp, txn, locker, key, data, flags) DB *dbp; DB_TXN *txn; - u_int32_t lockerid; + DB_LOCKER *locker; DBT *key, *data; u_int32_t flags; { @@ -888,7 +888,7 @@ __db_join_primget(dbp, txn, lockerid, key, data, flags) int ret, t_ret; if ((ret = __db_cursor_int(dbp, - txn, dbp->type, PGNO_INVALID, 0, lockerid, &dbc)) != 0) + txn, dbp->type, PGNO_INVALID, 0, locker, &dbc)) != 0) return (ret); /* @@ -918,9 +918,9 @@ __db_join_primget(dbp, txn, lockerid, key, data, flags) */ SET_RET_MEM(dbc, dbp); - ret = __db_c_get(dbc, key, data, DB_SET | rmw); + ret = __dbc_get(dbc, key, data, DB_SET | rmw); - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); diff --git a/db/db/db_meta.c b/db/db/db_meta.c index 316840a02..adcfb91e3 100644 --- a/db/db/db_meta.c +++ b/db/db/db_meta.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_meta.c,v 12.35 2006/08/24 14:45:15 bostic Exp $ + * $Id: db_meta.c,v 12.47 2007/05/17 17:17:41 bostic Exp $ */ #include "db_config.h" @@ -183,7 +182,7 @@ __db_new(dbc, type, pagepp) } LSN(h) = LSN(meta); - ret = __memp_fput(mpf, meta, 0); + ret = __memp_fput(mpf, meta, dbc->priority); meta = NULL; if ((t_ret = __TLPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; @@ -240,9 +239,9 @@ __db_new(dbc, type, pagepp) return (0); err: if (h != NULL) - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbc->priority); if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, dbc->priority); (void)__TLPUT(dbc, metalock); return (ret); } @@ -262,22 +261,28 @@ __db_free(dbc, h) DB *dbp; DBT ddbt, ldbt; DB_LOCK metalock; + DB_LSN *lsnp; DB_MPOOLFILE *mpf; - db_pgno_t last_pgno, *lp, next_pgno, pgno, prev_pgno; - u_int32_t lflag, nelem; - int do_truncate, ret, t_ret; + PAGE *prev; + db_pgno_t last_pgno, next_pgno, pgno, prev_pgno; + u_int32_t lflag; + int ret, t_ret; #ifdef HAVE_FTRUNCATE - db_pgno_t *list; - u_int32_t position, start; + db_pgno_t *list, *lp; + u_int32_t nelem, position, start; + int do_truncate; #endif dbp = dbc->dbp; mpf = dbp->mpf; prev_pgno = PGNO_INVALID; - nelem = 0; meta = NULL; - do_truncate = 0; + prev = NULL; +#ifdef HAVE_FTRUNCATE lp = NULL; + nelem = 0; + do_truncate = 0; +#endif /* * Retrieve the metadata page. If we are not keeping a sorted @@ -293,11 +298,24 @@ __db_free(dbc, h) if ((ret = __db_lget(dbc, LCK_ALWAYS, pgno, DB_LOCK_WRITE, 0, &metalock)) != 0) goto err; - if ((ret = __memp_fget(mpf, &pgno, dbc->txn, 0, &meta)) != 0) + + /* If we support truncate, we might not dirty the meta page. */ + if ((ret = __memp_fget(mpf, &pgno, dbc->txn, +#ifdef HAVE_FTRUNCATE + 0, +#else + DB_MPOOL_DIRTY, +#endif + &meta)) != 0) goto err1; last_pgno = meta->last_pgno; next_pgno = meta->free; + /* + * Assign lsnp here so it always initialized when + * HAVE_FTRUNCATE is not defined. + */ + lsnp = &LSN(meta); DB_ASSERT(dbp->dbenv, h->pgno != next_pgno); @@ -352,21 +370,26 @@ __db_free(dbc, h) } no_sort: - if (prev_pgno != PGNO_INVALID) { - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if (prev_pgno == PGNO_INVALID) { + if ((ret = __memp_dirty(mpf, + &meta, dbc->txn, dbc->priority, 0)) != 0) goto err1; - meta = NULL; + lsnp = &LSN(meta); + } else { pgno = prev_pgno; - if ((ret = __memp_fget(mpf, &pgno, dbc->txn, 0, &meta)) != 0) + if ((ret = __memp_fget(mpf, + &pgno, dbc->txn, DB_MPOOL_DIRTY, &prev)) != 0) goto err1; - next_pgno = NEXT_PGNO(meta); + next_pgno = NEXT_PGNO(prev); + lsnp = &LSN(prev); } #endif - if ((ret = __memp_dirty(mpf, &meta, dbc->txn, 0)) != 0) - goto err1; - - /* Log the change. */ + /* + * Log the change. + * We are either logging an update to the metapage or to the + * previous page in the sorted list. + */ if (DBC_LOGGING(dbc)) { memset(&ldbt, 0, sizeof(ldbt)); ldbt.data = h; @@ -394,8 +417,8 @@ no_sort: ddbt.data = (u_int8_t *)h + HOFFSET(h); ddbt.size = dbp->pgsize - HOFFSET(h); if ((ret = __db_pg_freedata_log(dbp, dbc->txn, - &LSN(meta), lflag, - h->pgno, &LSN(meta), pgno, + lsnp, lflag, + h->pgno, lsnp, pgno, &ldbt, next_pgno, last_pgno, &ddbt)) != 0) goto err1; goto logged; @@ -415,11 +438,12 @@ no_sort: } if ((ret = __db_pg_free_log(dbp, - dbc->txn, &LSN(meta), lflag, h->pgno, - &LSN(meta), pgno, &ldbt, next_pgno, last_pgno)) != 0) + dbc->txn, lsnp, lflag, h->pgno, + lsnp, pgno, &ldbt, next_pgno, last_pgno)) != 0) goto err1; } else - LSN_NOT_LOGGED(LSN(meta)); + LSN_NOT_LOGGED(*lsnp); + logged: #ifdef HAVE_FTRUNCATE if (do_truncate) { @@ -429,10 +453,10 @@ logged: dbc, meta, h, list, start, nelem); h = NULL; } else if (h->pgno == last_pgno) { - LSN(h) = LSN(meta); + LSN(h) = *lsnp; P_INIT(h, dbp->pgsize, h->pgno, PGNO_INVALID, next_pgno, 0, P_INVALID); - if ((ret = __memp_fput(mpf, h, DB_MPOOL_DISCARD)) != 0) + if ((ret = __memp_fput(mpf, h, DB_PRIORITY_VERY_LOW)) != 0) goto err1; h = NULL; /* Give the page back to the OS. */ @@ -449,9 +473,10 @@ logged: * reinitialize it and put it at the head of * the free list. */ - if ((ret = __memp_dirty(mpf, &h, dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &h, dbc->txn, dbc->priority, 0)) != 0) goto err1; - LSN(h) = LSN(meta); + LSN(h) = *lsnp; P_INIT(h, dbp->pgsize, h->pgno, PGNO_INVALID, next_pgno, 0, P_INVALID); #ifdef DIAGNOSTIC @@ -461,18 +486,22 @@ logged: if (prev_pgno == PGNO_INVALID) meta->free = h->pgno; else - NEXT_PGNO(meta) = h->pgno; + NEXT_PGNO(prev) = h->pgno; } /* Discard the metadata or previous page. */ -err1: if (meta != NULL && - (t_ret = __memp_fput(mpf, (PAGE *)meta, 0)) != 0 && ret == 0) +err1: if (meta != NULL && (t_ret = + __memp_fput(mpf, (PAGE *)meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; + if (prev != (PAGE*) meta && prev != NULL && + (t_ret = __memp_fput(mpf, prev, dbc->priority)) != 0 && ret == 0) + ret = t_ret; /* Discard the caller's page reference. */ -err: if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) +err: if (h != NULL && + (t_ret = __memp_fput(mpf, h, dbc->priority)) != 0 && ret == 0) ret = t_ret; /* @@ -546,14 +575,14 @@ __db_freelist_sort(list, nelems) * __db_pg_truncate -- sort the freelist and find the truncation point. * * PUBLIC: #ifdef HAVE_FTRUNCATE - * PUBLIC: int __db_pg_truncate __P((DB_MPOOLFILE *, DB_TXN *, + * PUBLIC: int __db_pg_truncate __P((DB *, DB_TXN *, * PUBLIC: struct pglist *list, DB_COMPACT *, u_int32_t *, db_pgno_t *, * PUBLIC: DB_LSN *, int)); * PUBLIC: #endif */ int -__db_pg_truncate(mpf, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) - DB_MPOOLFILE *mpf; +__db_pg_truncate(dbp, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) + DB *dbp; DB_TXN *txn; struct pglist *list; DB_COMPACT *c_data; @@ -562,6 +591,7 @@ __db_pg_truncate(mpf, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) DB_LSN *lsnp; int in_recovery; { + DB_MPOOLFILE *mpf; PAGE *h; struct pglist *lp; db_pgno_t pgno; @@ -570,6 +600,7 @@ __db_pg_truncate(mpf, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) ret = 0; + mpf = dbp->mpf; nelems = *nelemp; /* Sort the list */ __db_freelist_sort(list, nelems); @@ -601,8 +632,9 @@ __db_pg_truncate(mpf, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) goto err; } if (!in_recovery || LOG_COMPARE(&LSN(h), &lp->lsn) == 0) { - if ((ret = __memp_dirty(mpf, &h, txn, 0)) != 0) { - (void)__memp_fput(mpf, h, 0); + if ((ret = __memp_dirty(mpf, + &h, txn, dbp->priority, 0)) != 0) { + (void)__memp_fput(mpf, h, dbp->priority); goto err; } if (lp == &list[nelems - 1]) @@ -613,7 +645,7 @@ __db_pg_truncate(mpf, txn, list, c_data, nelemp, last_pgno, lsnp, in_recovery) LSN(h) = *lsnp; } - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbp->priority)) != 0) goto err; } @@ -711,7 +743,7 @@ __db_free_truncate(dbp, txn, flags, c_data, listp, nelemp, last_pgnop) lp->pgno = pgno; lp->lsn = LSN(h); pgno = NEXT_PGNO(h); - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbc->priority)) != 0) goto err; lp++; } while (pgno != PGNO_INVALID); @@ -729,7 +761,7 @@ __db_free_truncate(dbp, txn, flags, c_data, listp, nelemp, last_pgnop) } else LSN_NOT_LOGGED(LSN(meta)); - if ((ret = __db_pg_truncate(mpf, txn, list, c_data, + if ((ret = __db_pg_truncate(dbp, txn, list, c_data, &nelems, &meta->last_pgno, &LSN(meta), 0)) != 0) goto err; @@ -757,12 +789,12 @@ done: if (last_pgnop != NULL) err: if (list != NULL) __os_free(dbenv, list); - if (meta != NULL && - (t_ret = __memp_fput(mpf, (PAGE *)meta, 0)) != 0 && ret == 0) + if (meta != NULL && (t_ret = + __memp_fput(mpf, (PAGE *)meta, dbc->priority)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __TLPUT(dbc, metalock)) != 0 && ret == 0) ret = t_ret; - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -805,7 +837,8 @@ __db_truncate_freelist(dbc, meta, h, list, start, nelem) if ((ret = __memp_fget(mpf, lp, dbc->txn, 0, &pg)) != 0) goto err; pp->lsn = LSN(pg); - if ((ret = __memp_fput(mpf, pg, DB_MPOOL_DISCARD)) != 0) + if ((ret = + __memp_fput(mpf, pg, DB_PRIORITY_VERY_LOW)) != 0) goto err; pp++; } @@ -826,7 +859,7 @@ __db_truncate_freelist(dbc, meta, h, list, start, nelem) if (last_free != NULL) LSN(last_free) = LSN(meta); - if ((ret = __memp_fput(mpf, h, DB_MPOOL_DISCARD)) != 0) + if ((ret = __memp_fput(mpf, h, DB_PRIORITY_VERY_LOW)) != 0) goto err; h = NULL; if ((ret = __memp_ftruncate(mpf, list[start], 0)) != 0) @@ -837,7 +870,7 @@ __db_truncate_freelist(dbc, meta, h, list, start, nelem) meta->free = PGNO_INVALID; else { NEXT_PGNO(last_free) = PGNO_INVALID; - if ((ret = __memp_fput(mpf, last_free, 0)) != 0) + if ((ret = __memp_fput(mpf, last_free, dbc->priority)) != 0) goto err; last_free = NULL; } @@ -850,9 +883,9 @@ err: if (plist != NULL) /* We need to put the page on error. */ if (h != NULL) - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbc->priority); if (last_free != NULL) - (void)__memp_fput(mpf, last_free, 0); + (void)__memp_fput(mpf, last_free, dbc->priority); return (ret); } diff --git a/db/db/db_method.c b/db/db/db_method.c index c4b28cb4d..350e1b052 100644 --- a/db/db/db_method.c +++ b/db/db/db_method.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: db_method.c,v 12.23 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_method.c,v 12.40 2007/05/22 00:37:15 ubell Exp $ */ #include "db_config.h" @@ -20,7 +19,7 @@ #include "dbinc/txn.h" #ifdef HAVE_RPC -#ifndef NO_SYSTEM_INCLUDES +#ifdef HAVE_SYSTEM_INCLUDE_FILES #include #endif #include "db_server.h" @@ -31,9 +30,10 @@ static int __db_get_byteswapped __P((DB *, int *)); static int __db_get_dbname __P((DB *, const char **, const char **)); static DB_ENV *__db_get_env __P((DB *)); static DB_MPOOLFILE *__db_get_mpf __P((DB *)); +static int __db_get_multiple __P((DB *)); static int __db_get_transactional __P((DB *)); static int __db_get_type __P((DB *, DBTYPE *dbtype)); -static int __db_init __P((DB_ENV *, DB *, u_int32_t)); +static int __db_init __P((DB *, u_int32_t)); static int __db_set_alloc __P((DB *, void *(*)(size_t), void *(*)(void *, size_t), void (*)(void *))); static int __db_set_append_recno __P((DB *, int (*)(DB *, DBT *, db_recno_t))); @@ -47,6 +47,8 @@ static int __db_set_feedback __P((DB *, void (*)(DB *, int, int))); static void __db_map_flags __P((DB *, u_int32_t *, u_int32_t *)); static int __db_get_pagesize __P((DB *, u_int32_t *)); static int __db_set_paniccall __P((DB *, void (*)(DB_ENV *, int))); +static int __db_set_priority __P((DB *, DB_CACHE_PRIORITY)); +static int __db_get_priority __P((DB *, DB_CACHE_PRIORITY *)); static void __db_set_errcall __P((DB *, void (*)(const DB_ENV *, const char *, const char *))); static void __db_get_errfile __P((DB *, FILE **)); @@ -72,11 +74,11 @@ db_create(dbpp, dbenv, flags) DB_ENV *dbenv; u_int32_t flags; { - DB *dbp; DB_THREAD_INFO *ip; - DB_REP *db_rep; int ret; + ip = NULL; + /* Check for invalid function flags. */ switch (flags) { case 0: @@ -100,27 +102,48 @@ db_create(dbpp, dbenv, flags) return (__db_ferr(dbenv, "db_create", 0)); } - ip = NULL; if (dbenv != NULL) ENV_ENTER(dbenv, ip); - /* Allocate the DB. */ - if ((ret = __os_calloc(dbenv, 1, sizeof(*dbp), &dbp)) != 0) { - if (dbenv != NULL) - ENV_LEAVE(dbenv, ip); - return (ret); - } + ret = __db_create_internal(dbpp, dbenv, flags); + if (dbenv != NULL) + ENV_LEAVE(dbenv, ip); - if ((ret = __db_init(dbenv, dbp, flags)) != 0) - goto err; + return (ret); +} + +/* + * __db_create_internal -- + * DB constructor internal routine. + * + * PUBLIC: int __db_create_internal __P((DB **, DB_ENV *, u_int32_t)); + */ +int +__db_create_internal(dbpp, dbenv, flags) + DB **dbpp; + DB_ENV *dbenv; + u_int32_t flags; +{ + DB *dbp; + DB_REP *db_rep; + int ret; + + *dbpp = NULL; /* If we don't have an environment yet, allocate a local one. */ if (dbenv == NULL) { if ((ret = db_env_create(&dbenv, 0)) != 0) - goto err; + return (ret); F_SET(dbenv, DB_ENV_DBLOCAL); - ENV_ENTER(dbenv, ip); } + + /* Allocate and initialize the DB handle. */ + if ((ret = __os_calloc(dbenv, 1, sizeof(*dbp), &dbp)) != 0) + goto err; + dbp->dbenv = dbenv; + if ((ret = __db_init(dbp, flags)) != 0) + goto err; + MUTEX_LOCK(dbenv, dbenv->mtx_dblist); ++dbenv->db_ref; MUTEX_UNLOCK(dbenv, dbenv->mtx_dblist); @@ -150,13 +173,15 @@ db_create(dbpp, dbenv, flags) *dbpp = dbp; return (0); -err: if (dbp->mpf != NULL) - (void)__memp_fclose(dbp->mpf, 0); - if (dbenv != NULL && F_ISSET(dbenv, DB_ENV_DBLOCAL)) +err: if (dbp != NULL) { + if (dbp->mpf != NULL) + (void)__memp_fclose(dbp->mpf, 0); + __os_free(dbenv, dbp); + } + + if (F_ISSET(dbenv, DB_ENV_DBLOCAL)) (void)__env_close(dbenv, 0); - __os_free(dbenv, dbp); - *dbpp = NULL; - ENV_LEAVE(dbenv, ip); + return (ret); } @@ -165,14 +190,13 @@ err: if (dbp->mpf != NULL) * Initialize a DB structure. */ static int -__db_init(dbenv, dbp, flags) - DB_ENV *dbenv; +__db_init(dbp, flags) DB *dbp; u_int32_t flags; { int ret; - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; LOCK_INIT(dbp->handle_lock); TAILQ_INIT(&dbp->free_queue); @@ -192,6 +216,7 @@ __db_init(dbenv, dbp, flags) dbp->dump = __db_dump_pp; dbp->err = __dbh_err; dbp->errx = __dbh_errx; + dbp->exists = __db_exists; dbp->fd = __db_fd_pp; dbp->get = __db_get_pp; dbp->get_byteswapped = __db_get_byteswapped; @@ -205,6 +230,7 @@ __db_init(dbenv, dbp, flags) dbp->get_lorder = __db_get_lorder; dbp->get_mpf = __db_get_mpf; dbp->get_msgfile = __db_get_msgfile; + dbp->get_multiple = __db_get_multiple; dbp->get_open_flags = __db_get_open_flags; dbp->get_pagesize = __db_get_pagesize; dbp->get_transactional = __db_get_transactional; @@ -231,6 +257,8 @@ __db_init(dbenv, dbp, flags) dbp->set_msgfile = __db_set_msgfile; dbp->set_pagesize = __db_set_pagesize; dbp->set_paniccall = __db_set_paniccall; + dbp->set_priority = __db_set_priority; + dbp->get_priority = __db_get_priority; dbp->stat = __db_stat_pp; dbp->stat_print = __db_stat_print_pp; dbp->sync = __db_sync_pp; @@ -259,7 +287,7 @@ __db_init(dbenv, dbp, flags) * RPC specific: must be last, as we replace methods set by the * access methods. */ - if (dbenv != NULL && RPC_ON(dbenv)) { + if (RPC_ON(dbp->dbenv)) { __dbcl_dbp_init(dbp); /* * !!! @@ -267,11 +295,9 @@ __db_init(dbenv, dbp, flags) * can't handle that. */ dbp->open = __dbcl_db_open_wrap; - if ((ret = __dbcl_db_create(dbp, dbenv, flags)) != 0) + if ((ret = __dbcl_db_create(dbp, dbp->dbenv, flags)) != 0) return (ret); } -#else - COMPQUIET(dbenv, NULL); #endif return (0); @@ -308,7 +334,7 @@ __dbh_am_chk(dbp, flags) /* * __dbh_err -- - * Error message, including the standard error string. + * Db.err method. */ static void #ifdef STDC_HEADERS @@ -321,12 +347,13 @@ __dbh_err(dbp, error, fmt, va_alist) va_dcl #endif { + /* Message with error string, to stderr by default. */ DB_REAL_ERR(dbp->dbenv, error, DB_ERROR_SET, 1, fmt); } /* * __dbh_errx -- - * Error message. + * Db.errx method. */ static void #ifdef STDC_HEADERS @@ -338,6 +365,7 @@ __dbh_errx(dbp, fmt, va_alist) va_dcl #endif { + /* Message without error string, to stderr by default. */ DB_REAL_ERR(dbp->dbenv, 0, DB_ERROR_NOT_SET, 1, fmt); } @@ -396,9 +424,32 @@ __db_get_mpf(dbp) return (dbp->mpf); } +/* + * get_multiple -- + * Return whether this DB handle references a physical file with multiple + * databases. + */ +static int +__db_get_multiple(dbp) + DB *dbp; +{ + DB_ILLEGAL_BEFORE_OPEN(dbp, "DB->get_multiple"); + + /* + * Only return TRUE if the handle is for the master database, not for + * any subdatabase in the physical file. If it's a Btree, with the + * subdatabases flag set, and the meta-data page has the right value, + * return TRUE. (We don't need to check it's a Btree, I suppose, but + * it doesn't hurt.) + */ + return (dbp->type == DB_BTREE && + F_ISSET(dbp, DB_AM_SUBDB) && + dbp->meta_pgno == PGNO_BASE_MD ? 1 : 0); +} + /* * get_transactional -- - * Get whether this database was created in a transaction. + * Return whether this database was created in a transaction. */ static int __db_get_transactional(dbp) @@ -629,7 +680,9 @@ __db_get_flags(dbp, flagsp) DB_DUP, DB_DUPSORT, DB_ENCRYPT, +#ifdef HAVE_QUEUE DB_INORDER, +#endif DB_RECNUM, DB_RENUMBER, DB_REVSPLITOFF, @@ -852,3 +905,21 @@ __db_set_paniccall(dbp, paniccall) { return (__env_set_paniccall(dbp->dbenv, paniccall)); } + +static int +__db_set_priority(dbp, priority) + DB *dbp; + DB_CACHE_PRIORITY priority; +{ + dbp->priority = priority; + return (0); +} + +static int +__db_get_priority(dbp, priority) + DB *dbp; + DB_CACHE_PRIORITY *priority; +{ + *priority = dbp->priority; + return (0); +} diff --git a/db/db/db_open.c b/db/db/db_open.c index 6fe158900..a2a10b9b0 100644 --- a/db/db/db_open.c +++ b/db/db/db_open.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_open.c,v 12.30 2006/09/19 15:06:58 bostic Exp $ + * $Id: db_open.c,v 12.39 2007/05/29 20:52:57 ubell Exp $ */ #include "db_config.h" @@ -177,7 +176,7 @@ __db_open(dbp, txn, fname, dname, type, flags, mode, meta_pgno) LF_SET(DB_TRUNCATE); /* Set up the underlying environment. */ - if ((ret = __db_dbenv_setup(dbp, txn, fname, dname, id, flags)) != 0) + if ((ret = __db_env_setup(dbp, txn, fname, dname, id, flags)) != 0) return (ret); /* For in-memory databases, we now need to open/create the database. */ @@ -189,6 +188,9 @@ __db_open(dbp, txn, fname, dname, type, flags, mode, meta_pgno) if ((ret = __fop_file_setup(dbp, txn, dname, mode, flags, &id)) == 0 && DBENV_LOGGING(dbenv) && !F_ISSET(dbp, DB_AM_RECOVER) +#if !defined(DEBUG_ROP) && !defined(DEBUG_WOP) && !defined(DIAGNOSTIC) + && txn != NULL +#endif #if !defined(DEBUG_ROP) && !F_ISSET(dbp, DB_AM_RDONLY) #endif @@ -232,7 +234,7 @@ __db_open(dbp, txn, fname, dname, type, flags, mode, meta_pgno) LOCK_ISSET(dbp->handle_lock)) { if (IS_REAL_TXN(txn)) ret = __txn_lockevent(dbenv, - txn, dbp, &dbp->handle_lock, dbp->lid); + txn, dbp, &dbp->handle_lock, dbp->locker); else if (LOCKING_ON(dbenv)) /* Trade write handle lock for read handle lock. */ ret = __lock_downgrade(dbenv, @@ -329,7 +331,8 @@ __db_init_subdb(mdbp, dbp, name, txn) txn, 0, &meta)) != 0) goto err; ret = __db_meta_setup(mdbp->dbenv, dbp, name, meta, 0, 0); - if ((t_ret = __memp_fput(mpf, meta, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, meta, dbp->priority)) != 0 && ret == 0) ret = t_ret; /* * If __db_meta_setup found that the meta-page hadn't @@ -369,14 +372,14 @@ err: return (ret); * * Return 0 on success, >0 (errno) on error, -1 on checksum mismatch. * - * PUBLIC: int __db_chk_meta __P((DB_ENV *, DB *, DBMETA *, int)); + * PUBLIC: int __db_chk_meta __P((DB_ENV *, DB *, DBMETA *, u_int32_t)); */ int -__db_chk_meta(dbenv, dbp, meta, do_metachk) +__db_chk_meta(dbenv, dbp, meta, flags) DB_ENV *dbenv; DB *dbp; DBMETA *meta; - int do_metachk; + u_int32_t flags; { DB_LSN swap_lsn; int is_hmac, ret, swapped; @@ -404,7 +407,7 @@ __db_chk_meta(dbenv, dbp, meta, do_metachk) * We cannot add this to __db_metaswap because that gets done * later after we've verified the checksum or decrypted. */ - if (do_metachk) { + if (LF_ISSET(DB_CHK_META)) { swapped = 0; chk_retry: if ((ret = __db_check_chksum(dbenv, NULL, (DB_CIPHER *)dbenv->crypto_handle, chksum, meta, @@ -422,11 +425,12 @@ chk_retry: if ((ret = __db_check_chksum(dbenv, NULL, F_CLR(dbp, DB_AM_CHKSUM); #ifdef HAVE_CRYPTO - ret = __crypto_decrypt_meta(dbenv, dbp, (u_int8_t *)meta, do_metachk); + ret = __crypto_decrypt_meta(dbenv, + dbp, (u_int8_t *)meta, LF_ISSET(DB_CHK_META)); #endif /* Now that we're decrypted, we can check LSN. */ - if (LOGGING_ON(dbenv)) { + if (LOGGING_ON(dbenv) && !LF_ISSET(DB_CHK_NOLSN)) { /* * This gets called both before and after swapping, so we * need to check ourselves. If we already swapped it above, @@ -468,18 +472,18 @@ lsn_retry: * valid, and if so, initialize the dbp from the meta-data page. * * PUBLIC: int __db_meta_setup __P((DB_ENV *, - * PUBLIC: DB *, const char *, DBMETA *, u_int32_t, int)); + * PUBLIC: DB *, const char *, DBMETA *, u_int32_t, u_int32_t)); */ int -__db_meta_setup(dbenv, dbp, name, meta, oflags, do_metachk) +__db_meta_setup(dbenv, dbp, name, meta, oflags, flags) DB_ENV *dbenv; DB *dbp; const char *name; DBMETA *meta; u_int32_t oflags; - int do_metachk; + u_int32_t flags; { - u_int32_t flags, magic; + u_int32_t magic; int ret; ret = 0; @@ -531,7 +535,7 @@ swap_retry: * checksum match errors here, because we haven't opened the database * and even a checksum error isn't a reason to panic the environment. */ - if ((ret = __db_chk_meta(dbenv, dbp, meta, do_metachk)) != 0) { + if ((ret = __db_chk_meta(dbenv, dbp, meta, flags)) != 0) { if (ret == -1) __db_errx(dbenv, "%s: metadata page checksum error", name); diff --git a/db/db/db_overflow.c b/db/db/db_overflow.c index bf39291fc..1f7a6ca24 100644 --- a/db/db/db_overflow.c +++ b/db/db/db_overflow.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_overflow.c,v 12.13 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_overflow.c,v 12.21 2007/05/17 19:33:03 bostic Exp $ */ #include "db_config.h" @@ -157,9 +156,17 @@ skip_alloc: if (bytes > needed) bytes = needed; if (F_ISSET(dbt, DB_DBT_USERCOPY)) { - if ((ret = dbenv->dbt_usercopy(dbt, curoff, + /* + * The offset into the DBT is the total size + * less the amount of data still needed. Care + * needs to be taken if doing a partial copy + * beginning at an offset other than 0. + */ + if ((ret = dbenv->dbt_usercopy( + dbt, dbt->size - needed, src, bytes, DB_USERCOPY_SETDATA)) != 0) { - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, + h, dbp->priority); return (ret); } } else @@ -169,7 +176,7 @@ skip_alloc: } curoff += OV_LEN(h); pgno = h->next_pgno; - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbp->priority); } return (0); } @@ -234,7 +241,8 @@ __db_poff(dbc, dbt, pgnop) lastp == NULL ? &null_lsn : &LSN(lastp), &null_lsn)) != 0) { if (lastp != NULL) - (void)__memp_fput(mpf, lastp, 0); + (void)__memp_fput(mpf, + lastp, dbc->priority); lastp = pagep; break; } @@ -260,12 +268,12 @@ __db_poff(dbc, dbt, pgnop) else { lastp->next_pgno = PGNO(pagep); pagep->prev_pgno = PGNO(lastp); - (void)__memp_fput(mpf, lastp, 0); + (void)__memp_fput(mpf, lastp, dbc->priority); } lastp = pagep; } - if (lastp != NULL && - (t_ret = __memp_fput(mpf, lastp, 0)) != 0 && ret == 0) + if (lastp != NULL && (t_ret = + __memp_fput(mpf, lastp, dbc->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -295,7 +303,7 @@ __db_ovref(dbc, pgno) if (DBC_LOGGING(dbc)) { if ((ret = __db_ovref_log(dbp, dbc->txn, &LSN(h), 0, h->pgno, -1, &LSN(h))) != 0) { - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbc->priority); return (ret); } } else @@ -312,7 +320,7 @@ __db_ovref(dbc, pgno) */ --OV_REF(h); - return (__memp_fput(mpf, h, 0)); + return (__memp_fput(mpf, h, dbc->priority)); } /* @@ -346,12 +354,13 @@ __db_doff(dbc, pgno) * decrement the reference count and return. */ if (OV_REF(pagep) > 1) { - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); return (__db_ovref(dbc, pgno)); } - if ((ret = __memp_dirty(mpf, &pagep, dbc->txn, 0)) != 0) { - (void)__memp_fput(mpf, pagep, 0); + if ((ret = __memp_dirty(mpf, + &pagep, dbc->txn, dbc->priority, 0)) != 0) { + (void)__memp_fput(mpf, pagep, dbc->priority); return (ret); } @@ -364,7 +373,7 @@ __db_doff(dbc, pgno) PGNO(pagep), PREV_PGNO(pagep), NEXT_PGNO(pagep), &tmp_dbt, &LSN(pagep), &null_lsn, &null_lsn)) != 0) { - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); return (ret); } } else @@ -388,6 +397,10 @@ __db_doff(dbc, pgno) * specified a comparison function. In this case, we need to materialize * the entire object and call their comparison routine. * + * __db_moff and __db_coff are generic functions useful in searching and + * ordering off page items. __db_moff matches an overflow DBT with an offpage + * item. __db_coff compares two offpage items for lexicographic sort order. + * * PUBLIC: int __db_moff __P((DB *, DB_TXN *, const DBT *, db_pgno_t, u_int32_t, * PUBLIC: int (*)(DB *, const DBT *, const DBT *), int *)); */ @@ -444,7 +457,7 @@ __db_moff(dbp, txn, dbt, pgno, tlen, cmpfunc, cmpp) break; } pgno = NEXT_PGNO(pagep); - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbp->priority)) != 0) return (ret); if (*cmpp != 0) return (0); @@ -458,3 +471,129 @@ __db_moff(dbp, txn, dbt, pgno, tlen, cmpfunc, cmpp) return (0); } + +/* + * __db_coff -- + * Match two offpage dbts. + * + * The DBTs must both refer to offpage items. + * The match happens a chunk (page) at a time unless a user defined comparison + * function exists. It is not possible to optimize this comparison away when + * a lexicographic sort order is required on mismatch. + * + * NOTE: For now this function only works for H_OFFPAGE type items. It would + * be simple to extend it for use with B_OVERFLOW type items. It would only + * require extracting the total length, and page number, dependent on the + * DBT type. + * + * PUBLIC: int __db_coff __P((DB *, DB_TXN *, const DBT *, const DBT *, + * PUBLIC: int (*)(DB *, const DBT *, const DBT *), int *)); + */ +int +__db_coff(dbp, txn, dbt, match, cmpfunc, cmpp) + DB *dbp; + DB_TXN *txn; + const DBT *dbt, *match; + int (*cmpfunc) __P((DB *, const DBT *, const DBT *)), *cmpp; +{ + DBT local_key, local_match; + DB_MPOOLFILE *mpf; + PAGE *dbt_pagep, *match_pagep; + db_pgno_t dbt_pgno, match_pgno; + u_int32_t cmp_bytes, dbt_bufsz, dbt_len, match_bufsz; + u_int32_t match_len, max_data, page_sz; + u_int8_t *p1, *p2; + int ret; + void *dbt_buf, *match_buf; + + mpf = dbp->mpf; + page_sz = dbp->pgsize; + *cmpp = 0; + dbt_buf = match_buf = NULL; + + DB_ASSERT(dbp->dbenv, HPAGE_PTYPE(dbt->data) == H_OFFPAGE); + DB_ASSERT(dbp->dbenv, HPAGE_PTYPE(match->data) == H_OFFPAGE); + + /* Extract potentially unaligned length and pgno fields from DBTs */ + memcpy(&dbt_len, HOFFPAGE_TLEN(dbt->data), sizeof(u_int32_t)); + memcpy(&dbt_pgno, HOFFPAGE_PGNO(dbt->data), sizeof(db_pgno_t)); + memcpy(&match_len, HOFFPAGE_TLEN(match->data), sizeof(u_int32_t)); + memcpy(&match_pgno, HOFFPAGE_PGNO(match->data), sizeof(db_pgno_t)); + max_data = (dbt_len < match_len ? dbt_len : match_len); + + /* + * If there is a custom comparator, fully resolve both DBTs. + * Then call the users comparator. + */ + if (cmpfunc != NULL) { + memset(&local_key, 0, sizeof(local_key)); + memset(&local_match, 0, sizeof(local_match)); + dbt_buf = match_buf = NULL; + dbt_bufsz = match_bufsz = 0; + + if ((ret = __db_goff(dbp, txn, &local_key, dbt_len, + dbt_pgno, &dbt_buf, &dbt_bufsz)) != 0) + goto err1; + if ((ret = __db_goff(dbp, txn, &local_match, match_len, + match_pgno, &match_buf, &match_bufsz)) != 0) + goto err1; + /* The key needs to be the first argument for sort order */ + *cmpp = cmpfunc(dbp, &local_key, &local_match); + +err1: if (dbt_buf != NULL) + __os_free(dbp->dbenv, dbt_buf); + if (match_buf != NULL) + __os_free(dbp->dbenv, match_buf); + return (ret); + } + + /* Match the offpage DBTs a page at a time. */ + while (dbt_pgno != PGNO_INVALID && match_pgno != PGNO_INVALID) { + if ((ret = + __memp_fget(mpf, &dbt_pgno, txn, 0, &dbt_pagep)) != 0) + return (ret); + if ((ret = + __memp_fget(mpf, &match_pgno, txn, 0, &match_pagep)) != 0) { + (void)__memp_fput( + mpf, dbt_pagep, DB_PRIORITY_UNCHANGED); + return (ret); + } + cmp_bytes = page_sz < max_data ? page_sz : max_data; + for (p1 = (u_int8_t *)dbt_pagep + P_OVERHEAD(dbp), + p2 = (u_int8_t *)match_pagep + P_OVERHEAD(dbp); + cmp_bytes-- > 0; ++p1, ++p2) + if (*p1 != *p2) { + *cmpp = (long)*p1 - (long)*p2; + break; + } + + dbt_pgno = NEXT_PGNO(dbt_pagep); + match_pgno = NEXT_PGNO(match_pagep); + max_data -= page_sz; + if ((ret = + __memp_fput(mpf, dbt_pagep, DB_PRIORITY_UNCHANGED)) != 0) { + (void)__memp_fput( + mpf, match_pagep, DB_PRIORITY_UNCHANGED); + return (ret); + } + if ((ret = __memp_fput( + mpf, match_pagep, DB_PRIORITY_UNCHANGED)) != 0) + return (ret); + if (*cmpp != 0) + return (0); + } + + /* If a lexicographic mismatch was found, then the result has already + * been returned. If the DBTs matched, consider the lengths of the + * items, and return appropriately. + */ + if (dbt_len > match_len) /* DBT is longer than the match key. */ + *cmpp = 1; + else if (match_len > dbt_len) /* DBT is shorter than the match key. */ + *cmpp = -1; + else + *cmpp = 0; + + return (0); + +} diff --git a/db/db/db_ovfl_vrfy.c b/db/db/db_ovfl_vrfy.c index 85cb85eba..dc58cd05c 100644 --- a/db/db/db_ovfl_vrfy.c +++ b/db/db/db_ovfl_vrfy.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_ovfl_vrfy.c,v 12.8 2006/09/07 20:05:26 bostic Exp $ + * $Id: db_ovfl_vrfy.c,v 12.11 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" @@ -347,7 +346,7 @@ __db_safe_goff(dbp, vdp, pgno, dbt, buf, flags) pgno = NEXT_PGNO(h); - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, DB_PRIORITY_UNCHANGED)) != 0) break; h = NULL; } @@ -362,7 +361,8 @@ __db_safe_goff(dbp, vdp, pgno, dbt, buf, flags) } /* If we broke out on error, don't leave pages pinned. */ - if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if (h != NULL && (t_ret = + __memp_fput(mpf, h, DB_PRIORITY_UNCHANGED)) != 0 && ret == 0) ret = t_ret; return (ret); diff --git a/db/db/db_pr.c b/db/db/db_pr.c index 2a092ab0d..6e1298252 100644 --- a/db/db/db_pr.c +++ b/db/db/db_pr.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_pr.c,v 12.29 2006/09/07 20:05:26 bostic Exp $ + * $Id: db_pr.c,v 12.38 2007/07/02 16:58:02 alexg Exp $ */ #include "db_config.h" @@ -99,7 +98,6 @@ __db_dumptree(dbp, txn, op, name) static const FN __db_flags_fn[] = { { DB_AM_CHKSUM, "checksumming" }, - { DB_AM_CL_WRITER, "client replica writer" }, { DB_AM_COMPENSATE, "created by compensating transaction" }, { DB_AM_CREATED, "database created" }, { DB_AM_CREATED_MSTR, "encompassing file created" }, @@ -237,13 +235,13 @@ __db_prtree(dbp, txn, flags) * Find out the page number of the last page in the database, then * dump each page. */ - if ((ret = __memp_last_pgno(mpf, &last)) != 0) + if ((ret = __memp_get_last_pgno(mpf, &last)) != 0) return (ret); for (i = 0; i <= last; ++i) { if ((ret = __memp_fget(mpf, &i, txn, 0, &h)) != 0) return (ret); (void)__db_prpage(dbp, h, flags); - if ((ret = __memp_fput(mpf, h, 0)) != 0) + if ((ret = __memp_fput(mpf, h, dbp->priority)) != 0) return (ret); } @@ -298,7 +296,7 @@ __db_meta(dbp, dbmeta, fn, flags) break; } pgno = h->next_pgno; - (void)__memp_fput(mpf, h, 0); + (void)__memp_fput(mpf, h, dbp->priority); __db_msgadd(dbenv, &mb, "%s%lu", sep, (u_long)pgno); if (++cnt % 10 == 0) { DB_MSGBUF_FLUSH(dbenv, &mb); @@ -373,7 +371,6 @@ __db_hmeta(dbp, h, flags) HMETA *h; u_int32_t flags; { - DB_MSGBUF mb; static const FN fn[] = { { DB_HASH_DUP, "duplicates" }, { DB_HASH_SUBDB, "multiple-databases" }, @@ -381,6 +378,7 @@ __db_hmeta(dbp, h, flags) { 0, NULL } }; DB_ENV *dbenv; + DB_MSGBUF mb; int i; dbenv = dbp->dbenv; @@ -451,7 +449,7 @@ __db_prnpage(dbp, txn, pgno) ret = __db_prpage(dbp, h, DB_PR_PAGE); - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -498,7 +496,7 @@ __db_prpage(dbp, h, flags) if ((s = __db_pagetype_to_string(TYPE(h))) == NULL) { __db_msg(dbenv, "ILLEGAL PAGE TYPE: page: %lu type: %lu", (u_long)h->pgno, (u_long)TYPE(h)); - return (1); + return (EINVAL); } /* @@ -599,6 +597,7 @@ __db_prpage(dbp, h, flags) } deleted = 0; switch (TYPE(h)) { + case P_HASH_UNSORTED: case P_HASH: case P_IBTREE: case P_IRECNO: @@ -621,6 +620,7 @@ __db_prpage(dbp, h, flags) __db_msgadd( dbenv, &mb, "[%03lu] %4lu ", (u_long)i, (u_long)inp[i]); switch (TYPE(h)) { + case P_HASH_UNSORTED: case P_HASH: hk = sp; switch (HPAGE_PTYPE(hk)) { @@ -813,6 +813,9 @@ __db_prflags(dbenv, mbp, flags, fn, prefix, suffix) int found, standalone; const char *sep; + if (fn == NULL) + return; + /* * If it's a standalone message, output the suffix (which will be the * label), regardless of whether we found anything or not, and flush @@ -892,6 +895,9 @@ __db_pagetype_to_string(type) case P_LDUP: s = "duplicate"; break; + case P_HASH_UNSORTED: + s = "hash unsorted"; + break; case P_HASH: s = "hash"; break; @@ -959,15 +965,11 @@ __db_dumptree(dbp, txn, op, name) const FN * __db_get_flags_fn() { - static const FN __db_flags_fn[] = { - { 0, NULL } - }; - /* * !!! * The Tcl API uses this interface, stub it off. */ - return (__db_flags_fn); + return (NULL); } #endif @@ -1064,7 +1066,7 @@ __db_dump(dbp, subname, callback, handle, pflag, keyflag) } retry: while ((ret = - __db_c_get(dbcp, &key, &data, DB_NEXT | DB_MULTIPLE_KEY)) == 0) { + __dbc_get(dbcp, &key, &data, DB_NEXT | DB_MULTIPLE_KEY)) == 0) { DB_MULTIPLE_INIT(pointer, &data); for (;;) { if (is_recno) @@ -1099,7 +1101,7 @@ retry: while ((ret = if ((t_ret = __db_prfooter(handle, callback)) != 0 && ret == 0) ret = t_ret; -err: if ((t_ret = __db_c_close(dbcp)) != 0 && ret == 0) +err: if ((t_ret = __dbc_close(dbcp)) != 0 && ret == 0) ret = t_ret; if (data.data != NULL) __os_free(dbenv, data.data); diff --git a/db/db/db_rec.c b/db/db/db_rec.c index 921b9c34a..720faf191 100644 --- a/db/db/db_rec.c +++ b/db/db/db_rec.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_rec.c,v 12.31 2006/09/19 04:04:49 ubell Exp $ + * $Id: db_rec.c,v 12.44 2007/06/27 18:01:59 ubell Exp $ */ #include "db_config.h" @@ -44,7 +43,6 @@ __db_addrem_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, modified, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__db_addrem_print); REC_INTRO(__db_addrem_read, 1, 1); @@ -57,7 +55,7 @@ __db_addrem_recover(dbenv, dbtp, lsnp, op, info) if ((cmp_p == 0 && DB_REDO(op) && argp->opcode == DB_ADD_DUP) || (cmp_n == 0 && DB_UNDO(op) && argp->opcode == DB_REM_DUP)) { /* Need to redo an add, or undo a delete. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if ((ret = __db_pitem(dbc, pagep, argp->indx, argp->nbytes, argp->hdr.size == 0 ? NULL : &argp->hdr, argp->dbt.size == 0 ? NULL : &argp->dbt)) != 0) @@ -67,7 +65,7 @@ __db_addrem_recover(dbenv, dbtp, lsnp, op, info) } else if ((cmp_n == 0 && DB_UNDO(op) && argp->opcode == DB_ADD_DUP) || (cmp_p == 0 && DB_REDO(op) && argp->opcode == DB_REM_DUP)) { /* Need to undo an add, or redo a delete. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if ((ret = __db_ditem(dbc, pagep, argp->indx, argp->nbytes)) != 0) goto out; @@ -81,7 +79,7 @@ __db_addrem_recover(dbenv, dbtp, lsnp, op, info) LSN(pagep) = argp->pagelsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbc->priority)) != 0) goto out; pagep = NULL; @@ -89,7 +87,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, dbc->priority); REC_CLOSE; } @@ -113,7 +111,6 @@ __db_big_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, modified, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__db_big_print); REC_INTRO(__db_big_read, 1, 0); @@ -132,7 +129,7 @@ __db_big_recover(dbenv, dbtp, lsnp, op, info) if ((cmp_p == 0 && DB_REDO(op) && argp->opcode == DB_ADD_BIG) || (cmp_n == 0 && DB_UNDO(op) && argp->opcode == DB_REM_BIG)) { /* We are either redo-ing an add, or undoing a delete. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, argp->prev_pgno, argp->next_pgno, 0, P_OVERFLOW); OV_LEN(pagep) = argp->dbt.size; @@ -148,13 +145,13 @@ __db_big_recover(dbenv, dbtp, lsnp, op, info) * The page is about to be reclaimed in either case, so * there really isn't anything to do here. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); modified = 1; } if (modified) LSN(pagep) = DB_REDO(op) ? *lsnp : argp->pagelsn; - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; if (ret != 0) goto out; @@ -177,19 +174,19 @@ ppage: if (argp->prev_pgno != PGNO_INVALID) { if (cmp_p == 0 && DB_REDO(op) && argp->opcode == DB_ADD_BIG) { /* Redo add, undo delete. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); NEXT_PGNO(pagep) = argp->pgno; modified = 1; } else if (cmp_n == 0 && DB_UNDO(op) && argp->opcode == DB_ADD_BIG) { /* Redo delete, undo add. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); NEXT_PGNO(pagep) = argp->next_pgno; modified = 1; } if (modified) LSN(pagep) = DB_REDO(op) ? *lsnp : argp->prevlsn; - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; if (ret != 0) goto out; @@ -205,17 +202,17 @@ npage: if (argp->next_pgno != PGNO_INVALID) { cmp_p = LOG_COMPARE(&LSN(pagep), &argp->nextlsn); CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->nextlsn); if (cmp_p == 0 && DB_REDO(op)) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); PREV_PGNO(pagep) = PGNO_INVALID; modified = 1; } else if (cmp_n == 0 && DB_UNDO(op)) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); PREV_PGNO(pagep) = argp->pgno; modified = 1; } if (modified) LSN(pagep) = DB_REDO(op) ? *lsnp : argp->nextlsn; - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; if (ret != 0) goto out; @@ -226,7 +223,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -253,7 +250,6 @@ __db_ovref_recover(dbenv, dbtp, lsnp, op, info) int cmp, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__db_ovref_print); REC_INTRO(__db_ovref_read, 1, 0); @@ -263,16 +259,16 @@ __db_ovref_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp, &LSN(pagep), &argp->lsn); if (cmp == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); OV_REF(pagep) += argp->adjust; pagep->lsn = *lsnp; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); OV_REF(pagep) -= argp->adjust; pagep->lsn = argp->lsn; } - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; if (ret != 0) goto out; @@ -282,7 +278,7 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -340,7 +336,6 @@ __db_noop_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__db_noop_print); REC_INTRO(__db_noop_read, 0, 0); @@ -350,18 +345,18 @@ __db_noop_recover(dbenv, dbtp, lsnp, op, info) cmp_p = LOG_COMPARE(&LSN(pagep), &argp->prevlsn); CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->prevlsn); if (cmp_p == 0 && DB_REDO(op)) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); LSN(pagep) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); LSN(pagep) = argp->prevlsn; } - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; done: *lsnp = argp->prev_lsn; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } @@ -416,14 +411,14 @@ __db_pg_alloc_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(meta), &argp->meta_lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); LSN(meta) = *lsnp; meta->free = argp->next; if (argp->pgno > meta->last_pgno) meta->last_pgno = argp->pgno; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); LSN(meta) = argp->meta_lsn; /* * If the page has a zero LSN then its newly created @@ -512,6 +507,19 @@ __db_pg_alloc_recover(dbenv, dbtp, lsnp, op, info) (IS_ZERO_LSN(argp->page_lsn) && IS_INIT_LSN(LSN(pagep)))) cmp_p = 0; +#ifndef HAVE_FTRUNCATE + /* + * If this page was put on the limbo list and then taken off + * the free list it will have INIT_LSN. If we are aborting + * this operation then we need to initialize the page with + * the next pointer as recorded in the log as its current + * next pointer may be from its last trip through limbo on + * a previous archival restore. + */ + if (IS_INIT_LSN(LSN(pagep)) && IS_INIT_LSN(argp->page_lsn)) + cmp_n = 0; +#endif + CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->page_lsn); /* * Another special case we have to handle is if we ended up with a @@ -521,7 +529,7 @@ __db_pg_alloc_recover(dbenv, dbtp, lsnp, op, info) */ if (DB_REDO(op) && cmp_p == 0) { /* Need to redo update described. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); switch (argp->ptype) { case P_LBTREE: case P_LRECNO: @@ -543,7 +551,7 @@ __db_pg_alloc_recover(dbenv, dbtp, lsnp, op, info) * Undo the allocation, reinitialize the page and * link its next pointer to the free list. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, PGNO_INVALID, argp->next, 0, P_INVALID); @@ -558,11 +566,10 @@ do_truncate: if ((pagep == NULL || IS_ZERO_LSN(LSN(pagep))) && IS_ZERO_LSN(argp->page_lsn) && DB_UNDO(op)) { #ifdef HAVE_FTRUNCATE - COMPQUIET(info, NULL); /* Discard the page. */ if (pagep != NULL) { - if ((ret = - __memp_fput(mpf, pagep, DB_MPOOL_DISCARD)) != 0) + if ((ret = __memp_fput(mpf, + pagep, DB_PRIORITY_VERY_LOW)) != 0) goto out; pagep = NULL; } @@ -577,20 +584,20 @@ do_truncate: goto out; /* The last_pgno grows if this was a new page. */ if (argp->pgno > meta->last_pgno) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); meta->last_pgno = argp->pgno; } #endif } if (pagep != NULL) { - ret = __memp_fput(mpf, pagep, 0); + ret = __memp_fput(mpf, pagep, file_dbp->priority); pagep = NULL; if (ret != 0) goto out; } - ret = __memp_fput(mpf, meta, 0); + ret = __memp_fput(mpf, meta, file_dbp->priority); meta = NULL; if (ret != 0) goto out; @@ -599,9 +606,9 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, file_dbp->priority); if (ret == ENOENT && op == DB_TXN_BACKWARD_ALLOC) ret = 0; REC_CLOSE; @@ -651,7 +658,7 @@ __db_pg_free_recover_int(dbenv, argp, file_dbp, lsnp, mpf, op, data) * we get the page and update its LSN, last and free pointer. */ if (cmp_p == 0 && DB_REDO(op)) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); #ifdef HAVE_FTRUNCATE /* * If we are at the end of the file truncate, otherwise @@ -659,13 +666,13 @@ __db_pg_free_recover_int(dbenv, argp, file_dbp, lsnp, mpf, op, data) */ if (argp->pgno == argp->last_pgno) meta->last_pgno = argp->pgno - 1; - else if (prevp == NULL) + else if (is_meta) meta->free = argp->pgno; else NEXT_PGNO(prevp) = argp->pgno; #else /* Need to redo the deallocation. */ - if (prevp == NULL) + if (is_meta) meta->free = argp->pgno; else NEXT_PGNO(prevp) = argp->pgno; @@ -674,20 +681,20 @@ __db_pg_free_recover_int(dbenv, argp, file_dbp, lsnp, mpf, op, data) * we are a replica, then we never executed the * original allocation which incremented meta->free. */ - if (prevp == NULL && meta->last_pgno < meta->free) + if (is_meta && meta->last_pgno < meta->free) meta->last_pgno = meta->free; #endif LSN(meta) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo the deallocation. */ - REC_DIRTY(mpf, &meta); - if (prevp == NULL) + REC_DIRTY(mpf, file_dbp->priority, &meta); + if (is_meta) { + if (meta->last_pgno < argp->pgno) + meta->last_pgno = argp->pgno; meta->free = argp->next; - else + } else NEXT_PGNO(prevp) = argp->next; LSN(meta) = argp->meta_lsn; - if (prevp == NULL && meta->last_pgno < argp->pgno) - meta->last_pgno = argp->pgno; } check_meta: @@ -750,8 +757,8 @@ check_meta: */ if (is_meta && meta->last_pgno <= argp->pgno && argp->last_pgno <= argp->pgno) { - if ((ret = - __memp_fput(mpf, pagep, DB_MPOOL_DISCARD)) != 0) + if ((ret = __memp_fput(mpf, + pagep, DB_PRIORITY_VERY_LOW)) != 0) goto out; pagep = NULL; trunc: if ((ret = __memp_ftruncate(mpf, @@ -759,14 +766,14 @@ trunc: if ((ret = __memp_ftruncate(mpf, goto out; } else if (argp->last_pgno == argp->pgno) { /* The page was truncated at runtime, zero it out. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, 0, PGNO_INVALID, PGNO_INVALID, PGNO_INVALID, 0, P_INVALID); ZERO_LSN(pagep->lsn); } else #endif { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, PGNO_INVALID, argp->next, 0, P_INVALID); pagep->lsn = *lsnp; @@ -774,13 +781,14 @@ trunc: if ((ret = __memp_ftruncate(mpf, } } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to reallocate the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); memcpy(pagep, argp->header.data, argp->header.size); if (data) memcpy((u_int8_t*)pagep + HOFFSET(pagep), argp->data.data, argp->data.size); } - if (pagep != NULL && (ret = __memp_fput(mpf, pagep, 0)) != 0) + if (pagep != NULL && + (ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -797,7 +805,7 @@ trunc: if ((ret = __memp_ftruncate(mpf, goto out; if (lp != NULL) { pos = 0; - if (!is_meta && nelem != 0) { + if (!is_meta) { __db_freelist_pos(argp->pgno, lp, nelem, &pos); DB_ASSERT(dbenv, argp->pgno == lp[pos]); @@ -805,9 +813,9 @@ trunc: if ((ret = __memp_ftruncate(mpf, argp->meta_pgno == lp[pos - 1]); } - if (nelem != 0 && pos != nelem) + if (pos < nelem) memmove(&lp[pos], &lp[pos + 1], - (nelem - pos) * sizeof(*lp)); + ((nelem - pos) - 1) * sizeof(*lp)); /* Shrink the list */ if ((ret = @@ -817,16 +825,16 @@ trunc: if ((ret = __memp_ftruncate(mpf, } done: #endif - if (meta != NULL && (ret = __memp_fput(mpf, meta, 0)) != 0) + if (meta != NULL && + (ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; meta = NULL; - ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, file_dbp->priority); return (ret); } @@ -852,7 +860,6 @@ __db_pg_free_recover(dbenv, dbtp, lsnp, op, info) __db_pg_free_args *argp; int ret; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_free_print); REC_INTRO(__db_pg_free_read, 1, 0); @@ -895,23 +902,22 @@ __db_pg_new_recover(dbenv, dbtp, lsnp, op, info) if (DB_UNDO(op)) { if (LOG_COMPARE(lsnp, &LSN(meta)) == 0) { meta->lsn = argp->meta_lsn; - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); } } else if (DB_REDO(op)) { if (LOG_COMPARE(&argp->meta_lsn, &LSN(meta)) == 0) { meta->lsn = *lsnp; - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); } } - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; if ((ret = __db_add_limbo(dbenv, info, argp->fileid, argp->pgno, 1)) == 0) *lsnp = argp->prev_lsn; - done: out: REC_CLOSE; @@ -946,7 +952,6 @@ __db_pg_freedata_recover(dbenv, dbtp, lsnp, op, info) __db_pg_freedata_args *argp; int ret; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_freedata_print); REC_INTRO(__db_pg_freedata_read, 1, 0); @@ -989,7 +994,7 @@ __db_cksum_recover(dbenv, dbtp, lsnp, op, info) * We had a checksum failure -- the only option is to run catastrophic * recovery. */ - if (F_ISSET(dbenv, DB_ENV_FATAL)) + if (F_ISSET(dbenv, DB_ENV_RECOVER_FATAL)) ret = 0; else { __db_errx(dbenv, @@ -1053,7 +1058,8 @@ __db_pg_prepare_recover(dbenv, dbtp, lsnp, op, info) argp->pgno, PGNO_INVALID, PGNO_INVALID, 0, P_INVALID); ZERO_LSN(pagep->lsn); ret = __db_add_limbo(dbenv, info, argp->fileid, argp->pgno, 1); - if ((t_ret = __memp_fput(mpf, pagep, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput( + mpf, pagep, file_dbp->priority)) != 0 && ret == 0) ret = t_ret; } @@ -1094,7 +1100,6 @@ __db_pg_init_recover(dbenv, dbtp, lsnp, op, info) PAGE *pagep; int cmp_n, cmp_p, ret, type; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_init_print); REC_INTRO(__db_pg_init_read, 1, 0); @@ -1132,19 +1137,19 @@ __db_pg_init_recover(dbenv, dbtp, lsnp, op, info) type = P_HASH; else type = file_dbp->type == DB_RECNO ? P_LRECNO : P_LBTREE; - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, PGNO(pagep), PGNO_INVALID, PGNO_INVALID, TYPE(pagep) == P_HASH ? 0 : 1, type); pagep->lsn = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Put the data back on the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); memcpy(pagep, argp->header.data, argp->header.size); if (argp->data.size > 0) memcpy((u_int8_t*)pagep + HOFFSET(pagep), argp->data.data, argp->data.size); } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; done: *lsnp = argp->prev_lsn; @@ -1179,7 +1184,6 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) struct pglist *pglist, *lp; int ret; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_sort_print); REC_INTRO(__db_pg_sort_read, 1, 1); @@ -1187,7 +1191,7 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) nelem = argp->list.size / sizeof(struct pglist); if (DB_REDO(op)) { pgno = argp->last_pgno; - if ((ret = __db_pg_truncate(mpf, NULL, + if ((ret = __db_pg_truncate(file_dbp, NULL, pglist, NULL, &nelem, &pgno, lsnp, 1)) != 0) goto out; @@ -1196,11 +1200,12 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) 0, &meta)) == 0) { if (LOG_COMPARE(&LSN(meta), &argp->last_lsn) == 0) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, dbc->priority, &meta); NEXT_PGNO(meta) = PGNO_INVALID; LSN(meta) = *lsnp; } - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput( + mpf, meta, file_dbp->priority)) != 0) goto out; meta = NULL; } else if (ret != DB_PAGE_NOTFOUND) @@ -1210,7 +1215,7 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) 0, &meta)) != 0) goto out; if (LOG_COMPARE(&LSN(meta), &argp->meta_lsn) == 0) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, dbc->priority, &meta); if (argp->last_free == PGNO_INVALID) { if (nelem == 0) meta->free = PGNO_INVALID; @@ -1228,7 +1233,7 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) goto out; if (IS_ZERO_LSN(LSN(pagep)) || LOG_COMPARE(&LSN(pagep), lsnp) == 0) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); if (lp == &pglist[nelem - 1]) pgno = PGNO_INVALID; else @@ -1238,18 +1243,20 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) lp->pgno, PGNO_INVALID, pgno, 0, P_INVALID); LSN(pagep) = lp->lsn; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = + __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; } if (argp->last_free != PGNO_INVALID) { if ((ret = __memp_fget(mpf, &argp->last_free, NULL, DB_MPOOL_EDIT, &meta)) == 0) { if (LOG_COMPARE(&LSN(meta), lsnp) == 0) { - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, dbc->priority, &pagep); NEXT_PGNO(meta) = pglist->pgno; LSN(meta) = argp->last_lsn; } - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, + meta, file_dbp->priority)) != 0) goto out; } else if (ret != DB_PAGE_NOTFOUND) goto out; @@ -1259,7 +1266,7 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) NULL, DB_MPOOL_EDIT, &meta)) != 0) goto out; if (LOG_COMPARE(&LSN(meta), lsnp) == 0) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, dbc->priority, &meta); meta->last_pgno = argp->last_pgno; if (argp->last_free == PGNO_INVALID) meta->free = pglist->pgno; @@ -1280,7 +1287,7 @@ __db_pg_sort_recover(dbenv, dbtp, lsnp, op, info) } } - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; done: *lsnp = argp->prev_lsn; @@ -1351,14 +1358,14 @@ __db_pg_alloc_42_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(meta), &argp->meta_lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo update described. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); LSN(meta) = *lsnp; meta->free = argp->next; if (argp->pgno > meta->last_pgno) meta->last_pgno = argp->pgno; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo update described. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); LSN(meta) = argp->meta_lsn; /* * If the page has a zero LSN then its newly created @@ -1430,7 +1437,7 @@ __db_pg_alloc_42_recover(dbenv, dbtp, lsnp, op, info) level = 0; break; } - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, PGNO_INVALID, PGNO_INVALID, level, argp->ptype); @@ -1442,7 +1449,7 @@ __db_pg_alloc_42_recover(dbenv, dbtp, lsnp, op, info) * Undo the allocation, reinitialize the page and * link its next pointer to the free list. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, PGNO_INVALID, argp->next, 0, P_INVALID); @@ -1462,16 +1469,17 @@ do_truncate: goto out; /* The last_pgno grows if this was a new page. */ if (argp->pgno > meta->last_pgno) { - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); meta->last_pgno = argp->pgno; } } - if (pagep != NULL && (ret = __memp_fput(mpf, pagep, 0)) != 0) + if (pagep != NULL && + (ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; - if ((ret = __memp_fput(mpf, meta, 0)) != 0) + if ((ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; meta = NULL; @@ -1479,9 +1487,9 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, file_dbp->priority); if (ret == ENOENT && op == DB_TXN_BACKWARD_ALLOC) ret = 0; REC_CLOSE; @@ -1532,7 +1540,7 @@ __db_pg_free_recover_42_int(dbenv, argp, file_dbp, lsnp, mpf, op, data) */ if (cmp_p == 0 && DB_REDO(op)) { /* Need to redo the deallocation. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); if (prevp == NULL) meta->free = argp->pgno; else @@ -1547,7 +1555,7 @@ __db_pg_free_recover_42_int(dbenv, argp, file_dbp, lsnp, mpf, op, data) LSN(meta) = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to undo the deallocation. */ - REC_DIRTY(mpf, &meta); + REC_DIRTY(mpf, file_dbp->priority, &meta); if (prevp == NULL) meta->free = argp->next; else @@ -1587,32 +1595,34 @@ check_meta: (IS_ZERO_LSN(copy_lsn) && LOG_COMPARE(&LSN(pagep), &argp->meta_lsn) <= 0))) { /* Need to redo the deallocation. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); P_INIT(pagep, file_dbp->pgsize, argp->pgno, PGNO_INVALID, argp->next, 0, P_INVALID); pagep->lsn = *lsnp; } else if (cmp_n == 0 && DB_UNDO(op)) { /* Need to reallocate the page. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); memcpy(pagep, argp->header.data, argp->header.size); if (data) memcpy((u_int8_t*)pagep + HOFFSET(pagep), argp->data.data, argp->data.size); } - if (pagep != NULL && (ret = __memp_fput(mpf, pagep, 0)) != 0) + if (pagep != NULL && + (ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; - if (meta != NULL && (ret = __memp_fput(mpf, meta, 0)) != 0) + if (meta != NULL && + (ret = __memp_fput(mpf, meta, file_dbp->priority)) != 0) goto out; meta = NULL; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); if (meta != NULL) - (void)__memp_fput(mpf, meta, 0); + (void)__memp_fput(mpf, meta, file_dbp->priority); return (ret); } @@ -1638,7 +1648,6 @@ __db_pg_free_42_recover(dbenv, dbtp, lsnp, op, info) __db_pg_free_42_args *argp; int ret; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_free_42_print); REC_INTRO(__db_pg_free_42_read, 1, 0); @@ -1671,7 +1680,6 @@ __db_pg_freedata_42_recover(dbenv, dbtp, lsnp, op, info) __db_pg_freedata_42_args *argp; int ret; - COMPQUIET(info, NULL); REC_PRINT(__db_pg_freedata_42_print); REC_INTRO(__db_pg_freedata_42_read, 1, 0); @@ -1706,7 +1714,6 @@ __db_relink_42_recover(dbenv, dbtp, lsnp, op, info) int cmp_n, cmp_p, modified, ret; pagep = NULL; - COMPQUIET(info, NULL); REC_PRINT(__db_relink_42_print); REC_INTRO(__db_relink_42_read, 1, 0); @@ -1730,16 +1737,16 @@ __db_relink_42_recover(dbenv, dbtp, lsnp, op, info) CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->lsn = *lsnp; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Undo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->next; pagep->prev_pgno = argp->prev; pagep->lsn = argp->lsn; } -next1: if ((ret = __memp_fput(mpf, pagep, 0)) != 0) +next1: if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1757,14 +1764,14 @@ next2: if ((ret = __memp_fget(mpf, &argp->next, NULL, 0, &pagep)) != 0) { if ((argp->opcode == DB_REM_PAGE_COMPAT && cmp_p == 0 && DB_REDO(op)) || (argp->opcode == DB_ADD_PAGE_COMPAT && cmp_n == 0 && DB_UNDO(op))) { /* Redo the remove or undo the add. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->prev_pgno = argp->prev; modified = 1; } else if ((argp->opcode == DB_REM_PAGE_COMPAT && cmp_n == 0 && DB_UNDO(op)) || (argp->opcode == DB_ADD_PAGE_COMPAT && cmp_p == 0 && DB_REDO(op))) { /* Undo the remove or redo the add. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->prev_pgno = argp->pgno; modified = 1; } @@ -1774,7 +1781,7 @@ next2: if ((ret = __memp_fget(mpf, &argp->next, NULL, 0, &pagep)) != 0) { else pagep->lsn = *lsnp; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; if (argp->opcode == DB_ADD_PAGE_COMPAT) @@ -1792,12 +1799,12 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, 0, &pagep)) != 0) { CHECK_LSN(dbenv, op, cmp_p, &LSN(pagep), &argp->lsn_prev); if (cmp_p == 0 && DB_REDO(op)) { /* Redo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->next; modified = 1; } else if (LOG_COMPARE(lsnp, &LSN(pagep)) == 0 && DB_UNDO(op)) { /* Undo the relink. */ - REC_DIRTY(mpf, &pagep); + REC_DIRTY(mpf, file_dbp->priority, &pagep); pagep->next_pgno = argp->pgno; modified = 1; } @@ -1807,7 +1814,7 @@ prev: if ((ret = __memp_fget(mpf, &argp->prev, NULL, 0, &pagep)) != 0) { else pagep->lsn = *lsnp; } - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, file_dbp->priority)) != 0) goto out; pagep = NULL; @@ -1815,6 +1822,6 @@ done: *lsnp = argp->prev_lsn; ret = 0; out: if (pagep != NULL) - (void)__memp_fput(mpf, pagep, 0); + (void)__memp_fput(mpf, pagep, file_dbp->priority); REC_CLOSE; } diff --git a/db/db/db_reclaim.c b/db/db/db_reclaim.c index afa81f4bf..a7270b77e 100644 --- a/db/db/db_reclaim.c +++ b/db/db/db_reclaim.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_reclaim.c,v 12.8 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_reclaim.c,v 12.11 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" @@ -52,7 +51,7 @@ __db_traverse_big(dbp, pgno, txn, callback, cookie) pgno = PGNO_INVALID; if ((ret = callback(dbp, p, cookie, &did_put)) == 0 && !did_put) - ret = __memp_fput(mpf, p, 0); + ret = __memp_fput(mpf, p, dbp->priority); } while (ret == 0 && pgno != PGNO_INVALID); return (ret); @@ -139,7 +138,8 @@ __db_truncate_callback(dbp, p, cookie, putp) } break; case P_OVERFLOW: - if ((ret = __memp_dirty(mpf, &p, param->dbc->txn, 0)) != 0) + if ((ret = __memp_dirty(mpf, + &p, param->dbc->txn, param->dbc->priority, 0)) != 0) return (ret); if (DBC_LOGGING(param->dbc)) { if ((ret = __db_ovref_log(dbp, param->dbc->txn, @@ -198,8 +198,8 @@ __db_truncate_callback(dbp, p, cookie, putp) if (PREV_PGNO(p) == PGNO_INVALID) { type = P_HASH; -reinit: if ((ret = - __memp_dirty(mpf, &p, param->dbc->txn, 0)) != 0) +reinit: if ((ret = __memp_dirty(mpf, + &p, param->dbc->txn, param->dbc->priority, 0)) != 0) return (ret); *putp = 0; if (DBC_LOGGING(param->dbc)) { @@ -229,7 +229,7 @@ reinit: if ((ret = if ((ret = __db_free(param->dbc, p)) != 0) return (ret); } else { - if ((ret = __memp_fput(mpf, p, 0)) != 0) + if ((ret = __memp_fput(mpf, p, dbp->priority)) != 0) return (ret); *putp = 1; } diff --git a/db/db/db_remove.c b/db/db/db_remove.c index 2201ec1e5..830d3bcc7 100644 --- a/db/db/db_remove.c +++ b/db/db/db_remove.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: db_remove.c,v 12.28 2006/09/19 15:06:58 bostic Exp $ + * $Id: db_remove.c,v 12.35 2007/07/05 18:43:13 alanb Exp $ */ #include "db_config.h" @@ -77,7 +76,7 @@ __env_dbremove_pp(dbenv, txn, name, subdb, flags) } LF_CLR(DB_AUTO_COMMIT); - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) goto err; ret = __db_remove_int(dbp, txn, name, subdb, flags); @@ -89,16 +88,16 @@ __env_dbremove_pp(dbenv, txn, name, subdb, flags) * lock; mark the handle cleared explicitly. */ LOCK_INIT(dbp->handle_lock); - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; } else if (txn != NULL) { /* * We created this handle locally so we need to close it * and clean it up. Unfortunately, it's holding transactional * locks that need to persist until the end of transaction. - * If we invalidate the locker id (dbp->lid), then the close + * If we invalidate the locker id (dbp->locker), then the close * won't free these locks prematurely. */ - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; } err: if (txn_local && (t_ret = @@ -112,11 +111,18 @@ err: if (txn_local && (t_ret = * !!! * Note we're reversing the order of operations: we started the txn and * then opened the DB handle; we're resolving the txn and then closing - * closing the DB handle -- it's safer. + * closing the DB handle -- a DB handle cannot be closed before + * resolving the txn. */ - if (dbp != NULL && - (t_ret = __db_close(dbp, NULL, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn_local || txn == NULL) { + if (dbp != NULL && + (t_ret = __db_close(dbp, NULL, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if (dbp != NULL && (t_ret = + __txn_closeevent(dbenv, txn, dbp)) != 0 && ret == 0) + ret = t_ret; + } if (handle_check && (t_ret = __env_db_rep_exit(dbenv)) != 0 && ret == 0) ret = t_ret; @@ -205,8 +211,14 @@ __db_remove(dbp, txn, name, subdb, flags) ret = __db_remove_int(dbp, txn, name, subdb, flags); - if ((t_ret = __db_close(dbp, txn, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn == NULL) { + if ((t_ret = __db_close(dbp, txn, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if ((t_ret = + __txn_closeevent(dbp->dbenv, txn, dbp)) != 0 && ret == 0) + ret = t_ret; + } return (ret); } @@ -305,11 +317,11 @@ __db_inmem_remove(dbp, txn, name) DB_ENV *dbenv; DB_LSN lsn; DBT fid_dbt, name_dbt; - u_int32_t locker; + DB_LOCKER *locker; int ret; dbenv = dbp->dbenv; - locker = DB_LOCK_INVALIDID; + locker = NULL; DB_ASSERT(dbenv, name != NULL); @@ -322,10 +334,10 @@ __db_inmem_remove(dbp, txn, name) dbp->preserve_fid = 1; if (LOCKING_ON(dbenv)) { - if (dbp->lid == DB_LOCK_INVALIDID && - (ret = __lock_id(dbenv, &dbp->lid, NULL)) != 0) + if (dbp->locker == NULL && + (ret = __lock_id(dbenv, NULL, &dbp->locker)) != 0) return (ret); - locker = txn == NULL ? dbp->lid : txn->txnid; + locker = txn == NULL ? dbp->locker : txn->locker; } /* @@ -371,7 +383,7 @@ __db_subdb_remove(dbp, txn, name, subdb) mdbp = sdbp = NULL; /* Open the subdatabase. */ - if ((ret = db_create(&sdbp, dbp->dbenv, 0)) != 0) + if ((ret = __db_create_internal(&sdbp, dbp->dbenv, 0)) != 0) goto err; if ((ret = __db_open(sdbp, txn, name, subdb, DB_UNKNOWN, DB_WRITEOPEN, 0, PGNO_BASE_MD)) != 0) @@ -414,12 +426,21 @@ __db_subdb_remove(dbp, txn, name, subdb) DB_TEST_RECOVERY_LABEL err: /* Close the main and subdatabases. */ - if ((t_ret = __db_close(sdbp, txn, 0)) != 0 && ret == 0) - ret = t_ret; - - if (mdbp != NULL && - (t_ret = __db_close(mdbp, txn, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn == NULL) { + if ((t_ret = __db_close(sdbp, txn, 0)) != 0 && ret == 0) + ret = t_ret; + + if (mdbp != NULL && + (t_ret = __db_close(mdbp, txn, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if ((t_ret = + __txn_closeevent(sdbp->dbenv, txn, sdbp)) != 0 && ret == 0) + ret = t_ret; + if (mdbp != NULL && (t_ret = + __txn_closeevent(mdbp->dbenv, txn, mdbp)) != 0 && ret == 0) + ret = t_ret; + } return (ret); } diff --git a/db/db/db_rename.c b/db/db/db_rename.c index e841542ca..915ec792c 100644 --- a/db/db/db_rename.c +++ b/db/db/db_rename.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: db_rename.c,v 12.20 2006/09/19 15:06:58 bostic Exp $ + * $Id: db_rename.c,v 12.26 2007/05/17 15:14:56 bostic Exp $ */ #include "db_config.h" @@ -16,6 +15,7 @@ #include "dbinc/lock.h" #include "dbinc/log.h" #include "dbinc/mp.h" +#include "dbinc/txn.h" static int __db_subdb_rename __P((DB *, DB_TXN *, const char *, const char *, const char *)); @@ -77,7 +77,7 @@ __env_dbrename_pp(dbenv, txn, name, subdb, newname, flags) LF_CLR(DB_AUTO_COMMIT); - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) goto err; ret = __db_rename_int(dbp, txn, name, subdb, newname); @@ -89,16 +89,16 @@ __env_dbrename_pp(dbenv, txn, name, subdb, newname, flags) * lock; mark the handle cleared explicitly. */ LOCK_INIT(dbp->handle_lock); - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; } else if (txn != NULL) { /* * We created this handle locally so we need to close it and * clean it up. Unfortunately, it's holding transactional * or CDS group locks that need to persist until the end of - * transaction. If we invalidate the locker id (dbp->lid), + * transaction. If we invalidate the locker (dbp->locker), * then the close won't free these locks prematurely. */ - dbp->lid = DB_LOCK_INVALIDID; + dbp->locker = NULL; } err: if (txn_local && (t_ret = @@ -114,9 +114,15 @@ err: if (txn_local && (t_ret = * then opened the DB handle; we're resolving the txn and then closing * closing the DB handle -- it's safer. */ - if (dbp != NULL && - (t_ret = __db_close(dbp, NULL, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn_local || txn == NULL) { + if (dbp != NULL && + (t_ret = __db_close(dbp, NULL, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if (dbp != NULL && (t_ret = + __txn_closeevent(dbenv, txn, dbp)) != 0 && ret == 0) + ret = t_ret; + } if (handle_check && (t_ret = __env_db_rep_exit(dbenv)) != 0 && ret == 0) ret = t_ret; @@ -202,8 +208,14 @@ __db_rename(dbp, txn, name, subdb, newname) ret = __db_rename_int(dbp, txn, name, subdb, newname); - if ((t_ret = __db_close(dbp, txn, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn == NULL) { + if ((t_ret = __db_close(dbp, txn, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if ((t_ret = + __txn_closeevent(dbp->dbenv, txn, dbp)) != 0 && ret == 0) + ret = t_ret; + } return (ret); } @@ -341,10 +353,10 @@ __db_subdb_rename(dbp, txn, name, subdb, newname) goto err; memcpy(dbp->fileid, ((DBMETA *)meta)->uid, DB_FILE_ID_LEN); if ((ret = __fop_lock_handle(dbenv, - dbp, mdbp->lid, DB_LOCK_WRITE, NULL, NOWAIT_FLAG(txn))) != 0) + dbp, mdbp->locker, DB_LOCK_WRITE, NULL, NOWAIT_FLAG(txn))) != 0) goto err; - ret = __memp_fput(mdbp->mpf, meta, 0); + ret = __memp_fput(mdbp->mpf, meta, dbp->priority); meta = NULL; if (ret != 0) goto err; @@ -357,13 +369,19 @@ __db_subdb_rename(dbp, txn, name, subdb, newname) DB_TEST_RECOVERY_LABEL err: - if (meta != NULL && - (t_ret = __memp_fput(mdbp->mpf, meta, 0)) != 0 && ret == 0) + if (meta != NULL && (t_ret = + __memp_fput(mdbp->mpf, meta, dbp->priority)) != 0 && ret == 0) ret = t_ret; - if (mdbp != NULL && - (t_ret = __db_close(mdbp, txn, DB_NOSYNC)) != 0 && ret == 0) - ret = t_ret; + if (txn == NULL) { + if (mdbp != NULL && + (t_ret = __db_close(mdbp, txn, DB_NOSYNC)) != 0 && ret == 0) + ret = t_ret; + } else { + if (mdbp != NULL && (t_ret = + __txn_closeevent(dbenv, txn, mdbp)) != 0 && ret == 0) + ret = t_ret; + } return (ret); } diff --git a/db/db/db_ret.c b/db/db/db_ret.c index 3de1776c6..6c8c71929 100644 --- a/db/db/db_ret.c +++ b/db/db/db_ret.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_ret.c,v 12.6 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_ret.c,v 12.9 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" @@ -38,6 +37,7 @@ __db_ret(dbp, txn, h, indx, dbt, memp, memsize) void *data; switch (TYPE(h)) { + case P_HASH_UNSORTED: case P_HASH: hk = P_ENTRY(dbp, h, indx); if (HPAGE_PTYPE(hk) == H_OFFPAGE) { diff --git a/db/db/db_setid.c b/db/db/db_setid.c index 3cbbb38ca..d59aa382c 100644 --- a/db/db/db_setid.c +++ b/db/db/db_setid.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_setid.c,v 12.16 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_setid.c,v 12.26 2007/05/26 00:13:14 ubell Exp $ */ #include "db_config.h" @@ -74,11 +73,12 @@ __env_fileid_reset(dbenv, name, encrypted) DBT key, data; DB_FH *fhp; DB_MPOOLFILE *mpf; + DB_PGINFO cookie; db_pgno_t pgno; int t_ret, ret; size_t n; char *real_name; - u_int8_t fileid[DB_FILE_ID_LEN], mbuf[256]; + u_int8_t fileid[DB_FILE_ID_LEN], mbuf[DBMETASIZE]; void *pagep; dbp = NULL; @@ -100,24 +100,45 @@ __env_fileid_reset(dbenv, name, encrypted) * cache, which means if we open this file through the cache before * updating the file ID on page 0, we might connect to the file from * which the copy was made. - * - * !!! - * This code depends on page 0 of the file not being encrypted. */ - if ((ret = __os_open(dbenv, real_name, 0, 0, &fhp)) != 0) + if ((ret = __os_open(dbenv, real_name, 0, 0, 0, &fhp)) != 0) { + __db_err(dbenv, ret, "%s", real_name); goto err; + } if ((ret = __os_read(dbenv, fhp, mbuf, sizeof(mbuf), &n)) != 0) goto err; + if (n != sizeof(mbuf)) { ret = EINVAL; __db_errx(dbenv, "%s: unexpected file type or format", real_name); goto err; } + + /* + * Create the DB object. + */ + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) + goto err; + + /* If configured with a password, the databases are encrypted. */ + if (encrypted && (ret = __db_set_flags(dbp, DB_ENCRYPT)) != 0) + goto err; + + if ((ret = __db_meta_setup(dbenv, + dbp, real_name, (DBMETA *)mbuf, 0, DB_CHK_META)) != 0) + goto err; memcpy(((DBMETA *)mbuf)->uid, fileid, DB_FILE_ID_LEN); + cookie.db_pagesize = sizeof(mbuf); + cookie.flags = dbp->flags; + cookie.type = dbp->type; + key.data = &cookie; + + if ((ret = __db_pgout(dbenv, 0, mbuf, &key)) != 0) + goto err; if ((ret = __os_seek(dbenv, fhp, 0, 0, 0)) != 0) goto err; - if ((ret = __os_write(dbenv, fhp, mbuf, 256, &n)) != 0) + if ((ret = __os_write(dbenv, fhp, mbuf, sizeof(mbuf), &n)) != 0) goto err; if ((ret = __os_fsync(dbenv, fhp)) != 0) goto err; @@ -128,15 +149,7 @@ __env_fileid_reset(dbenv, name, encrypted) * the file in the cache, and update the file IDs for subdatabases. * (No existing code, as far as I know, actually uses the file ID of * a subdatabase, but it's cleaner to get them all.) - * - * Create the DB object. */ - if ((ret = db_create(&dbp, dbenv, 0)) != 0) - goto err; - - /* If configured with a password, the databases are encrypted. */ - if (encrypted && (ret = __db_set_flags(dbp, DB_ENCRYPT)) != 0) - goto err; /* * Open the DB file. @@ -163,7 +176,7 @@ __env_fileid_reset(dbenv, name, encrypted) memset(&data, 0, sizeof(data)); if ((ret = __db_cursor(dbp, NULL, &dbcp, 0)) != 0) goto err; - while ((ret = __db_c_get(dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = __dbc_get(dbcp, &key, &data, DB_NEXT)) == 0) { /* * XXX * We're handling actual data, not on-page meta-data, so it @@ -176,13 +189,13 @@ __env_fileid_reset(dbenv, name, encrypted) DB_MPOOL_DIRTY, &pagep)) != 0) goto err; memcpy(((DBMETA *)pagep)->uid, fileid, DB_FILE_ID_LEN); - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, dbcp->priority)) != 0) goto err; } if (ret == DB_NOTFOUND) ret = 0; -err: if (dbcp != NULL && (t_ret = __db_c_close(dbcp)) != 0 && ret == 0) +err: if (dbcp != NULL && (t_ret = __dbc_close(dbcp)) != 0 && ret == 0) ret = t_ret; if (dbp != NULL && (t_ret = __db_close(dbp, NULL, 0)) != 0 && ret == 0) ret = t_ret; diff --git a/db/db/db_setlsn.c b/db/db/db_setlsn.c index acd4edfaa..9d15356f7 100644 --- a/db/db/db_setlsn.c +++ b/db/db/db_setlsn.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_setlsn.c,v 12.13 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_setlsn.c,v 12.18 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" @@ -75,7 +74,7 @@ __env_lsn_reset(dbenv, name, encrypted) int t_ret, ret; /* Create the DB object. */ - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) return (ret); /* If configured with a password, the databases are encrypted. */ @@ -90,8 +89,10 @@ __env_lsn_reset(dbenv, name, encrypted) * for writing in this case. */ if ((ret = __db_open(dbp, NULL, - name, NULL, DB_UNKNOWN, DB_RDWRMASTER, 0, PGNO_BASE_MD)) != 0) + name, NULL, DB_UNKNOWN, DB_RDWRMASTER, 0, PGNO_BASE_MD)) != 0) { + __db_err(dbenv, ret, "%s", name); goto err; + } /* Reset the LSN on every page of the database file. */ mpf = dbp->mpf; @@ -99,7 +100,7 @@ __env_lsn_reset(dbenv, name, encrypted) (ret = __memp_fget(mpf, &pgno, NULL, DB_MPOOL_DIRTY, &pagep)) == 0; ++pgno) { LSN_NOT_LOGGED(pagep->lsn); - if ((ret = __memp_fput(mpf, pagep, 0)) != 0) + if ((ret = __memp_fput(mpf, pagep, DB_PRIORITY_UNCHANGED)) != 0) goto err; } diff --git a/db/db/db_stati.c b/db/db/db_stati.c index 2b1266717..0f6a3ef07 100644 --- a/db/db/db_stati.c +++ b/db/db/db_stati.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_stati.c,v 12.21 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_stati.c,v 12.29 2007/06/29 12:16:16 bostic Exp $ */ #include "db_config.h" @@ -113,7 +112,7 @@ __db_stat(dbp, txn, spp, flags) break; } - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -163,7 +162,7 @@ __db_stat_print_pp(dbp, flags) dbenv = dbp->dbenv; PANIC_CHECK(dbenv); - DB_ILLEGAL_BEFORE_OPEN(dbp, "DB->stat"); + DB_ILLEGAL_BEFORE_OPEN(dbp, "DB->stat_print"); /* * !!! @@ -257,7 +256,7 @@ __db_print_stats(dbp, flags) break; } - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; return (ret); @@ -274,7 +273,6 @@ __db_print_all(dbp, flags) { static const FN fn[] = { { DB_AM_CHKSUM, "DB_AM_CHKSUM" }, - { DB_AM_CL_WRITER, "DB_AM_CL_WRITER" }, { DB_AM_COMPENSATE, "DB_AM_COMPENSATE" }, { DB_AM_CREATED, "DB_AM_CREATED" }, { DB_AM_CREATED_MSTR, "DB_AM_CREATED_MSTR" }, @@ -330,9 +328,12 @@ __db_print_all(dbp, flags) STAT_ULONG("Cursor adjust ID", dbp->adj_fileid); STAT_ULONG("Meta pgno", dbp->meta_pgno); - STAT_ULONG("Locker ID", dbp->lid); - STAT_ULONG("Handle lock", dbp->cur_lid); - STAT_ULONG("Associate lock", dbp->associate_lid); + if (dbp->locker != NULL) + STAT_ULONG("Locker ID", dbp->locker->id); + if (dbp->cur_locker != NULL) + STAT_ULONG("Handle lock", dbp->cur_locker->id); + if (dbp->associate_locker != NULL) + STAT_ULONG("Associate lock", dbp->associate_locker->id); STAT_ULONG("RPC remote ID", dbp->cl_id); __db_msg(dbenv, @@ -396,8 +397,8 @@ __db_print_cursor(dbp) return (ret); } -static -int __db_print_citem(dbc) +static int +__db_print_citem(dbc) DBC *dbc; { static const FN fn[] = { @@ -430,7 +431,7 @@ int __db_print_citem(dbc) STAT_POINTER("Internal", cp); STAT_HEX("Default locker ID", dbc->lref == NULL ? 0 : ((DB_LOCKER *)dbc->lref)->id); - STAT_HEX("Locker", dbc->locker); + STAT_HEX("Locker", P_TO_ULONG(dbc->locker)); STAT_STRING("Type", __db_dbtype_to_string(dbc->dbtype)); STAT_POINTER("Off-page duplicate cursor", cp->opd); diff --git a/db/db/db_truncate.c b/db/db/db_truncate.c index 7e5e7124b..3700d5c25 100644 --- a/db/db/db_truncate.c +++ b/db/db/db_truncate.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: db_truncate.c,v 12.18 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_truncate.c,v 12.22 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" @@ -144,11 +143,11 @@ __db_truncate(dbp, txn, countp) if (dbp->type != DB_QUEUE && LIST_FIRST(&dbp->s_secondaries) != NULL) { if ((ret = __db_s_first(dbp, &sdbp)) != 0) return (ret); - for (; sdbp != NULL && ret == 0; ret = __db_s_next(&sdbp)) + for (; sdbp != NULL && ret == 0; ret = __db_s_next(&sdbp, txn)) if ((ret = __db_truncate(sdbp, txn, &scount)) != 0) break; if (sdbp != NULL) - (void)__db_s_done(sdbp); + (void)__db_s_done(sdbp, txn); if (ret != 0) return (ret); } @@ -179,7 +178,7 @@ __db_truncate(dbp, txn, countp) } /* Discard the cursor. */ - if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; DB_TEST_RECOVERY(dbp, DB_TEST_POSTDESTROY, ret, NULL); diff --git a/db/db/db_upg.c b/db/db/db_upg.c index bb7107648..08054f4c1 100644 --- a/db/db/db_upg.c +++ b/db/db/db_upg.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_upg.c,v 12.8 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_upg.c,v 12.20 2007/06/21 19:11:04 bostic Exp $ */ #include "db_config.h" @@ -16,27 +15,6 @@ #include "dbinc/hash.h" #include "dbinc/qam.h" -static int (* const func_31_list[P_PAGETYPE_MAX]) - __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)) = { - NULL, /* P_INVALID */ - NULL, /* __P_DUPLICATE */ - __ham_31_hash, /* P_HASH */ - NULL, /* P_IBTREE */ - NULL, /* P_IRECNO */ - __bam_31_lbtree, /* P_LBTREE */ - NULL, /* P_LRECNO */ - NULL, /* P_OVERFLOW */ - __ham_31_hashmeta, /* P_HASHMETA */ - __bam_31_btreemeta, /* P_BTREEMETA */ - NULL, /* P_QAMMETA */ - NULL, /* P_QAMDATA */ - NULL, /* P_LDUP */ -}; - -static int __db_page_pass __P((DB *, char *, u_int32_t, int (* const []) - (DB *, char *, u_int32_t, DB_FH *, PAGE *, int *), DB_FH *)); -static int __db_set_lastpgno __P((DB *, char *, DB_FH *)); - /* * __db_upgrade_pp -- * DB->upgrade pre/post processing. @@ -63,9 +41,56 @@ __db_upgrade_pp(dbp, fname, flags) if ((ret = __db_fchk(dbenv, "DB->upgrade", flags, DB_DUPSORT)) != 0) return (ret); +#ifdef HAVE_UPGRADE_SUPPORT return (__db_upgrade(dbp, fname, flags)); +#else + COMPQUIET(fname, NULL); + __db_errx(dbenv, "upgrade not supported"); + return (EINVAL); +#endif } +#ifdef HAVE_UPGRADE_SUPPORT +static int (* const func_31_list[P_PAGETYPE_MAX]) + __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)) = { + NULL, /* P_INVALID */ + NULL, /* __P_DUPLICATE */ + __ham_31_hash, /* P_HASH_UNSORTED */ + NULL, /* P_IBTREE */ + NULL, /* P_IRECNO */ + __bam_31_lbtree, /* P_LBTREE */ + NULL, /* P_LRECNO */ + NULL, /* P_OVERFLOW */ + __ham_31_hashmeta, /* P_HASHMETA */ + __bam_31_btreemeta, /* P_BTREEMETA */ + NULL, /* P_QAMMETA */ + NULL, /* P_QAMDATA */ + NULL, /* P_LDUP */ + NULL, /* P_HASH */ +}; + +static int (* const func_46_list[P_PAGETYPE_MAX]) + __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)) = { + NULL, /* P_INVALID */ + NULL, /* __P_DUPLICATE */ + __ham_46_hash, /* P_HASH_UNSORTED */ + NULL, /* P_IBTREE */ + NULL, /* P_IRECNO */ + NULL, /* P_LBTREE */ + NULL, /* P_LRECNO */ + NULL, /* P_OVERFLOW */ + __ham_46_hashmeta, /* P_HASHMETA */ + NULL, /* P_BTREEMETA */ + NULL, /* P_QAMMETA */ + NULL, /* P_QAMDATA */ + NULL, /* P_LDUP */ + NULL, /* P_HASH */ +}; + +static int __db_page_pass __P((DB *, char *, u_int32_t, int (* const []) + (DB *, char *, u_int32_t, DB_FH *, PAGE *, int *), DB_FH *)); +static int __db_set_lastpgno __P((DB *, char *, DB_FH *)); + /* * __db_upgrade -- * Upgrade an existing database. @@ -80,11 +105,13 @@ __db_upgrade(dbp, fname, flags) { DB_ENV *dbenv; DB_FH *fhp; + DBMETA *meta; size_t n; - int ret, t_ret; - u_int8_t mbuf[256]; + int ret, t_ret, use_mp_open; + u_int8_t mbuf[256], tmpflags; char *real_name; + use_mp_open = 0; dbenv = dbp->dbenv; fhp = NULL; @@ -94,7 +121,7 @@ __db_upgrade(dbp, fname, flags) return (ret); /* Open the file. */ - if ((ret = __os_open(dbenv, real_name, 0, 0, &fhp)) != 0) { + if ((ret = __os_open(dbenv, real_name, 0, 0, 0, &fhp)) != 0) { __db_err(dbenv, ret, "%s", real_name); return (ret); } @@ -203,6 +230,71 @@ __db_upgrade(dbp, fname, flags) goto err; /* FALLTHROUGH */ case 8: + /* + * Any upgrade that has proceeded this far has metadata + * pages compatible with hash version 8 metadata pages, + * so casting mbuf to a dbmeta is safe. + * If a newer revision moves the pagesize, checksum or + * encrypt_alg flags in the metadata, then the + * extraction of the fields will need to use hard coded + * offsets. + */ + meta = (DBMETA*)mbuf; + /* + * We need the page size to do more. Extract it from + * the meta-data page. + */ + memcpy(&dbp->pgsize, &meta->pagesize, + sizeof(u_int32_t)); + /* + * Rip out metadata and encrypt_alg fields from the + * metadata page. So the upgrade can know how big + * the page metadata pre-amble is. Any upgrade that has + * proceeded this far has metadata pages compatible + * with hash version 8 metadata pages, so extracting + * the fields is safe. + */ + memcpy(&tmpflags, &meta->metaflags, sizeof(u_int8_t)); + if (FLD_ISSET(tmpflags, DBMETA_CHKSUM)) + F_SET(dbp, DB_AM_CHKSUM); + memcpy(&tmpflags, &meta->encrypt_alg, sizeof(u_int8_t)); + if (tmpflags != 0) { + if (!CRYPTO_ON(dbp->dbenv)) { + __db_errx(dbenv, +"Attempt to upgrade an encrypted database without providing a password."); + ret = EINVAL; + goto err; + } + F_SET(dbp, DB_AM_ENCRYPT); + } + + /* + * This is ugly. It is necessary to have a usable + * mpool in the dbp to upgrade from an unsorted + * to a sorted hash database. The mpool file is used + * to resolve offpage key items, which are needed to + * determine sort order. Having mpool open and access + * the file does not affect the page pass, since the + * page pass only updates DB_HASH_UNSORTED pages + * in-place, and the mpool file is only used to read + * OFFPAGE items. + */ + use_mp_open = 1; + if ((ret = __os_closehandle(dbenv, fhp)) != 0) + return (ret); + dbp->type = DB_HASH; + if ((ret = __db_env_mpool(dbp, fname, + DB_AM_NOT_DURABLE | DB_AM_VERIFYING)) != 0) + return (ret); + fhp = dbp->mpf->fhp; + + /* Do the actual conversion pass. */ + if ((ret = __db_page_pass( + dbp, real_name, flags, func_46_list, fhp)) != 0) + goto err; + + /* FALLTHROUGH */ + case 9: break; default: __db_errx(dbenv, "%s: unsupported hash version: %lu", @@ -261,7 +353,11 @@ __db_upgrade(dbp, fname, flags) ret = __os_fsync(dbenv, fhp); -err: if (fhp != NULL && + /* + * If mp_open was used, then rely on the database close to clean up + * any file handles. + */ +err: if (use_mp_open == 0 && fhp != NULL && (t_ret = __os_closehandle(dbenv, fhp)) != 0 && ret == 0) ret = t_ret; __os_free(dbenv, real_name); @@ -312,10 +408,16 @@ __db_page_pass(dbp, real_name, flags, fl, fhp) if ((ret = __os_read(dbenv, fhp, page, dbp->pgsize, &n)) != 0) break; dirty = 0; + /* Always decrypt the page. */ + if ((ret = __db_decrypt_pg(dbenv, dbp, page)) != 0) + break; if (fl[TYPE(page)] != NULL && (ret = fl[TYPE(page)] (dbp, real_name, flags, fhp, page, &dirty)) != 0) break; if (dirty) { + if ((ret = __db_encrypt_and_checksum_pg( + dbenv, dbp, page)) != 0) + break; if ((ret = __os_seek(dbenv, fhp, i, dbp->pgsize, 0)) != 0) break; @@ -400,3 +502,4 @@ __db_set_lastpgno(dbp, real_name, fhp) return (0); } +#endif /* HAVE_UPGRADE_SUPPORT */ diff --git a/db/db/db_upg_opd.c b/db/db/db_upg_opd.c index 41dec2696..0f067966e 100644 --- a/db/db/db_upg_opd.c +++ b/db/db/db_upg_opd.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_upg_opd.c,v 12.7 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_upg_opd.c,v 12.9 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" diff --git a/db/db/db_vrfy.c b/db/db/db_vrfy.c index f502c35a9..38479cf6c 100644 --- a/db/db/db_vrfy.c +++ b/db/db/db_vrfy.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_vrfy.c,v 12.29 2006/09/07 20:05:26 bostic Exp $ + * $Id: db_vrfy.c,v 12.40 2007/07/02 16:58:02 alexg Exp $ */ #include "db_config.h" @@ -252,7 +251,7 @@ __db_verify(dbp, name, subdb, handle, callback, flags) * safe to open the database normally and then use the page swapping * code, which makes life easier. */ - if ((ret = __os_open(dbenv, real_name, DB_OSO_RDONLY, 0, &fhp)) != 0) + if ((ret = __os_open(dbenv, real_name, 0, DB_OSO_RDONLY, 0, &fhp)) != 0) goto err; /* Verify the metadata page 0; set pagesize and type. */ @@ -271,11 +270,11 @@ __db_verify(dbp, name, subdb, handle, callback, flags) * enough to use. * * The dbp is not open, but the file is open in the fhp, and we - * cannot assume that __db_open is safe. Call __db_dbenv_setup, + * cannot assume that __db_open is safe. Call __db_env_setup, * the [safe] part of __db_open that initializes the environment-- * and the mpool--manually. */ - if ((ret = __db_dbenv_setup(dbp, NULL, + if ((ret = __db_env_setup(dbp, NULL, name, subdb, TXN_INVALID, DB_ODDFILESIZE | DB_RDONLY)) != 0) goto err; @@ -291,7 +290,7 @@ __db_verify(dbp, name, subdb, handle, callback, flags) F_SET(dbp, DB_AM_OPEN_CALLED); /* Find out the page number of the last page in the database. */ - if ((ret = __memp_last_pgno(dbp->mpf, &vdp->last_pgno)) != 0) + if ((ret = __memp_get_last_pgno(dbp->mpf, &vdp->last_pgno)) != 0) goto err; /* @@ -570,6 +569,7 @@ __db_vrfy_pagezero(dbp, vdp, fhp, flags) /* * 28-31: Free list page number. + * 32-35: Last page in database file. * We'll verify its sensibility when we do inter-page * verification later; for now, just store it. */ @@ -620,6 +620,7 @@ __db_vrfy_walkpages(dbp, vdp, handle, callback, flags) { DB_ENV *dbenv; DB_MPOOLFILE *mpf; + VRFY_PAGEINFO *pip; PAGE *h; db_pgno_t i; int ret, t_ret, isbad; @@ -638,11 +639,26 @@ __db_vrfy_walkpages(dbp, vdp, handle, callback, flags) continue; /* - * If an individual page get fails, keep going if and only - * if we're salvaging. + * An individual page get can fail if: + * * This is a hash database, it is expected to find + * empty buckets, which don't have allocated pages. Create + * a dummy page so the verification can proceed. + * * We are salvaging, flag the error and continue. */ if ((t_ret = __memp_fget(mpf, &i, NULL, 0, &h)) != 0) { - if (ret == 0) + if (dbp->type == DB_HASH) { + if ((t_ret = + __db_vrfy_getpageinfo(vdp, i, &pip)) != 0) + goto err1; + pip->type = P_INVALID; + pip->pgno = i; + F_CLR(pip, VRFY_IS_ALLZEROES); + if ((t_ret = __db_vrfy_putpageinfo( + dbenv, vdp, pip)) != 0) + goto err1; + continue; + } +err1: if (ret == 0) ret = t_ret; if (LF_ISSET(DB_SALVAGE)) continue; @@ -690,6 +706,7 @@ __db_vrfy_walkpages(dbp, vdp, handle, callback, flags) "Page %lu: old-style duplicate page", (u_long)i)); break; + case P_HASH_UNSORTED: case P_HASH: ret = __ham_vrfy(dbp, vdp, h, i, flags); break; @@ -752,7 +769,7 @@ __db_vrfy_walkpages(dbp, vdp, handle, callback, flags) * Just as with the page get, bail if and only if we're * not salvaging. */ - if ((t_ret = __memp_fput(mpf, h, 0)) != 0) { + if ((t_ret = __memp_fput(mpf, h, dbp->priority)) != 0) { if (ret == 0) ret = t_ret; if (!LF_ISSET(DB_SALVAGE)) @@ -775,7 +792,8 @@ __db_vrfy_walkpages(dbp, vdp, handle, callback, flags) } if (0) { -err: if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0) +err: if (h != NULL && + (t_ret = __memp_fput(mpf, h, dbp->priority)) != 0) return (ret == 0 ? t_ret : ret); } @@ -921,7 +939,12 @@ __db_vrfy_structure(dbp, vdp, dbname, meta_pgno, flags) (u_long)pip->refcount, (u_long)p)); isbad = 1; } - } else if (p == 0 && LF_ISSET(DB_UNREF)) { + } else if (p == 0 && LF_ISSET(DB_UNREF) && + !(dbp->type == DB_HASH && pip->type == P_INVALID)) { + /* + * It is OK for unreferenced hash buckets to be + * marked invalid and unreferenced. + */ EPRINT((dbenv, "Page %lu: unreferenced page", (u_long)i)); isbad = 1; @@ -952,7 +975,7 @@ __db_is_valid_pagetype(type) { switch (type) { case P_INVALID: /* Order matches ordinal value. */ - case P_HASH: + case P_HASH_UNSORTED: case P_IBTREE: case P_IRECNO: case P_LBTREE: @@ -963,6 +986,7 @@ __db_is_valid_pagetype(type) case P_QAMMETA: case P_QAMDATA: case P_LDUP: + case P_HASH: return (1); default: break; @@ -1125,6 +1149,7 @@ __db_vrfy_datapage(dbp, vdp, h, pgno, flags) { DB_ENV *dbenv; VRFY_PAGEINFO *pip; + u_int32_t smallest_entry; int isbad, ret, t_ret; dbenv = dbp->dbenv; @@ -1157,22 +1182,41 @@ __db_vrfy_datapage(dbp, vdp, h, pgno, flags) } /* - * Verify the number of entries on the page. - * There is no good way to determine if this is accurate; the - * best we can do is verify that it's not more than can, in theory, - * fit on the page. Then, we make sure there are at least - * this many valid elements in inp[], and hope that this catches - * most cases. + * Verify the number of entries on the page: there's no good way to + * determine if this is accurate. The best we can do is verify that + * it's not more than can, in theory, fit on the page. Then, we make + * sure there are at least this many valid elements in inp[], and + * hope the test catches most cases. */ - if (TYPE(h) != P_OVERFLOW) { - if (BKEYDATA_PSIZE(0) * NUM_ENT(h) > dbp->pgsize) { - isbad = 1; - EPRINT((dbenv, "Page %lu: too many entries: %lu", - (u_long)pgno, (u_long)NUM_ENT(h))); - } - pip->entries = NUM_ENT(h); + switch (TYPE(h)) { + case P_HASH_UNSORTED: + case P_HASH: + smallest_entry = HKEYDATA_PSIZE(0); + break; + case P_IBTREE: + smallest_entry = BINTERNAL_PSIZE(0); + break; + case P_IRECNO: + smallest_entry = RINTERNAL_PSIZE; + break; + case P_LBTREE: + case P_LDUP: + case P_LRECNO: + smallest_entry = BKEYDATA_PSIZE(0); + break; + default: + smallest_entry = 0; + break; + } + if (smallest_entry * NUM_ENT(h) > dbp->pgsize) { + isbad = 1; + EPRINT((dbenv, "Page %lu: too many entries: %lu", + (u_long)pgno, (u_long)NUM_ENT(h))); } + if (TYPE(h) != P_OVERFLOW) + pip->entries = NUM_ENT(h); + /* * btree level. Should be zero unless we're a btree; * if we are a btree, should be between LEAFLEVEL and MAXBTREELEVEL, @@ -1336,6 +1380,14 @@ __db_vrfy_meta(dbp, vdp, meta, pgno, flags) (u_long)pgno, (u_long)meta->free)); } + if (pgno == PGNO_BASE_MD && meta->last_pgno != vdp->last_pgno) { + isbad = 1; + EPRINT((dbenv, + "Page %lu: last_pgno is not correct: %lu != %lu", + (u_long)pgno, + (u_long)meta->last_pgno, (u_long)vdp->last_pgno)); + } + /* * We have now verified the common fields of the metadata page. * Clear the flag that told us they had been incompletely checked. @@ -1450,7 +1502,7 @@ __db_vrfy_subdbs(dbp, vdp, dbname, flags) memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); - while ((ret = __db_c_get(dbc, &key, &data, DB_NEXT)) == 0) { + while ((ret = __dbc_get(dbc, &key, &data, DB_NEXT)) == 0) { if (data.size != sizeof(db_pgno_t)) { EPRINT((dbenv, "Subdatabase entry not page-number size")); @@ -1507,7 +1559,7 @@ __db_vrfy_subdbs(dbp, vdp, dbname, flags) if (ret == DB_NOTFOUND) ret = 0; -err: if (dbc != NULL && (t_ret = __db_c_close(dbc)) != 0 && ret == 0) +err: if (dbc != NULL && (t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; if ((t_ret = __db_close(mdbp, NULL, 0)) != 0 && ret == 0) @@ -1626,7 +1678,8 @@ __db_vrfy_orderchkonly(dbp, vdp, name, subdb, flags) NULL, currpg, p, NUM_ENT(currpg), 1, F_ISSET(&btmeta->dbmeta, BTM_DUP), flags)) != 0) goto err; - if ((ret = __memp_fput(mpf, currpg, 0)) != 0) + if ((ret = + __memp_fput(mpf, currpg, dbp->priority)) != 0) goto err; currpg = NULL; } @@ -1679,7 +1732,8 @@ __db_vrfy_orderchkonly(dbp, vdp, name, subdb, flags) flags, h_internal->h_hash)) != 0) goto err; pgno = NEXT_PGNO(currpg); - if ((ret = __memp_fput(mpf, currpg, 0)) != 0) + if ((ret = __memp_fput(mpf, + currpg, dbp->priority)) != 0) goto err; currpg = NULL; } @@ -1692,14 +1746,15 @@ __db_vrfy_orderchkonly(dbp, vdp, name, subdb, flags) break; } -err: if (pgsc != NULL && (t_ret = __db_c_close(pgsc)) != 0 && ret == 0) +err: if (pgsc != NULL && (t_ret = __dbc_close(pgsc)) != 0 && ret == 0) ret = t_ret; if (pgset != NULL && (t_ret = __db_close(pgset, NULL, 0)) != 0 && ret == 0) ret = t_ret; - if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0) + if (h != NULL && (t_ret = __memp_fput(mpf, h, dbp->priority)) != 0) ret = t_ret; - if (currpg != NULL && (t_ret = __memp_fput(mpf, currpg, 0)) != 0) + if (currpg != NULL && + (t_ret = __memp_fput(mpf, currpg, dbp->priority)) != 0) ret = t_ret; if ((t_ret = __db_close(mdbp, NULL, 0)) != 0) ret = t_ret; @@ -1755,6 +1810,7 @@ __db_salvage(dbp, vdp, pgno, h, handle, callback, flags) keyflag = 1; ret = __qam_vrfy_meta(dbp, vdp, (QMETA *)h, pgno, flags); break; + case P_HASH_UNSORTED: case P_HASH: return (__ham_salvage( dbp, vdp, pgno, h, handle, callback, flags)); @@ -1888,7 +1944,8 @@ __db_salvage_unknowns(dbp, vdp, handle, callback, flags) DB_ASSERT(dbenv, 0); break; } - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; } @@ -1899,7 +1956,7 @@ __db_salvage_unknowns(dbp, vdp, handle, callback, flags) ret = t_ret; /* Re-open the cursor so we traverse the database again. */ - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; dbc = NULL; @@ -1933,7 +1990,8 @@ __db_salvage_unknowns(dbp, vdp, handle, callback, flags) DB_ASSERT(dbenv, 0); /* Shouldn't ever happen. */ break; } - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; } @@ -1943,7 +2001,7 @@ __db_salvage_unknowns(dbp, vdp, handle, callback, flags) if (t_ret != 0 && ret == 0) ret = t_ret; - if ((t_ret = __db_c_close(dbc)) != 0 && ret == 0) + if ((t_ret = __dbc_close(dbc)) != 0 && ret == 0) ret = t_ret; __os_free(dbenv, ovflbuf); @@ -2209,7 +2267,7 @@ __db_salvage_duptree(dbp, vdp, pgno, key, handle, callback, flags) goto err; } -err: if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) +err: if ((t_ret = __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -2263,7 +2321,8 @@ __db_salvage_subdbs(dbp, vdp, handle, callback, flags, hassubsp) (t_ret = __db_vrfy_putpageinfo(dbenv, vdp, pip)) != 0 && ret == 0) ret = t_ret; if (h != NULL) { - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = + __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; h = NULL; } @@ -2293,7 +2352,8 @@ __db_salvage_subdbs(dbp, vdp, handle, callback, flags, hassubsp) if (t_ret != 0 && ret == 0) ret = t_ret; if (h != NULL) { - if ((t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if ((t_ret = __memp_fput(mpf, + h, dbp->priority)) != 0 && ret == 0) ret = t_ret; h = NULL; } @@ -2302,12 +2362,13 @@ __db_salvage_subdbs(dbp, vdp, handle, callback, flags, hassubsp) if (t_ret != DB_NOTFOUND && ret == 0) ret = t_ret; -err: if (pgsc != NULL && (t_ret = __db_c_close(pgsc)) != 0 && ret == 0) +err: if (pgsc != NULL && (t_ret = __dbc_close(pgsc)) != 0 && ret == 0) ret = t_ret; if (pgset != NULL && (t_ret = __db_close(pgset, NULL, 0)) != 0 && ret ==0) ret = t_ret; - if (h != NULL && (t_ret = __memp_fput(mpf, h, 0)) != 0 && ret == 0) + if (h != NULL && + (t_ret = __memp_fput(mpf, h, dbp->priority)) != 0 && ret == 0) ret = t_ret; return (ret); } @@ -2413,7 +2474,7 @@ __db_salvage_subdbpg(dbp, vdp, master, handle, callback, flags) if ((ret = __db_vrfy_common(dbp, vdp, subpg, meta_pgno, flags)) != 0) { err_ret = ret; - (void)__memp_fput(mpf, subpg, 0); + (void)__memp_fput(mpf, subpg, dbp->priority); continue; } switch (TYPE(subpg)) { @@ -2421,7 +2482,7 @@ __db_salvage_subdbpg(dbp, vdp, master, handle, callback, flags) if ((ret = __bam_vrfy_meta(dbp, vdp, (BTMETA *)subpg, meta_pgno, flags)) != 0) { err_ret = ret; - (void)__memp_fput(mpf, subpg, 0); + (void)__memp_fput(mpf, subpg, dbp->priority); continue; } break; @@ -2429,7 +2490,7 @@ __db_salvage_subdbpg(dbp, vdp, master, handle, callback, flags) if ((ret = __ham_vrfy_meta(dbp, vdp, (HMETA *)subpg, meta_pgno, flags)) != 0) { err_ret = ret; - (void)__memp_fput(mpf, subpg, 0); + (void)__memp_fput(mpf, subpg, dbp->priority); continue; } break; @@ -2439,7 +2500,7 @@ __db_salvage_subdbpg(dbp, vdp, master, handle, callback, flags) continue; } - if ((ret = __memp_fput(mpf, subpg, 0)) != 0) { + if ((ret = __memp_fput(mpf, subpg, dbp->priority)) != 0) { err_ret = ret; continue; } @@ -2466,14 +2527,15 @@ __db_salvage_subdbpg(dbp, vdp, master, handle, callback, flags) if ((ret = __db_salvage(dbp, vdp, p, subpg, handle, callback, flags)) != 0) err_ret = ret; - if ((ret = __memp_fput(mpf, subpg, 0)) != 0) + if ((ret = + __memp_fput(mpf, subpg, dbp->priority)) != 0) err_ret = ret; } if (ret != DB_NOTFOUND) goto err; - if ((ret = __db_c_close(pgsc)) != 0) + if ((ret = __dbc_close(pgsc)) != 0) goto err; if ((ret = __db_prfooter(handle, callback)) != 0) goto err; @@ -2525,7 +2587,7 @@ __db_meta2pgset(dbp, vdp, pgno, flags, pgset) break; } - if ((t_ret = __memp_fput(mpf, h, 0)) != 0) + if ((t_ret = __memp_fput(mpf, h, dbp->priority)) != 0) return (t_ret); return (ret); } diff --git a/db/db/db_vrfy_stub.c b/db/db/db_vrfy_stub.c index 9bef99be0..efbd233dc 100644 --- a/db/db/db_vrfy_stub.c +++ b/db/db/db_vrfy_stub.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_vrfy_stub.c,v 12.5 2006/08/24 14:45:16 bostic Exp $ + * $Id: db_vrfy_stub.c,v 12.7 2007/05/17 15:14:57 bostic Exp $ */ #ifndef HAVE_VERIFY diff --git a/db/db/db_vrfyutil.c b/db/db/db_vrfyutil.c index 414814079..53ca7860f 100644 --- a/db/db/db_vrfyutil.c +++ b/db/db/db_vrfyutil.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_vrfyutil.c,v 12.12 2006/09/11 15:13:24 bostic Exp $ + * $Id: db_vrfyutil.c,v 12.16 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" @@ -40,7 +39,7 @@ __db_vrfy_dbinfo_create(dbenv, pgsize, vdpp) if ((ret = __os_calloc(NULL, 1, sizeof(VRFY_DBINFO), &vdp)) != 0) goto err; - if ((ret = db_create(&cdbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&cdbp, dbenv, 0)) != 0) goto err; if ((ret = __db_set_flags(cdbp, DB_DUP)) != 0) @@ -57,7 +56,7 @@ __db_vrfy_dbinfo_create(dbenv, pgsize, vdpp) NULL, NULL, NULL, DB_BTREE, DB_CREATE, 0600, PGNO_BASE_MD)) != 0) goto err; - if ((ret = db_create(&pgdbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&pgdbp, dbenv, 0)) != 0) goto err; if ((ret = __db_set_pagesize(pgdbp, pgsize)) != 0) @@ -274,7 +273,7 @@ __db_vrfy_pgset(dbenv, pgsize, dbpp) DB *dbp; int ret; - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) return (ret); if ((ret = __db_set_pagesize(dbp, pgsize)) != 0) goto err; @@ -389,7 +388,7 @@ __db_vrfy_pgset_next(dbc, pgnop) key.data = &pgno; key.ulen = sizeof(db_pgno_t); - if ((ret = __db_c_get(dbc, &key, &data, DB_NEXT)) != 0) + if ((ret = __dbc_get(dbc, &key, &data, DB_NEXT)) != 0) return (ret); DB_ASSERT(dbc->dbp->dbenv, key.size == sizeof(db_pgno_t)); @@ -511,7 +510,7 @@ __db_vrfy_childinc(dbc, cip) data.data = cip; data.size = sizeof(VRFY_CHILDINFO); - return (__db_c_put(dbc, &key, &data, DB_CURRENT)); + return (__dbc_put(dbc, &key, &data, DB_CURRENT)); } /* @@ -536,7 +535,7 @@ __db_vrfy_ccset(dbc, pgno, cipp) key.data = &pgno; key.size = sizeof(db_pgno_t); - if ((ret = __db_c_get(dbc, &key, &data, DB_SET)) != 0) + if ((ret = __dbc_get(dbc, &key, &data, DB_SET)) != 0) return (ret); DB_ASSERT(dbc->dbp->dbenv, data.size == sizeof(VRFY_CHILDINFO)); @@ -564,7 +563,7 @@ __db_vrfy_ccnext(dbc, cipp) memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); - if ((ret = __db_c_get(dbc, &key, &data, DB_NEXT_DUP)) != 0) + if ((ret = __dbc_get(dbc, &key, &data, DB_NEXT_DUP)) != 0) return (ret); DB_ASSERT(dbc->dbp->dbenv, data.size == sizeof(VRFY_CHILDINFO)); @@ -589,7 +588,7 @@ __db_vrfy_ccclose(dbc) DBC *dbc; { - return (__db_c_close(dbc)); + return (__dbc_close(dbc)); } /* @@ -632,7 +631,7 @@ __db_salvage_init(vdp) DB *dbp; int ret; - if ((ret = db_create(&dbp, NULL, 0)) != 0) + if ((ret = __db_create_internal(&dbp, NULL, 0)) != 0) return (ret); if ((ret = __db_set_pagesize(dbp, 1024)) != 0) @@ -692,14 +691,14 @@ __db_salvage_getnext(vdp, dbcp, pgnop, pgtypep, skip_overflow) (ret = __db_cursor(dbp, NULL, dbcp, 0)) != 0) return (ret); - while ((ret = __db_c_get(*dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = __dbc_get(*dbcp, &key, &data, DB_NEXT)) == 0) { DB_ASSERT(dbp->dbenv, data.size == sizeof(u_int32_t)); memcpy(&pgtype, data.data, sizeof(pgtype)); if (skip_overflow && pgtype == SALVAGE_OVERFLOW) continue; - if ((ret = __db_c_del(*dbcp, 0)) != 0) + if ((ret = __dbc_del(*dbcp, 0)) != 0) return (ret); if (pgtype != SALVAGE_IGNORE) { DB_ASSERT(dbp->dbenv, key.size == sizeof(db_pgno_t)); diff --git a/db/db185/db185.c b/db/db185/db185.c index 484b43676..58d2fe596 100644 --- a/db/db185/db185.c +++ b/db/db185/db185.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db185.c,v 12.7 2006/08/31 17:59:25 bostic Exp $ + * $Id: db185.c,v 12.11 2007/05/17 15:14:57 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif #include "db185_int.h" @@ -157,6 +156,15 @@ __db185_open(file, oflags, mode, type, openinfo) file = NULL; } + /* + * !!! + * Set the O_CREAT flag in case the application didn't -- in DB + * 1.85 the backing file was the file being created and it may + * exist, but DB 2.X is creating a temporary Btree database and + * we need the create flag to do that. + */ + oflags |= O_CREAT; + if ((ri = openinfo) != NULL) { /* * !!! @@ -279,7 +287,7 @@ db185_del(db185p, key185, flags) if (flags & ~R_CURSOR) goto einval; if (flags & R_CURSOR) - ret = db185p->dbc->c_del(db185p->dbc, 0); + ret = db185p->dbc->del(db185p->dbc, 0); else ret = dbp->del(dbp, NULL, &key, 0); @@ -378,7 +386,7 @@ db185_put(db185p, key185, data185, flags) ret = dbp->put(dbp, NULL, &key, &data, 0); break; case R_CURSOR: - ret = db185p->dbc->c_put(db185p->dbc, &key, &data, DB_CURRENT); + ret = db185p->dbc->put(db185p->dbc, &key, &data, DB_CURRENT); break; case R_IAFTER: case R_IBEFORE: @@ -388,14 +396,14 @@ db185_put(db185p, key185, data185, flags) if ((ret = dbp->cursor(dbp, NULL, &dbcp_put, 0)) != 0) break; if ((ret = - dbcp_put->c_get(dbcp_put, &key, &data, DB_SET)) == 0) { + dbcp_put->get(dbcp_put, &key, &data, DB_SET)) == 0) { memset(&data, 0, sizeof(data)); data.data = data185->data; data.size = data185->size; - ret = dbcp_put->c_put(dbcp_put, &key, &data, + ret = dbcp_put->put(dbcp_put, &key, &data, flags == R_IAFTER ? DB_AFTER : DB_BEFORE); } - if ((t_ret = dbcp_put->c_close(dbcp_put)) != 0 && ret == 0) + if ((t_ret = dbcp_put->close(dbcp_put)) != 0 && ret == 0) ret = t_ret; break; case R_NOOVERWRITE: @@ -408,7 +416,7 @@ db185_put(db185p, key185, data185, flags) if ((ret = dbp->put(dbp, NULL, &key, &data, 0)) != 0) break; ret = - db185p->dbc->c_get(db185p->dbc, &key, &data, DB_SET_RANGE); + db185p->dbc->get(db185p->dbc, &key, &data, DB_SET_RANGE); break; default: goto einval; @@ -472,7 +480,7 @@ db185_seq(db185p, key185, data185, flags) default: goto einval; } - switch (ret = db185p->dbc->c_get(db185p->dbc, &key, &data, flags)) { + switch (ret = db185p->dbc->get(db185p->dbc, &key, &data, flags)) { case 0: key185->data = key.data; key185->size = key.size; diff --git a/db/db185/db185_int.h b/db/db185/db185_int.h deleted file mode 100644 index 172019d3f..000000000 --- a/db/db185/db185_int.h +++ /dev/null @@ -1,129 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1997, 1998, 1999, 2000 - * Sleepycat Software. All rights reserved. - */ -/* - * Copyright (c) 1990, 1993, 1994, 1995, 1996 - * Keith Bostic. All rights reserved. - */ -/* - * Copyright (c) 1990, 1993, 1994 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * $Id: db185_int.h,v 11.7 2001/01/22 22:22:46 krinsky Exp $ - */ - -#ifndef _DB185_H_ -#define _DB185_H_ - -/* Routine flags. */ -#define R_CURSOR 1 /* del, put, seq */ -#define __R_UNUSED 2 /* UNUSED */ -#define R_FIRST 3 /* seq */ -#define R_IAFTER 4 /* put (RECNO) */ -#define R_IBEFORE 5 /* put (RECNO) */ -#define R_LAST 6 /* seq (BTREE, RECNO) */ -#define R_NEXT 7 /* seq */ -#define R_NOOVERWRITE 8 /* put */ -#define R_PREV 9 /* seq (BTREE, RECNO) */ -#define R_SETCURSOR 10 /* put (RECNO) */ -#define R_RECNOSYNC 11 /* sync (RECNO) */ - -typedef struct { - void *data; /* data */ - size_t size; /* data length */ -} DBT185; - -/* Access method description structure. */ -typedef struct __db185 { - DBTYPE type; /* Underlying db type. */ - int (*close) __P((struct __db185 *)); - int (*del) __P((const struct __db185 *, const DBT185 *, u_int)); - int (*get) - __P((const struct __db185 *, const DBT185 *, DBT185 *, u_int)); - int (*put) - __P((const struct __db185 *, DBT185 *, const DBT185 *, u_int)); - int (*seq) - __P((const struct __db185 *, DBT185 *, DBT185 *, u_int)); - int (*sync) __P((const struct __db185 *, u_int)); - DB *dbp; /* DB structure. Was void *internal. */ - int (*fd) __P((const struct __db185 *)); - - /* - * !!! - * The following elements added to the end of the DB 1.85 DB - * structure. - */ - DBC *dbc; /* DB cursor. */ - /* Various callback functions. */ - int (*compare) __P((const DBT *, const DBT *)); - size_t (*prefix) __P((const DBT *, const DBT *)); - u_int32_t (*hash) __P((const void *, size_t)); -} DB185; - -/* Structure used to pass parameters to the btree routines. */ -typedef struct { -#define R_DUP 0x01 /* duplicate keys */ - u_int32_t flags; - u_int32_t cachesize; /* bytes to cache */ - u_int32_t maxkeypage; /* maximum keys per page */ - u_int32_t minkeypage; /* minimum keys per page */ - u_int32_t psize; /* page size */ - int (*compare) /* comparison function */ - __P((const DBT *, const DBT *)); - size_t (*prefix) /* prefix function */ - __P((const DBT *, const DBT *)); - int lorder; /* byte order */ -} BTREEINFO; - -/* Structure used to pass parameters to the hashing routines. */ -typedef struct { - u_int32_t bsize; /* bucket size */ - u_int32_t ffactor; /* fill factor */ - u_int32_t nelem; /* number of elements */ - u_int32_t cachesize; /* bytes to cache */ - u_int32_t /* hash function */ - (*hash) __P((const void *, size_t)); - int lorder; /* byte order */ -} HASHINFO; - -/* Structure used to pass parameters to the record routines. */ -typedef struct { -#define R_FIXEDLEN 0x01 /* fixed-length records */ -#define R_NOKEY 0x02 /* key not required */ -#define R_SNAPSHOT 0x04 /* snapshot the input */ - u_int32_t flags; - u_int32_t cachesize; /* bytes to cache */ - u_int32_t psize; /* page size */ - int lorder; /* byte order */ - size_t reclen; /* record length (fixed-length records) */ - u_char bval; /* delimiting byte (variable-length records */ - char *bfname; /* btree file name */ -} RECNOINFO; -#endif /* !_DB185_H_ */ diff --git a/db/db185/db185_int.in b/db/db185/db185_int.in index acc44c91a..c3d924869 100644 --- a/db/db185/db185_int.in +++ b/db/db185/db185_int.in @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -36,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db185_int.in,v 12.4 2006/08/24 14:45:17 bostic Exp $ + * $Id: db185_int.in,v 12.6 2007/05/17 15:14:57 bostic Exp $ */ #ifndef _DB185_INT_H_ diff --git a/db/db_archive/db_archive.c b/db/db_archive/db_archive.c index 48094e20f..3460ed3a4 100644 --- a/db/db_archive/db_archive.c +++ b/db/db_archive/db_archive.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_archive.c,v 12.9 2006/08/26 09:23:00 bostic Exp $ + * $Id: db_archive.c,v 12.12 2007/05/17 15:14:58 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int main __P((int, char *[])); @@ -34,7 +33,7 @@ main(argc, argv) int ch, exitval, ret, verbose; char **file, *home, **list, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/db_checkpoint/db_checkpoint.c b/db/db_checkpoint/db_checkpoint.c index df0e5e286..076be2bf2 100644 --- a/db/db_checkpoint/db_checkpoint.c +++ b/db/db_checkpoint/db_checkpoint.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_checkpoint.c,v 12.15 2006/08/26 09:23:25 bostic Exp $ + * $Id: db_checkpoint.c,v 12.18 2007/05/17 15:14:58 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int main __P((int, char *[])); @@ -36,7 +35,7 @@ main(argc, argv) int ch, exitval, once, ret, verbose; char *home, *logfile, *passwd, time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/db_codegen/code_capi.c b/db/db_codegen/code_capi.c new file mode 100644 index 000000000..83615baab --- /dev/null +++ b/db/db_codegen/code_capi.c @@ -0,0 +1,626 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: code_capi.c,v 1.8 2007/06/05 14:06:25 bostic Exp $ + */ + +#include "db_codegen.h" + +static FILE *of; /* Output stream. */ + +static void api_c_callback __P((DB_OBJ *)); +static void api_c_compare __P((DB_OBJ *)); +static void api_c_data __P((void)); +static void api_c_db __P((void)); +static void api_c_env __P((void)); +static void api_c_header __P((void)); +static void api_c_public_data __P((void)); +static void api_c_public_func __P((void)); +static void api_c_shutdown __P((void)); + +int +api_c(ofname) + char *ofname; +{ + DB_OBJ *cur_db; + ENV_OBJ *cur_env; + + /* Open the output file. */ + if (ofname == NULL) + ofname = "application.c"; + if ((of = fopen(ofname, "w")) == NULL) { + fprintf(stderr, + "%s: %s: %s\n", progname, ofname, strerror(errno)); + return (1); + } + + /* File header. */ + api_c_header(); + + /* Public information for the application. */ + api_c_public_data(); + + /* Secondary callback functions. */ + TAILQ_FOREACH(cur_env, &env_tree, q) + TAILQ_FOREACH(cur_db, &cur_env->dbq, q) + if (cur_db->primary != NULL) + api_c_callback(cur_db); + + /* Integral type comparison functions. */ + TAILQ_FOREACH(cur_env, &env_tree, q) + TAILQ_FOREACH(cur_db, &cur_env->dbq, q) + if (cur_db->key_type != NULL) + api_c_compare(cur_db); + + /* Data structures. */ + api_c_data(); + + /* Initialization functions. */ + api_c_public_func(); + + /* Open the environments. */ + api_c_env(); + + /* Open the databases. */ + api_c_db(); + + /* Shutdown gracefully. */ + api_c_shutdown(); + + return (0); +} + +static void +api_c_header() +{ + /* Include files. */ + fprintf(of, "\ +#include \n\ +#include \n\ +\n\ +#include \n\ +#include \n\ +#include \n\ +\n\ +#ifdef _WIN32\n\ +#include \n\ +\n\ +#define\tmkdir(dir, perm)\t_mkdir(dir)\n\ +#endif\n\ +\n\ +#include \"db.h\"\n\n"); +} + +static void +api_c_public_data() +{ + ENV_OBJ *cur_env; + DB_OBJ *cur_db; + + /* + * Global handles. + * + * XXX + * Maybe we should put these all into a structure with some + * access methods? + */ + fprintf(of, "\ +/* Global environment and database handles for use by the application */\n"); + TAILQ_FOREACH(cur_env, &env_tree, q) { + if (!cur_env->standalone) + fprintf(of, + "DB_ENV\t*%s_dbenv;\t\t\t/* Database environment handle */\n", + cur_env->prefix); + TAILQ_FOREACH(cur_db, &cur_env->dbq, q) + if (cur_env->standalone) + fprintf(of, + "DB\t*%s;\t\t\t/* Database handle */\n", + cur_db->name); + else + fprintf(of, + "DB\t*%s_%s;\t\t\t/* Database handle */\n", + cur_env->prefix, cur_db->name); + } + + fprintf(of, "\ +\n\ +/* Public functions for use by the application */\n\ +int bdb_startup(void);\n\ +int bdb_shutdown(void);\n"); +} + +static void +api_c_data() +{ + DB_OBJ *cur_db; + ENV_OBJ *cur_env; + int first; + + fprintf(of, "\ +\n\ +/* DB_ENV initialization structures */\n\ +typedef struct {\n\ +\tDB_ENV **envpp;\n\ +\tchar *home;\n\ +\tu_int32_t gbytes;\n\ +\tu_int32_t bytes;\n\ +\tu_int32_t ncache;\n\ +\tint private;\n\ +\tint transaction;\n\ +} env_list_t;\n\ +static env_list_t env_list[] = {\n"); + + first = 1; + TAILQ_FOREACH(cur_env, &env_tree, q) + if (!cur_env->standalone) { + fprintf(of, + "%s\t{ &%s_dbenv, \"%s\", %lu, %lu, %lu, %d, %d", + first ? "" : " },\n", + cur_env->prefix, + cur_env->home, + (u_long)cur_env->gbytes, + (u_long)cur_env->bytes, + (u_long)cur_env->ncache, + cur_env->private, + cur_env->transaction); + first = 0; + } + fprintf(of, " }\n};\n\n"); + + fprintf(of, "\ +/* DB initialization structures */\n\ +typedef struct db_list_t {\n\ +\tDB_ENV **envpp;\n\ +\tDB **dbpp;\n\ +\tchar *name;\n\ +\tDBTYPE type;\n\ +\tu_int32_t extentsize;\n\ +\tu_int32_t pagesize;\n\ +\tu_int32_t re_len;\n\ +\tint (*key_compare)(DB *, const DBT *, const DBT *);\n\ +\tDB **primaryp;\n\ +\tint (*secondary_callback)(DB *, const DBT *, const DBT *, DBT *);\n\ +\tint dupsort;\n\ +\tint recnum;\n\ +\tint transaction;\n\ +} db_list_t;\n\ +static db_list_t db_list[] = {\n"); + + first = 1; + TAILQ_FOREACH(cur_env, &env_tree, q) + TAILQ_FOREACH(cur_db, &cur_env->dbq, q) { + fprintf(of, "\ +%s\t{ %s%s%s, &%s%s%s, \"%s\", %s, %lu, %lu, %lu,\n\ +\t\t%s%s%s, %s%s%s%s, %s%s%s, %d, %d, %d", + first ? "" : " },\n", + cur_env->standalone ? "" : "&", + cur_env->standalone ? "NULL" : cur_env->prefix, + cur_env->standalone ? "" : "_dbenv", + cur_env->prefix == NULL ? + cur_db->name : cur_env->prefix, + cur_env->prefix == NULL ? "" : "_", + cur_env->prefix == NULL ? "" : cur_db->name, + cur_db->name, + cur_db->dbtype, + (u_long)cur_db->extentsize, + (u_long)cur_db->pagesize, + (u_long)cur_db->re_len, + cur_db->key_type == NULL ? "NULL" : "bdb_", + cur_db->key_type == NULL ? "" : cur_db->key_type, + cur_db->key_type == NULL ? "" : "_compare", + cur_db->primary == NULL ? "NULL" : "&", + cur_db->primary == NULL ? "" : cur_env->prefix, + cur_db->primary == NULL ? "" : "_", + cur_db->primary == NULL ? "" : cur_db->primary, + cur_db->primary == NULL ? "NULL" : "bdb_", + cur_db->primary == NULL ? "" : cur_db->name, + cur_db->primary == NULL ? "" : "_callback", + cur_db->dupsort, + cur_db->recnum, + cur_db->transaction); + first = 0; + } + fprintf(of, " }\n};\n\n"); +} + +static void +api_c_public_func() +{ + fprintf(of, "\ +#ifdef BUILD_STANDALONE\n\ +int\n\ +main()\n\ +{\n\ +\treturn (bdb_startup() && bdb_shutdown() ? EXIT_FAILURE : EXIT_SUCCESS);\n\ +}\n\ +#endif\n\n"); + + /* Function prototypes. */ + fprintf(of, "\ +static int bdb_env_startup(env_list_t *);\n\ +static int bdb_env_shutdown(env_list_t *);\n\ +static int bdb_db_startup(db_list_t *);\n\ +static int bdb_db_shutdown(db_list_t *);\n\ +\n"); + + fprintf(of, "\ +/*\n\ + * bdb_startup --\n\ + *\tStart up the environments and databases.\n\ + */\n\ +int\nbdb_startup()\n{\n\ +\tu_int i;\n\ +\n\ +\t/* Open environments. */\n\ +\tfor (i = 0; i < sizeof(env_list) / sizeof(env_list[0]); ++i)\n\ +\t\tif (bdb_env_startup(&env_list[i]))\n\ +\t\t\treturn (1);\n\ +\t/* Open primary databases. */\n\ +\tfor (i = 0; i < sizeof(db_list) / sizeof(db_list[0]); ++i)\n\ +\t\tif (db_list[i].primaryp == NULL &&\n\ +\t\t bdb_db_startup(&db_list[i]))\n\ +\t\t\treturn (1);\n\ +\t/* Open secondary databases. */\n\ +\tfor (i = 0; i < sizeof(db_list) / sizeof(db_list[0]); ++i)\n\ +\t\tif (db_list[i].primaryp != NULL &&\n\ +\t\t bdb_db_startup(&db_list[i]))\n\ +\t\t\treturn (1);\n\ +\treturn (0);\n\ +}\n"); + + fprintf(of, "\ +\n\ +/*\n\ + * bdb_shutdown --\n\ + *\tShut down the environments and databases.\n\ + */\n\ +int\nbdb_shutdown()\n{\n\ +\tu_int i;\n\ +\n\ +\t/* Close secondary databases. */\n\ +\tfor (i = 0; i < sizeof(db_list) / sizeof(db_list[0]); ++i)\n\ +\t\tif (db_list[i].primaryp != NULL &&\n\ +\t\t bdb_db_shutdown(&db_list[i]))\n\ +\t\t\treturn (1);\n\ +\t/* Close primary databases. */\n\ +\tfor (i = 0; i < sizeof(db_list) / sizeof(db_list[0]); ++i)\n\ +\t\tif (db_list[i].primaryp == NULL &&\n\ +\t\t bdb_db_shutdown(&db_list[i]))\n\ +\t\t\treturn (1);\n\ +\t/* Close environments. */\n\ +\tfor (i = 0; i < sizeof(env_list) / sizeof(env_list[0]); ++i)\n\ +\t\tif (bdb_env_shutdown(&env_list[i]))\n\ +\t\t\treturn (1);\n\ +\treturn (0);\n\ +}\n"); +} + +static void +api_c_env() +{ + fprintf(of, "\ +\n\ +static int\nbdb_env_startup(env_list_t *ep)\n{\n\ +\tstruct stat sb;\n\ +\tDB_ENV *dbenv;\n\ +\tu_int32_t open_flags;\n\ +\tint ret;\n\ +\n\ +\t/*\n\ +\t * If the directory doesn't exist, create it with permissions limited\n\ +\t * to the owner. Assume errors caused by the directory not existing;\n\ +\t * we'd like to avoid interpreting system errors and it won't hurt to\n\ +\t * attempt to create an existing directory.\n\ +\t *\n\ +\t * !!!\n\ +\t * We use octal for the permissions, nothing else is portable.\n\ +\t */\n\ +\tif (stat(ep->home, &sb) != 0)\n\ +\t\t(void)mkdir(ep->home, 0700);\n\ +\n\ +\t/*\n\ +\t * If the environment is not transactional, remove and re-create it.\n\ +\t */\n\ +\tif (!ep->transaction) {\n\ +\t\tif ((ret = db_env_create(&dbenv, 0)) != 0) {\n\ +\t\t\tfprintf(stderr, \"db_env_create: %%s\", db_strerror(ret));\n\ +\t\t\treturn (1);\n\ +\t\t}\n\ +\t\tif ((ret = dbenv->remove(dbenv, ep->home, DB_FORCE)) != 0) {\n\ +\t\t\tdbenv->err(dbenv, ret,\n\ +\t\t\t \"DB_ENV->remove: %%s\", ep->home);\n\ +\t\t\tgoto err;\n\ +\t\t}\n\ +\t}\n\n"); + + fprintf(of, "\ +\t/*\n\ +\t * Create the DB_ENV handle and initialize error reporting.\n\ +\t */\n\ +\tif ((ret = db_env_create(&dbenv, 0)) != 0) {\n\ +\t\tfprintf(stderr, \"db_env_create: %%s\", db_strerror(ret));\n\ +\t\treturn (1);\n\ +\t}\n"); + + fprintf(of, "\ +\tdbenv->set_errpfx(dbenv, ep->home);\n\ +\tdbenv->set_errfile(dbenv, stderr);\n\n"); + + fprintf(of, "\ +\t /* Configure the cache size. */\n\ +\tif ((ep->gbytes != 0 || ep->bytes != 0) &&\n\ +\t (ret = dbenv->set_cachesize(dbenv,\n\ +\t ep->gbytes, ep->bytes, ep->ncache)) != 0) {\n\ +\t\tdbenv->err(dbenv, ret, \"DB_ENV->set_cachesize\");\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\t/*\n\ +\t * Open the environment.\n\ +\t */\n\ +\topen_flags = DB_CREATE | DB_INIT_MPOOL | DB_THREAD;\n\ +\tif (ep->private)\n\ +\t open_flags |= DB_PRIVATE;\n\ +\tif (ep->transaction)\n\ +\t open_flags |= DB_INIT_LOCK |\n\ +\t DB_INIT_LOG | DB_INIT_TXN | DB_RECOVER;\n\ +\tif ((ret = dbenv->open(dbenv, ep->home, open_flags, 0)) != 0) {\n\ +\t dbenv->err(dbenv, ret, \"DB_ENV->open: %%s\", ep->home);\n\ +\t goto err;\n\ +\t}\n\ +\n\ +\t*ep->envpp = dbenv;\n\ +\treturn (0);\n\ +\n\ +err:\t(void)dbenv->close(dbenv, 0);\n\ +\treturn (1);\n\ +}"); +} + +static void +api_c_db() +{ + fprintf(of, "\ +\n\ +\nstatic int\nbdb_db_startup(db_list_t *dp)\n\ +{\n\ +\tDB_ENV *dbenv;\n\ +\tDB *dbp;\n\ +\tint ret;\n\ +\n\ +\tdbenv = dp->envpp == NULL ? NULL : *dp->envpp;\n\ +\n\ +\t/*\n\ +\t * If the database is not transactional, remove it and re-create it.\n\ +\t */\n\ +\tif (!dp->transaction) {\n\ +\t\tif ((ret = db_create(&dbp, dbenv, 0)) != 0) {\n\ +\t\t\tif (dbenv == NULL)\n\ +\t\t\t\tfprintf(stderr,\n\ +\t\t\t\t \"db_create: %%s\\n\", db_strerror(ret));\n\ +\t\t\telse\n\ +\t\t\t\tdbenv->err(dbenv, ret, \"db_create\");\n\ +\t\t\treturn (1);\n\ +\t\t}\n\ +\t\tif ((ret = dbp->remove(\n\ +\t\t dbp, dp->name, NULL, 0)) != 0 && ret != ENOENT) {\n\ +\t\t\tif (dbenv == NULL)\n\ +\t\t\t\tfprintf(stderr,\n\ +\t\t\t\t \"DB->remove: %%s: %%s\\n\",\n\ +\t\t\t\t dp->name, db_strerror(ret));\n\ +\t\t\telse\n\ +\t\t\t\tdbenv->err(\n\ +\t\t\t\t dbenv, ret, \"DB->remove: %%s\", dp->name);\n\ +\t\t\treturn (1);\n\ +\t\t}\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif ((ret = db_create(&dbp, dbenv, 0)) != 0) {\n\ +\t\tif (dbenv == NULL)\n\ +\t\t\tfprintf(stderr, \"db_create: %%s\\n\", db_strerror(ret));\n\ +\t\telse\n\ +\t\t\tdbenv->err(dbenv, ret, \"db_create\");\n\ +\t\treturn (1);\n\ +\t}\n\ +\tif (dbenv == NULL) {\n\ +\t\tdbp->set_errpfx(dbp, dp->name);\n\ +\t\tdbp->set_errfile(dbp, stderr);\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->dupsort && (ret = dbp->set_flags(dbp, DB_DUPSORT)) != 0) {\n\ +\t\tdbp->err(dbp, ret, \"DB->set_flags: DB_DUPSORT: %%s\", dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->recnum && (ret = dbp->set_flags(dbp, DB_RECNUM)) != 0) {\n\ +\t\tdbp->err(dbp, ret, \"DB->set_flags: DB_RECNUM: %%s\", dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->extentsize != 0 &&\n\ +\t (ret = dbp->set_q_extentsize(dbp, dp->extentsize)) != 0) {\n\ +\t\tdbp->err(dbp, ret,\n\ +\t\t \"DB->set_q_extentsize: %%lu: %%s\",\n\ +\t\t (u_long)dp->extentsize, dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->pagesize != 0 &&\n\ +\t (ret = dbp->set_pagesize(dbp, dp->pagesize)) != 0) {\n\ +\t\tdbp->err(dbp, ret,\n\ +\t\t \"DB->set_pagesize: %%lu: %%s\",\n\ +\t\t (u_long)dp->pagesize, dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->re_len != 0 &&\n\ +\t (ret = dbp->set_re_len(dbp, dp->re_len)) != 0) {\n\ +\t\tdbp->err(dbp, ret,\n\ +\t\t \"DB->set_re_len: %%lu: %%s\",\n\ +\t\t (u_long)dp->re_len, dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->key_compare != NULL &&\n\ +\t (ret = dbp->set_bt_compare(dbp, dp->key_compare)) != 0) {\n\ +\t\tdbp->err(dbp, ret, \"DB->set_bt_compare\");\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif ((ret = dbp->open(dbp, NULL, dp->name, NULL, dp->type,\n\ +\t (dp->transaction ? DB_AUTO_COMMIT : 0) |\n\ +\t DB_CREATE | DB_THREAD, 0)) != 0) {\n\ +\t\tdbp->err(dbp, ret, \"DB->open: %%s\", dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\tif (dp->primaryp != NULL &&\n\ +\t (ret = dbp->associate(*dp->primaryp,\n\ +\t NULL, dbp, dp->secondary_callback, DB_CREATE)) != 0) {\n\ +\t\tdbp->err(dbp, ret, \"DB->associate: %%s\", dp->name);\n\ +\t\tgoto err;\n\ +\t}\n"); + + fprintf(of, "\ +\n\ +\t*dp->dbpp = dbp;\n\ +\treturn (0);\n\ +\nerr:\t(void)dbp->close(dbp, 0);\n\ +\treturn (1);\n\ +}\n"); +} + +static void +api_c_callback(cur_db) + DB_OBJ *cur_db; +{ + fprintf(of, "\ +\n\ +static int\nbdb_%s_callback(DB *secondary, const DBT *key, const DBT *data , DBT *result)\n\ +{\n", cur_db->name); + + if (cur_db->custom) { + fprintf(of, "\ +\tsecondary->errx(secondary,\n\ +\t \"%s: missing callback comparison function\");\n\ +\treturn (DB_DONOTINDEX);\n\ +}\n", cur_db->name); + fprintf(stderr, + "Warning: you must write a comparison function for the %s database\n", + cur_db->name); + } else + fprintf(of, "\ +\tresult->data = &((u_int8_t *)data->data)[%d];\n\ +\tresult->size = %d;\n\ +\treturn (0);\n\ +}\n", cur_db->secondary_off, cur_db->secondary_len); +} + +static void +api_c_compare(cur_db) + DB_OBJ *cur_db; +{ + DB_OBJ *t_db; + ENV_OBJ *t_env; + + /* + * Check to see if we've already written this one. + * + * !!! + * N^2, but like I care. + */ + TAILQ_FOREACH(t_env, &env_tree, q) + TAILQ_FOREACH(t_db, &t_env->dbq, q) { + if (t_db == cur_db) + goto output; + if (t_db->key_type == NULL) + continue; + if (strcasecmp(t_db->key_type, cur_db->key_type) == 0) + return; + } + + /* NOTREACHED */ + return; + +output: fprintf(of, "\ +\n\ +static int bdb_%s_compare(DB *, const DBT *, const DBT *);\n\ +\n\ +static int\nbdb_%s_compare(DB *dbp, const DBT *a, const DBT *b)\n\ +{\n\ +\t%s ai, bi;\n\ +\n\ +\tmemcpy(&ai, a->data, sizeof(ai));\n\ +\tmemcpy(&bi, b->data, sizeof(bi));\n\ +\treturn (ai < bi ? -1 : (ai > bi ? 1 : 0));\n\ +}\n", cur_db->key_type, cur_db->key_type, cur_db->key_type); +} + +static void +api_c_shutdown() +{ + fprintf(of, "\ +\n\ +static int\nbdb_env_shutdown(env_list_t *ep)\n\ +{\n\ +\tDB_ENV *dbenv;\n\ +\tint ret;\n\ +\n\ +\tdbenv = ep->envpp == NULL ? NULL : *ep->envpp;\n\ +\tret = 0;\n\ +\n\ +\tif (dbenv != NULL && (ret = dbenv->close(dbenv, 0)) != 0)\n\ +\t\tfprintf(stderr,\n\ +\t\t \"DB_ENV->close: %%s: %%s\\n\", ep->home, db_strerror(ret));\n\ +\treturn (ret == 0 ? 0 : 1);\n\ +}\n"); + + fprintf(of, "\ +\n\ +static int\nbdb_db_shutdown(db_list_t *dp)\n\ +{\n\ +\tDB_ENV *dbenv;\n\ +\tDB *dbp;\n\ +\tint ret;\n\ +\n\ +\tdbenv = dp->envpp == NULL ? NULL : *dp->envpp;\n\ +\tdbp = *dp->dbpp;\n\ +\tret = 0;\n\ +\n\ +\t/*\n\ +\t * If the database is transactionally protected, close without writing;\n\ +\t * dirty pages; otherwise, flush dirty pages to disk.\n\ +\t */\n\ +\tif (dbp != NULL &&\n\ +\t (ret = dbp->close(dbp, dp->transaction ? DB_NOSYNC : 0)) != 0) {\n\ +\t\tif (dbenv == NULL)\n\ +\t\t\tfprintf(stderr,\n\ +\t\t\t \"DB->close: %%s: %%s\\n\", dp->name, db_strerror(ret));\n\ +\t\telse\n\ +\t\t\tdbenv->err(dbenv, ret, \"DB->close: %%s\", dp->name);\n\ +\t}\n\ +\treturn (ret == 0 ? 0 : 1);\n\ +}\n"); +} diff --git a/db/db_codegen/code_parse.c b/db/db_codegen/code_parse.c new file mode 100644 index 000000000..4cb0858a2 --- /dev/null +++ b/db/db_codegen/code_parse.c @@ -0,0 +1,338 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 2006,2007 Oracle. All rights reserved. + * + * $Id: code_parse.c,v 1.5 2007/05/17 15:14:58 bostic Exp $ + */ + +#include "db_codegen.h" + +static enum /* Parse state */ + { PS_UNSET, PS_ENV_SET, PS_DB_SET } parse_status; +static ENV_OBJ *cur_env; /* Current objects */ +static DB_OBJ *cur_db; + +static int parse_line __P((char *, int)); + +int +parse_input(fp) + FILE *fp; +{ + int lc; + char *p, *t, buf[256]; + + parse_status = PS_UNSET; + + for (lc = 1; fgets(buf, sizeof(buf), fp) != NULL; ++lc) { + if ((p = strchr(buf, '\n')) != NULL) + *p = '\0'; + else if (strlen(buf) + 1 == sizeof(buf)) { + fprintf(stderr, "%s: %d: line too long", progname, lc); + return (1); + } + + /* Skip leading whitespace. */ + for (p = buf; *p != '\0' && isspace((int)*p); ++p) + ; + + /* + * Any empty line or hash mark to the end of the line is + * a comment. + */ + if (*p == '\0' || *p == '#') + continue; + for (t = p; *t != '\0' && *t != '#'; ++t) + ; + *t = '\0'; + + if (parse_line(p, lc)) + return (1); + } + (void)fclose(fp); + + return (0); +} + +#undef CONFIG_SLOTS +#define CONFIG_SLOTS 10 + +#undef CONFIG_GET_UINT32 +#define CONFIG_GET_UINT32(s, vp) do { \ + if (__db_getulong(NULL, progname, s, 0, UINT32_MAX, vp) != 0) \ + return (EINVAL); \ +} while (0) + +static int +parse_line(s, lc) + char *s; + int lc; +{ + u_long uv; + int nf; + char *argv[CONFIG_SLOTS], *p; + + nf = __config_split(s, argv); /* Split the line by white-space. */ + + /* + * Environment keywords. + */ + if (strcasecmp(argv[0], "environment") == 0) { + if (nf != 3 || + strcmp(argv[2], "{") != 0 || parse_status != PS_UNSET) + goto format; + + if (__os_calloc(NULL, 1, sizeof(*cur_env), &cur_env) || + __os_strdup(NULL, argv[1], &cur_env->prefix)) + goto memory; + TAILQ_INIT(&cur_env->dbq); + + TAILQ_INSERT_TAIL(&env_tree, cur_env, q); + + /* + * Default settings. + */ + cur_env->home = "."; + + parse_status = PS_ENV_SET; + return (0); + } + if (strcasecmp(argv[0], "home") == 0) { + if (nf != 2 || parse_status != PS_ENV_SET) + goto format; + if (__os_strdup(NULL, argv[1], &cur_env->home)) + goto memory; + return (0); + } + if (strcasecmp(argv[0], "cachesize") == 0) { + if (nf != 4 || parse_status != PS_ENV_SET) + goto format; + CONFIG_GET_UINT32(argv[1], &uv); + cur_env->gbytes = uv; + CONFIG_GET_UINT32(argv[1], &uv); + cur_env->bytes = uv; + CONFIG_GET_UINT32(argv[1], &uv); + cur_env->ncache = uv; + return (0); + } + if (strcasecmp(argv[0], "private") == 0) { + if (nf != 1 || parse_status != PS_ENV_SET) + goto format; + cur_env->private = 1; + return (0); + } + + /* + * Database keywords. + */ + if (strcasecmp(argv[0], "database") == 0) { + if (nf != 3 || + strcmp(argv[2], "{") != 0 || parse_status == PS_DB_SET) + goto format; + + /* + * Databases can be specified standalone. If we don't have an + * environment, create a fake one to hold the information. + */ + if (parse_status == PS_UNSET) { + if (__os_calloc(NULL, 1, sizeof(*cur_env), &cur_env)) + goto memory; + TAILQ_INIT(&cur_env->dbq); + cur_env->standalone = 1; + + TAILQ_INSERT_TAIL(&env_tree, cur_env, q); + } + + if (__os_calloc(NULL, 1, sizeof(*cur_db), &cur_db) || + __os_strdup(NULL, argv[1], &cur_db->name)) + goto memory; + TAILQ_INSERT_TAIL(&cur_env->dbq, cur_db, q); + + /* + * Default settings. + */ + cur_db->dbtype = "DB_BTREE"; + + parse_status = PS_DB_SET; + return (0); + } + if (strcasecmp(argv[0], "custom") == 0) { + if (nf != 1 || parse_status != PS_DB_SET) + goto format; + cur_db->custom = 1; + return (0); + } + if (strcasecmp(argv[0], "dupsort") == 0) { + if (nf != 1 || parse_status != PS_DB_SET) + goto format; + cur_db->dupsort = 1; + return (0); + } + if (strcasecmp(argv[0], "extentsize") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + CONFIG_GET_UINT32(argv[1], &uv); + cur_db->extentsize = uv; + return (0); + } + if (strcasecmp(argv[0], "key_type") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + if (__os_strdup(NULL, argv[1], &cur_db->key_type)) + goto memory; + return (0); + } + if (strcasecmp(argv[0], "pagesize") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + CONFIG_GET_UINT32(argv[1], &uv); + cur_db->pagesize = uv; + return (0); + } + if (strcasecmp(argv[0], "primary") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + if (__os_strdup(NULL, argv[1], &cur_db->primary)) + goto memory; + return (0); + } + if (strcasecmp(argv[0], "recnum") == 0) { + if (nf != 1 || parse_status != PS_DB_SET) + goto format; + cur_db->recnum = 1; + return (0); + } + if (strcasecmp(argv[0], "re_len") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + CONFIG_GET_UINT32(argv[1], &uv); + cur_db->re_len = uv; + return (0); + } + if (strcasecmp(argv[0], "secondary_offset") == 0) { + if (nf != 3 || parse_status != PS_DB_SET) + goto format; + CONFIG_GET_UINT32(argv[1], &uv); + cur_db->secondary_off = uv; + CONFIG_GET_UINT32(argv[2], &uv); + cur_db->secondary_len = uv; + return (0); + } + if (strcasecmp(argv[0], "transaction") == 0) { + if (nf != 1 || parse_status != PS_DB_SET) + goto format; + cur_env->transaction = cur_db->transaction = 1; + return (0); + } + if (strcasecmp(argv[0], "type") == 0) { + if (nf != 2 || parse_status != PS_DB_SET) + goto format; + if (strcasecmp(argv[1], "btree") == 0) + p = "DB_BTREE"; + else if (strcasecmp(argv[1], "hash") == 0) + p = "DB_HASH"; + else if (strcasecmp(argv[1], "queue") == 0) + p = "DB_QUEUE"; + else if (strcasecmp(argv[1], "recno") == 0) + p = "DB_RECNO"; + else + goto format; + if (__os_strdup(NULL, p, &cur_db->dbtype)) + goto memory; + return (0); + } + + /* + * End block. + */ + if (strcmp(argv[0], "}") == 0) { + if (nf != 1) + goto format; + /* + * Pop up a level -- if we finished a database that's part of + * an environment, go back to the environment level; if we + * finished a standalone database or an environment, go back to + * unset. + */ + switch (parse_status) { + case PS_UNSET: + goto format; + case PS_DB_SET: + parse_status = + cur_env->standalone ? PS_UNSET : PS_ENV_SET; + break; + case PS_ENV_SET: + parse_status = PS_UNSET; + } + return (0); + } + +format: fprintf(stderr, + "%s: line %d: %s: invalid input\n", progname, lc, s); + return (1); + +memory: fprintf(stderr, "%s: %s\n", progname, db_strerror(errno)); + return (1); +} + +#ifdef DEBUG +int +parse_dump() +{ + TAILQ_FOREACH(cur_env, &env_tree, q) { + printf("environment: %s\n", + cur_env->standalone ? "standalone" : cur_env->prefix); + + if (cur_env->home != NULL) + printf("\thome: %s\n", cur_env->home); + if (cur_env->gbytes != 0 || cur_env->bytes != 0) + printf("\tcachesize: %luGB, %luB, %lu\n", + (u_long)cur_env->gbytes, + (u_long)cur_env->bytes, + (u_long)cur_env->ncache); + + if (cur_env->private) + printf("\tprivate: yes\n"); + if (cur_env->transaction) + printf("\ttransaction: yes\n"); + + TAILQ_FOREACH(cur_db, &cur_env->dbq, q) { + printf("\tdatabase: %s\n", cur_db->name); + printf("\t\tdbtype: %s\n", cur_db->dbtype); + + if (cur_db->extentsize) + printf("\t\textentsize: %lu\n", + (u_long)cur_db->extentsize); + if (cur_db->pagesize) + printf("\t\tpagesize: %lu\n", + (u_long)cur_db->pagesize); + if (cur_db->re_len) + printf("\t\tre_len: %lu\n", + (u_long)cur_db->re_len); + + if (cur_db->key_type != NULL) + printf("\t\tkey_type: %s\n", + cur_db->key_type); + + if (cur_db->primary != NULL) + printf("\t\tprimary: %s\n", + cur_db->primary); + if (cur_db->custom) + printf("\t\tcustom: yes\n"); + if (cur_db->secondary_off) + printf("\t\tsecondary_offset: %lu/%lu\n", + (u_long)cur_db->secondary_off, + (u_long)cur_db->secondary_len); + + if (cur_db->dupsort) + printf("\t\tdupsort: yes\n"); + if (cur_db->recnum) + printf("\t\trecnum: yes\n"); + if (cur_db->transaction) + printf("\t\ttransaction: yes\n"); + } + } + + return (0); +} +#endif diff --git a/db/db_codegen/db_codegen.c b/db/db_codegen/db_codegen.c new file mode 100644 index 000000000..9d49c7864 --- /dev/null +++ b/db/db_codegen/db_codegen.c @@ -0,0 +1,116 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_codegen.c,v 1.2 2007/05/17 15:14:58 bostic Exp $ + */ + +#include "db_codegen.h" + +#ifndef lint +static const char copyright[] = + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; +#endif + +static int usage __P((void)); + +int main __P((int, char *[])); + +const char *progname; +struct __head_env env_tree; + +int +main(argc, argv) + int argc; + char *argv[]; +{ + extern char *optarg; + extern int optind; + enum { C, CXX, JAVA } api; + int ch, verbose; + char *ofname; + + TAILQ_INIT(&env_tree); + + if ((progname = __db_rpath(argv[0])) == NULL) + progname = argv[0]; + else + ++progname; + + api = C; + ofname = NULL; + verbose = 0; + + while ((ch = getopt(argc, argv, "a:i:o:Vv")) != EOF) + switch (ch) { + case 'a': + if (strcasecmp(optarg, "c") == 0) { + api = C; + } + else if ( + strcasecmp(optarg, "c++") == 0 || + strcasecmp(optarg, "cxx") == 0) + api = CXX; + else if (strcasecmp(optarg, "java") == 0) + api = JAVA; + else + return (usage()); + break; + case 'i': + if (freopen(optarg, "r", stdin) == NULL) { + fprintf(stderr, "%s: %s: %s\n", + progname, optarg, strerror(errno)); + return (EXIT_FAILURE); + } + break; + case 'o': + ofname = optarg; + break; + case 'V': + printf("%s\n", db_version(NULL, NULL, NULL)); + return (EXIT_SUCCESS); + case 'v': + verbose = 1; + break; + case '?': + default: + return (usage()); + } + argc -= optind; + argv += optind; + + if (argc != 0) + return (usage()); + + if (parse_input(stdin)) + return (EXIT_FAILURE); + +#ifdef DEBUG + if (verbose && parse_dump()) + return (EXIT_FAILURE); +#endif + + if (TAILQ_FIRST(&env_tree) != NULL) + switch (api) { + case C: + if (api_c(ofname)) + return (EXIT_FAILURE); + break; + case CXX: + case JAVA: + fprintf(stderr, + "C++ and Java APIs not yet supported\n"); + return (EXIT_FAILURE); + } + + return (EXIT_SUCCESS); +} + +static int +usage() +{ + (void)fprintf(stderr, + "usage: %s [-Vv] [-a c] [-i input] [-o output]\n", progname); + return (EXIT_FAILURE); +} diff --git a/db/db_codegen/db_codegen.h b/db/db_codegen/db_codegen.h new file mode 100644 index 000000000..1e6d29c7e --- /dev/null +++ b/db/db_codegen/db_codegen.h @@ -0,0 +1,59 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1996,2007 Oracle. All rights reserved. + * + * $Id: db_codegen.h,v 1.4 2007/05/17 15:14:58 bostic Exp $ + */ +#include "db_config.h" + +#include "db_int.h" + +typedef struct __db_obj { + char *name; /* Database name */ + char *dbtype; /* Database type */ + + u_int32_t extentsize; /* Queue: extent size */ + u_int32_t pagesize; /* Pagesize */ + u_int32_t re_len; /* Queue/Recno: record length */ + + char *key_type; /* Key type */ + int custom; /* Custom key comparison. */ + + char *primary; /* Secondary: primary's name */ + u_int32_t secondary_len; /* secondary: length */ + u_int32_t secondary_off; /* secondary: 0-based byte offset */ + + int dupsort; /* Sorted duplicates */ + int recnum; /* Btree: record numbers */ + int transaction; /* Database is transactional */ + + TAILQ_ENTRY(__db_obj) q; /* List of databases */ +} DB_OBJ; + +typedef struct __env_obj { + char *prefix; /* Name prefix */ + char *home; /* Environment home */ + + u_int32_t gbytes; /* GB, B of cache */ + u_int32_t bytes; + u_int32_t ncache; /* Number of caches */ + + int private; /* Private environment */ + int standalone; /* Standalone database */ + int transaction; /* Database is transactional */ + + TAILQ_ENTRY(__env_obj) q; /* List of environments, databases */ + TAILQ_HEAD(__head_db, __db_obj) dbq; +} ENV_OBJ; + +TAILQ_HEAD(__head_env, __env_obj); /* List of environments */ +extern struct __head_env env_tree; + +extern const char *progname; /* Program name */ + +int api_c __P((char *)); +#ifdef DEBUG +int parse_dump __P((void)); +#endif +int parse_input __P((FILE *)); diff --git a/db/db_codegen/example1 b/db/db_codegen/example1 new file mode 100644 index 000000000..07b0b110e --- /dev/null +++ b/db/db_codegen/example1 @@ -0,0 +1,16 @@ +# Two database environments, each with a single Btree database. +environment env1 { + home TESTDIR1 + database db1 { + type btree + pagesize 8192 + } +} + +environment env2 { + home TESTDIR2 + database db1 { + type btree + pagesize 8192 + } +} diff --git a/db/db_codegen/example2 b/db/db_codegen/example2 new file mode 100644 index 000000000..05ef224ea --- /dev/null +++ b/db/db_codegen/example2 @@ -0,0 +1,27 @@ +# A single private environment, with four databases of different types. +environment env1 { + database db1 { + type btree + recnum + transaction + pagesize 65536 + } + database db2 { + type hash + transaction + pagesize 32768 + } + database db3 { + type queue + transaction + pagesize 16384 + } + database db4 { + type recno + transaction + pagesize 8192 + } + + private + home TESTDIR +} diff --git a/db/db_codegen/example3 b/db/db_codegen/example3 new file mode 100644 index 000000000..35ea51b20 --- /dev/null +++ b/db/db_codegen/example3 @@ -0,0 +1,25 @@ +# A single private environment, with two databases, a primary and secondary +# index pair. +environment env1 { + home TESTDIR + cachesize 2 0 4 # 2GB, 4 caches + + database db1 { # Primary database. + type btree + + transaction + pagesize 65536 + } + database db2 { + type hash + + # The secondary is a hash database, the primary is "db1". + # The secondary key is 10 bytes starting at byte offset + # 20. The secondary key is an untyped byte string. + primary db1 + secondary_offset 20 10 + + transaction + pagesize 32768 + } +} diff --git a/db/db_codegen/example4 b/db/db_codegen/example4 new file mode 100644 index 000000000..dfa6c268c --- /dev/null +++ b/db/db_codegen/example4 @@ -0,0 +1,26 @@ +# A single private environment, with two databases, a primary and secondary +# index pair. +environment env1 { + home TESTDIR + cachesize 2 0 4 # 2GB, 4 caches + + database db1 { # Primary database. + type btree + + transaction + pagesize 32768 + } + database db2 { + type btree + + # The secondary is a btree database, the primary is "db1". + # The secondary key is a 4-byte unsigned int, starting at + # byte offset 10. + primary db1 + key_type u_int32_t + secondary_offset 10 4 + + transaction + pagesize 32768 + } +} diff --git a/db/db_deadlock/db_deadlock.c b/db/db_deadlock/db_deadlock.c index 4e82bfef5..4d412b659 100644 --- a/db/db_deadlock/db_deadlock.c +++ b/db/db_deadlock/db_deadlock.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_deadlock.c,v 12.13 2006/08/26 09:23:00 bostic Exp $ + * $Id: db_deadlock.c,v 12.18 2007/05/17 17:17:42 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int main __P((int, char *[])); @@ -33,10 +32,10 @@ main(argc, argv) u_int32_t atype; time_t now; u_long secs, usecs; - int ch, exitval, ret, verbose; + int rejected, ch, exitval, ret, verbose; char *home, *logfile, *passwd, *str, time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -170,10 +169,13 @@ main(argc, argv) "running at %.24s", __db_ctime(&now, time_buf)); } - if ((ret = dbenv->lock_detect(dbenv, 0, atype, NULL)) != 0) { + if ((ret = + dbenv->lock_detect(dbenv, 0, atype, &rejected)) != 0) { dbenv->err(dbenv, ret, "DB_ENV->lock_detect"); goto shutdown; } + if (verbose) + dbenv->errx(dbenv, "rejected %d locks", rejected); /* Make a pass every "secs" secs and "usecs" usecs. */ if (secs == 0 && usecs == 0) diff --git a/db/db_dump/db_dump.c b/db/db_dump/db_dump.c index 9202e53c7..9e5f1f438 100644 --- a/db/db_dump/db_dump.c +++ b/db/db_dump/db_dump.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_dump.c,v 12.9 2006/08/26 09:23:01 bostic Exp $ + * $Id: db_dump.c,v 12.15 2007/05/17 15:14:59 bostic Exp $ */ #include "db_config.h" @@ -15,12 +14,11 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int db_init __P((DB_ENV *, char *, int, u_int32_t, int *)); int dump_sub __P((DB_ENV *, DB *, char *, int, int)); -int is_sub __P((DB *, int *)); int main __P((int, char *[])); int show_subs __P((DB *)); int usage __P((void)); @@ -40,10 +38,10 @@ main(argc, argv) u_int32_t cache; int ch; int exitval, keyflag, lflag, nflag, pflag, private; - int ret, Rflag, rflag, resize, subs; + int ret, Rflag, rflag, resize; char *dopt, *home, *passwd, *subname; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -225,20 +223,16 @@ retry: if ((ret = db_env_create(&dbenv, 0)) != 0) { goto err; } } else if (lflag) { - if (is_sub(dbp, &subs)) - goto err; - if (subs == 0) { + if (dbp->get_multiple(dbp)) { + if (show_subs(dbp)) + goto err; + } else { dbp->errx(dbp, "%s: does not contain multiple databases", argv[0]); goto err; } - if (show_subs(dbp)) - goto err; } else { - subs = 0; - if (subname == NULL && is_sub(dbp, &subs)) - goto err; - if (subs) { + if (subname == NULL && dbp->get_multiple(dbp)) { if (dump_sub(dbenv, dbp, argv[0], pflag, keyflag)) goto err; } else @@ -329,47 +323,6 @@ err: dbenv->err(dbenv, ret, "DB_ENV->open"); return (1); } -/* - * is_sub -- - * Return if the database contains subdatabases. - */ -int -is_sub(dbp, yesno) - DB *dbp; - int *yesno; -{ - DB_BTREE_STAT *btsp; - DB_HASH_STAT *hsp; - int ret; - - switch (dbp->type) { - case DB_BTREE: - case DB_RECNO: - if ((ret = dbp->stat(dbp, NULL, &btsp, DB_FAST_STAT)) != 0) { - dbp->err(dbp, ret, "DB->stat"); - return (ret); - } - *yesno = btsp->bt_metaflags & BTM_SUBDB ? 1 : 0; - free(btsp); - break; - case DB_HASH: - if ((ret = dbp->stat(dbp, NULL, &hsp, DB_FAST_STAT)) != 0) { - dbp->err(dbp, ret, "DB->stat"); - return (ret); - } - *yesno = hsp->hash_metaflags & DB_HASH_SUBDB ? 1 : 0; - free(hsp); - break; - case DB_QUEUE: - break; - case DB_UNKNOWN: - default: - dbp->errx(dbp, "unknown database type"); - return (1); - } - return (0); -} - /* * dump_sub -- * Dump out the records for a DB containing subdatabases. @@ -398,7 +351,8 @@ dump_sub(dbenv, parent_dbp, parent_name, pflag, keyflag) memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = dbcp->get(dbcp, &key, &data, + DB_IGNORE_LEASE | DB_NEXT)) == 0) { /* Nul terminate the subdatabase name. */ if ((subdb = malloc(key.size + 1)) == NULL) { dbenv->err(dbenv, ENOMEM, NULL); @@ -430,7 +384,7 @@ dump_sub(dbenv, parent_dbp, parent_name, pflag, keyflag) return (1); } - if ((ret = dbcp->c_close(dbcp)) != 0) { + if ((ret = dbcp->close(dbcp)) != 0) { parent_dbp->err(parent_dbp, ret, "DBcursor->close"); return (1); } @@ -461,7 +415,8 @@ show_subs(dbp) memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); - while ((ret = dbcp->c_get(dbcp, &key, &data, DB_NEXT)) == 0) { + while ((ret = dbcp->get(dbcp, &key, &data, + DB_IGNORE_LEASE | DB_NEXT)) == 0) { if ((ret = dbp->dbenv->prdbt( &key, 1, NULL, stdout, __db_pr_callback, 0)) != 0) { dbp->errx(dbp, NULL); @@ -473,7 +428,7 @@ show_subs(dbp) return (1); } - if ((ret = dbcp->c_close(dbcp)) != 0) { + if ((ret = dbcp->close(dbcp)) != 0) { dbp->err(dbp, ret, "DBcursor->close"); return (1); } diff --git a/db/db_dump185/db_dump185.c b/db/db_dump185/db_dump185.c index 14968a3dd..c1851681d 100644 --- a/db/db_dump185/db_dump185.c +++ b/db/db_dump185/db_dump185.c @@ -1,15 +1,14 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_dump185.c,v 12.4 2006/08/26 09:23:04 bostic Exp $ + * $Id: db_dump185.c,v 12.6 2007/05/17 15:15:00 bostic Exp $ */ #ifndef lint -static char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; +static const char copyright[] = + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif #include diff --git a/db/db_hotbackup/db_hotbackup.c b/db/db_hotbackup/db_hotbackup.c index 6bafd3659..e04fbdde0 100644 --- a/db/db_hotbackup/db_hotbackup.c +++ b/db/db_hotbackup/db_hotbackup.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_hotbackup.c,v 1.30 2006/08/26 09:23:07 bostic Exp $ + * $Id: db_hotbackup.c,v 1.51 2007/05/17 15:15:01 bostic Exp $ */ #include "db_config.h" @@ -16,18 +15,18 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif enum which_open { OPEN_ORIGINAL, OPEN_HOT_BACKUP }; -int backup_dir_clean __P((DB_ENV *, char *, int *, int, int)); -int data_copy __P((DB_ENV *, const char *, const char *, const char *, int)); +int backup_dir_clean __P((DB_ENV *, char *, char *, int *, int, int)); +int data_copy __P((DB_ENV *, char *, char *, char *, int)); int env_init __P((DB_ENV **, - char *, const char **, const char ***, char *, enum which_open)); + char *, char **, char ***, char *, enum which_open)); int main __P((int, char *[])); -int read_data_dir __P((DB_ENV *, char *, char *, const char *, int, int)); -int read_log_dir __P((DB_ENV *, char *, char *, const char *, int *, int, int)); +int read_data_dir __P((DB_ENV *, char *, char *, char *, int, int)); +int read_log_dir __P((DB_ENV *, char *, char *, char *, int *, int, int)); int usage __P((void)); int version_check __P((void)); @@ -45,11 +44,22 @@ main(argc, argv) u_int data_cnt, data_next; int ch, checkpoint, copy_min, db_config, exitval; int remove_max, ret, update, verbose; - char *backup_dir, **data_dir, *home, *passwd; - const char **ddir, **dir, *log_dir; + char *backup_dir, **data_dir, **dir, *home, *log_dir, *passwd; char home_buf[DB_MAXPATHLEN], time_buf[CTIME_BUFLEN]; - if ((progname = strrchr(argv[0], '/')) == NULL) + /* + * Make sure all verbose message are output before any error messages + * in the case where the output is being logged into a file. This + * call has to be done before any operation is performed on the stream. + * + * Use unbuffered I/O because line-buffered I/O requires a buffer, and + * some operating systems have buffer alignment and size constraints we + * don't want to care about. There isn't enough output for the calls + * to matter. + */ + setbuf(stdout, NULL); + + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -124,6 +134,20 @@ main(argc, argv) if (argc != 0) return (usage()); + /* NULL-terminate any list of data directories. */ + if (data_dir != NULL) { + data_dir[data_next] = NULL; + /* + * -d is relative to the current directory, to run a checkpoint + * we must have directories relative to the environment. + */ + if (checkpoint == 1) { + fprintf(stderr, + "%s: cannot specify -d and -c\n", progname); + return (usage()); + } + } + if (db_config && (data_dir != NULL || log_dir != NULL)) { fprintf(stderr, "%s: cannot specify -D and -d or -l\n", progname); @@ -164,29 +188,19 @@ main(argc, argv) return (usage()); } - /* NULL-terminate any list of data directories. */ - if (data_dir != NULL) - data_dir[data_next] = NULL; - if (verbose) { (void)time(&now); printf("%s: hot backup started at %s", progname, __db_ctime(&now, time_buf)); } - ddir = NULL; /* Open the source environment. */ - if ((ret = env_init(&dbenv, home, + if (env_init(&dbenv, home, (db_config || log_dir != NULL) ? &log_dir : NULL, - db_config ? &ddir : NULL, passwd, OPEN_ORIGINAL)) != 0) + db_config ? &data_dir : NULL, + passwd, OPEN_ORIGINAL) != 0) goto shutdown; - if (!db_config) - ddir = (const char **)data_dir; - - if (log_dir == NULL) - log_dir = home; - if (db_config && __os_abspath(log_dir)) { fprintf(stderr, "%s: DB_CONFIG must not contain an absolute path for the log directory", @@ -227,13 +241,20 @@ main(argc, argv) (void)__os_mkdir(NULL, backup_dir, __db_omode("rwx------")); /* - * If the target directory for the backup does exist and the -u option - * was specified, all log files in the target directory are removed; - * if the -u option was not specified, all files in the target directory - * are removed. + * If -u was specified, remove all log files; if -u was not specified, + * remove all files. + * + * Potentially there are two directories to clean, the log directory + * and the target directory. First, clean up the log directory if + * it's different from the target directory, then clean up the target + * directory. */ - if ((ret = backup_dir_clean( - dbenv, backup_dir, &remove_max, update, verbose)) != 0) + if (db_config && log_dir != NULL && + backup_dir_clean( + dbenv, backup_dir, log_dir, &remove_max, update, verbose) != 0) + goto shutdown; + if (backup_dir_clean(dbenv, + backup_dir, NULL, &remove_max, update, verbose) != 0) goto shutdown; /* @@ -245,9 +266,14 @@ main(argc, argv) if (read_data_dir(dbenv, home, backup_dir, home, verbose, db_config) != 0) goto shutdown; - if (ddir != NULL) - for (dir = &ddir[0]; *dir != NULL; ++dir) { - if (__os_abspath(*dir)) { + if (data_dir != NULL) + for (dir = data_dir; *dir != NULL; ++dir) { + /* + * Don't allow absolute path names taken from + * the DB_CONFIG file -- running recovery with + * them would corrupt the source files. + */ + if (db_config && __os_abspath(*dir)) { fprintf(stderr, "%s: data directory '%s' is absolute path, not permitted with -D option\n", progname, *dir); @@ -266,8 +292,8 @@ main(argc, argv) * * The log directory defaults to the home directory. */ - if (read_log_dir(dbenv, db_config ? home : NULL, - backup_dir, log_dir, ©_min, update, verbose) != 0) + if (read_log_dir(dbenv, db_config ? home : NULL, backup_dir, + log_dir == NULL ? home : log_dir, ©_min, update, verbose) != 0) goto shutdown; /* @@ -298,8 +324,8 @@ main(argc, argv) if (verbose) printf("%s: %s: run catastrophic recovery\n", progname, backup_dir); - if ((ret = env_init( - &dbenv, backup_dir, NULL, NULL, passwd, OPEN_HOT_BACKUP)) != 0) + if (env_init( + &dbenv, backup_dir, NULL, NULL, passwd, OPEN_HOT_BACKUP) != 0) goto shutdown; /* @@ -323,11 +349,6 @@ shutdown: exitval = 1; "%s: dbenv->close: %s\n", progname, db_strerror(ret)); } - if (data_dir != NULL) - free(data_dir); - if (passwd != NULL) - free(passwd); - if (exitval == 0) { if (verbose) { (void)time(&now); @@ -350,11 +371,9 @@ shutdown: exitval = 1; * Open a database environment. */ int -env_init(dbenvp, home, log_dir, data_dir, passwd, which) +env_init(dbenvp, home, log_dirp, data_dirp, passwd, which) DB_ENV **dbenvp; - char *home; - const char **log_dir, ***data_dir; - char *passwd; + char *home, **log_dirp, ***data_dirp, *passwd; enum which_open which; { DB_ENV *dbenv; @@ -374,15 +393,14 @@ env_init(dbenvp, home, log_dir, data_dir, passwd, which) dbenv->set_errfile(dbenv, stderr); setbuf(stderr, NULL); dbenv->set_errpfx(dbenv, progname); - (void)setvbuf(stdout, NULL, _IOLBF, 0); /* * If a log directory has been specified, and it's not the same as the * home directory, set it for the environment. */ - if (log_dir != NULL && *log_dir != NULL && *log_dir != home && - (ret = dbenv->set_lg_dir(dbenv, *log_dir)) != 0) { - dbenv->err(dbenv, ret, "DB_ENV->set_lg_dir: %s", log_dir); + if (log_dirp != NULL && *log_dirp != NULL && + (ret = dbenv->set_lg_dir(dbenv, *log_dirp)) != 0) { + dbenv->err(dbenv, ret, "DB_ENV->set_lg_dir: %s", *log_dirp); return (1); } @@ -408,19 +426,25 @@ env_init(dbenvp, home, log_dir, data_dir, passwd, which) dbenv->err(dbenv, ret, "DB_ENV->open: %s", home); return (1); } - if (log_dir != NULL && *log_dir == NULL) { - (void)dbenv->get_lg_dir(dbenv, log_dir); - if (*log_dir == NULL) - *log_dir = home; - } - if (data_dir != NULL && *data_dir == NULL) - (void)dbenv->get_data_dirs(dbenv, data_dir); + if (log_dirp != NULL && *log_dirp == NULL) + (void)dbenv->get_lg_dir(dbenv, (const char **)log_dirp); + if (data_dirp != NULL && *data_dirp == NULL) + (void)dbenv->get_data_dirs( + dbenv, (const char ***)data_dirp); break; case OPEN_HOT_BACKUP: /* * Opening the backup copy of the database environment. We * better be the only user, we're running recovery. + * Ensure that there at least minimal cache for worst + * case page size. */ + if ((ret = + dbenv->set_cachesize(dbenv, 0, 64 * 1024 * 10, 0)) != 0) { + dbenv->err(dbenv, + ret, "DB_ENV->set_cachesize: %s", home); + return (1); + } if ((ret = dbenv->open(dbenv, home, DB_CREATE | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN | DB_PRIVATE | DB_RECOVER_FATAL | DB_USE_ENVIRON, 0)) != 0) { @@ -439,22 +463,36 @@ env_init(dbenvp, home, log_dir, data_dir, passwd, which) * Clean out the backup directory. */ int -backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) +backup_dir_clean(dbenv, backup_dir, log_dir, remove_maxp, update, verbose) DB_ENV *dbenv; - char *backup_dir; + char *backup_dir, *log_dir; int *remove_maxp, update, verbose; { int cnt, fcnt, ret, v; - char **names, buf[DB_MAXPATHLEN]; + char **names, *dir, buf[DB_MAXPATHLEN], path[DB_MAXPATHLEN]; + + /* We may be cleaning a log directory separate from the target. */ + if (log_dir != NULL) { + if ((size_t)snprintf(buf, sizeof(buf), "%s%c%s", + backup_dir, PATH_SEPARATOR[0] ,log_dir) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0] ,log_dir); + return (1); + } + dir = buf; + } else + dir = backup_dir; /* Get a list of file names. */ - if ((ret = __os_dirlist(dbenv, backup_dir, &names, &fcnt)) != 0) { - dbenv->err(dbenv, ret, "%s: directory read", backup_dir); + if ((ret = __os_dirlist(dbenv, dir, &names, &fcnt)) != 0) { + if (log_dir != NULL && !update) + return (0); + dbenv->err(dbenv, ret, "%s: directory read", dir); return (1); } for (cnt = fcnt; --cnt >= 0;) { /* - * Skip log files (if update wasn't specified). + * Skip non-log files (if update was specified). */ if (strncmp(names[cnt], LFPREFIX, sizeof(LFPREFIX) - 1)) { if (update) @@ -465,18 +503,16 @@ backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) if (*remove_maxp < v) *remove_maxp = v; } - if ((size_t)snprintf(buf, sizeof(buf), - "%s/%s", backup_dir, names[cnt]) >= sizeof(buf)) { - dbenv->err(dbenv, ret, - "%s/%s: path too long", backup_dir, names[cnt]); + if ((size_t)snprintf(path, sizeof(path), "%s%c%s", + dir, PATH_SEPARATOR[0], names[cnt]) >= sizeof(path)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + dir, PATH_SEPARATOR[0], names[cnt]); return (1); } if (verbose) - printf("%s: removing %s\n", progname, buf); - if ((ret = remove(buf)) != 0) { - dbenv->err(dbenv, ret, "%s: remove", buf); + printf("%s: removing %s\n", progname, path); + if (__os_unlink(dbenv, path) != 0) return (1); - } } __os_dirfree(dbenv, names, fcnt); @@ -495,8 +531,7 @@ backup_dir_clean(dbenv, backup_dir, remove_maxp, update, verbose) int read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) DB_ENV *dbenv; - char *home, *backup_dir; - const char *dir; + char *home, *backup_dir, *dir; int verbose, db_config; { int cnt, fcnt, ret; @@ -506,10 +541,11 @@ read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) bd = backup_dir; if (db_config && dir != home) { /* Build a path name to the destination. */ - if ((size_t)(cnt = snprintf(bbuf, sizeof(bbuf), - "%s/%s/", backup_dir, dir)) >= sizeof(buf)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backup_dir, dir); + if ((size_t)(cnt = snprintf(bbuf, sizeof(bbuf), "%s%c%s%c", + backup_dir, PATH_SEPARATOR[0], + dir, PATH_SEPARATOR[0])) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0], dir); return (1); } bd = bbuf; @@ -522,13 +558,13 @@ read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) return (1); } /* step on the trailing '/' */ - bd[cnt] = '\0'; + bd[cnt - 1] = '\0'; /* Build a path name to the source. */ if ((size_t)snprintf(buf, sizeof(buf), - "%s/%s", home, dir) >= sizeof(buf)) { - dbenv->errx(dbenv, - "%s/%s: path too long", home, dir); + "%s%c%s", home, PATH_SEPARATOR[0], dir) >= sizeof(buf)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + home, PATH_SEPARATOR[0], dir); return (1); } dir = buf; @@ -559,8 +595,7 @@ read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) continue; /* Copy the file. */ - if ((ret = data_copy( - dbenv, names[cnt], dir, bd, verbose)) != 0) + if (data_copy(dbenv, names[cnt], dir, bd, verbose) != 0) return (1); } @@ -578,42 +613,43 @@ read_data_dir(dbenv, home, backup_dir, dir, verbose, db_config) int read_log_dir(dbenv, home, backup_dir, log_dir, copy_minp, update, verbose) DB_ENV *dbenv; - char *home, *backup_dir; - const char *log_dir; + char *home, *backup_dir, *log_dir; int *copy_minp, update, verbose; { u_int32_t aflag; int cnt, ret, v; - char **begin, **names, *backupd; - const char *logd; + char **begin, **names, *backupd, *logd; char from[DB_MAXPATHLEN], to[DB_MAXPATHLEN]; - logd = log_dir; - backupd = backup_dir; - if (home != NULL && log_dir != home) { - if ((size_t)snprintf(from, sizeof(from), - "%s/%s", home, log_dir) >= sizeof(from)) { - dbenv->errx(dbenv, - "%s/%s: path too long", home, log_dir); + if (home != NULL && log_dir != NULL) { + if ((size_t)snprintf(from, sizeof(from), "%s%c%s", + home, PATH_SEPARATOR[0], log_dir) >= sizeof(from)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + home, PATH_SEPARATOR[0], log_dir); return (1); } logd = strdup(from); if ((size_t)(cnt = snprintf(to, sizeof(to), - "%s/%s/", backup_dir, log_dir)) >= sizeof(to)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backup_dir, log_dir); + "%s%c%s%c", backup_dir, PATH_SEPARATOR[0], + log_dir, PATH_SEPARATOR[0])) >= sizeof(to)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backup_dir, PATH_SEPARATOR[0], log_dir); return (1); } backupd = strdup(to); - /* Create the path. */ + + /* Create the backup log directory. */ if ((ret = dbenv->set_intermediate_dir( dbenv, __db_omode("rwx------"), 0)) != 0 || (ret = __db_mkpath(dbenv, backupd)) != 0) { dbenv->err(dbenv, ret, "%s: cannot create", backupd); return (1); } - /* step on the trailing '/' */ - backupd[cnt] = '\0'; + /* Step on the trailing '/'. */ + backupd[cnt - 1] = '\0'; + } else { + backupd = backup_dir; + logd = log_dir; } again: aflag = DB_ARCH_LOG; @@ -626,7 +662,7 @@ again: aflag = DB_ARCH_LOG; aflag = 0; /* Get a list of file names to be copied. */ if ((ret = dbenv->log_archive(dbenv, &names, aflag)) != 0) { - dbenv->err(dbenv, ret, "%s: log_archive", log_dir); + dbenv->err(dbenv, ret, "DB_ENV->log_archive"); return (1); } if (names == NULL) @@ -638,10 +674,10 @@ again: aflag = DB_ARCH_LOG; if (*copy_minp == 0 || *copy_minp > v) *copy_minp = v; - if ((size_t)snprintf(from, sizeof(from), - "%s/%s", logd, *names) >= sizeof(from)) { - dbenv->errx(dbenv, - "%s/%s: path too long", log_dir, *names); + if ((size_t)snprintf(from, sizeof(from), "%s%c%s", + logd, PATH_SEPARATOR[0], *names) >= sizeof(from)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + logd, PATH_SEPARATOR[0], *names); return (1); } @@ -654,13 +690,13 @@ again: aflag = DB_ARCH_LOG; * on open. */ if (update) { - if ((size_t)snprintf(to, sizeof(to), - "%s/%s", backupd, *names) >= sizeof(to)) { - dbenv->errx(dbenv, - "%s/%s: path too long", backupd, *names); + if ((size_t)snprintf(to, sizeof(to), "%s%c%s", + backupd, PATH_SEPARATOR[0], *names) >= sizeof(to)) { + dbenv->errx(dbenv, "%s%c%s: path too long", + backupd, PATH_SEPARATOR[0], *names); return (1); } - if (rename(from, to) == 0) { + if (__os_rename(dbenv, from, to, 1) == 0) { if (verbose) printf("%s: moving %s to %s\n", progname, from, to); @@ -669,8 +705,7 @@ again: aflag = DB_ARCH_LOG; } /* Copy the file. */ - if ((ret = data_copy(dbenv, - *names, logd, backupd, verbose)) != 0) + if (data_copy(dbenv, *names, logd, backupd, verbose) != 0) return (1); if (update) { @@ -695,7 +730,7 @@ done: if (update) { printf("%s: lowest numbered log file copied: %d\n", progname, *copy_minp); if (logd != log_dir) - free((char *)logd); + free(logd); if (backupd != backup_dir) free(backupd); @@ -709,20 +744,20 @@ done: if (update) { int data_copy(dbenv, file, from_dir, to_dir, verbose) DB_ENV *dbenv; - const char *file, *from_dir, *to_dir; + char *file, *from_dir, *to_dir; int verbose; { - ssize_t nr, nw; - size_t offset; - int ret, rfd, wfd; - char *buf, *taddr; + DB_FH *rfhp, *wfhp; + size_t nr, nw; + int ret; + char *buf; ret = 0; - rfd = wfd = -1; + rfhp = wfhp = NULL; if (verbose) - printf("%s: copying %s/%s to %s/%s\n", - progname, from_dir, file, to_dir, file); + printf("%s: copying %s%c%s to %s%c%s\n", progname, from_dir, + PATH_SEPARATOR[0], file, to_dir, PATH_SEPARATOR[0], file); /* * We MUST copy multiples of the page size, atomically, to ensure a @@ -741,44 +776,35 @@ data_copy(dbenv, file, from_dir, to_dir, verbose) } /* Open the input file. */ - if ((u_int32_t)snprintf( - buf, MEGABYTE, "%s/%s", from_dir, file) >= MEGABYTE) { - dbenv->errx(dbenv, "%s/%s: path too long", from_dir, file); + if (snprintf(buf, MEGABYTE, "%s%c%s", + from_dir, PATH_SEPARATOR[0], file) >= MEGABYTE) { + dbenv->errx(dbenv, + "%s%c%s: path too long", from_dir, PATH_SEPARATOR[0], file); goto err; } - if ((rfd = open(buf, O_RDONLY, 0)) == -1) { - dbenv->err(dbenv, errno, "%s", buf); + if ((ret = __os_open(dbenv, buf, 0, DB_OSO_RDONLY, 0, &rfhp)) != 0) { + dbenv->err(dbenv, ret, "%s", buf); goto err; } /* Open the output file. */ - if ((u_int32_t)snprintf( - buf, MEGABYTE, "%s/%s", to_dir, file) >= MEGABYTE) { - dbenv->errx(dbenv, "%s/%s: path too long", to_dir, file); + if (snprintf(buf, MEGABYTE, "%s%c%s", + to_dir, PATH_SEPARATOR[0], file) >= MEGABYTE) { + dbenv->errx(dbenv, + "%s%c%s: path too long", to_dir, PATH_SEPARATOR[0], file); goto err; } - if ((wfd = open( - buf, O_CREAT | O_TRUNC | O_WRONLY, __db_omode(OWNER_RW))) == -1) - goto err; - - /* Copy the data. */ - while ((nr = read(rfd, buf, MEGABYTE)) > 0) - for (taddr = buf, offset = 0; - offset < (size_t)nr; taddr += nw, offset += (size_t)nw) { - RETRY_CHK(((nw = write(wfd, - taddr, (u_int)(nr - offset))) < 0 ? 1 : 0), ret); - if (ret != 0) - break; - } - if (nr == -1) { - dbenv->err(dbenv, errno, "%s/%s: read", from_dir, file); + if ((ret = __os_open(dbenv, buf, 0, + DB_OSO_CREATE | DB_OSO_TRUNC, __db_omode(OWNER_RW), &wfhp)) != 0) { + dbenv->err(dbenv, ret, "%s", buf); goto err; } - if (ret != 0) { - dbenv->err(dbenv, errno, "%s: write %s/%s", to_dir, file); - goto err; - } + /* Copy the data. */ + while ((ret = __os_read(dbenv, rfhp, buf, MEGABYTE, &nr)) == 0 && + nr > 0) + if ((ret = __os_write(dbenv, wfhp, buf, nr, &nw)) != 0) + break; if (0) { err: ret = 1; @@ -786,14 +812,15 @@ err: ret = 1; if (buf != NULL) free(buf); - if (rfd != -1) - (void)close(rfd); + if (rfhp != NULL && __os_closehandle(dbenv, rfhp) != 0) + ret = 1; /* We may be running on a remote filesystem; force the flush. */ - if (wfd != -1 && (fsync(wfd) != 0 || close(wfd) != 0)) { - dbenv->err(dbenv, - errno, "%s: fsync %s/%s", to_dir, file); - ret = 1; + if (wfhp != NULL) { + if (__os_fsync(dbenv, wfhp) != 0) + ret = 1; + if (__os_closehandle(dbenv, wfhp) != 0) + ret = 1; } return (ret); } diff --git a/db/db_load/db_load.c b/db/db_load/db_load.c index 5cdfc79e8..66131847a 100644 --- a/db/db_load/db_load.c +++ b/db/db_load/db_load.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_load.c,v 12.18 2006/08/26 09:23:08 bostic Exp $ + * $Id: db_load.c,v 12.23 2007/05/17 17:17:42 bostic Exp $ */ #include "db_config.h" @@ -15,7 +14,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif typedef struct { /* XXX: Globals. */ @@ -72,7 +71,7 @@ main(argc, argv) int ch, existed, exitval, ret; char **clist, **clp; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -843,7 +842,27 @@ rheader(dbenv, dbp, dbtypep, subdbp, checkprintp, keysp) value = p--; - if (name[0] == '\0' || value[0] == '\0') + if (name[0] == '\0') + goto badfmt; + + /* + * The only values that may be zero-length are database names. + * In the original Berkeley DB code it was possible to create + * zero-length database names, and the db_load code was then + * changed to allow such databases to be be dumped and loaded. + * [#8204] + */ + if (strcmp(name, "database") == 0 || + strcmp(name, "subdatabase") == 0) { + if ((ret = convprintable(dbenv, value, subdbp)) != 0) { + dbp->err(dbp, ret, "error reading db name"); + goto err; + } + continue; + } + + /* No other values may be zero-length. */ + if (value[0] == '\0') goto badfmt; if (strcmp(name, "HEADER") == 0) @@ -894,14 +913,6 @@ rheader(dbenv, dbp, dbtypep, subdbp, checkprintp, keysp) dbp->errx(dbp, "line %lu: unknown type", G(lineno)); goto err; } - if (strcmp(name, "database") == 0 || - strcmp(name, "subdatabase") == 0) { - if ((ret = convprintable(dbenv, value, subdbp)) != 0) { - dbp->err(dbp, ret, "error reading db name"); - goto err; - } - continue; - } if (strcmp(name, "keys") == 0) { if (strcmp(value, "1") == 0) *keysp = 1; @@ -1009,6 +1020,9 @@ convprintable(dbenv, instr, outstrp) /* * Just malloc a string big enough for the whole input string; * the output string will be smaller (or of equal length). + * + * Note that we may be passed a zero-length string and need to + * be able to duplicate it. */ if ((outstr = malloc(strlen(instr) + 1)) == NULL) return (ENOMEM); diff --git a/db/db_printlog/db_printlog.c b/db/db_printlog/db_printlog.c index 1ef2896ee..035dbbdfa 100644 --- a/db/db_printlog/db_printlog.c +++ b/db/db_printlog/db_printlog.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_printlog.c,v 12.20 2006/08/26 09:23:10 bostic Exp $ + * $Id: db_printlog.c,v 12.25 2007/06/01 15:36:50 sue Exp $ */ #include "db_config.h" @@ -20,7 +19,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int env_init_print __P((DB_ENV *, u_int32_t, @@ -59,7 +58,7 @@ main(argc, argv) int (**dtab) __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -229,7 +228,7 @@ main(argc, argv) } for (; !__db_util_interrupted(); logcflag = rflag ? DB_PREV : DB_NEXT) { if (repflag) { - ret = dbc->c_get(dbc, &keydbt, &data, logcflag); + ret = dbc->get(dbc, &keydbt, &data, logcflag); if (ret == 0) key = ((REP_CONTROL *)keydbt.data)->lsn; } else @@ -292,7 +291,7 @@ shutdown: exitval = 1; if (logc != NULL && (ret = logc->close(logc, 0)) != 0) exitval = 1; - if (dbc != NULL && (ret = dbc->c_close(dbc)) != 0) + if (dbc != NULL && (ret = dbc->close(dbc)) != 0) exitval = 1; if (dbp != NULL && (ret = dbp->close(dbp, 0)) != 0) @@ -344,7 +343,11 @@ env_init_print(dbenv, version, dtabp, dtabsizep) /* * There are no log record/recovery differences between * 4.4 and 4.5. The log version changed due to checksum. + * There are no log recovery differences between + * 4.5 and 4.6. The name of the rep_gen in txn_checkpoint + * changed (to spare, since we don't use it anymore). */ + case DB_LOGVERSION_46: case DB_LOGVERSION_45: case DB_LOGVERSION_44: ret = 0; diff --git a/db/db_recover/db_recover.c b/db/db_recover/db_recover.c index 4082279a8..4e5c12d8e 100644 --- a/db/db_recover/db_recover.c +++ b/db/db_recover/db_recover.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_recover.c,v 12.9 2006/08/26 09:23:13 bostic Exp $ + * $Id: db_recover.c,v 12.14 2007/05/17 15:15:03 bostic Exp $ */ #include "db_config.h" @@ -13,15 +12,17 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif +void feedback __P((DB_ENV *, int, int)); int main __P((int, char *[])); int read_timestamp __P((char *, time_t *)); int usage __P((void)); int version_check __P((void)); const char *progname; +int newline_needed; int main(argc, argv) @@ -33,10 +34,10 @@ main(argc, argv) DB_ENV *dbenv; time_t timestamp; u_int32_t flags; - int ch, exitval, fatal_recover, ret, retain_env, verbose; + int ch, exitval, fatal_recover, ret, retain_env, set_feedback, verbose; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -46,8 +47,8 @@ main(argc, argv) home = passwd = NULL; timestamp = 0; - exitval = fatal_recover = retain_env = verbose = 0; - while ((ch = getopt(argc, argv, "ceh:P:t:Vv")) != EOF) + exitval = fatal_recover = retain_env = set_feedback = verbose = 0; + while ((ch = getopt(argc, argv, "cefh:P:t:Vv")) != EOF) switch (ch) { case 'c': fatal_recover = 1; @@ -55,6 +56,9 @@ main(argc, argv) case 'e': retain_env = 1; break; + case 'f': + set_feedback = 1; + break; case 'h': home = optarg; break; @@ -101,6 +105,8 @@ main(argc, argv) } dbenv->set_errfile(dbenv, stderr); dbenv->set_errpfx(dbenv, progname); + if (set_feedback) + (void)dbenv->set_feedback(dbenv, feedback); if (verbose) (void)dbenv->set_verbose(dbenv, DB_VERB_RECOVERY, 1); if (timestamp && @@ -141,6 +147,10 @@ main(argc, argv) shutdown: exitval = 1; } + /* Flush to the next line of the output device. */ + if (newline_needed) + printf("\n"); + /* Clean up the environment. */ if ((ret = dbenv->close(dbenv, 0)) != 0) { exitval = 1; @@ -156,6 +166,25 @@ shutdown: exitval = 1; return (exitval == 0 ? EXIT_SUCCESS : EXIT_FAILURE); } +/* + * feedback -- + * provide feedback on recovery progress. + */ +void +feedback(dbenv, opcode, percent) + DB_ENV *dbenv; + int opcode; + int percent; +{ + COMPQUIET(dbenv, NULL); + + if (opcode == DB_RECOVER) { + printf("\rrecovery %d%% complete", percent); + (void)fflush(stdout); + newline_needed = 1; + } +} + #define ATOI2(ar) ((ar)[0] - '0') * 10 + ((ar)[1] - '0'); (ar) += 2; /* @@ -262,7 +291,7 @@ int usage() { (void)fprintf(stderr, "usage: %s %s\n", progname, - "[-ceVv] [-h home] [-P password] [-t [[CC]YY]MMDDhhmm[.SS]]"); + "[-cefVv] [-h home] [-P password] [-t [[CC]YY]MMDDhhmm[.SS]]"); return (EXIT_FAILURE); } diff --git a/db/db_stat/db_stat.c b/db/db_stat/db_stat.c index 62fa01878..2ae62f683 100644 --- a/db/db_stat/db_stat.c +++ b/db/db_stat/db_stat.c @@ -1,24 +1,22 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_stat.c,v 12.14 2006/08/26 09:23:19 bostic Exp $ + * $Id: db_stat.c,v 12.22 2007/07/06 15:43:57 alanb Exp $ */ #include "db_config.h" #include "db_int.h" -#include "dbinc/db_page.h" #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif -typedef enum { T_NOTSET, - T_DB, T_ENV, T_LOCK, T_LOG, T_MPOOL, T_MUTEX, T_REP, T_TXN } test_t; +typedef enum { T_NOTSET, T_DB, + T_ENV, T_LOCK, T_LOG, T_MPOOL, T_MUTEX, T_REP, T_TXN } test_t; int db_init __P((DB_ENV *, char *, test_t, u_int32_t, int *)); int main __P((int, char *[])); @@ -42,7 +40,7 @@ main(argc, argv) int nflag, private, resize, ret; char *db, *home, *p, *passwd, *subdb; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; @@ -58,7 +56,7 @@ main(argc, argv) db = home = passwd = subdb = NULL; while ((ch = getopt(argc, - argv, "C:cd:Eefh:L:lM:mNP:R:rs:tVxX:Z")) != EOF) + argv, "C:cd:Eefgh:L:lM:mNP:R:rs:tVxX:Z")) != EOF) switch (ch) { case 'C': case 'c': if (ttype != T_NOTSET && ttype != T_LOCK) @@ -330,6 +328,10 @@ retry: if ((ret = db_env_create(&dbenv, 0)) != 0) { goto err; break; case T_REP: +#ifdef HAVE_REPLICATION_THREADS + if (dbenv->repmgr_stat_print(dbenv, flags)) + goto err; +#endif if (dbenv->rep_stat_print(dbenv, flags)) goto err; break; @@ -420,8 +422,6 @@ db_init(dbenv, home, ttype, cache, is_private) oflags |= DB_INIT_MPOOL; if (ttype == T_LOG) oflags |= DB_INIT_LOG; - if (ttype == T_REP) - oflags |= DB_INIT_REP; if ((ret = dbenv->open(dbenv, home, oflags, 0)) == 0) return (0); diff --git a/db/db_upgrade/db_upgrade.c b/db/db_upgrade/db_upgrade.c index 0d7319050..05e5dc187 100644 --- a/db/db_upgrade/db_upgrade.c +++ b/db/db_upgrade/db_upgrade.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_upgrade.c,v 12.9 2006/08/26 09:23:22 bostic Exp $ + * $Id: db_upgrade.c,v 12.12 2007/05/17 15:15:04 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int main __P((int, char *[])); @@ -35,7 +34,7 @@ main(argc, argv) int ch, exitval, nflag, ret, t_ret, verbose; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/db_verify/db_verify.c b/db/db_verify/db_verify.c index f09ebc4ff..f0533b717 100644 --- a/db/db_verify/db_verify.c +++ b/db/db_verify/db_verify.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_verify.c,v 12.8 2006/08/26 09:23:23 bostic Exp $ + * $Id: db_verify.c,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #include "db_config.h" @@ -13,7 +12,7 @@ #ifndef lint static const char copyright[] = - "Copyright (c) 1996-2006\nOracle Corporation. All rights reserved.\n"; + "Copyright (c) 1996,2007 Oracle. All rights reserved.\n"; #endif int main __P((int, char *[])); @@ -36,7 +35,7 @@ main(argc, argv) int quiet, resize, ret; char *home, *passwd; - if ((progname = strrchr(argv[0], '/')) == NULL) + if ((progname = __db_rpath(argv[0])) == NULL) progname = argv[0]; else ++progname; diff --git a/db/dbinc/btree.h b/db/dbinc/btree.h index e7b3998b4..9480cf2e4 100644 --- a/db/dbinc/btree.h +++ b/db/dbinc/btree.h @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994, 1995, 1996 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: btree.h,v 12.12 2006/08/24 14:45:27 bostic Exp $ + * $Id: btree.h,v 12.14 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_BTREE_H_ #define _DB_BTREE_H_ diff --git a/db/dbinc/clock.h b/db/dbinc/clock.h new file mode 100644 index 000000000..c6256ef92 --- /dev/null +++ b/db/dbinc/clock.h @@ -0,0 +1,108 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 2005,2007 Oracle. All rights reserved. + * + * $Id: clock.h,v 12.5 2007/05/17 17:22:36 bostic Exp $ + */ +/* + * Copyright (c) 1982, 1986, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)time.h 8.5 (Berkeley) 5/4/95 + * FreeBSD: src/sys/sys/time.h,v 1.65 2004/04/07 04:19:49 imp Exp + */ + +#ifndef _DB_CLOCK_H_ +#define _DB_CLOCK_H_ + +#if defined(__cplusplus) +extern "C" { +#endif + +/* + * This declaration is POSIX-compatible. Because there are lots of different + * time.h include file patterns out there, it's easier to declare our own name + * in all cases than to try and discover if a system has a struct timespec. + * For the same reason, and because we'd have to #include in db.h, + * we don't export any timespec structures in the DB API, even in places where + * it would make sense, like the replication statistics information. + */ +typedef struct { + time_t tv_sec; /* seconds */ + long tv_nsec; /* nanoseconds */ +} db_timespec; + +/* Operations on timespecs */ +#undef timespecclear +#define timespecclear(tvp) ((tvp)->tv_sec = (tvp)->tv_nsec = 0) +#undef timespecisset +#define timespecisset(tvp) ((tvp)->tv_sec || (tvp)->tv_nsec) +#undef timespeccmp +#define timespeccmp(tvp, uvp, cmp) \ + (((tvp)->tv_sec == (uvp)->tv_sec) ? \ + ((tvp)->tv_nsec cmp (uvp)->tv_nsec) : \ + ((tvp)->tv_sec cmp (uvp)->tv_sec)) +#undef timespecadd +#define timespecadd(vvp, uvp) \ + do { \ + (vvp)->tv_sec += (uvp)->tv_sec; \ + (vvp)->tv_nsec += (uvp)->tv_nsec; \ + if ((vvp)->tv_nsec >= 1000000000) { \ + (vvp)->tv_sec++; \ + (vvp)->tv_nsec -= 1000000000; \ + } \ + } while (0) +#undef timespecsub +#define timespecsub(vvp, uvp) \ + do { \ + (vvp)->tv_sec -= (uvp)->tv_sec; \ + (vvp)->tv_nsec -= (uvp)->tv_nsec; \ + if ((vvp)->tv_nsec < 0) { \ + (vvp)->tv_sec--; \ + (vvp)->tv_nsec += 1000000000; \ + } \ + } while (0) + +#define DB_TIMEOUT_TO_TIMESPEC(t, vvp) \ + do { \ + (vvp)->tv_sec = (time_t)((t) / 1000000); \ + (vvp)->tv_nsec = (long)(((t) % 1000000) * 1000); \ + } while (0) + +#define DB_TIMESPEC_TO_TIMEOUT(t, vvp) \ + do { \ + t = (u_long)((vvp)->tv_sec * 1000000); \ + t += (u_long)((vvp)->tv_nsec / 1000); \ + /* Add in 1 usec for lost nsec precision. */ \ + t++; \ + } while (0) + +#if defined(__cplusplus) +} +#endif +#endif /* !_DB_CLOCK_H_ */ diff --git a/db/dbinc/crypto.h b/db/dbinc/crypto.h index 86c7a0b7d..a83f35e66 100644 --- a/db/dbinc/crypto.h +++ b/db/dbinc/crypto.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: crypto.h,v 12.5 2006/08/24 14:45:27 bostic Exp $ + * $Id: crypto.h,v 12.7 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_CRYPTO_H_ diff --git a/db/dbinc/cxx_int.h b/db/dbinc/cxx_int.h index bde013543..78550fb95 100644 --- a/db/dbinc/cxx_int.h +++ b/db/dbinc/cxx_int.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: cxx_int.h,v 12.4 2006/08/24 14:45:27 bostic Exp $ + * $Id: cxx_int.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_CXX_INT_H_ diff --git a/db/dbinc/db.in b/db/dbinc/db.in index 19180e2c3..4aa823d89 100644 --- a/db/dbinc/db.in +++ b/db/dbinc/db.in @@ -1,10 +1,9 @@ /* * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db.in,v 12.108 2006/09/13 14:53:37 mjc Exp $ + * $Id: db.in,v 12.158 2007/06/28 14:23:35 mjc Exp $ * * db.h include file layout: * General. @@ -21,7 +20,7 @@ #ifndef _DB_H_ #define _DB_H_ -#ifndef __NO_SYSTEM_INCLUDES +#ifndef __NO_SYSTEM_INCLUDES #include @inttypes_h_decl@ @stdint_h_decl@ @@ -73,12 +72,13 @@ extern "C" { #endif @u_char_decl@ -@u_short_decl@ @u_int_decl@ @u_long_decl@ -@ssize_t_decl@ +@u_short_decl@ /* + * Missing ANSI types. + * * uintmax_t -- * Largest unsigned type, used to align structures in memory. We don't store * floating point types in structures, so integral types should be sufficient @@ -97,6 +97,13 @@ extern "C" { @uintmax_t_decl@ @uintptr_t_decl@ +@FILE_t_decl@ +@off_t_decl@ +@pid_t_decl@ +@size_t_decl@ +@ssize_t_decl@ +@time_t_decl@ + /* * Sequences are only available on machines with 64-bit integral types. */ @@ -104,7 +111,6 @@ extern "C" { /* Thread and process identification. */ @db_threadid_t_decl@ -@pid_t_decl@ /* Basic types that are exported or quasi-exported. */ typedef u_int32_t db_pgno_t; /* Page number type. */ @@ -138,7 +144,9 @@ struct __db_env; typedef struct __db_env DB_ENV; struct __db_h_stat; typedef struct __db_h_stat DB_HASH_STAT; struct __db_ilock; typedef struct __db_ilock DB_LOCK_ILOCK; struct __db_lock_stat; typedef struct __db_lock_stat DB_LOCK_STAT; +struct __db_lock_hstat; typedef struct __db_lock_hstat DB_LOCK_HSTAT; struct __db_lock_u; typedef struct __db_lock_u DB_LOCK; +struct __db_locker; typedef struct __db_locker DB_LOCKER; struct __db_lockreq; typedef struct __db_lockreq DB_LOCKREQ; struct __db_locktab; typedef struct __db_locktab DB_LOCKTAB; struct __db_log; typedef struct __db_log DB_LOG; @@ -158,6 +166,8 @@ struct __db_rep; typedef struct __db_rep DB_REP; struct __db_rep_stat; typedef struct __db_rep_stat DB_REP_STAT; struct __db_repmgr_site; \ typedef struct __db_repmgr_site DB_REPMGR_SITE; +struct __db_repmgr_stat; \ + typedef struct __db_repmgr_stat DB_REPMGR_STAT; struct __db_seq_record; typedef struct __db_seq_record DB_SEQ_RECORD; struct __db_seq_stat; typedef struct __db_seq_stat DB_SEQUENCE_STAT; struct __db_sequence; typedef struct __db_sequence DB_SEQUENCE; @@ -184,13 +194,14 @@ struct __db_dbt { void *app_data; #define DB_DBT_APPMALLOC 0x001 /* Callback allocated memory. */ -#define DB_DBT_ISSET 0x002 /* Lower level calls set value. */ -#define DB_DBT_MALLOC 0x004 /* Return in malloc'd memory. */ -#define DB_DBT_PARTIAL 0x008 /* Partial put/get. */ -#define DB_DBT_REALLOC 0x010 /* Return in realloc'd memory. */ -#define DB_DBT_USERCOPY 0x020 /* Use the user-supplied callback. */ -#define DB_DBT_USERMEM 0x040 /* Return in user's memory. */ -#define DB_DBT_DUPOK 0x080 /* Insert if duplicate. */ +#define DB_DBT_DUPOK 0x002 /* Insert if duplicate. */ +#define DB_DBT_ISSET 0x004 /* Lower level calls set value. */ +#define DB_DBT_MALLOC 0x008 /* Return in malloc'd memory. */ +#define DB_DBT_MULTIPLE 0x010 /* References multiple records. */ +#define DB_DBT_PARTIAL 0x020 /* Partial put/get. */ +#define DB_DBT_REALLOC 0x040 /* Return in realloc'd memory. */ +#define DB_DBT_USERCOPY 0x080 /* Use the user-supplied callback. */ +#define DB_DBT_USERMEM 0x100 /* Return in user's memory. */ u_int32_t flags; }; @@ -209,10 +220,10 @@ struct __db_dbt { #define DB_THREAD 0x0000080 /* Applications are threaded. */ #define DB_TRUNCATE 0x0000100 /* Discard existing DB (O_TRUNC). */ #define DB_TXN_NOSYNC 0x0000200 /* Do not sync log on commit. */ -#define DB_TXN_NOT_DURABLE 0x0000400 /* Do not log changes. */ -#define DB_TXN_WRITE_NOSYNC 0x0000800 /* Write the log but don't sync. */ -#define DB_USE_ENVIRON 0x0001000 /* Use the environment. */ -#define DB_USE_ENVIRON_ROOT 0x0002000 /* Use the environment if root. */ +#define DB_TXN_NOWAIT 0x0000400 /* Do not wait for locks. */ +#define DB_TXN_NOT_DURABLE 0x0000800 /* Do not log changes. */ +#define DB_TXN_WRITE_NOSYNC 0x0001000 /* Write the log but don't sync. */ +#define DB_SPARE_FLAG 0x0002000 /* Spare. */ /* * Common flags -- @@ -224,9 +235,9 @@ struct __db_dbt { * (Note: until the 4.3 release, legal to DB->associate, DB->del, * DB->put, DB->remove, DB->rename and DB->truncate, and others.) * DB_READ_COMMITTED: - * DB->cursor, DB->get, DB->join, DBcursor->c_get, DB_ENV->txn_begin + * DB->cursor, DB->get, DB->join, DBcursor->get, DB_ENV->txn_begin * DB_READ_UNCOMMITTED: - * DB->cursor, DB->get, DB->join, DB->open, DBcursor->c_get, + * DB->cursor, DB->get, DB->join, DB->open, DBcursor->get, * DB_ENV->txn_begin * DB_TXN_SNAPSHOT: * DB_ENV->set_flags, DB_ENV->txn_begin, DB->cursor @@ -236,6 +247,7 @@ struct __db_dbt { * without also changing the masks for the flags that can be OR'd into DB * access method and cursor operation values. */ +#define DB_IGNORE_LEASE 0x01000000/* Ignore leases. */ #define DB_AUTO_COMMIT 0x02000000/* Implied transaction. */ #define DB_READ_COMMITTED 0x04000000/* Degree 2 isolation. */ @@ -262,19 +274,24 @@ struct __db_dbt { #define DB_XA_CREATE 0x0000002 /* Open in an XA environment. */ /* - * Flags private to DB_ENV->open. + * Flags shared by DB_ENV->remove and DB_ENV->open. * Shared flags up to 0x0002000 */ -#define DB_INIT_CDB 0x0004000 /* Concurrent Access Methods. */ -#define DB_INIT_LOCK 0x0008000 /* Initialize locking. */ -#define DB_INIT_LOG 0x0010000 /* Initialize logging. */ -#define DB_INIT_MPOOL 0x0020000 /* Initialize mpool. */ -#define DB_INIT_REP 0x0040000 /* Initialize replication. */ -#define DB_INIT_TXN 0x0080000 /* Initialize transactions. */ -#define DB_LOCKDOWN 0x0100000 /* Lock memory into physical core. */ -#define DB_PRIVATE 0x0200000 /* DB_ENV is process local. */ -#define DB_RECOVER_FATAL 0x0400000 /* Run catastrophic recovery. */ -#define DB_REGISTER 0x0800000 /* Multi-process registry. */ -#define DB_SYSTEM_MEM 0x1000000 /* Use system-backed memory. */ +#define DB_USE_ENVIRON 0x0004000 /* Use the environment. */ +#define DB_USE_ENVIRON_ROOT 0x0008000 /* Use the environment if root. */ +/* + * Flags private to DB_ENV->open. + */ +#define DB_INIT_CDB 0x0010000 /* Concurrent Access Methods. */ +#define DB_INIT_LOCK 0x0020000 /* Initialize locking. */ +#define DB_INIT_LOG 0x0040000 /* Initialize logging. */ +#define DB_INIT_MPOOL 0x0080000 /* Initialize mpool. */ +#define DB_INIT_REP 0x0100000 /* Initialize replication. */ +#define DB_INIT_TXN 0x0200000 /* Initialize transactions. */ +#define DB_LOCKDOWN 0x0400000 /* Lock memory into physical core. */ +#define DB_PRIVATE 0x0800000 /* DB_ENV is process local. */ +#define DB_RECOVER_FATAL 0x1000000 /* Run catastrophic recovery. */ +#define DB_REGISTER 0x2000000 /* Multi-process registry. */ +#define DB_SYSTEM_MEM 0x4000000 /* Use system-backed memory. */ #define DB_JOINENV 0x0 /* Compatibility. */ @@ -296,8 +313,13 @@ struct __db_dbt { /* * Flags private to DB_ENV->txn_begin. * Shared flags up to 0x0002000 */ -#define DB_TXN_NOWAIT 0x0004000 /* Do not wait for locks in this TXN. */ -#define DB_TXN_SYNC 0x0008000 /* Always sync log on commit. */ +#define DB_TXN_SYNC 0x0004000 /* Always sync log on commit. */ +#define DB_TXN_WAIT 0x0008000 /* Always wait for locks in this TXN. */ + +/* + * Flags private to DB_ENV->txn_checkpoint. + * Shared flags up to 0x0002000 */ +#define DB_CKP_INTERNAL 0x0004000 /* Internally generated checkpoint. */ /* * Flags private to DB_ENV->set_encrypt. @@ -430,9 +452,11 @@ struct __db_mutex_stat { u_int32_t st_mutex_inuse_max; /* Maximum mutexes ever in use */ /* The following fields are filled-in from other places. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /* This is the length of the buffer passed to DB_ENV->thread_id_string() */ @@ -468,6 +492,11 @@ struct __db_mutex_stat { #define DB_LOCK_SWITCH 0x010 /* Internal: switch existing lock. */ #define DB_LOCK_UPGRADE 0x020 /* Internal: upgrade existing lock. */ +/* Flag values for DbEnv.set_timeout. */ +#define DB_SET_LOCK_TIMEOUT 1 /* Set lock timeout */ +#define DB_SET_TXN_NOW 2 /* Timeout lock now (internal) */ +#define DB_SET_TXN_TIMEOUT 3 /* Set transaction timeout */ + /* * Simple R/W lock modes and for multi-granularity intention locking. * @@ -527,9 +556,10 @@ struct __db_lock_stat { u_int32_t st_maxlockers; /* Maximum num of lockers in table. */ u_int32_t st_maxobjects; /* Maximum num of objects in table. */ int st_nmodes; /* Number of lock modes. */ + u_int32_t st_nlockers; /* Current number of lockers. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_nlocks; /* Current number of locks. */ u_int32_t st_maxnlocks; /* Maximum number of locks so far. */ - u_int32_t st_nlockers; /* Current number of lockers. */ u_int32_t st_maxnlockers; /* Maximum number of lockers so far. */ u_int32_t st_nobjects; /* Current number of objects. */ u_int32_t st_maxnobjects; /* Maximum number of objects so far. */ @@ -544,9 +574,29 @@ struct __db_lock_stat { u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ db_timeout_t st_txntimeout; /* Transaction timeout. */ u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_objs_wait; /* Object lock granted after wait. */ + u_int32_t st_objs_nowait; /* Object lock granted without wait. */ + u_int32_t st_lockers_wait; /* Locker lock granted after wait. */ + u_int32_t st_lockers_nowait; /* Locker lock granted without wait. */ + u_int32_t st_locks_wait; /* Lock lock granted after wait. */ + u_int32_t st_locks_nowait; /* Lock lock granted without wait. */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ + u_int32_t st_hash_len; /* Max length of bucket. */ roff_t st_regsize; /* Region size. */ +#endif +}; + +struct __db_lock_hstat { + u_int32_t st_nrequests; /* Number of lock gets. */ + u_int32_t st_nreleases; /* Number of lock puts. */ + u_int32_t st_nupgrade; /* Number of lock upgrades. */ + u_int32_t st_ndowngrade; /* Number of lock downgrades. */ + u_int32_t st_lock_wait; /* Lock conflicts w/ subsequent wait */ + u_int32_t st_lock_nowait; /* Lock conflicts w/o subsequent wait */ + u_int32_t st_nlocktimeouts; /* Number of lock timeouts. */ + u_int32_t st_ntxntimeouts; /* Number of transaction timeouts. */ + u_int32_t st_hash_len; /* Max length of bucket. */ }; /* @@ -587,7 +637,7 @@ struct __db_lockreq { /******************************************************* * Logging. *******************************************************/ -#define DB_LOGVERSION 12 /* Current log version. */ +#define DB_LOGVERSION 13 /* Current log version. */ #define DB_LOGOLDVER 8 /* Oldest log version supported. */ #define DB_LOGMAGIC 0x040988 @@ -638,12 +688,12 @@ struct __db_lsn { struct __db_log_cursor { DB_ENV *dbenv; /* Enclosing dbenv. */ - DB_FH *c_fhp; /* File handle. */ - DB_LSN c_lsn; /* Cursor: LSN */ - u_int32_t c_len; /* Cursor: record length */ - u_int32_t c_prev; /* Cursor: previous record's offset */ + DB_FH *fhp; /* File handle. */ + DB_LSN lsn; /* Cursor: LSN */ + u_int32_t len; /* Cursor: record length */ + u_int32_t prev; /* Cursor: previous record's offset */ - DBT c_dbt; /* Return DBT. */ + DBT dbt; /* Return DBT. */ DB_LSN p_lsn; /* Persist LSN. */ u_int32_t p_version; /* Persist version. */ @@ -673,11 +723,12 @@ struct __db_log_stat { int st_mode; /* Log file permissions mode. */ u_int32_t st_lg_bsize; /* Log buffer size. */ u_int32_t st_lg_size; /* Log file size. */ + u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ + u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_record; /* Records entered into the log. */ u_int32_t st_w_bytes; /* Bytes to log. */ u_int32_t st_w_mbytes; /* Megabytes to log. */ - u_int32_t st_wc_bytes; /* Bytes to log since checkpoint. */ - u_int32_t st_wc_mbytes; /* Megabytes to log since checkpoint. */ u_int32_t st_wcount; /* Total I/O writes to the log. */ u_int32_t st_wcount_fill; /* Overflow writes to the log. */ u_int32_t st_rcount; /* Total I/O reads from the log. */ @@ -688,9 +739,10 @@ struct __db_log_stat { u_int32_t st_cur_offset; /* Current log file offset. */ u_int32_t st_disk_file; /* Known on disk log file number. */ u_int32_t st_disk_offset; /* Known on disk log file offset. */ - roff_t st_regsize; /* Region size. */ u_int32_t st_maxcommitperflush; /* Max number of commits in a flush. */ u_int32_t st_mincommitperflush; /* Min number of commits in a flush. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* @@ -714,15 +766,16 @@ struct __db_log_stat { #define DB_MPOOL_LAST 0x010 /* Return the last page. */ #define DB_MPOOL_NEW 0x020 /* Create a new page. */ -/* Flag values for DB_MPOOLFILE->put, DB_MPOOLFILE->set. */ -#define DB_MPOOL_DISCARD 0x001 /* Don't cache the page. */ +/* Undocumented flag value for DB_MPOOLFILE->close. */ +#define DB_MPOOL_DISCARD 0x001 /* Discard file. */ /* Flags values for DB_MPOOLFILE->set_flags. */ #define DB_MPOOL_NOFILE 0x001 /* Never open a backing file. */ #define DB_MPOOL_UNLINK 0x002 /* Unlink the file on last close. */ -/* Priority values for DB_MPOOLFILE->set_priority. */ +/* Priority values for DB_MPOOLFILE->{put,set_priority}. */ typedef enum { + DB_PRIORITY_UNCHANGED=0, DB_PRIORITY_VERY_LOW=1, DB_PRIORITY_LOW=2, DB_PRIORITY_DEFAULT=3, @@ -783,24 +836,24 @@ struct __db_mpoolfile { int (*close) __P((DB_MPOOLFILE *, u_int32_t)); int (*get) __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); - int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); - int (*put) __P((DB_MPOOLFILE *, void *, u_int32_t)); - int (*set) __P((DB_MPOOLFILE *, void *, u_int32_t)); int (*get_clear_len) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); int (*get_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); - int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); int (*get_flags) __P((DB_MPOOLFILE *, u_int32_t *)); - int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); int (*get_ftype) __P((DB_MPOOLFILE *, int *)); - int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*get_last_pgno) __P((DB_MPOOLFILE *, db_pgno_t *)); int (*get_lsn_offset) __P((DB_MPOOLFILE *, int32_t *)); - int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); int (*get_maxsize) __P((DB_MPOOLFILE *, u_int32_t *, u_int32_t *)); - int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); int (*get_pgcookie) __P((DB_MPOOLFILE *, DBT *)); - int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*get_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY *)); + int (*open) __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); + int (*put) __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); + int (*set_clear_len) __P((DB_MPOOLFILE *, u_int32_t)); + int (*set_fileid) __P((DB_MPOOLFILE *, u_int8_t *)); + int (*set_flags) __P((DB_MPOOLFILE *, u_int32_t, int)); + int (*set_ftype) __P((DB_MPOOLFILE *, int)); + int (*set_lsn_offset) __P((DB_MPOOLFILE *, int32_t)); + int (*set_maxsize) __P((DB_MPOOLFILE *, u_int32_t, u_int32_t)); + int (*set_pgcookie) __P((DB_MPOOLFILE *, DBT *)); int (*set_priority) __P((DB_MPOOLFILE *, DB_CACHE_PRIORITY)); int (*sync) __P((DB_MPOOLFILE *)); /* DB_MPOOLFILE PUBLIC HANDLE LIST END */ @@ -825,12 +878,14 @@ struct __db_mpoolfile { struct __db_mpool_stat { u_int32_t st_gbytes; /* Total cache size: GB. */ u_int32_t st_bytes; /* Total cache size: B. */ - u_int32_t st_ncache; /* Number of caches. */ - roff_t st_regsize; /* Region size. */ + u_int32_t st_ncache; /* Number of cache regions. */ + u_int32_t st_max_ncache; /* Maximum number of regions. */ size_t st_mmapsize; /* Maximum file size for mmap. */ int st_maxopenfd; /* Maximum number of open fd's. */ int st_maxwrite; /* Maximum buffers to write. */ - int st_maxwrite_sleep; /* Sleep after writing max buffers. */ + db_timeout_t st_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t st_pages; /* Total number of pages. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ @@ -840,7 +895,6 @@ struct __db_mpool_stat { u_int32_t st_ro_evict; /* Clean pages forced from the cache. */ u_int32_t st_rw_evict; /* Dirty pages forced from the cache. */ u_int32_t st_page_trickle; /* Pages written by memp_trickle. */ - u_int32_t st_pages; /* Total number of pages. */ u_int32_t st_page_clean; /* Clean pages. */ u_int32_t st_page_dirty; /* Dirty pages. */ u_int32_t st_hash_buckets; /* Number of hash buckets. */ @@ -862,18 +916,22 @@ struct __db_mpool_stat { u_int32_t st_alloc_pages; /* Pages checked during allocation. */ u_int32_t st_alloc_max_pages; /* Max checked during allocation. */ u_int32_t st_io_wait; /* Thread waited on buffer I/O. */ + roff_t st_regsize; /* Region size. */ +#endif }; /* Mpool file statistics structure. */ struct __db_mpool_fstat { char *file_name; /* File name. */ u_int32_t st_pagesize; /* Page size. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_map; /* Pages from mapped files. */ u_int32_t st_cache_hit; /* Pages found in the cache. */ u_int32_t st_cache_miss; /* Pages not found in the cache. */ u_int32_t st_page_create; /* Pages created in the cache. */ u_int32_t st_page_in; /* Pages read in. */ u_int32_t st_page_out; /* Pages written out. */ +#endif }; /******************************************************* @@ -907,7 +965,8 @@ struct __db_txn { DB_TXN *parent; /* Pointer to transaction's parent. */ u_int32_t txnid; /* Unique transaction id. */ - char *name; /* Transaction name */ + char *name; /* Transaction name. */ + DB_LOCKER *locker; /* Locker for this txn. */ db_threadid_t tid; /* Thread id for use in MT XA. */ void *td; /* Detail structure within region. */ @@ -948,7 +1007,7 @@ struct __db_txn { struct { struct __txn_event *tqh_first; struct __txn_event **tqh_last; - } events; + } events; /* Links deferred events. */ /* * !!! @@ -958,7 +1017,7 @@ struct __db_txn { struct { struct __txn_logrec *stqh_first; struct __txn_logrec **stqh_last; - } logs; /* Links deferred events. */ + } logs; /* Links in memory log records. */ /* * !!! @@ -1055,6 +1114,9 @@ struct __db_txn_active { }; struct __db_txn_stat { + u_int32_t st_nrestores; /* number of restored transactions + after recovery. */ +#ifndef __TEST_DB_NO_STATISTICS DB_LSN st_last_ckp; /* lsn of the last checkpoint */ time_t st_time_ckp; /* time of last checkpoint */ u_int32_t st_last_txnid; /* last transaction id given out */ @@ -1064,14 +1126,13 @@ struct __db_txn_stat { u_int32_t st_ncommits; /* number of committed transactions */ u_int32_t st_nactive; /* number of active transactions */ u_int32_t st_nsnapshot; /* number of snapshot transactions */ - u_int32_t st_nrestores; /* number of restored transactions - after recovery. */ u_int32_t st_maxnactive; /* maximum active transactions */ u_int32_t st_maxnsnapshot; /* maximum snapshot transactions */ DB_TXN_ACTIVE *st_txnarray; /* array of active transactions */ u_int32_t st_region_wait; /* Region lock granted after wait. */ u_int32_t st_region_nowait; /* Region lock granted without wait. */ roff_t st_regsize; /* Region size. */ +#endif }; /******************************************************* @@ -1096,8 +1157,11 @@ struct __db_txn_stat { */ #define DB_REP_CLIENT 1 #define DB_REP_ELECTION 2 -#define DB_REP_FULL_ELECTION 3 -#define DB_REP_MASTER 4 +#define DB_REP_MASTER 3 + +#define DB_REPFLAGS_MASK 0x000000ff /* Mask for rep modes. */ + +#define DB_REP_DEFAULT_PRIORITY 100 /* Acknowledgement policies. */ #define DB_REPMGR_ACKS_ALL 1 @@ -1107,33 +1171,38 @@ struct __db_txn_stat { #define DB_REPMGR_ACKS_ONE_PEER 5 #define DB_REPMGR_ACKS_QUORUM 6 -/* Replication Framework timeout configuration values. */ -#define DB_REP_ACK_TIMEOUT 1 -#define DB_REP_ELECTION_TIMEOUT 2 -#define DB_REP_ELECTION_RETRY 3 -#define DB_REP_CONNECTION_RETRY 4 +/* Replication timeout configuration values. */ +#define DB_REP_ACK_TIMEOUT 1 /* RepMgr acknowledgements. */ +#define DB_REP_CHECKPOINT_DELAY 2 /* RepMgr acknowledgements. */ +#define DB_REP_CONNECTION_RETRY 3 /* RepMgr connections. */ +#define DB_REP_ELECTION_RETRY 4 /* RepMgr elect retries. */ +#define DB_REP_ELECTION_TIMEOUT 5 /* Rep normal elections. */ +#define DB_REP_FULL_ELECTION_TIMEOUT 6 /* Rep full elections. */ +#define DB_REP_LEASE_TIMEOUT 7 /* Master leases. */ /* Event notification types. */ #define DB_EVENT_NO_SUCH_EVENT 0 /* out-of-band sentinel value */ #define DB_EVENT_PANIC 1 #define DB_EVENT_REP_CLIENT 2 -#define DB_EVENT_REP_MASTER 3 -#define DB_EVENT_REP_NEWMASTER 4 -#define DB_EVENT_REP_STARTUPDONE 5 -#define DB_EVENT_WRITE_FAILED 6 +#define DB_EVENT_REP_ELECTED 3 +#define DB_EVENT_REP_MASTER 4 +#define DB_EVENT_REP_NEWMASTER 5 +#define DB_EVENT_REP_PERM_FAILED 6 +#define DB_EVENT_REP_STARTUPDONE 7 +#define DB_EVENT_WRITE_FAILED 8 /* Flag value for repmgr_add_remote_site. */ #define DB_REPMGR_PEER 0x01 /* Replication Manager site status. */ struct __db_repmgr_site { - int eid; - char *host; - u_int port; + int eid; + char *host; + u_int port; #define DB_REPMGR_CONNECTED 0x01 #define DB_REPMGR_DISCONNECTED 0x02 - u_int32_t status; + u_int32_t status; }; /* Replication statistics. */ @@ -1147,6 +1216,9 @@ struct __db_rep_stat { * off somewhat (or, on unreasonable architectures under unlucky * circumstances, garbaged). */ + u_int32_t st_log_queued; /* Log records currently queued.+ */ + u_int32_t st_startup_complete; /* Site completed client sync-up. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t st_status; /* Current replication status. */ DB_LSN st_next_lsn; /* Next LSN to use or expect. */ DB_LSN st_waiting_lsn; /* LSN we're awaiting, if any. */ @@ -1169,7 +1241,6 @@ struct __db_rep_stat { u_int32_t st_gen; /* Current generation number. */ u_int32_t st_egen; /* Current election gen number. */ u_int32_t st_log_duplicated; /* Log records received multiply.+ */ - u_int32_t st_log_queued; /* Log records currently queued.+ */ u_int32_t st_log_queued_max; /* Max. log records queued at once.+ */ u_int32_t st_log_queued_total; /* Total # of log recs. ever queued.+ */ u_int32_t st_log_records; /* Log records received and put.+ */ @@ -1191,8 +1262,8 @@ struct __db_rep_stat { u_int32_t st_pg_duplicated; /* Pages received multiply.+ */ u_int32_t st_pg_records; /* Pages received and stored.+ */ u_int32_t st_pg_requested; /* Pages missed and requested.+ */ - u_int32_t st_startup_complete; /* Site completed client sync-up. */ u_int32_t st_txns_applied; /* # of transactions applied.+ */ + u_int32_t st_startsync_delayed; /* # of STARTSYNC msgs delayed.+ */ /* Elections generally. */ u_int32_t st_elections; /* # of elections held.+ */ @@ -1210,6 +1281,17 @@ struct __db_rep_stat { int st_election_votes; /* Votes received in this round. */ u_int32_t st_election_sec; /* Last election time seconds. */ u_int32_t st_election_usec; /* Last election time useconds. */ +#endif +}; + +/* Replication Manager statistics. */ +struct __db_repmgr_stat { + u_int32_t st_perm_failed; /* # of insufficiently ack'ed msgs. */ + u_int32_t st_msgs_queued; /* # msgs queued for network delay. */ + u_int32_t st_msgs_dropped; /* # msgs discarded due to excessive + queue length. */ + u_int32_t st_connection_drop; /* Existing connections dropped. */ + u_int32_t st_connect_fail; /* Failed new connection attempts. */ }; /******************************************************* @@ -1299,7 +1381,7 @@ typedef enum { #define DB_BTREEOLDVER 8 /* Oldest btree version supported. */ #define DB_BTREEMAGIC 0x053162 -#define DB_HASHVERSION 8 /* Current hash version. */ +#define DB_HASHVERSION 9 /* Current hash version. */ #define DB_HASHOLDVER 7 /* Oldest hash version supported. */ #define DB_HASHMAGIC 0x061561 @@ -1314,39 +1396,37 @@ typedef enum { * DB access method and cursor operation values. Each value is an operation * code to which additional bit flags are added. */ -#define DB_AFTER 1 /* c_put() */ -#define DB_APPEND 2 /* put() */ -#define DB_BEFORE 3 /* c_put() */ -#define DB_CONSUME 4 /* get() */ -#define DB_CONSUME_WAIT 5 /* get() */ -#define DB_CURRENT 6 /* c_get(), c_put(), DB_LOGC->get() */ -#define DB_FIRST 7 /* c_get(), DB_LOGC->get() */ -#define DB_GET_BOTH 8 /* get(), c_get() */ -#define DB_GET_BOTHC 9 /* c_get() (internal) */ -#define DB_GET_BOTH_RANGE 10 /* get(), c_get() */ -#define DB_GET_RECNO 11 /* c_get() */ -#define DB_JOIN_ITEM 12 /* c_get(); do not do primary lookup */ -#define DB_KEYFIRST 13 /* c_put() */ -#define DB_KEYLAST 14 /* c_put() */ -#define DB_LAST 15 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT 16 /* c_get(), DB_LOGC->get() */ -#define DB_NEXT_DUP 17 /* c_get() */ -#define DB_NEXT_NODUP 18 /* c_get() */ -#define DB_NODUPDATA 19 /* put(), c_put() */ -#define DB_NOOVERWRITE 20 /* put() */ -#define DB_NOSYNC 21 /* close() */ -#define DB_POSITION 22 /* c_dup() */ -#define DB_PREV 23 /* c_get(), DB_LOGC->get() */ -#define DB_PREV_NODUP 24 /* c_get(), DB_LOGC->get() */ -#define DB_SET 25 /* c_get(), DB_LOGC->get() */ -#define DB_SET_LOCK_TIMEOUT 26 /* set_timout() */ -#define DB_SET_RANGE 27 /* c_get() */ -#define DB_SET_RECNO 28 /* get(), c_get() */ -#define DB_SET_TXN_NOW 29 /* set_timout() (internal) */ -#define DB_SET_TXN_TIMEOUT 30 /* set_timout() */ -#define DB_UPDATE_SECONDARY 31 /* c_get(), c_del() (internal) */ -#define DB_WRITECURSOR 32 /* cursor() */ -#define DB_WRITELOCK 33 /* cursor() (internal) */ +#define DB_AFTER 1 /* Dbc.put */ +#define DB_APPEND 2 /* Db.put */ +#define DB_BEFORE 3 /* Dbc.put */ +#define DB_CONSUME 4 /* Db.get */ +#define DB_CONSUME_WAIT 5 /* Db.get */ +#define DB_CURRENT 6 /* Dbc.get, Dbc.put, DbLogc.get */ +#define DB_FIRST 7 /* Dbc.get, DbLogc->get */ +#define DB_GET_BOTH 8 /* Db.get, Dbc.get */ +#define DB_GET_BOTHC 9 /* Dbc.get (internal) */ +#define DB_GET_BOTH_RANGE 10 /* Db.get, Dbc.get */ +#define DB_GET_RECNO 11 /* Dbc.get */ +#define DB_JOIN_ITEM 12 /* Dbc.get; don't do primary lookup */ +#define DB_KEYFIRST 13 /* Dbc.put */ +#define DB_KEYLAST 14 /* Dbc.put */ +#define DB_LAST 15 /* Dbc.get, DbLogc->get */ +#define DB_NEXT 16 /* Dbc.get, DbLogc->get */ +#define DB_NEXT_DUP 17 /* Dbc.get */ +#define DB_NEXT_NODUP 18 /* Dbc.get */ +#define DB_NODUPDATA 19 /* Db.put, Dbc.put */ +#define DB_NOOVERWRITE 20 /* Db.put */ +#define DB_NOSYNC 21 /* Db.close */ +#define DB_POSITION 22 /* Dbc.dup */ +#define DB_PREV 23 /* Dbc.get, DbLogc->get */ +#define DB_PREV_DUP 24 /* Dbc.get */ +#define DB_PREV_NODUP 25 /* Dbc.get */ +#define DB_SET 26 /* Dbc.get, DbLogc->get */ +#define DB_SET_RANGE 27 /* Dbc.get */ +#define DB_SET_RECNO 28 /* Db.get, Dbc.get */ +#define DB_UPDATE_SECONDARY 29 /* Dbc.get, Dbc.del (internal) */ +#define DB_WRITECURSOR 30 /* Db.cursor */ +#define DB_WRITELOCK 31 /* Db.cursor (internal) */ /* This has to change when the max opcode hits 255. */ #define DB_OPFLAGS_MASK 0x000000ff /* Mask for operations flags. */ @@ -1391,8 +1471,8 @@ typedef enum { #define DB_REP_IGNORE (-30983)/* This msg should be ignored.*/ #define DB_REP_ISPERM (-30982)/* Cached not written perm written.*/ #define DB_REP_JOIN_FAILURE (-30981)/* Unable to join replication group. */ -#define DB_REP_LOCKOUT (-30980)/* API/Replication lockout now. */ -#define DB_REP_NEWMASTER (-30979)/* We have learned of a new master. */ +#define DB_REP_LEASE_EXPIRED (-30980)/* Master lease has expired. */ +#define DB_REP_LOCKOUT (-30979)/* API/Replication lockout now. */ #define DB_REP_NEWSITE (-30978)/* New site entered system. */ #define DB_REP_NOTPERM (-30977)/* Permanent log record not written. */ #define DB_REP_UNAVAIL (-30976)/* Site cannot currently be reached. */ @@ -1404,17 +1484,19 @@ typedef enum { /* DB (private) error return codes. */ #define DB_ALREADY_ABORTED (-30899) #define DB_DELETED (-30898)/* Recovery file marked deleted. */ -#define DB_NEEDSPLIT (-30897)/* Page needs to be split. */ -#define DB_REP_BULKOVF (-30896)/* Rep bulk buffer overflow. */ -#define DB_REP_EGENCHG (-30895)/* Egen changed while in election. */ -#define DB_REP_LOGREADY (-30894)/* Rep log ready for recovery. */ -#define DB_REP_PAGEDONE (-30893)/* This page was already done. */ -#define DB_SURPRISE_KID (-30892)/* Child commit where parent +#define DB_EVENT_NOT_HANDLED (-30897)/* Forward event to application. */ +#define DB_NEEDSPLIT (-30896)/* Page needs to be split. */ +#define DB_REP_BULKOVF (-30895)/* Rep bulk buffer overflow. */ +#define DB_REP_EGENCHG (-30894)/* Egen changed while in election. */ +#define DB_REP_LOGREADY (-30893)/* Rep log ready for recovery. */ +#define DB_REP_NEWMASTER (-30892)/* We have learned of a new master. */ +#define DB_REP_PAGEDONE (-30891)/* This page was already done. */ +#define DB_SURPRISE_KID (-30890)/* Child commit where parent didn't know it was a parent. */ -#define DB_SWAPBYTES (-30891)/* Database needs byte swapping. */ -#define DB_TIMEOUT (-30890)/* Timed out waiting for election. */ -#define DB_TXN_CKP (-30889)/* Encountered ckp record in log. */ -#define DB_VERIFY_FATAL (-30888)/* DB->verify cannot proceed. */ +#define DB_SWAPBYTES (-30889)/* Database needs byte swapping. */ +#define DB_TIMEOUT (-30888)/* Timed out waiting for election. */ +#define DB_TXN_CKP (-30887)/* Encountered ckp record in log. */ +#define DB_VERIFY_FATAL (-30886)/* DB->verify cannot proceed. */ /* Database handle. */ struct __db { @@ -1422,6 +1504,7 @@ struct __db { * Public: owned by the application. *******************************************************/ u_int32_t pgsize; /* Database logical page size. */ + DB_CACHE_PRIORITY priority; /* Database priority in cache. */ /* Callbacks. */ int (*db_append_recno) __P((DB *, DBT *, db_recno_t)); @@ -1452,9 +1535,10 @@ struct __db { FNAME *log_filename; /* File's naming info for logging. */ db_pgno_t meta_pgno; /* Meta page number */ - u_int32_t lid; /* Locker id for handle locking. */ - u_int32_t cur_lid; /* Current handle lock holder. */ - u_int32_t associate_lid; /* Locker id for DB->associate call. */ + DB_LOCKER *locker; /* Locker for handle locking. */ + DB_LOCKER *cur_locker; /* Current handle lock holder. */ + DB_TXN *cur_txn; /* Opening transaction. */ + DB_LOCKER *associate_locker; /* Locker for DB->associate call. */ DB_LOCK handle_lock; /* Lock held on this handle. */ u_int cl_id; /* RPC: remote client id. */ @@ -1533,8 +1617,8 @@ struct __db { } s_secondaries; /* - * List entries for secondaries, and reference count of how - * many threads are updating this secondary (see __db_c_put). + * List entries for secondaries, and reference count of how many + * threads are updating this secondary (see Dbc.put). * * !!! * Note that these are synchronized by the primary's mutex, but @@ -1580,6 +1664,7 @@ struct __db { int (*del) __P((DB *, DB_TXN *, DBT *, u_int32_t)); void (*err) __P((DB *, int, const char *, ...)); void (*errx) __P((DB *, const char *, ...)); + int (*exists) __P((DB *, DB_TXN *, DBT *, u_int32_t)); int (*fd) __P((DB *, int *)); int (*get) __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int (*get_bt_minkey) __P((DB *, u_int32_t *)); @@ -1596,8 +1681,10 @@ struct __db { int (*get_lorder) __P((DB *, int *)); DB_MPOOLFILE *(*get_mpf) __P((DB *)); void (*get_msgfile) __P((DB *, FILE **)); + int (*get_multiple) __P((DB *)); int (*get_open_flags) __P((DB *, u_int32_t *)); int (*get_pagesize) __P((DB *, u_int32_t *)); + int (*get_priority) __P((DB *, DB_CACHE_PRIORITY *)); int (*get_q_extentsize) __P((DB *, u_int32_t *)); int (*get_re_delim) __P((DB *, int *)); int (*get_re_len) __P((DB *, u_int32_t *)); @@ -1633,6 +1720,8 @@ struct __db { void (*set_errpfx) __P((DB *, const char *)); int (*set_feedback) __P((DB *, void (*)(DB *, int, int))); int (*set_flags) __P((DB *, u_int32_t)); + int (*set_h_compare) + __P((DB *, int (*)(DB *, const DBT *, const DBT *))); int (*set_h_ffactor) __P((DB *, u_int32_t)); int (*set_h_hash) __P((DB *, u_int32_t (*)(DB *, const void *, u_int32_t))); @@ -1642,6 +1731,7 @@ struct __db { void (*set_msgfile) __P((DB *, FILE *)); int (*set_pagesize) __P((DB *, u_int32_t)); int (*set_paniccall) __P((DB *, void (*)(DB_ENV *, int))); + int (*set_priority) __P((DB *, DB_CACHE_PRIORITY)); int (*set_q_extentsize) __P((DB *, u_int32_t)); int (*set_re_delim) __P((DB *, int)); int (*set_re_len) __P((DB *, u_int32_t)); @@ -1685,36 +1775,35 @@ struct __db { int preserve_fid; /* Do not free fileid on close. */ #define DB_AM_CHKSUM 0x00000001 /* Checksumming */ -#define DB_AM_CL_WRITER 0x00000002 /* Allow writes in client replica */ -#define DB_AM_COMPENSATE 0x00000004 /* Created by compensating txn */ -#define DB_AM_CREATED 0x00000008 /* Database was created upon open */ -#define DB_AM_CREATED_MSTR 0x00000010 /* Encompassing file was created */ -#define DB_AM_DBM_ERROR 0x00000020 /* Error in DBM/NDBM database */ -#define DB_AM_DELIMITER 0x00000040 /* Variable length delimiter set */ -#define DB_AM_DISCARD 0x00000080 /* Discard any cached pages */ -#define DB_AM_DUP 0x00000100 /* DB_DUP */ -#define DB_AM_DUPSORT 0x00000200 /* DB_DUPSORT */ -#define DB_AM_ENCRYPT 0x00000400 /* Encryption */ -#define DB_AM_FIXEDLEN 0x00000800 /* Fixed-length records */ -#define DB_AM_INMEM 0x00001000 /* In-memory; no sync on close */ -#define DB_AM_INORDER 0x00002000 /* DB_INORDER */ -#define DB_AM_IN_RENAME 0x00004000 /* File is being renamed */ -#define DB_AM_NOT_DURABLE 0x00008000 /* Do not log changes */ -#define DB_AM_OPEN_CALLED 0x00010000 /* DB->open called */ -#define DB_AM_PAD 0x00020000 /* Fixed-length record pad */ -#define DB_AM_PGDEF 0x00040000 /* Page size was defaulted */ -#define DB_AM_RDONLY 0x00080000 /* Database is readonly */ -#define DB_AM_READ_UNCOMMITTED 0x00100000 /* Support degree 1 isolation */ -#define DB_AM_RECNUM 0x00200000 /* DB_RECNUM */ -#define DB_AM_RECOVER 0x00400000 /* DB opened by recovery routine */ -#define DB_AM_RENUMBER 0x00800000 /* DB_RENUMBER */ -#define DB_AM_REVSPLITOFF 0x01000000 /* DB_REVSPLITOFF */ -#define DB_AM_SECONDARY 0x02000000 /* Database is a secondary index */ -#define DB_AM_SNAPSHOT 0x04000000 /* DB_SNAPSHOT */ -#define DB_AM_SUBDB 0x08000000 /* Subdatabases supported */ -#define DB_AM_SWAP 0x10000000 /* Pages need to be byte-swapped */ -#define DB_AM_TXN 0x20000000 /* Opened in a transaction */ -#define DB_AM_VERIFYING 0x40000000 /* DB handle is in the verifier */ +#define DB_AM_COMPENSATE 0x00000002 /* Created by compensating txn */ +#define DB_AM_CREATED 0x00000004 /* Database was created upon open */ +#define DB_AM_CREATED_MSTR 0x00000008 /* Encompassing file was created */ +#define DB_AM_DBM_ERROR 0x00000010 /* Error in DBM/NDBM database */ +#define DB_AM_DELIMITER 0x00000020 /* Variable length delimiter set */ +#define DB_AM_DISCARD 0x00000040 /* Discard any cached pages */ +#define DB_AM_DUP 0x00000080 /* DB_DUP */ +#define DB_AM_DUPSORT 0x00000100 /* DB_DUPSORT */ +#define DB_AM_ENCRYPT 0x00000200 /* Encryption */ +#define DB_AM_FIXEDLEN 0x00000400 /* Fixed-length records */ +#define DB_AM_INMEM 0x00000800 /* In-memory; no sync on close */ +#define DB_AM_INORDER 0x00001000 /* DB_INORDER */ +#define DB_AM_IN_RENAME 0x00002000 /* File is being renamed */ +#define DB_AM_NOT_DURABLE 0x00004000 /* Do not log changes */ +#define DB_AM_OPEN_CALLED 0x00008000 /* DB->open called */ +#define DB_AM_PAD 0x00010000 /* Fixed-length record pad */ +#define DB_AM_PGDEF 0x00020000 /* Page size was defaulted */ +#define DB_AM_RDONLY 0x00040000 /* Database is readonly */ +#define DB_AM_READ_UNCOMMITTED 0x00080000 /* Support degree 1 isolation */ +#define DB_AM_RECNUM 0x00100000 /* DB_RECNUM */ +#define DB_AM_RECOVER 0x00200000 /* DB opened by recovery routine */ +#define DB_AM_RENUMBER 0x00400000 /* DB_RENUMBER */ +#define DB_AM_REVSPLITOFF 0x00800000 /* DB_REVSPLITOFF */ +#define DB_AM_SECONDARY 0x01000000 /* Database is a secondary index */ +#define DB_AM_SNAPSHOT 0x02000000 /* DB_SNAPSHOT */ +#define DB_AM_SUBDB 0x04000000 /* Subdatabases supported */ +#define DB_AM_SWAP 0x08000000 /* Pages need to be byte-swapped */ +#define DB_AM_TXN 0x10000000 /* Opened in a transaction */ +#define DB_AM_VERIFYING 0x20000000 /* DB handle is in the verifier */ u_int32_t orig_flags; /* Flags at open, for refresh */ u_int32_t flags; }; @@ -1785,6 +1874,7 @@ struct __db { struct __dbc { DB *dbp; /* Related DB access method. */ DB_TXN *txn; /* Associated transaction. */ + DB_CACHE_PRIORITY priority; /* Priority in cache. */ /* * Active/free cursor queues. @@ -1818,7 +1908,7 @@ struct __dbc { DBT my_rdata; /* Space for returned data. */ void *lref; /* Reference to default locker. */ - u_int32_t locker; /* Locker for this operation. */ + DB_LOCKER *locker; /* Locker for this operation. */ DBT lock_dbt; /* DBT referencing lock. */ DB_LOCK_ILOCK lock; /* Object to be locked. */ DB_LOCK mylock; /* CDB lock held on this cursor. */ @@ -1830,6 +1920,18 @@ struct __dbc { DBC_INTERNAL *internal; /* Access method private. */ /* DBC PUBLIC HANDLE LIST BEGIN */ + int (*close) __P((DBC *)); + int (*count) __P((DBC *, db_recno_t *, u_int32_t)); + int (*del) __P((DBC *, u_int32_t)); + int (*dup) __P((DBC *, DBC **, u_int32_t)); + int (*get) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*get_priority) __P((DBC *, DB_CACHE_PRIORITY *)); + int (*pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); + int (*put) __P((DBC *, DBT *, DBT *, u_int32_t)); + int (*set_priority) __P((DBC *, DB_CACHE_PRIORITY)); + /* DBC PUBLIC HANDLE LIST END */ + + /* The following are the method names deprecated in the 4.6 release. */ int (*c_close) __P((DBC *)); int (*c_count) __P((DBC *, db_recno_t *, u_int32_t)); int (*c_del) __P((DBC *, u_int32_t)); @@ -1837,16 +1939,15 @@ struct __dbc { int (*c_get) __P((DBC *, DBT *, DBT *, u_int32_t)); int (*c_pget) __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); int (*c_put) __P((DBC *, DBT *, DBT *, u_int32_t)); - /* DBC PUBLIC HANDLE LIST END */ /* DBC PRIVATE HANDLE LIST BEGIN */ - int (*c_am_bulk) __P((DBC *, DBT *, u_int32_t)); - int (*c_am_close) __P((DBC *, db_pgno_t, int *)); - int (*c_am_del) __P((DBC *)); - int (*c_am_destroy) __P((DBC *)); - int (*c_am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); - int (*c_am_writelock) __P((DBC *)); + int (*am_bulk) __P((DBC *, DBT *, u_int32_t)); + int (*am_close) __P((DBC *, db_pgno_t, int *)); + int (*am_del) __P((DBC *)); + int (*am_destroy) __P((DBC *)); + int (*am_get) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_put) __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); + int (*am_writelock) __P((DBC *)); /* DBC PRIVATE HANDLE LIST END */ /* @@ -1887,6 +1988,7 @@ struct __db_bt_stat { u_int32_t bt_metaflags; /* Metadata flags. */ u_int32_t bt_nkeys; /* Number of unique keys. */ u_int32_t bt_ndata; /* Number of data items. */ + u_int32_t bt_pagecnt; /* Page count. */ u_int32_t bt_pagesize; /* Page size. */ u_int32_t bt_minkey; /* Minkey value. */ u_int32_t bt_re_len; /* Fixed-length record length. */ @@ -1926,6 +2028,7 @@ struct __db_h_stat { u_int32_t hash_metaflags; /* Metadata flags. */ u_int32_t hash_nkeys; /* Number of unique keys. */ u_int32_t hash_ndata; /* Number of data items. */ + u_int32_t hash_pagecnt; /* Page count. */ u_int32_t hash_pagesize; /* Page size. */ u_int32_t hash_ffactor; /* Fill factor specified at create. */ u_int32_t hash_buckets; /* Number of hash buckets. */ @@ -1997,10 +2100,12 @@ struct __db_env { * there are ever more than 32 entries, convert to a bit array. */ #define DB_VERB_DEADLOCK 0x0001 /* Deadlock detection information. */ -#define DB_VERB_RECOVERY 0x0002 /* Recovery information. */ -#define DB_VERB_REGISTER 0x0004 /* Dump waits-for table. */ -#define DB_VERB_REPLICATION 0x0008 /* Replication information. */ -#define DB_VERB_WAITSFOR 0x0010 /* Dump waits-for table. */ +#define DB_VERB_FILEOPS 0x0002 /* Major file operations. */ +#define DB_VERB_FILEOPS_ALL 0x0004 /* All file operations. */ +#define DB_VERB_RECOVERY 0x0008 /* Recovery information. */ +#define DB_VERB_REGISTER 0x0010 /* Dump waits-for table. */ +#define DB_VERB_REPLICATION 0x0020 /* Replication information. */ +#define DB_VERB_WAITSFOR 0x0040 /* Dump waits-for table. */ u_int32_t verbose; /* Verbose output. */ void *app_private; /* Application-private handle. */ @@ -2037,14 +2142,15 @@ struct __db_env { int lg_filemode; /* Log file permission mode. */ /* Memory pool. */ - u_int32_t mp_gbytes; /* Cachesize: GB. */ - u_int32_t mp_bytes; /* Cachesize: Bytes. */ - u_int mp_ncache; /* Number of cache regions. */ + u_int mp_ncache; /* Initial number of cache regions. */ + u_int32_t mp_gbytes; /* Cache size: GB. */ + u_int32_t mp_bytes; /* Cache size: bytes. */ + u_int32_t mp_max_gbytes; /* Maximum cache size: GB. */ + u_int32_t mp_max_bytes; /* Maximum cache size: bytes. */ size_t mp_mmapsize; /* Maximum file size for mmap. */ int mp_maxopenfd; /* Maximum open file descriptors. */ int mp_maxwrite; /* Maximum buffers to write. */ - int /* Sleep after writing max buffers. */ - mp_maxwrite_sleep; + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ /* Transactions. */ u_int32_t tx_max; /* Maximum number of transactions. */ @@ -2059,6 +2165,8 @@ struct __db_env { /******************************************************* * Private: owned by DB. *******************************************************/ + db_mutex_t mtx_env; /* General DbEnv structure mutex. */ + pid_t pid_cache; /* Cached process ID. */ /* User files, paths. */ @@ -2107,13 +2215,21 @@ struct __db_env { long shm_key; /* shmget(2) key. */ /* - * List of open DB handles for this DB_ENV, used for cursor - * adjustment. Must be protected for multi-threaded support. + * List of open file handles for this DB_ENV. Must be protected + * for multi-threaded support. * * !!! - * As this structure is allocated in per-process memory, the - * mutex may need to be stored elsewhere on architectures unable - * to support mutexes in heap memory, e.g. HP/UX 9. + * Explicit representation of structure in queue.h. + * TAILQ_HEAD(__fdlist, __fh_t); + */ + struct __fdlist { + struct __fh_t *tqh_first; + struct __fh_t **tqh_last; + } fdlist; + + /* + * List of open DB handles for this DB_ENV, used for cursor + * adjustment. Must be protected for multi-threaded support. * * !!! * Explicit representation of structure in queue.h. @@ -2173,6 +2289,7 @@ struct __db_env { int (*failchk) __P((DB_ENV *, u_int32_t)); int (*fileid_reset) __P((DB_ENV *, const char *, u_int32_t)); int (*get_cachesize) __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); + int (*get_cache_max) __P((DB_ENV *, u_int32_t *, u_int32_t *)); int (*get_data_dirs) __P((DB_ENV *, const char ***)); int (*get_encrypt_flags) __P((DB_ENV *, u_int32_t *)); void (*get_errfile) __P((DB_ENV *, FILE **)); @@ -2190,11 +2307,12 @@ struct __db_env { int (*get_lk_max_locks) __P((DB_ENV *, u_int32_t *)); int (*get_lk_max_objects) __P((DB_ENV *, u_int32_t *)); int (*get_mp_max_openfd) __P((DB_ENV *, int *)); - int (*get_mp_max_write) __P((DB_ENV *, int *, int *)); + int (*get_mp_max_write) __P((DB_ENV *, int *, db_timeout_t *)); int (*get_mp_mmapsize) __P((DB_ENV *, size_t *)); void (*get_msgfile) __P((DB_ENV *, FILE **)); int (*get_open_flags) __P((DB_ENV *, u_int32_t *)); int (*get_shm_key) __P((DB_ENV *, long *)); + int (*get_thread_count) __P((DB_ENV *, u_int32_t *)); int (*get_timeout) __P((DB_ENV *, db_timeout_t *, u_int32_t)); int (*get_tmp_dir) __P((DB_ENV *, const char **)); int (*get_tx_max) __P((DB_ENV *, u_int32_t *)); @@ -2245,8 +2363,7 @@ struct __db_env { int (*mutex_unlock) __P((DB_ENV *, db_mutex_t)); int (*open) __P((DB_ENV *, const char *, u_int32_t, int)); int (*remove) __P((DB_ENV *, const char *, u_int32_t)); - int (*rep_elect) - __P((DB_ENV *, int, int, int *, u_int32_t)); + int (*rep_elect) __P((DB_ENV *, int, int, u_int32_t)); int (*rep_flush) __P((DB_ENV *)); int (*rep_get_config) __P((DB_ENV *, u_int32_t, int *)); int (*rep_get_limit) __P((DB_ENV *, u_int32_t *, u_int32_t *)); @@ -2254,8 +2371,9 @@ struct __db_env { int (*rep_get_priority) __P((DB_ENV *, int *)); int (*rep_get_timeout) __P((DB_ENV *, int, u_int32_t *)); int (*rep_process_message) - __P((DB_ENV *, DBT *, DBT *, int *, DB_LSN *)); + __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); int (*rep_set_config) __P((DB_ENV *, u_int32_t, int)); + int (*rep_set_lease) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_limit) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*rep_set_nsites) __P((DB_ENV *, int)); int (*rep_set_priority) __P((DB_ENV *, int)); @@ -2275,11 +2393,14 @@ struct __db_env { int (*repmgr_site_list) __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); int (*repmgr_start) __P((DB_ENV *, int, u_int32_t)); + int (*repmgr_stat) __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); + int (*repmgr_stat_print) __P((DB_ENV *, u_int32_t)); int (*set_alloc) __P((DB_ENV *, void *(*)(size_t), void *(*)(void *, size_t), void (*)(void *))); int (*set_app_dispatch) __P((DB_ENV *, int (*)(DB_ENV *, DBT *, DB_LSN *, db_recops))); int (*set_cachesize) __P((DB_ENV *, u_int32_t, u_int32_t, int)); + int (*set_cache_max) __P((DB_ENV *, u_int32_t, u_int32_t)); int (*set_data_dir) __P((DB_ENV *, const char *)); int (*set_encrypt) __P((DB_ENV *, const char *, u_int32_t)); void (*set_errcall) __P((DB_ENV *, @@ -2304,7 +2425,7 @@ struct __db_env { int (*set_lk_max_locks) __P((DB_ENV *, u_int32_t)); int (*set_lk_max_objects) __P((DB_ENV *, u_int32_t)); int (*set_mp_max_openfd) __P((DB_ENV *, int)); - int (*set_mp_max_write) __P((DB_ENV *, int, int)); + int (*set_mp_max_write) __P((DB_ENV *, int, db_timeout_t)); int (*set_mp_mmapsize) __P((DB_ENV *, size_t)); void (*set_msgcall) __P((DB_ENV *, void (*)(const DB_ENV *, const char *))); @@ -2356,33 +2477,35 @@ struct __db_env { #define DB_ENV_AUTO_COMMIT 0x00000001 /* DB_AUTO_COMMIT. */ #define DB_ENV_CDB 0x00000002 /* DB_INIT_CDB. */ #define DB_ENV_CDB_ALLDB 0x00000004 /* CDB environment wide locking. */ -#define DB_ENV_CREATE 0x00000008 /* DB_CREATE set. */ -#define DB_ENV_DBLOCAL 0x00000010 /* Environment for a private DB. */ -#define DB_ENV_DIRECT_DB 0x00000020 /* DB_DIRECT_DB set. */ -#define DB_ENV_DIRECT_LOG 0x00000040 /* DB_DIRECT_LOG set. */ -#define DB_ENV_DSYNC_DB 0x00000080 /* DB_DSYNC_DB set. */ -#define DB_ENV_DSYNC_LOG 0x00000100 /* DB_DSYNC_LOG set. */ -#define DB_ENV_FATAL 0x00000200 /* Doing fatal recovery in env. */ -#define DB_ENV_LOCKDOWN 0x00000400 /* DB_LOCKDOWN set. */ -#define DB_ENV_LOG_AUTOREMOVE 0x00000800 /* DB_LOG_AUTOREMOVE set. */ -#define DB_ENV_LOG_INMEMORY 0x00001000 /* DB_LOG_INMEMORY set. */ -#define DB_ENV_MULTIVERSION 0x00002000 /* DB_MULTIVERSION set. */ -#define DB_ENV_NOLOCKING 0x00004000 /* DB_NOLOCKING set. */ -#define DB_ENV_NOMMAP 0x00008000 /* DB_NOMMAP set. */ -#define DB_ENV_NOPANIC 0x00010000 /* Okay if panic set. */ -#define DB_ENV_OPEN_CALLED 0x00020000 /* DB_ENV->open called. */ -#define DB_ENV_OVERWRITE 0x00040000 /* DB_OVERWRITE set. */ -#define DB_ENV_PRIVATE 0x00080000 /* DB_PRIVATE set. */ -#define DB_ENV_REGION_INIT 0x00100000 /* DB_REGION_INIT set. */ -#define DB_ENV_RPCCLIENT 0x00200000 /* DB_RPCCLIENT set. */ -#define DB_ENV_RPCCLIENT_GIVEN 0x00400000 /* User-supplied RPC client struct */ -#define DB_ENV_SYSTEM_MEM 0x00800000 /* DB_SYSTEM_MEM set. */ -#define DB_ENV_THREAD 0x01000000 /* DB_THREAD set. */ -#define DB_ENV_TIME_NOTGRANTED 0x02000000 /* DB_TIME_NOTGRANTED set. */ -#define DB_ENV_TXN_NOSYNC 0x04000000 /* DB_TXN_NOSYNC set. */ -#define DB_ENV_TXN_SNAPSHOT 0x08000000 /* DB_TXN_SNAPSHOT set. */ -#define DB_ENV_TXN_WRITE_NOSYNC 0x10000000 /* DB_TXN_WRITE_NOSYNC set. */ -#define DB_ENV_YIELDCPU 0x20000000 /* DB_YIELDCPU set. */ +#define DB_ENV_DBLOCAL 0x00000008 /* Environment for a private DB. */ +#define DB_ENV_DIRECT_DB 0x00000010 /* DB_DIRECT_DB set. */ +#define DB_ENV_DIRECT_LOG 0x00000020 /* DB_DIRECT_LOG set. */ +#define DB_ENV_DSYNC_DB 0x00000040 /* DB_DSYNC_DB set. */ +#define DB_ENV_DSYNC_LOG 0x00000080 /* DB_DSYNC_LOG set. */ +#define DB_ENV_LOCKDOWN 0x00000100 /* DB_LOCKDOWN set. */ +#define DB_ENV_LOG_AUTOREMOVE 0x00000200 /* DB_LOG_AUTOREMOVE set. */ +#define DB_ENV_LOG_INMEMORY 0x00000400 /* DB_LOG_INMEMORY set. */ +#define DB_ENV_MULTIVERSION 0x00000800 /* DB_MULTIVERSION set. */ +#define DB_ENV_NOLOCKING 0x00001000 /* DB_NOLOCKING set. */ +#define DB_ENV_NOMMAP 0x00002000 /* DB_NOMMAP set. */ +#define DB_ENV_NOPANIC 0x00004000 /* Okay if panic set. */ +#define DB_ENV_NO_OUTPUT_SET 0x00008000 /* No output channel set. */ +#define DB_ENV_OPEN_CALLED 0x00010000 /* DB_ENV->open called. */ +#define DB_ENV_OVERWRITE 0x00020000 /* DB_OVERWRITE set. */ +#define DB_ENV_PRIVATE 0x00040000 /* DB_PRIVATE set. */ +#define DB_ENV_RECOVER_FATAL 0x00080000 /* Doing fatal recovery in env. */ +#define DB_ENV_REF_COUNTED 0x00100000 /* Region references this handle. */ +#define DB_ENV_REGION_INIT 0x00200000 /* DB_REGION_INIT set. */ +#define DB_ENV_RPCCLIENT 0x00400000 /* DB_RPCCLIENT set. */ +#define DB_ENV_RPCCLIENT_GIVEN 0x00800000 /* User-supplied RPC client struct */ +#define DB_ENV_SYSTEM_MEM 0x01000000 /* DB_SYSTEM_MEM set. */ +#define DB_ENV_THREAD 0x02000000 /* DB_THREAD set. */ +#define DB_ENV_TIME_NOTGRANTED 0x04000000 /* DB_TIME_NOTGRANTED set. */ +#define DB_ENV_TXN_NOSYNC 0x08000000 /* DB_TXN_NOSYNC set. */ +#define DB_ENV_TXN_NOWAIT 0x10000000 /* DB_TXN_NOWAIT set. */ +#define DB_ENV_TXN_SNAPSHOT 0x20000000 /* DB_TXN_SNAPSHOT set. */ +#define DB_ENV_TXN_WRITE_NOSYNC 0x40000000 /* DB_TXN_WRITE_NOSYNC set. */ +#define DB_ENV_YIELDCPU 0x80000000 /* DB_YIELDCPU set. */ u_int32_t flags; }; diff --git a/db/dbinc/db_185.in b/db/dbinc/db_185.in index bf3af8abb..7c4cb1af1 100644 --- a/db/dbinc/db_185.in +++ b/db/dbinc/db_185.in @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_185.in,v 12.5 2006/08/24 14:45:28 bostic Exp $ + * $Id: db_185.in,v 12.7 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_185_H_ diff --git a/db/dbinc/db_am.h b/db/dbinc/db_am.h index 887255eb1..5775491dd 100644 --- a/db/dbinc/db_am.h +++ b/db/dbinc/db_am.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_am.h,v 12.17 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_am.h,v 12.29 2007/06/13 19:06:07 bostic Exp $ */ #ifndef _DB_AM_H_ #define _DB_AM_H_ @@ -55,6 +54,8 @@ extern "C" { COMPQUIET(mpf, NULL); \ if ((ret = func(dbenv, dbtp->data, &argp)) != 0) \ goto out; \ + if (info != NULL) \ + argp->txnp->td = ((DB_TXNHEAD *)info)->td; \ if ((ret = __dbreg_id_to_db(dbenv, argp->txnp, \ &file_dbp, argp->fileid, inc_count)) != 0) { \ if (ret == DB_DELETED) { \ @@ -76,7 +77,7 @@ extern "C" { if (argp != NULL) \ __os_free(dbenv, argp); \ if (dbc != NULL && \ - (__t_ret = __db_c_close(dbc)) != 0 && ret == 0) \ + (__t_ret = __dbc_close(dbc)) != 0 && ret == 0) \ ret = __t_ret; \ } \ return (ret) @@ -118,8 +119,9 @@ extern "C" { goto cont; \ } #endif -#define REC_DIRTY(mpf, pagep) \ - if ((ret = __memp_dirty(mpf, pagep, NULL, DB_MPOOL_EDIT)) != 0) {\ +#define REC_DIRTY(mpf, priority, pagep) \ + if ((ret = __memp_dirty(mpf, \ + pagep, NULL, priority, DB_MPOOL_EDIT)) != 0) { \ ret = __db_pgerr(file_dbp, PGNO(*(pagep)), ret); \ goto out; \ } @@ -175,12 +177,12 @@ typedef struct { /* * A database should be required to be readonly if it's been explicitly - * specified as such or if we're a client in a replicated environment and - * we don't have the special "client-writer" designation. + * specified as such or if we're a client in a replicated environment + * and the user did not specify DB_TXN_NOT_DURABLE. */ #define DB_IS_READONLY(dbp) \ (F_ISSET(dbp, DB_AM_RDONLY) || \ - (IS_REP_CLIENT((dbp)->dbenv))) + (IS_REP_CLIENT((dbp)->dbenv) && !F_ISSET((dbp), DB_AM_NOT_DURABLE))) /* * For portability, primary keys that are record numbers are stored in @@ -210,10 +212,32 @@ typedef struct { TAILQ_PREV((tdbp), __dblist, dblistlinks) != NULL && \ TAILQ_PREV((tdbp), \ __dblist, dblistlinks)->adj_fileid == (dbp)->adj_fileid;\ - (tdbp) = TAILQ_PREV((tdbp), __dblist, dblistlinks)) \ + (tdbp) = TAILQ_PREV((tdbp), __dblist, dblistlinks)) \ ; \ } while (0) +/* + * Macros used to implement a binary search algorithm. Shared between the + * btree and hash implementations. + */ +#define DB_BINARY_SEARCH_FOR(base, limit, page, adjust) \ + for (base = 0, limit = NUM_ENT(page) / (db_indx_t)(adjust); \ + (limit) != 0; (limit) >>= 1) + +#define DB_BINARY_SEARCH_INCR(index, base, limit, adjust) \ + index = (base) + (((limit) >> 1) * (adjust)) + +#define DB_BINARY_SEARCH_SHIFT_BASE(index, base, limit, adjust) do { \ + base = (index) + (adjust); \ + --(limit); \ +} while (0) + +/* + * Flags to __db_chk_meta. + */ +#define DB_CHK_META 0x01 /* Checksum the meta page. */ +#define DB_CHK_NOLSN 0x02 /* Don't check the LSN. */ + #if defined(__cplusplus) } #endif diff --git a/db/dbinc/db_cxx.in b/db/dbinc/db_cxx.in index ca08f98d8..adf129337 100644 --- a/db/dbinc/db_cxx.in +++ b/db/dbinc/db_cxx.in @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: db_cxx.in,v 12.28 2006/09/13 14:53:37 mjc Exp $ + * $Id: db_cxx.in,v 12.40 2007/06/28 13:02:50 mjc Exp $ */ #ifndef _DB_CXX_H_ @@ -162,6 +161,8 @@ extern "C" { (DB *, const DBT *, const DBT *); typedef int (*dup_compare_fcn_type) /*C++ version available*/ (DB *, const DBT *, const DBT *); + typedef int (*h_compare_fcn_type) /*C++ version available*/ + (DB *, const DBT *, const DBT *); typedef u_int32_t (*h_hash_fcn_type) /*C++ version available*/ (DB *, const void *, u_int32_t); typedef int (*pgin_fcn_type) @@ -183,93 +184,98 @@ public: // These methods exactly match those in the C interface. // - virtual int associate(DbTxn *txn, Db *secondary, - int (*callback)(Db *, const Dbt *, const Dbt *, Dbt *), - u_int32_t flags); + virtual int associate(DbTxn *txn, Db *secondary, int (*callback) + (Db *, const Dbt *, const Dbt *, Dbt *), u_int32_t flags); virtual int close(u_int32_t flags); - virtual int compact(DbTxn *txnid, Dbt *start, Dbt *stop, - DB_COMPACT *c_data, u_int32_t flags, Dbt *end); + virtual int compact(DbTxn *txnid, Dbt *start, + Dbt *stop, DB_COMPACT *c_data, u_int32_t flags, Dbt *end); virtual int cursor(DbTxn *txnid, Dbc **cursorp, u_int32_t flags); virtual int del(DbTxn *txnid, Dbt *key, u_int32_t flags); virtual void err(int, const char *, ...); virtual void errx(const char *, ...); + virtual int exists(DbTxn *txnid, Dbt *key, u_int32_t flags); virtual int fd(int *fdp); virtual int get(DbTxn *txnid, Dbt *key, Dbt *data, u_int32_t flags); - virtual void *get_app_private() const; + virtual int get_bt_minkey(u_int32_t *); virtual int get_byteswapped(int *); + virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int get_dbname(const char **, const char **); + virtual int get_encrypt_flags(u_int32_t *); + virtual void get_errfile(FILE **); + virtual void get_errpfx(const char **); + virtual int get_flags(u_int32_t *); + virtual int get_h_ffactor(u_int32_t *); + virtual int get_h_nelem(u_int32_t *); + virtual int get_lorder(int *); + virtual void get_msgfile(FILE **); + virtual int get_multiple(); virtual int get_open_flags(u_int32_t *); - virtual int get_type(DBTYPE *); + virtual int get_pagesize(u_int32_t *); + virtual int get_priority(DB_CACHE_PRIORITY *); + virtual int get_q_extentsize(u_int32_t *); + virtual int get_re_delim(int *); + virtual int get_re_len(u_int32_t *); + virtual int get_re_pad(int *); + virtual int get_re_source(const char **); virtual int get_transactional(); + virtual int get_type(DBTYPE *); virtual int join(Dbc **curslist, Dbc **dbcp, u_int32_t flags); virtual int key_range(DbTxn *, Dbt *, DB_KEY_RANGE *, u_int32_t); virtual int open(DbTxn *txnid, const char *, const char *subname, DBTYPE, u_int32_t, int); - virtual int pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Dbt *data, - u_int32_t flags); + virtual int pget(DbTxn *txnid, + Dbt *key, Dbt *pkey, Dbt *data, u_int32_t flags); virtual int put(DbTxn *, Dbt *, Dbt *, u_int32_t); virtual int remove(const char *, const char *, u_int32_t); virtual int rename(const char *, const char *, const char *, u_int32_t); - virtual int set_alloc(db_malloc_fcn_type, db_realloc_fcn_type, - db_free_fcn_type); + virtual int set_alloc( + db_malloc_fcn_type, db_realloc_fcn_type, db_free_fcn_type); virtual void set_app_private(void *); virtual int set_append_recno(int (*)(Db *, Dbt *, db_recno_t)); virtual int set_bt_compare(bt_compare_fcn_type); /*deprecated*/ virtual int set_bt_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_bt_minkey(u_int32_t *); virtual int set_bt_minkey(u_int32_t); virtual int set_bt_prefix(bt_prefix_fcn_type); /*deprecated*/ virtual int set_bt_prefix(size_t (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int set_cachesize(u_int32_t, u_int32_t, int); virtual int set_dup_compare(dup_compare_fcn_type); /*deprecated*/ virtual int set_dup_compare(int (*)(Db *, const Dbt *, const Dbt *)); - virtual int get_encrypt_flags(u_int32_t *); virtual int set_encrypt(const char *, u_int32_t); virtual void set_errcall( void (*)(const DbEnv *, const char *, const char *)); - virtual void get_errfile(FILE **); virtual void set_errfile(FILE *); - virtual void get_errpfx(const char **); virtual void set_errpfx(const char *); virtual int set_feedback(void (*)(Db *, int, int)); - virtual int get_flags(u_int32_t *); virtual int set_flags(u_int32_t); - virtual int get_h_ffactor(u_int32_t *); + virtual int set_h_compare(h_compare_fcn_type); /*deprecated*/ + virtual int set_h_compare(int (*)(Db *, const Dbt *, const Dbt *)); virtual int set_h_ffactor(u_int32_t); virtual int set_h_hash(h_hash_fcn_type); /*deprecated*/ virtual int set_h_hash(u_int32_t (*)(Db *, const void *, u_int32_t)); - virtual int get_h_nelem(u_int32_t *); virtual int set_h_nelem(u_int32_t); - virtual int get_lorder(int *); virtual int set_lorder(int); virtual void set_msgcall(void (*)(const DbEnv *, const char *)); - virtual void get_msgfile(FILE **); virtual void set_msgfile(FILE *); - virtual int get_pagesize(u_int32_t *); virtual int set_pagesize(u_int32_t); virtual int set_paniccall(void (*)(DbEnv *, int)); - virtual int get_re_delim(int *); + virtual int set_priority(DB_CACHE_PRIORITY); + virtual int set_q_extentsize(u_int32_t); virtual int set_re_delim(int); - virtual int get_re_len(u_int32_t *); virtual int set_re_len(u_int32_t); - virtual int get_re_pad(int *); virtual int set_re_pad(int); - virtual int get_re_source(const char **); virtual int set_re_source(const char *); - virtual int get_q_extentsize(u_int32_t *); - virtual int set_q_extentsize(u_int32_t); virtual int stat(DbTxn *, void *sp, u_int32_t flags); virtual int stat_print(u_int32_t flags); virtual int sync(u_int32_t flags); virtual int truncate(DbTxn *, u_int32_t *, u_int32_t); virtual int upgrade(const char *name, u_int32_t flags); - virtual int verify(const char *, const char *, __DB_STD(ostream) *, - u_int32_t); + virtual int verify( + const char *, const char *, __DB_STD(ostream) *, u_int32_t); // These additional methods are not in the C interface, and // are only available for C++. // + virtual void *get_app_private() const; virtual __DB_STD(ostream) *get_error_stream(); virtual void set_error_stream(__DB_STD(ostream) *); virtual __DB_STD(ostream) *get_message_stream(); @@ -326,6 +332,7 @@ public: size_t (*bt_prefix_callback_)(Db *, const Dbt *, const Dbt *); int (*dup_compare_callback_)(Db *, const Dbt *, const Dbt *); void (*feedback_callback_)(Db *, int, int); + int (*h_compare_callback_)(Db *, const Dbt *, const Dbt *); u_int32_t (*h_hash_callback_)(Db *, const void *, u_int32_t); }; @@ -342,8 +349,10 @@ public: int del(u_int32_t flags); int dup(Dbc** cursorp, u_int32_t flags); int get(Dbt* key, Dbt *data, u_int32_t flags); + int get_priority(DB_CACHE_PRIORITY *priorityp); int pget(Dbt* key, Dbt* pkey, Dbt *data, u_int32_t flags); int put(Dbt* key, Dbt *data, u_int32_t flags); + int set_priority(DB_CACHE_PRIORITY priority); private: // No data is permitted in this class (see comment at top) @@ -408,6 +417,8 @@ public: virtual void set_app_private(void *); virtual int get_cachesize(u_int32_t *, u_int32_t *, int *); virtual int set_cachesize(u_int32_t, u_int32_t, int); + virtual int get_cache_max(u_int32_t *, u_int32_t *); + virtual int set_cache_max(u_int32_t, u_int32_t); virtual int get_data_dirs(const char ***); virtual int set_data_dir(const char *); virtual int get_encrypt_flags(u_int32_t *); @@ -451,8 +462,8 @@ public: virtual int set_mp_mmapsize(size_t); virtual int get_mp_max_openfd(int *); virtual int set_mp_max_openfd(int); - virtual int get_mp_max_write(int *, int *); - virtual int set_mp_max_write(int, int); + virtual int get_mp_max_write(int *, db_timeout_t *); + virtual int set_mp_max_write(int, db_timeout_t); virtual void set_msgcall(void (*)(const DbEnv *, const char *)); virtual void get_msgfile(FILE **); virtual void set_msgfile(FILE *); @@ -571,17 +582,19 @@ public: // Replication functions // - virtual int rep_elect(int, int, int *, u_int32_t); + virtual int rep_elect(int, int, u_int32_t); virtual int rep_flush(); - virtual int rep_process_message(Dbt *, Dbt *, int *, DbLsn *); + virtual int rep_process_message(Dbt *, Dbt *, int, DbLsn *); virtual int rep_start(Dbt *, u_int32_t); virtual int rep_stat(DB_REP_STAT **statp, u_int32_t flags); virtual int rep_stat_print(u_int32_t flags); + virtual int rep_set_lease(u_int32_t, u_int32_t); virtual int rep_get_limit(u_int32_t *, u_int32_t *); virtual int rep_set_limit(u_int32_t, u_int32_t); virtual int rep_set_transport(int, int (*)(DbEnv *, const Dbt *, const Dbt *, const DbLsn *, int, u_int32_t)); virtual int set_rep_request(u_int32_t, u_int32_t); + virtual int get_thread_count(u_int32_t *); virtual int set_thread_count(u_int32_t); virtual int set_thread_id(void (*)(DbEnv *, pid_t *, db_threadid_t *)); virtual int set_thread_id_string(char *(*)(DbEnv *, @@ -594,7 +607,7 @@ public: // virtual int rep_get_nsites(int *n); virtual int rep_set_nsites(int n); - virtual int rep_get_priority(int *priority); + virtual int rep_get_priority(int *priorityp); virtual int rep_set_priority(int priority); virtual int rep_get_timeout(int which, db_timeout_t *timeout); virtual int rep_set_timeout(int which, db_timeout_t timeout); @@ -606,6 +619,8 @@ public: u_int32_t flags); virtual int repmgr_site_list(u_int *countp, DB_REPMGR_SITE **listp); virtual int repmgr_start(int nthreads, u_int32_t flags); + virtual int repmgr_stat(DB_REPMGR_STAT **statp, u_int32_t flags); + virtual int repmgr_stat_print(u_int32_t flags); // Conversion functions // @@ -718,6 +733,7 @@ class _exported DbLogc : protected DB_LOGC public: int close(u_int32_t _flags); int get(DbLsn *lsn, Dbt *data, u_int32_t _flags); + int version(u_int32_t *versionp, u_int32_t _flags); private: // No data is permitted in this class (see comment at top) @@ -753,25 +769,25 @@ class _exported DbMpoolFile public: int close(u_int32_t flags); int get(db_pgno_t *pgnoaddr, DbTxn *txn, u_int32_t flags, void *pagep); - int open(const char *file, u_int32_t flags, int mode, size_t pagesize); - int get_transactional(void); - int put(void *pgaddr, u_int32_t flags); - int set(void *pgaddr, u_int32_t flags); int get_clear_len(u_int32_t *len); - int set_clear_len(u_int32_t len); int get_fileid(u_int8_t *fileid); - int set_fileid(u_int8_t *fileid); int get_flags(u_int32_t *flagsp); - int set_flags(u_int32_t flags, int onoff); int get_ftype(int *ftype); - int set_ftype(int ftype); + int get_last_pgno(db_pgno_t *pgnop); int get_lsn_offset(int32_t *offsetp); - int set_lsn_offset(int32_t offset); int get_maxsize(u_int32_t *gbytes, u_int32_t *bytes); - int set_maxsize(u_int32_t gbytes, u_int32_t bytes); int get_pgcookie(DBT *dbt); - int set_pgcookie(DBT *dbt); int get_priority(DB_CACHE_PRIORITY *priorityp); + int get_transactional(void); + int open(const char *file, u_int32_t flags, int mode, size_t pagesize); + int put(void *pgaddr, DB_CACHE_PRIORITY priority, u_int32_t flags); + int set_clear_len(u_int32_t len); + int set_fileid(u_int8_t *fileid); + int set_flags(u_int32_t flags, int onoff); + int set_ftype(int ftype); + int set_lsn_offset(int32_t offset); + int set_maxsize(u_int32_t gbytes, u_int32_t bytes); + int set_pgcookie(DBT *dbt); int set_priority(DB_CACHE_PRIORITY priority); int sync(); diff --git a/db/dbinc/db_dispatch.h b/db/dbinc/db_dispatch.h index c86f2c999..8844e7e79 100644 --- a/db/dbinc/db_dispatch.h +++ b/db/dbinc/db_dispatch.h @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1995, 1996 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_dispatch.h,v 12.8 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_dispatch.h,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_DISPATCH_H_ @@ -56,6 +55,7 @@ typedef enum { #define DB_TXNLIST_MASK(hp, n) (n % hp->nslots) struct __db_txnhead { + void *td; /* If abort, the detail for the txn. */ u_int32_t maxid; /* Maximum transaction id. */ DB_LSN maxlsn; /* Maximum commit lsn. */ DB_LSN ckplsn; /* LSN of last retained checkpoint. */ diff --git a/db/dbinc/db_int.in b/db/dbinc/db_int.in index 7c3e085cf..6fc2030ba 100644 --- a/db/dbinc/db_int.in +++ b/db/dbinc/db_int.in @@ -1,19 +1,18 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_int.in,v 12.41 2006/09/19 15:06:59 bostic Exp $ + * $Id: db_int.in,v 12.58 2007/05/30 14:06:39 bostic Exp $ */ #ifndef _DB_INT_H_ #define _DB_INT_H_ /******************************************************* - * Berkeley DB includes. + * Berkeley DB ANSI/POSIX include files. *******************************************************/ -#ifndef NO_SYSTEM_INCLUDES +#ifdef HAVE_SYSTEM_INCLUDE_FILES #include #ifdef DIAG_MVCC #include @@ -47,7 +46,9 @@ #endif #if defined(__INCLUDE_NETWORKING) +#ifdef HAVE_SYS_SOCKET_H #include +#endif #include #include #include @@ -69,9 +70,34 @@ #include #include #include + +#if defined(__INCLUDE_DIRECTORY) +#if HAVE_DIRENT_H +# include +# define NAMLEN(dirent) strlen((dirent)->d_name) +#else +# define dirent direct +# define NAMLEN(dirent) (dirent)->d_namlen +# if HAVE_SYS_NDIR_H +# include +# endif +# if HAVE_SYS_DIR_H +# include +# endif +# if HAVE_NDIR_H +# include +# endif +#endif +#endif /* __INCLUDE_DIRECTORY_READ */ + +#endif /* !HAVE_SYSTEM_INCLUDE_FILES */ + +#ifdef DB_WIN32 +#include "dbinc/win_db.h" #endif #include "db.h" +#include "clib_port.h" #include "dbinc/queue.h" #include "dbinc/shqueue.h" @@ -83,41 +109,6 @@ extern "C" { /******************************************************* * General purpose constants and macros. *******************************************************/ -#ifndef UINT16_MAX -#define UINT16_MAX 65535 /* Maximum 16-bit unsigned. */ -#endif -#ifndef UINT32_MAX -#ifdef __STDC__ -#define UINT32_MAX 4294967295U /* Maximum 32-bit unsigned. */ -#else -#define UINT32_MAX 0xffffffff /* Maximum 32-bit unsigned. */ -#endif -#endif - -#if defined(HAVE_64BIT_TYPES) -#undef INT64_MAX -#undef INT64_MIN -#undef UINT64_MAX - -#ifdef DB_WIN32 -#define INT64_MAX _I64_MAX -#define INT64_MIN _I64_MIN -#define UINT64_MAX _UI64_MAX -#else -/* - * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can - * handle 64-bit values, but the system's constants don't include the LL/ULL - * suffix, and so can't be compiled using the 32-bit compiler. - */ -#define INT64_MAX 9223372036854775807LL -#define INT64_MIN (-INT64_MAX-1) -#define UINT64_MAX 18446744073709551615ULL -#endif /* DB_WIN32 */ - -@INT64_FMT@ -@UINT64_FMT@ -#endif /* HAVE_64BIT_TYPES */ - #undef FALSE #define FALSE 0 #undef TRUE @@ -126,8 +117,13 @@ extern "C" { #define MEGABYTE 1048576 #define GIGABYTE 1073741824 -#define MS_PER_SEC 1000 /* Milliseconds in a second. */ -#define USEC_PER_MS 1000 /* Microseconds in a millisecond. */ +#define NS_PER_MS 1000000 /* Nanoseconds in a millisecond */ +#define NS_PER_US 1000 /* Nanoseconds in a microsecond */ +#define NS_PER_SEC 1000000000 /* Nanoseconds in a second */ +#define US_PER_MS 1000 /* Microseconds in a millisecond */ +#define US_PER_SEC 1000000 /* Microseconds in a second */ +#define MS_PER_NS 1000000 /* Milliseconds in a nanosecond */ +#define MS_PER_SEC 1000 /* Milliseconds in a second */ #define RECNO_OOB 0 /* Illegal record number. */ @@ -159,11 +155,6 @@ extern "C" { #define ALIGNP_INC(p, bound) \ (void *)(((uintptr_t)(p) + (bound) - 1) & ~(((uintptr_t)(bound)) - 1)) -/* Decrement a pointer to a specific boundary. */ -#undef ALIGNP_DEC -#define ALIGNP_DEC(p, bound) \ - (void *)((uintptr_t)(p) & ~(((uintptr_t)(bound)) - 1)) - /* * Print an address as a u_long (a u_long is the largest type we can print * portably). Most 64-bit systems have made longs 64-bits, so this should @@ -232,6 +223,17 @@ typedef struct __fn { ((int)((total) == 0 ? 0 : \ 100 - ((double)(v) * 100) / (((double)total) * (pgsize)))) +/* + * Statistics update shared memory and so are expensive -- don't update the + * values unless we're going to display the results. + */ +#undef STAT +#ifdef HAVE_STATISTICS +#define STAT(x) x +#else +#define STAT(x) +#endif + /* * Structure used for callback message aggregation. * @@ -312,6 +314,7 @@ typedef struct __db_msgbuf { #define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret) #define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) == DB_KEYEXIST) +#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret) #define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) == DB_NOTFOUND) #define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) == DB_PAGE_NOTFOUND) #define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \ @@ -436,7 +439,7 @@ typedef enum { #ifdef DIAGNOSTIC #define ENV_LEAVE(dbenv, ip) do { \ if ((ip) != NULL) { \ - DB_ASSERT(dbenv, ip->dbth_state == THREAD_ACTIVE); \ + DB_ASSERT(dbenv, (ip)->dbth_state == THREAD_ACTIVE); \ (ip)->dbth_state = THREAD_OUT; \ } \ } while (0) @@ -647,7 +650,6 @@ typedef struct __dbpginfo { ((lsn0)->offset != (lsn1)->offset ? \ ((lsn0)->offset < (lsn1)->offset ? -1 : 1) : 0)) - /******************************************************* * Txn. *******************************************************/ @@ -714,6 +716,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; @db_int_def@ #include "dbinc/globals.h" +#include "dbinc/clock.h" #include "dbinc/debug.h" #include "dbinc/region.h" #include "dbinc_auto/env_ext.h" @@ -744,7 +747,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * Test if we need to log a change. By default, we don't log operations without * associated transactions, unless DIAGNOSTIC, DEBUG_ROP or DEBUG_WOP are on. * This is because we want to get log records for read/write operations, and, if - * we trying to debug something, more information is always better. + * we are trying to debug something, more information is always better. * * The DBC_RECOVER flag is set when we're in abort, as well as during recovery; * thus DBC_LOGGING may be false for a particular dbc even when DBENV_LOGGING @@ -754,7 +757,7 @@ typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; * in the log headers, which IS_RECOVERING (and thus DBENV_LOGGING) rely on, and * because DBC_RECOVER should be set anytime IS_RECOVERING would be true. * - * If we're not in recovery (master - doing an abort a client applying + * If we're not in recovery (master - doing an abort or a client applying * a txn), then a client's only path through here is on an internal * operation, and a master's only path through here is a transactional * operation. Detect if either is not the case. diff --git a/db/dbinc/db_join.h b/db/dbinc/db_join.h index 089972f6f..7aa1f26fb 100644 --- a/db/dbinc/db_join.h +++ b/db/dbinc/db_join.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: db_join.h,v 12.5 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_join.h,v 12.7 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_JOIN_H_ diff --git a/db/dbinc/db_page.h b/db/dbinc/db_page.h index 4f2973cc3..8f1e3c831 100644 --- a/db/dbinc/db_page.h +++ b/db/dbinc/db_page.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_page.h,v 12.10 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_page.h,v 12.13 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_PAGE_H_ @@ -36,7 +35,7 @@ extern "C" { /* Page types. */ #define P_INVALID 0 /* Invalid page type. */ #define __P_DUPLICATE 1 /* Duplicate. DEPRECATED in 3.1 */ -#define P_HASH 2 /* Hash. */ +#define P_HASH_UNSORTED 2 /* Hash pages created pre 4.6. DEPRECATED */ #define P_IBTREE 3 /* Btree internal. */ #define P_IRECNO 4 /* Recno internal. */ #define P_LBTREE 5 /* Btree leaf. */ @@ -47,7 +46,8 @@ extern "C" { #define P_QAMMETA 10 /* Queue metadata page. */ #define P_QAMDATA 11 /* Queue data page. */ #define P_LDUP 12 /* Off-page duplicate leaf. */ -#define P_PAGETYPE_MAX 13 +#define P_HASH 13 /* Sorted hash page. */ +#define P_PAGETYPE_MAX 14 /* Flag to __db_new */ #define P_DONTEXTEND 0x8000 /* Don't allocate if there are no free pages. */ @@ -456,9 +456,9 @@ typedef struct _hkeydata { (HKEYDATA_SIZE(len) + sizeof(db_indx_t)) /* Put a HKEYDATA item at the location referenced by a page entry. */ -#define PUT_HKEYDATA(pe, kd, len, type) { \ - ((HKEYDATA *)pe)->type = type; \ - memcpy((u_int8_t *)pe + sizeof(u_int8_t), kd, len); \ +#define PUT_HKEYDATA(pe, kd, len, etype) { \ + ((HKEYDATA *)(pe))->type = etype; \ + memcpy((u_int8_t *)(pe) + sizeof(u_int8_t), kd, len); \ } /* diff --git a/db/dbinc/db_server_int.h b/db/dbinc/db_server_int.h index f93ba15ba..207fd9a41 100644 --- a/db/dbinc/db_server_int.h +++ b/db/dbinc/db_server_int.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2000-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2000,2007 Oracle. All rights reserved. * - * $Id: db_server_int.h,v 12.9 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_server_int.h,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_SERVER_INT_H_ diff --git a/db/dbinc/db_shash.h b/db/dbinc/db_shash.h deleted file mode 100644 index 51277e5e0..000000000 --- a/db/dbinc/db_shash.h +++ /dev/null @@ -1,81 +0,0 @@ -/*- - * See the file LICENSE for redistribution information. - * - * Copyright (c) 1996-2004 - * Sleepycat Software. All rights reserved. - * - * $Id: db_shash.h,v 11.13 2004/01/28 03:36:02 bostic Exp $ - */ - -#ifndef _DB_SHASH_H_ -#define _DB_SHASH_H_ - -/* Hash Headers */ -typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB; - -/* - * HASHLOOKUP -- - * - * Look up something in a shared memory hash table. The "elt" argument - * should be a key, and cmp_func must know how to compare a key to whatever - * structure it is that appears in the hash table. The comparison function - * - * begin: address of the beginning of the hash table. - * ndx: index into table for this item. - * type: the structure type of the elements that are linked in each bucket. - * field: the name of the field by which the "type" structures are linked. - * elt: the item for which we are searching in the hash table. - * res: the variable into which we'll store the element if we find it. - * cmp: called as: cmp(lookup_elt, table_elt). - * - * If the element is not in the hash table, this macro exits with res set - * to NULL. - */ -#define HASHLOOKUP(begin, ndx, type, field, elt, res, cmp) do { \ - DB_HASHTAB *__bucket; \ - \ - __bucket = &begin[ndx]; \ - for (res = SH_TAILQ_FIRST(__bucket, type); \ - res != NULL; res = SH_TAILQ_NEXT(res, field, type)) \ - if (cmp(elt, res)) \ - break; \ -} while (0) - -/* - * HASHINSERT -- - * - * Insert a new entry into the hash table. This assumes that you already - * have the bucket locked and that lookup has failed; don't call it if you - * haven't already called HASHLOOKUP. If you do, you could get duplicate - * entries. - * - * begin: the beginning address of the hash table. - * ndx: the index for this element. - * type: the structure type of the elements that are linked in each bucket. - * field: the name of the field by which the "type" structures are linked. - * elt: the item to be inserted. - */ -#define HASHINSERT(begin, ndx, type, field, elt) do { \ - DB_HASHTAB *__bucket; \ - \ - __bucket = &begin[ndx]; \ - SH_TAILQ_INSERT_HEAD(__bucket, elt, field, type); \ -} while (0) - -/* - * HASHREMOVE_EL -- - * Given the object "obj" in the table, remove it. - * - * begin: address of the beginning of the hash table. - * ndx: index into hash table of where this element belongs. - * type: the structure type of the elements that are linked in each bucket. - * field: the name of the field by which the "type" structures are linked. - * obj: the object in the table that we with to delete. - */ -#define HASHREMOVE_EL(begin, ndx, type, field, obj) { \ - DB_HASHTAB *__bucket; \ - \ - __bucket = &begin[ndx]; \ - SH_TAILQ_REMOVE(__bucket, obj, field, type); \ -} -#endif /* !_DB_SHASH_H_ */ diff --git a/db/dbinc/db_swap.h b/db/dbinc/db_swap.h index 1fc13b159..5c9e0dc00 100644 --- a/db/dbinc/db_swap.h +++ b/db/dbinc/db_swap.h @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: db_swap.h,v 12.6 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_swap.h,v 12.8 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_SWAP_H_ diff --git a/db/dbinc/db_upgrade.h b/db/dbinc/db_upgrade.h index 6e52859b5..464394008 100644 --- a/db/dbinc/db_upgrade.h +++ b/db/dbinc/db_upgrade.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: db_upgrade.h,v 12.4 2006/08/24 14:45:29 bostic Exp $ + * $Id: db_upgrade.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_UPGRADE_H_ diff --git a/db/dbinc/db_verify.h b/db/dbinc/db_verify.h index cc88d1c87..49a63a0de 100644 --- a/db/dbinc/db_verify.h +++ b/db/dbinc/db_verify.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: db_verify.h,v 12.9 2006/09/08 21:57:14 bostic Exp $ + * $Id: db_verify.h,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_VERIFY_H_ diff --git a/db/dbinc/debug.h b/db/dbinc/debug.h index e47f3f614..4b6bea6c4 100644 --- a/db/dbinc/debug.h +++ b/db/dbinc/debug.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: debug.h,v 12.8 2006/08/24 14:45:29 bostic Exp $ + * $Id: debug.h,v 12.12 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_DEBUG_H_ @@ -80,101 +79,98 @@ typedef enum { * original routine that took the variadic list of arguments. */ #if defined(STDC_HEADERS) || defined(__cplusplus) -#define DB_REAL_ERR(env, error, error_set, default_stream, fmt) { \ - va_list ap; \ +#define DB_REAL_ERR(env, error, error_set, app_call, fmt) { \ + va_list __ap; \ \ /* Call the application's callback function, if specified. */ \ - va_start(ap, fmt); \ + va_start(__ap, fmt); \ if ((env) != NULL && (env)->db_errcall != NULL) \ - __db_errcall(env, error, error_set, fmt, ap); \ - va_end(ap); \ - \ - /* Write to the application's file descriptor, if specified. */\ - va_start(ap, fmt); \ - if ((env) != NULL && (env)->db_errfile != NULL) \ - __db_errfile(env, error, error_set, fmt, ap); \ - va_end(ap); \ + __db_errcall(env, error, error_set, fmt, __ap); \ + va_end(__ap); \ \ /* \ - * If we have a default and we didn't do either of the above, \ - * write to the default. \ + * If the application specified a file descriptor, write to it. \ + * If we wrote to neither the application's callback routine or \ + * its file descriptor, and it's an application error message \ + * using {DbEnv,Db}.{err,errx} or the application has never \ + * configured an output channel, default by writing to stderr. \ */ \ - va_start(ap, fmt); \ - if ((default_stream) && ((env) == NULL || \ - ((env)->db_errcall == NULL && (env)->db_errfile == NULL))) \ - __db_errfile(env, error, error_set, fmt, ap); \ - va_end(ap); \ + va_start(__ap, fmt); \ + if ((env) == NULL || \ + (env)->db_errfile != NULL || \ + ((env)->db_errcall == NULL && \ + ((app_call) || F_ISSET((env), DB_ENV_NO_OUTPUT_SET)))) \ + __db_errfile(env, error, error_set, fmt, __ap); \ + va_end(__ap); \ } #else -#define DB_REAL_ERR(env, error, error_set, default_stream, fmt) { \ - va_list ap; \ +#define DB_REAL_ERR(env, error, error_set, fmt) { \ + va_list __ap; \ \ /* Call the application's callback function, if specified. */ \ - va_start(ap); \ + va_start(__ap); \ if ((env) != NULL && (env)->db_errcall != NULL) \ - __db_errcall(env, error, error_set, fmt, ap); \ - va_end(ap); \ - \ - /* Write to the application's file descriptor, if specified. */\ - va_start(ap); \ - if ((env) != NULL && (env)->db_errfile != NULL) \ - __db_errfile(env, error, error_set, fmt, ap); \ - va_end(ap); \ + __db_errcall(env, error, error_set, fmt, __ap); \ + va_end(__ap); \ \ /* \ - * If we have a default and we didn't do either of the above, \ - * write to the default. \ + * If the application specified a file descriptor, write to it. \ + * If we wrote to neither the application's callback routine or \ + * its file descriptor, and it's an application error message \ + * using {DbEnv,Db}.{err,errx} or the application has never \ + * configured an output channel, default by writing to stderr. \ */ \ - va_start(ap); \ - if ((default_stream) && ((env) == NULL || \ - ((env)->db_errcall == NULL && (env)->db_errfile == NULL))) \ - __db_errfile(env, error, error_set, fmt, ap); \ - va_end(ap); \ + va_start(__ap); \ + if ((env) == NULL || \ + (env)->db_errfile != NULL || \ + ((env)->db_errcall == NULL && \ + ((app_call) || F_ISSET((env), DB_ENV_NO_OUTPUT_SET)))) \ + va_end(__ap); \ } #endif #if defined(STDC_HEADERS) || defined(__cplusplus) #define DB_REAL_MSG(env, fmt) { \ - va_list ap; \ + va_list __ap; \ \ /* Call the application's callback function, if specified. */ \ - va_start(ap, fmt); \ + va_start(__ap, fmt); \ if ((env) != NULL && (env)->db_msgcall != NULL) \ - __db_msgcall(env, fmt, ap); \ - va_end(ap); \ + __db_msgcall(env, fmt, __ap); \ + va_end(__ap); \ \ /* \ - * If the application specified a file descriptor, or we wrote \ - * to neither the application's callback routine or to its file \ - * descriptor, write to stdout. \ + * If the application specified a file descriptor, write to it. \ + * If we wrote to neither the application's callback routine or \ + * its file descriptor, write to stdout. \ */ \ - va_start(ap, fmt); \ + va_start(__ap, fmt); \ if ((env) == NULL || \ (env)->db_msgfile != NULL || (env)->db_msgcall == NULL) { \ - __db_msgfile(env, fmt, ap); \ + __db_msgfile(env, fmt, __ap); \ } \ - va_end(ap); \ + va_end(__ap); \ } #else #define DB_REAL_MSG(env, fmt) { \ - va_list ap; \ + va_list __ap; \ \ /* Call the application's callback function, if specified. */ \ - va_start(ap); \ + va_start(__ap); \ if ((env) != NULL && (env)->db_msgcall != NULL) \ - __db_msgcall(env, fmt, ap); \ - va_end(ap); \ + __db_msgcall(env, fmt, __ap); \ + va_end(__ap); \ \ /* \ - * If the application specified a file descriptor, or we wrote \ - * to neither the application's callback routine or to its file \ - * descriptor, write to stdout. \ + * If the application specified a file descriptor, write to it. \ + * If we wrote to neither the application's callback routine or \ + * its file descriptor, write to stdout. \ */ \ - va_start(ap); \ + va_start(__ap); \ if ((env) == NULL || \ (env)->db_msgfile != NULL || (env)->db_msgcall == NULL) { \ - __db_msgfile(env, fmt, ap); \ + __db_msgfile(env, fmt, __ap); \ } \ - va_end(ap); \ + va_end(__ap); \ } #endif diff --git a/db/dbinc/fop.h b/db/dbinc/fop.h index 33f919d22..6ac1baaa0 100644 --- a/db/dbinc/fop.h +++ b/db/dbinc/fop.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: fop.h,v 12.6 2006/08/24 14:45:29 bostic Exp $ + * $Id: fop.h,v 12.8 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_FOP_H_ diff --git a/db/dbinc/globals.h b/db/dbinc/globals.h index 3d68423ef..b5404f6ed 100644 --- a/db/dbinc/globals.h +++ b/db/dbinc/globals.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: globals.h,v 12.4 2006/08/24 14:45:29 bostic Exp $ + * $Id: globals.h,v 12.7 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_GLOBALS_H_ @@ -24,6 +23,9 @@ extern "C" { #endif typedef struct __db_globals { +#ifdef HAVE_BREW + struct tm ltm; /* BREW localtime structure */ +#endif #ifdef HAVE_VXWORKS u_int32_t db_global_init; /* VxWorks: inited */ SEM_ID db_global_lock; /* VxWorks: global semaphore */ @@ -33,6 +35,16 @@ typedef struct __db_globals { char *db_line; /* DB display string. */ + char error_buf[40]; /* Error string buffer. */ + + int uid_init; /* srand set in UID generator */ + + u_long rand_next; /* rand/srand value */ + + u_int32_t fid_serial; /* file id counter */ + + int db_errno; /* Errno value if not available */ + int (*j_close) __P((int)); /* Underlying OS interface jump table.*/ void (*j_dirfree) __P((char **, int)); int (*j_dirlist) __P((const char *, char ***, int *)); @@ -58,6 +70,10 @@ typedef struct __db_globals { int (*j_yield) __P((void)); } DB_GLOBALS; +#ifdef HAVE_BREW +#define DB_GLOBAL(v) \ + ((DB_GLOBALS *)(((BDBApp *)GETAPPINSTANCE())->db_global_values))->v +#else #ifdef DB_INITIALIZE_DB_GLOBALS DB_GLOBALS __db_global_values = { #ifdef HAVE_VXWORKS @@ -68,7 +84,11 @@ DB_GLOBALS __db_global_values = { {NULL, &__db_global_values.db_envq.tqh_first}, "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=", - + { 0 }, + 0, + 0, + 0, + 0, NULL, NULL, NULL, @@ -97,6 +117,7 @@ extern DB_GLOBALS __db_global_values; #endif #define DB_GLOBAL(v) __db_global_values.v +#endif /* HAVE_BREW */ #if defined(__cplusplus) } diff --git a/db/dbinc/hash.h b/db/dbinc/hash.h index acc608802..c8490e4f0 100644 --- a/db/dbinc/hash.h +++ b/db/dbinc/hash.h @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993, 1994 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: hash.h,v 12.5 2006/08/24 14:45:29 bostic Exp $ + * $Id: hash.h,v 12.11 2007/05/17 17:22:36 bostic Exp $ */ #ifndef _DB_HASH_H_ @@ -54,8 +53,9 @@ typedef struct hash_t { db_pgno_t meta_pgno; /* Page number of the meta data page. */ u_int32_t h_ffactor; /* Fill factor. */ u_int32_t h_nelem; /* Number of elements. */ - /* Hash function. */ + /* Hash and compare functions. */ u_int32_t (*h_hash) __P((DB *, const void *, u_int32_t)); + int (*h_compare) __P((DB *, const DBT *, const DBT *)); } HASH; /* Cursor structure definitions. */ @@ -78,6 +78,7 @@ typedef struct cursor_t { db_indx_t dup_tlen; /* Total length of duplicate entry. */ u_int32_t seek_size; /* Number of bytes we need for add. */ db_pgno_t seek_found_page;/* Page on which we can insert. */ + db_indx_t seek_found_indx;/* Insert position for item. */ u_int32_t order; /* Relative order among deleted curs. */ #define H_CONTINUE 0x0001 /* Join--search strictly fwd for data */ @@ -134,6 +135,18 @@ typedef struct cursor_t { #define HASH_UNUSED2 0x70 #define SPLITOLD 0x80 #define SPLITNEW 0x90 +#define SORTPAGE 0x100 + +/* Flags to control behavior of __ham_del_pair */ +#define HAM_DEL_NO_CURSOR 0x01 /* Don't do any cursor adjustment */ +#define HAM_DEL_NO_RECLAIM 0x02 /* Don't reclaim empty pages */ + +typedef enum { + DB_HAM_CURADJ_DEL = 1, + DB_HAM_CURADJ_ADD = 2, + DB_HAM_CURADJ_ADDMOD = 3, + DB_HAM_CURADJ_DELMOD = 4 +} db_ham_curadj; typedef enum { DB_HAM_CHGPG = 1, diff --git a/db/dbinc/hmac.h b/db/dbinc/hmac.h index 5868d7bfb..8fd5a9e7a 100644 --- a/db/dbinc/hmac.h +++ b/db/dbinc/hmac.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: hmac.h,v 12.4 2006/08/24 14:45:29 bostic Exp $ + * $Id: hmac.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_HMAC_H_ diff --git a/db/dbinc/lock.h b/db/dbinc/lock.h index 8d5a6a367..5651f598b 100644 --- a/db/dbinc/lock.h +++ b/db/dbinc/lock.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: lock.h,v 12.11 2006/08/24 14:45:29 bostic Exp $ + * $Id: lock.h,v 12.18 2007/05/17 18:46:15 bostic Exp $ */ #ifndef _DB_LOCK_H_ @@ -41,30 +40,26 @@ extern "C" { (m) == DB_LOCK_IWRITE || (m) == DB_LOCK_IWR) /* - * Lock timers. - */ -typedef struct { - u_int32_t tv_sec; /* Seconds. */ - u_int32_t tv_usec; /* Microseconds. */ -} db_timeval_t; - -#define LOCK_TIME_ISVALID(time) ((time)->tv_sec != 0) -#define LOCK_SET_TIME_INVALID(time) ((time)->tv_sec = 0) -#define LOCK_TIME_ISMAX(time) ((time)->tv_sec == UINT32_MAX) -#define LOCK_SET_TIME_MAX(time) ((time)->tv_sec = UINT32_MAX) -#define LOCK_TIME_EQUAL(t1, t2) \ - ((t1)->tv_sec == (t2)->tv_sec && (t1)->tv_usec == (t2)->tv_usec) -#define LOCK_TIME_GREATER(t1, t2) \ - ((t1)->tv_sec > (t2)->tv_sec || \ - ((t1)->tv_sec == (t2)->tv_sec && (t1)->tv_usec > (t2)->tv_usec)) - -/* Macros to lock/unlock the lock region as a whole. */ + * Macros to lock/unlock the lock region as a whole. + * IF we are using multiple mutexes in the lock region these are a noop. + */ +#ifdef HAVE_FINE_GRAINED_LOCK_MANAGER +#define LOCK_SYSTEM_LOCK(dbenv) +#define LOCK_SYSTEM_UNLOCK(dbenv) +#else #define LOCK_SYSTEM_LOCK(dbenv) \ MUTEX_LOCK(dbenv, ((DB_LOCKREGION *) \ (dbenv)->lk_handle->reginfo.primary)->mtx_region) #define LOCK_SYSTEM_UNLOCK(dbenv) \ MUTEX_UNLOCK(dbenv, ((DB_LOCKREGION *) \ (dbenv)->lk_handle->reginfo.primary)->mtx_region) +#endif +#define LOCK_REGION_LOCK(dbenv) \ + MUTEX_LOCK(dbenv, ((DB_LOCKREGION *) \ + (dbenv)->lk_handle->reginfo.primary)->mtx_region) +#define LOCK_REGION_UNLOCK(dbenv) \ + MUTEX_UNLOCK(dbenv, ((DB_LOCKREGION *) \ + (dbenv)->lk_handle->reginfo.primary)->mtx_region) /* * DB_LOCKREGION -- @@ -75,14 +70,19 @@ typedef struct __db_lockregion { u_int32_t need_dd; /* flag for deadlock detector */ u_int32_t detect; /* run dd on every conflict */ - db_timeval_t next_timeout; /* next time to expire a lock */ + db_timespec next_timeout; /* next time to expire a lock */ +#ifdef HAVE_FINE_GRAINED_LOCK_MANAGER + db_mutex_t mtx_locks; /* mutex for lock allocation. */ + db_mutex_t mtx_objs; /* mutex for lock object allocation. */ + db_mutex_t mtx_lockers; /* mutex for locker allocation. */ +#endif /* free lock header */ SH_TAILQ_HEAD(__flock) free_locks; /* free obj header */ SH_TAILQ_HEAD(__fobj) free_objs; + SH_TAILQ_HEAD(__dobj) dd_objs; /* objects with waiters */ /* free locker header */ SH_TAILQ_HEAD(__flocker) free_lockers; - SH_TAILQ_HEAD(__dobj) dd_objs; /* objects with waiters */ SH_TAILQ_HEAD(__lkrs) lockers; /* list of lockers */ db_timeout_t lk_timeout; /* timeout for locks. */ @@ -93,6 +93,10 @@ typedef struct __db_lockregion { roff_t conf_off; /* offset of conflicts array */ roff_t obj_off; /* offset of object hash table */ +#ifdef HAVE_FINE_GRAINED_LOCK_MANAGER + roff_t mtx_off; /* offset of object mutex table */ +#endif + roff_t stat_off; /* offset to object hash stats */ roff_t locker_off; /* offset of locker hash table */ DB_LOCK_STAT stat; /* stats about locking. */ @@ -113,6 +117,8 @@ typedef struct __sh_dbt { * Object structures; these live in the object hash table. */ typedef struct __db_lockobj { + u_int32_t indx; /* Hash index of this object. */ + u_int32_t generation; /* Generation of this object. */ SH_DBT lockobj; /* Identifies object locked. */ SH_TAILQ_ENTRY links; /* Links for free list or hash list. */ SH_TAILQ_ENTRY dd_links; /* Links for dd list. */ @@ -128,7 +134,7 @@ typedef struct __db_lockobj { /* * Locker structures; these live in the locker hash table. */ -typedef struct __db_locker { +struct __db_locker { u_int32_t id; /* Locker id. */ pid_t pid; /* Process owning locker ID */ @@ -150,8 +156,8 @@ typedef struct __db_locker { SH_TAILQ_ENTRY links; /* Links for free and hash list. */ SH_TAILQ_ENTRY ulinks; /* Links in-use list. */ SH_LIST_HEAD(_held) heldby; /* Locks held by this locker. */ - db_timeval_t lk_expire; /* When current lock expires. */ - db_timeval_t tx_expire; /* When this txn expires. */ + db_timespec lk_expire; /* When current lock expires. */ + db_timespec tx_expire; /* When this txn expires. */ db_timeout_t lk_timeout; /* How long do we let locks live. */ #define DB_LOCKER_DELETED 0x0001 @@ -159,7 +165,7 @@ typedef struct __db_locker { #define DB_LOCKER_INABORT 0x0004 #define DB_LOCKER_TIMEOUT 0x0008 u_int32_t flags; -} DB_LOCKER; +}; /* * DB_LOCKTAB -- @@ -171,6 +177,10 @@ struct __db_locktab { REGINFO reginfo; /* Region information. */ u_int8_t *conflicts; /* Pointer to conflict matrix. */ DB_HASHTAB *obj_tab; /* Beginning of object hash table. */ +#ifdef HAVE_FINE_GRAINED_LOCK_MANAGER + db_mutex_t *obj_mtx; /* Object mutex array. */ +#endif + DB_LOCK_HSTAT *obj_stat; /* Object hash stats array. */ DB_HASHTAB *locker_tab; /* Beginning of locker hash table. */ }; @@ -191,13 +201,14 @@ struct __db_lock { */ db_mutex_t mtx_lock; - u_int32_t holder; /* Who holds this lock. */ + roff_t holder; /* Who holds this lock. */ u_int32_t gen; /* Generation count. */ SH_TAILQ_ENTRY links; /* Free or holder/waiter list. */ SH_LIST_ENTRY locker_links; /* List of locks held by a locker. */ u_int32_t refcount; /* Reference count the lock. */ db_lockmode_t mode; /* What sort of lock. */ roff_t obj; /* Relative offset of object struct. */ + u_int32_t indx; /* Hash index of this object. */ db_status_t status; /* Status of this lock. */ }; @@ -215,16 +226,59 @@ struct __db_lock { #define DB_LOCK_FREE 0x040000 #define DB_LOCK_NOPROMOTE 0x080000 #define DB_LOCK_UNLINK 0x100000 -#define DB_LOCK_NOREGION 0x200000 #define DB_LOCK_NOWAITERS 0x400000 /* * Macros to get/release different types of mutexes. */ +#ifdef HAVE_FINE_GRAINED_LOCK_MANAGER +/* + * All operations on a lock object are preceded by getting a lock on + * the mutex for its hash bucket. Lock structures associated with + * an object are protected by this mutex as well. If holding a hash bucket + * we may call LOCK_OBJECTS to allocate a new object. + */ +#define OBJECT_LOCK(lt, reg, obj, ndx) do { \ + ndx = __lock_ohash(obj) % (reg)->object_t_size; \ + MUTEX_LOCK((lt)->dbenv, (lt)->obj_mtx[ndx]); \ +} while (0) +#define OBJECT_LOCK_NDX(lt, ndx) \ + MUTEX_LOCK((lt)->dbenv, (lt)->obj_mtx[ndx]) +#define OBJECT_UNLOCK(lt, ndx) \ + MUTEX_UNLOCK((lt)->dbenv, (lt)->obj_mtx[ndx]) + +/* + * These mutexes protect the allocation/deallocation and the queues + * of the lock objects, lock structures and locks. + * It is assumed that all accesses to a locker are single threaded + * since transactions are single threaded. The exception is in the + * deadlock detector where we look at the last lock held by the locker + * with some care. + */ +#define LOCK_OBJECTS(dbenv, region) \ + MUTEX_LOCK(dbenv, (region)->mtx_objs) +#define UNLOCK_OBJECTS(dbenv, region) \ + MUTEX_UNLOCK(dbenv, (region)->mtx_objs) +#define LOCK_LOCKS(dbenv, region) \ + MUTEX_LOCK(dbenv, (region)->mtx_locks) +#define UNLOCK_LOCKS(dbenv, region) \ + MUTEX_UNLOCK(dbenv, (region)->mtx_locks) +#define LOCK_LOCKERS(dbenv, region) \ + MUTEX_LOCK(dbenv, (region)->mtx_lockers) +#define UNLOCK_LOCKERS(dbenv, region) \ + MUTEX_UNLOCK(dbenv, (region)->mtx_lockers) +#else #define OBJECT_LOCK(lt, reg, obj, ndx) \ ndx = __lock_ohash(obj) % (reg)->object_t_size -#define SHOBJECT_LOCK(lt, reg, shobj, ndx) \ - ndx = __lock_lhash(shobj) % (reg)->object_t_size +#define OBJECT_LOCK_NDX(lt, ndx) +#define OBJECT_UNLOCK(lt, ndx) +#define LOCK_OBJECTS(dbenv, region) +#define UNLOCK_OBJECTS(dbenv, region) +#define LOCK_LOCKS(dbenv, region) +#define UNLOCK_LOCKS(dbenv, region) +#define LOCK_LOCKERS(dbenv, region) +#define UNLOCK_LOCKERS(dbenv, region) +#endif /* * __lock_locker_hash -- @@ -233,7 +287,7 @@ struct __db_lock { * just return the locker value. */ #define __lock_locker_hash(locker) (locker) -#define LOCKER_LOCK(lt, reg, locker, ndx) \ +#define LOCKER_HASH(lt, reg, locker, ndx) \ ndx = __lock_locker_hash(locker) % (reg)->locker_t_size; #if defined(__cplusplus) diff --git a/db/dbinc/log.h b/db/dbinc/log.h index 3acd1b7ec..310722ecc 100644 --- a/db/dbinc/log.h +++ b/db/dbinc/log.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: log.h,v 12.24 2006/08/24 14:45:29 bostic Exp $ + * $Id: log.h,v 12.31 2007/06/13 18:21:31 ubell Exp $ */ #ifndef _DB_LOG_H_ @@ -47,8 +46,15 @@ struct __fname { * Txn ID of the DB create, stored so * we can log it at register time. */ -#define DB_FNAME_NOTLOGGED 0x01 /* Log of close failed. */ + db_mutex_t mutex; /* mutex from db handle. */ + u_int32_t txn_ref; /* number of txn referencing. */ + +#define DB_FNAME_CLOSED 0x01 /* DBP was closed. */ #define DB_FNAME_DURABLE 0x02 /* File is durable. */ +#define DB_FNAME_INMEM 0x04 /* File is in memory. */ +#define DB_FNAME_NOTLOGGED 0x08 /* Log of close failed. */ +#define DB_FNAME_RECOVER 0x10 /* File was opened by recovery code. */ +#define DB_FNAME_RESTORED 0x20 /* File may be in restored txn. */ u_int32_t flags; }; @@ -113,9 +119,10 @@ struct __db_log { DB_ENV *dbenv; /* Reference to error information. */ REGINFO reginfo; /* Region information. */ -#define DBLOG_RECOVER 0x01 /* We are in recovery. */ -#define DBLOG_FORCE_OPEN 0x02 /* Force the DB open even if it appears +#define DBLOG_FORCE_OPEN 0x01 /* Force the DB open even if it appears * to be deleted. */ +#define DBLOG_OPENFILES 0x02 /* Prepared files need to be open. */ +#define DBLOG_RECOVER 0x04 /* We are in recovery. */ u_int32_t flags; }; @@ -238,10 +245,10 @@ struct __log { /* * !!! - * NOTE: the next 11 fields, waiting_lsn, verify_lsn, max_wait_lsn, - * maxperm_lsn, wait_recs, rcvd_recs, ready_lsn and bulk_* are NOT - * protected by the log region lock. They are protected by - * REP->mtx_clientdb. If you need access to both, you must acquire + * NOTE: the next 12 fields, waiting_lsn, verify_lsn, max_wait_lsn, + * max_perm_lsn, max_lease_ts, wait_recs, rcvd_recs, ready_lsn and + * bulk_* are NOT protected by the log region lock. They are protected + * by REP->mtx_clientdb. If you need access to both, you must acquire * REP->mtx_clientdb before acquiring the log region lock. * * The waiting_lsn is used by the replication system. It is the @@ -261,6 +268,7 @@ struct __log { DB_LSN verify_lsn; /* LSN we are waiting to verify. */ DB_LSN max_wait_lsn; /* Maximum LSN requested. */ DB_LSN max_perm_lsn; /* Maximum PERMANENT LSN processed. */ + db_timespec max_lease_ts; /* Maximum Lease timestamp seen. */ u_int32_t wait_recs; /* Records to wait before requesting. */ u_int32_t rcvd_recs; /* Records received while waiting. */ /* diff --git a/db/dbinc/mp.h b/db/dbinc/mp.h index 7c4bed813..120f91716 100644 --- a/db/dbinc/mp.h +++ b/db/dbinc/mp.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: mp.h,v 12.23 2006/09/07 15:11:26 mjc Exp $ + * $Id: mp.h,v 12.38 2007/06/07 16:47:01 bostic Exp $ */ #ifndef _DB_MP_H_ @@ -35,12 +34,17 @@ struct __mpool; typedef struct __mpool MPOOL; if (!F_ISSET(dbmfp, MP_OPEN_CALLED)) \ return (__db_mi_open((dbmfp)->dbenv, name, 0)); -typedef enum { - DB_SYNC_ALLOC, /* Flush for allocation. */ - DB_SYNC_CACHE, /* Checkpoint or flush entire cache. */ - DB_SYNC_FILE, /* Flush file. */ - DB_SYNC_TRICKLE /* Trickle sync. */ -} db_sync_op; +/* + * Cache flush operations, plus modifiers. + */ +#define DB_SYNC_ALLOC 0x0001 /* Flush for allocation. */ +#define DB_SYNC_CACHE 0x0002 /* Flush entire cache. */ +#define DB_SYNC_CHECKPOINT 0x0004 /* Checkpoint. */ +#define DB_SYNC_FILE 0x0008 /* Flush file. */ +#define DB_SYNC_INTERRUPT_OK 0x0010 /* Allow interrupt and return OK. */ +#define DB_SYNC_QUEUE_EXTENT 0x0020 /* Flush a queue file with extents. */ +#define DB_SYNC_SUPPRESS_WRITE 0x0040 /* Ignore max-write configuration. */ +#define DB_SYNC_TRICKLE 0x0080 /* Trickle sync. */ /* * DB_MPOOL -- @@ -62,13 +66,10 @@ struct __db_mpool { TAILQ_HEAD(__db_mpoolfileh, __db_mpoolfile) dbmfq; /* - * The dbenv, nreg and reginfo fields are not thread protected, - * as they are initialized during mpool creation, and not modified - * again. + * The dbenv and reginfo fields are not thread protected, as they are + * initialized during mpool creation, and not modified again. */ DB_ENV *dbenv; /* Enclosing environment. */ - - u_int32_t nreg; /* N underlying cache regions. */ REGINFO *reginfo; /* Underlying cache regions. */ }; @@ -85,35 +86,6 @@ struct __db_mpreg { int (*pgout) __P((DB_ENV *, db_pgno_t, void *, DBT *)); }; -/* - * NCACHE -- - * Select a cache based on the file and the page number. Assumes accesses - * are uniform across pages, which is probably OK. What we really want to - * avoid is anything that puts all pages from any single file in the same - * cache, as we expect that file access will be bursty, and to avoid - * putting all page number N pages in the same cache as we expect access - * to the metapages (page 0) and the root of a btree (page 1) to be much - * more frequent than a random data page. - */ -#define NCACHE(mp, mf_offset, pgno) \ - (((MPOOL *)mp)->nreg == 1 ? 0 : \ - (((pgno) ^ ((u_int32_t)(mf_offset) >> 3)) % ((MPOOL *)mp)->nreg)) - -/* - * NBUCKET -- - * We make the assumption that early pages of the file are more likely - * to be retrieved than the later pages, which means the top bits will - * be more interesting for hashing as they're less likely to collide. - * That said, as 512 8K pages represents a 4MB file, so only reasonably - * large files will have page numbers with any other than the bottom 9 - * bits set. We XOR in the MPOOL offset of the MPOOLFILE that backs the - * page, since that should also be unique for the page. We don't want - * to do anything very fancy -- speed is more important to us than using - * good hashing. - */ -#define NBUCKET(mc, mf_offset, pgno) \ - (((pgno) ^ ((mf_offset) << 9)) % (mc)->htab_buckets) - /* * File hashing -- * We hash each file to hash bucket based on its fileid @@ -149,15 +121,18 @@ struct __db_mpreg { struct __mpool { /* * The memory pool can be broken up into individual pieces/files. - * Not what we would have liked, but on Solaris you can allocate + * There are two reasons for this: firstly, on Solaris you can allocate * only a little more than 2GB of memory in a contiguous chunk, - * and I expect to see more systems with similar issues. + * and I expect to see more systems with similar issues. Secondly, + * applications can add / remove pieces to dynamically resize the + * cache. * * While this structure is duplicated in each piece of the cache, * the first of these pieces/files describes the entire pool, the * second only describe a piece of the cache. */ db_mutex_t mtx_region; /* Region mutex. */ + db_mutex_t mtx_resize; /* Resizing mutex. */ /* * The lsn field and list of underlying MPOOLFILEs are thread protected @@ -166,22 +141,33 @@ struct __mpool { DB_LSN lsn; /* Maximum checkpoint LSN. */ /* Configuration information: protected by the region lock. */ - size_t mp_mmapsize; /* Maximum file size for mmap. */ - int mp_maxopenfd; /* Maximum open file descriptors. */ - int mp_maxwrite; /* Maximum buffers to write. */ - int mp_maxwrite_sleep; /* Sleep after writing max buffers. */ + u_int32_t max_nreg; /* Maximum number of regions. */ + size_t mp_mmapsize; /* Maximum file size for mmap. */ + int mp_maxopenfd; /* Maximum open file descriptors. */ + int mp_maxwrite; /* Maximum buffers to write. */ + db_timeout_t mp_maxwrite_sleep; /* Sleep after writing max buffers. */ /* - * The nreg, regids and maint_off fields are not thread protected, - * as they are initialized during mpool creation, and not modified - * again. + * The number of regions and the total number of hash buckets across + * all regions. + * These fields are not protected by a mutex because we assume that we + * can read a 32-bit value atomically. They are only modified by cache + * resizing which holds the mpool resizing mutex to ensure that + * resizing is single-threaded. See the comment in mp_resize.c for + * more information. */ u_int32_t nreg; /* Number of underlying REGIONS. */ + u_int32_t nbuckets; /* Total number of hash buckets. */ + + /* + * The regid field is protected by the resize mutex. + */ roff_t regids; /* Array of underlying REGION Ids. */ + roff_t ftab; /* Hash table of files. */ + /* - * The following structure fields only describe the per-cache portion - * of the region. + * The following fields describe the per-cache portion of the region. * * The htab and htab_buckets fields are not thread protected as they * are initialized during mpool creation, and not modified again. @@ -189,12 +175,11 @@ struct __mpool { * The last_checked and lru_count fields are thread protected by * the region lock. */ - u_int32_t htab_buckets; /* Number of hash table entries. */ - roff_t htab; /* Hash table offset. */ - u_int32_t last_checked; /* Last bucket checked for free. */ - u_int32_t lru_count; /* Counter for buffer LRU */ - - roff_t ftab; /* Hash table of files. */ + roff_t htab; /* Hash table offset. */ + u_int32_t htab_buckets; /* Number of hash table entries. */ + u_int32_t last_checked; /* Last bucket checked for free. */ + u_int32_t lru_count; /* Counter for buffer LRU. */ + int32_t lru_reset; /* Hash bucket lru reset point. */ /* * The stat fields are generally not thread protected, and cannot be @@ -211,6 +196,24 @@ struct __mpool { */ u_int32_t put_counter; /* Count of page put calls. */ + /* + * Cache flush operations take a long time... + * + * Some cache flush operations want to ignore the app's configured + * max-write parameters (they are trying to quickly shut down an + * environment, for example). We can't specify that as an argument + * to the cache region functions, because we may decide to ignore + * the max-write configuration after the cache operation has begun. + * If the variable suppress_maxwrite is set, ignore the application + * max-write config. + * + * We may want to interrupt cache flush operations in high-availability + * configurations. + */ +#define DB_MEMP_SUPPRESS_WRITE 0x01 +#define DB_MEMP_SYNC_INTERRUPT 0x02 + u_int32_t config_flags; + /* Free frozen buffer headers, protected by the region lock. */ SH_TAILQ_HEAD(__free_frozen) free_frozen; @@ -218,6 +221,99 @@ struct __mpool { SH_TAILQ_HEAD(__alloc_frozen) alloc_frozen; }; +/* + * NREGION -- + * Select a cache region given the bucket number. + */ +#define NREGION(mp, bucket) \ + ((bucket) / (mp)->htab_buckets) + +/* + * MP_HASH -- + * We make the assumption that early pages of the file are more likely + * to be retrieved than the later pages, which means the top bits will + * be more interesting for hashing as they're less likely to collide. + * That said, as 512 8K pages represents a 4MB file, so only reasonably + * large files will have page numbers with any other than the bottom 9 + * bits set. We XOR in the MPOOL offset of the MPOOLFILE that backs the + * page, since that should also be unique for the page. We don't want + * to do anything very fancy -- speed is more important to us than using + * good hashing. + * + * Since moving to a dynamic hash, which boils down to using some of the + * least significant bits of the hash value, we no longer want to use a + * simple shift here, because it's likely with a bit shift that mf_offset + * will be ignored, and pages from different files end up in the same + * hash bucket. Use a nearby prime instead. + */ +#define MP_HASH(mf_offset, pgno) \ + ((pgno) ^ ((mf_offset) * 509)) + +/* + * Inline the calculation of the mask, since we can't reliably store the mask + * with the number of buckets in the region. + * + * This is equivalent to: + * mask = (1 << __db_log2(nbuckets)) - 1; + */ +#define MP_MASK(nbuckets, mask) do { \ + for (mask = 1; mask < (nbuckets); mask = (mask << 1) | 1) \ + ; \ +} while (0) + +#define MP_HASH_BUCKET(hash, nbuckets, mask, bucket) do { \ + (bucket) = (hash) & (mask); \ + if ((bucket) >= (nbuckets)) \ + (bucket) &= ((mask) >> 1); \ +} while (0) + +#define MP_BUCKET(mf_offset, pgno, nbuckets, bucket) do { \ + u_int32_t __mask; \ + MP_MASK(nbuckets, __mask); \ + MP_HASH_BUCKET(MP_HASH(mf_offset, pgno), nbuckets, \ + __mask, bucket); \ +} while (0) + +/* + * MP_GET_REGION -- + * Select the region for a given page. + */ +#define MP_GET_REGION(dbmfp, pgno, infopp, ret) do { \ + DB_MPOOL *__t_dbmp; \ + MPOOL *__t_mp; \ + \ + __t_dbmp = dbmfp->dbenv->mp_handle; \ + __t_mp = __t_dbmp->reginfo[0].primary; \ + if (__t_mp->max_nreg == 1) { \ + *(infopp) = &__t_dbmp->reginfo[0]; \ + } else \ + ret = __memp_get_bucket((dbmfp), (pgno), (infopp), NULL);\ +} while (0) + +/* + * MP_GET_BUCKET -- + * Select and lock the bucket for a given page. + */ +#define MP_GET_BUCKET(dbmfp, pgno, infopp, hp, ret) do { \ + DB_MPOOL *__t_dbmp; \ + MPOOL *__t_mp; \ + roff_t __t_mf_offset; \ + u_int32_t __t_bucket; \ + \ + __t_dbmp = (dbmfp)->dbenv->mp_handle; \ + __t_mp = __t_dbmp->reginfo[0].primary; \ + if (__t_mp->max_nreg == 1) { \ + *(infopp) = &__t_dbmp->reginfo[0]; \ + __t_mf_offset = R_OFFSET(*(infopp), (dbmfp)->mfp); \ + MP_BUCKET(__t_mf_offset, (pgno), __t_mp->nbuckets, __t_bucket);\ + (hp) = R_ADDR(*(infopp), __t_mp->htab); \ + (hp) = &(hp)[__t_bucket]; \ + MUTEX_LOCK(dbenv, (hp)->mtx_hash); \ + ret = 0; \ + } else \ + ret = __memp_get_bucket((dbmfp), (pgno), (infopp), &(hp));\ +} while (0) + struct __db_mpool_hash { db_mutex_t mtx_hash; /* Per-bucket mutex. */ db_mutex_t mtx_io; /* Buffer I/O mutex. */ @@ -227,10 +323,12 @@ struct __db_mpool_hash { u_int32_t hash_page_dirty;/* Count of dirty pages. */ u_int32_t hash_priority; /* Minimum priority of bucket buffer. */ +#ifndef __TEST_DB_NO_STATISTICS u_int32_t hash_io_wait; /* Count of I/O waits. */ u_int32_t hash_frozen; /* Count of frozen buffers. */ u_int32_t hash_thawed; /* Count of thawed buffers. */ u_int32_t hash_frozen_freed;/* Count of freed frozen buffers. */ +#endif DB_LSN old_reader; /* Oldest snapshot reader (cached). */ diff --git a/db/dbinc/mutex.h b/db/dbinc/mutex.h index 3adf150a0..d48ddb0ff 100644 --- a/db/dbinc/mutex.h +++ b/db/dbinc/mutex.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: mutex.h,v 12.20 2006/08/24 14:45:29 bostic Exp $ + * $Id: mutex.h,v 12.28 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_MUTEX_H_ @@ -27,58 +26,57 @@ extern "C" { #define MTX_APPLICATION 1 #define MTX_DB_HANDLE 2 #define MTX_ENV_DBLIST 3 -#define MTX_ENV_REGION 4 -#define MTX_LOCK_REGION 5 -#define MTX_LOGICAL_LOCK 6 -#define MTX_LOG_FILENAME 7 -#define MTX_LOG_FLUSH 8 -#define MTX_LOG_HANDLE 9 -#define MTX_LOG_REGION 10 -#define MTX_MPOOLFILE_HANDLE 11 -#define MTX_MPOOL_FH 12 -#define MTX_MPOOL_FILE_BUCKET 13 -#define MTX_MPOOL_HANDLE 14 -#define MTX_MPOOL_HASH_BUCKET 15 -#define MTX_MPOOL_IO 16 -#define MTX_MPOOL_REGION 17 -#define MTX_MUTEX_REGION 18 -#define MTX_MUTEX_TEST 19 -#define MTX_REP_DATABASE 20 -#define MTX_REP_REGION 21 -#define MTX_SEQUENCE 22 -#define MTX_TWISTER 23 -#define MTX_TXN_ACTIVE 24 -#define MTX_TXN_CHKPT 25 -#define MTX_TXN_COMMIT 26 -#define MTX_TXN_MVCC 27 -#define MTX_TXN_REGION 28 -#define MTX_MAX_ENTRY 28 +#define MTX_ENV_HANDLE 4 +#define MTX_ENV_REGION 5 +#define MTX_LOCK_REGION 6 +#define MTX_LOGICAL_LOCK 7 +#define MTX_LOG_FILENAME 8 +#define MTX_LOG_FLUSH 9 +#define MTX_LOG_HANDLE 10 +#define MTX_LOG_REGION 11 +#define MTX_MPOOLFILE_HANDLE 12 +#define MTX_MPOOL_FH 13 +#define MTX_MPOOL_FILE_BUCKET 14 +#define MTX_MPOOL_HANDLE 15 +#define MTX_MPOOL_HASH_BUCKET 16 +#define MTX_MPOOL_IO 17 +#define MTX_MPOOL_REGION 18 +#define MTX_MUTEX_REGION 19 +#define MTX_MUTEX_TEST 20 +#define MTX_REP_CKP 21 +#define MTX_REP_DATABASE 22 +#define MTX_REP_EVENT 23 +#define MTX_REP_REGION 24 +#define MTX_SEQUENCE 25 +#define MTX_TWISTER 26 +#define MTX_TXN_ACTIVE 27 +#define MTX_TXN_CHKPT 28 +#define MTX_TXN_COMMIT 29 +#define MTX_TXN_MVCC 30 +#define MTX_TXN_REGION 31 + +#define MTX_MAX_ENTRY 31 /* Redirect mutex calls to the correct functions. */ -#if defined(HAVE_MUTEX_PTHREADS) || \ +#if !defined(HAVE_MUTEX_HYBRID) && ( \ + defined(HAVE_MUTEX_PTHREADS) || \ defined(HAVE_MUTEX_SOLARIS_LWP) || \ - defined(HAVE_MUTEX_UI_THREADS) + defined(HAVE_MUTEX_UI_THREADS)) #define __mutex_init(a, b, c) __db_pthread_mutex_init(a, b, c) #define __mutex_lock(a, b) __db_pthread_mutex_lock(a, b) #define __mutex_unlock(a, b) __db_pthread_mutex_unlock(a, b) #define __mutex_destroy(a, b) __db_pthread_mutex_destroy(a, b) -#endif - -#if defined(HAVE_MUTEX_WIN32) || defined(HAVE_MUTEX_WIN32_GCC) +#elif defined(HAVE_MUTEX_WIN32) || defined(HAVE_MUTEX_WIN32_GCC) #define __mutex_init(a, b, c) __db_win32_mutex_init(a, b, c) #define __mutex_lock(a, b) __db_win32_mutex_lock(a, b) #define __mutex_unlock(a, b) __db_win32_mutex_unlock(a, b) #define __mutex_destroy(a, b) __db_win32_mutex_destroy(a, b) -#endif - -#if defined(HAVE_MUTEX_FCNTL) +#elif defined(HAVE_MUTEX_FCNTL) #define __mutex_init(a, b, c) __db_fcntl_mutex_init(a, b, c) #define __mutex_lock(a, b) __db_fcntl_mutex_lock(a, b) #define __mutex_unlock(a, b) __db_fcntl_mutex_unlock(a, b) #define __mutex_destroy(a, b) __db_fcntl_mutex_destroy(a, b) -#endif - -#ifndef __mutex_init /* Test-and-set is the default */ +#else #define __mutex_init(a, b, c) __db_tas_mutex_init(a, b, c) #define __mutex_lock(a, b) __db_tas_mutex_lock(a, b) #define __mutex_unlock(a, b) __db_tas_mutex_unlock(a, b) @@ -93,6 +91,7 @@ extern "C" { * the macros to always return a panic value rather than saving the actual * return value of the mutex routine. */ +#ifdef HAVE_MUTEX_SUPPORT #define MUTEX_LOCK(dbenv, mutex) do { \ if ((mutex) != MUTEX_INVALID && \ __mutex_lock(dbenv, mutex) != 0) \ @@ -103,6 +102,18 @@ extern "C" { __mutex_unlock(dbenv, mutex) != 0) \ return (DB_RUNRECOVERY); \ } while (0) +#else +/* + * XXX + * There are calls to lock/unlock mutexes outside of #ifdef's -- replace + * the call with something the compiler can discard, but which will make + * if-then-else blocks work correctly. + */ +#define MUTEX_LOCK(dbenv, mutex) \ + (mutex) = (mutex); +#define MUTEX_UNLOCK(dbenv, mutex) \ + (mutex) = (mutex); +#endif /* * Berkeley DB ports may require single-threading at places in the code. diff --git a/db/dbinc/mutex_int.h b/db/dbinc/mutex_int.h index 74bc813e2..79e42bf99 100644 --- a/db/dbinc/mutex_int.h +++ b/db/dbinc/mutex_int.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: mutex_int.h,v 12.22 2006/08/24 14:45:29 bostic Exp $ + * $Id: mutex_int.h,v 12.39 2007/06/21 16:39:20 ubell Exp $ */ #ifndef _DB_MUTEX_INT_H_ @@ -17,7 +16,7 @@ extern "C" { /********************************************************************* * POSIX.1 pthreads interface. *********************************************************************/ -#ifdef HAVE_MUTEX_PTHREADS +#if defined(HAVE_MUTEX_PTHREADS) #include #define MUTEX_FIELDS \ @@ -196,13 +195,22 @@ typedef abilock_t tsl_t; * correctly as far as we know. *********************************************************************/ #ifdef HAVE_MUTEX_SOLARIS_LOCK_TRY +#include #include typedef lock_t tsl_t; +/* + * The functions are declared in , but under #ifdef KERNEL. + * Re-declare them here to avoid warnings. + */ +extern int _lock_try(lock_t *); +extern void _lock_clear(lock_t *); + #ifdef LOAD_ACTUAL_MUTEX_CODE #define MUTEX_INIT(x) 0 #define MUTEX_SET(x) _lock_try(x) #define MUTEX_UNSET(x) _lock_clear(x) +#define MUTEX_MEMBAR(x) membar_enter(); #endif #endif @@ -289,7 +297,7 @@ typedef unsigned int tsl_t; * platforms, and it improves performance on Pentium 4 processor platforms." */ #ifdef HAVE_MUTEX_WIN32 -#ifndef _WIN64 +#if !defined(_WIN64) && !defined(DB_WINCE) #define MUTEX_PAUSE {__asm{_emit 0xf3}; __asm{_emit 0x90}} #endif #endif @@ -628,7 +636,7 @@ typedef unsigned char tsl_t; #define MUTEX_SET(tsl) ({ \ register tsl_t *__l = (tsl); \ register tsl_t __r; \ - __asm__ volatile \ + asm volatile \ ("ldstub [%1],%0; stbar" \ : "=r"( __r) : "r" (__l)); \ !__r; \ @@ -636,6 +644,7 @@ typedef unsigned char tsl_t; #define MUTEX_UNSET(tsl) (*(tsl) = 0) #define MUTEX_INIT(tsl) MUTEX_UNSET(tsl) +#define MUTEX_MEMBAR(x) ({asm volatile("stbar");}) #endif #endif @@ -658,7 +667,7 @@ typedef int tsl_t; #ifdef HAVE_MUTEX_MIPS_GCC_ASSEMBLY typedef u_int32_t tsl_t; -#define MUTEX_ALIGN 4 +#define MUTEX_ALIGN 4 #ifdef LOAD_ACTUAL_MUTEX_CODE /* @@ -669,7 +678,7 @@ static inline int MUTEX_SET(tsl_t *tsl) { register tsl_t *__l = tsl; register tsl_t __r; - __asm__ __volatile__( + asm volatile( " .set push \n" " .set mips2 \n" " .set noreorder \n" @@ -691,28 +700,38 @@ MUTEX_SET(tsl_t *tsl) { #endif /********************************************************************* - * x86/gcc assembly. + * x86/gcc (32- and 64-bit) assembly. *********************************************************************/ -#ifdef HAVE_MUTEX_X86_GCC_ASSEMBLY +#if defined(HAVE_MUTEX_X86_GCC_ASSEMBLY) || \ + defined(HAVE_MUTEX_X86_64_GCC_ASSEMBLY) typedef unsigned char tsl_t; #ifdef LOAD_ACTUAL_MUTEX_CODE /* gcc/x86: 0 is clear, 1 is set. */ #define MUTEX_SET(tsl) ({ \ - register tsl_t *__l = (tsl); \ - int __r; \ - asm volatile("movl $1,%%eax\n" \ - "lock\n" \ - "xchgb %1,%%al\n" \ - "xorl $1,%%eax" \ - : "=&a" (__r), "=m" (*__l) \ - : "m1" (*__l) \ - ); \ - __r & 1; \ + tsl_t __r; \ + asm volatile("movb $1, %b0\n\t" \ + "xchgb %b0,%1" \ + : "=&q" (__r) \ + : "m" (*(volatile tsl_t *)(tsl)) \ + : "memory", "cc"); \ + !__r; \ }) #define MUTEX_UNSET(tsl) (*(volatile tsl_t *)(tsl) = 0) #define MUTEX_INIT(tsl) MUTEX_UNSET(tsl) +/* + * We need to pass a valid address to generate the memory barrier + * otherwise PURIFY will complain. Use something referenced recently + * and initialized. + */ +#if defined(HAVE_MUTEX_X86_GCC_ASSEMBLY) +#define MUTEX_MEMBAR(addr) \ + ({ asm volatile ("lock; addl $0, %0" ::"m" (addr): "memory"); 1; }) +#else +#define MUTEX_MEMBAR(addr) \ + ({ asm volatile ("mfence" ::: "memory"); 1; }) +#endif /* * From Intel's performance tuning documentation (and see SR #6975): @@ -727,32 +746,6 @@ typedef unsigned char tsl_t; #endif #endif -/********************************************************************* - * x86_64/gcc assembly. - *********************************************************************/ -#ifdef HAVE_MUTEX_X86_64_GCC_ASSEMBLY -typedef unsigned char tsl_t; - -#ifdef LOAD_ACTUAL_MUTEX_CODE -/* gcc/x86_64: 0 is clear, 1 is set. */ -#define MUTEX_SET(tsl) ({ \ - register tsl_t *__l = (tsl); \ - int __r; \ - asm volatile("mov $1,%%rax\n" \ - "lock\n" \ - "xchgb %1,%%al\n" \ - "xor $1,%%rax" \ - : "=&a" (__r), "=m" (*__l) \ - : "1m" (*__l) \ - ); \ - __r & 1; \ -}) - -#define MUTEX_UNSET(tsl) (*(tsl) = 0) -#define MUTEX_INIT(tsl) MUTEX_UNSET(tsl) -#endif -#endif - /* * Mutex alignment defaults to sizeof(unsigned int). * @@ -799,7 +792,8 @@ struct __db_mutexmgr { */ typedef struct __db_mutexregion { /* These fields are initialized at create time and never modified. */ - roff_t mutex_offset; /* Offset of mutex array */ + roff_t mutex_off_alloc;/* Offset of mutex array */ + roff_t mutex_off; /* Adjusted offset of mutex array */ size_t mutex_size; /* Size of the aligned mutex */ roff_t thread_off; /* Offset of the thread area. */ @@ -813,13 +807,17 @@ typedef struct __db_mutexregion { struct __db_mutex_t { /* Mutex. */ #ifdef MUTEX_FIELDS - MUTEX_FIELDS + MUTEX_FIELDS /* Opaque thread mutex structures. */ #endif -#if !defined(MUTEX_FIELDS) && !defined(HAVE_MUTEX_FCNTL) +#if defined(HAVE_MUTEX_HYBRID) || \ + (!defined(MUTEX_FIELDS) && !defined(HAVE_MUTEX_FCNTL)) tsl_t tas; /* Test and set. */ #endif - pid_t pid; /* Process owning mutex */ - db_threadid_t tid; /* Thread owning mutex */ +#ifdef HAVE_MUTEX_HYBRID + volatile u_int32_t wait; /* Count of waiters. */ +#endif + pid_t pid; /* Process owning mutex */ + db_threadid_t tid; /* Thread owning mutex */ u_int32_t mutex_next_link; /* Linked list of free mutexes. */ @@ -837,7 +835,7 @@ struct __db_mutex_t { /* Mutex. */ * the possible flags values, getting a single byte on some machines * is expensive, and the mutex structure is a MP hot spot. */ - u_int32_t flags; /* MUTEX_XXX */ + volatile u_int32_t flags; /* MUTEX_XXX */ }; /* Macro to get a reference to a specific mutex. */ diff --git a/db/dbinc/os.h b/db/dbinc/os.h index 792c04dd9..9e324a67e 100644 --- a/db/dbinc/os.h +++ b/db/dbinc/os.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: os.h,v 12.18 2006/09/05 15:02:30 mjc Exp $ + * $Id: os.h,v 12.25 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_OS_H_ @@ -86,6 +85,12 @@ extern "C" { /* DB filehandle. */ struct __fh_t { + /* + * Linked list of DB_FH's, linked from the DB_ENV, used to keep track + * of all open file handles for resource cleanup. + */ + TAILQ_ENTRY(__fh_t) q; + /* * The file-handle mutex is only used to protect the handle/fd * across seek and read/write pairs, it does not protect the @@ -95,13 +100,16 @@ struct __fh_t { int ref; /* Reference count. */ +#ifdef HAVE_BREW + IFile *ifp; /* IFile pointer */ +#endif #if defined(DB_WIN32) HANDLE handle; /* Windows/32 file handle. */ HANDLE trunc_handle; /* Handle for truncate calls. */ #endif int fd; /* POSIX file descriptor. */ - char *name; /* File name (ref DB_FH_UNLINK) */ + char *name; /* File name at open. */ /* * Last seek statistics, used for zero-filling on filesystems @@ -111,9 +119,10 @@ struct __fh_t { u_int32_t pgsize; u_int32_t offset; -#define DB_FH_NOSYNC 0x01 /* Handle doesn't need to be sync'd. */ -#define DB_FH_OPENED 0x02 /* Handle is valid. */ -#define DB_FH_UNLINK 0x04 /* Unlink on close */ +#define DB_FH_ENVLINK 0x01 /* We're linked on the DB_ENV. */ +#define DB_FH_NOSYNC 0x02 /* Handle doesn't need to be sync'd. */ +#define DB_FH_OPENED 0x04 /* Handle is valid. */ +#define DB_FH_UNLINK 0x08 /* Unlink on close */ u_int8_t flags; }; diff --git a/db/dbinc/qam.h b/db/dbinc/qam.h index b76c92cd2..636ac886f 100644 --- a/db/dbinc/qam.h +++ b/db/dbinc/qam.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: qam.h,v 12.9 2006/08/24 14:45:29 bostic Exp $ + * $Id: qam.h,v 12.14 2007/05/17 17:22:36 bostic Exp $ */ #ifndef _DB_QAM_H_ @@ -162,14 +161,15 @@ typedef enum { QAM_NAME_REMOVE } qam_name_op; -#define __qam_fget(dbp, pgnoaddr, lsnp, flags, addrp) \ - __qam_fprobe(dbp, *pgnoaddr, lsnp, addrp, QAM_PROBE_GET, flags) +#define __qam_fget(dbp, pgnoaddr, lsnp, flags, addrp) \ + __qam_fprobe(dbp, *pgnoaddr, \ + lsnp, addrp, QAM_PROBE_GET, DB_PRIORITY_UNCHANGED, flags) -#define __qam_fput(dbp, pgno, addrp, flags) \ - __qam_fprobe(dbp, pgno, NULL, addrp, QAM_PROBE_PUT, flags) +#define __qam_fput(dbp, pgno, addrp, priority) \ + __qam_fprobe(dbp, pgno, NULL, addrp, QAM_PROBE_PUT, priority, 0) -#define __qam_dirty(dbp, pgno, pagep, lsnp, flags) \ - __qam_fprobe(dbp, pgno, lsnp, pagep, QAM_PROBE_DIRTY, flags) +#define __qam_dirty(dbp, pgno, pagep, lsnp, priority) \ + __qam_fprobe(dbp, pgno, lsnp, pagep, QAM_PROBE_DIRTY, priority, 0) #if defined(__cplusplus) } diff --git a/db/dbinc/region.h b/db/dbinc/region.h index d184f4418..84490f804 100644 --- a/db/dbinc/region.h +++ b/db/dbinc/region.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: region.h,v 12.9 2006/08/24 14:45:30 bostic Exp $ + * $Id: region.h,v 12.14 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_REGION_H_ @@ -176,14 +175,15 @@ typedef struct __db_reg_env { /* * The mtx_regenv mutex protects the environment reference count and - * memory allocation from the primary shared region (the crypto and - * replication implementations allocate memory from the primary shared - * region). The rest of the fields are initialized at creation time, - * and so don't need mutex protection. The flags, op_timestamp and - * rep_timestamp fields are used by replication only and are - * protected * by the replication mutex. The rep_timestamp is - * is not protected when it is used in recovery as that is already - * single threaded. + * memory allocation from the primary shared region (the crypto, thread + * control block and replication implementations allocate memory from + * the primary shared region). + * + * The rest of the fields are initialized at creation time, and don't + * need mutex protection. The flags, op_timestamp and rep_timestamp + * fields are used by replication only and are protected by the + * replication mutex. The rep_timestamp is is not protected when it + * is used in recovery as that is already single threaded. */ db_mutex_t mtx_regenv; /* Refcnt, region allocation mutex. */ u_int32_t refcnt; /* References to the environment. */ @@ -193,6 +193,8 @@ typedef struct __db_reg_env { roff_t cipher_off; /* Offset of cipher area */ + roff_t thread_off; /* Offset of the thread area. */ + roff_t rep_off; /* Offset of the replication area. */ #define DB_REGENV_REPLOCKED 0x0001 /* Env locked for rep backup. */ u_int32_t flags; /* Shared environment flags. */ @@ -223,12 +225,12 @@ typedef struct __db_region { /* * Per-process/per-attachment information about a single region. */ -struct __db_reginfo_t { /* __db_r_attach IN parameters. */ +struct __db_reginfo_t { /* __env_region_attach IN parameters. */ DB_ENV *dbenv; /* Enclosing environment. */ reg_type_t type; /* Region type. */ u_int32_t id; /* Region id. */ - /* __db_r_attach OUT parameters. */ + /* env_region_attach OUT parameters. */ REGION *rp; /* Shared region. */ char *name; /* Region file name. */ @@ -261,11 +263,17 @@ struct __db_reginfo_t { /* __db_r_attach IN parameters. */ (F_ISSET((reginfop)->dbenv, DB_ENV_PRIVATE) ? (roff_t)(p) : \ (roff_t)((u_int8_t *)(p) - (u_int8_t *)(reginfop)->addr)) -/* PANIC_CHECK: Check to see if the DB environment is dead. */ -#define PANIC_CHECK(dbenv) \ - if ((dbenv)->reginfo != NULL && ((REGENV *) \ +/* + * PANIC_ISSET, PANIC_CHECK: + * Check to see if the DB environment is dead. + */ +#define PANIC_ISSET(dbenv) \ + ((dbenv)->reginfo != NULL && ((REGENV *) \ ((REGINFO *)(dbenv)->reginfo)->primary)->panic != 0 && \ - !F_ISSET((dbenv), DB_ENV_NOPANIC)) \ + !F_ISSET((dbenv), DB_ENV_NOPANIC)) + +#define PANIC_CHECK(dbenv) \ + if (PANIC_ISSET(dbenv)) \ return (__db_panic_msg(dbenv)); #if defined(__cplusplus) diff --git a/db/dbinc/rep.h b/db/dbinc/rep.h index f1ea36e2f..949f16f0c 100644 --- a/db/dbinc/rep.h +++ b/db/dbinc/rep.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2001-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2001,2007 Oracle. All rights reserved. * - * $Id: rep.h,v 12.57 2006/09/12 01:06:35 alanb Exp $ + * $Id: rep.h,v 12.91 2007/06/22 16:42:45 bostic Exp $ */ #ifndef _DB_REP_H_ @@ -35,41 +34,42 @@ extern "C" { #define REP_FILE 7 /* Page of a database file. NOTUSED */ #define REP_FILE_FAIL 8 /* File requested does not exist. */ #define REP_FILE_REQ 9 /* Request for a database file. NOTUSED */ -#define REP_LOG 10 /* Log record. */ -#define REP_LOG_MORE 11 /* There are more log records to request. */ -#define REP_LOG_REQ 12 /* Request for a log record. */ -#define REP_MASTER_REQ 13 /* Who is the master */ -#define REP_NEWCLIENT 14 /* Announces the presence of a new client. */ -#define REP_NEWFILE 15 /* Announce a log file change. */ -#define REP_NEWMASTER 16 /* Announces who the master is. */ -#define REP_NEWSITE 17 /* Announces that a site has heard from a new +#define REP_LEASE_GRANT 10 /* Client grants a lease to a master. */ +#define REP_LOG 11 /* Log record. */ +#define REP_LOG_MORE 12 /* There are more log records to request. */ +#define REP_LOG_REQ 13 /* Request for a log record. */ +#define REP_MASTER_REQ 14 /* Who is the master */ +#define REP_NEWCLIENT 15 /* Announces the presence of a new client. */ +#define REP_NEWFILE 16 /* Announce a log file change. */ +#define REP_NEWMASTER 17 /* Announces who the master is. */ +#define REP_NEWSITE 18 /* Announces that a site has heard from a new * site; like NEWCLIENT, but indirect. A * NEWCLIENT message comes directly from the new * client while a NEWSITE comes indirectly from * someone who heard about a NEWSITE. */ -#define REP_PAGE 18 /* Database page. */ -#define REP_PAGE_FAIL 19 /* Requested page does not exist. */ -#define REP_PAGE_MORE 20 /* There are more pages to request. */ -#define REP_PAGE_REQ 21 /* Request for a database page. */ -#define REP_REREQUEST 22 /* Force rerequest. */ -#define REP_UPDATE 23 /* Environment hotcopy information. */ -#define REP_UPDATE_REQ 24 /* Request for hotcopy information. */ -#define REP_VERIFY 25 /* A log record for verification. */ -#define REP_VERIFY_FAIL 26 /* The client is outdated. */ -#define REP_VERIFY_REQ 27 /* Request for a log record to verify. */ -#define REP_VOTE1 28 /* Send out your information for an election. */ -#define REP_VOTE2 29 /* Send a "you are master" vote. */ - +#define REP_PAGE 19 /* Database page. */ +#define REP_PAGE_FAIL 20 /* Requested page does not exist. */ +#define REP_PAGE_MORE 21 /* There are more pages to request. */ +#define REP_PAGE_REQ 22 /* Request for a database page. */ +#define REP_REREQUEST 23 /* Force rerequest. */ +#define REP_START_SYNC 24 /* Tell client to begin syncing a ckp.*/ +#define REP_UPDATE 25 /* Environment hotcopy information. */ +#define REP_UPDATE_REQ 26 /* Request for hotcopy information. */ +#define REP_VERIFY 27 /* A log record for verification. */ +#define REP_VERIFY_FAIL 28 /* The client is outdated. */ +#define REP_VERIFY_REQ 29 /* Request for a log record to verify. */ +#define REP_VOTE1 30 /* Send out your information for an election. */ +#define REP_VOTE2 31 /* Send a "you are master" vote. */ /* * Maximum message number for conversion tables. Update this * value as the largest message number above increases. * * !!! * NOTE: When changing messages above, the two tables for upgrade support - * need adjusting. They are in rep_record.c. + * need adjusting. They are in rep_util.c. */ -#define REP_MAX_MSG 29 +#define REP_MAX_MSG 31 /* * This is the list of client-to-client requests messages. @@ -96,48 +96,30 @@ extern "C" { #define DB_LOGVERSION_43 10 #define DB_LOGVERSION_44 11 #define DB_LOGVERSION_45 12 +#define DB_LOGVERSION_46 13 #define DB_REPVERSION_INVALID 0 #define DB_REPVERSION_42 1 #define DB_REPVERSION_43 2 #define DB_REPVERSION_44 3 #define DB_REPVERSION_45 3 -#define DB_REPVERSION 3 +#define DB_REPVERSION_46 4 +#define DB_REPVERSION DB_REPVERSION_46 /* - * REP_PRINT_MESSAGE - * A function to print a debugging message. - * * RPRINT - * A macro for debug printing. Takes as an arg the arg set for __db_msg. - * - * !!! This function assumes a local DB_MSGBUF variable called 'mb'. + * REP_PRINT_MESSAGE + * Macros for verbose replication messages. */ -#ifdef DIAGNOSTIC -#define REP_PRINT_MESSAGE(dbenv, eid, rp, str, fl) \ - __rep_print_message(dbenv, eid, rp, str, fl) -#define RPRINT(e, x) do { \ - if (FLD_ISSET((e)->verbose, DB_VERB_REPLICATION)) { \ - DB_MSGBUF_INIT(&mb); \ - if ((e)->db_errpfx != NULL) \ - __db_msgadd((e), &mb, "%s: ", (e)->db_errpfx); \ - else if (REP_ON(e)) { \ - REP *_r = (e)->rep_handle->region; \ - if (F_ISSET(_r, REP_F_CLIENT)) \ - __db_msgadd((e), &mb, "CLIENT: "); \ - else if (F_ISSET((_r), REP_F_MASTER)) \ - __db_msgadd((e), &mb, "MASTER: "); \ - else \ - __db_msgadd((e), &mb, "REP_UNDEF: "); \ - } else \ - __db_msgadd((e), &mb, "REP_UNDEF: "); \ - __db_msgadd x; \ - DB_MSGBUF_FLUSH((e), &mb); \ +#define RPRINT(dbenv, x) do { \ + if (FLD_ISSET((dbenv)->verbose, DB_VERB_REPLICATION)) { \ + __rep_print x; \ + } \ +} while (0) +#define REP_PRINT_MESSAGE(dbenv, eid, rp, str, fl) do { \ + if (FLD_ISSET((dbenv)->verbose, DB_VERB_REPLICATION)) { \ + __rep_print_message(dbenv, eid, rp, str, fl); \ } \ } while (0) -#else -#define REP_PRINT_MESSAGE(dbenv, eid, rp, str, fl) -#define RPRINT(e, x) -#endif /* * Election gen file name @@ -151,6 +133,23 @@ extern "C" { * election, should it crash. */ #define REP_EGENNAME "__db.rep.egen" +#define REP_GENNAME "__db.rep.gen" + +/* + * Internal init flag file name: + * The existence of this file serves as an indication that the client is in the + * process of Internal Initialization, in case it crashes before completing. + * During internal init the client's partially reconstructed database pages and + * logs may be in an inconsistent state, so much so that running recovery must + * be avoided. Furthermore, there is no other way to reliably recognize this + * condition. Therefore, when we open an environment, and we're just about to + * run recovery, we check for this file first. If it exists we must discard all + * logs and databases. This avoids the recovery problems, and leads to a fresh + * attempt at internal init if the environment becomes a replication client and + * finds a master. The list of databases which may need to be removed is stored + * in this file. + */ +#define REP_INITNAME "__db.rep.init" /* * Database types for __rep_client_dbinit @@ -166,6 +165,16 @@ typedef enum { #define REP_SYSTEM_UNLOCK(dbenv) \ MUTEX_UNLOCK(dbenv, (dbenv)->rep_handle->region->mtx_region) +/* + * Macros for manipulating the event synchronization. We use a separate mutex + * so that an application's call-back function can be invoked without locking + * the whole region. + */ +#define REP_EVENT_LOCK(dbenv) \ + MUTEX_LOCK(dbenv, (dbenv)->rep_handle->region->mtx_event) +#define REP_EVENT_UNLOCK(dbenv) \ + MUTEX_UNLOCK(dbenv, (dbenv)->rep_handle->region->mtx_event) + /* * REP -- * Shared replication structure. @@ -173,6 +182,8 @@ typedef enum { typedef struct __rep { db_mutex_t mtx_region; /* Region mutex. */ db_mutex_t mtx_clientdb; /* Client database mutex. */ + db_mutex_t mtx_ckp; /* Checkpoint mutex. */ + roff_t lease_off; /* Offset of the lease table. */ roff_t tally_off; /* Offset of the tally region. */ roff_t v2tally_off; /* Offset of the vote2 tally region. */ int eid; /* Environment id. */ @@ -186,7 +197,13 @@ typedef struct __rep { int nvotes; /* Number of votes needed. */ int priority; /* My priority in an election. */ int config_nsites; - db_timeout_t elect_timeout; + + db_timeout_t elect_timeout; /* Normal/full election timeouts. */ + db_timeout_t full_elect_timeout; + + db_timeout_t chkpt_delay; /* Master checkpoint delay. */ + +#define REP_DEFAULT_THROTTLE (10 * MEGABYTE) /* Default value is < 1Gig. */ u_int32_t gbytes; /* Limit on data sent in single... */ u_int32_t bytes; /* __rep_process_message call. */ #define DB_REP_REQUEST_GAP 4 @@ -196,16 +213,38 @@ typedef struct __rep { u_int32_t max_gap; /* Maximum number of records before * requesting a missing log record. */ /* Status change information */ - int elect_th; /* A thread is in rep_elect. */ - u_int32_t msg_th; /* Number of callers in rep_proc_msg. */ - int lockout_th; /* A thread is in msg lockout. */ + u_int32_t apply_th; /* Number of callers in rep_apply. */ + u_int32_t msg_th; /* Number of callers in rep_proc_msg.*/ u_int32_t handle_cnt; /* Count of handles in library. */ u_int32_t op_cnt; /* Multi-step operation count.*/ - int in_recovery; /* Running recovery now. */ + DB_LSN ckp_lsn; /* LSN for syncing a checkpoint. */ + DB_LSN max_prep_lsn; /* Max LSN of txn_prepare record. */ + + /* + * Event notification synchronization: the mtx_event and associate + * fields which it protects govern event notification to the + * application. They form a guarantee that no matter how crazy the + * thread scheduling gets, the application sees a sensible, orderly + * progression of events. + */ + db_mutex_t mtx_event; /* Serializes event notification. */ + /* + * Latest generation whose NEWMASTER event the application has been + * notified of. Also serves to force STARTUPDONE to occur after + * NEWMASTER. + */ + u_int32_t newmaster_event_gen; + /* + * Latest local victory of an election that the application has been + * notified of, expressed as the election generation number. This + * ensures we notify the application exactly once when it wins an + * election. + */ + u_int32_t notified_egen; /* Backup information. */ u_int32_t nfiles; /* Number of files we have info on. */ - u_int32_t curfile; /* Current file we're getting. */ + u_int32_t curfile; /* Cur file we're getting (0-based). */ __rep_fileinfo_args *curinfo; /* Current file info ptr. */ void *finfo; /* Current file info buffer. */ void *nextinfo; /* Next file info buffer. */ @@ -229,50 +268,81 @@ typedef struct __rep { DB_LSN w_lsn; /* Winner LSN. */ u_int32_t w_tiebreaker; /* Winner tiebreaking value. */ int votes; /* Number of votes for this site. */ - u_int32_t esec; /* Election start seconds. */ - u_int32_t eusec; /* Election start useconds. */ + + db_timespec etime; /* Election start timestamp. */ + + /* Leases. */ + db_timeout_t lease_timeout; /* Lease timeout. */ + db_timespec lease_duration; /* Lease timeout with clock skew. */ + u_int32_t clock_skew; /* Clock skew factor. */ + db_timespec grant_expire; /* Local grant expiration time. */ /* Statistics. */ DB_REP_STAT stat; +#if defined(HAVE_REPLICATION_THREADS) && defined(HAVE_STATISTICS) + DB_REPMGR_STAT mstat; +#endif /* Configuration. */ #define REP_C_BULK 0x00001 /* Bulk transfer. */ #define REP_C_DELAYCLIENT 0x00002 /* Delay client sync-up. */ -#define REP_C_NOAUTOINIT 0x00004 /* No auto initialization. */ -#define REP_C_NOWAIT 0x00008 /* Immediate error return. */ +#define REP_C_LEASE 0x00004 /* Leases configured. */ +#define REP_C_NOAUTOINIT 0x00008 /* No auto initialization. */ +#define REP_C_NOWAIT 0x00010 /* Immediate error return. */ u_int32_t config; /* Configuration flags. */ -#define REP_F_CLIENT 0x00001 /* Client replica. */ -#define REP_F_DELAY 0x00002 /* Delaying client sync-up. */ -#define REP_F_EPHASE1 0x00004 /* In phase 1 of election. */ -#define REP_F_EPHASE2 0x00008 /* In phase 2 of election. */ -#define REP_F_MASTER 0x00010 /* Master replica. */ -#define REP_F_MASTERELECT 0x00020 /* Master elect */ -#define REP_F_NOARCHIVE 0x00040 /* Rep blocks log_archive */ -#define REP_F_READY 0x00080 /* Wait for txn_cnt to be 0. */ -#define REP_F_RECOVER_LOG 0x00100 /* In recovery - log. */ -#define REP_F_RECOVER_PAGE 0x00200 /* In recovery - pages. */ -#define REP_F_RECOVER_UPDATE 0x00400 /* In recovery - files. */ -#define REP_F_RECOVER_VERIFY 0x00800 /* In recovery - verify. */ -#define REP_F_TALLY 0x01000 /* Tallied vote before elect. */ +#define REP_F_CLIENT 0x00000001 /* Client replica. */ +#define REP_F_DELAY 0x00000002 /* Delaying client sync-up. */ +#define REP_F_EGENUPDATE 0x00000004 /* Egen updated by ALIVE msg. */ +#define REP_F_EPHASE0 0x00000008 /* In phase 0 of election. */ +#define REP_F_EPHASE1 0x00000010 /* In phase 1 of election. */ +#define REP_F_EPHASE2 0x00000020 /* In phase 2 of election. */ +#define REP_F_GROUP_ESTD 0x00000040 /* Rep group is established. */ +#define REP_F_INREPELECT 0x00000080 /* Thread in rep_elect. */ +#define REP_F_MASTER 0x00000100 /* Master replica. */ +#define REP_F_MASTERELECT 0x00000200 /* Master elect. */ +#define REP_F_NEWFILE 0x00000400 /* Newfile in progress. */ +#define REP_F_NOARCHIVE 0x00000800 /* Rep blocks log_archive. */ +#define REP_F_READY_API 0x00001000 /* Need handle_cnt to be 0. */ +#define REP_F_READY_APPLY 0x00002000 /* Need apply_th to be 0. */ +#define REP_F_READY_MSG 0x00004000 /* Need msg_th to be 0. */ +#define REP_F_READY_OP 0x00008000 /* Need op_cnt to be 0. */ +#define REP_F_RECOVER_LOG 0x00010000 /* In recovery - log. */ +#define REP_F_RECOVER_PAGE 0x00020000 /* In recovery - pages. */ +#define REP_F_RECOVER_UPDATE 0x00040000 /* In recovery - files. */ +#define REP_F_RECOVER_VERIFY 0x00080000 /* In recovery - verify. */ +#define REP_F_SKIPPED_APPLY 0x00100000 /* Skipped applying a record. */ +#define REP_F_START_CALLED 0x00200000 /* Rep_start called. */ +#define REP_F_TALLY 0x00400000 /* Tallied vote before elect. */ u_int32_t flags; } REP; /* * Recovery flag mask to easily check any/all recovery bits. That is - * REP_F_READY and all REP_F_RECOVER*. This must change if the values - * of the flags change. + * REP_F_READY_{API|OP} and all REP_F_RECOVER*. This must change if the values + * of the flags change. NOTE: We do not include REP_F_READY_MSG in + * this mask because it is used frequently in non-recovery related + * areas and we want to manipulate it separately (see especially + * in __rep_new_master). */ #define REP_F_RECOVER_MASK \ - (REP_F_READY | REP_F_RECOVER_LOG | REP_F_RECOVER_PAGE | \ + (REP_F_READY_API | REP_F_READY_OP | \ + REP_F_RECOVER_LOG | REP_F_RECOVER_PAGE | \ REP_F_RECOVER_UPDATE | REP_F_RECOVER_VERIFY) +/* + * REP_F_EPHASE0 is not a *real* election phase. It is used for + * master leases and allowing the client to find the master or + * expire its lease. However, EPHASE0 is cleared by __rep_elect_done. + */ #define IN_ELECTION(R) \ F_ISSET((R), REP_F_EPHASE1 | REP_F_EPHASE2) #define IN_ELECTION_TALLY(R) \ F_ISSET((R), REP_F_EPHASE1 | REP_F_EPHASE2 | REP_F_TALLY) #define ELECTION_MAJORITY(n) (((n) / 2) + 1) +#define REP_F_INTERNAL_INIT_MASK (REP_F_RECOVER_PAGE | REP_F_RECOVER_LOG) + #define IS_REP_MASTER(dbenv) \ (REP_ON(dbenv) && \ F_ISSET(((REP *)(dbenv)->rep_handle->region), REP_F_MASTER)) @@ -281,6 +351,11 @@ typedef struct __rep { (REP_ON(dbenv) && \ F_ISSET(((REP *)(dbenv)->rep_handle->region), REP_F_CLIENT)) +#define IS_USING_LEASES(dbenv) \ + (REP_ON(dbenv) && \ + FLD_ISSET(((REP *)(dbenv)->rep_handle->region)->config, \ + REP_C_LEASE)) + #define IS_CLIENT_PGRECOVER(dbenv) \ (IS_REP_CLIENT(dbenv) && \ F_ISSET(((REP *)(dbenv)->rep_handle->region), REP_F_RECOVER_PAGE)) @@ -357,14 +432,20 @@ struct __db_rep { u_int32_t max_gap; /* Maximum number of records before * requesting a missing log record. */ + u_int32_t clock_skew; /* Clock skew factor. */ u_int32_t config; /* Configuration flags. */ int config_nsites; - db_timeout_t elect_timeout; + + db_timeout_t elect_timeout; /* Normal/full election timeouts. */ + db_timeout_t full_elect_timeout; + + db_timeout_t chkpt_delay; /* Master checkpoint delay. */ + int my_priority; + db_timeout_t lease_timeout; /* Master leases. */ /* * End of shared configuration information. */ - int (*send) /* Send function. */ __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); @@ -419,16 +500,19 @@ struct __db_rep { socket_t listen_fd; repmgr_netaddr_t my_addr; - int finished; + int finished; /* Repmgr threads should shut down. */ int done_one; /* TODO: rename */ int found_master; - -/* The repertoire of operations we can ask election thread to perform: */ -#define ELECT_ELECTION 1 /* Call for an election. */ -#define ELECT_REPSTART 2 /* Call rep_start(CLIENT) to find a master. */ -#define ELECT_FAILURE_ELECTION 3 /* Do election, adjusting nsites to account - for a failed master. */ + int takeover_pending; /* We've been elected master. */ + +/* Operations we can ask election thread to perform (OOB value is 0): */ +#define ELECT_ELECTION 1 /* Call for an election. */ +#define ELECT_FAILURE_ELECTION 2 /* Do election, adjusting nsites to account + for a failed master. */ +#define ELECT_REPSTART 3 /* Call rep_start(CLIENT). */ +#define ELECT_SEEK_MASTER 4 /* Alternate rep_start to find master. */ int operation_needed; /* Next op for election thread. */ + #endif /* HAVE_REPLICATION_THREADS */ }; @@ -436,26 +520,66 @@ struct __db_rep { * Control structure for replication communication infrastructure. */ typedef struct { -#define DB_REPVERSION 3 u_int32_t rep_version; /* Replication version number. */ u_int32_t log_version; /* Log version number. */ DB_LSN lsn; /* Log sequence number. */ u_int32_t rectype; /* Message type. */ u_int32_t gen; /* Generation number. */ + db_timespec msg_time; /* Timestamp for leases. */ /* - * Define old DB_LOG_ values that we must support here. + * Define old DB_LOG_ values that we must support here. For reasons of + * compatibility with old versions, these values must be reserved explicitly in + * the list of flag values (below) */ #define DB_LOG_PERM_42_44 0x20 #define DB_LOG_RESEND_42_44 0x40 #define REPCTL_ELECTABLE 0x01 /* Upgraded client is electable. */ -#define REPCTL_INIT 0x02 /* Internal init message. */ +#define REPCTL_FLUSH 0x02 /* Record should be flushed. */ +#define REPCTL_GROUP_ESTD 0x04 /* Message from site in a group. */ +#define REPCTL_INIT 0x08 /* Internal init message. */ +#define REPCTL_LEASE 0x10 /* Lease related message.. */ + /* + * Skip over reserved values 0x20 + * and 0x40, as explained above. + */ +#define REPCTL_LOG_END 0x80 /* Approximate end of group-wide log. */ #define REPCTL_PERM DB_LOG_PERM_42_44 #define REPCTL_RESEND DB_LOG_RESEND_42_44 u_int32_t flags; /* log_put flag value. */ } REP_CONTROL; +/* + * Control message format for 4.5 release and earlier. + */ +typedef struct { + u_int32_t rep_version; /* Replication version number. */ + u_int32_t log_version; /* Log version number. */ + + DB_LSN lsn; /* Log sequence number. */ + u_int32_t rectype; /* Message type. */ + u_int32_t gen; /* Generation number. */ + u_int32_t flags; /* log_put flag value. */ +} REP_OLD_CONTROL; + +#define LEASE_REFRESH_TRIES 3 /* Number of times to try refresh. */ + +/* Master granted lease information. */ +typedef struct __rep_lease_entry { + int eid; /* EID of client grantor. */ + db_timespec start_time; /* Start time clients echo back. */ + db_timespec end_time; /* Master lease expiration time. */ + DB_LSN lease_lsn; /* Durable LSN lease applies to. */ +} REP_LEASE_ENTRY; + +typedef struct __rep_grant_info { + db_timespec msg_time; /* Echoed master timestamp. */ +#ifdef DIAGNOSTIC + db_timespec expire_time; /* Local expiration time. */ +#endif +} REP_GRANT_INFO; + /* Election vote information, 4.2 version. Does not have nvotes. */ typedef struct __rep_old_vote { u_int32_t egen; /* Election generation. */ @@ -512,8 +636,7 @@ typedef struct { u_int32_t type; /* Item type in buffer (log, page). */ DB_LSN lsn; /* First LSN in buffer. */ int eid; /* ID of potential recipients. */ -#define BULK_FORCE 0x001 /* Force buffer after this record. */ -#define BULK_XMIT 0x002 /* Buffer in transit. */ +#define BULK_XMIT 0x001 /* Buffer in transit. */ u_int32_t *flagsp; /* Buffer flags. */ } REP_BULK; diff --git a/db/dbinc/repmgr.h b/db/dbinc/repmgr.h index c027035f0..e2254331b 100644 --- a/db/dbinc/repmgr.h +++ b/db/dbinc/repmgr.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2006,2007 Oracle. All rights reserved. * - * $Id: repmgr.h,v 12.10 2006/09/19 14:14:07 mjc Exp $ + * $Id: repmgr.h,v 12.13 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_REPMGR_H_ @@ -70,11 +69,6 @@ struct __repmgr_runnable { int finished; }; -typedef struct { - u_int32_t tv_sec; - u_int32_t tv_usec; -} repmgr_timeval_t; - /* * Information about pending connection establishment retry operations. * @@ -94,7 +88,7 @@ typedef struct { struct __repmgr_retry { TAILQ_ENTRY(__repmgr_retry) entries; u_int eid; - repmgr_timeval_t time; + db_timespec time; }; /* @@ -340,7 +334,6 @@ typedef char * sockopt_t; #define iov_len len #define iov_base buf -typedef DWORD select_timeout_t; typedef DWORD threadsync_timeout_t; #define REPMGR_SYNC_INITED(db_rep) (db_rep->waiters != NULL) @@ -356,7 +349,6 @@ typedef void * sockopt_t; #define closesocket(fd) close(fd) -typedef struct timeval select_timeout_t; typedef struct timespec threadsync_timeout_t; #define REPMGR_SYNC_INITED(db_rep) (db_rep->read_pipe >= 0) diff --git a/db/dbinc/shqueue.h b/db/dbinc/shqueue.h index ffaa15748..6e4a0f461 100644 --- a/db/dbinc/shqueue.h +++ b/db/dbinc/shqueue.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: shqueue.h,v 12.9 2006/09/07 15:11:26 mjc Exp $ + * $Id: shqueue.h,v 12.12 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_SHQUEUE_H_ @@ -381,7 +380,7 @@ struct { \ } else { \ (elm)->field.stqe_next = -1; \ (head)->stqh_last = \ - SH_PTR_TO_OFF(head, &elm->field.stqe_next); \ + SH_PTR_TO_OFF(head, &(elm)->field.stqe_next); \ } \ (listelm)->field.stqe_next = SH_PTR_TO_OFF(listelm, elm); \ (elm)->field.stqe_prev = SH_TAILQ_NEXT_TO_PREV(listelm, field); \ @@ -393,7 +392,7 @@ struct { \ (elm)->field.stqe_prev + \ SH_PTR_TO_OFF(SH_TAILQ_NEXTP(elm, \ field, type), elm); \ - *__SH_TAILQ_PREV_OFF(elm, field) += elm->field.stqe_next;\ + *__SH_TAILQ_PREV_OFF(elm, field) += (elm)->field.stqe_next;\ } else { \ (head)->stqh_last = (elm)->field.stqe_prev + \ SH_PTR_TO_OFF(head, elm); \ diff --git a/db/dbinc/tcl_db.h b/db/dbinc/tcl_db.h index 4f589431b..41c9e3ecb 100644 --- a/db/dbinc/tcl_db.h +++ b/db/dbinc/tcl_db.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1999-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1999,2007 Oracle. All rights reserved. * - * $Id: tcl_db.h,v 12.8 2006/08/24 14:45:30 bostic Exp $ + * $Id: tcl_db.h,v 12.11 2007/05/17 15:15:05 bostic Exp $ */ #ifndef _DB_TCL_DB_H_ @@ -83,7 +82,7 @@ typedef struct dbtcl_info { char *i_errpfx; /* Callbacks--Tcl_Objs containing proc names */ - Tcl_Obj *i_btcompare; + Tcl_Obj *i_compare; Tcl_Obj *i_dupcompare; Tcl_Obj *i_event; Tcl_Obj *i_hashproc; diff --git a/db/dbinc/txn.h b/db/dbinc/txn.h index 4d0048809..3f7c23e93 100644 --- a/db/dbinc/txn.h +++ b/db/dbinc/txn.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: txn.h,v 12.13 2006/08/24 14:45:30 bostic Exp $ + * $Id: txn.h,v 12.18 2007/05/17 19:33:03 bostic Exp $ */ #ifndef _DB_TXN_H_ @@ -36,6 +35,7 @@ struct __txn_logrec; typedef struct __txn_logrec DB_TXNLOGREC; #define TXN_INVALID 0 /* Invalid transaction ID. */ #define DEF_MAX_TXNS 100 /* Default max transactions. */ +#define TXN_NSLOTS 4 /* Initial slots to hold DB refs */ /* * Internal data maintained in shared memory for each transaction. @@ -51,6 +51,10 @@ typedef struct __txn_detail { roff_t parent; /* Offset of transaction's parent. */ roff_t name; /* Offset of txn name. */ + u_int32_t nlog_dbs; /* Number of databases used. */ + u_int32_t nlog_slots; /* Number of allocated slots. */ + roff_t log_dbs; /* Databases used. */ + DB_LSN read_lsn; /* Read LSN for MVCC. */ DB_LSN visible_lsn; /* LSN at which this transaction's changes are visible. */ @@ -82,6 +86,7 @@ typedef struct __txn_detail { u_int32_t bqual; /* bqual_length from XID */ u_int32_t gtrid; /* gtrid_length from XID */ int32_t format; /* XA format */ + roff_t slots[TXN_NSLOTS]; /* Initial DB slot allocation. */ } TXN_DETAIL; /* diff --git a/db/dbinc/win_db.h b/db/dbinc/win_db.h new file mode 100644 index 000000000..a7d3a7c8d --- /dev/null +++ b/db/dbinc/win_db.h @@ -0,0 +1,151 @@ +/*- + * $Id: win_db.h,v 12.25 2007/06/29 14:11:25 alexg Exp $ + * + * The following provides the information necessary to build Berkeley + * DB on native Windows, and other Windows environments such as MinGW. + */ + +/* + * Avoid warnings with Visual Studio 8. + */ +#ifndef _CRT_SECURE_NO_DEPRECATE +#define _CRT_SECURE_NO_DEPRECATE 1 +#endif + +/* + * Windows NT 4.0 and later required for the replication manager. + */ +#ifdef HAVE_REPLICATION_THREADS +#define _WIN32_WINNT 0x0400 +#endif + +#ifndef DB_WINCE +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#endif /* DB_WINCE */ + +#include +#include +#include +#include +#include + +/* + * To build Tcl interface libraries, the include path must be configured to + * use the directory containing , usually the include directory in + * the Tcl distribution. + */ +#ifdef DB_TCL_SUPPORT +#include +#endif + +#define WIN32_LEAN_AND_MEAN +#include +#include + +#ifdef HAVE_GETADDRINFO +/* + * Need explicit includes for IPv6 support on Windows. Both are necessary to + * ensure that pre WinXP versions have an implementation of the getaddrinfo API. + */ +#include +#include +#endif + +/* + * Microsoft's C runtime library has fsync, getcwd, getpid, snprintf and + * vsnprintf, but under different names. + */ +#define fsync _commit + +#ifndef DB_WINCE +#define getcwd(buf, size) _getcwd(buf, size) +#endif +#define getpid GetCurrentProcessId +#define snprintf _snprintf +#define strcasecmp _stricmp +#define strncasecmp _strnicmp +#define vsnprintf _vsnprintf + +#define h_errno WSAGetLastError() + +/* + * Win32 does not have getopt. + * + * The externs are here, instead of using db_config.h and clib_port.h, because + * that approach changes function names to BDB specific names, and the example + * programs use getopt and can't use BDB specific names. + */ +#if defined(__cplusplus) +extern "C" { +#endif +extern int getopt(int, char * const *, const char *); +#if defined(__cplusplus) +} +#endif + +/* + * Microsoft's compiler _doesn't_ define __STDC__ unless you invoke it with + * arguments turning OFF all vendor extensions. Even more unfortunately, if + * we do that, it fails to parse windows.h!!!!! So, we define __STDC__ here, + * after windows.h comes in. Note: the compiler knows we've defined it, and + * starts enforcing strict ANSI compliance from this point on. + */ +#ifndef __STDC__ +#define __STDC__ 1 +#endif + +#ifdef _UNICODE +#define TO_TSTRING(dbenv, s, ts, ret) do { \ + int __len = (int)strlen(s) + 1; \ + ts = NULL; \ + if ((ret = __os_malloc((dbenv), \ + __len * sizeof(_TCHAR), &(ts))) == 0 && \ + MultiByteToWideChar(CP_UTF8, 0, \ + (s), -1, (ts), __len) == 0) \ + ret = __os_posix_err(__os_get_syserr()); \ + } while (0) + +#define FROM_TSTRING(dbenv, ts, s, ret) { \ + int __len = WideCharToMultiByte(CP_UTF8, 0, ts, -1, \ + NULL, 0, NULL, NULL); \ + s = NULL; \ + if ((ret = __os_malloc((dbenv), __len, &(s))) == 0 && \ + WideCharToMultiByte(CP_UTF8, 0, \ + (ts), -1, (s), __len, NULL, NULL) == 0) \ + ret = __os_posix_err(__os_get_syserr()); \ + } while (0) + +#define FREE_STRING(dbenv, s) do { \ + if ((s) != NULL) { \ + __os_free((dbenv), (s)); \ + (s) = NULL; \ + } \ + } while (0) + +#else +#define TO_TSTRING(dbenv, s, ts, ret) (ret) = 0, (ts) = (_TCHAR *)(s) +#define FROM_TSTRING(dbenv, ts, s, ret) (ret) = 0, (s) = (char *)(ts) +#define FREE_STRING(dbenv, ts) +#endif + +#ifndef INVALID_HANDLE_VALUE +#define INVALID_HANDLE_VALUE ((HANDLE)-1) +#endif + +#ifndef INVALID_FILE_ATTRIBUTES +#define INVALID_FILE_ATTRIBUTES ((DWORD)-1) +#endif + +#ifndef INVALID_SET_FILE_POINTER +#define INVALID_SET_FILE_POINTER ((DWORD)-1) +#endif diff --git a/db/dbinc/xa.h b/db/dbinc/xa.h index 5768c58c9..050f9a01f 100644 --- a/db/dbinc/xa.h +++ b/db/dbinc/xa.h @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1998-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1998,2007 Oracle. All rights reserved. * - * $Id: xa.h,v 12.4 2006/08/24 14:45:30 bostic Exp $ + * $Id: xa.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ */ /* * Start of xa.h header diff --git a/db/dbinc_auto/btree_ext.h b/db/dbinc_auto/btree_ext.h index 82916e84b..2cf47bff5 100644 --- a/db/dbinc_auto/btree_ext.h +++ b/db/dbinc_auto/btree_ext.h @@ -21,13 +21,13 @@ int __bam_ca_undodup __P((DB *, u_int32_t, db_pgno_t, u_int32_t, u_int32_t)); int __bam_ca_rsplit __P((DBC *, db_pgno_t, db_pgno_t)); int __bam_ca_split __P((DBC *, db_pgno_t, db_pgno_t, db_pgno_t, u_int32_t, int)); int __bam_ca_undosplit __P((DB *, db_pgno_t, db_pgno_t, db_pgno_t, u_int32_t)); -int __bam_c_init __P((DBC *, DBTYPE)); -int __bam_c_refresh __P((DBC *)); -int __bam_c_count __P((DBC *, db_recno_t *)); -int __bam_c_dup __P((DBC *, DBC *)); +int __bamc_init __P((DBC *, DBTYPE)); +int __bamc_refresh __P((DBC *)); +int __bamc_count __P((DBC *, db_recno_t *)); +int __bamc_dup __P((DBC *, DBC *)); int __bam_bulk_overflow __P((DBC *, u_int32_t, db_pgno_t, u_int8_t *)); int __bam_bulk_duplicates __P((DBC *, db_pgno_t, u_int8_t *, int32_t *, int32_t **, u_int8_t **, u_int32_t *, int)); -int __bam_c_rget __P((DBC *, DBT *)); +int __bamc_rget __P((DBC *, DBT *)); int __bam_opd_exists __P((DBC *, db_pgno_t)); int __bam_ditem __P((DBC *, PAGE *, u_int32_t)); int __bam_adjindx __P((DBC *, PAGE *, u_int32_t, u_int32_t, int)); @@ -68,9 +68,9 @@ int __bam_reclaim __P((DB *, DB_TXN *)); int __bam_truncate __P((DBC *, u_int32_t *)); int __ram_open __P((DB *, DB_TXN *, const char *, db_pgno_t, u_int32_t)); int __ram_append __P((DBC *, DBT *, DBT *)); -int __ram_c_del __P((DBC *)); -int __ram_c_get __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); -int __ram_c_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); +int __ramc_del __P((DBC *)); +int __ramc_get __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); +int __ramc_put __P((DBC *, DBT *, DBT *, u_int32_t, db_pgno_t *)); int __ram_ca __P((DBC *, ca_recno_arg, int *)); int __ram_getno __P((DBC *, const DBT *, db_recno_t *, int)); int __ram_writeback __P((DB *)); @@ -83,7 +83,7 @@ int __bam_search __P((DBC *, db_pgno_t, const DBT *, u_int32_t, int, db_recno_t int __bam_stkrel __P((DBC *, u_int32_t)); int __bam_stkgrow __P((DB_ENV *, BTREE_CURSOR *)); int __bam_split __P((DBC *, void *, db_pgno_t *)); -int __bam_pinsert __P((DBC *, EPG *, PAGE *, PAGE *, int)); +int __bam_pinsert __P((DBC *, EPG *, u_int32_t, PAGE *, PAGE *, int)); int __bam_copy __P((DB *, PAGE *, PAGE *, u_int32_t, u_int32_t)); int __bam_stat __P((DBC *, void *, u_int32_t)); int __bam_stat_print __P((DBC *, u_int32_t)); diff --git a/db/dbinc_auto/clib_ext.h b/db/dbinc_auto/clib_ext.h index 941152326..d841c5cfb 100644 --- a/db/dbinc_auto/clib_ext.h +++ b/db/dbinc_auto/clib_ext.h @@ -6,9 +6,6 @@ extern "C" { #endif -#ifndef HAVE_ABORT -void abort __P((void)); -#endif #ifndef HAVE_ATOI int atoi __P((const char *)); #endif @@ -58,6 +55,9 @@ int fprintf __P((FILE *, const char *, ...)); #ifndef HAVE_PRINTF int vfprintf __P((FILE *, const char *, va_list)); #endif +#ifndef HAVE_QSORT +void qsort __P((void *, size_t, size_t, int(*)(const void *, const void *))); +#endif #ifndef HAVE_RAISE int raise __P((int)); #endif diff --git a/db/dbinc_auto/common_ext.h b/db/dbinc_auto/common_ext.h index 8d90d72fe..5525caa11 100644 --- a/db/dbinc_auto/common_ext.h +++ b/db/dbinc_auto/common_ext.h @@ -9,7 +9,6 @@ extern "C" { int __crypto_region_init __P((DB_ENV *)); int __db_isbigendian __P((void)); int __db_byteorder __P((DB_ENV *, int)); -void __db_difftime __P((u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t *, u_int32_t *)); int __db_fchk __P((DB_ENV *, const char *, u_int32_t, u_int32_t)); int __db_fcchk __P((DB_ENV *, const char *, u_int32_t, u_int32_t, u_int32_t)); int __db_ferr __P((const DB_ENV *, const char *, int)); @@ -21,7 +20,6 @@ void __db_assert __P((DB_ENV *, const char *, const char *, int)); #endif int __db_panic_msg __P((DB_ENV *)); int __db_panic __P((DB_ENV *, int)); -void __db_panic_set __P((DB_ENV *, int)); char *__db_unknown_error __P((int)); void __db_syserr __P((const DB_ENV *, int, const char *, ...)) __attribute__ ((__format__ (__printf__, 3, 4))); void __db_err __P((const DB_ENV *, int, const char *, ...)) __attribute__ ((__format__ (__printf__, 3, 4))); @@ -29,12 +27,13 @@ void __db_errx __P((const DB_ENV *, const char *, ...)) __attribute__ ((__format void __db_errcall __P((const DB_ENV *, int, db_error_set_t, const char *, va_list)); void __db_errfile __P((const DB_ENV *, int, db_error_set_t, const char *, va_list)); void __db_msgadd __P((DB_ENV *, DB_MSGBUF *, const char *, ...)) __attribute__ ((__format__ (__printf__, 3, 4))); +void __db_msgadd_ap __P((DB_ENV *, DB_MSGBUF *, const char *, va_list)); void __db_msg __P((const DB_ENV *, const char *, ...)) __attribute__ ((__format__ (__printf__, 2, 3))); int __db_unknown_flag __P((DB_ENV *, char *, u_int32_t)); int __db_unknown_type __P((DB_ENV *, char *, DBTYPE)); int __db_unknown_path __P((DB_ENV *, char *)); -int __db_check_txn __P((DB *, DB_TXN *, u_int32_t, int)); -int __db_txn_deadlock_err __P((DB_ENV *)); +int __db_check_txn __P((DB *, DB_TXN *, DB_LOCKER *, int)); +int __db_txn_deadlock_err __P((DB_ENV *, DB_TXN *)); int __db_not_txn_env __P((DB_ENV *)); int __db_rec_toobig __P((DB_ENV *, u_int32_t, u_int32_t)); int __db_rec_repl __P((DB_ENV *, u_int32_t, u_int32_t)); @@ -47,6 +46,8 @@ int __db_getlong __P((DB_ENV *, const char *, char *, long, long, long *)); int __db_getulong __P((DB_ENV *, const char *, char *, u_long, u_long, u_long *)); void __db_idspace __P((u_int32_t *, int, u_int32_t *, u_int32_t *)); u_int32_t __db_log2 __P((u_int32_t)); +u_int32_t __db_tablesize __P((u_int32_t)); +void __db_hashinit __P((void *, u_int32_t)); int __db_mkpath __P((DB_ENV *, const char *)); int __db_util_arg __P((char *, char *, int *, char ***)); int __db_util_cache __P((DB *, u_int32_t *, int *)); diff --git a/db/dbinc_auto/crypto_ext.h b/db/dbinc_auto/crypto_ext.h index b305ec5a7..92bc8244a 100644 --- a/db/dbinc_auto/crypto_ext.h +++ b/db/dbinc_auto/crypto_ext.h @@ -12,8 +12,8 @@ int __aes_close __P((DB_ENV *, void *)); int __aes_decrypt __P((DB_ENV *, void *, void *, u_int8_t *, size_t)); int __aes_encrypt __P((DB_ENV *, void *, void *, u_int8_t *, size_t)); int __aes_init __P((DB_ENV *, DB_CIPHER *)); -int __crypto_dbenv_close __P((DB_ENV *)); -int __crypto_region_destroy __P((DB_ENV *)); +int __crypto_env_close __P((DB_ENV *)); +int __crypto_env_refresh __P((DB_ENV *)); int __crypto_algsetup __P((DB_ENV *, DB_CIPHER *, u_int32_t, int)); int __crypto_decrypt_meta __P((DB_ENV *, DB *, u_int8_t *, int)); int __crypto_set_passwd __P((DB_ENV *, DB_ENV *)); diff --git a/db/dbinc_auto/db_ext.h b/db/dbinc_auto/db_ext.h index 141bd5149..f29513678 100644 --- a/db/dbinc_auto/db_ext.h +++ b/db/dbinc_auto/db_ext.h @@ -26,8 +26,8 @@ int __crdel_inmem_rename_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void int __crdel_inmem_remove_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __db_master_open __P((DB *, DB_TXN *, const char *, u_int32_t, int, DB **)); int __db_master_update __P((DB *, DB *, DB_TXN *, const char *, DBTYPE, mu_action, const char *, u_int32_t)); -int __db_dbenv_setup __P((DB *, DB_TXN *, const char *, const char *, u_int32_t, u_int32_t)); -int __db_dbenv_mpool __P((DB *, const char *, u_int32_t)); +int __db_env_setup __P((DB *, DB_TXN *, const char *, const char *, u_int32_t, u_int32_t)); +int __db_env_mpool __P((DB *, const char *, u_int32_t)); int __db_close __P((DB *, DB_TXN *, u_int32_t)); int __db_refresh __P((DB *, DB_TXN *, u_int32_t, int *, int)); int __db_log_page __P((DB *, DB_TXN *, DB_LSN *, db_pgno_t, PAGE *)); @@ -35,7 +35,7 @@ int __db_backup_name __P((DB_ENV *, const char *, DB_TXN *, char **)); #ifdef CONFIG_TEST int __db_testcopy __P((DB_ENV *, DB *, const char *)); #endif -int __db_cursor_int __P((DB *, DB_TXN *, DBTYPE, db_pgno_t, int, u_int32_t, DBC **)); +int __db_cursor_int __P((DB *, DB_TXN *, DBTYPE, db_pgno_t, int, DB_LOCKER *, DBC **)); int __db_put __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int __db_del __P((DB *, DB_TXN *, DBT *, u_int32_t)); int __db_sync __P((DB *)); @@ -90,26 +90,31 @@ int __db_pg_new_print __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __db_pg_init_print __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __db_pg_sort_print __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __db_init_print __P((DB_ENV *, int (***)(DB_ENV *, DBT *, DB_LSN *, db_recops, void *), size_t *)); -int __db_c_close __P((DBC *)); -int __db_c_destroy __P((DBC *)); -int __db_c_count __P((DBC *, db_recno_t *)); -int __db_c_del __P((DBC *, u_int32_t)); -int __db_c_dup __P((DBC *, DBC **, u_int32_t)); -int __db_c_idup __P((DBC *, DBC **, u_int32_t)); -int __db_c_newopd __P((DBC *, db_pgno_t, DBC *, DBC **)); -int __db_c_get __P((DBC *, DBT *, DBT *, u_int32_t)); -int __db_c_put __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbc_close __P((DBC *)); +int __dbc_destroy __P((DBC *)); +int __dbc_count __P((DBC *, db_recno_t *)); +int __dbc_del __P((DBC *, u_int32_t)); +int __dbc_dup __P((DBC *, DBC **, u_int32_t)); +int __dbc_idup __P((DBC *, DBC **, u_int32_t)); +int __dbc_newopd __P((DBC *, db_pgno_t, DBC *, DBC **)); +int __dbc_get __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbc_put __P((DBC *, DBT *, DBT *, u_int32_t)); int __db_duperr __P((DB *, u_int32_t)); -int __db_c_secondary_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); -int __db_c_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); -int __db_c_del_primary __P((DBC *)); +int __dbc_secondary_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbc_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); +int __dbc_del_primary __P((DBC *)); int __db_s_first __P((DB *, DB **)); -int __db_s_next __P((DB **)); -int __db_s_done __P((DB *)); +int __db_s_next __P((DB **, DB_TXN *)); +int __db_s_done __P((DB *, DB_TXN *)); u_int32_t __db_partsize __P((u_int32_t, DBT *)); +#ifdef DIAGNOSTIC +void __db_check_skeyset __P((DB *, DBT *)); +#endif int __cdsgroup_begin __P((DB_ENV *, DB_TXN **)); int __db_pgin __P((DB_ENV *, db_pgno_t, void *, DBT *)); int __db_pgout __P((DB_ENV *, db_pgno_t, void *, DBT *)); +int __db_decrypt_pg __P((DB_ENV *, DB *, PAGE *)); +int __db_encrypt_and_checksum_pg __P((DB_ENV *, DB *, PAGE *)); void __db_metaswap __P((PAGE *)); int __db_byteswap __P((DB_ENV *, DB *, db_pgno_t, PAGE *, size_t, int)); int __db_dispatch __P((DB_ENV *, int (**)__P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)), size_t, DBT *, DB_LSN *, db_recops, DB_TXNHEAD *)); @@ -135,6 +140,7 @@ int __db_close_pp __P((DB *, u_int32_t)); int __db_cursor_pp __P((DB *, DB_TXN *, DBC **, u_int32_t)); int __db_cursor __P((DB *, DB_TXN *, DBC **, u_int32_t)); int __db_del_pp __P((DB *, DB_TXN *, DBT *, u_int32_t)); +int __db_exists __P((DB *, DB_TXN *, DBT *, u_int32_t)); int __db_fd_pp __P((DB *, int *)); int __db_get_pp __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int __db_get __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); @@ -146,14 +152,14 @@ int __db_pget __P((DB *, DB_TXN *, DBT *, DBT *, DBT *, u_int32_t)); int __db_put_pp __P((DB *, DB_TXN *, DBT *, DBT *, u_int32_t)); int __db_compact_pp __P((DB *, DB_TXN *, DBT *, DBT *, DB_COMPACT *, u_int32_t, DBT *)); int __db_sync_pp __P((DB *, u_int32_t)); -int __db_c_close_pp __P((DBC *)); -int __db_c_count_pp __P((DBC *, db_recno_t *, u_int32_t)); -int __db_c_del_pp __P((DBC *, u_int32_t)); -int __db_c_dup_pp __P((DBC *, DBC **, u_int32_t)); -int __db_c_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbc_close_pp __P((DBC *)); +int __dbc_count_pp __P((DBC *, db_recno_t *, u_int32_t)); +int __dbc_del_pp __P((DBC *, u_int32_t)); +int __dbc_dup_pp __P((DBC *, DBC **, u_int32_t)); +int __dbc_get_pp __P((DBC *, DBT *, DBT *, u_int32_t)); int __db_secondary_close_pp __P((DB *, u_int32_t)); -int __db_c_pget_pp __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); -int __db_c_put_pp __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbc_pget_pp __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); +int __dbc_put_pp __P((DBC *, DBT *, DBT *, u_int32_t)); int __db_txn_auto_init __P((DB_ENV *, DB_TXN **)); int __db_txn_auto_resolve __P((DB_ENV *, DB_TXN *, int, int)); int __dbt_usercopy __P((DB_ENV *, DBT *)); @@ -167,7 +173,7 @@ int __db_free __P((DBC *, PAGE *)); void __db_freelist_pos __P((db_pgno_t, db_pgno_t *, u_int32_t, u_int32_t *)); #endif #ifdef HAVE_FTRUNCATE -int __db_pg_truncate __P((DB_MPOOLFILE *, DB_TXN *, struct pglist *list, DB_COMPACT *, u_int32_t *, db_pgno_t *, DB_LSN *, int)); +int __db_pg_truncate __P((DB *, DB_TXN *, struct pglist *list, DB_COMPACT *, u_int32_t *, db_pgno_t *, DB_LSN *, int)); #endif #ifdef HAVE_FTRUNCATE int __db_free_truncate __P((DB *, DB_TXN *, u_int32_t, DB_COMPACT *, struct pglist **, u_int32_t *, db_pgno_t *)); @@ -175,6 +181,7 @@ int __db_free_truncate __P((DB *, DB_TXN *, u_int32_t, DB_COMPACT *, struct pgli int __db_lprint __P((DBC *)); int __db_lget __P((DBC *, int, db_pgno_t, db_lockmode_t, u_int32_t, DB_LOCK *)); int __db_lput __P((DBC *, DB_LOCK *)); +int __db_create_internal __P((DB **, DB_ENV *, u_int32_t)); int __dbh_am_chk __P((DB *, u_int32_t)); int __db_get_flags __P((DB *, u_int32_t *)); int __db_set_flags __P((DB *, u_int32_t)); @@ -185,13 +192,14 @@ int __db_open __P((DB *, DB_TXN *, const char *, const char *, DBTYPE, u_int32_t int __db_get_open_flags __P((DB *, u_int32_t *)); int __db_new_file __P((DB *, DB_TXN *, DB_FH *, const char *)); int __db_init_subdb __P((DB *, DB *, const char *, DB_TXN *)); -int __db_chk_meta __P((DB_ENV *, DB *, DBMETA *, int)); -int __db_meta_setup __P((DB_ENV *, DB *, const char *, DBMETA *, u_int32_t, int)); +int __db_chk_meta __P((DB_ENV *, DB *, DBMETA *, u_int32_t)); +int __db_meta_setup __P((DB_ENV *, DB *, const char *, DBMETA *, u_int32_t, u_int32_t)); int __db_goff __P((DB *, DB_TXN *, DBT *, u_int32_t, db_pgno_t, void **, u_int32_t *)); int __db_poff __P((DBC *, const DBT *, db_pgno_t *)); int __db_ovref __P((DBC *, db_pgno_t)); int __db_doff __P((DBC *, db_pgno_t)); int __db_moff __P((DB *, DB_TXN *, const DBT *, db_pgno_t, u_int32_t, int (*)(DB *, const DBT *, const DBT *), int *)); +int __db_coff __P((DB *, DB_TXN *, const DBT *, const DBT *, int (*)(DB *, const DBT *, const DBT *), int *)); int __db_vrfy_overflow __P((DB *, VRFY_DBINFO *, PAGE *, db_pgno_t, u_int32_t)); int __db_vrfy_ovfl_structure __P((DB *, VRFY_DBINFO *, db_pgno_t, u_int32_t, u_int32_t)); int __db_safe_goff __P((DB *, VRFY_DBINFO *, db_pgno_t, DBT *, void *, u_int32_t)); diff --git a/db/dbinc_auto/dbreg_ext.h b/db/dbinc_auto/dbreg_ext.h index 6e7aa8487..cd7b554c9 100644 --- a/db/dbinc_auto/dbreg_ext.h +++ b/db/dbinc_auto/dbreg_ext.h @@ -8,11 +8,14 @@ extern "C" { int __dbreg_setup __P((DB *, const char *, u_int32_t)); int __dbreg_teardown __P((DB *)); +int __dbreg_teardown_int __P((DB_ENV *, FNAME *)); int __dbreg_new_id __P((DB *, DB_TXN *)); int __dbreg_get_id __P((DB *, DB_TXN *, int32_t *)); int __dbreg_assign_id __P((DB *, int32_t)); int __dbreg_revoke_id __P((DB *, int, int32_t)); +int __dbreg_revoke_id_int __P((DB_ENV *, FNAME *, int, int, int32_t)); int __dbreg_close_id __P((DB *, DB_TXN *, u_int32_t)); +int __dbreg_close_id_int __P((DB_ENV *, FNAME *, u_int32_t, int)); int __dbreg_log_close __P((DB_ENV *, FNAME *, DB_TXN *, u_int32_t)); int __dbreg_log_id __P((DB *, DB_TXN *, int32_t, int)); int __dbreg_register_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, u_int32_t, const DBT *, const DBT *, int32_t, DBTYPE, db_pgno_t, u_int32_t)); @@ -25,9 +28,11 @@ int __dbreg_stat_print __P((DB_ENV *, u_int32_t)); void __dbreg_print_fname __P((DB_ENV *, FNAME *)); int __dbreg_add_dbentry __P((DB_ENV *, DB_LOG *, DB *, int32_t)); int __dbreg_rem_dbentry __P((DB_LOG *, int32_t)); -int __dbreg_log_files __P((DB_ENV *)); -int __dbreg_close_files __P((DB_ENV *)); -int __dbreg_invalidate_files __P((DB_ENV *)); +int __dbreg_log_files __P((DB_ENV *, u_int32_t)); +int __dbreg_close_files __P((DB_ENV *, int)); +int __dbreg_close_file __P((DB_ENV *, FNAME *)); +int __dbreg_mark_restored __P((DB_ENV *)); +int __dbreg_invalidate_files __P((DB_ENV *, int)); int __dbreg_id_to_db __P((DB_ENV *, DB_TXN *, DB **, int32_t, int)); int __dbreg_id_to_db_int __P((DB_ENV *, DB_TXN *, DB **, int32_t, int, int)); int __dbreg_id_to_fname __P((DB_LOG *, int32_t, int, FNAME **)); diff --git a/db/dbinc_auto/env_ext.h b/db/dbinc_auto/env_ext.h index 2e0882415..d1742ddea 100644 --- a/db/dbinc_auto/env_ext.h +++ b/db/dbinc_auto/env_ext.h @@ -6,14 +6,14 @@ extern "C" { #endif -void __db_shalloc_init __P((REGINFO *, size_t)); -size_t __db_shalloc_size __P((size_t, size_t)); -int __db_shalloc __P((REGINFO *, size_t, size_t, void *)); -void __db_shalloc_free __P((REGINFO *, void *)); -size_t __db_shalloc_sizeof __P((void *)); -u_int32_t __db_tablesize __P((u_int32_t)); -void __db_hashinit __P((void *, u_int32_t)); +void __env_alloc_init __P((REGINFO *, size_t)); +size_t __env_alloc_overhead __P((void)); +size_t __env_alloc_size __P((size_t)); +int __env_alloc __P((REGINFO *, size_t, void *)); +void __env_alloc_free __P((REGINFO *, void *)); +void __env_alloc_print __P((REGINFO *, u_int32_t)); int __env_read_db_config __P((DB_ENV *)); +int __config_split __P((char *, char *[])); int __env_failchk_pp __P((DB_ENV *, u_int32_t)); int __env_thread_init __P((DB_ENV *, int)); int __env_set_state __P((DB_ENV *, DB_THREAD_INFO **, DB_THREAD_STATE)); @@ -43,6 +43,7 @@ int __env_set_verbose __P((DB_ENV *, u_int32_t, int)); int __db_mi_env __P((DB_ENV *, const char *)); int __db_mi_open __P((DB_ENV *, const char *, int)); int __db_env_config __P((DB_ENV *, char *, u_int32_t)); +int __db_appname __P((DB_ENV *, APPNAME, const char *, u_int32_t, DB_FH **, char **)); int __env_open_pp __P((DB_ENV *, const char *, u_int32_t, int)); int __env_open __P((DB_ENV *, const char *, u_int32_t, int)); int __env_remove __P((DB_ENV *, const char *, u_int32_t)); @@ -50,17 +51,20 @@ int __env_config __P((DB_ENV *, const char *, u_int32_t, int)); int __env_close_pp __P((DB_ENV *, u_int32_t)); int __env_close __P((DB_ENV *, int)); int __env_get_open_flags __P((DB_ENV *, u_int32_t *)); -int __db_appname __P((DB_ENV *, APPNAME, const char *, u_int32_t, DB_FH **, char **)); int __db_apprec __P((DB_ENV *, DB_LSN *, DB_LSN *, int, u_int32_t)); int __log_backup __P((DB_ENV *, DB_LOGC *, DB_LSN *, DB_LSN *, u_int32_t)); int __env_openfiles __P((DB_ENV *, DB_LOGC *, void *, DBT *, DB_LSN *, DB_LSN *, double, int)); int __env_init_rec __P((DB_ENV *, u_int32_t)); -int __db_e_attach __P((DB_ENV *, u_int32_t *)); -int __db_e_golive __P((DB_ENV *)); -int __db_e_detach __P((DB_ENV *, int)); -int __db_e_remove __P((DB_ENV *, u_int32_t)); -int __db_r_attach __P((DB_ENV *, REGINFO *, size_t)); -int __db_r_detach __P((DB_ENV *, REGINFO *, int)); +int __env_attach __P((DB_ENV *, u_int32_t *, int, int)); +int __env_turn_on __P((DB_ENV *)); +int __env_turn_off __P((DB_ENV *, u_int32_t)); +void __env_panic_set __P((DB_ENV *, int)); +int __env_ref_increment __P((DB_ENV *)); +int __env_ref_decrement __P((DB_ENV *)); +int __env_detach __P((DB_ENV *, int)); +int __env_remove_env __P((DB_ENV *)); +int __env_region_attach __P((DB_ENV *, REGINFO *, size_t)); +int __env_region_detach __P((DB_ENV *, REGINFO *, int)); int __envreg_register __P((DB_ENV *, int *)); int __envreg_unregister __P((DB_ENV *, int)); int __envreg_xunlock __P((DB_ENV *)); @@ -70,8 +74,38 @@ void __db_print_fileid __P((DB_ENV *, u_int8_t *, const char *)); void __db_dl __P((DB_ENV *, const char *, u_long)); void __db_dl_pct __P((DB_ENV *, const char *, u_long, int, const char *)); void __db_dlbytes __P((DB_ENV *, const char *, u_long, u_long, u_long)); -void __db_print_reginfo __P((DB_ENV *, REGINFO *, const char *)); +void __db_print_reginfo __P((DB_ENV *, REGINFO *, const char *, u_int32_t)); int __db_stat_not_built __P((DB_ENV *)); +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_close __P((DB_ENV *)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_add_remote_site __P((DB_ENV *, const char *, u_int, int *, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_get_ack_policy __P((DB_ENV *, int *)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_set_ack_policy __P((DB_ENV *, int)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_set_local_site __P((DB_ENV *, const char *, u_int, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_site_list __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_start __P((DB_ENV *, int, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_stat_pp __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_stat_print_pp __P((DB_ENV *, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); +#endif #if defined(__cplusplus) } diff --git a/db/dbinc_auto/fileops_auto.h b/db/dbinc_auto/fileops_auto.h index 9b3a65649..91207bd9e 100644 --- a/db/dbinc_auto/fileops_auto.h +++ b/db/dbinc_auto/fileops_auto.h @@ -37,6 +37,7 @@ typedef struct ___fop_write_args { } __fop_write_args; #define DB___fop_rename 146 +#define DB___fop_rename_noundo 150 typedef struct ___fop_rename_args { u_int32_t type; DB_TXN *txnp; diff --git a/db/dbinc_auto/fileops_ext.h b/db/dbinc_auto/fileops_ext.h index 25b2fe625..2c41b3628 100644 --- a/db/dbinc_auto/fileops_ext.h +++ b/db/dbinc_auto/fileops_ext.h @@ -13,6 +13,8 @@ int __fop_remove_read __P((DB_ENV *, void *, __fop_remove_args **)); int __fop_write_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, const DBT *, u_int32_t, u_int32_t, db_pgno_t, u_int32_t, const DBT *, u_int32_t)); int __fop_write_read __P((DB_ENV *, void *, __fop_write_args **)); int __fop_rename_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, const DBT *, const DBT *, const DBT *, u_int32_t)); +int __fop_rename_noundo_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, const DBT *, const DBT *, const DBT *, u_int32_t)); +int __fop_rename_int_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, const DBT *, const DBT *, const DBT *, u_int32_t, u_int32_t)); int __fop_rename_read __P((DB_ENV *, void *, __fop_rename_args **)); int __fop_file_remove_log __P((DB_ENV *, DB_TXN *, DB_LSN *, u_int32_t, const DBT *, const DBT *, const DBT *, u_int32_t, u_int32_t)); int __fop_file_remove_read __P((DB_ENV *, void *, __fop_file_remove_args **)); @@ -25,14 +27,15 @@ int __fop_file_remove_print __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __fop_init_print __P((DB_ENV *, int (***)(DB_ENV *, DBT *, DB_LSN *, db_recops, void *), size_t *)); int __fop_create __P((DB_ENV *, DB_TXN *, DB_FH **, const char *, APPNAME, int, u_int32_t)); int __fop_remove __P((DB_ENV *, DB_TXN *, u_int8_t *, const char *, APPNAME, u_int32_t)); -int __fop_write __P((DB_ENV *, DB_TXN *, const char *, APPNAME, DB_FH *, u_int32_t, db_pgno_t, u_int32_t, u_int8_t *, u_int32_t, u_int32_t, u_int32_t)); -int __fop_rename __P((DB_ENV *, DB_TXN *, const char *, const char *, u_int8_t *, APPNAME, u_int32_t)); +int __fop_write __P((DB_ENV *, DB_TXN *, const char *, APPNAME, DB_FH *, u_int32_t, db_pgno_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t)); +int __fop_rename __P((DB_ENV *, DB_TXN *, const char *, const char *, u_int8_t *, APPNAME, int, u_int32_t)); int __fop_create_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __fop_remove_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __fop_write_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __fop_rename_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); +int __fop_rename_noundo_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __fop_file_remove_recover __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); -int __fop_lock_handle __P((DB_ENV *, DB *, u_int32_t, db_lockmode_t, DB_LOCK *, u_int32_t)); +int __fop_lock_handle __P((DB_ENV *, DB *, DB_LOCKER *, db_lockmode_t, DB_LOCK *, u_int32_t)); int __fop_file_setup __P((DB *, DB_TXN *, const char *, int, u_int32_t, u_int32_t *)); int __fop_subdb_setup __P((DB *, DB_TXN *, const char *, const char *, int, u_int32_t)); int __fop_remove_setup __P((DB *, DB_TXN *, const char *, u_int32_t)); diff --git a/db/dbinc_auto/hash_ext.h b/db/dbinc_auto/hash_ext.h index f821675ae..8407f64fb 100644 --- a/db/dbinc_auto/hash_ext.h +++ b/db/dbinc_auto/hash_ext.h @@ -7,12 +7,12 @@ extern "C" { #endif int __ham_quick_delete __P((DBC *)); -int __ham_c_init __P((DBC *)); -int __ham_c_count __P((DBC *, db_recno_t *)); -int __ham_c_dup __P((DBC *, DBC *)); +int __hamc_init __P((DBC *)); +int __hamc_count __P((DBC *, db_recno_t *)); +int __hamc_dup __P((DBC *, DBC *)); u_int32_t __ham_call_hash __P((DBC *, u_int8_t *, u_int32_t)); int __ham_init_dbt __P((DB_ENV *, DBT *, u_int32_t, void **, u_int32_t *)); -int __ham_c_update __P((DBC *, u_int32_t, int, int)); +int __hamc_update __P((DBC *, u_int32_t, db_ham_curadj, int)); int __ham_get_clist __P((DB *, db_pgno_t, u_int32_t, DBC ***)); int __ham_insdel_log __P((DB *, DB_TXN *, DB_LSN *, u_int32_t, u_int32_t, db_pgno_t, u_int32_t, DB_LSN *, const DBT *, const DBT *)); int __ham_insdel_read __P((DB_ENV *, void *, __ham_insdel_args **)); @@ -65,6 +65,7 @@ int __ham_dirty_meta __P((DBC *, u_int32_t)); int __ham_db_create __P((DB *)); int __ham_db_close __P((DB *)); int __ham_get_h_ffactor __P((DB *, u_int32_t *)); +int __ham_set_h_compare __P((DB *, int (*)(DB *, const DBT *, const DBT *))); int __ham_get_h_nelem __P((DB *, u_int32_t *)); int __ham_open __P((DB *, DB_TXN *, const char * name, db_pgno_t, u_int32_t)); int __ham_metachk __P((DB *, const char *, HMETA *)); @@ -77,14 +78,16 @@ int __ham_item_last __P((DBC *, db_lockmode_t, db_pgno_t *)); int __ham_item_first __P((DBC *, db_lockmode_t, db_pgno_t *)); int __ham_item_prev __P((DBC *, db_lockmode_t, db_pgno_t *)); int __ham_item_next __P((DBC *, db_lockmode_t, db_pgno_t *)); -void __ham_putitem __P((DB *, PAGE *p, const DBT *, int)); -void __ham_reputpair __P((DB *, PAGE *, u_int32_t, const DBT *, const DBT *)); +int __ham_insertpair __P((DB *, DB_TXN *, PAGE *p, db_indx_t *indxp, const DBT *, const DBT *, int, int)); +int __ham_getindex __P((DB *, DB_TXN *, PAGE *, const DBT *, int, int *, db_indx_t *)); +int __ham_verify_sorted_page __P((DB *, DB_TXN *, PAGE *)); +int __ham_sort_page __P((DB *, DB_TXN *, PAGE **, PAGE *)); int __ham_del_pair __P((DBC *, int)); int __ham_replpair __P((DBC *, DBT *, u_int32_t)); void __ham_onpage_replace __P((DB *, PAGE *, u_int32_t, int32_t, u_int32_t, int, DBT *)); int __ham_split_page __P((DBC *, u_int32_t, u_int32_t)); int __ham_add_el __P((DBC *, const DBT *, const DBT *, int)); -void __ham_copy_item __P((DB *, PAGE *, u_int32_t, PAGE *)); +int __ham_copypair __P((DB *, DB_TXN *, PAGE *, u_int32_t, PAGE *, db_indx_t *)); int __ham_add_ovflpage __P((DBC *, PAGE *, int, PAGE **)); int __ham_get_cpage __P((DBC *, db_lockmode_t)); int __ham_next_cpage __P((DBC *, db_pgno_t)); @@ -112,6 +115,8 @@ int __ham_30_hashmeta __P((DB *, char *, u_int8_t *)); int __ham_30_sizefix __P((DB *, DB_FH *, char *, u_int8_t *)); int __ham_31_hashmeta __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)); int __ham_31_hash __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)); +int __ham_46_hashmeta __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)); +int __ham_46_hash __P((DB *, char *, u_int32_t, DB_FH *, PAGE *, int *)); int __ham_vrfy_meta __P((DB *, VRFY_DBINFO *, HMETA *, db_pgno_t, u_int32_t)); int __ham_vrfy __P((DB *, VRFY_DBINFO *, PAGE *, db_pgno_t, u_int32_t)); int __ham_vrfy_structure __P((DB *, VRFY_DBINFO *, db_pgno_t, u_int32_t)); diff --git a/db/dbinc_auto/int_def.in b/db/dbinc_auto/int_def.in index f88b35dd2..8b59c85d8 100644 --- a/db/dbinc_auto/int_def.in +++ b/db/dbinc_auto/int_def.in @@ -22,8 +22,8 @@ #define __crdel_inmem_remove_recover __crdel_inmem_remove_recover@DB_VERSION_UNIQUE_NAME@ #define __db_master_open __db_master_open@DB_VERSION_UNIQUE_NAME@ #define __db_master_update __db_master_update@DB_VERSION_UNIQUE_NAME@ -#define __db_dbenv_setup __db_dbenv_setup@DB_VERSION_UNIQUE_NAME@ -#define __db_dbenv_mpool __db_dbenv_mpool@DB_VERSION_UNIQUE_NAME@ +#define __db_env_setup __db_env_setup@DB_VERSION_UNIQUE_NAME@ +#define __db_env_mpool __db_env_mpool@DB_VERSION_UNIQUE_NAME@ #define __db_close __db_close@DB_VERSION_UNIQUE_NAME@ #define __db_refresh __db_refresh@DB_VERSION_UNIQUE_NAME@ #define __db_log_page __db_log_page@DB_VERSION_UNIQUE_NAME@ @@ -86,26 +86,31 @@ #define __db_pg_init_print __db_pg_init_print@DB_VERSION_UNIQUE_NAME@ #define __db_pg_sort_print __db_pg_sort_print@DB_VERSION_UNIQUE_NAME@ #define __db_init_print __db_init_print@DB_VERSION_UNIQUE_NAME@ -#define __db_c_close __db_c_close@DB_VERSION_UNIQUE_NAME@ -#define __db_c_destroy __db_c_destroy@DB_VERSION_UNIQUE_NAME@ -#define __db_c_count __db_c_count@DB_VERSION_UNIQUE_NAME@ -#define __db_c_del __db_c_del@DB_VERSION_UNIQUE_NAME@ -#define __db_c_dup __db_c_dup@DB_VERSION_UNIQUE_NAME@ -#define __db_c_idup __db_c_idup@DB_VERSION_UNIQUE_NAME@ -#define __db_c_newopd __db_c_newopd@DB_VERSION_UNIQUE_NAME@ -#define __db_c_get __db_c_get@DB_VERSION_UNIQUE_NAME@ -#define __db_c_put __db_c_put@DB_VERSION_UNIQUE_NAME@ +#define __dbc_close __dbc_close@DB_VERSION_UNIQUE_NAME@ +#define __dbc_destroy __dbc_destroy@DB_VERSION_UNIQUE_NAME@ +#define __dbc_count __dbc_count@DB_VERSION_UNIQUE_NAME@ +#define __dbc_del __dbc_del@DB_VERSION_UNIQUE_NAME@ +#define __dbc_dup __dbc_dup@DB_VERSION_UNIQUE_NAME@ +#define __dbc_idup __dbc_idup@DB_VERSION_UNIQUE_NAME@ +#define __dbc_newopd __dbc_newopd@DB_VERSION_UNIQUE_NAME@ +#define __dbc_get __dbc_get@DB_VERSION_UNIQUE_NAME@ +#define __dbc_put __dbc_put@DB_VERSION_UNIQUE_NAME@ #define __db_duperr __db_duperr@DB_VERSION_UNIQUE_NAME@ -#define __db_c_secondary_get_pp __db_c_secondary_get_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_pget __db_c_pget@DB_VERSION_UNIQUE_NAME@ -#define __db_c_del_primary __db_c_del_primary@DB_VERSION_UNIQUE_NAME@ +#define __dbc_secondary_get_pp __dbc_secondary_get_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_pget __dbc_pget@DB_VERSION_UNIQUE_NAME@ +#define __dbc_del_primary __dbc_del_primary@DB_VERSION_UNIQUE_NAME@ #define __db_s_first __db_s_first@DB_VERSION_UNIQUE_NAME@ #define __db_s_next __db_s_next@DB_VERSION_UNIQUE_NAME@ #define __db_s_done __db_s_done@DB_VERSION_UNIQUE_NAME@ #define __db_partsize __db_partsize@DB_VERSION_UNIQUE_NAME@ +#ifdef DIAGNOSTIC +#define __db_check_skeyset __db_check_skeyset@DB_VERSION_UNIQUE_NAME@ +#endif #define __cdsgroup_begin __cdsgroup_begin@DB_VERSION_UNIQUE_NAME@ #define __db_pgin __db_pgin@DB_VERSION_UNIQUE_NAME@ #define __db_pgout __db_pgout@DB_VERSION_UNIQUE_NAME@ +#define __db_decrypt_pg __db_decrypt_pg@DB_VERSION_UNIQUE_NAME@ +#define __db_encrypt_and_checksum_pg __db_encrypt_and_checksum_pg@DB_VERSION_UNIQUE_NAME@ #define __db_metaswap __db_metaswap@DB_VERSION_UNIQUE_NAME@ #define __db_byteswap __db_byteswap@DB_VERSION_UNIQUE_NAME@ #define __db_dispatch __db_dispatch@DB_VERSION_UNIQUE_NAME@ @@ -131,6 +136,7 @@ #define __db_cursor_pp __db_cursor_pp@DB_VERSION_UNIQUE_NAME@ #define __db_cursor __db_cursor@DB_VERSION_UNIQUE_NAME@ #define __db_del_pp __db_del_pp@DB_VERSION_UNIQUE_NAME@ +#define __db_exists __db_exists@DB_VERSION_UNIQUE_NAME@ #define __db_fd_pp __db_fd_pp@DB_VERSION_UNIQUE_NAME@ #define __db_get_pp __db_get_pp@DB_VERSION_UNIQUE_NAME@ #define __db_get __db_get@DB_VERSION_UNIQUE_NAME@ @@ -142,14 +148,14 @@ #define __db_put_pp __db_put_pp@DB_VERSION_UNIQUE_NAME@ #define __db_compact_pp __db_compact_pp@DB_VERSION_UNIQUE_NAME@ #define __db_sync_pp __db_sync_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_close_pp __db_c_close_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_count_pp __db_c_count_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_del_pp __db_c_del_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_dup_pp __db_c_dup_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_get_pp __db_c_get_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_close_pp __dbc_close_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_count_pp __dbc_count_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_del_pp __dbc_del_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_dup_pp __dbc_dup_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_get_pp __dbc_get_pp@DB_VERSION_UNIQUE_NAME@ #define __db_secondary_close_pp __db_secondary_close_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_pget_pp __db_c_pget_pp@DB_VERSION_UNIQUE_NAME@ -#define __db_c_put_pp __db_c_put_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_pget_pp __dbc_pget_pp@DB_VERSION_UNIQUE_NAME@ +#define __dbc_put_pp __dbc_put_pp@DB_VERSION_UNIQUE_NAME@ #define __db_txn_auto_init __db_txn_auto_init@DB_VERSION_UNIQUE_NAME@ #define __db_txn_auto_resolve __db_txn_auto_resolve@DB_VERSION_UNIQUE_NAME@ #define __dbt_usercopy __dbt_usercopy@DB_VERSION_UNIQUE_NAME@ @@ -171,6 +177,7 @@ #define __db_lprint __db_lprint@DB_VERSION_UNIQUE_NAME@ #define __db_lget __db_lget@DB_VERSION_UNIQUE_NAME@ #define __db_lput __db_lput@DB_VERSION_UNIQUE_NAME@ +#define __db_create_internal __db_create_internal@DB_VERSION_UNIQUE_NAME@ #define __dbh_am_chk __dbh_am_chk@DB_VERSION_UNIQUE_NAME@ #define __db_get_flags __db_get_flags@DB_VERSION_UNIQUE_NAME@ #define __db_set_flags __db_set_flags@DB_VERSION_UNIQUE_NAME@ @@ -188,6 +195,7 @@ #define __db_ovref __db_ovref@DB_VERSION_UNIQUE_NAME@ #define __db_doff __db_doff@DB_VERSION_UNIQUE_NAME@ #define __db_moff __db_moff@DB_VERSION_UNIQUE_NAME@ +#define __db_coff __db_coff@DB_VERSION_UNIQUE_NAME@ #define __db_vrfy_overflow __db_vrfy_overflow@DB_VERSION_UNIQUE_NAME@ #define __db_vrfy_ovfl_structure __db_vrfy_ovfl_structure@DB_VERSION_UNIQUE_NAME@ #define __db_safe_goff __db_safe_goff@DB_VERSION_UNIQUE_NAME@ @@ -296,13 +304,13 @@ #define __bam_ca_rsplit __bam_ca_rsplit@DB_VERSION_UNIQUE_NAME@ #define __bam_ca_split __bam_ca_split@DB_VERSION_UNIQUE_NAME@ #define __bam_ca_undosplit __bam_ca_undosplit@DB_VERSION_UNIQUE_NAME@ -#define __bam_c_init __bam_c_init@DB_VERSION_UNIQUE_NAME@ -#define __bam_c_refresh __bam_c_refresh@DB_VERSION_UNIQUE_NAME@ -#define __bam_c_count __bam_c_count@DB_VERSION_UNIQUE_NAME@ -#define __bam_c_dup __bam_c_dup@DB_VERSION_UNIQUE_NAME@ +#define __bamc_init __bamc_init@DB_VERSION_UNIQUE_NAME@ +#define __bamc_refresh __bamc_refresh@DB_VERSION_UNIQUE_NAME@ +#define __bamc_count __bamc_count@DB_VERSION_UNIQUE_NAME@ +#define __bamc_dup __bamc_dup@DB_VERSION_UNIQUE_NAME@ #define __bam_bulk_overflow __bam_bulk_overflow@DB_VERSION_UNIQUE_NAME@ #define __bam_bulk_duplicates __bam_bulk_duplicates@DB_VERSION_UNIQUE_NAME@ -#define __bam_c_rget __bam_c_rget@DB_VERSION_UNIQUE_NAME@ +#define __bamc_rget __bamc_rget@DB_VERSION_UNIQUE_NAME@ #define __bam_opd_exists __bam_opd_exists@DB_VERSION_UNIQUE_NAME@ #define __bam_ditem __bam_ditem@DB_VERSION_UNIQUE_NAME@ #define __bam_adjindx __bam_adjindx@DB_VERSION_UNIQUE_NAME@ @@ -343,9 +351,9 @@ #define __bam_truncate __bam_truncate@DB_VERSION_UNIQUE_NAME@ #define __ram_open __ram_open@DB_VERSION_UNIQUE_NAME@ #define __ram_append __ram_append@DB_VERSION_UNIQUE_NAME@ -#define __ram_c_del __ram_c_del@DB_VERSION_UNIQUE_NAME@ -#define __ram_c_get __ram_c_get@DB_VERSION_UNIQUE_NAME@ -#define __ram_c_put __ram_c_put@DB_VERSION_UNIQUE_NAME@ +#define __ramc_del __ramc_del@DB_VERSION_UNIQUE_NAME@ +#define __ramc_get __ramc_get@DB_VERSION_UNIQUE_NAME@ +#define __ramc_put __ramc_put@DB_VERSION_UNIQUE_NAME@ #define __ram_ca __ram_ca@DB_VERSION_UNIQUE_NAME@ #define __ram_getno __ram_getno@DB_VERSION_UNIQUE_NAME@ #define __ram_writeback __ram_writeback@DB_VERSION_UNIQUE_NAME@ @@ -418,9 +426,6 @@ #define __bam_merge_print __bam_merge_print@DB_VERSION_UNIQUE_NAME@ #define __bam_pgno_print __bam_pgno_print@DB_VERSION_UNIQUE_NAME@ #define __bam_init_print __bam_init_print@DB_VERSION_UNIQUE_NAME@ -#ifndef HAVE_ABORT -#define abort abort@DB_VERSION_UNIQUE_NAME@ -#endif #ifndef HAVE_ATOI #define atoi atoi@DB_VERSION_UNIQUE_NAME@ #endif @@ -470,6 +475,9 @@ #ifndef HAVE_PRINTF #define vfprintf vfprintf@DB_VERSION_UNIQUE_NAME@ #endif +#ifndef HAVE_QSORT +#define qsort qsort@DB_VERSION_UNIQUE_NAME@ +#endif #ifndef HAVE_RAISE #define raise raise@DB_VERSION_UNIQUE_NAME@ #endif @@ -522,7 +530,6 @@ #define __crypto_region_init __crypto_region_init@DB_VERSION_UNIQUE_NAME@ #define __db_isbigendian __db_isbigendian@DB_VERSION_UNIQUE_NAME@ #define __db_byteorder __db_byteorder@DB_VERSION_UNIQUE_NAME@ -#define __db_difftime __db_difftime@DB_VERSION_UNIQUE_NAME@ #define __db_fchk __db_fchk@DB_VERSION_UNIQUE_NAME@ #define __db_fcchk __db_fcchk@DB_VERSION_UNIQUE_NAME@ #define __db_ferr __db_ferr@DB_VERSION_UNIQUE_NAME@ @@ -534,7 +541,6 @@ #endif #define __db_panic_msg __db_panic_msg@DB_VERSION_UNIQUE_NAME@ #define __db_panic __db_panic@DB_VERSION_UNIQUE_NAME@ -#define __db_panic_set __db_panic_set@DB_VERSION_UNIQUE_NAME@ #define __db_unknown_error __db_unknown_error@DB_VERSION_UNIQUE_NAME@ #define __db_syserr __db_syserr@DB_VERSION_UNIQUE_NAME@ #define __db_err __db_err@DB_VERSION_UNIQUE_NAME@ @@ -542,6 +548,7 @@ #define __db_errcall __db_errcall@DB_VERSION_UNIQUE_NAME@ #define __db_errfile __db_errfile@DB_VERSION_UNIQUE_NAME@ #define __db_msgadd __db_msgadd@DB_VERSION_UNIQUE_NAME@ +#define __db_msgadd_ap __db_msgadd_ap@DB_VERSION_UNIQUE_NAME@ #define __db_msg __db_msg@DB_VERSION_UNIQUE_NAME@ #define __db_unknown_flag __db_unknown_flag@DB_VERSION_UNIQUE_NAME@ #define __db_unknown_type __db_unknown_type@DB_VERSION_UNIQUE_NAME@ @@ -560,6 +567,8 @@ #define __db_getulong __db_getulong@DB_VERSION_UNIQUE_NAME@ #define __db_idspace __db_idspace@DB_VERSION_UNIQUE_NAME@ #define __db_log2 __db_log2@DB_VERSION_UNIQUE_NAME@ +#define __db_tablesize __db_tablesize@DB_VERSION_UNIQUE_NAME@ +#define __db_hashinit __db_hashinit@DB_VERSION_UNIQUE_NAME@ #define __db_mkpath __db_mkpath@DB_VERSION_UNIQUE_NAME@ #define __db_util_arg __db_util_arg@DB_VERSION_UNIQUE_NAME@ #define __db_util_cache __db_util_cache@DB_VERSION_UNIQUE_NAME@ @@ -573,8 +582,8 @@ #define __aes_decrypt __aes_decrypt@DB_VERSION_UNIQUE_NAME@ #define __aes_encrypt __aes_encrypt@DB_VERSION_UNIQUE_NAME@ #define __aes_init __aes_init@DB_VERSION_UNIQUE_NAME@ -#define __crypto_dbenv_close __crypto_dbenv_close@DB_VERSION_UNIQUE_NAME@ -#define __crypto_region_destroy __crypto_region_destroy@DB_VERSION_UNIQUE_NAME@ +#define __crypto_env_close __crypto_env_close@DB_VERSION_UNIQUE_NAME@ +#define __crypto_env_refresh __crypto_env_refresh@DB_VERSION_UNIQUE_NAME@ #define __crypto_algsetup __crypto_algsetup@DB_VERSION_UNIQUE_NAME@ #define __crypto_decrypt_meta __crypto_decrypt_meta@DB_VERSION_UNIQUE_NAME@ #define __crypto_set_passwd __crypto_set_passwd@DB_VERSION_UNIQUE_NAME@ @@ -594,11 +603,14 @@ #define __db_cipherUpdateRounds __db_cipherUpdateRounds@DB_VERSION_UNIQUE_NAME@ #define __dbreg_setup __dbreg_setup@DB_VERSION_UNIQUE_NAME@ #define __dbreg_teardown __dbreg_teardown@DB_VERSION_UNIQUE_NAME@ +#define __dbreg_teardown_int __dbreg_teardown_int@DB_VERSION_UNIQUE_NAME@ #define __dbreg_new_id __dbreg_new_id@DB_VERSION_UNIQUE_NAME@ #define __dbreg_get_id __dbreg_get_id@DB_VERSION_UNIQUE_NAME@ #define __dbreg_assign_id __dbreg_assign_id@DB_VERSION_UNIQUE_NAME@ #define __dbreg_revoke_id __dbreg_revoke_id@DB_VERSION_UNIQUE_NAME@ +#define __dbreg_revoke_id_int __dbreg_revoke_id_int@DB_VERSION_UNIQUE_NAME@ #define __dbreg_close_id __dbreg_close_id@DB_VERSION_UNIQUE_NAME@ +#define __dbreg_close_id_int __dbreg_close_id_int@DB_VERSION_UNIQUE_NAME@ #define __dbreg_log_close __dbreg_log_close@DB_VERSION_UNIQUE_NAME@ #define __dbreg_log_id __dbreg_log_id@DB_VERSION_UNIQUE_NAME@ #define __dbreg_register_log __dbreg_register_log@DB_VERSION_UNIQUE_NAME@ @@ -613,6 +625,8 @@ #define __dbreg_rem_dbentry __dbreg_rem_dbentry@DB_VERSION_UNIQUE_NAME@ #define __dbreg_log_files __dbreg_log_files@DB_VERSION_UNIQUE_NAME@ #define __dbreg_close_files __dbreg_close_files@DB_VERSION_UNIQUE_NAME@ +#define __dbreg_close_file __dbreg_close_file@DB_VERSION_UNIQUE_NAME@ +#define __dbreg_mark_restored __dbreg_mark_restored@DB_VERSION_UNIQUE_NAME@ #define __dbreg_invalidate_files __dbreg_invalidate_files@DB_VERSION_UNIQUE_NAME@ #define __dbreg_id_to_db __dbreg_id_to_db@DB_VERSION_UNIQUE_NAME@ #define __dbreg_id_to_db_int __dbreg_id_to_db_int@DB_VERSION_UNIQUE_NAME@ @@ -621,14 +635,14 @@ #define __dbreg_get_name __dbreg_get_name@DB_VERSION_UNIQUE_NAME@ #define __dbreg_do_open __dbreg_do_open@DB_VERSION_UNIQUE_NAME@ #define __dbreg_lazy_id __dbreg_lazy_id@DB_VERSION_UNIQUE_NAME@ -#define __db_shalloc_init __db_shalloc_init@DB_VERSION_UNIQUE_NAME@ -#define __db_shalloc_size __db_shalloc_size@DB_VERSION_UNIQUE_NAME@ -#define __db_shalloc __db_shalloc@DB_VERSION_UNIQUE_NAME@ -#define __db_shalloc_free __db_shalloc_free@DB_VERSION_UNIQUE_NAME@ -#define __db_shalloc_sizeof __db_shalloc_sizeof@DB_VERSION_UNIQUE_NAME@ -#define __db_tablesize __db_tablesize@DB_VERSION_UNIQUE_NAME@ -#define __db_hashinit __db_hashinit@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc_init __env_alloc_init@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc_overhead __env_alloc_overhead@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc_size __env_alloc_size@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc __env_alloc@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc_free __env_alloc_free@DB_VERSION_UNIQUE_NAME@ +#define __env_alloc_print __env_alloc_print@DB_VERSION_UNIQUE_NAME@ #define __env_read_db_config __env_read_db_config@DB_VERSION_UNIQUE_NAME@ +#define __config_split __config_split@DB_VERSION_UNIQUE_NAME@ #define __env_failchk_pp __env_failchk_pp@DB_VERSION_UNIQUE_NAME@ #define __env_thread_init __env_thread_init@DB_VERSION_UNIQUE_NAME@ #define __env_set_state __env_set_state@DB_VERSION_UNIQUE_NAME@ @@ -658,6 +672,7 @@ #define __db_mi_env __db_mi_env@DB_VERSION_UNIQUE_NAME@ #define __db_mi_open __db_mi_open@DB_VERSION_UNIQUE_NAME@ #define __db_env_config __db_env_config@DB_VERSION_UNIQUE_NAME@ +#define __db_appname __db_appname@DB_VERSION_UNIQUE_NAME@ #define __env_open_pp __env_open_pp@DB_VERSION_UNIQUE_NAME@ #define __env_open __env_open@DB_VERSION_UNIQUE_NAME@ #define __env_remove __env_remove@DB_VERSION_UNIQUE_NAME@ @@ -665,17 +680,20 @@ #define __env_close_pp __env_close_pp@DB_VERSION_UNIQUE_NAME@ #define __env_close __env_close@DB_VERSION_UNIQUE_NAME@ #define __env_get_open_flags __env_get_open_flags@DB_VERSION_UNIQUE_NAME@ -#define __db_appname __db_appname@DB_VERSION_UNIQUE_NAME@ #define __db_apprec __db_apprec@DB_VERSION_UNIQUE_NAME@ #define __log_backup __log_backup@DB_VERSION_UNIQUE_NAME@ #define __env_openfiles __env_openfiles@DB_VERSION_UNIQUE_NAME@ #define __env_init_rec __env_init_rec@DB_VERSION_UNIQUE_NAME@ -#define __db_e_attach __db_e_attach@DB_VERSION_UNIQUE_NAME@ -#define __db_e_golive __db_e_golive@DB_VERSION_UNIQUE_NAME@ -#define __db_e_detach __db_e_detach@DB_VERSION_UNIQUE_NAME@ -#define __db_e_remove __db_e_remove@DB_VERSION_UNIQUE_NAME@ -#define __db_r_attach __db_r_attach@DB_VERSION_UNIQUE_NAME@ -#define __db_r_detach __db_r_detach@DB_VERSION_UNIQUE_NAME@ +#define __env_attach __env_attach@DB_VERSION_UNIQUE_NAME@ +#define __env_turn_on __env_turn_on@DB_VERSION_UNIQUE_NAME@ +#define __env_turn_off __env_turn_off@DB_VERSION_UNIQUE_NAME@ +#define __env_panic_set __env_panic_set@DB_VERSION_UNIQUE_NAME@ +#define __env_ref_increment __env_ref_increment@DB_VERSION_UNIQUE_NAME@ +#define __env_ref_decrement __env_ref_decrement@DB_VERSION_UNIQUE_NAME@ +#define __env_detach __env_detach@DB_VERSION_UNIQUE_NAME@ +#define __env_remove_env __env_remove_env@DB_VERSION_UNIQUE_NAME@ +#define __env_region_attach __env_region_attach@DB_VERSION_UNIQUE_NAME@ +#define __env_region_detach __env_region_detach@DB_VERSION_UNIQUE_NAME@ #define __envreg_register __envreg_register@DB_VERSION_UNIQUE_NAME@ #define __envreg_unregister __envreg_unregister@DB_VERSION_UNIQUE_NAME@ #define __envreg_xunlock __envreg_xunlock@DB_VERSION_UNIQUE_NAME@ @@ -687,6 +705,36 @@ #define __db_dlbytes __db_dlbytes@DB_VERSION_UNIQUE_NAME@ #define __db_print_reginfo __db_print_reginfo@DB_VERSION_UNIQUE_NAME@ #define __db_stat_not_built __db_stat_not_built@DB_VERSION_UNIQUE_NAME@ +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_close __repmgr_close@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_add_remote_site __repmgr_add_remote_site@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_get_ack_policy __repmgr_get_ack_policy@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_set_ack_policy __repmgr_set_ack_policy@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_set_local_site __repmgr_set_local_site@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_site_list __repmgr_site_list@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_start __repmgr_start@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_stat_pp __repmgr_stat_pp@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_stat_print_pp __repmgr_stat_print_pp@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_handle_event __repmgr_handle_event@DB_VERSION_UNIQUE_NAME@ +#endif #define __fop_create_log __fop_create_log@DB_VERSION_UNIQUE_NAME@ #define __fop_create_read __fop_create_read@DB_VERSION_UNIQUE_NAME@ #define __fop_remove_log __fop_remove_log@DB_VERSION_UNIQUE_NAME@ @@ -694,6 +742,8 @@ #define __fop_write_log __fop_write_log@DB_VERSION_UNIQUE_NAME@ #define __fop_write_read __fop_write_read@DB_VERSION_UNIQUE_NAME@ #define __fop_rename_log __fop_rename_log@DB_VERSION_UNIQUE_NAME@ +#define __fop_rename_noundo_log __fop_rename_noundo_log@DB_VERSION_UNIQUE_NAME@ +#define __fop_rename_int_log __fop_rename_int_log@DB_VERSION_UNIQUE_NAME@ #define __fop_rename_read __fop_rename_read@DB_VERSION_UNIQUE_NAME@ #define __fop_file_remove_log __fop_file_remove_log@DB_VERSION_UNIQUE_NAME@ #define __fop_file_remove_read __fop_file_remove_read@DB_VERSION_UNIQUE_NAME@ @@ -712,6 +762,7 @@ #define __fop_remove_recover __fop_remove_recover@DB_VERSION_UNIQUE_NAME@ #define __fop_write_recover __fop_write_recover@DB_VERSION_UNIQUE_NAME@ #define __fop_rename_recover __fop_rename_recover@DB_VERSION_UNIQUE_NAME@ +#define __fop_rename_noundo_recover __fop_rename_noundo_recover@DB_VERSION_UNIQUE_NAME@ #define __fop_file_remove_recover __fop_file_remove_recover@DB_VERSION_UNIQUE_NAME@ #define __fop_lock_handle __fop_lock_handle@DB_VERSION_UNIQUE_NAME@ #define __fop_file_setup __fop_file_setup@DB_VERSION_UNIQUE_NAME@ @@ -721,12 +772,12 @@ #define __fop_dummy __fop_dummy@DB_VERSION_UNIQUE_NAME@ #define __fop_dbrename __fop_dbrename@DB_VERSION_UNIQUE_NAME@ #define __ham_quick_delete __ham_quick_delete@DB_VERSION_UNIQUE_NAME@ -#define __ham_c_init __ham_c_init@DB_VERSION_UNIQUE_NAME@ -#define __ham_c_count __ham_c_count@DB_VERSION_UNIQUE_NAME@ -#define __ham_c_dup __ham_c_dup@DB_VERSION_UNIQUE_NAME@ +#define __hamc_init __hamc_init@DB_VERSION_UNIQUE_NAME@ +#define __hamc_count __hamc_count@DB_VERSION_UNIQUE_NAME@ +#define __hamc_dup __hamc_dup@DB_VERSION_UNIQUE_NAME@ #define __ham_call_hash __ham_call_hash@DB_VERSION_UNIQUE_NAME@ #define __ham_init_dbt __ham_init_dbt@DB_VERSION_UNIQUE_NAME@ -#define __ham_c_update __ham_c_update@DB_VERSION_UNIQUE_NAME@ +#define __hamc_update __hamc_update@DB_VERSION_UNIQUE_NAME@ #define __ham_get_clist __ham_get_clist@DB_VERSION_UNIQUE_NAME@ #define __ham_insdel_log __ham_insdel_log@DB_VERSION_UNIQUE_NAME@ #define __ham_insdel_read __ham_insdel_read@DB_VERSION_UNIQUE_NAME@ @@ -779,6 +830,7 @@ #define __ham_db_create __ham_db_create@DB_VERSION_UNIQUE_NAME@ #define __ham_db_close __ham_db_close@DB_VERSION_UNIQUE_NAME@ #define __ham_get_h_ffactor __ham_get_h_ffactor@DB_VERSION_UNIQUE_NAME@ +#define __ham_set_h_compare __ham_set_h_compare@DB_VERSION_UNIQUE_NAME@ #define __ham_get_h_nelem __ham_get_h_nelem@DB_VERSION_UNIQUE_NAME@ #define __ham_open __ham_open@DB_VERSION_UNIQUE_NAME@ #define __ham_metachk __ham_metachk@DB_VERSION_UNIQUE_NAME@ @@ -791,14 +843,16 @@ #define __ham_item_first __ham_item_first@DB_VERSION_UNIQUE_NAME@ #define __ham_item_prev __ham_item_prev@DB_VERSION_UNIQUE_NAME@ #define __ham_item_next __ham_item_next@DB_VERSION_UNIQUE_NAME@ -#define __ham_putitem __ham_putitem@DB_VERSION_UNIQUE_NAME@ -#define __ham_reputpair __ham_reputpair@DB_VERSION_UNIQUE_NAME@ +#define __ham_insertpair __ham_insertpair@DB_VERSION_UNIQUE_NAME@ +#define __ham_getindex __ham_getindex@DB_VERSION_UNIQUE_NAME@ +#define __ham_verify_sorted_page __ham_verify_sorted_page@DB_VERSION_UNIQUE_NAME@ +#define __ham_sort_page __ham_sort_page@DB_VERSION_UNIQUE_NAME@ #define __ham_del_pair __ham_del_pair@DB_VERSION_UNIQUE_NAME@ #define __ham_replpair __ham_replpair@DB_VERSION_UNIQUE_NAME@ #define __ham_onpage_replace __ham_onpage_replace@DB_VERSION_UNIQUE_NAME@ #define __ham_split_page __ham_split_page@DB_VERSION_UNIQUE_NAME@ #define __ham_add_el __ham_add_el@DB_VERSION_UNIQUE_NAME@ -#define __ham_copy_item __ham_copy_item@DB_VERSION_UNIQUE_NAME@ +#define __ham_copypair __ham_copypair@DB_VERSION_UNIQUE_NAME@ #define __ham_add_ovflpage __ham_add_ovflpage@DB_VERSION_UNIQUE_NAME@ #define __ham_get_cpage __ham_get_cpage@DB_VERSION_UNIQUE_NAME@ #define __ham_next_cpage __ham_next_cpage@DB_VERSION_UNIQUE_NAME@ @@ -826,6 +880,8 @@ #define __ham_30_sizefix __ham_30_sizefix@DB_VERSION_UNIQUE_NAME@ #define __ham_31_hashmeta __ham_31_hashmeta@DB_VERSION_UNIQUE_NAME@ #define __ham_31_hash __ham_31_hash@DB_VERSION_UNIQUE_NAME@ +#define __ham_46_hashmeta __ham_46_hashmeta@DB_VERSION_UNIQUE_NAME@ +#define __ham_46_hash __ham_46_hash@DB_VERSION_UNIQUE_NAME@ #define __ham_vrfy_meta __ham_vrfy_meta@DB_VERSION_UNIQUE_NAME@ #define __ham_vrfy __ham_vrfy@DB_VERSION_UNIQUE_NAME@ #define __ham_vrfy_structure __ham_vrfy_structure@DB_VERSION_UNIQUE_NAME@ @@ -859,14 +915,15 @@ #define __lock_id_free __lock_id_free@DB_VERSION_UNIQUE_NAME@ #define __lock_id_set __lock_id_set@DB_VERSION_UNIQUE_NAME@ #define __lock_getlocker __lock_getlocker@DB_VERSION_UNIQUE_NAME@ +#define __lock_getlocker_int __lock_getlocker_int@DB_VERSION_UNIQUE_NAME@ #define __lock_addfamilylocker __lock_addfamilylocker@DB_VERSION_UNIQUE_NAME@ #define __lock_freefamilylocker __lock_freefamilylocker@DB_VERSION_UNIQUE_NAME@ #define __lock_freelocker __lock_freelocker@DB_VERSION_UNIQUE_NAME@ #define __lock_fix_list __lock_fix_list@DB_VERSION_UNIQUE_NAME@ #define __lock_get_list __lock_get_list@DB_VERSION_UNIQUE_NAME@ #define __lock_list_print __lock_list_print@DB_VERSION_UNIQUE_NAME@ -#define __lock_dbenv_create __lock_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __lock_dbenv_destroy __lock_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __lock_env_create __lock_env_create@DB_VERSION_UNIQUE_NAME@ +#define __lock_env_destroy __lock_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __lock_get_lk_conflicts __lock_get_lk_conflicts@DB_VERSION_UNIQUE_NAME@ #define __lock_set_lk_conflicts __lock_set_lk_conflicts@DB_VERSION_UNIQUE_NAME@ #define __lock_get_lk_detect __lock_get_lk_detect@DB_VERSION_UNIQUE_NAME@ @@ -880,7 +937,7 @@ #define __lock_get_env_timeout __lock_get_env_timeout@DB_VERSION_UNIQUE_NAME@ #define __lock_set_env_timeout __lock_set_env_timeout@DB_VERSION_UNIQUE_NAME@ #define __lock_open __lock_open@DB_VERSION_UNIQUE_NAME@ -#define __lock_dbenv_refresh __lock_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ +#define __lock_env_refresh __lock_env_refresh@DB_VERSION_UNIQUE_NAME@ #define __lock_region_mutex_count __lock_region_mutex_count@DB_VERSION_UNIQUE_NAME@ #define __lock_stat_pp __lock_stat_pp@DB_VERSION_UNIQUE_NAME@ #define __lock_stat_print_pp __lock_stat_print_pp@DB_VERSION_UNIQUE_NAME@ @@ -897,7 +954,7 @@ #define __log_open __log_open@DB_VERSION_UNIQUE_NAME@ #define __log_find __log_find@DB_VERSION_UNIQUE_NAME@ #define __log_valid __log_valid@DB_VERSION_UNIQUE_NAME@ -#define __log_dbenv_refresh __log_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ +#define __log_env_refresh __log_env_refresh@DB_VERSION_UNIQUE_NAME@ #define __log_get_cached_ckp_lsn __log_get_cached_ckp_lsn@DB_VERSION_UNIQUE_NAME@ #define __log_region_mutex_count __log_region_mutex_count@DB_VERSION_UNIQUE_NAME@ #define __log_vtruncate __log_vtruncate@DB_VERSION_UNIQUE_NAME@ @@ -919,12 +976,12 @@ #define __log_printf __log_printf@DB_VERSION_UNIQUE_NAME@ #define __log_cursor_pp __log_cursor_pp@DB_VERSION_UNIQUE_NAME@ #define __log_cursor __log_cursor@DB_VERSION_UNIQUE_NAME@ -#define __log_c_close __log_c_close@DB_VERSION_UNIQUE_NAME@ -#define __log_c_version __log_c_version@DB_VERSION_UNIQUE_NAME@ -#define __log_c_get __log_c_get@DB_VERSION_UNIQUE_NAME@ +#define __logc_close __logc_close@DB_VERSION_UNIQUE_NAME@ +#define __logc_version __logc_version@DB_VERSION_UNIQUE_NAME@ +#define __logc_get __logc_get@DB_VERSION_UNIQUE_NAME@ #define __log_rep_split __log_rep_split@DB_VERSION_UNIQUE_NAME@ -#define __log_dbenv_create __log_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __log_dbenv_destroy __log_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __log_env_create __log_env_create@DB_VERSION_UNIQUE_NAME@ +#define __log_env_destroy __log_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __log_get_lg_bsize __log_get_lg_bsize@DB_VERSION_UNIQUE_NAME@ #define __log_set_lg_bsize __log_set_lg_bsize@DB_VERSION_UNIQUE_NAME@ #define __log_get_lg_filemode __log_get_lg_filemode@DB_VERSION_UNIQUE_NAME@ @@ -973,7 +1030,7 @@ #define __memp_set_ftype __memp_set_ftype@DB_VERSION_UNIQUE_NAME@ #define __memp_set_lsn_offset __memp_set_lsn_offset@DB_VERSION_UNIQUE_NAME@ #define __memp_set_pgcookie __memp_set_pgcookie@DB_VERSION_UNIQUE_NAME@ -#define __memp_last_pgno __memp_last_pgno@DB_VERSION_UNIQUE_NAME@ +#define __memp_get_last_pgno __memp_get_last_pgno@DB_VERSION_UNIQUE_NAME@ #define __memp_fn __memp_fn@DB_VERSION_UNIQUE_NAME@ #define __memp_fns __memp_fns@DB_VERSION_UNIQUE_NAME@ #define __memp_fopen_pp __memp_fopen_pp@DB_VERSION_UNIQUE_NAME@ @@ -984,13 +1041,13 @@ #define __memp_inmemlist __memp_inmemlist@DB_VERSION_UNIQUE_NAME@ #define __memp_fput_pp __memp_fput_pp@DB_VERSION_UNIQUE_NAME@ #define __memp_fput __memp_fput@DB_VERSION_UNIQUE_NAME@ -#define __memp_fset_pp __memp_fset_pp@DB_VERSION_UNIQUE_NAME@ -#define __memp_fset __memp_fset@DB_VERSION_UNIQUE_NAME@ #define __memp_dirty __memp_dirty@DB_VERSION_UNIQUE_NAME@ -#define __memp_dbenv_create __memp_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __memp_dbenv_destroy __memp_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __memp_env_create __memp_env_create@DB_VERSION_UNIQUE_NAME@ +#define __memp_env_destroy __memp_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __memp_get_cachesize __memp_get_cachesize@DB_VERSION_UNIQUE_NAME@ #define __memp_set_cachesize __memp_set_cachesize@DB_VERSION_UNIQUE_NAME@ +#define __memp_set_config __memp_set_config@DB_VERSION_UNIQUE_NAME@ +#define __memp_get_config __memp_get_config@DB_VERSION_UNIQUE_NAME@ #define __memp_get_mp_max_openfd __memp_get_mp_max_openfd@DB_VERSION_UNIQUE_NAME@ #define __memp_set_mp_max_openfd __memp_set_mp_max_openfd@DB_VERSION_UNIQUE_NAME@ #define __memp_get_mp_max_write __memp_get_mp_max_write@DB_VERSION_UNIQUE_NAME@ @@ -1010,10 +1067,16 @@ #define __memp_bh_freeze __memp_bh_freeze@DB_VERSION_UNIQUE_NAME@ #define __memp_bh_thaw __memp_bh_thaw@DB_VERSION_UNIQUE_NAME@ #define __memp_open __memp_open@DB_VERSION_UNIQUE_NAME@ +#define __memp_init __memp_init@DB_VERSION_UNIQUE_NAME@ +#define __memp_max_regions __memp_max_regions@DB_VERSION_UNIQUE_NAME@ #define __memp_region_mutex_count __memp_region_mutex_count@DB_VERSION_UNIQUE_NAME@ -#define __memp_dbenv_refresh __memp_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ +#define __memp_env_refresh __memp_env_refresh@DB_VERSION_UNIQUE_NAME@ #define __memp_register_pp __memp_register_pp@DB_VERSION_UNIQUE_NAME@ #define __memp_register __memp_register@DB_VERSION_UNIQUE_NAME@ +#define __memp_get_bucket __memp_get_bucket@DB_VERSION_UNIQUE_NAME@ +#define __memp_resize __memp_resize@DB_VERSION_UNIQUE_NAME@ +#define __memp_get_cache_max __memp_get_cache_max@DB_VERSION_UNIQUE_NAME@ +#define __memp_set_cache_max __memp_set_cache_max@DB_VERSION_UNIQUE_NAME@ #define __memp_stat_pp __memp_stat_pp@DB_VERSION_UNIQUE_NAME@ #define __memp_stat_print_pp __memp_stat_print_pp@DB_VERSION_UNIQUE_NAME@ #define __memp_stat_print __memp_stat_print@DB_VERSION_UNIQUE_NAME@ @@ -1053,9 +1116,10 @@ #define __db_pthread_mutex_unlock __db_pthread_mutex_unlock@DB_VERSION_UNIQUE_NAME@ #define __db_pthread_mutex_destroy __db_pthread_mutex_destroy@DB_VERSION_UNIQUE_NAME@ #define __mutex_open __mutex_open@DB_VERSION_UNIQUE_NAME@ -#define __mutex_dbenv_refresh __mutex_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ +#define __mutex_env_refresh __mutex_env_refresh@DB_VERSION_UNIQUE_NAME@ #define __mutex_resource_return __mutex_resource_return@DB_VERSION_UNIQUE_NAME@ -#define __mutex_stat __mutex_stat@DB_VERSION_UNIQUE_NAME@ +#define __mutex_stat_pp __mutex_stat_pp@DB_VERSION_UNIQUE_NAME@ +#define __mutex_stat_print_pp __mutex_stat_print_pp@DB_VERSION_UNIQUE_NAME@ #define __mutex_stat_print __mutex_stat_print@DB_VERSION_UNIQUE_NAME@ #define __mutex_print_debug_single __mutex_print_debug_single@DB_VERSION_UNIQUE_NAME@ #define __mutex_print_debug_stats __mutex_print_debug_stats@DB_VERSION_UNIQUE_NAME@ @@ -1069,6 +1133,7 @@ #define __db_win32_mutex_lock __db_win32_mutex_lock@DB_VERSION_UNIQUE_NAME@ #define __db_win32_mutex_unlock __db_win32_mutex_unlock@DB_VERSION_UNIQUE_NAME@ #define __db_win32_mutex_destroy __db_win32_mutex_destroy@DB_VERSION_UNIQUE_NAME@ +#define __os_abort __os_abort@DB_VERSION_UNIQUE_NAME@ #define __os_abspath __os_abspath@DB_VERSION_UNIQUE_NAME@ #define __os_umalloc __os_umalloc@DB_VERSION_UNIQUE_NAME@ #define __os_urealloc __os_urealloc@DB_VERSION_UNIQUE_NAME@ @@ -1079,7 +1144,7 @@ #define __os_realloc __os_realloc@DB_VERSION_UNIQUE_NAME@ #define __os_free __os_free@DB_VERSION_UNIQUE_NAME@ #define __ua_memcpy __ua_memcpy@DB_VERSION_UNIQUE_NAME@ -#define __os_clock __os_clock@DB_VERSION_UNIQUE_NAME@ +#define __os_gettime __os_gettime@DB_VERSION_UNIQUE_NAME@ #define __os_fs_notzero __os_fs_notzero@DB_VERSION_UNIQUE_NAME@ #define __os_support_direct_io __os_support_direct_io@DB_VERSION_UNIQUE_NAME@ #define __os_support_db_register __os_support_db_register@DB_VERSION_UNIQUE_NAME@ @@ -1108,10 +1173,6 @@ #define __db_oflags __db_oflags@DB_VERSION_UNIQUE_NAME@ #define __db_omode __db_omode@DB_VERSION_UNIQUE_NAME@ #define __os_open __os_open@DB_VERSION_UNIQUE_NAME@ -#define __os_open_extend __os_open_extend@DB_VERSION_UNIQUE_NAME@ -#ifdef HAVE_QNX -#define __os_shmname __os_shmname@DB_VERSION_UNIQUE_NAME@ -#endif #define __os_id __os_id@DB_VERSION_UNIQUE_NAME@ #define __os_r_attach __os_r_attach@DB_VERSION_UNIQUE_NAME@ #define __os_r_detach __os_r_detach@DB_VERSION_UNIQUE_NAME@ @@ -1133,13 +1194,46 @@ #define __os_region_unlink __os_region_unlink@DB_VERSION_UNIQUE_NAME@ #define __os_unlink __os_unlink@DB_VERSION_UNIQUE_NAME@ #define __os_yield __os_yield@DB_VERSION_UNIQUE_NAME@ +#ifndef HAVE_FCLOSE +#define fclose fclose@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_FGETC +#define fgetc fgetc@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_FGETS +#define fgets fgets@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_FOPEN +#define fopen fopen@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_FWRITE +#define fwrite fwrite@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_LOCALTIME +#define localtime localtime@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_TIME +#define time time@DB_VERSION_UNIQUE_NAME@ +#endif +#ifdef HAVE_QNX +#define __os_qnx_region_open __os_qnx_region_open@DB_VERSION_UNIQUE_NAME@ +#endif +#ifdef HAVE_QNX +#define __os_qnx_shmname __os_qnx_shmname@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_TIME +#define time time@DB_VERSION_UNIQUE_NAME@ +#endif #define __os_is_winnt __os_is_winnt@DB_VERSION_UNIQUE_NAME@ +#ifdef HAVE_REPLICATION_THREADS #define __os_get_neterr __os_get_neterr@DB_VERSION_UNIQUE_NAME@ +#endif +#define __os_mkdir __os_mkdir@DB_VERSION_UNIQUE_NAME@ #define __qam_position __qam_position@DB_VERSION_UNIQUE_NAME@ #define __qam_pitem __qam_pitem@DB_VERSION_UNIQUE_NAME@ #define __qam_append __qam_append@DB_VERSION_UNIQUE_NAME@ -#define __qam_c_dup __qam_c_dup@DB_VERSION_UNIQUE_NAME@ -#define __qam_c_init __qam_c_init@DB_VERSION_UNIQUE_NAME@ +#define __qamc_dup __qamc_dup@DB_VERSION_UNIQUE_NAME@ +#define __qamc_init __qamc_init@DB_VERSION_UNIQUE_NAME@ #define __qam_truncate __qam_truncate@DB_VERSION_UNIQUE_NAME@ #define __qam_delete __qam_delete@DB_VERSION_UNIQUE_NAME@ #define __qam_incfirst_log __qam_incfirst_log@DB_VERSION_UNIQUE_NAME@ @@ -1210,18 +1304,27 @@ #define __rep_init_cleanup __rep_init_cleanup@DB_VERSION_UNIQUE_NAME@ #define __rep_pggap_req __rep_pggap_req@DB_VERSION_UNIQUE_NAME@ #define __rep_finfo_alloc __rep_finfo_alloc@DB_VERSION_UNIQUE_NAME@ +#define __rep_remove_init_file __rep_remove_init_file@DB_VERSION_UNIQUE_NAME@ +#define __rep_reset_init __rep_reset_init@DB_VERSION_UNIQUE_NAME@ #define __rep_elect __rep_elect@DB_VERSION_UNIQUE_NAME@ #define __rep_vote1 __rep_vote1@DB_VERSION_UNIQUE_NAME@ #define __rep_vote2 __rep_vote2@DB_VERSION_UNIQUE_NAME@ -#define __rep_elect_master __rep_elect_master@DB_VERSION_UNIQUE_NAME@ +#define __rep_update_grant __rep_update_grant@DB_VERSION_UNIQUE_NAME@ +#define __rep_islease_granted __rep_islease_granted@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_table_alloc __rep_lease_table_alloc@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_grant __rep_lease_grant@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_check __rep_lease_check@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_refresh __rep_lease_refresh@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_expire __rep_lease_expire@DB_VERSION_UNIQUE_NAME@ +#define __rep_lease_waittime __rep_lease_waittime@DB_VERSION_UNIQUE_NAME@ #define __rep_allreq __rep_allreq@DB_VERSION_UNIQUE_NAME@ #define __rep_log __rep_log@DB_VERSION_UNIQUE_NAME@ #define __rep_bulk_log __rep_bulk_log@DB_VERSION_UNIQUE_NAME@ #define __rep_logreq __rep_logreq@DB_VERSION_UNIQUE_NAME@ #define __rep_loggap_req __rep_loggap_req@DB_VERSION_UNIQUE_NAME@ #define __rep_logready __rep_logready@DB_VERSION_UNIQUE_NAME@ -#define __rep_dbenv_create __rep_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __rep_dbenv_destroy __rep_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __rep_env_create __rep_env_create@DB_VERSION_UNIQUE_NAME@ +#define __rep_env_destroy __rep_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __rep_get_config __rep_get_config@DB_VERSION_UNIQUE_NAME@ #define __rep_set_config __rep_set_config@DB_VERSION_UNIQUE_NAME@ #define __rep_start __rep_start@DB_VERSION_UNIQUE_NAME@ @@ -1237,19 +1340,21 @@ #define __rep_get_request __rep_get_request@DB_VERSION_UNIQUE_NAME@ #define __rep_set_request __rep_set_request@DB_VERSION_UNIQUE_NAME@ #define __rep_set_transport __rep_set_transport@DB_VERSION_UNIQUE_NAME@ +#define __rep_set_lease __rep_set_lease@DB_VERSION_UNIQUE_NAME@ #define __rep_flush __rep_flush@DB_VERSION_UNIQUE_NAME@ #define __rep_sync __rep_sync@DB_VERSION_UNIQUE_NAME@ #define __rep_process_message __rep_process_message@DB_VERSION_UNIQUE_NAME@ #define __rep_apply __rep_apply@DB_VERSION_UNIQUE_NAME@ #define __rep_process_txn __rep_process_txn@DB_VERSION_UNIQUE_NAME@ +#define __rep_resend_req __rep_resend_req@DB_VERSION_UNIQUE_NAME@ #define __rep_check_doreq __rep_check_doreq@DB_VERSION_UNIQUE_NAME@ #define __rep_open __rep_open@DB_VERSION_UNIQUE_NAME@ -#define __rep_region_destroy __rep_region_destroy@DB_VERSION_UNIQUE_NAME@ -#define __rep_dbenv_refresh __rep_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ -#define __rep_close __rep_close@DB_VERSION_UNIQUE_NAME@ +#define __rep_env_refresh __rep_env_refresh@DB_VERSION_UNIQUE_NAME@ +#define __rep_env_close __rep_env_close@DB_VERSION_UNIQUE_NAME@ #define __rep_preclose __rep_preclose@DB_VERSION_UNIQUE_NAME@ #define __rep_closefiles __rep_closefiles@DB_VERSION_UNIQUE_NAME@ #define __rep_write_egen __rep_write_egen@DB_VERSION_UNIQUE_NAME@ +#define __rep_write_gen __rep_write_gen@DB_VERSION_UNIQUE_NAME@ #define __rep_stat_pp __rep_stat_pp@DB_VERSION_UNIQUE_NAME@ #define __rep_stat_print_pp __rep_stat_print_pp@DB_VERSION_UNIQUE_NAME@ #define __rep_stat_print __rep_stat_print@DB_VERSION_UNIQUE_NAME@ @@ -1268,13 +1373,15 @@ #define __db_rep_enter __db_rep_enter@DB_VERSION_UNIQUE_NAME@ #define __op_rep_enter __op_rep_enter@DB_VERSION_UNIQUE_NAME@ #define __op_rep_exit __op_rep_exit@DB_VERSION_UNIQUE_NAME@ -#define __rep_get_gen __rep_get_gen@DB_VERSION_UNIQUE_NAME@ #define __rep_lockout_api __rep_lockout_api@DB_VERSION_UNIQUE_NAME@ +#define __rep_lockout_apply __rep_lockout_apply@DB_VERSION_UNIQUE_NAME@ #define __rep_lockout_msg __rep_lockout_msg@DB_VERSION_UNIQUE_NAME@ #define __rep_send_throttle __rep_send_throttle@DB_VERSION_UNIQUE_NAME@ #define __rep_msg_to_old __rep_msg_to_old@DB_VERSION_UNIQUE_NAME@ #define __rep_msg_from_old __rep_msg_from_old@DB_VERSION_UNIQUE_NAME@ +#define __rep_print __rep_print@DB_VERSION_UNIQUE_NAME@ #define __rep_print_message __rep_print_message@DB_VERSION_UNIQUE_NAME@ +#define __rep_fire_event __rep_fire_event@DB_VERSION_UNIQUE_NAME@ #define __rep_verify __rep_verify@DB_VERSION_UNIQUE_NAME@ #define __rep_verify_fail __rep_verify_fail@DB_VERSION_UNIQUE_NAME@ #define __rep_verify_req __rep_verify_req@DB_VERSION_UNIQUE_NAME@ @@ -1286,12 +1393,13 @@ #define __repmgr_close __repmgr_close@DB_VERSION_UNIQUE_NAME@ #define __repmgr_set_ack_policy __repmgr_set_ack_policy@DB_VERSION_UNIQUE_NAME@ #define __repmgr_get_ack_policy __repmgr_get_ack_policy@DB_VERSION_UNIQUE_NAME@ -#define __repmgr_dbenv_create __repmgr_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __repmgr_dbenv_destroy __repmgr_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_env_create __repmgr_env_create@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_env_destroy __repmgr_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __repmgr_stop_threads __repmgr_stop_threads@DB_VERSION_UNIQUE_NAME@ #define __repmgr_set_local_site __repmgr_set_local_site@DB_VERSION_UNIQUE_NAME@ #define __repmgr_add_remote_site __repmgr_add_remote_site@DB_VERSION_UNIQUE_NAME@ #define __repmgr_msg_thread __repmgr_msg_thread@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_handle_event __repmgr_handle_event@DB_VERSION_UNIQUE_NAME@ #define __repmgr_stash_generation __repmgr_stash_generation@DB_VERSION_UNIQUE_NAME@ #define __repmgr_send __repmgr_send@DB_VERSION_UNIQUE_NAME@ #define __repmgr_send_one __repmgr_send_one@DB_VERSION_UNIQUE_NAME@ @@ -1321,7 +1429,6 @@ #define __repmgr_wake_main_thread __repmgr_wake_main_thread@DB_VERSION_UNIQUE_NAME@ #define __repmgr_writev __repmgr_writev@DB_VERSION_UNIQUE_NAME@ #define __repmgr_readv __repmgr_readv@DB_VERSION_UNIQUE_NAME@ -#define __repmgr_timeval_diff_current __repmgr_timeval_diff_current@DB_VERSION_UNIQUE_NAME@ #define __repmgr_select_loop __repmgr_select_loop@DB_VERSION_UNIQUE_NAME@ #define __repmgr_queue_create __repmgr_queue_create@DB_VERSION_UNIQUE_NAME@ #define __repmgr_queue_destroy __repmgr_queue_destroy@DB_VERSION_UNIQUE_NAME@ @@ -1336,8 +1443,39 @@ #define __repmgr_send_handshake __repmgr_send_handshake@DB_VERSION_UNIQUE_NAME@ #define __repmgr_read_from_site __repmgr_read_from_site@DB_VERSION_UNIQUE_NAME@ #define __repmgr_write_some __repmgr_write_some@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_stat_pp __repmgr_stat_pp@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_stat_print_pp __repmgr_stat_print_pp@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_site_list __repmgr_site_list@DB_VERSION_UNIQUE_NAME@ +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_close __repmgr_close@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_add_remote_site __repmgr_add_remote_site@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_get_ack_policy __repmgr_get_ack_policy@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_set_ack_policy __repmgr_set_ack_policy@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_set_local_site __repmgr_set_local_site@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS #define __repmgr_site_list __repmgr_site_list@DB_VERSION_UNIQUE_NAME@ -#define __repmgr_print_stats __repmgr_print_stats@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_start __repmgr_start@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_stat_pp __repmgr_stat_pp@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_stat_print_pp __repmgr_stat_print_pp@DB_VERSION_UNIQUE_NAME@ +#endif +#ifndef HAVE_REPLICATION_THREADS +#define __repmgr_handle_event __repmgr_handle_event@DB_VERSION_UNIQUE_NAME@ +#endif #define __repmgr_schedule_connection_attempt __repmgr_schedule_connection_attempt@DB_VERSION_UNIQUE_NAME@ #define __repmgr_reset_for_reading __repmgr_reset_for_reading@DB_VERSION_UNIQUE_NAME@ #define __repmgr_new_connection __repmgr_new_connection@DB_VERSION_UNIQUE_NAME@ @@ -1348,11 +1486,12 @@ #define __repmgr_add_dbt __repmgr_add_dbt@DB_VERSION_UNIQUE_NAME@ #define __repmgr_update_consumed __repmgr_update_consumed@DB_VERSION_UNIQUE_NAME@ #define __repmgr_prepare_my_addr __repmgr_prepare_my_addr@DB_VERSION_UNIQUE_NAME@ -#define __repmgr_timeval_cmp __repmgr_timeval_cmp@DB_VERSION_UNIQUE_NAME@ #define __repmgr_get_nsites __repmgr_get_nsites@DB_VERSION_UNIQUE_NAME@ #define __repmgr_thread_failure __repmgr_thread_failure@DB_VERSION_UNIQUE_NAME@ #define __repmgr_format_eid_loc __repmgr_format_eid_loc@DB_VERSION_UNIQUE_NAME@ #define __repmgr_format_site_loc __repmgr_format_site_loc@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_timespec_diff_now __repmgr_timespec_diff_now@DB_VERSION_UNIQUE_NAME@ +#define __repmgr_repstart __repmgr_repstart@DB_VERSION_UNIQUE_NAME@ #define __repmgr_wsa_init __repmgr_wsa_init@DB_VERSION_UNIQUE_NAME@ #define __dbcl_env_set_rpc_server __dbcl_env_set_rpc_server@DB_VERSION_UNIQUE_NAME@ #define __dbcl_env_close_wrap __dbcl_env_close_wrap@DB_VERSION_UNIQUE_NAME@ @@ -1398,6 +1537,7 @@ #define __dbcl_db_get_lorder __dbcl_db_get_lorder@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_get_open_flags __dbcl_db_get_open_flags@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_get_pagesize __dbcl_db_get_pagesize@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_db_get_priority __dbcl_db_get_priority@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_get_q_extentsize __dbcl_db_get_q_extentsize@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_get_re_delim __dbcl_db_get_re_delim@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_get_re_len __dbcl_db_get_re_len@DB_VERSION_UNIQUE_NAME@ @@ -1416,6 +1556,7 @@ #define __dbcl_db_set_h_nelem __dbcl_db_set_h_nelem@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_set_lorder __dbcl_db_set_lorder@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_set_pagesize __dbcl_db_set_pagesize@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_db_set_priority __dbcl_db_set_priority@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_set_q_extentsize __dbcl_db_set_q_extentsize@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_set_re_delim __dbcl_db_set_re_delim@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_set_re_len __dbcl_db_set_re_len@DB_VERSION_UNIQUE_NAME@ @@ -1423,13 +1564,15 @@ #define __dbcl_db_stat __dbcl_db_stat@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_sync __dbcl_db_sync@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_truncate __dbcl_db_truncate@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_close __dbcl_dbc_c_close@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_count __dbcl_dbc_c_count@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_del __dbcl_dbc_c_del@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_dup __dbcl_dbc_c_dup@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_get __dbcl_dbc_c_get@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_pget __dbcl_dbc_c_pget@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_put __dbcl_dbc_c_put@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_close __dbcl_dbc_close@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_count __dbcl_dbc_count@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_del __dbcl_dbc_del@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_dup __dbcl_dbc_dup@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_get __dbcl_dbc_get@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_get_priority __dbcl_dbc_get_priority@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_pget __dbcl_dbc_pget@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_put __dbcl_dbc_put@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_set_priority __dbcl_dbc_set_priority@DB_VERSION_UNIQUE_NAME@ #define __dbcl_txn_abort __dbcl_txn_abort@DB_VERSION_UNIQUE_NAME@ #define __dbcl_txn_commit __dbcl_txn_commit@DB_VERSION_UNIQUE_NAME@ #define __dbcl_txn_discard __dbcl_txn_discard@DB_VERSION_UNIQUE_NAME@ @@ -1460,12 +1603,12 @@ #define __dbcl_db_truncate_ret __dbcl_db_truncate_ret@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_cursor_ret __dbcl_db_cursor_ret@DB_VERSION_UNIQUE_NAME@ #define __dbcl_db_join_ret __dbcl_db_join_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_close_ret __dbcl_dbc_c_close_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_count_ret __dbcl_dbc_c_count_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_dup_ret __dbcl_dbc_c_dup_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_get_ret __dbcl_dbc_c_get_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_pget_ret __dbcl_dbc_c_pget_ret@DB_VERSION_UNIQUE_NAME@ -#define __dbcl_dbc_c_put_ret __dbcl_dbc_c_put_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_close_ret __dbcl_dbc_close_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_count_ret __dbcl_dbc_count_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_dup_ret __dbcl_dbc_dup_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_get_ret __dbcl_dbc_get_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_pget_ret __dbcl_dbc_pget_ret@DB_VERSION_UNIQUE_NAME@ +#define __dbcl_dbc_put_ret __dbcl_dbc_put_ret@DB_VERSION_UNIQUE_NAME@ #define __env_get_cachesize_proc __env_get_cachesize_proc@DB_VERSION_UNIQUE_NAME@ #define __env_set_cachesize_proc __env_set_cachesize_proc@DB_VERSION_UNIQUE_NAME@ #define __env_cdsgroup_begin_proc __env_cdsgroup_begin_proc@DB_VERSION_UNIQUE_NAME@ @@ -1514,6 +1657,8 @@ #define __db_set_pagesize_proc __db_set_pagesize_proc@DB_VERSION_UNIQUE_NAME@ #define __db_pget_proc __db_pget_proc@DB_VERSION_UNIQUE_NAME@ #define __db_put_proc __db_put_proc@DB_VERSION_UNIQUE_NAME@ +#define __db_get_priority_proc __db_get_priority_proc@DB_VERSION_UNIQUE_NAME@ +#define __db_set_priority_proc __db_set_priority_proc@DB_VERSION_UNIQUE_NAME@ #define __db_get_re_delim_proc __db_get_re_delim_proc@DB_VERSION_UNIQUE_NAME@ #define __db_set_re_delim_proc __db_set_re_delim_proc@DB_VERSION_UNIQUE_NAME@ #define __db_get_re_len_proc __db_get_re_len_proc@DB_VERSION_UNIQUE_NAME@ @@ -1527,13 +1672,15 @@ #define __db_truncate_proc __db_truncate_proc@DB_VERSION_UNIQUE_NAME@ #define __db_cursor_proc __db_cursor_proc@DB_VERSION_UNIQUE_NAME@ #define __db_join_proc __db_join_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_close_proc __dbc_c_close_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_count_proc __dbc_c_count_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_del_proc __dbc_c_del_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_dup_proc __dbc_c_dup_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_get_proc __dbc_c_get_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_pget_proc __dbc_c_pget_proc@DB_VERSION_UNIQUE_NAME@ -#define __dbc_c_put_proc __dbc_c_put_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_close_proc __dbc_close_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_count_proc __dbc_count_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_del_proc __dbc_del_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_dup_proc __dbc_dup_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_get_proc __dbc_get_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_pget_proc __dbc_pget_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_put_proc __dbc_put_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_get_priority_proc __dbc_get_priority_proc@DB_VERSION_UNIQUE_NAME@ +#define __dbc_set_priority_proc __dbc_set_priority_proc@DB_VERSION_UNIQUE_NAME@ #define __dbsrv_settimeout __dbsrv_settimeout@DB_VERSION_UNIQUE_NAME@ #define __dbclear_ctp __dbclear_ctp@DB_VERSION_UNIQUE_NAME@ #define __dbdel_ctp __dbdel_ctp@DB_VERSION_UNIQUE_NAME@ @@ -1620,13 +1767,16 @@ #define tcl_RepElect tcl_RepElect@DB_VERSION_UNIQUE_NAME@ #define tcl_RepFlush tcl_RepFlush@DB_VERSION_UNIQUE_NAME@ #define tcl_RepSync tcl_RepSync@DB_VERSION_UNIQUE_NAME@ +#define tcl_RepLease tcl_RepLease@DB_VERSION_UNIQUE_NAME@ #define tcl_RepLimit tcl_RepLimit@DB_VERSION_UNIQUE_NAME@ #define tcl_RepRequest tcl_RepRequest@DB_VERSION_UNIQUE_NAME@ +#define tcl_RepNoarchiveTimeout tcl_RepNoarchiveTimeout@DB_VERSION_UNIQUE_NAME@ #define tcl_RepTransport tcl_RepTransport@DB_VERSION_UNIQUE_NAME@ #define tcl_RepStart tcl_RepStart@DB_VERSION_UNIQUE_NAME@ #define tcl_RepProcessMessage tcl_RepProcessMessage@DB_VERSION_UNIQUE_NAME@ #define tcl_RepStat tcl_RepStat@DB_VERSION_UNIQUE_NAME@ #define tcl_RepMgr tcl_RepMgr@DB_VERSION_UNIQUE_NAME@ +#define tcl_RepMgrStat tcl_RepMgrStat@DB_VERSION_UNIQUE_NAME@ #define seq_Cmd seq_Cmd@DB_VERSION_UNIQUE_NAME@ #define _TxnInfoDelete _TxnInfoDelete@DB_VERSION_UNIQUE_NAME@ #define tcl_TxnCheckpoint tcl_TxnCheckpoint@DB_VERSION_UNIQUE_NAME@ @@ -1681,8 +1831,8 @@ #define __txn_getckp __txn_getckp@DB_VERSION_UNIQUE_NAME@ #define __txn_updateckp __txn_updateckp@DB_VERSION_UNIQUE_NAME@ #define __txn_failchk __txn_failchk@DB_VERSION_UNIQUE_NAME@ -#define __txn_dbenv_create __txn_dbenv_create@DB_VERSION_UNIQUE_NAME@ -#define __txn_dbenv_destroy __txn_dbenv_destroy@DB_VERSION_UNIQUE_NAME@ +#define __txn_env_create __txn_env_create@DB_VERSION_UNIQUE_NAME@ +#define __txn_env_destroy __txn_env_destroy@DB_VERSION_UNIQUE_NAME@ #define __txn_get_tx_max __txn_get_tx_max@DB_VERSION_UNIQUE_NAME@ #define __txn_set_tx_max __txn_set_tx_max@DB_VERSION_UNIQUE_NAME@ #define __txn_get_tx_timestamp __txn_get_tx_timestamp@DB_VERSION_UNIQUE_NAME@ @@ -1702,7 +1852,8 @@ #define __txn_openfiles __txn_openfiles@DB_VERSION_UNIQUE_NAME@ #define __txn_open __txn_open@DB_VERSION_UNIQUE_NAME@ #define __txn_findlastckp __txn_findlastckp@DB_VERSION_UNIQUE_NAME@ -#define __txn_dbenv_refresh __txn_dbenv_refresh@DB_VERSION_UNIQUE_NAME@ +#define __txn_env_refresh __txn_env_refresh@DB_VERSION_UNIQUE_NAME@ +#define __txn_region_mutex_count __txn_region_mutex_count@DB_VERSION_UNIQUE_NAME@ #define __txn_id_set __txn_id_set@DB_VERSION_UNIQUE_NAME@ #define __txn_oldest_reader __txn_oldest_reader@DB_VERSION_UNIQUE_NAME@ #define __txn_add_buffer __txn_add_buffer@DB_VERSION_UNIQUE_NAME@ @@ -1716,6 +1867,8 @@ #define __txn_lockevent __txn_lockevent@DB_VERSION_UNIQUE_NAME@ #define __txn_remlock __txn_remlock@DB_VERSION_UNIQUE_NAME@ #define __txn_doevents __txn_doevents@DB_VERSION_UNIQUE_NAME@ +#define __txn_record_fname __txn_record_fname@DB_VERSION_UNIQUE_NAME@ +#define __txn_dref_fname __txn_dref_fname@DB_VERSION_UNIQUE_NAME@ #define __xa_get_txn __xa_get_txn@DB_VERSION_UNIQUE_NAME@ #define __db_xa_create __db_xa_create@DB_VERSION_UNIQUE_NAME@ #define __db_rmid_to_env __db_rmid_to_env@DB_VERSION_UNIQUE_NAME@ diff --git a/db/dbinc_auto/lock_ext.h b/db/dbinc_auto/lock_ext.h index f84f27483..3a067bc4b 100644 --- a/db/dbinc_auto/lock_ext.h +++ b/db/dbinc_auto/lock_ext.h @@ -7,33 +7,34 @@ extern "C" { #endif int __lock_vec_pp __P((DB_ENV *, u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); -int __lock_vec __P((DB_ENV *, u_int32_t, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); +int __lock_vec __P((DB_ENV *, DB_LOCKER *, u_int32_t, DB_LOCKREQ *, int, DB_LOCKREQ **)); int __lock_get_pp __P((DB_ENV *, u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); -int __lock_get __P((DB_ENV *, u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); -int __lock_get_internal __P((DB_LOCKTAB *, u_int32_t, u_int32_t, const DBT *, db_lockmode_t, db_timeout_t, DB_LOCK *)); +int __lock_get __P((DB_ENV *, DB_LOCKER *, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)); +int __lock_get_internal __P((DB_LOCKTAB *, DB_LOCKER *, u_int32_t, const DBT *, db_lockmode_t, db_timeout_t, DB_LOCK *)); int __lock_put_pp __P((DB_ENV *, DB_LOCK *)); int __lock_put __P((DB_ENV *, DB_LOCK *)); int __lock_downgrade __P((DB_ENV *, DB_LOCK *, db_lockmode_t, u_int32_t)); -int __lock_locker_is_parent __P((DB_ENV *, u_int32_t, u_int32_t, int *)); +int __lock_locker_is_parent __P((DB_ENV *, DB_LOCKER *, DB_LOCKER *, int *)); int __lock_promote __P((DB_LOCKTAB *, DB_LOCKOBJ *, int *, u_int32_t)); int __lock_detect_pp __P((DB_ENV *, u_int32_t, u_int32_t, int *)); int __lock_detect __P((DB_ENV *, u_int32_t, int *)); int __lock_failchk __P((DB_ENV *)); int __lock_id_pp __P((DB_ENV *, u_int32_t *)); int __lock_id __P((DB_ENV *, u_int32_t *, DB_LOCKER **)); -void __lock_set_thread_id __P((DB_LOCKER *, pid_t, db_threadid_t)); +void __lock_set_thread_id __P((void *, pid_t, db_threadid_t)); int __lock_id_free_pp __P((DB_ENV *, u_int32_t)); -int __lock_id_free __P((DB_ENV *, u_int32_t)); +int __lock_id_free __P((DB_ENV *, DB_LOCKER *)); int __lock_id_set __P((DB_ENV *, u_int32_t, u_int32_t)); -int __lock_getlocker __P((DB_LOCKTAB *, u_int32_t, u_int32_t, int, DB_LOCKER **)); +int __lock_getlocker __P((DB_LOCKTAB *, u_int32_t, int, DB_LOCKER **)); +int __lock_getlocker_int __P((DB_LOCKTAB *, u_int32_t, int, DB_LOCKER **)); int __lock_addfamilylocker __P((DB_ENV *, u_int32_t, u_int32_t)); -int __lock_freefamilylocker __P((DB_LOCKTAB *, u_int32_t)); -void __lock_freelocker __P((DB_LOCKTAB *, DB_LOCKREGION *, DB_LOCKER *, u_int32_t)); +int __lock_freefamilylocker __P((DB_LOCKTAB *, DB_LOCKER *)); +int __lock_freelocker __P((DB_LOCKTAB *, DB_LOCKREGION *, DB_LOCKER *)); int __lock_fix_list __P((DB_ENV *, DBT *, u_int32_t)); -int __lock_get_list __P((DB_ENV *, u_int32_t, u_int32_t, db_lockmode_t, DBT *)); +int __lock_get_list __P((DB_ENV *, DB_LOCKER *, u_int32_t, db_lockmode_t, DBT *)); void __lock_list_print __P((DB_ENV *, DBT *)); -int __lock_dbenv_create __P((DB_ENV *)); -void __lock_dbenv_destroy __P((DB_ENV *)); +int __lock_env_create __P((DB_ENV *)); +void __lock_env_destroy __P((DB_ENV *)); int __lock_get_lk_conflicts __P((DB_ENV *, const u_int8_t **, int *)); int __lock_set_lk_conflicts __P((DB_ENV *, u_int8_t *, int)); int __lock_get_lk_detect __P((DB_ENV *, u_int32_t *)); @@ -46,18 +47,18 @@ int __lock_get_lk_max_objects __P((DB_ENV *, u_int32_t *)); int __lock_set_lk_max_objects __P((DB_ENV *, u_int32_t)); int __lock_get_env_timeout __P((DB_ENV *, db_timeout_t *, u_int32_t)); int __lock_set_env_timeout __P((DB_ENV *, db_timeout_t, u_int32_t)); -int __lock_open __P((DB_ENV *)); -int __lock_dbenv_refresh __P((DB_ENV *)); +int __lock_open __P((DB_ENV *, int)); +int __lock_env_refresh __P((DB_ENV *)); u_int32_t __lock_region_mutex_count __P((DB_ENV *)); int __lock_stat_pp __P((DB_ENV *, DB_LOCK_STAT **, u_int32_t)); int __lock_stat_print_pp __P((DB_ENV *, u_int32_t)); int __lock_stat_print __P((DB_ENV *, u_int32_t)); void __lock_printlock __P((DB_LOCKTAB *, DB_MSGBUF *mbp, struct __db_lock *, int)); -int __lock_set_timeout __P(( DB_ENV *, u_int32_t, db_timeout_t, u_int32_t)); -int __lock_set_timeout_internal __P((DB_ENV *, u_int32_t, db_timeout_t, u_int32_t)); -int __lock_inherit_timeout __P(( DB_ENV *, u_int32_t, u_int32_t)); -void __lock_expires __P((DB_ENV *, db_timeval_t *, db_timeout_t)); -int __lock_expired __P((DB_ENV *, db_timeval_t *, db_timeval_t *)); +int __lock_set_timeout __P((DB_ENV *, DB_LOCKER *, db_timeout_t, u_int32_t)); +int __lock_set_timeout_internal __P((DB_ENV *, DB_LOCKER *, db_timeout_t, u_int32_t)); +int __lock_inherit_timeout __P((DB_ENV *, DB_LOCKER *, DB_LOCKER *)); +void __lock_expires __P((DB_ENV *, db_timespec *, db_timeout_t)); +int __lock_expired __P((DB_ENV *, db_timespec *, db_timespec *)); u_int32_t __lock_ohash __P((const DBT *)); u_int32_t __lock_lhash __P((DB_LOCKOBJ *)); int __lock_nomem __P((DB_ENV *, const char *)); diff --git a/db/dbinc_auto/log_ext.h b/db/dbinc_auto/log_ext.h index a231bc23e..0170c2c1d 100644 --- a/db/dbinc_auto/log_ext.h +++ b/db/dbinc_auto/log_ext.h @@ -6,15 +6,15 @@ extern "C" { #endif -int __log_open __P((DB_ENV *)); +int __log_open __P((DB_ENV *, int)); int __log_find __P((DB_LOG *, int, u_int32_t *, logfile_validity *)); int __log_valid __P((DB_LOG *, u_int32_t, int, DB_FH **, u_int32_t, logfile_validity *, u_int32_t *)); -int __log_dbenv_refresh __P((DB_ENV *)); +int __log_env_refresh __P((DB_ENV *)); int __log_get_cached_ckp_lsn __P((DB_ENV *, DB_LSN *)); u_int32_t __log_region_mutex_count __P((DB_ENV *)); int __log_vtruncate __P((DB_ENV *, DB_LSN *, DB_LSN *, DB_LSN *)); int __log_is_outdated __P((DB_ENV *, u_int32_t, int *)); -int __log_zero __P((DB_ENV *, DB_LSN *, DB_LSN *)); +int __log_zero __P((DB_ENV *, DB_LSN *)); int __log_inmem_lsnoff __P((DB_LOG *, DB_LSN *, size_t *)); int __log_inmem_newfile __P((DB_LOG *, u_int32_t)); int __log_inmem_chkspace __P((DB_LOG *, size_t)); @@ -31,12 +31,12 @@ int __log_printf_pp __P((DB_ENV *, DB_TXN *, const char *, va_list)); int __log_printf __P((DB_ENV *, DB_TXN *, const char *, ...)) __attribute__ ((__format__ (__printf__, 3, 4))); int __log_cursor_pp __P((DB_ENV *, DB_LOGC **, u_int32_t)); int __log_cursor __P((DB_ENV *, DB_LOGC **)); -int __log_c_close __P((DB_LOGC *)); -int __log_c_version __P((DB_LOGC *, u_int32_t *)); -int __log_c_get __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); +int __logc_close __P((DB_LOGC *)); +int __logc_version __P((DB_LOGC *, u_int32_t *)); +int __logc_get __P((DB_LOGC *, DB_LSN *, DBT *, u_int32_t)); int __log_rep_split __P((DB_ENV *, REP_CONTROL *, DBT *, DB_LSN *, DB_LSN *)); -int __log_dbenv_create __P((DB_ENV *)); -void __log_dbenv_destroy __P((DB_ENV *)); +int __log_env_create __P((DB_ENV *)); +void __log_env_destroy __P((DB_ENV *)); int __log_get_lg_bsize __P((DB_ENV *, u_int32_t *)); int __log_set_lg_bsize __P((DB_ENV *, u_int32_t)); int __log_get_lg_filemode __P((DB_ENV *, int *)); @@ -59,7 +59,7 @@ int __log_flush __P((DB_ENV *, const DB_LSN *)); int __log_flush_int __P((DB_LOG *, const DB_LSN *, int)); int __log_file_pp __P((DB_ENV *, const DB_LSN *, char *, size_t)); int __log_name __P((DB_LOG *, u_int32_t, char **, DB_FH **, u_int32_t)); -int __log_rep_put __P((DB_ENV *, DB_LSN *, const DBT *)); +int __log_rep_put __P((DB_ENV *, DB_LSN *, const DBT *, u_int32_t)); int __log_stat_pp __P((DB_ENV *, DB_LOG_STAT **, u_int32_t)); int __log_stat_print_pp __P((DB_ENV *, u_int32_t)); int __log_stat_print __P((DB_ENV *, u_int32_t)); diff --git a/db/dbinc_auto/mp_ext.h b/db/dbinc_auto/mp_ext.h index 13e6b1be1..d4974af88 100644 --- a/db/dbinc_auto/mp_ext.h +++ b/db/dbinc_auto/mp_ext.h @@ -14,7 +14,7 @@ void __memp_check_order __P((DB_ENV *, DB_MPOOL_HASH *)); int __memp_bhwrite __P((DB_MPOOL *, DB_MPOOL_HASH *, MPOOLFILE *, BH *, int)); int __memp_pgread __P((DB_MPOOLFILE *, DB_MPOOL_HASH *, BH *, int)); int __memp_pg __P((DB_MPOOLFILE *, BH *, int)); -int __memp_bhfree __P((DB_MPOOL *, DB_MPOOL_HASH *, BH *, u_int32_t)); +int __memp_bhfree __P((DB_MPOOL *, REGINFO *, DB_MPOOL_HASH *, BH *, u_int32_t)); int __memp_fget_pp __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); int __memp_fget __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); int __memp_fcreate_pp __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); @@ -28,7 +28,7 @@ int __memp_get_ftype __P((DB_MPOOLFILE *, int *)); int __memp_set_ftype __P((DB_MPOOLFILE *, int)); int __memp_set_lsn_offset __P((DB_MPOOLFILE *, int32_t)); int __memp_set_pgcookie __P((DB_MPOOLFILE *, DBT *)); -int __memp_last_pgno __P((DB_MPOOLFILE *, db_pgno_t *)); +int __memp_get_last_pgno __P((DB_MPOOLFILE *, db_pgno_t *)); char * __memp_fn __P((DB_MPOOLFILE *)); char * __memp_fns __P((DB_MPOOL *, MPOOLFILE *)); int __memp_fopen_pp __P((DB_MPOOLFILE *, const char *, u_int32_t, int, size_t)); @@ -37,19 +37,19 @@ int __memp_fclose_pp __P((DB_MPOOLFILE *, u_int32_t)); int __memp_fclose __P((DB_MPOOLFILE *, u_int32_t)); int __memp_mf_discard __P((DB_MPOOL *, MPOOLFILE *)); int __memp_inmemlist __P((DB_ENV *, char ***, int *)); -int __memp_fput_pp __P((DB_MPOOLFILE *, void *, u_int32_t)); -int __memp_fput __P((DB_MPOOLFILE *, void *, u_int32_t)); -int __memp_fset_pp __P((DB_MPOOLFILE *, void *, u_int32_t)); -int __memp_fset __P((DB_MPOOLFILE *, void *, u_int32_t)); -int __memp_dirty __P((DB_MPOOLFILE *, void *, DB_TXN *, u_int32_t)); -int __memp_dbenv_create __P((DB_ENV *)); -void __memp_dbenv_destroy __P((DB_ENV *)); +int __memp_fput_pp __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); +int __memp_fput __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY)); +int __memp_dirty __P(( DB_MPOOLFILE *, void *, DB_TXN *, DB_CACHE_PRIORITY, u_int32_t)); +int __memp_env_create __P((DB_ENV *)); +void __memp_env_destroy __P((DB_ENV *)); int __memp_get_cachesize __P((DB_ENV *, u_int32_t *, u_int32_t *, int *)); int __memp_set_cachesize __P((DB_ENV *, u_int32_t, u_int32_t, int)); +int __memp_set_config __P((DB_ENV *, u_int32_t, int)); +int __memp_get_config __P((DB_ENV *, u_int32_t, int *)); int __memp_get_mp_max_openfd __P((DB_ENV *, int *)); int __memp_set_mp_max_openfd __P((DB_ENV *, int)); -int __memp_get_mp_max_write __P((DB_ENV *, int *, int *)); -int __memp_set_mp_max_write __P((DB_ENV *, int, int)); +int __memp_get_mp_max_write __P((DB_ENV *, int *, db_timeout_t *)); +int __memp_set_mp_max_write __P((DB_ENV *, int, db_timeout_t)); int __memp_get_mp_mmapsize __P((DB_ENV *, size_t *)); int __memp_set_mp_mmapsize __P((DB_ENV *, size_t)); int __memp_nameop __P((DB_ENV *, u_int8_t *, const char *, const char *, const char *, int)); @@ -64,22 +64,28 @@ int __memp_bh_settxn __P((DB_MPOOL *, MPOOLFILE *mfp, BH *, void *)); int __memp_skip_curadj __P((DBC *, db_pgno_t)); int __memp_bh_freeze __P((DB_MPOOL *, REGINFO *, DB_MPOOL_HASH *, BH *, int *)); int __memp_bh_thaw __P((DB_MPOOL *, REGINFO *, DB_MPOOL_HASH *, BH *, BH *)); -int __memp_open __P((DB_ENV *)); +int __memp_open __P((DB_ENV *, int)); +int __memp_init __P((DB_ENV *, DB_MPOOL *, u_int, u_int32_t, u_int)); +u_int32_t __memp_max_regions __P((DB_ENV *)); u_int32_t __memp_region_mutex_count __P((DB_ENV *)); -int __memp_dbenv_refresh __P((DB_ENV *)); +int __memp_env_refresh __P((DB_ENV *)); int __memp_register_pp __P((DB_ENV *, int, int (*)(DB_ENV *, db_pgno_t, void *, DBT *), int (*)(DB_ENV *, db_pgno_t, void *, DBT *))); int __memp_register __P((DB_ENV *, int, int (*)(DB_ENV *, db_pgno_t, void *, DBT *), int (*)(DB_ENV *, db_pgno_t, void *, DBT *))); +int __memp_get_bucket __P((DB_MPOOLFILE *, db_pgno_t, REGINFO **, DB_MPOOL_HASH **)); +int __memp_resize __P((DB_MPOOL *, u_int32_t, u_int32_t)); +int __memp_get_cache_max __P((DB_ENV *, u_int32_t *, u_int32_t *)); +int __memp_set_cache_max __P((DB_ENV *, u_int32_t, u_int32_t)); int __memp_stat_pp __P((DB_ENV *, DB_MPOOL_STAT **, DB_MPOOL_FSTAT ***, u_int32_t)); int __memp_stat_print_pp __P((DB_ENV *, u_int32_t)); int __memp_stat_print __P((DB_ENV *, u_int32_t)); void __memp_stat_hash __P((REGINFO *, MPOOL *, u_int32_t *)); int __memp_walk_files __P((DB_ENV *, MPOOL *, int (*) __P((DB_ENV *, MPOOLFILE *, void *, u_int32_t *, u_int32_t)), void *, u_int32_t *, u_int32_t)); int __memp_sync_pp __P((DB_ENV *, DB_LSN *)); -int __memp_sync __P((DB_ENV *, DB_LSN *)); +int __memp_sync __P((DB_ENV *, u_int32_t, DB_LSN *)); int __memp_fsync_pp __P((DB_MPOOLFILE *)); int __memp_fsync __P((DB_MPOOLFILE *)); int __mp_xxx_fh __P((DB_MPOOLFILE *, DB_FH **)); -int __memp_sync_int __P((DB_ENV *, DB_MPOOLFILE *, u_int32_t, db_sync_op, u_int32_t *)); +int __memp_sync_int __P((DB_ENV *, DB_MPOOLFILE *, u_int32_t, u_int32_t, u_int32_t *, int *)); int __memp_mf_sync __P((DB_MPOOL *, MPOOLFILE *, int)); int __memp_trickle_pp __P((DB_ENV *, int, int *)); diff --git a/db/dbinc_auto/mutex_ext.h b/db/dbinc_auto/mutex_ext.h index 7b06e67d1..e3abbf77d 100644 --- a/db/dbinc_auto/mutex_ext.h +++ b/db/dbinc_auto/mutex_ext.h @@ -31,10 +31,11 @@ int __db_pthread_mutex_init __P((DB_ENV *, db_mutex_t, u_int32_t)); int __db_pthread_mutex_lock __P((DB_ENV *, db_mutex_t)); int __db_pthread_mutex_unlock __P((DB_ENV *, db_mutex_t)); int __db_pthread_mutex_destroy __P((DB_ENV *, db_mutex_t)); -int __mutex_open __P((DB_ENV *)); -int __mutex_dbenv_refresh __P((DB_ENV *)); +int __mutex_open __P((DB_ENV *, int)); +int __mutex_env_refresh __P((DB_ENV *)); void __mutex_resource_return __P((DB_ENV *, REGINFO *)); -int __mutex_stat __P((DB_ENV *, DB_MUTEX_STAT **, u_int32_t)); +int __mutex_stat_pp __P((DB_ENV *, DB_MUTEX_STAT **, u_int32_t)); +int __mutex_stat_print_pp __P((DB_ENV *, u_int32_t)); int __mutex_stat_print __P((DB_ENV *, u_int32_t)); void __mutex_print_debug_single __P((DB_ENV *, const char *, db_mutex_t, u_int32_t)); void __mutex_print_debug_stats __P((DB_ENV *, DB_MSGBUF *, db_mutex_t, u_int32_t)); diff --git a/db/dbinc_auto/os_ext.h b/db/dbinc_auto/os_ext.h index 2481c42b8..d02dc0b48 100644 --- a/db/dbinc_auto/os_ext.h +++ b/db/dbinc_auto/os_ext.h @@ -6,6 +6,7 @@ extern "C" { #endif +void __os_abort __P((void)); int __os_abspath __P((const char *)); int __os_umalloc __P((DB_ENV *, size_t, void *)); int __os_urealloc __P((DB_ENV *, size_t, void *)); @@ -16,7 +17,7 @@ int __os_malloc __P((DB_ENV *, size_t, void *)); int __os_realloc __P((DB_ENV *, size_t, void *)); void __os_free __P((DB_ENV *, void *)); void *__ua_memcpy __P((void *, const void *, size_t)); -void __os_clock __P((DB_ENV *, u_int32_t *, u_int32_t *)); +void __os_gettime __P((DB_ENV *, db_timespec *)); int __os_fs_notzero __P((void)); int __os_support_direct_io __P((void)); int __os_support_db_register __P((void)); @@ -44,11 +45,7 @@ int __os_unmapfile __P((DB_ENV *, void *, size_t)); int __os_mkdir __P((DB_ENV *, const char *, int)); u_int32_t __db_oflags __P((int)); int __db_omode __P((const char *)); -int __os_open __P((DB_ENV *, const char *, u_int32_t, int, DB_FH **)); -int __os_open_extend __P((DB_ENV *, const char *, u_int32_t, u_int32_t, int, DB_FH **)); -#ifdef HAVE_QNX -int __os_shmname __P((DB_ENV *, const char *, char **)); -#endif +int __os_open __P((DB_ENV *, const char *, u_int32_t, u_int32_t, int, DB_FH **)); void __os_id __P((DB_ENV *, pid_t *, db_threadid_t*)); int __os_r_attach __P((DB_ENV *, REGINFO *, REGION *)); int __os_r_detach __P((DB_ENV *, REGINFO *, int)); @@ -70,8 +67,41 @@ void __os_unique_id __P((DB_ENV *, u_int32_t *)); int __os_region_unlink __P((DB_ENV *, const char *)); int __os_unlink __P((DB_ENV *, const char *)); void __os_yield __P((DB_ENV *)); +#ifndef HAVE_FCLOSE +int fclose __P((FILE *)); +#endif +#ifndef HAVE_FGETC +int fgetc __P((FILE *)); +#endif +#ifndef HAVE_FGETS +char *fgets __P((char *, int, FILE *)); +#endif +#ifndef HAVE_FOPEN +FILE *fopen __P((const char *, const char *)); +#endif +#ifndef HAVE_FWRITE +size_t fwrite __P((const void *, size_t, size_t, FILE *)); +#endif +#ifndef HAVE_LOCALTIME +struct tm *localtime __P((const time_t *)); +#endif +#ifndef HAVE_TIME +time_t time __P((time_t *)); +#endif +#ifdef HAVE_QNX +int __os_qnx_region_open __P((DB_ENV *, const char *, int, int, DB_FH *)); +#endif +#ifdef HAVE_QNX +int __os_qnx_shmname __P((DB_ENV *, const char *, char **)); +#endif +#ifndef HAVE_TIME +time_t time __P((time_t *)); +#endif int __os_is_winnt __P((void)); +#ifdef HAVE_REPLICATION_THREADS int __os_get_neterr __P((void)); +#endif +int __os_mkdir __P((DB_ENV *, const char *, int)); #if defined(__cplusplus) } diff --git a/db/dbinc_auto/qam_ext.h b/db/dbinc_auto/qam_ext.h index 4c0571f1d..881b31107 100644 --- a/db/dbinc_auto/qam_ext.h +++ b/db/dbinc_auto/qam_ext.h @@ -9,8 +9,8 @@ extern "C" { int __qam_position __P((DBC *, db_recno_t *, db_lockmode_t, u_int32_t, int *)); int __qam_pitem __P((DBC *, QPAGE *, u_int32_t, db_recno_t, DBT *)); int __qam_append __P((DBC *, DBT *, DBT *)); -int __qam_c_dup __P((DBC *, DBC *)); -int __qam_c_init __P((DBC *)); +int __qamc_dup __P((DBC *, DBC *)); +int __qamc_init __P((DBC *)); int __qam_truncate __P((DBC *, u_int32_t *)); int __qam_delete __P((DBC *, DBT *)); int __qam_incfirst_log __P((DB *, DB_TXN *, DB_LSN *, u_int32_t, db_recno_t, db_pgno_t)); @@ -32,11 +32,11 @@ int __qam_delext_print __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); int __qam_init_print __P((DB_ENV *, int (***)(DB_ENV *, DBT *, DB_LSN *, db_recops, void *), size_t *)); int __qam_mswap __P((PAGE *)); int __qam_pgin_out __P((DB_ENV *, db_pgno_t, void *, DBT *)); -int __qam_fprobe __P((DB *, db_pgno_t, DB_TXN *, void *, qam_probe_mode, u_int32_t)); +int __qam_fprobe __P((DB *, db_pgno_t, DB_TXN *, void *, qam_probe_mode, DB_CACHE_PRIORITY, u_int32_t)); int __qam_fclose __P((DB *, db_pgno_t)); int __qam_fremove __P((DB *, db_pgno_t)); int __qam_sync __P((DB *)); -int __qam_gen_filelist __P(( DB *, QUEUE_FILELIST **)); +int __qam_gen_filelist __P((DB *, QUEUE_FILELIST **)); int __qam_extent_names __P((DB_ENV *, char *, char ***)); void __qam_exid __P((DB *, u_int8_t *, u_int32_t)); int __qam_nameop __P((DB *, DB_TXN *, const char *, qam_name_op)); diff --git a/db/dbinc_auto/rep_ext.h b/db/dbinc_auto/rep_ext.h index 9430a895c..0dffcb72d 100644 --- a/db/dbinc_auto/rep_ext.h +++ b/db/dbinc_auto/rep_ext.h @@ -19,18 +19,27 @@ int __rep_page_fail __P((DB_ENV *, int, DBT *)); int __rep_init_cleanup __P((DB_ENV *, REP *, int)); int __rep_pggap_req __P((DB_ENV *, REP *, __rep_fileinfo_args *, u_int32_t)); int __rep_finfo_alloc __P((DB_ENV *, __rep_fileinfo_args *, __rep_fileinfo_args **)); -int __rep_elect __P((DB_ENV *, int, int, int *, u_int32_t)); -int __rep_vote1 __P((DB_ENV *, REP_CONTROL *, DBT *, int *)); -int __rep_vote2 __P((DB_ENV *, DBT *, int *)); -void __rep_elect_master __P((DB_ENV *, REP *, int *)); +int __rep_remove_init_file __P((DB_ENV *)); +int __rep_reset_init __P((DB_ENV *)); +int __rep_elect __P((DB_ENV *, int, int, u_int32_t)); +int __rep_vote1 __P((DB_ENV *, REP_CONTROL *, DBT *, int)); +int __rep_vote2 __P((DB_ENV *, DBT *, int)); +int __rep_update_grant __P((DB_ENV *, db_timespec *)); +int __rep_islease_granted __P((DB_ENV *)); +int __rep_lease_table_alloc __P((DB_ENV *, int)); +int __rep_lease_grant __P((DB_ENV *, REP_CONTROL *, DBT *, int)); +int __rep_lease_check __P((DB_ENV *, int)); +int __rep_lease_refresh __P((DB_ENV *)); +int __rep_lease_expire __P((DB_ENV *, int)); +db_timeout_t __rep_lease_waittime __P((DB_ENV *)); int __rep_allreq __P((DB_ENV *, REP_CONTROL *, int)); int __rep_log __P((DB_ENV *, REP_CONTROL *, DBT *, time_t, DB_LSN *)); int __rep_bulk_log __P((DB_ENV *, REP_CONTROL *, DBT *, time_t, DB_LSN *)); int __rep_logreq __P((DB_ENV *, REP_CONTROL *, DBT *, int)); int __rep_loggap_req __P((DB_ENV *, REP *, DB_LSN *, u_int32_t)); int __rep_logready __P((DB_ENV *, REP *, time_t, DB_LSN *)); -int __rep_dbenv_create __P((DB_ENV *)); -void __rep_dbenv_destroy __P((DB_ENV *)); +int __rep_env_create __P((DB_ENV *)); +void __rep_env_destroy __P((DB_ENV *)); int __rep_get_config __P((DB_ENV *, u_int32_t, int *)); int __rep_set_config __P((DB_ENV *, u_int32_t, int)); int __rep_start __P((DB_ENV *, DBT *, u_int32_t)); @@ -46,19 +55,21 @@ int __rep_get_timeout __P((DB_ENV *, int, db_timeout_t *)); int __rep_get_request __P((DB_ENV *, u_int32_t *, u_int32_t *)); int __rep_set_request __P((DB_ENV *, u_int32_t, u_int32_t)); int __rep_set_transport __P((DB_ENV *, int, int (*)(DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t))); +int __rep_set_lease __P((DB_ENV *, u_int32_t, u_int32_t)); int __rep_flush __P((DB_ENV *)); int __rep_sync __P((DB_ENV *, u_int32_t)); -int __rep_process_message __P((DB_ENV *, DBT *, DBT *, int *, DB_LSN *)); +int __rep_process_message __P((DB_ENV *, DBT *, DBT *, int, DB_LSN *)); int __rep_apply __P((DB_ENV *, REP_CONTROL *, DBT *, DB_LSN *, int *, DB_LSN *)); int __rep_process_txn __P((DB_ENV *, DBT *)); +int __rep_resend_req __P((DB_ENV *, int)); int __rep_check_doreq __P((DB_ENV *, REP *)); int __rep_open __P((DB_ENV *)); -int __rep_region_destroy __P((DB_ENV *)); -void __rep_dbenv_refresh __P((DB_ENV *)); -int __rep_close __P((DB_ENV *)); +int __rep_env_refresh __P((DB_ENV *)); +int __rep_env_close __P((DB_ENV *)); int __rep_preclose __P((DB_ENV *)); -int __rep_closefiles __P((DB_ENV *)); +int __rep_closefiles __P((DB_ENV *, int)); int __rep_write_egen __P((DB_ENV *, u_int32_t)); +int __rep_write_gen __P((DB_ENV *, u_int32_t)); int __rep_stat_pp __P((DB_ENV *, DB_REP_STAT **, u_int32_t)); int __rep_stat_print_pp __P((DB_ENV *, u_int32_t)); int __rep_stat_print __P((DB_ENV *, u_int32_t)); @@ -71,19 +82,21 @@ int __rep_new_master __P((DB_ENV *, REP_CONTROL *, int)); int __rep_noarchive __P((DB_ENV *)); void __rep_send_vote __P((DB_ENV *, DB_LSN *, int, int, int, u_int32_t, u_int32_t, int, u_int32_t, u_int32_t)); void __rep_elect_done __P((DB_ENV *, REP *)); -int __rep_grow_sites __P((DB_ENV *dbenv, int nsites)); +int __rep_grow_sites __P((DB_ENV *, int)); int __env_rep_enter __P((DB_ENV *, int)); int __env_db_rep_exit __P((DB_ENV *)); int __db_rep_enter __P((DB *, int, int, int)); int __op_rep_enter __P((DB_ENV *)); int __op_rep_exit __P((DB_ENV *)); -int __rep_get_gen __P((DB_ENV *, u_int32_t *)); int __rep_lockout_api __P((DB_ENV *, REP *)); +int __rep_lockout_apply __P((DB_ENV *, REP *, u_int32_t)); int __rep_lockout_msg __P((DB_ENV *, REP *, u_int32_t)); -int __rep_send_throttle __P((DB_ENV *, int, REP_THROTTLE *, u_int32_t)); +int __rep_send_throttle __P((DB_ENV *, int, REP_THROTTLE *, u_int32_t, u_int32_t)); u_int32_t __rep_msg_to_old __P((u_int32_t, u_int32_t)); u_int32_t __rep_msg_from_old __P((u_int32_t, u_int32_t)); +void __rep_print __P((DB_ENV *, const char *, ...)) __attribute__ ((__format__ (__printf__, 2, 3))); void __rep_print_message __P((DB_ENV *, int, REP_CONTROL *, char *, u_int32_t)); +void __rep_fire_event __P((DB_ENV *, u_int32_t, void *)); int __rep_verify __P((DB_ENV *, REP_CONTROL *, DBT *, int, time_t)); int __rep_verify_fail __P((DB_ENV *, REP_CONTROL *, int)); int __rep_verify_req __P((DB_ENV *, REP_CONTROL *, int)); diff --git a/db/dbinc_auto/repmgr_ext.h b/db/dbinc_auto/repmgr_ext.h index 78979b987..eeefd4451 100644 --- a/db/dbinc_auto/repmgr_ext.h +++ b/db/dbinc_auto/repmgr_ext.h @@ -12,13 +12,14 @@ int __repmgr_start __P((DB_ENV *, int, u_int32_t)); int __repmgr_close __P((DB_ENV *)); int __repmgr_set_ack_policy __P((DB_ENV *, int)); int __repmgr_get_ack_policy __P((DB_ENV *, int *)); -int __repmgr_dbenv_create __P((DB_ENV *, DB_REP *)); -void __repmgr_dbenv_destroy __P((DB_ENV *, DB_REP *)); +int __repmgr_env_create __P((DB_ENV *, DB_REP *)); +void __repmgr_env_destroy __P((DB_ENV *, DB_REP *)); int __repmgr_stop_threads __P((DB_ENV *)); int __repmgr_set_local_site __P((DB_ENV *, const char *, u_int, u_int32_t)); int __repmgr_add_remote_site __P((DB_ENV *, const char *, u_int, int *, u_int32_t)); void *__repmgr_msg_thread __P((void *)); -int __repmgr_stash_generation __P((DB_ENV *)); +int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); +void __repmgr_stash_generation __P((DB_ENV *)); int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, u_int, const DBT *, const DBT *)); int __repmgr_is_permanent __P((DB_ENV *, const DB_LSN *)); @@ -47,7 +48,6 @@ int __repmgr_signal __P((cond_var_t *)); int __repmgr_wake_main_thread __P((DB_ENV*)); int __repmgr_writev __P((socket_t, db_iovec_t *, int, size_t *)); int __repmgr_readv __P((socket_t, db_iovec_t *, int, size_t *)); -void __repmgr_timeval_diff_current __P((DB_ENV *, repmgr_timeval_t *, select_timeout_t *)); int __repmgr_select_loop __P((DB_ENV *)); int __repmgr_queue_create __P((DB_ENV *, DB_REP *)); void __repmgr_queue_destroy __P((DB_ENV *)); @@ -62,8 +62,39 @@ int __repmgr_connect_site __P((DB_ENV *, u_int eid)); int __repmgr_send_handshake __P((DB_ENV *, REPMGR_CONNECTION *)); int __repmgr_read_from_site __P((DB_ENV *, REPMGR_CONNECTION *)); int __repmgr_write_some __P((DB_ENV *, REPMGR_CONNECTION *)); +int __repmgr_stat_pp __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); +int __repmgr_stat_print_pp __P((DB_ENV *, u_int32_t)); int __repmgr_site_list __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); -int __repmgr_print_stats __P((DB_ENV *)); +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_close __P((DB_ENV *)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_add_remote_site __P((DB_ENV *, const char *, u_int, int *, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_get_ack_policy __P((DB_ENV *, int *)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_set_ack_policy __P((DB_ENV *, int)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_set_local_site __P((DB_ENV *, const char *, u_int, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_site_list __P((DB_ENV *, u_int *, DB_REPMGR_SITE **)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_start __P((DB_ENV *, int, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_stat_pp __P((DB_ENV *, DB_REPMGR_STAT **, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_stat_print_pp __P((DB_ENV *, u_int32_t)); +#endif +#ifndef HAVE_REPLICATION_THREADS +int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); +#endif int __repmgr_schedule_connection_attempt __P((DB_ENV *, u_int, int)); void __repmgr_reset_for_reading __P((REPMGR_CONNECTION *)); int __repmgr_new_connection __P((DB_ENV *, REPMGR_CONNECTION **, socket_t, u_int32_t)); @@ -74,11 +105,12 @@ void __repmgr_add_buffer __P((REPMGR_IOVECS *, void *, size_t)); void __repmgr_add_dbt __P((REPMGR_IOVECS *, const DBT *)); int __repmgr_update_consumed __P((REPMGR_IOVECS *, size_t)); int __repmgr_prepare_my_addr __P((DB_ENV *, DBT *)); -int __repmgr_timeval_cmp __P((repmgr_timeval_t *, repmgr_timeval_t *)); u_int __repmgr_get_nsites __P((DB_REP *)); void __repmgr_thread_failure __P((DB_ENV *, int)); char *__repmgr_format_eid_loc __P((DB_REP *, int, char *)); char *__repmgr_format_site_loc __P((REPMGR_SITE *, char *)); +void __repmgr_timespec_diff_now __P((DB_ENV *, db_timespec *, db_timespec *)); +int __repmgr_repstart __P((DB_ENV *, u_int32_t)); int __repmgr_wsa_init __P((DB_ENV *)); #if defined(__cplusplus) diff --git a/db/dbinc_auto/rpc_client_ext.h b/db/dbinc_auto/rpc_client_ext.h index a578bbcd1..bc64116a0 100644 --- a/db/dbinc_auto/rpc_client_ext.h +++ b/db/dbinc_auto/rpc_client_ext.h @@ -50,6 +50,7 @@ int __dbcl_db_get_h_nelem __P((DB *, u_int32_t *)); int __dbcl_db_get_lorder __P((DB *, int *)); int __dbcl_db_get_open_flags __P((DB *, u_int32_t *)); int __dbcl_db_get_pagesize __P((DB *, u_int32_t *)); +int __dbcl_db_get_priority __P((DB *, DB_CACHE_PRIORITY *)); int __dbcl_db_get_q_extentsize __P((DB *, u_int32_t *)); int __dbcl_db_get_re_delim __P((DB *, int *)); int __dbcl_db_get_re_len __P((DB *, u_int32_t *)); @@ -68,6 +69,7 @@ int __dbcl_db_set_h_ffactor __P((DB *, u_int32_t)); int __dbcl_db_set_h_nelem __P((DB *, u_int32_t)); int __dbcl_db_set_lorder __P((DB *, int)); int __dbcl_db_set_pagesize __P((DB *, u_int32_t)); +int __dbcl_db_set_priority __P((DB *, DB_CACHE_PRIORITY)); int __dbcl_db_set_q_extentsize __P((DB *, u_int32_t)); int __dbcl_db_set_re_delim __P((DB *, int)); int __dbcl_db_set_re_len __P((DB *, u_int32_t)); @@ -75,13 +77,15 @@ int __dbcl_db_set_re_pad __P((DB *, int)); int __dbcl_db_stat __P((DB *, DB_TXN *, void *, u_int32_t)); int __dbcl_db_sync __P((DB *, u_int32_t)); int __dbcl_db_truncate __P((DB *, DB_TXN *, u_int32_t *, u_int32_t)); -int __dbcl_dbc_c_close __P((DBC *)); -int __dbcl_dbc_c_count __P((DBC *, db_recno_t *, u_int32_t)); -int __dbcl_dbc_c_del __P((DBC *, u_int32_t)); -int __dbcl_dbc_c_dup __P((DBC *, DBC **, u_int32_t)); -int __dbcl_dbc_c_get __P((DBC *, DBT *, DBT *, u_int32_t)); -int __dbcl_dbc_c_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); -int __dbcl_dbc_c_put __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbcl_dbc_close __P((DBC *)); +int __dbcl_dbc_count __P((DBC *, db_recno_t *, u_int32_t)); +int __dbcl_dbc_del __P((DBC *, u_int32_t)); +int __dbcl_dbc_dup __P((DBC *, DBC **, u_int32_t)); +int __dbcl_dbc_get __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbcl_dbc_get_priority __P((DBC *, DB_CACHE_PRIORITY *)); +int __dbcl_dbc_pget __P((DBC *, DBT *, DBT *, DBT *, u_int32_t)); +int __dbcl_dbc_put __P((DBC *, DBT *, DBT *, u_int32_t)); +int __dbcl_dbc_set_priority __P((DBC *, DB_CACHE_PRIORITY)); int __dbcl_txn_abort __P((DB_TXN *)); int __dbcl_txn_commit __P((DB_TXN *, u_int32_t)); int __dbcl_txn_discard __P((DB_TXN *, u_int32_t)); @@ -112,12 +116,12 @@ int __dbcl_db_stat_ret __P((DB *, DB_TXN *, void *, u_int32_t, __db_stat_reply * int __dbcl_db_truncate_ret __P((DB *, DB_TXN *, u_int32_t *, u_int32_t, __db_truncate_reply *)); int __dbcl_db_cursor_ret __P((DB *, DB_TXN *, DBC **, u_int32_t, __db_cursor_reply *)); int __dbcl_db_join_ret __P((DB *, DBC **, DBC **, u_int32_t, __db_join_reply *)); -int __dbcl_dbc_c_close_ret __P((DBC *, __dbc_c_close_reply *)); -int __dbcl_dbc_c_count_ret __P((DBC *, db_recno_t *, u_int32_t, __dbc_c_count_reply *)); -int __dbcl_dbc_c_dup_ret __P((DBC *, DBC **, u_int32_t, __dbc_c_dup_reply *)); -int __dbcl_dbc_c_get_ret __P((DBC *, DBT *, DBT *, u_int32_t, __dbc_c_get_reply *)); -int __dbcl_dbc_c_pget_ret __P((DBC *, DBT *, DBT *, DBT *, u_int32_t, __dbc_c_pget_reply *)); -int __dbcl_dbc_c_put_ret __P((DBC *, DBT *, DBT *, u_int32_t, __dbc_c_put_reply *)); +int __dbcl_dbc_close_ret __P((DBC *, __dbc_close_reply *)); +int __dbcl_dbc_count_ret __P((DBC *, db_recno_t *, u_int32_t, __dbc_count_reply *)); +int __dbcl_dbc_dup_ret __P((DBC *, DBC **, u_int32_t, __dbc_dup_reply *)); +int __dbcl_dbc_get_ret __P((DBC *, DBT *, DBT *, u_int32_t, __dbc_get_reply *)); +int __dbcl_dbc_pget_ret __P((DBC *, DBT *, DBT *, DBT *, u_int32_t, __dbc_pget_reply *)); +int __dbcl_dbc_put_ret __P((DBC *, DBT *, DBT *, u_int32_t, __dbc_put_reply *)); #if defined(__cplusplus) } diff --git a/db/dbinc_auto/rpc_server_ext.h b/db/dbinc_auto/rpc_server_ext.h index 589aef156..cd330a5ac 100644 --- a/db/dbinc_auto/rpc_server_ext.h +++ b/db/dbinc_auto/rpc_server_ext.h @@ -54,6 +54,8 @@ void __db_get_pagesize_proc __P((u_int, __db_get_pagesize_reply *)); void __db_set_pagesize_proc __P((u_int, u_int32_t, __db_set_pagesize_reply *)); void __db_pget_proc __P((u_int, u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __db_pget_reply *, int *)); void __db_put_proc __P((u_int, u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __db_put_reply *, int *)); +void __db_get_priority_proc __P((u_int, __db_get_priority_reply *)); +void __db_set_priority_proc __P((u_int, u_int32_t, __db_set_priority_reply *)); void __db_get_re_delim_proc __P((u_int, __db_get_re_delim_reply *)); void __db_set_re_delim_proc __P((u_int, u_int32_t, __db_set_re_delim_reply *)); void __db_get_re_len_proc __P((u_int, __db_get_re_len_reply *)); @@ -67,13 +69,15 @@ void __db_sync_proc __P((u_int, u_int32_t, __db_sync_reply *)); void __db_truncate_proc __P((u_int, u_int, u_int32_t, __db_truncate_reply *)); void __db_cursor_proc __P((u_int, u_int, u_int32_t, __db_cursor_reply *)); void __db_join_proc __P((u_int, u_int32_t *, u_int32_t, u_int32_t, __db_join_reply *)); -void __dbc_c_close_proc __P((u_int, __dbc_c_close_reply *)); -void __dbc_c_count_proc __P((u_int, u_int32_t, __dbc_c_count_reply *)); -void __dbc_c_del_proc __P((u_int, u_int32_t, __dbc_c_del_reply *)); -void __dbc_c_dup_proc __P((u_int, u_int32_t, __dbc_c_dup_reply *)); -void __dbc_c_get_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_c_get_reply *, int *)); -void __dbc_c_pget_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_c_pget_reply *, int *)); -void __dbc_c_put_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_c_put_reply *, int *)); +void __dbc_close_proc __P((u_int, __dbc_close_reply *)); +void __dbc_count_proc __P((u_int, u_int32_t, __dbc_count_reply *)); +void __dbc_del_proc __P((u_int, u_int32_t, __dbc_del_reply *)); +void __dbc_dup_proc __P((u_int, u_int32_t, __dbc_dup_reply *)); +void __dbc_get_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_get_reply *, int *)); +void __dbc_pget_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_pget_reply *, int *)); +void __dbc_put_proc __P((u_int, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, u_int32_t, u_int32_t, u_int32_t, void *, u_int32_t, u_int32_t, __dbc_put_reply *, int *)); +void __dbc_get_priority_proc __P((u_int, __dbc_get_priority_reply *)); +void __dbc_set_priority_proc __P((u_int, u_int32_t, __dbc_set_priority_reply *)); void __dbsrv_settimeout __P((ct_entry *, u_int32_t)); void __dbclear_ctp __P((ct_entry *)); void __dbdel_ctp __P((ct_entry *)); diff --git a/db/dbinc_auto/tcl_ext.h b/db/dbinc_auto/tcl_ext.h index e5395c539..d1a939b7d 100644 --- a/db/dbinc_auto/tcl_ext.h +++ b/db/dbinc_auto/tcl_ext.h @@ -76,13 +76,16 @@ int tcl_RepGetConfig __P((Tcl_Interp *, DB_ENV *, Tcl_Obj *)); int tcl_RepElect __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepFlush __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepSync __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); +int tcl_RepLease __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepLimit __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepRequest __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); +int tcl_RepNoarchiveTimeout __P((Tcl_Interp *, DB_ENV *)); int tcl_RepTransport __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *, DBTCL_INFO *)); int tcl_RepStart __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepProcessMessage __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepStat __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int tcl_RepMgr __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); +int tcl_RepMgrStat __P((Tcl_Interp *, int, Tcl_Obj * CONST *, DB_ENV *)); int seq_Cmd __P((ClientData, Tcl_Interp *, int, Tcl_Obj * CONST*)); void _TxnInfoDelete __P((Tcl_Interp *, DBTCL_INFO *)); int tcl_TxnCheckpoint __P((Tcl_Interp *, int, Tcl_Obj * CONST*, DB_ENV *)); diff --git a/db/dbinc_auto/txn_auto.h b/db/dbinc_auto/txn_auto.h index ec3eb2081..72fe932d4 100644 --- a/db/dbinc_auto/txn_auto.h +++ b/db/dbinc_auto/txn_auto.h @@ -43,7 +43,7 @@ typedef struct ___txn_ckp_args { DB_LSN last_ckp; int32_t timestamp; u_int32_t envid; - u_int32_t rep_gen; + u_int32_t spare; } __txn_ckp_args; #define DB___txn_child 12 diff --git a/db/dbinc_auto/txn_ext.h b/db/dbinc_auto/txn_ext.h index 48ba76efc..34bbdf574 100644 --- a/db/dbinc_auto/txn_ext.h +++ b/db/dbinc_auto/txn_ext.h @@ -11,7 +11,7 @@ int __txn_begin __P((DB_ENV *, DB_TXN *, DB_TXN **, u_int32_t)); int __txn_xa_begin __P((DB_ENV *, DB_TXN *)); int __txn_recycle_id __P((DB_ENV *)); int __txn_compensate_begin __P((DB_ENV *, DB_TXN **)); -void __txn_continue __P((DB_ENV *, DB_TXN *, TXN_DETAIL *)); +int __txn_continue __P((DB_ENV *, DB_TXN *, TXN_DETAIL *)); int __txn_commit __P((DB_TXN *, u_int32_t)); int __txn_abort __P((DB_TXN *)); int __txn_discard_int __P((DB_TXN *, u_int32_t flags)); @@ -51,8 +51,8 @@ int __txn_getactive __P((DB_ENV *, DB_LSN *)); int __txn_getckp __P((DB_ENV *, DB_LSN *)); int __txn_updateckp __P((DB_ENV *, DB_LSN *)); int __txn_failchk __P((DB_ENV *)); -int __txn_dbenv_create __P((DB_ENV *)); -void __txn_dbenv_destroy __P((DB_ENV *)); +int __txn_env_create __P((DB_ENV *)); +void __txn_env_destroy __P((DB_ENV *)); int __txn_get_tx_max __P((DB_ENV *, u_int32_t *)); int __txn_set_tx_max __P((DB_ENV *, u_int32_t)); int __txn_get_tx_timestamp __P((DB_ENV *, time_t *)); @@ -70,9 +70,10 @@ int __txn_recover_pp __P((DB_ENV *, DB_PREPLIST *, long, long *, u_int32_t)); int __txn_recover __P((DB_ENV *, DB_PREPLIST *, long, long *, u_int32_t)); int __txn_get_prepared __P((DB_ENV *, XID *, DB_PREPLIST *, long, long *, u_int32_t)); int __txn_openfiles __P((DB_ENV *, DB_LSN *, int)); -int __txn_open __P((DB_ENV *)); +int __txn_open __P((DB_ENV *, int)); int __txn_findlastckp __P((DB_ENV *, DB_LSN *, DB_LSN *)); -int __txn_dbenv_refresh __P((DB_ENV *)); +int __txn_env_refresh __P((DB_ENV *)); +u_int32_t __txn_region_mutex_count __P((DB_ENV *)); int __txn_id_set __P((DB_ENV *, u_int32_t, u_int32_t)); int __txn_oldest_reader __P((DB_ENV *, DB_LSN *)); int __txn_add_buffer __P((DB_ENV *, TXN_DETAIL *)); @@ -83,9 +84,11 @@ int __txn_stat_print __P((DB_ENV *, u_int32_t)); int __txn_closeevent __P((DB_ENV *, DB_TXN *, DB *)); int __txn_remevent __P((DB_ENV *, DB_TXN *, const char *, u_int8_t *, int)); void __txn_remrem __P((DB_ENV *, DB_TXN *, const char *)); -int __txn_lockevent __P((DB_ENV *, DB_TXN *, DB *, DB_LOCK *, u_int32_t)); -void __txn_remlock __P((DB_ENV *, DB_TXN *, DB_LOCK *, u_int32_t)); +int __txn_lockevent __P((DB_ENV *, DB_TXN *, DB *, DB_LOCK *, DB_LOCKER *)); +void __txn_remlock __P((DB_ENV *, DB_TXN *, DB_LOCK *, DB_LOCKER *)); int __txn_doevents __P((DB_ENV *, DB_TXN *, int, int)); +int __txn_record_fname __P((DB_ENV *, DB_TXN *, FNAME *)); +int __txn_dref_fname __P((DB_ENV *, DB_TXN *)); #if defined(__cplusplus) } diff --git a/db/dbm/dbm.c b/db/dbm/dbm.c index 0093ce703..b4af224a6 100644 --- a/db/dbm/dbm.c +++ b/db/dbm/dbm.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1990, 1993 @@ -39,7 +38,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: dbm.c,v 12.8 2006/08/24 14:45:31 bostic Exp $ + * $Id: dbm.c,v 12.11 2007/05/17 15:15:07 bostic Exp $ */ #define DB_DBM_HSEARCH 1 @@ -282,7 +281,7 @@ __db_ndbm_fetch(dbm, key) memset(&_data, 0, sizeof(DBT)); /* - * Note that we can't simply use the dbc we have to do a c_get/SET, + * Note that we can't simply use the dbc we have to do a get/SET, * because that cursor is the one used for sequential iteration and * it has to remain stable in the face of intervening gets and puts. */ @@ -321,7 +320,7 @@ __db_ndbm_firstkey(dbm) memset(&_key, 0, sizeof(DBT)); memset(&_data, 0, sizeof(DBT)); - if ((ret = dbc->c_get(dbc, &_key, &_data, DB_FIRST)) == 0) { + if ((ret = dbc->get(dbc, &_key, &_data, DB_FIRST)) == 0) { key.dptr = _key.data; key.dsize = (int)_key.size; } else { @@ -356,7 +355,7 @@ __db_ndbm_nextkey(dbm) memset(&_key, 0, sizeof(DBT)); memset(&_data, 0, sizeof(DBT)); - if ((ret = dbc->c_get(dbc, &_key, &_data, DB_NEXT)) == 0) { + if ((ret = dbc->get(dbc, &_key, &_data, DB_NEXT)) == 0) { key.dptr = _key.data; key.dsize = (int)_key.size; } else { diff --git a/db/dbreg/dbreg.c b/db/dbreg/dbreg.c index edc4599be..21334d8d4 100644 --- a/db/dbreg/dbreg.c +++ b/db/dbreg/dbreg.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: dbreg.c,v 12.20 2006/08/24 14:45:31 bostic Exp $ + * $Id: dbreg.c,v 12.28 2007/06/13 18:59:35 bostic Exp $ */ #include "db_config.h" @@ -15,7 +14,7 @@ #include "dbinc/txn.h" #include "dbinc/db_am.h" -static int __dbreg_push_id __P((DB_ENV *, DB *, int32_t)); +static int __dbreg_push_id __P((DB_ENV *, int32_t)); static int __dbreg_pop_id __P((DB_ENV *, int32_t *)); static int __dbreg_pluck_id __P((DB_ENV *, int32_t)); @@ -109,12 +108,12 @@ __dbreg_setup(dbp, name, create_txnid) /* Allocate an FNAME and, if necessary, a buffer for the name itself. */ LOG_SYSTEM_LOCK(dbenv); - if ((ret = __db_shalloc(infop, sizeof(FNAME), 0, &fnp)) != 0) + if ((ret = __env_alloc(infop, sizeof(FNAME), &fnp)) != 0) goto err; memset(fnp, 0, sizeof(FNAME)); if (name != NULL) { len = strlen(name) + 1; - if ((ret = __db_shalloc(infop, len, 0, &namep)) != 0) + if ((ret = __env_alloc(infop, len, &namep)) != 0) goto err; fnp->name_off = R_OFFSET(infop, namep); memcpy(namep, name, len); @@ -133,6 +132,13 @@ __dbreg_setup(dbp, name, create_txnid) fnp->meta_pgno = dbp->meta_pgno; fnp->create_txnid = create_txnid; + if (F_ISSET(dbp, DB_AM_INMEM)) + F_SET(fnp, DB_FNAME_INMEM); + if (F_ISSET(dbp, DB_AM_RECOVER)) + F_SET(fnp, DB_FNAME_RECOVER); + fnp->txn_ref = 1; + fnp->mutex = dbp->mutex; + dbp->log_filename = fnp; return (0); @@ -147,7 +153,8 @@ err: LOG_SYSTEM_UNLOCK(dbenv); /* * __dbreg_teardown -- - * Destroy a DB handle's FNAME struct. + * Destroy a DB handle's FNAME struct. This is only called when closing + * the DB. * * PUBLIC: int __dbreg_teardown __P((DB *)); */ @@ -155,34 +162,54 @@ int __dbreg_teardown(dbp) DB *dbp; { - DB_ENV *dbenv; - DB_LOG *dblp; - REGINFO *infop; - FNAME *fnp; - - dbenv = dbp->dbenv; - dblp = dbenv->lg_handle; - infop = &dblp->reginfo; - fnp = dbp->log_filename; + int ret; /* * We may not have an FNAME if we were never opened. This is not an * error. */ - if (fnp == NULL || F_ISSET(fnp, DB_FNAME_NOTLOGGED)) + if (dbp->log_filename == NULL) return (0); + ret = __dbreg_teardown_int(dbp->dbenv, dbp->log_filename); + + /* We freed the copy of the mutex from the FNAME. */ + dbp->log_filename = NULL; + dbp->mutex = MUTEX_INVALID; + + return (ret); +} + +/* + * __dbreg_teardown_int -- + * Destroy an FNAME struct. + * + * PUBLIC: int __dbreg_teardown_int __P((DB_ENV *, FNAME *)); + */ +int +__dbreg_teardown_int(dbenv, fnp) + DB_ENV *dbenv; + FNAME *fnp; +{ + DB_LOG *dblp; + REGINFO *infop; + int ret; + + if (F_ISSET(fnp, DB_FNAME_NOTLOGGED)) + return (0); + dblp = dbenv->lg_handle; + infop = &dblp->reginfo; + DB_ASSERT(dbenv, fnp->id == DB_LOGFILEID_INVALID); + ret = __mutex_free(dbenv, &fnp->mutex); LOG_SYSTEM_LOCK(dbenv); if (fnp->name_off != INVALID_ROFF) - __db_shalloc_free(infop, R_ADDR(infop, fnp->name_off)); - __db_shalloc_free(infop, fnp); + __env_alloc_free(infop, R_ADDR(infop, fnp->name_off)); + __env_alloc_free(infop, fnp); LOG_SYSTEM_UNLOCK(dbenv); - dbp->log_filename = NULL; - - return (0); + return (ret); } /* @@ -411,16 +438,47 @@ __dbreg_revoke_id(dbp, have_lock, force_id) int32_t force_id; { DB_ENV *dbenv; - DB_LOG *dblp; + DB_REP *db_rep; + int push; + + dbenv = dbp->dbenv; + + /* + * If we are not in recovery but the file was opened for a recovery + * operation, then this process aborted a transaction for another + * process and the id may still be in use, so don't reuse this id. + * If our fid generation in replication has changed, this fid + * should not be reused + */ + db_rep = dbenv->rep_handle; + push = (!F_ISSET(dbp, DB_AM_RECOVER) || IS_RECOVERING(dbenv)) && + (!REP_ON(dbenv) || ((REP *)db_rep->region)->gen == dbp->fid_gen); + + return (__dbreg_revoke_id_int(dbp->dbenv, + dbp->log_filename, have_lock, push, force_id)); +} +/* + * __dbreg_revoke_id_int -- + * Revoke a log, in preparation for closing it, but without logging + * the close. + * + * PUBLIC: int __dbreg_revoke_id_int + * PUBLIC: __P((DB_ENV *, FNAME *, int, int, int32_t)); + */ +int +__dbreg_revoke_id_int(dbenv, fnp, have_lock, push, force_id) + DB_ENV *dbenv; FNAME *fnp; + int have_lock, push; + int32_t force_id; +{ + DB_LOG *dblp; LOG *lp; int32_t id; int ret; - dbenv = dbp->dbenv; dblp = dbenv->lg_handle; lp = dblp->reginfo.primary; - fnp = dbp->log_filename; ret = 0; /* If we lack an ID, this is a null-op. */ @@ -450,19 +508,14 @@ __dbreg_revoke_id(dbp, have_lock, force_id) SH_TAILQ_REMOVE(&lp->fq, fnp, q, __fname); /* - * Remove this id from the dbentry table and push it onto the + * This FNAME may be for a DBP which is already closed. Its ID may + * still be in use by an aborting transaction. If not, + * remove this id from the dbentry table and push it onto the * free list. */ - if ((ret = __dbreg_rem_dbentry(dblp, id)) == 0) { - /* - * If we are not in recovery but the file was opened - * for a recovery operation, then this process aborted - * a transaction for another process and the id may - * still be in use, so don't reuse this id. - */ - if (!F_ISSET(dbp, DB_AM_RECOVER) || IS_RECOVERING(dbenv)) - ret = __dbreg_push_id(dbenv, dbp, id); - } + if (!F_ISSET(fnp, DB_FNAME_CLOSED) && + (ret = __dbreg_rem_dbentry(dblp, id)) == 0 && push) + ret = __dbreg_push_id(dbenv, id); if (!have_lock) MUTEX_UNLOCK(dbenv, lp->mtx_filelist); @@ -472,7 +525,7 @@ __dbreg_revoke_id(dbp, have_lock, force_id) /* * __dbreg_close_id -- * Take a dbreg id away from a dbp that we're closing, and log - * the unregistry. + * the unregistry if the refcount goes to 0. * * PUBLIC: int __dbreg_close_id __P((DB *, DB_TXN *, u_int32_t)); */ @@ -486,7 +539,7 @@ __dbreg_close_id(dbp, txn, op) DB_LOG *dblp; FNAME *fnp; LOG *lp; - int ret; + int ret, t_ret; dbenv = dbp->dbenv; dblp = dbenv->lg_handle; @@ -500,6 +553,37 @@ __dbreg_close_id(dbp, txn, op) if (fnp->id == DB_LOGFILEID_INVALID) return (__dbreg_revoke_id(dbp, 0, DB_LOGFILEID_INVALID)); + /* + * If we are the last reference to this db then we need to log it + * as closed. Otherwise the last transaction will do the logging. + * Remove the DBP from the db entry table since it can nolonger + * be used. If we abort it will have to be reopened. + */ + ret = 0; + DB_ASSERT(dbenv, fnp->txn_ref > 0); + if (fnp->txn_ref > 1) { + MUTEX_LOCK(dbenv, dbp->mutex); + if (fnp->txn_ref > 1) { + fnp->txn_ref--; + if (!F_ISSET(fnp, DB_FNAME_CLOSED) && + (t_ret = __dbreg_rem_dbentry( + dbenv->lg_handle, fnp->id)) != 0 && ret == 0) + ret = t_ret; + + /* + * The DB handle has been closed in the logging system. + * Transactions may still have a ref to this name. + * Mark it so that if recovery reopens the file id + * the transaction will not close the wrong handle. + */ + F_SET(fnp, DB_FNAME_CLOSED); + MUTEX_UNLOCK(dbenv, dbp->mutex); + /* The mutex now lives only in the FNAME. */ + dbp->mutex = MUTEX_INVALID; + dbp->log_filename = NULL; + goto no_log; + } + } MUTEX_LOCK(dbenv, lp->mtx_filelist); if ((ret = __dbreg_log_close(dbenv, fnp, txn, op)) != 0) @@ -507,9 +591,58 @@ __dbreg_close_id(dbp, txn, op) ret = __dbreg_revoke_id(dbp, 1, DB_LOGFILEID_INVALID); err: MUTEX_UNLOCK(dbenv, lp->mtx_filelist); + + if ((t_ret = __dbreg_teardown(dbp)) != 0 && ret == 0) + ret = t_ret; +no_log: return (ret); } +/* + * __dbreg_close_id_int -- + * Close down a dbreg id and log the unregistry. This is called only + * when a transaction has the last ref to the fname. + * + * PUBLIC: int __dbreg_close_id_int __P((DB_ENV *, FNAME *, u_int32_t, int)); + */ +int +__dbreg_close_id_int(dbenv, fnp, op, locked) + DB_ENV *dbenv; + FNAME *fnp; + u_int32_t op; + int locked; +{ + DB_LOG *dblp; + LOG *lp; + int ret, t_ret; + DB_ASSERT(dbenv, fnp->txn_ref == 1); + dblp = dbenv->lg_handle; + lp = dblp->reginfo.primary; + + if (fnp->id == DB_LOGFILEID_INVALID) + return (__dbreg_revoke_id_int(dbenv, + fnp, locked, 1, DB_LOGFILEID_INVALID)); + + if (F_ISSET(fnp, DB_FNAME_RECOVER)) + return (__dbreg_close_file(dbenv, fnp)); + /* + * If log_close fails then it will mark the name DB_FNAME_NOTLOGGED + * and the id must persist. + */ + if (!locked) + MUTEX_LOCK(dbenv, lp->mtx_filelist); + if ((ret = __dbreg_log_close(dbenv, fnp, NULL, op)) != 0) + goto err; + + ret = __dbreg_revoke_id_int(dbenv, fnp, 1, 1, DB_LOGFILEID_INVALID); + +err: if (!locked) + MUTEX_UNLOCK(dbenv, lp->mtx_filelist); + + if ((t_ret = __dbreg_teardown_int(dbenv, fnp)) != 0 && ret == 0) + ret = t_ret; + return (ret); +} /* * __dbreg_log_close -- * @@ -580,13 +713,11 @@ __dbreg_log_close(dbenv, fnp, txn, op) * is already locked. */ static int -__dbreg_push_id(dbenv, dbp, id) +__dbreg_push_id(dbenv, id) DB_ENV *dbenv; - DB *dbp; int32_t id; { DB_LOG *dblp; - DB_REP *db_rep; LOG *lp; REGINFO *infop; int32_t *stack, *newstack; @@ -595,20 +726,18 @@ __dbreg_push_id(dbenv, dbp, id) dblp = dbenv->lg_handle; infop = &dblp->reginfo; lp = infop->primary; - db_rep = dbenv->rep_handle; - /* - * If our fid generation in replication has changed, this fid should - * not be pushed back onto the stack. - */ - if (REP_ON(dbenv) && ((REP *)db_rep->region)->gen != dbp->fid_gen) + if (id == lp->fid_max - 1) { + lp->fid_max--; return (0); + } + /* Check if we have room on the stack. */ if (lp->free_fid_stack == INVALID_ROFF || lp->free_fids_alloced <= lp->free_fids + 1) { LOG_SYSTEM_LOCK(dbenv); - if ((ret = __db_shalloc(infop, - (lp->free_fids_alloced + 20) * sizeof(u_int32_t), 0, + if ((ret = __env_alloc(infop, + (lp->free_fids_alloced + 20) * sizeof(u_int32_t), &newstack)) != 0) { LOG_SYSTEM_UNLOCK(dbenv); return (ret); @@ -618,7 +747,7 @@ __dbreg_push_id(dbenv, dbp, id) stack = R_ADDR(infop, lp->free_fid_stack); memcpy(newstack, stack, lp->free_fids_alloced * sizeof(u_int32_t)); - __db_shalloc_free(infop, stack); + __env_alloc_free(infop, stack); } lp->free_fid_stack = R_OFFSET(infop, newstack); lp->free_fids_alloced += 20; @@ -674,6 +803,9 @@ __dbreg_pluck_id(dbenv, id) dblp = dbenv->lg_handle; lp = dblp->reginfo.primary; + if (id >= lp->fid_max) + return (0); + /* Do we have anything to look at? */ if (lp->free_fid_stack != INVALID_ROFF) { stack = R_ADDR(&dblp->reginfo, lp->free_fid_stack); diff --git a/db/dbreg/dbreg.src b/db/dbreg/dbreg.src index 6f229e287..b5a11921f 100644 --- a/db/dbreg/dbreg.src +++ b/db/dbreg/dbreg.src @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. * - * $Id: dbreg.src,v 12.5 2006/08/24 14:45:31 bostic Exp $ + * $Id: dbreg.src,v 12.7 2007/05/17 15:15:07 bostic Exp $ */ PREFIX __dbreg diff --git a/db/dbreg/dbreg_auto.c b/db/dbreg/dbreg_auto.c index 519786c14..4155d91b9 100644 --- a/db/dbreg/dbreg_auto.c +++ b/db/dbreg/dbreg_auto.c @@ -173,6 +173,7 @@ __dbreg_register_log(dbenv, txnp, ret_lsnp, flags, *ret_lsnp = *rlsnp; } } else { + ret = 0; #ifdef DIAGNOSTIC /* * Set the debug bit if we are going to log non-durable @@ -182,10 +183,9 @@ __dbreg_register_log(dbenv, txnp, ret_lsnp, flags, rectype |= DB_debug_FLAG; memcpy(logrec.data, &rectype, sizeof(rectype)); - ret = __log_put(dbenv, - rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); -#else - ret = 0; + if (!IS_REP_CLIENT(dbenv)) + ret = __log_put(dbenv, + rlsnp, (DBT *)&logrec, flags | DB_LOG_NOCOPY); #endif STAILQ_INSERT_HEAD(&txnp->logs, lr, links); F_SET((TXN_DETAIL *)txnp->td, TXN_DTL_INMEMORY); diff --git a/db/dbreg/dbreg_rec.c b/db/dbreg/dbreg_rec.c index 180239842..29c3124ea 100644 --- a/db/dbreg/dbreg_rec.c +++ b/db/dbreg/dbreg_rec.c @@ -1,8 +1,7 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1996,2007 Oracle. All rights reserved. */ /* * Copyright (c) 1995, 1996 @@ -32,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: dbreg_rec.c,v 12.17 2006/09/07 20:05:28 bostic Exp $ + * $Id: dbreg_rec.c,v 12.21 2007/05/17 15:15:07 bostic Exp $ */ #include "db_config.h" @@ -224,17 +223,27 @@ __dbreg_register_recover(dbenv, dbtp, lsnp, op, info) * assigned a fileid to. Be sure that * we only close dbps that we opened in * the recovery code or that were opened - * inside a currently aborting transaction. + * inside a currently aborting transaction + * but not by the recovery code. */ - do_rem = F_ISSET(dbp, DB_AM_RECOVER) || - op == DB_TXN_ABORT; + do_rem = F_ISSET(dbp, DB_AM_RECOVER) ? + op != DB_TXN_ABORT : op == DB_TXN_ABORT; MUTEX_UNLOCK(dbenv, dblp->mtx_dbreg); - if (op == DB_TXN_ABORT) - (void)__dbreg_close_id(dbp, - NULL, DBREG_RCLOSE); - else - (void)__dbreg_revoke_id(dbp, 0, - DB_LOGFILEID_INVALID); + /* + * If we are aborting an open then this + * DBP can only be used in this txn, so + * log it closed. + */ + if (!F_ISSET(dbp, DB_AM_RECOVER)) { + if (op == DB_TXN_ABORT) + ret = __dbreg_log_close(dbenv, + dbp->log_filename, + NULL, DBREG_RCLOSE); + if (ret == 0) + (void)__dbreg_revoke_id(dbp, 0, + DB_LOGFILEID_INVALID); + ret = 0; + } } else if (dbe->deleted) { MUTEX_UNLOCK(dbenv, dblp->mtx_dbreg); if ((ret = __dbreg_rem_dbentry( @@ -272,15 +281,11 @@ __dbreg_register_recover(dbenv, dbtp, lsnp, op, info) ret = 0; } - if (op == DB_TXN_ABORT && - !F_ISSET(dbp, DB_AM_RECOVER)) { + if (op == DB_TXN_ABORT) { if ((t_ret = __db_refresh(dbp, NULL, DB_NOSYNC, NULL, 0)) != 0 && ret == 0) ret = t_ret; } else { - if (op == DB_TXN_APPLY && - (t_ret = __db_sync(dbp)) != 0 && ret == 0) - ret = t_ret; if ((t_ret = __db_close( dbp, NULL, DB_NOSYNC)) != 0 && ret == 0) ret = t_ret; diff --git a/db/dbreg/dbreg_stat.c b/db/dbreg/dbreg_stat.c index c19adc688..6c018cb75 100644 --- a/db/dbreg/dbreg_stat.c +++ b/db/dbreg/dbreg_stat.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: dbreg_stat.c,v 12.9 2006/08/24 14:45:32 bostic Exp $ + * $Id: dbreg_stat.c,v 12.12 2007/05/17 15:15:07 bostic Exp $ */ #include "db_config.h" @@ -83,7 +82,6 @@ __dbreg_print_dblist(dbenv, flags) dblp = dbenv->lg_handle; lp = dblp->reginfo.primary; - __db_msg(dbenv, "%s", DB_GLOBAL(db_line)); __db_msg(dbenv, "LOG FNAME list:"); __mutex_print_debug_single( dbenv, "File name mutex", lp->mtx_filelist, flags); diff --git a/db/dbreg/dbreg_util.c b/db/dbreg/dbreg_util.c index 5037810c1..7dc0b7113 100644 --- a/db/dbreg/dbreg_util.c +++ b/db/dbreg/dbreg_util.c @@ -1,10 +1,9 @@ /*- * See the file LICENSE for redistribution information. * - * Copyright (c) 1997-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 1997,2007 Oracle. All rights reserved. * - * $Id: dbreg_util.c,v 12.20 2006/09/09 14:28:22 bostic Exp $ + * $Id: dbreg_util.c,v 12.29 2007/06/13 18:21:31 ubell Exp $ */ #include "db_config.h" @@ -91,11 +90,12 @@ __dbreg_rem_dbentry(dblp, ndx) * __dbreg_log_files -- * Put a DBREG_CHKPNT/CLOSE log record for each open database. * - * PUBLIC: int __dbreg_log_files __P((DB_ENV *)); + * PUBLIC: int __dbreg_log_files __P((DB_ENV *, u_int32_t)); */ int -__dbreg_log_files(dbenv) +__dbreg_log_files(dbenv, opcode) DB_ENV *dbenv; + u_int32_t opcode; { DB_LOG *dblp; DB_LSN r_unused; @@ -137,7 +137,7 @@ __dbreg_log_files(dbenv) if ((ret = __dbreg_register_log(dbenv, NULL, &r_unused, F_ISSET(fnp, DB_FNAME_DURABLE) ? 0 : DB_LOG_NOT_DURABLE, - F_ISSET(dblp, DBLOG_RECOVER) ? DBREG_RCLOSE : DBREG_CHKPNT, + opcode, dbtp, &fid_dbt, fnp->id, fnp->s_type, fnp->meta_pgno, TXN_INVALID)) != 0) break; @@ -156,11 +156,12 @@ __dbreg_log_files(dbenv) * db_rename. We may not have flushed the log_register record that * closes the file. * - * PUBLIC: int __dbreg_close_files __P((DB_ENV *)); + * PUBLIC: int __dbreg_close_files __P((DB_ENV *, int)); */ int -__dbreg_close_files(dbenv) +__dbreg_close_files(dbenv, do_restored) DB_ENV *dbenv; + int do_restored; { DB_LOG *dblp; DB *dbp; @@ -183,12 +184,6 @@ __dbreg_close_files(dbenv) * Before doing so, we need to revoke their log fileids * so that we don't end up leaving around FNAME entries * for dbps that shouldn't have them. - * - * Any FNAME entries that were marked NOTLOGGED had the - * log write fail while they were being closed. Since it's - * too late to be logging now we flag that as a failure - * so recovery will be run. This will get returned by - * __dbreg_revoke_id. */ if ((dbp = dblp->dbentry[i].dbp) != NULL) { /* @@ -202,10 +197,16 @@ __dbreg_close_files(dbenv) * we're in this loop anyway--we're in the process of * making all outstanding dbps invalid. */ + /* + * If we only want to close those FNAMES marked + * as restored, check now. + */ + if (do_restored && + !F_ISSET(dbp->log_filename, DB_FNAME_RESTORED)) + continue; MUTEX_UNLOCK(dbenv, dblp->mtx_dbreg); if (F_ISSET(dbp, DB_AM_RECOVER)) - t_ret = __db_close(dbp, - NULL, dbp->mpf == NULL ? DB_NOSYNC : 0); + t_ret = __db_close(dbp, NULL, DB_NOSYNC); else t_ret = __dbreg_revoke_id( dbp, 0, DB_LOGFILEID_INVALID); @@ -221,17 +222,73 @@ __dbreg_close_files(dbenv) return (ret); } +/* + * __dbreg_close_file -- + * Close a database file opened by recovery. + * PUBLIC: int __dbreg_close_file __P((DB_ENV *, FNAME *)); + */ +int +__dbreg_close_file(dbenv, fnp) + DB_ENV *dbenv; + FNAME *fnp; +{ + DB_LOG *dblp; + DB *dbp; + + dblp = dbenv->lg_handle; + + dbp = dblp->dbentry[fnp->id].dbp; + if (dbp == NULL) + return (0); + DB_ASSERT(dbenv, dbp->log_filename == fnp); + DB_ASSERT(dbenv, F_ISSET(dbp, DB_AM_RECOVER)); + return (__db_close(dbp, NULL, DB_NOSYNC)); +} + +/* + * __dbreg_mark_restored -- + * Mark files when we change replication roles and there are outstanding + * prepared txns that may use these files. These will be invalidated later + * when all outstanding prepared txns are resolved. + * + * PUBLIC: int __dbreg_mark_restored __P((DB_ENV *)); + */ +int +__dbreg_mark_restored(dbenv) + DB_ENV *dbenv; +{ + DB_LOG *dblp; + FNAME *fnp; + LOG *lp; + + /* If we haven't initialized logging, we have nothing to do. */ + if (!LOGGING_ON(dbenv)) + return (0); + + dblp = dbenv->lg_handle; + lp = dblp->reginfo.primary; + + MUTEX_LOCK(dbenv, lp->mtx_filelist); + SH_TAILQ_FOREACH(fnp, &lp->fq, q, __fname) + if (fnp->id != DB_LOGFILEID_INVALID) + F_SET(fnp, DB_FNAME_RESTORED); + + MUTEX_UNLOCK(dbenv, lp->mtx_filelist); + return (0); +} + /* * __dbreg_invalidate_files -- * Invalidate files when we change replication roles. Save the * id so that another process will be able to clean up the information * when it notices. * - * PUBLIC: int __dbreg_invalidate_files __P((DB_ENV *)); + * PUBLIC: int __dbreg_invalidate_files __P((DB_ENV *, int)); */ int -__dbreg_invalidate_files(dbenv) +__dbreg_invalidate_files(dbenv, do_restored) DB_ENV *dbenv; + int do_restored; { DB_LOG *dblp; FNAME *fnp; @@ -248,6 +305,15 @@ __dbreg_invalidate_files(dbenv) ret = 0; MUTEX_LOCK(dbenv, lp->mtx_filelist); SH_TAILQ_FOREACH(fnp, &lp->fq, q, __fname) { + /* + * Normally, skip any file with DB_FNAME_RESTORED + * set. If do_restored is set, only invalidate + * those files with the flag set and skip all others. + */ + if (F_ISSET(fnp, DB_FNAME_RESTORED) && !do_restored) + continue; + if (!F_ISSET(fnp, DB_FNAME_RESTORED) && do_restored) + continue; if (fnp->id != DB_LOGFILEID_INVALID) { if ((ret = __dbreg_log_close(dbenv, fnp, NULL, DBREG_RCLOSE)) != 0) @@ -354,16 +420,16 @@ __dbreg_id_to_db_int(dbenv, txn, dbpp, ndx, inc, tryopen) * bottom. If the __dbreg_do_open succeeded, then we don't need * to do any of the remaining error checking at the end of this * routine. - * XXX I am sending a NULL txnlist and 0 txnid which may be - * completely broken ;( + * If TXN_INVALID is passed then no txnlist is needed. */ if ((ret = __dbreg_do_open(dbenv, txn, dblp, - fname->ufid, name, fname->s_type, - ndx, fname->meta_pgno, NULL, 0, DBREG_OPEN)) != 0) + fname->ufid, name, fname->s_type, ndx, fname->meta_pgno, + NULL, TXN_INVALID, F_ISSET(fname, DB_FNAME_INMEM) ? + DBREG_REOPEN : DBREG_OPEN)) != 0) return (ret); *dbpp = dblp->dbentry[ndx].dbp; - return (0); + return (*dbpp == NULL ? DB_DELETED : 0); } /* @@ -527,7 +593,7 @@ __dbreg_do_open(dbenv, cstat = TXN_EXPECTED; fname = name; dname = NULL; - if ((ret = db_create(&dbp, lp->dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, lp->dbenv, 0)) != 0) return (ret); /* @@ -618,7 +684,7 @@ __dbreg_check_master(dbenv, uid, name) int ret; ret = 0; - if ((ret = db_create(&dbp, dbenv, 0)) != 0) + if ((ret = __db_create_internal(&dbp, dbenv, 0)) != 0) return (ret); F_SET(dbp, DB_AM_RECOVER); ret = __db_open(dbp, NULL, diff --git a/db/dist/Makefile.in b/db/dist/Makefile.in index 190103e6b..da00f6a93 100644 --- a/db/dist/Makefile.in +++ b/db/dist/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 12.79 2006/09/13 14:53:38 mjc Exp $ +# $Id: Makefile.in,v 12.106 2007/07/05 18:35:02 bostic Exp $ srcdir= @srcdir@/.. builddir=. @@ -167,9 +167,15 @@ QUEUE_OBJS=\ qam_open@o@ qam_rec@o@ qam_stat@o@ qam_upgrade@o@ QUEUE_VRFY_OBJS=\ qam_verify@o@ +LOCK_OBJS=\ + lock@o@ lock_deadlock@o@ lock_failchk@o@ lock_id@o@ lock_list@o@ \ + lock_method@o@ lock_region@o@ lock_stat@o@ lock_timer@o@ lock_util@o@ +MUTEX_OBJS=\ + mut_alloc@o@ mut_failchk@o@ mut_method@o@ mut_region@o@ mut_stat@o@ REP_OBJS=\ - rep_auto@o@ rep_backup@o@ rep_elect@o@ rep_log@o@ rep_method@o@ \ - rep_record@o@ rep_region@o@ rep_stat@o@ rep_util@o@ rep_verify@o@ + rep_auto@o@ rep_backup@o@ rep_elect@o@ rep_lease@o@ rep_log@o@ \ + rep_method@o@ rep_record@o@ rep_region@o@ rep_stat@o@ \ + rep_util@o@ rep_verify@o@ REPMGR_OBJS=\ getaddrinfo@o@\ repmgr_elect@o@ repmgr_method@o@ repmgr_msg@o@ repmgr_net@o@ \ @@ -182,35 +188,32 @@ PRINT_OBJS=\ C_OBJS= @ADDITIONAL_OBJS@ @REPLACEMENT_OBJS@ @CRYPTO_OBJS@ @RPC_CLIENT_OBJS@ \ crdel_auto@o@ crdel_rec@o@ ctime@o@ db@o@ db_am@o@ db_auto@o@ \ - db_byteorder@o@ db_cam@o@ db_cds@o@ db_clock@o@ db_conv@o@ \ - db_dispatch@o@ db_dup@o@ db_err@o@ db_getlong@o@ db_idspace@o@ \ - db_iface@o@ db_join@o@ db_log2@o@ db_meta@o@ db_method@o@ db_open@o@ \ + db_byteorder@o@ db_cam@o@ db_cds@o@ db_conv@o@ db_dispatch@o@ \ + db_dup@o@ db_err@o@ db_getlong@o@ db_idspace@o@ db_iface@o@ \ + db_join@o@ db_log2@o@ db_meta@o@ db_method@o@ db_open@o@ \ db_overflow@o@ db_pr@o@ db_rec@o@ db_reclaim@o@ db_remove@o@ \ - db_rename@o@ db_ret@o@ db_salloc@o@ db_setid@o@ db_setlsn@o@ \ - db_shash@o@ db_stati@o@ db_truncate@o@ db_upg@o@ db_upg_opd@o@ \ - dbm@o@ dbreg@o@ dbreg_auto@o@ dbreg_rec@o@ dbreg_stat@o@ \ - dbreg_util@o@ env_config@o@ env_failchk@o@ env_file@o@ \ - env_method@o@ env_open@o@ env_recover@o@ env_region@o@ \ - env_register@o@ env_stat@o@ fileops_auto@o@ fop_basic@o@ \ - fop_rec@o@ fop_util@o@ hash_func@o@ hmac@o@ hsearch@o@ lock@o@ \ - lock_deadlock@o@ lock_failchk@o@ lock_id@o@ lock_list@o@ \ - lock_method@o@ lock_region@o@ lock_stat@o@ lock_timer@o@ \ - lock_util@o@ log@o@ log_archive@o@ log_compare@o@ log_debug@o@ \ - log_get@o@ log_method@o@ log_put@o@ log_stat@o@ mkpath@o@ \ - mp_alloc@o@ mp_bh@o@ mp_fget@o@ mp_fmethod@o@ mp_fopen@o@ \ - mp_fput@o@ mp_fset@o@ mp_method@o@ mp_mvcc@o@ mp_region@o@ \ - mp_register@o@ mp_stat@o@ mp_sync@o@ mp_trickle@o@ mut_alloc@o@ \ - mut_failchk@o@ mut_method@o@ mut_region@o@ mut_stat@o@ os_abs@o@ \ - os_alloc@o@ os_clock@o@ os_config@o@ os_dir@o@ os_errno@o@ \ - os_fid@o@ os_flock@o@ os_fsync@o@ os_fzero@o@ os_getenv@o@ \ - os_handle@o@ os_map@o@ os_method@o@ os_mkdir@o@ os_oflags@o@ \ - os_open@o@ os_pid@o@ os_region@o@ os_rename@o@ os_root@o@ \ - os_rpath@o@ os_rw@o@ os_seek@o@ os_sleep@o@ os_spin@o@ \ - os_stat@o@ os_tmpdir@o@ os_truncate@o@ os_uid@o@ os_unlink@o@ \ - os_yield@o@ seq_stat@o@ sequence@o@ sha1@o@ snprintf@o@ txn@o@ \ - txn_auto@o@ txn_chkpt@o@ txn_failchk@o@ txn_method@o@ \ - txn_rec@o@ txn_recover@o@ txn_region@o@ txn_stat@o@ \ - txn_util@o@ xa@o@ xa_db@o@ xa_map@o@ + db_rename@o@ db_ret@o@ db_setid@o@ db_setlsn@o@ db_shash@o@ \ + db_stati@o@ db_truncate@o@ db_upg@o@ db_upg_opd@o@ dbm@o@ \ + dbreg@o@ dbreg_auto@o@ dbreg_rec@o@ dbreg_stat@o@ dbreg_util@o@ \ + env_alloc@o@ env_config@o@ env_failchk@o@ env_file@o@ \ + env_globals@o@ env_method@o@ env_name@o@ env_open@o@ \ + env_recover@o@ env_region@o@ env_register@o@ env_stat@o@ \ + fileops_auto@o@ fop_basic@o@ fop_rec@o@ fop_util@o@ hash_func@o@ \ + hmac@o@ hsearch@o@ log@o@ log_archive@o@ log_compare@o@ \ + log_debug@o@ log_get@o@ log_method@o@ log_put@o@ log_stat@o@ \ + mkpath@o@ mp_alloc@o@ mp_bh@o@ mp_fget@o@ mp_fmethod@o@ \ + mp_fopen@o@ mp_fput@o@ mp_fset@o@ mp_method@o@ mp_mvcc@o@ \ + mp_region@o@ mp_register@o@ mp_resize@o@ mp_stat@o@ mp_sync@o@ \ + mp_trickle@o@ os_abort@o@ os_abs@o@ os_alloc@o@ os_clock@o@ \ + os_config@o@ os_dir@o@ os_errno@o@ os_fid@o@ os_flock@o@ \ + os_fsync@o@ os_fzero@o@ os_getenv@o@ os_handle@o@ os_map@o@ \ + os_method@o@ os_mkdir@o@ os_oflags@o@ os_open@o@ os_pid@o@ \ + os_region@o@ os_rename@o@ os_root@o@ os_rpath@o@ os_rw@o@ \ + os_seek@o@ os_sleep@o@ os_spin@o@ os_stat@o@ os_tmpdir@o@ \ + os_truncate@o@ os_uid@o@ os_unlink@o@ os_yield@o@ seq_stat@o@ \ + sequence@o@ sha1@o@ snprintf@o@ txn@o@ txn_auto@o@ txn_chkpt@o@ \ + txn_failchk@o@ txn_method@o@ txn_rec@o@ txn_recover@o@ \ + txn_region@o@ txn_stat@o@ txn_util@o@ xa@o@ xa_db@o@ xa_map@o@ CXX_OBJS=\ cxx_db@o@ cxx_dbc@o@ cxx_dbt@o@ cxx_env@o@ cxx_except@o@ cxx_lock@o@ \ @@ -240,6 +243,7 @@ JAVA_DBSRCS=\ $(JAVA_SLEEPYCAT)/bind/serial/TupleSerialKeyCreator.java \ $(JAVA_SLEEPYCAT)/bind/serial/TupleSerialMarshalledBinding.java \ $(JAVA_SLEEPYCAT)/bind/serial/TupleSerialMarshalledKeyCreator.java \ + $(JAVA_SLEEPYCAT)/bind/tuple/BigIntegerBinding.java \ $(JAVA_SLEEPYCAT)/bind/tuple/BooleanBinding.java \ $(JAVA_SLEEPYCAT)/bind/tuple/ByteBinding.java \ $(JAVA_SLEEPYCAT)/bind/tuple/CharacterBinding.java \ @@ -311,7 +315,7 @@ JAVA_DBSRCS=\ $(JAVA_SLEEPYCAT)/db/EnvironmentConfig.java \ $(JAVA_SLEEPYCAT)/db/ErrorHandler.java \ $(JAVA_SLEEPYCAT)/db/EventHandler.java \ - $(JAVA_SLEEPYCAT)/db/EventType.java \ + $(JAVA_SLEEPYCAT)/db/EventHandlerAdapter.java \ $(JAVA_SLEEPYCAT)/db/FeedbackHandler.java \ $(JAVA_SLEEPYCAT)/db/HashStats.java \ $(JAVA_SLEEPYCAT)/db/Hasher.java \ @@ -352,8 +356,11 @@ JAVA_DBSRCS=\ $(JAVA_SLEEPYCAT)/db/ReplicationHoldElectionException.java \ $(JAVA_SLEEPYCAT)/db/ReplicationHostAddress.java \ $(JAVA_SLEEPYCAT)/db/ReplicationJoinFailureException.java \ + $(JAVA_SLEEPYCAT)/db/ReplicationLeaseExpiredException.java \ + $(JAVA_SLEEPYCAT)/db/ReplicationLeaseTimeoutException.java \ $(JAVA_SLEEPYCAT)/db/ReplicationLockoutException.java \ $(JAVA_SLEEPYCAT)/db/ReplicationManagerAckPolicy.java \ + $(JAVA_SLEEPYCAT)/db/ReplicationManagerStats.java \ $(JAVA_SLEEPYCAT)/db/ReplicationManagerStartPolicy.java \ $(JAVA_SLEEPYCAT)/db/ReplicationSiteUnavailableException.java \ $(JAVA_SLEEPYCAT)/db/ReplicationStats.java \ @@ -365,6 +372,7 @@ JAVA_DBSRCS=\ $(JAVA_SLEEPYCAT)/db/SecondaryCursor.java \ $(JAVA_SLEEPYCAT)/db/SecondaryDatabase.java \ $(JAVA_SLEEPYCAT)/db/SecondaryKeyCreator.java \ + $(JAVA_SLEEPYCAT)/db/SecondaryMultiKeyCreator.java \ $(JAVA_SLEEPYCAT)/db/Sequence.java \ $(JAVA_SLEEPYCAT)/db/SequenceConfig.java \ $(JAVA_SLEEPYCAT)/db/SequenceStats.java \ @@ -372,6 +380,7 @@ JAVA_DBSRCS=\ $(JAVA_SLEEPYCAT)/db/Transaction.java \ $(JAVA_SLEEPYCAT)/db/TransactionConfig.java \ $(JAVA_SLEEPYCAT)/db/TransactionStats.java \ + $(JAVA_SLEEPYCAT)/db/VerboseConfig.java \ $(JAVA_SLEEPYCAT)/db/VerifyConfig.java \ $(JAVA_SLEEPYCAT)/db/VersionMismatchException.java \ $(JAVA_SLEEPYCAT)/db/internal/Db.java \ @@ -522,8 +531,9 @@ RPC_CXXSRV_OBJS=\ UTIL_PROGS=\ @ADDITIONAL_PROGS@ \ - db_archive db_checkpoint db_deadlock db_dump db_hotbackup \ - db_load db_printlog db_recover db_stat db_upgrade db_verify + db_archive db_checkpoint db_codegen db_deadlock db_dump \ + db_hotbackup db_load db_printlog db_recover db_stat db_upgrade \ + db_verify ################################################## # List of files installed into the library directory. @@ -573,7 +583,7 @@ $(libdb): $(DEF_LIB) # Real static C library. $(libdb_version): $(C_OBJS) $(AR) cr $@ $(C_OBJS) - test "$(RANLIB)" = "none" || $(RANLIB) $@ + $(RANLIB) $@ $(RM) -f $(libdb) $(LN) -s $(libdb_version) $(libdb) @@ -589,7 +599,7 @@ $(libcxx): $(DEF_LIB_CXX) # Real static C++ library. $(libcxx_version): $(CXX_OBJS) $(C_OBJS) $(AR) cr $@ $(CXX_OBJS) $(C_OBJS) - test "$(RANLIB)" = "none" || $(RANLIB) $@ + $(RANLIB) $@ $(RM) -f $(libcxx) $(LN) -s $(libcxx_version) $(libcxx) @@ -654,6 +664,11 @@ db_checkpoint: db_checkpoint@o@ util_log@o@ util_sig@o@ $(DEF_LIB) db_checkpoint@o@ util_log@o@ util_sig@o@ $(DEF_LIB) $(LIBS) $(POSTLINK) $@ +db_codegen: db_codegen@o@ code_capi@o@ code_parse@o@ $(DEF_LIB) + $(CCLINK) -o $@ $(LDFLAGS) \ + db_codegen@o@ code_capi@o@ code_parse@o@ $(DEF_LIB) $(LIBS) + $(POSTLINK) $@ + db_deadlock: db_deadlock@o@ util_log@o@ util_sig@o@ $(DEF_LIB) $(CCLINK) -o $@ $(LDFLAGS) \ db_deadlock@o@ util_log@o@ util_sig@o@ $(DEF_LIB) $(LIBS) @@ -762,7 +777,7 @@ install_utilities: test -f $$i.exe && i=$$i.exe || i=$$i; \ $(RM) -f $(DESTDIR)$(bindir)/$$i; \ $(INSTALLER) $$i $(DESTDIR)$(bindir)/$$i; \ - test "$(STRIP)" = "none" || $(STRIP) $(DESTDIR)$(bindir)/$$i; \ + $(STRIP) $(DESTDIR)$(bindir)/$$i; \ $(CHMOD) $(emode) $(DESTDIR)$(bindir)/$$i; \ done @@ -771,8 +786,8 @@ uninstall_utilities: $(RM) -f $$i $$i.exe; \ done) -DOCLIST=api_c api_cxx api_tcl collections gsg gsg_db_rep gsg_txn images \ - index.html java license ref utility +DOCLIST=api_c api_cxx api_tcl articles collections gsg gsg_db_rep \ + gsg_txn images index.html java license ref utility install_docs: @echo "Installing documentation: $(DESTDIR)$(docdir) ..." @@ -805,17 +820,17 @@ mostly-clean clean: $(RM) -rf $(RPC_CLIENT_OBJS) $(RPC_SRV_OBJS) $(RPC_CXXSRV_OBJS) $(RM) -rf $(UTIL_PROGS) *.exe $(CLEAN_LIST) $(RM) -rf $(JAVA_CLASSTOP) $(JAVA_EXCLASSTOP) - $(RM) -rf tags *@o@ *.o *.o.lock *.lo core *.core + $(RM) -rf tags *@o@ *.o *.o.lock *.lo core *.core core.* $(RM) -rf ALL.OUT.* PARALLEL_TESTDIR.* $(RM) -rf RUN_LOG RUNQUEUE TESTDIR TESTDIR.A TEST.LIST - $(RM) -rf logtrack_seen.db tm .libs $(LIB_INSTALL_FILE_LIST) + $(RM) -rf logtrack_seen.db test_mutex .libs $(LIB_INSTALL_FILE_LIST) REALCLEAN_LIST=\ Makefile clib_port.h confdefs.h config.cache config.log config.status \ configure.lineno db.h db185_int.h db_185.h db_config.h \ db_cxx.h db_int.h db_int_def.h include.tcl \ db_server.h db_server_clnt.c db_server_svc.c db_server_xdr.c \ - gen_db_server.c win_db.h + gen_db_server.c distclean maintainer-clean realclean: clean $(RM) -rf $(REALCLEAN_LIST) @@ -976,15 +991,21 @@ db_reptest: $(DBREPTEST_OBJS) $(DEF_LIB) $(LDFLAGS) $(DBREPTEST_OBJS) $(DEF_LIB) $(TEST_LIBS) $(LIBS) $(POSTLINK) $@ -tm@o@: $(srcdir)/mutex/tm.c +test_mutex@o@: $(srcdir)/mutex/test_mutex.c $(CC) $(CFLAGS) $? -tm: tm@o@ $(DEF_LIB) - $(CCLINK) -o $@ $(LDFLAGS) tm@o@ $(DEF_LIB) $(TEST_LIBS) $(LIBS) +test_mutex: test_mutex@o@ $(DEF_LIB) + $(CCLINK) -o $@ $(LDFLAGS) test_mutex@o@ $(DEF_LIB) $(TEST_LIBS) $(LIBS) $(POSTLINK) $@ ################################################## # Example programs for C. ################################################## +application@o@: application.c + $(CC) -DBUILD_STANDALONE $(CFLAGS) $? +application: application@o@ $(DEF_LIB) + $(CCLINK) -o $@ $(LDFLAGS) application@o@ $(DEF_LIB) $(LIBS) + $(POSTLINK) $@ + bench_001@o@: $(srcdir)/examples_c/bench_001.c $(CC) $(CFLAGS) $? bench_001: bench_001@o@ $(DEF_LIB) @@ -1272,8 +1293,6 @@ db_cam@o@: $(srcdir)/db/db_cam.c $(CC) $(CFLAGS) $? db_cds@o@: $(srcdir)/db/db_cds.c $(CC) $(CFLAGS) $? -db_clock@o@: $(srcdir)/common/db_clock.c - $(CC) $(CFLAGS) $? db_conv@o@: $(srcdir)/db/db_conv.c $(CC) $(CFLAGS) $? db_dispatch@o@: $(srcdir)/db/db_dispatch.c @@ -1318,9 +1337,7 @@ db_setid@o@: $(srcdir)/db/db_setid.c $(CC) $(CFLAGS) $? db_setlsn@o@: $(srcdir)/db/db_setlsn.c $(CC) $(CFLAGS) $? -db_salloc@o@: $(srcdir)/env/db_salloc.c - $(CC) $(CFLAGS) $? -db_shash@o@: $(srcdir)/env/db_shash.c +db_shash@o@: $(srcdir)/common/db_shash.c $(CC) $(CFLAGS) $? db_stati@o@: $(srcdir)/db/db_stati.c $(CC) $(CFLAGS) $? @@ -1350,14 +1367,20 @@ dbreg_stat@o@: $(srcdir)/dbreg/dbreg_stat.c $(CC) $(CFLAGS) $? dbreg_util@o@: $(srcdir)/dbreg/dbreg_util.c $(CC) $(CFLAGS) $? +env_alloc@o@: $(srcdir)/env/env_alloc.c + $(CC) $(CFLAGS) $? env_config@o@: $(srcdir)/env/env_config.c $(CC) $(CFLAGS) $? env_failchk@o@: $(srcdir)/env/env_failchk.c $(CC) $(CFLAGS) $? env_file@o@: $(srcdir)/env/env_file.c $(CC) $(CFLAGS) $? +env_globals@o@: $(srcdir)/env/env_globals.c + $(CC) $(CFLAGS) $? env_method@o@: $(srcdir)/env/env_method.c $(CC) $(CFLAGS) $? +env_name@o@: $(srcdir)/env/env_name.c + $(CC) $(CFLAGS) $? env_open@o@: $(srcdir)/env/env_open.c $(CC) $(CFLAGS) $? env_recover@o@: $(srcdir)/env/env_recover.c @@ -1430,6 +1453,8 @@ lock_region@o@:$(srcdir)/lock/lock_region.c $(CC) $(CFLAGS) $? lock_stat@o@:$(srcdir)/lock/lock_stat.c $(CC) $(CFLAGS) $? +lock_stub@o@: $(srcdir)/lock/lock_stub.c + $(CC) $(CFLAGS) $? lock_timer@o@:$(srcdir)/lock/lock_timer.c $(CC) $(CFLAGS) $? lock_util@o@:$(srcdir)/lock/lock_util.c @@ -1474,6 +1499,8 @@ mp_region@o@: $(srcdir)/mp/mp_region.c $(CC) $(CFLAGS) $? mp_register@o@: $(srcdir)/mp/mp_register.c $(CC) $(CFLAGS) $? +mp_resize@o@: $(srcdir)/mp/mp_resize.c + $(CC) $(CFLAGS) $? mp_stat@o@: $(srcdir)/mp/mp_stat.c $(CC) $(CFLAGS) $? mp_sync@o@: $(srcdir)/mp/mp_sync.c @@ -1496,12 +1523,16 @@ mut_region@o@: $(srcdir)/mutex/mut_region.c $(CC) $(CFLAGS) $? mut_stat@o@: $(srcdir)/mutex/mut_stat.c $(CC) $(CFLAGS) $? +mut_stub@o@: $(srcdir)/mutex/mut_stub.c + $(CC) $(CFLAGS) $? mut_tas@o@: $(srcdir)/mutex/mut_tas.c $(CC) $(CFLAGS) $? mut_win32@o@: $(srcdir)/mutex/mut_win32.c $(CC) $(CFLAGS) $? os_abs@o@: $(srcdir)/@OSDIR@/os_abs.c $(CC) $(CFLAGS) $? +os_abort@o@: $(srcdir)/os/os_abort.c + $(CC) $(CFLAGS) $? os_alloc@o@: $(srcdir)/os/os_alloc.c $(CC) $(CFLAGS) $? os_clock@o@: $(srcdir)/@OSDIR@/os_clock.c @@ -1536,6 +1567,8 @@ os_open@o@: $(srcdir)/@OSDIR@/os_open.c $(CC) $(CFLAGS) $? os_pid@o@: $(srcdir)/os/os_pid.c $(CC) $(CFLAGS) $? +os_qnx_open@o@: $(srcdir)/os_qnx/os_qnx_open.c + $(CC) $(CFLAGS) $? os_region@o@: $(srcdir)/os/os_region.c $(CC) $(CFLAGS) $? os_rename@o@: $(srcdir)/@OSDIR@/os_rename.c @@ -1596,6 +1629,8 @@ rep_backup@o@: $(srcdir)/rep/rep_backup.c $(CC) $(CFLAGS) $? rep_elect@o@: $(srcdir)/rep/rep_elect.c $(CC) $(CFLAGS) $? +rep_lease@o@: $(srcdir)/rep/rep_lease.c + $(CC) $(CFLAGS) $? rep_log@o@: $(srcdir)/rep/rep_log.c $(CC) $(CFLAGS) $? rep_method@o@: $(srcdir)/rep/rep_method.c @@ -1628,6 +1663,8 @@ repmgr_sel@o@: $(srcdir)/repmgr/repmgr_sel.c $(CC) $(CFLAGS) $? repmgr_stat@o@: $(srcdir)/repmgr/repmgr_stat.c $(CC) $(CFLAGS) $? +repmgr_stub@o@: $(srcdir)/repmgr/repmgr_stub.c + $(CC) $(CFLAGS) $? repmgr_util@o@: $(srcdir)/repmgr/repmgr_util.c $(CC) $(CFLAGS) $? rijndael-alg-fst@o@: $(srcdir)/crypto/rijndael/rijndael-alg-fst.c @@ -1777,6 +1814,8 @@ db_archive@o@: $(srcdir)/db_archive/db_archive.c $(CC) $(CFLAGS) $? db_checkpoint@o@: $(srcdir)/db_checkpoint/db_checkpoint.c $(CC) $(CFLAGS) $? +db_codegen@o@: $(srcdir)/db_codegen/db_codegen.c + $(CC) $(CFLAGS) $? db_deadlock@o@: $(srcdir)/db_deadlock/db_deadlock.c $(CC) $(CFLAGS) $? db_dump@o@: $(srcdir)/db_dump/db_dump.c @@ -1798,6 +1837,11 @@ db_upgrade@o@: $(srcdir)/db_upgrade/db_upgrade.c db_verify@o@: $(srcdir)/db_verify/db_verify.c $(CC) $(CFLAGS) $? +code_parse@o@: $(srcdir)/db_codegen/code_parse.c + $(CC) $(CFLAGS) $? +code_capi@o@: $(srcdir)/db_codegen/code_capi.c + $(CC) $(CFLAGS) $? + ################################################## # C library replacement files. ################################################## @@ -1829,6 +1873,8 @@ memmove@o@: $(srcdir)/clib/memmove.c $(CC) -DMEMMOVE $(CFLAGS) $? printf@o@: $(srcdir)/clib/printf.c $(CC) $(CFLAGS) $? +qsort@o@: $(srcdir)/clib/qsort.c + $(CC) $(CFLAGS) $? raise@o@: $(srcdir)/clib/raise.c $(CC) $(CFLAGS) $? rand@o@: $(srcdir)/clib/rand.c diff --git a/db/dist/RELEASE b/db/dist/RELEASE index 0874a36d3..34528f3d8 100644 --- a/db/dist/RELEASE +++ b/db/dist/RELEASE @@ -1,8 +1,8 @@ -# $Id: RELEASE,v 12.38 2006/09/20 20:08:48 bostic Exp $ +# $Id: RELEASE,v 12.56 2007/07/17 14:50:19 bostic Exp $ DB_VERSION_MAJOR=4 -DB_VERSION_MINOR=5 -DB_VERSION_PATCH=20 +DB_VERSION_MINOR=6 +DB_VERSION_PATCH=18 DB_VERSION="$DB_VERSION_MAJOR.$DB_VERSION_MINOR.$DB_VERSION_PATCH" DB_VERSION_UNIQUE_NAME=`printf "_%d%03d" $DB_VERSION_MAJOR $DB_VERSION_MINOR` diff --git a/db/dist/acconfig.h b/db/dist/acconfig.h deleted file mode 100644 index e30d0e3d2..000000000 --- a/db/dist/acconfig.h +++ /dev/null @@ -1,108 +0,0 @@ -/* - * $Id: acconfig.h,v 11.29 2000/09/20 16:30:33 bostic Exp $ - */ - -/* Define if you are building a version for running the test suite. */ -#undef CONFIG_TEST - -/* Define if you want a debugging version. */ -#undef DEBUG - -/* Define if you want a version that logs read operations. */ -#undef DEBUG_ROP - -/* Define if you want a version that logs write operations. */ -#undef DEBUG_WOP - -/* Define if you want a version with run-time diagnostic checking. */ -#undef DIAGNOSTIC - -/* Define if you want to mask harmless unitialized memory read/writes. */ -#undef UMRW - -/* Define if fcntl/F_SETFD denies child access to file descriptors. */ -#undef HAVE_FCNTL_F_SETFD - -/* Define if building big-file environment (e.g., AIX, HP/UX, Solaris). */ -#undef HAVE_FILE_OFFSET_BITS - -/* Mutex possibilities. */ -#undef HAVE_MUTEX_68K_GCC_ASSEMBLY -#undef HAVE_MUTEX_AIX_CHECK_LOCK -#undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY -#undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY -#undef HAVE_MUTEX_HPPA_MSEM_INIT -#undef HAVE_MUTEX_IA64_GCC_ASSEMBLY -#undef HAVE_MUTEX_MACOS -#undef HAVE_MUTEX_MSEM_INIT -#undef HAVE_MUTEX_PPC_GCC_ASSEMBLY -#undef HAVE_MUTEX_PTHREADS -#undef HAVE_MUTEX_RELIANTUNIX_INITSPIN -#undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY -#undef HAVE_MUTEX_SEMA_INIT -#undef HAVE_MUTEX_SGI_INIT_LOCK -#undef HAVE_MUTEX_SOLARIS_LOCK_TRY -#undef HAVE_MUTEX_SOLARIS_LWP -#undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY -#undef HAVE_MUTEX_THREADS -#undef HAVE_MUTEX_UI_THREADS -#undef HAVE_MUTEX_UTS_CC_ASSEMBLY -#undef HAVE_MUTEX_VMS -#undef HAVE_MUTEX_VXWORKS -#undef HAVE_MUTEX_WIN16 -#undef HAVE_MUTEX_WIN32 -#undef HAVE_MUTEX_X86_GCC_ASSEMBLY - -/* Define if building on QNX. */ -#undef HAVE_QNX - -/* Define if building RPC client/server. */ -#undef HAVE_RPC - -/* Define if your sprintf returns a pointer, not a length. */ -#undef SPRINTF_RET_CHARPNT - -@BOTTOM@ - -/* - * Big-file configuration. - */ -#ifdef HAVE_FILE_OFFSET_BITS -#define _FILE_OFFSET_BITS 64 -#endif - -/* - * Don't step on the namespace. Other libraries may have their own - * implementations of these functions, we don't want to use their - * implementations or force them to use ours based on the load order. - */ -#ifndef HAVE_GETCWD -#define getcwd __db_Cgetcwd -#endif -#ifndef HAVE_GETOPT -#define getopt __db_Cgetopt -#endif -#ifndef HAVE_MEMCMP -#define memcmp __db_Cmemcmp -#endif -#ifndef HAVE_MEMCPY -#define memcpy __db_Cmemcpy -#endif -#ifndef HAVE_MEMMOVE -#define memmove __db_Cmemmove -#endif -#ifndef HAVE_RAISE -#define raise __db_Craise -#endif -#ifndef HAVE_SNPRINTF -#define snprintf __db_Csnprintf -#endif -#ifndef HAVE_STRCASECMP -#define strcasecmp __db_Cstrcasecmp -#endif -#ifndef HAVE_STRERROR -#define strerror __db_Cstrerror -#endif -#ifndef HAVE_VSNPRINTF -#define vsnprintf __db_Cvsnprintf -#endif diff --git a/db/dist/aclocal/config.ac b/db/dist/aclocal/config.ac deleted file mode 100644 index 3ae2ff2eb..000000000 --- a/db/dist/aclocal/config.ac +++ /dev/null @@ -1,22 +0,0 @@ -# Features we don't test for, but want the #defines to exist for -# other ports. -AH_TEMPLATE(DB_WIN32, - [We use DB_WIN32 much as one would use _WIN32 -- to specify that - we're using an operating system environment that supports Win32 - calls and semantics. We don't use _WIN32 because Cygwin/GCC also - defines _WIN32, even though Cygwin/GCC closely emulates the Unix - environment.]) - -AH_TEMPLATE(HAVE_VXWORKS, [Define to 1 if building VxWorks.]) - -AH_TEMPLATE(HAVE_FILESYSTEM_NOTZERO, - [Define to 1 if allocated filesystem blocks are not zeroed.]) - -AH_TEMPLATE(HAVE_UNLINK_WITH_OPEN_FAILURE, - [Define to 1 if unlink of file with open file descriptors will fail.]) - -AH_BOTTOM([#include "clib_port.h" - -#ifdef DB_WIN32 -#include "win_db.h" -#endif]) diff --git a/db/dist/aclocal/config.m4 b/db/dist/aclocal/config.m4 new file mode 100644 index 000000000..c24d127dc --- /dev/null +++ b/db/dist/aclocal/config.m4 @@ -0,0 +1,22 @@ +# Features we don't test for, but want the #defines to exist for +# other ports. +AH_TEMPLATE(DB_WIN32, + [We use DB_WIN32 much as one would use _WIN32 -- to specify that + we're using an operating system environment that supports Win32 + calls and semantics. We don't use _WIN32 because Cygwin/GCC also + defines _WIN32, even though Cygwin/GCC closely emulates the Unix + environment.]) + +AH_TEMPLATE(HAVE_BREW, [Define to 1 if building on BREW.]) +AH_TEMPLATE(HAVE_BREW_SDK2, [Define to 1 if building on BREW (SDK2).]) +AH_TEMPLATE(HAVE_S60, [Define to 1 if building on S60.]) +AH_TEMPLATE(HAVE_VXWORKS, [Define to 1 if building on VxWorks.]) + +AH_TEMPLATE(HAVE_FILESYSTEM_NOTZERO, + [Define to 1 if allocated filesystem blocks are not zeroed.]) + +AH_TEMPLATE(HAVE_UNLINK_WITH_OPEN_FAILURE, + [Define to 1 if unlink of file with open file descriptors will fail.]) + +AH_TEMPLATE(HAVE_SYSTEM_INCLUDE_FILES, + [Define to 1 if port includes files in the Berkeley DB source code.]) diff --git a/db/dist/aclocal/cxx.ac b/db/dist/aclocal/cxx.ac deleted file mode 100644 index 49103cc66..000000000 --- a/db/dist/aclocal/cxx.ac +++ /dev/null @@ -1,17 +0,0 @@ -# C++ checks to determine what style of headers to use and -# whether to use "using" clauses. - -AC_DEFUN(AC_CXX_HAVE_STDHEADERS, [ -AC_SUBST(cxx_have_stdheaders) -AC_CACHE_CHECK([whether C++ supports the ISO C++ standard includes], -db_cv_cxx_have_stdheaders, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -],[std::ostream *o; return 0;], - db_cv_cxx_have_stdheaders=yes, db_cv_cxx_have_stdheaders=no) - AC_LANG_RESTORE -]) -if test "$db_cv_cxx_have_stdheaders" = yes; then - cxx_have_stdheaders="#define HAVE_CXX_STDHEADERS 1" -fi]) diff --git a/db/dist/aclocal/cxx.m4 b/db/dist/aclocal/cxx.m4 new file mode 100644 index 000000000..49103cc66 --- /dev/null +++ b/db/dist/aclocal/cxx.m4 @@ -0,0 +1,17 @@ +# C++ checks to determine what style of headers to use and +# whether to use "using" clauses. + +AC_DEFUN(AC_CXX_HAVE_STDHEADERS, [ +AC_SUBST(cxx_have_stdheaders) +AC_CACHE_CHECK([whether C++ supports the ISO C++ standard includes], +db_cv_cxx_have_stdheaders, +[AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([#include +],[std::ostream *o; return 0;], + db_cv_cxx_have_stdheaders=yes, db_cv_cxx_have_stdheaders=no) + AC_LANG_RESTORE +]) +if test "$db_cv_cxx_have_stdheaders" = yes; then + cxx_have_stdheaders="#define HAVE_CXX_STDHEADERS 1" +fi]) diff --git a/db/dist/aclocal/gcc.ac b/db/dist/aclocal/gcc.ac deleted file mode 100644 index 0949d982f..000000000 --- a/db/dist/aclocal/gcc.ac +++ /dev/null @@ -1,36 +0,0 @@ -# Version 2.96 of gcc (shipped with RedHat Linux 7.[01] and Mandrake) had -# serious problems. -AC_DEFUN(AC_GCC_CONFIG1, [ -AC_CACHE_CHECK([whether we are using gcc version 2.96], -db_cv_gcc_2_96, [ -db_cv_gcc_2_96=no -if test "$GCC" = "yes"; then - GCC_VERSION=`${MAKEFILE_CC} --version` - case ${GCC_VERSION} in - 2.96*) - db_cv_gcc_2_96=yes;; - esac -fi]) -if test "$db_cv_gcc_2_96" = "yes"; then - CFLAGS=`echo "$CFLAGS" | sed 's/-O2/-O/'` - CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-O2/-O/'` - AC_MSG_WARN([INSTALLED GCC COMPILER HAS SERIOUS BUGS; PLEASE UPGRADE.]) - AC_MSG_WARN([GCC OPTIMIZATION LEVEL SET TO -O.]) -fi]) - -# Versions of g++ up to 2.8.0 required -fhandle-exceptions, but it is -# renamed as -fexceptions and is the default in versions 2.8.0 and after. -AC_DEFUN(AC_GCC_CONFIG2, [ -AC_CACHE_CHECK([whether g++ requires -fhandle-exceptions], -db_cv_gxx_except, [ -db_cv_gxx_except=no; -if test "$GXX" = "yes"; then - GXX_VERSION=`${MAKEFILE_CXX} --version` - case ${GXX_VERSION} in - 1.*|2.[[01234567]].*|*-1.*|*-2.[[01234567]].*) - db_cv_gxx_except=yes;; - esac -fi]) -if test "$db_cv_gxx_except" = "yes"; then - CXXFLAGS="$CXXFLAGS -fhandle-exceptions" -fi]) diff --git a/db/dist/aclocal/gcc.m4 b/db/dist/aclocal/gcc.m4 new file mode 100644 index 000000000..0949d982f --- /dev/null +++ b/db/dist/aclocal/gcc.m4 @@ -0,0 +1,36 @@ +# Version 2.96 of gcc (shipped with RedHat Linux 7.[01] and Mandrake) had +# serious problems. +AC_DEFUN(AC_GCC_CONFIG1, [ +AC_CACHE_CHECK([whether we are using gcc version 2.96], +db_cv_gcc_2_96, [ +db_cv_gcc_2_96=no +if test "$GCC" = "yes"; then + GCC_VERSION=`${MAKEFILE_CC} --version` + case ${GCC_VERSION} in + 2.96*) + db_cv_gcc_2_96=yes;; + esac +fi]) +if test "$db_cv_gcc_2_96" = "yes"; then + CFLAGS=`echo "$CFLAGS" | sed 's/-O2/-O/'` + CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-O2/-O/'` + AC_MSG_WARN([INSTALLED GCC COMPILER HAS SERIOUS BUGS; PLEASE UPGRADE.]) + AC_MSG_WARN([GCC OPTIMIZATION LEVEL SET TO -O.]) +fi]) + +# Versions of g++ up to 2.8.0 required -fhandle-exceptions, but it is +# renamed as -fexceptions and is the default in versions 2.8.0 and after. +AC_DEFUN(AC_GCC_CONFIG2, [ +AC_CACHE_CHECK([whether g++ requires -fhandle-exceptions], +db_cv_gxx_except, [ +db_cv_gxx_except=no; +if test "$GXX" = "yes"; then + GXX_VERSION=`${MAKEFILE_CXX} --version` + case ${GXX_VERSION} in + 1.*|2.[[01234567]].*|*-1.*|*-2.[[01234567]].*) + db_cv_gxx_except=yes;; + esac +fi]) +if test "$db_cv_gxx_except" = "yes"; then + CXXFLAGS="$CXXFLAGS -fhandle-exceptions" +fi]) diff --git a/db/dist/aclocal/libtool.ac b/db/dist/aclocal/libtool.ac deleted file mode 100644 index 0f53cb592..000000000 --- a/db/dist/aclocal/libtool.ac +++ /dev/null @@ -1,6397 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit , 1996 -## -## This file is free software; the Free Software Foundation gives -## unlimited permission to copy and/or distribute it, with or without -## modifications, as long as this notice is preserved. - -# serial 48 AC_PROG_LIBTOOL - - -# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) -# ----------------------------------------------------------- -# If this macro is not defined by Autoconf, define it here. -m4_ifdef([AC_PROVIDE_IFELSE], - [], - [m4_define([AC_PROVIDE_IFELSE], - [m4_ifdef([AC_PROVIDE_$1], - [$2], [$3])])]) - - -# AC_PROG_LIBTOOL -# --------------- -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl -dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX -dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. - AC_PROVIDE_IFELSE([AC_PROG_CXX], - [AC_LIBTOOL_CXX], - [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX - ])]) -dnl And a similar setup for Fortran 77 support - AC_PROVIDE_IFELSE([AC_PROG_F77], - [AC_LIBTOOL_F77], - [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 -])]) - -dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. -dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run -dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. - AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [ifdef([AC_PROG_GCJ], - [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([A][M_PROG_GCJ], - [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([LT_AC_PROG_GCJ], - [define([LT_AC_PROG_GCJ], - defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) -])])# AC_PROG_LIBTOOL - - -# _AC_PROG_LIBTOOL -# ---------------- -AC_DEFUN([_AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl -AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl -AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -])# _AC_PROG_LIBTOOL - - -# AC_LIBTOOL_SETUP -# ---------------- -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.50)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl - -AC_REQUIRE([AC_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -AC_LIBTOOL_SYS_MAX_CMD_LEN -AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -AC_LIBTOOL_OBJDIR - -AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -_LT_AC_PROG_ECHO_BACKSLASH - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e 1s/^X//' -[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] - -# Same as above, but do not quote variable references. -[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except MSVC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" - -AC_CHECK_TOOL(AR, ar, false) -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$SED" && SED=sed -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" - ;; - *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -_LT_CC_BASENAME([$compiler]) - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) - -AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -AC_ARG_WITH([pic], - [AC_HELP_STRING([--with-pic], - [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], - [pic_mode="$withval"], - [pic_mode=default]) -test -z "$pic_mode" && pic_mode=default - -# Use C for the default configuration in the libtool script -tagname= -AC_LIBTOOL_LANG_C_CONFIG -_LT_AC_TAGCONFIG -])# AC_LIBTOOL_SETUP - - -# _LT_AC_SYS_COMPILER -# ------------------- -AC_DEFUN([_LT_AC_SYS_COMPILER], -[AC_REQUIRE([AC_PROG_CC])dnl - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC -])# _LT_AC_SYS_COMPILER - - -# _LT_CC_BASENAME(CC) -# ------------------- -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -AC_DEFUN([_LT_CC_BASENAME], -[for cc_temp in $1""; do - case $cc_temp in - compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; - distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` -]) - - -# _LT_COMPILER_BOILERPLATE -# ------------------------ -# Check for compiler boilerplate output or warnings with -# the simple compiler test code. -AC_DEFUN([_LT_COMPILER_BOILERPLATE], -[ac_outfile=conftest.$ac_objext -printf "$lt_simple_compile_test_code" >conftest.$ac_ext -eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_compiler_boilerplate=`cat conftest.err` -$rm conftest* -])# _LT_COMPILER_BOILERPLATE - - -# _LT_LINKER_BOILERPLATE -# ---------------------- -# Check for linker boilerplate output or warnings with -# the simple link test code. -AC_DEFUN([_LT_LINKER_BOILERPLATE], -[ac_outfile=conftest.$ac_objext -printf "$lt_simple_link_test_code" >conftest.$ac_ext -eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_linker_boilerplate=`cat conftest.err` -$rm conftest* -])# _LT_LINKER_BOILERPLATE - - -# _LT_AC_SYS_LIBPATH_AIX -# ---------------------- -# Links a minimal program and checks the executable -# for the system default hardcoded library path. In most cases, -# this is /usr/lib:/lib, but when the MPI compilers are used -# the location of the communication and MPI libs are included too. -# If we don't find anything, use the default library path according -# to the aix ld manual. -AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], -[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'`; fi],[]) -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi -])# _LT_AC_SYS_LIBPATH_AIX - - -# _LT_AC_SHELL_INIT(ARG) -# ---------------------- -AC_DEFUN([_LT_AC_SHELL_INIT], -[ifdef([AC_DIVERSION_NOTICE], - [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -$1 -AC_DIVERT_POP -])# _LT_AC_SHELL_INIT - - -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[_LT_AC_SHELL_INIT([ -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -echo=${ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null 2>&1 && unset CDPATH - -if test -z "$ECHO"; then -if test "X${echo_test_string+set}" != Xset; then -# find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if (echo_test_string=`eval $cmd`) 2>/dev/null && - echo_test_string=`eval $cmd` && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - IFS="$lt_save_ifs" - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$lt_save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(ECHO) -])])# _LT_AC_PROG_ECHO_BACKSLASH - - -# _LT_AC_LOCK -# ----------- -AC_DEFUN([_LT_AC_LOCK], -[AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE="32" - ;; - *ELF-64*) - HPUX_IA64_MODE="64" - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - if test "$lt_cv_prog_gnu_ld" = yes; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in - *32-bit*) - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_i386" - ;; - ppc64-*linux*|powerpc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - ppc*-*linux*|powerpc*-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_PUSH(C) - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_POP]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; -sparc*-*solaris*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.o` in - *64-bit*) - case $lt_cv_prog_gnu_ld in - yes*) LD="${LD-ld} -m elf64_sparc" ;; - *) LD="${LD-ld} -64" ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; - ]) -esac - -need_locks="$enable_libtool_lock" - -])# _LT_AC_LOCK - - -# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------------------- -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], -[AC_REQUIRE([LT_AC_PROG_SED]) -AC_CACHE_CHECK([$1], [$2], - [$2=no - ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - fi - $rm conftest* -]) - -if test x"[$]$2" = xyes; then - ifelse([$5], , :, [$5]) -else - ifelse([$6], , :, [$6]) -fi -])# AC_LIBTOOL_COMPILER_OPTION - - -# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [ACTION-SUCCESS], [ACTION-FAILURE]) -# ------------------------------------------------------------ -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], -[AC_CACHE_CHECK([$1], [$2], - [$2=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $3" - printf "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&AS_MESSAGE_LOG_FD - $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - else - $2=yes - fi - fi - $rm conftest* - LDFLAGS="$save_LDFLAGS" -]) - -if test x"[$]$2" = xyes; then - ifelse([$4], , :, [$4]) -else - ifelse([$5], , :, [$5]) -fi -])# AC_LIBTOOL_LINKER_OPTION - - -# AC_LIBTOOL_SYS_MAX_CMD_LEN -# -------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], -[# find the maximum length of command line arguments -AC_MSG_CHECKING([the maximum length of command line arguments]) -AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl - i=0 - teststring="ABCD" - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - gnu*) - # Under GNU Hurd, this test is not required because there is - # no limit to the length of command line arguments. - # Libtool will interpret -1 as no limit whatsoever - lt_cv_sys_max_cmd_len=-1; - ;; - - cygwin* | mingw*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - - interix*) - # We know the value 262144 and hardcode it with a safety zone (like BSD) - lt_cv_sys_max_cmd_len=196608 - ;; - - osf*) - # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure - # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not - # nice to cause kernel panics so lets avoid the loop below. - # First set a reasonable default. - lt_cv_sys_max_cmd_len=16384 - # - if test -x /sbin/sysconfig; then - case `/sbin/sysconfig -q proc exec_disable_arg_limit` in - *1*) lt_cv_sys_max_cmd_len=-1 ;; - esac - fi - ;; - sco3.2v5*) - lt_cv_sys_max_cmd_len=102400 - ;; - sysv5* | sco5v6* | sysv4.2uw2*) - kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` - if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` - else - lt_cv_sys_max_cmd_len=32768 - fi - ;; - *) - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} - while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \ - = "XX$teststring") >/dev/null 2>&1 && - new_result=`expr "X$teststring" : ".*" 2>&1` && - lt_cv_sys_max_cmd_len=$new_result && - test $i != 17 # 1/2 MB should be enough - do - i=`expr $i + 1` - teststring=$teststring$teststring - done - teststring= - # Add a significant safety factor because C++ compilers can tack on massive - # amounts of additional arguments before passing them to the linker. - # It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - ;; - esac -]) -if test -n $lt_cv_sys_max_cmd_len ; then - AC_MSG_RESULT($lt_cv_sys_max_cmd_len) -else - AC_MSG_RESULT(none) -fi -])# AC_LIBTOOL_SYS_MAX_CMD_LEN - - -# _LT_AC_CHECK_DLFCN -# ------------------ -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h)dnl -])# _LT_AC_CHECK_DLFCN - - -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# --------------------------------------------------------------------- -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "$cross_compiling" = yes; then : - [$4] -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - else - puts (dlerror ()); - - exit (status); -}] -EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_dlunknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF - - -# AC_LIBTOOL_DLOPEN_SELF -# ---------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen="dlopen" - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ - lt_cv_dlopen="dyld" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ]) - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -])# AC_LIBTOOL_DLOPEN_SELF - - -# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) -# --------------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler -AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no - $rm -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - fi - fi - chmod u+w . 2>&AS_MESSAGE_LOG_FD - $rm conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files - $rm out/* && rmdir out - cd .. - rmdir conftest - $rm conftest* -]) -])# AC_LIBTOOL_PROG_CC_C_O - - -# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) -# ----------------------------------------- -# Check to see if we can do hard links to lock some files if needed -AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], -[AC_REQUIRE([_LT_AC_LOCK])dnl - -hard_links="nottested" -if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS - - -# AC_LIBTOOL_OBJDIR -# ----------------- -AC_DEFUN([AC_LIBTOOL_OBJDIR], -[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], -[rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null]) -objdir=$lt_cv_objdir -])# AC_LIBTOOL_OBJDIR - - -# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) -# ---------------------------------------------- -# Check hardcoding attributes. -AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], -[AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_AC_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ - test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \ - test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then - - # We can hardcode non-existant directories. - if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && - test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then - # Linking always hardcodes the temporary library directory. - _LT_AC_TAGVAR(hardcode_action, $1)=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - _LT_AC_TAGVAR(hardcode_action, $1)=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - _LT_AC_TAGVAR(hardcode_action, $1)=unsupported -fi -AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) - -if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi -])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH - - -# AC_LIBTOOL_SYS_LIB_STRIP -# ------------------------ -AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], -[striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP" ; then - striplib="$STRIP -x" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) -fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac -fi -])# AC_LIBTOOL_SYS_LIB_STRIP - - -# AC_LIBTOOL_SYS_DYNAMIC_LINKER -# ----------------------------- -# PORTME Fill in your ld.so characteristics -AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], -[AC_MSG_CHECKING([dynamic linker characteristics]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext_cmds=".so" -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -if test "$GCC" = yes; then - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then - # if the path contains ";" then we assume it to be the separator - # otherwise default to the standard path separator (i.e. ":") - it is - # assumed that no part of a normal pathname contains ";" but that should - # okay in the real world where ";" in dirpaths is itself problematic. - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi -else - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - ;; - -beos*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi[[45]]*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - shrext_cmds=".dll" - need_version=no - need_lib_prefix=no - - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32*) - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" - ;; - mingw*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - ;; - esac - ;; - - *) - library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' - # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. - if test "$GCC" = yes; then - sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` - else - sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' - fi - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - -freebsd* | dragonfly*) - # DragonFly does not have aout. When/if they implement a new - # versioning mechanism, adjust this. - if test -x /usr/bin/objformat; then - objformat=`/usr/bin/objformat` - else - case $host_os in - freebsd[[123]]*) objformat=aout ;; - *) objformat=elf ;; - esac - fi - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[[01]]* | freebsdelf3.[[01]]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ - freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - freebsd*) # from 4.6 on - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case $host_cpu in - ia64*) - shrext_cmds='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - hppa*64*) - shrext_cmds='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext_cmds='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -interix3*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -knetbsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -nto-qnx*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" - need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - ;; - -os2*) - libname_spec='$name' - shrext_cmds=".dll" - need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then - sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' - shlibpath_overrides_runpath=no - else - sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' - shlibpath_overrides_runpath=yes - case $host_os in - sco3.2v5*) - sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" - ;; - esac - fi - sys_lib_dlsearch_path_spec='/usr/lib' - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi -])# AC_LIBTOOL_SYS_DYNAMIC_LINKER - - -# _LT_AC_TAGCONFIG -# ---------------- -AC_DEFUN([_LT_AC_TAGCONFIG], -[AC_ARG_WITH([tags], - [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], - [include additional configurations @<:@automatic@:>@])], - [tagnames="$withval"]) - -if test -f "$ltmain" && test -n "$tagnames"; then - if test ! -f "${ofile}"; then - AC_MSG_WARN([output file `$ofile' does not exist]) - fi - - if test -z "$LTCC"; then - eval "`$SHELL ${ofile} --config | grep '^LTCC='`" - if test -z "$LTCC"; then - AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) - else - AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) - fi - fi - if test -z "$LTCFLAGS"; then - eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`" - fi - - # Extract list of available tagged configurations in $ofile. - # Note that this assumes the entire list is on one line. - available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` - - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for tagname in $tagnames; do - IFS="$lt_save_ifs" - # Check whether tagname contains only valid characters - case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in - "") ;; - *) AC_MSG_ERROR([invalid tag name: $tagname]) - ;; - esac - - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null - then - AC_MSG_ERROR([tag name \"$tagname\" already exists]) - fi - - # Update the list of available tags. - if test -n "$tagname"; then - echo appending configuration tag \"$tagname\" to $ofile - - case $tagname in - CXX) - if test -n "$CXX" && ( test "X$CXX" != "Xno" && - ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || - (test "X$CXX" != "Xg++"))) ; then - AC_LIBTOOL_LANG_CXX_CONFIG - else - tagname="" - fi - ;; - - F77) - if test -n "$F77" && test "X$F77" != "Xno"; then - AC_LIBTOOL_LANG_F77_CONFIG - else - tagname="" - fi - ;; - - GCJ) - if test -n "$GCJ" && test "X$GCJ" != "Xno"; then - AC_LIBTOOL_LANG_GCJ_CONFIG - else - tagname="" - fi - ;; - - RC) - AC_LIBTOOL_LANG_RC_CONFIG - ;; - - *) - AC_MSG_ERROR([Unsupported tag name: $tagname]) - ;; - esac - - # Append the new tag name to the list of available tags. - if test -n "$tagname" ; then - available_tags="$available_tags $tagname" - fi - fi - done - IFS="$lt_save_ifs" - - # Now substitute the updated list of available tags. - if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then - mv "${ofile}T" "$ofile" - chmod +x "$ofile" - else - rm -f "${ofile}T" - AC_MSG_ERROR([unable to update list of available tagged configurations.]) - fi -fi -])# _LT_AC_TAGCONFIG - - -# AC_LIBTOOL_DLOPEN -# ----------------- -# enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], - [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_DLOPEN - - -# AC_LIBTOOL_WIN32_DLL -# -------------------- -# declare package support for building win32 DLLs -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_WIN32_DLL - - -# AC_ENABLE_SHARED([DEFAULT]) -# --------------------------- -# implement the --enable-shared flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([shared], - [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], - [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_shared=]AC_ENABLE_SHARED_DEFAULT) -])# AC_ENABLE_SHARED - - -# AC_DISABLE_SHARED -# ----------------- -# set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no) -])# AC_DISABLE_SHARED - - -# AC_ENABLE_STATIC([DEFAULT]) -# --------------------------- -# implement the --enable-static flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([static], - [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], - [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_static=]AC_ENABLE_STATIC_DEFAULT) -])# AC_ENABLE_STATIC - - -# AC_DISABLE_STATIC -# ----------------- -# set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no) -])# AC_DISABLE_STATIC - - -# AC_ENABLE_FAST_INSTALL([DEFAULT]) -# --------------------------------- -# implement the --enable-fast-install flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([fast-install], - [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], - [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) -])# AC_ENABLE_FAST_INSTALL - - -# AC_DISABLE_FAST_INSTALL -# ----------------------- -# set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no) -])# AC_DISABLE_FAST_INSTALL - - -# AC_LIBTOOL_PICMODE([MODE]) -# -------------------------- -# implement the --with-pic flag -# MODE is either `yes' or `no'. If omitted, it defaults to `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default) -])# AC_LIBTOOL_PICMODE - - -# AC_PROG_EGREP -# ------------- -# This is predefined starting with Autoconf 2.54, so this conditional -# definition can be removed once we require Autoconf 2.54 or later. -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], -[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], - [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi]) - EGREP=$ac_cv_prog_egrep - AC_SUBST([EGREP]) -])]) - - -# AC_PATH_TOOL_PREFIX -# ------------------- -# find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in -[[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -])# AC_PATH_TOOL_PREFIX - - -# AC_PATH_MAGIC -# ------------- -# find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) - else - MAGIC_CMD=: - fi -fi -])# AC_PATH_MAGIC - - -# AC_PROG_LD -# ---------- -# find the pathname to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH([gnu-ld], - [AC_HELP_STRING([--with-gnu-ld], - [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test "$withval" = no || with_gnu_ld=yes], - [with_gnu_ld=no]) -AC_REQUIRE([LT_AC_PROG_SED])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file - case $host_cpu in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -interix3*) - # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' - ;; - -irix5* | irix6* | nonstopux*) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux*) - lt_cv_deplibs_check_method=pass_all - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -nto-qnx*) - lt_cv_deplibs_check_method=unknown - ;; - -openbsd*) - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - fi - ;; - -osf3* | osf4* | osf5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.3*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - pc) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac -]) -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -test -z "$deplibs_check_method" && deplibs_check_method=unknown -])# AC_DEPLIBS_CHECK_METHOD - - -# AC_PROG_NM -# ---------- -# find the pathname to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - lt_nm_to_check="${ac_tool_prefix}nm" - if test -n "$ac_tool_prefix" && test "$build" = "$host"; then - lt_nm_to_check="$lt_nm_to_check nm" - fi - for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/$lt_tmp_nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - ;; - esac - fi - done - IFS="$lt_save_ifs" - done - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -])# AC_PROG_NM - - -# AC_CHECK_LIBM -# ------------- -# check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) - # These system don't have libm, or don't need it - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, cos, LIBM="-lm") - ;; -esac -])# AC_CHECK_LIBM - - -# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl convenience library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-convenience to the configure arguments. Note that -# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, -# it is assumed to be `libltdl'. LIBLTDL will be prefixed with -# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/' -# (note the single quotes!). If your package is not flat and you're not -# using automake, define top_builddir and top_srcdir appropriately in -# the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_CONVENIENCE - - -# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl installable library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-install to the configure arguments. Note that -# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, -# and an installed libltdl is not found, it is assumed to be `libltdl'. -# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and top_srcdir -# appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, lt_dlinit, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - LTDLINCL= - fi - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_INSTALLABLE - - -# AC_LIBTOOL_CXX -# -------------- -# enable support for C++ libraries -AC_DEFUN([AC_LIBTOOL_CXX], -[AC_REQUIRE([_LT_AC_LANG_CXX]) -])# AC_LIBTOOL_CXX - - -# _LT_AC_LANG_CXX -# --------------- -AC_DEFUN([_LT_AC_LANG_CXX], -[AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([_LT_AC_PROG_CXXCPP]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) -])# _LT_AC_LANG_CXX - -# _LT_AC_PROG_CXXCPP -# ------------------ -AC_DEFUN([_LT_AC_PROG_CXXCPP], -[ -AC_REQUIRE([AC_PROG_CXX]) -if test -n "$CXX" && ( test "X$CXX" != "Xno" && - ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || - (test "X$CXX" != "Xg++"))) ; then - AC_PROG_CXXCPP -fi -])# _LT_AC_PROG_CXXCPP - -# AC_LIBTOOL_F77 -# -------------- -# enable support for Fortran 77 libraries -AC_DEFUN([AC_LIBTOOL_F77], -[AC_REQUIRE([_LT_AC_LANG_F77]) -])# AC_LIBTOOL_F77 - - -# _LT_AC_LANG_F77 -# --------------- -AC_DEFUN([_LT_AC_LANG_F77], -[AC_REQUIRE([AC_PROG_F77]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) -])# _LT_AC_LANG_F77 - - -# AC_LIBTOOL_GCJ -# -------------- -# enable support for GCJ libraries -AC_DEFUN([AC_LIBTOOL_GCJ], -[AC_REQUIRE([_LT_AC_LANG_GCJ]) -])# AC_LIBTOOL_GCJ - - -# _LT_AC_LANG_GCJ -# --------------- -AC_DEFUN([_LT_AC_LANG_GCJ], -[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], - [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], - [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], - [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) -])# _LT_AC_LANG_GCJ - - -# AC_LIBTOOL_RC -# ------------- -# enable support for Windows resource files -AC_DEFUN([AC_LIBTOOL_RC], -[AC_REQUIRE([LT_AC_PROG_RC]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) -])# AC_LIBTOOL_RC - - -# AC_LIBTOOL_LANG_C_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) -AC_DEFUN([_LT_AC_LANG_C_CONFIG], -[lt_save_CC="$CC" -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}\n' - -_LT_AC_SYS_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF - -# Report which library types will actually be built -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case $host_os in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4* | aix5*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_C_CONFIG - - -# AC_LIBTOOL_LANG_CXX_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) -AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], -[AC_LANG_PUSH(C++) -AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([_LT_AC_PROG_CXXCPP]) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Dependencies to place before and after the object being linked: -_LT_AC_TAGVAR(predep_objects, $1)= -_LT_AC_TAGVAR(postdep_objects, $1)= -_LT_AC_TAGVAR(predeps, $1)= -_LT_AC_TAGVAR(postdeps, $1)= -_LT_AC_TAGVAR(compiler_lib_search_path, $1)= - -# Source file extension for C++ test sources. -ac_ext=cpp - -# Object file extension for compiled C++ test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_LD=$LD -lt_save_GCC=$GCC -GCC=$GXX -lt_save_with_gnu_ld=$with_gnu_ld -lt_save_path_LD=$lt_cv_path_LD -if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then - lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx -else - $as_unset lt_cv_prog_gnu_ld -fi -if test -n "${lt_cv_path_LDCXX+set}"; then - lt_cv_path_LD=$lt_cv_path_LDCXX -else - $as_unset lt_cv_path_LD -fi -test -z "${LDCXX+set}" || LD=$LDCXX -CC=${CXX-"c++"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -_LT_CC_BASENAME([$compiler]) - -# We don't want -fno-exception wen compiling C++ code, so set the -# no_builtin_flag separately -if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' -else - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= -fi - -if test "$GXX" = yes; then - # Set up default GNU C++ configuration - - AC_PROG_LD - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='${wl}' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ - grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - fi - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - -else - GXX=no - with_gnu_ld=no - wlarc= -fi - -# PORTME: fill in a description of your system's C++ link characteristics -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -_LT_AC_TAGVAR(ld_shlibs, $1)=yes -case $host_os in - aix3*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GXX" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - ;; - esac - shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' - fi - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - darwin* | rhapsody*) - case $host_os in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' - ;; - esac - fi - ;; - esac - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GXX" = yes ; then - lt_int_apple_cc_single_mod=no - output_verbose_link_cmd='echo' - if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then - lt_int_apple_cc_single_mod=yes - fi - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' - fi - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - case $cc_basename in - xlc*) - output_verbose_link_cmd='echo' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - ;; - *) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - fi - ;; - - dgux*) - case $cc_basename in - ec++*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - ghcx*) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - freebsd[[12]]*) - # C++ shared libraries reported to be fairly broken before switch to ELF - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - freebsd-elf*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - freebsd* | kfreebsd*-gnu | dragonfly*) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - ;; - gnu*) - ;; - hpux9*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[[-]]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - hpux10*|hpux11*) - if test $with_gnu_ld = no; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - ;; - *) - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - esac - fi - case $host_cpu in - hppa*64*|ia64*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - esac - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - case $host_cpu in - hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then - case $host_cpu in - hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - fi - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - interix3*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - irix5* | irix6*) - case $cc_basename in - CC*) - # SGI C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' - fi - fi - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - esac - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - linux*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - ;; - icpc*) - # Intel C++ - with_gnu_ld=yes - # version 8.0 and above of icpc choke on multiply defined symbols - # if we add $predep_objects and $postdep_objects, however 7.1 and - # earlier do not add the objects themselves. - case `$CC -V 2>&1` in - *"Version 7."*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - ;; - *) # Version 8.0 or newer - tmp_idyn= - case $host_cpu in - ia64*) tmp_idyn=' -i_dynamic';; - esac - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - ;; - esac - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; - pgCC*) - # Portland Group C++ compiler - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - ;; - cxx*) - # Compaq C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - esac - ;; - lynxos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - m88k*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - mvs*) - case $cc_basename in - cxx*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - fi - # Workaround some broken pre-1.5 toolchains - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' - ;; - openbsd2*) - # C++ shared libraries are fairly broken - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - openbsd*) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - fi - output_verbose_link_cmd='echo' - ;; - osf3*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - - ;; - RCC*) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - osf4* | osf5*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' - ;; - RCC*) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~ - $rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - psos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - lcc*) - # Lucid - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - solaris*) - case $cc_basename in - CC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The C++ compiler is used as linker so we must use $wl - # flag to pass the commands to the underlying system - # linker. We must also pass each convience library through - # to the system linker between allextract/defaultextract. - # The C++ compiler will combine linker options so we - # cannot just pass the convience library names through - # without $wl. - # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' - ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - output_verbose_link_cmd='echo' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' - if $CC --version | grep -v '^2\.7' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" - else - # g++ 2.7 appears to require `-G' NOT `-shared' on this - # platform. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" - fi - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' - fi - ;; - esac - ;; - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - # For security reasons, it is highly recommended that you always - # use absolute paths for naming shared libraries, and exclude the - # DT_RUNPATH tag from executables and libraries. But doing so - # requires that you compile everything twice, which is a pain. - # So that behaviour is only enabled if SCOABSPATH is set to a - # non-empty value in the environment. Most likely only useful for - # creating official distributions of packages. - # This is a hack until libtool officially supports absolute path - # names for shared libraries. - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - vxworks*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; -esac -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$GXX" -_LT_AC_TAGVAR(LD, $1)="$LD" - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_POSTDEP_PREDEP($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC=$lt_save_CC -LDCXX=$LD -LD=$lt_save_LD -GCC=$lt_save_GCC -with_gnu_ldcxx=$with_gnu_ld -with_gnu_ld=$lt_save_with_gnu_ld -lt_cv_path_LDCXX=$lt_cv_path_LD -lt_cv_path_LD=$lt_save_path_LD -lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld -lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -])# AC_LIBTOOL_LANG_CXX_CONFIG - -# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) -# ------------------------------------ -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library. It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -ifelse([$1],[],[cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <> "$cfgfile" -ifelse([$1], [], -[#! $SHELL - -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# -# This file is part of GNU Libtool: -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="$SED -e 1s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -# The names of the tagged configurations supported by this script. -available_tags= - -# ### BEGIN LIBTOOL CONFIG], -[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) - -# Whether or not to disallow shared libs when runtime libs are static -allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A C compiler. -LTCC=$lt_LTCC - -# LTCC compiler flags. -LTCFLAGS=$lt_LTCFLAGS - -# A language-specific compiler. -CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) - -# Is the compiler the GNU C compiler? -with_gcc=$_LT_AC_TAGVAR(GCC, $1) - -# An ERE matcher. -EGREP=$lt_EGREP - -# The linker used to build libraries. -LD=$lt_[]_LT_AC_TAGVAR(LD, $1) - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$lt_STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Shared library suffix (normally ".so"). -shrext_cmds='$shrext_cmds' - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -pic_mode=$pic_mode - -# What is the maximum length of a command? -max_cmd_len=$lt_cv_sys_max_cmd_len - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) - -# Commands used to build and install a shared archive. -archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) -archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to build a loadable module (assumed same as above if empty) -module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) -module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Dependencies to place before the objects being linked to create a -# shared library. -predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) - -# Dependencies to place before the objects being linked to create a -# shared library. -predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) - -# If ld is used when linking, flag to hardcode \$libdir into -# a binary during linking. This must work even if \$libdir does -# not exist. -hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) - -# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) - -# Set to yes if building a shared library automatically hardcodes DIR into the library -# and all subsequent libraries and executables linked against it. -hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" - -# Set to yes if exported symbols are required. -always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) - -# The commands to list exported symbols. -export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) - -# Symbols that must always be exported. -include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) - -ifelse([$1],[], -[# ### END LIBTOOL CONFIG], -[# ### END LIBTOOL TAG CONFIG: $tagname]) - -__EOF__ - -ifelse([$1],[], [ - case $host_os in - aix3*) - cat <<\EOF >> "$cfgfile" - -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || \ - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -]) -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` - if test -f "$ltmain_in"; then - test -f Makefile && make "$ltmain" - fi -fi -])# AC_LIBTOOL_CONFIG - - -# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl - -_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - -if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - - AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], - lt_cv_prog_compiler_rtti_exceptions, - [-fno-rtti -fno-exceptions], [], - [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) -fi -])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI - - -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([AC_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) -# Check for command to grab the raw symbol name followed by C symbol from nm. -AC_MSG_CHECKING([command to parse $NM output from $compiler object]) -AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], -[ -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[[BCDEGRST]]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) # Its linker distinguishes data from code symbols - if test "$host_cpu" = ia64; then - symcode='[[ABCDEGRST]]' - fi - lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -linux*) - if test "$host_cpu" = ia64; then - symcode='[[ABCDGIRSTW]]' - lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - fi - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris*) - symcode='[[BDRT]]' - ;; -sco3.2v5*) - symcode='[[DT]]' - ;; -sysv4.2uw2*) - symcode='[[DT]]' - ;; -sysv5* | sco5v6* | unixware* | OpenUNIX*) - symcode='[[ABDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $build_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[[ABCDGIRSTW]]' ;; -esac - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. - symxfrm="\\1 $ac_symprfx\\2 \\2" - - # Write the raw and C identifiers. - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if grep ' nm_test_var$' "$nlist" >/dev/null; then - if grep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[[]] = -{ -EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr_t) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_save_LIBS="$LIBS" - lt_save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then - pipe_works=yes - fi - LIBS="$lt_save_LIBS" - CFLAGS="$lt_save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD - fi - else - echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done -]) -if test -z "$lt_cv_sys_global_symbol_pipe"; then - lt_cv_sys_global_symbol_to_cdecl= -fi -if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - AC_MSG_RESULT(failed) -else - AC_MSG_RESULT(ok) -fi -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE - - -# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) -# --------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], -[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= - -AC_MSG_CHECKING([for $compiler option to produce PIC]) - ifelse([$1],[CXX],[ - # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - mingw* | os2* | pw32*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - interix3*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - case $host_os in - aix4* | aix5*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68*) - # Green Hills C++ Compiler - # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - darwin*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - case $cc_basename in - xlc*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - ghcx*) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - freebsd* | kfreebsd*-gnu | dragonfly*) - # FreeBSD uses GNU C++ - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - fi - ;; - aCC*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - ;; - *) - ;; - esac - ;; - interix*) - # This is c89, which is MS Visual C++ (no shared libs) - # Anyone wants to do a port? - ;; - irix5* | irix6* | nonstopux*) - case $cc_basename in - CC*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - # CC pic flag -KPIC is the default. - ;; - *) - ;; - esac - ;; - linux*) - case $cc_basename in - KCC*) - # KAI C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - icpc* | ecpc*) - # Intel C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - pgCC*) - # Portland Group C++ compiler. - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - cxx*) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd*) - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - ;; - RCC*) - # Rational C++ 2.4.1 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - cxx*) - # Digital/Compaq C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - solaris*) - case $cc_basename in - CC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - lcc*) - # Lucid - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - *) - ;; - esac - ;; - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - case $cc_basename in - CC*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - esac - ;; - vxworks*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -], -[ - if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - - interix3*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - enable_shared=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - darwin*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - case $cc_basename in - xlc*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - ;; - esac - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - hpux9* | hpux10* | hpux11*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC (with -KPIC) is the default. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - newsos6) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - linux*) - case $cc_basename in - icc* | ecc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - pgcc* | pgf77* | pgf90* | pgf95*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - ccc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All Alpha code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - esac - ;; - - osf3* | osf4* | osf5*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All OSF/1 code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - solaris*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - case $cc_basename in - f77* | f90* | f95*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; - *) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; - esac - ;; - - sunos4*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - unicos*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - - uts4*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then - AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], - _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), - [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], - [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in - "" | " "*) ;; - *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; - esac], - [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) -fi -case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: - *djgpp*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" - ;; -esac - -# -# Check to make sure the static flag actually works. -# -wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\" -AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], - _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), - $lt_tmp_static_flag, - [], - [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) -]) - - -# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) -# ------------------------------------ -# See if the linker supports building shared libraries. -AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], -[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -ifelse([$1],[CXX],[ - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - case $host_os in - aix4* | aix5*) - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - fi - ;; - pw32*) - _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" - ;; - cygwin* | mingw*) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - ;; - *) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; - esac -],[ - runpath_var= - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)= - _LT_AC_TAGVAR(archive_expsym_cmds, $1)= - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_minus_L, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown - _LT_AC_TAGVAR(hardcode_automatic, $1)=no - _LT_AC_TAGVAR(module_cmds, $1)= - _LT_AC_TAGVAR(module_expsym_cmds, $1)= - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - _LT_AC_TAGVAR(include_expsyms, $1)= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. - _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - extract_expsyms_cmds= - # Just being paranoid about ensuring that cc_basename is set. - _LT_CC_BASENAME([$compiler]) - case $host_os in - cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) - with_gnu_ld=yes - ;; - openbsd*) - with_gnu_ld=no - ;; - esac - - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - supports_anon_versioning=no - case `$LD -v 2>/dev/null` in - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 - *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... - *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... - *\ 2.11.*) ;; # other 2.11 versions - *) supports_anon_versioning=yes ;; - esac - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can't use - # them. - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - interix3*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - - linux*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - tmp_addflag= - case $cc_basename,$host_cpu in - pgcc*) # Portland Group C compiler - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; - pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' - tmp_addflag=' $pic_flag -Mnomain' ;; - ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 - tmp_addflag=' -i_dynamic' ;; - efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 - tmp_addflag=' -i_dynamic -nofor_main' ;; - ifc* | ifort*) # Intel Fortran compiler - tmp_addflag=' -nofor_main' ;; - esac - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - - if test $supports_anon_versioning = yes; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - $echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' - fi - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris*) - if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not -*** reliably create shared libraries on SCO systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.16.91.0.3 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - ;; - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - sunos4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - - if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no; then - runpath_var= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - fi - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then - aix_use_runtimelinking=yes - break - fi - done - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GCC" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - ;; - esac - shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' - fi - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds its shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - # see comment about different semantics on the GNU ld section - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - bsdi[[45]]*) - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" - # FIXME: Setting linknames here is a bad hack. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' - # FIXME: Should let the user specify the lib program. - _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' - _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - ;; - - darwin* | rhapsody*) - case $host_os in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' - ;; - esac - fi - ;; - esac - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - if test "$GCC" = yes ; then - output_verbose_link_cmd='echo' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - case $cc_basename in - xlc*) - output_verbose_link_cmd='echo' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - ;; - *) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - fi - ;; - - dgux*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - freebsd1*) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu | dragonfly*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - hpux9*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - - hpux10*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - fi - if test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - fi - ;; - - hpux11*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - case $host_cpu in - hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - else - case $host_cpu in - hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - fi - if test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - newsos6) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - openbsd*) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - else - case $host_os in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~$rm $lib.exp' - - # Both c and cxx compiler support -rpath directly - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - solaris*) - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' - if test "$GCC" = yes; then - wlarc='${wl}' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' - else - wlarc='' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The compiler driver will combine linker options so we - # cannot just pass the convience library names through - # without $wl, iff we do not link with $LD. - # Luckily, gcc supports the same syntax we need for Sun Studio. - # Supported since Solaris 2.6 (maybe 2.5.1?) - case $wlarc in - '') - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; - *) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;; - esac ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4) - case $host_vendor in - sni) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - ;; - motorola) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4.3*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - fi - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*) - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' - _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var='LD_RUN_PATH' - - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - uts4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -# -# Do we need to explicitly link libc? -# -case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in -x|xyes) - # Assume -lc should be added - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - - if test "$enable_shared" = yes && test "$GCC" = yes; then - case $_LT_AC_TAGVAR(archive_cmds, $1) in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - $rm conftest* - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile) 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) - then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - else - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - fi - _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $rm conftest* - AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) - ;; - esac - fi - ;; -esac -])# AC_LIBTOOL_PROG_LD_SHLIBS - - -# _LT_AC_FILE_LTDLL_C -# ------------------- -# Be careful that the start marker always follows a newline. -AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ -])# _LT_AC_FILE_LTDLL_C - - -# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) -# --------------------------------- -AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) - - -# old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) - -AC_DEFUN([LT_AC_PROG_GCJ], -[AC_CHECK_TOOL(GCJ, gcj, no) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS) -]) - -AC_DEFUN([LT_AC_PROG_RC], -[AC_CHECK_TOOL(RC, windres, no) -]) - -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for lt_ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then - lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" - fi - done - done -done -lt_ac_max=0 -lt_ac_count=0 -# Add /usr/xpg4/bin/sed as it is typically found on Solaris -# along with /bin/sed that truncates output. -for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f $lt_ac_sed && continue - cat /dev/null > conftest.in - lt_ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >conftest.in - # Check for GNU sed and select it if it is found. - if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then - lt_cv_path_SED=$lt_ac_sed - break - fi - while true; do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo >>conftest.nl - $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break - cmp -s conftest.out conftest.nl || break - # 10000 chars as input seems more than enough - test $lt_ac_count -gt 10 && break - lt_ac_count=`expr $lt_ac_count + 1` - if test $lt_ac_count -gt $lt_ac_max; then - lt_ac_max=$lt_ac_count - lt_cv_path_SED=$lt_ac_sed - fi - done -done -]) -SED=$lt_cv_path_SED -AC_MSG_RESULT([$SED]) -]) diff --git a/db/dist/aclocal/libtool.m4 b/db/dist/aclocal/libtool.m4 new file mode 100644 index 000000000..0f53cb592 --- /dev/null +++ b/db/dist/aclocal/libtool.m4 @@ -0,0 +1,6397 @@ +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 1996 +## +## This file is free software; the Free Software Foundation gives +## unlimited permission to copy and/or distribute it, with or without +## modifications, as long as this notice is preserved. + +# serial 48 AC_PROG_LIBTOOL + + +# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ----------------------------------------------------------- +# If this macro is not defined by Autoconf, define it here. +m4_ifdef([AC_PROVIDE_IFELSE], + [], + [m4_define([AC_PROVIDE_IFELSE], + [m4_ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + + +# AC_PROG_LIBTOOL +# --------------- +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX + ])]) +dnl And a similar setup for Fortran 77 support + AC_PROVIDE_IFELSE([AC_PROG_F77], + [AC_LIBTOOL_F77], + [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], + defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) +])])# AC_PROG_LIBTOOL + + +# _AC_PROG_LIBTOOL +# ---------------- +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Prevent multiple expansion +define([AC_PROG_LIBTOOL], []) +])# _AC_PROG_LIBTOOL + + +# AC_LIBTOOL_SETUP +# ---------------- +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.50)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl + +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +AC_LIBTOOL_SYS_MAX_CMD_LEN +AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +AC_LIBTOOL_OBJDIR + +AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +_LT_AC_PROG_ECHO_BACKSLASH + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] + +# Same as above, but do not quote variable references. +[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Constants: +rm="rm -f" + +# Global variables: +default_ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a +ltmain="$ac_aux_dir/ltmain.sh" +ofile="$default_ofile" +with_gnu_ld="$lt_cv_prog_gnu_ld" + +AC_CHECK_TOOL(AR, ar, false) +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$NM" && NM=nm +test -z "$SED" && SED=sed +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$ac_objext" && ac_objext=o + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi + +_LT_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +enable_win32_dll=yes, enable_win32_dll=no) + +AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +AC_ARG_WITH([pic], + [AC_HELP_STRING([--with-pic], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [pic_mode="$withval"], + [pic_mode=default]) +test -z "$pic_mode" && pic_mode=default + +# Use C for the default configuration in the libtool script +tagname= +AC_LIBTOOL_LANG_C_CONFIG +_LT_AC_TAGCONFIG +])# AC_LIBTOOL_SETUP + + +# _LT_AC_SYS_COMPILER +# ------------------- +AC_DEFUN([_LT_AC_SYS_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_AC_SYS_COMPILER + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +AC_DEFUN([_LT_CC_BASENAME], +[for cc_temp in $1""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +]) + + +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +AC_DEFUN([_LT_COMPILER_BOILERPLATE], +[ac_outfile=conftest.$ac_objext +printf "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$rm conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE +# ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +AC_DEFUN([_LT_LINKER_BOILERPLATE], +[ac_outfile=conftest.$ac_objext +printf "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$rm conftest* +])# _LT_LINKER_BOILERPLATE + + +# _LT_AC_SYS_LIBPATH_AIX +# ---------------------- +# Links a minimal program and checks the executable +# for the system default hardcoded library path. In most cases, +# this is /usr/lib:/lib, but when the MPI compilers are used +# the location of the communication and MPI libs are included too. +# If we don't find anything, use the default library path according +# to the aix ld manual. +AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], +[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi],[]) +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi +])# _LT_AC_SYS_LIBPATH_AIX + + +# _LT_AC_SHELL_INIT(ARG) +# ---------------------- +AC_DEFUN([_LT_AC_SHELL_INIT], +[ifdef([AC_DIVERSION_NOTICE], + [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], + [AC_DIVERT_PUSH(NOTICE)]) +$1 +AC_DIVERT_POP +])# _LT_AC_SHELL_INIT + + +# _LT_AC_PROG_ECHO_BACKSLASH +# -------------------------- +# Add some code to the start of the generated configure script which +# will find an echo command which doesn't interpret backslashes. +AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], +[_LT_AC_SHELL_INIT([ +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` + ;; +esac + +echo=${ECHO-echo} +if test "X[$]1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X[$]1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} +fi + +if test "X[$]1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null 2>&1 && unset CDPATH + +if test -z "$ECHO"; then +if test "X${echo_test_string+set}" != Xset; then +# find a string as large as possible, as long as the shell can cope with it + for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do + # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... + if (echo_test_string=`eval $cmd`) 2>/dev/null && + echo_test_string=`eval $cmd` && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null + then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for dir in $PATH /usr/ucb; do + IFS="$lt_save_ifs" + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$lt_save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running configure again with it. + ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL [$]0 --fallback-echo" + elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL [$]0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null + then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "[$]0"'; then + echo_test_string=`eval $prev` + export echo_test_string + exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi +fi + +# Copy echo and quote the copy suitably for passing to libtool from +# the Makefile, instead of quoting the original, which is used later. +ECHO=$echo +if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then + ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +fi + +AC_SUBST(ECHO) +])])# _LT_AC_PROG_ECHO_BACKSLASH + + +# _LT_AC_LOCK +# ----------- +AC_DEFUN([_LT_AC_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +sparc*-*solaris*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) LD="${LD-ld} -m elf64_sparc" ;; + *) LD="${LD-ld} -64" ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; + ]) +esac + +need_locks="$enable_libtool_lock" + +])# _LT_AC_LOCK + + +# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], +[AC_REQUIRE([LT_AC_PROG_SED]) +AC_CACHE_CHECK([$1], [$2], + [$2=no + ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + fi + $rm conftest* +]) + +if test x"[$]$2" = xyes; then + ifelse([$5], , :, [$5]) +else + ifelse([$6], , :, [$6]) +fi +])# AC_LIBTOOL_COMPILER_OPTION + + +# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ------------------------------------------------------------ +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], +[AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $3" + printf "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + else + $2=yes + fi + fi + $rm conftest* + LDFLAGS="$save_LDFLAGS" +]) + +if test x"[$]$2" = xyes; then + ifelse([$4], , :, [$4]) +else + ifelse([$5], , :, [$5]) +fi +])# AC_LIBTOOL_LINKER_OPTION + + +# AC_LIBTOOL_SYS_MAX_CMD_LEN +# -------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], +[# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + teststring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \ + = "XX$teststring") >/dev/null 2>&1 && + new_result=`expr "X$teststring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + teststring= + # Add a significant safety factor because C++ compilers can tack on massive + # amounts of additional arguments before passing them to the linker. + # It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + ;; + esac +]) +if test -n $lt_cv_sys_max_cmd_len ; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +])# AC_LIBTOOL_SYS_MAX_CMD_LEN + + +# _LT_AC_CHECK_DLFCN +# ------------------ +AC_DEFUN([_LT_AC_CHECK_DLFCN], +[AC_CHECK_HEADERS(dlfcn.h)dnl +])# _LT_AC_CHECK_DLFCN + + +# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# --------------------------------------------------------------------- +AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "$cross_compiling" = yes; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + else + puts (dlerror ()); + + exit (status); +}] +EOF + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_dlunknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_AC_TRY_DLOPEN_SELF + + +# AC_LIBTOOL_DLOPEN_SELF +# ---------------------- +AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen="shl_load"], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen="dlopen"], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test "x$lt_cv_dlopen_self" = xyes; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +])# AC_LIBTOOL_DLOPEN_SELF + + +# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) +# --------------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler +AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . 2>&AS_MESSAGE_LOG_FD + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* +]) +])# AC_LIBTOOL_PROG_CC_C_O + + +# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) +# ----------------------------------------- +# Check to see if we can do hard links to lock some files if needed +AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], +[AC_REQUIRE([_LT_AC_LOCK])dnl + +hard_links="nottested" +if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test "$hard_links" = no; then + AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS + + +# AC_LIBTOOL_OBJDIR +# ----------------- +AC_DEFUN([AC_LIBTOOL_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +])# AC_LIBTOOL_OBJDIR + + +# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) +# ---------------------------------------------- +# Check hardcoding attributes. +AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_AC_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ + test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \ + test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + + # We can hardcode non-existant directories. + if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_AC_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_AC_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_AC_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi +])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH + + +# AC_LIBTOOL_SYS_LIB_STRIP +# ------------------------ +AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], +[striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) +fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +])# AC_LIBTOOL_SYS_LIB_STRIP + + +# AC_LIBTOOL_SYS_DYNAMIC_LINKER +# ----------------------------- +# PORTME Fill in your ld.so characteristics +AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], +[AC_MSG_CHECKING([dynamic linker characteristics]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[[01]] | aix4.[[01]].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[[45]]*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[[123]]*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[[01]]* | freebsdelf3.[[01]]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ + freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + freebsd*) # from 4.6 on + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +interix3*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + sys_lib_dlsearch_path_spec="/usr/lib" + need_lib_prefix=no + # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. + case $host_os in + openbsd3.3 | openbsd3.3.*) need_version=yes ;; + *) need_version=no ;; + esac + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[[89]] | openbsd2.[[89]].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=freebsd-elf + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + if test "$with_gnu_ld" = yes; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + shlibpath_overrides_runpath=no + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + shlibpath_overrides_runpath=yes + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test "$dynamic_linker" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi +])# AC_LIBTOOL_SYS_DYNAMIC_LINKER + + +# _LT_AC_TAGCONFIG +# ---------------- +AC_DEFUN([_LT_AC_TAGCONFIG], +[AC_ARG_WITH([tags], + [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], + [include additional configurations @<:@automatic@:>@])], + [tagnames="$withval"]) + +if test -f "$ltmain" && test -n "$tagnames"; then + if test ! -f "${ofile}"; then + AC_MSG_WARN([output file `$ofile' does not exist]) + fi + + if test -z "$LTCC"; then + eval "`$SHELL ${ofile} --config | grep '^LTCC='`" + if test -z "$LTCC"; then + AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) + else + AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) + fi + fi + if test -z "$LTCFLAGS"; then + eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`" + fi + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for tagname in $tagnames; do + IFS="$lt_save_ifs" + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in + "") ;; + *) AC_MSG_ERROR([invalid tag name: $tagname]) + ;; + esac + + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null + then + AC_MSG_ERROR([tag name \"$tagname\" already exists]) + fi + + # Update the list of available tags. + if test -n "$tagname"; then + echo appending configuration tag \"$tagname\" to $ofile + + case $tagname in + CXX) + if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_LIBTOOL_LANG_CXX_CONFIG + else + tagname="" + fi + ;; + + F77) + if test -n "$F77" && test "X$F77" != "Xno"; then + AC_LIBTOOL_LANG_F77_CONFIG + else + tagname="" + fi + ;; + + GCJ) + if test -n "$GCJ" && test "X$GCJ" != "Xno"; then + AC_LIBTOOL_LANG_GCJ_CONFIG + else + tagname="" + fi + ;; + + RC) + AC_LIBTOOL_LANG_RC_CONFIG + ;; + + *) + AC_MSG_ERROR([Unsupported tag name: $tagname]) + ;; + esac + + # Append the new tag name to the list of available tags. + if test -n "$tagname" ; then + available_tags="$available_tags $tagname" + fi + fi + done + IFS="$lt_save_ifs" + + # Now substitute the updated list of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then + mv "${ofile}T" "$ofile" + chmod +x "$ofile" + else + rm -f "${ofile}T" + AC_MSG_ERROR([unable to update list of available tagged configurations.]) + fi +fi +])# _LT_AC_TAGCONFIG + + +# AC_LIBTOOL_DLOPEN +# ----------------- +# enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], + [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_DLOPEN + + +# AC_LIBTOOL_WIN32_DLL +# -------------------- +# declare package support for building win32 DLLs +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_WIN32_DLL + + +# AC_ENABLE_SHARED([DEFAULT]) +# --------------------------- +# implement the --enable-shared flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([shared], + [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_shared=]AC_ENABLE_SHARED_DEFAULT) +])# AC_ENABLE_SHARED + + +# AC_DISABLE_SHARED +# ----------------- +# set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no) +])# AC_DISABLE_SHARED + + +# AC_ENABLE_STATIC([DEFAULT]) +# --------------------------- +# implement the --enable-static flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([static], + [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_static=]AC_ENABLE_STATIC_DEFAULT) +])# AC_ENABLE_STATIC + + +# AC_DISABLE_STATIC +# ----------------- +# set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no) +])# AC_DISABLE_STATIC + + +# AC_ENABLE_FAST_INSTALL([DEFAULT]) +# --------------------------------- +# implement the --enable-fast-install flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([fast-install], + [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) +])# AC_ENABLE_FAST_INSTALL + + +# AC_DISABLE_FAST_INSTALL +# ----------------------- +# set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no) +])# AC_DISABLE_FAST_INSTALL + + +# AC_LIBTOOL_PICMODE([MODE]) +# -------------------------- +# implement the --with-pic flag +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default) +])# AC_LIBTOOL_PICMODE + + +# AC_PROG_EGREP +# ------------- +# This is predefined starting with Autoconf 2.54, so this conditional +# definition can be removed once we require Autoconf 2.54 or later. +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], +[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], + [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi]) + EGREP=$ac_cv_prog_egrep + AC_SUBST([EGREP]) +])]) + + +# AC_PATH_TOOL_PREFIX +# ------------------- +# find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +])# AC_PATH_TOOL_PREFIX + + +# AC_PATH_MAGIC +# ------------- +# find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# AC_PATH_MAGIC + + +# AC_PROG_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH([gnu-ld], + [AC_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test "$withval" = no || with_gnu_ld=yes], + [with_gnu_ld=no]) +AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix3*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +nto-qnx*) + lt_cv_deplibs_check_method=unknown + ;; + +openbsd*) + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown +])# AC_DEPLIBS_CHECK_METHOD + + +# AC_PROG_NM +# ---------- +# find the pathname to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_nm_to_check="${ac_tool_prefix}nm" + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/$lt_tmp_nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS="$lt_save_ifs" + done + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +])# AC_PROG_NM + + +# AC_CHECK_LIBM +# ------------- +# check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM="-lm") + ;; +esac +])# AC_CHECK_LIBM + + +# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl convenience library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-convenience to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# it is assumed to be `libltdl'. LIBLTDL will be prefixed with +# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/' +# (note the single quotes!). If your package is not flat and you're not +# using automake, define top_builddir and top_srcdir appropriately in +# the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_CONVENIENCE + + +# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl installable library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-install to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# and an installed libltdl is not found, it is assumed to be `libltdl'. +# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and top_srcdir +# appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, lt_dlinit, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + LTDLINCL= + fi + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_INSTALLABLE + + +# AC_LIBTOOL_CXX +# -------------- +# enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], +[AC_REQUIRE([_LT_AC_LANG_CXX]) +])# AC_LIBTOOL_CXX + + +# _LT_AC_LANG_CXX +# --------------- +AC_DEFUN([_LT_AC_LANG_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) +])# _LT_AC_LANG_CXX + +# _LT_AC_PROG_CXXCPP +# ------------------ +AC_DEFUN([_LT_AC_PROG_CXXCPP], +[ +AC_REQUIRE([AC_PROG_CXX]) +if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_PROG_CXXCPP +fi +])# _LT_AC_PROG_CXXCPP + +# AC_LIBTOOL_F77 +# -------------- +# enable support for Fortran 77 libraries +AC_DEFUN([AC_LIBTOOL_F77], +[AC_REQUIRE([_LT_AC_LANG_F77]) +])# AC_LIBTOOL_F77 + + +# _LT_AC_LANG_F77 +# --------------- +AC_DEFUN([_LT_AC_LANG_F77], +[AC_REQUIRE([AC_PROG_F77]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) +])# _LT_AC_LANG_F77 + + +# AC_LIBTOOL_GCJ +# -------------- +# enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ], +[AC_REQUIRE([_LT_AC_LANG_GCJ]) +])# AC_LIBTOOL_GCJ + + +# _LT_AC_LANG_GCJ +# --------------- +AC_DEFUN([_LT_AC_LANG_GCJ], +[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) +])# _LT_AC_LANG_GCJ + + +# AC_LIBTOOL_RC +# ------------- +# enable support for Windows resource files +AC_DEFUN([AC_LIBTOOL_RC], +[AC_REQUIRE([LT_AC_PROG_RC]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) +])# AC_LIBTOOL_RC + + +# AC_LIBTOOL_LANG_C_CONFIG +# ------------------------ +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) +AC_DEFUN([_LT_AC_LANG_C_CONFIG], +[lt_save_CC="$CC" +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}\n' + +_LT_AC_SYS_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) +AC_LIBTOOL_SYS_LIB_STRIP +AC_LIBTOOL_DLOPEN_SELF + +# Report which library types will actually be built +AC_MSG_CHECKING([if libtool supports shared libraries]) +AC_MSG_RESULT([$can_build_shared]) + +AC_MSG_CHECKING([whether to build shared libraries]) +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case $host_os in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4* | aix5*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; +esac +AC_MSG_RESULT([$enable_shared]) + +AC_MSG_CHECKING([whether to build static libraries]) +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes +AC_MSG_RESULT([$enable_static]) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_C_CONFIG + + +# AC_LIBTOOL_LANG_CXX_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) +AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], +[AC_LANG_PUSH(C++) +AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) + +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_AC_TAGVAR(allow_undefined_flag, $1)= +_LT_AC_TAGVAR(always_export_symbols, $1)=no +_LT_AC_TAGVAR(archive_expsym_cmds, $1)= +_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_direct, $1)=no +_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +_LT_AC_TAGVAR(hardcode_minus_L, $1)=no +_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_AC_TAGVAR(hardcode_automatic, $1)=no +_LT_AC_TAGVAR(module_cmds, $1)= +_LT_AC_TAGVAR(module_expsym_cmds, $1)= +_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_AC_TAGVAR(no_undefined_flag, $1)= +_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= +_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Dependencies to place before and after the object being linked: +_LT_AC_TAGVAR(predep_objects, $1)= +_LT_AC_TAGVAR(postdep_objects, $1)= +_LT_AC_TAGVAR(predeps, $1)= +_LT_AC_TAGVAR(postdeps, $1)= +_LT_AC_TAGVAR(compiler_lib_search_path, $1)= + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_AC_SYS_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_LD=$LD +lt_save_GCC=$GCC +GCC=$GXX +lt_save_with_gnu_ld=$with_gnu_ld +lt_save_path_LD=$lt_cv_path_LD +if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx +else + $as_unset lt_cv_prog_gnu_ld +fi +if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX +else + $as_unset lt_cv_path_LD +fi +test -z "${LDCXX+set}" || LD=$LDCXX +CC=${CXX-"c++"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) + +# We don't want -fno-exception wen compiling C++ code, so set the +# no_builtin_flag separately +if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +else + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +fi + +if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + AC_PROG_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + +else + GXX=no + with_gnu_ld=no + wlarc= +fi + +# PORTME: fill in a description of your system's C++ link characteristics +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +_LT_AC_TAGVAR(ld_shlibs, $1)=yes +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GXX" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + darwin* | rhapsody*) + case $host_os in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' + ;; + esac + fi + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GXX" = yes ; then + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + freebsd[[12]]*) + # C++ shared libraries reported to be fairly broken before switch to ELF + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + freebsd-elf*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + freebsd* | kfreebsd*-gnu | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + ;; + gnu*) + ;; + hpux9*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[[-]]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + ;; + *) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + interix3*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + fi + fi + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + linux*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc*) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + pgCC*) + # Portland Group C++ compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + ;; + cxx*) + # Compaq C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + m88k*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + openbsd2*) + # C++ shared libraries are fairly broken + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + openbsd*) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + fi + output_verbose_link_cmd='echo' + ;; + osf3*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~ + $rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + psos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. We must also pass each convience library through + # to the system linker between allextract/defaultextract. + # The C++ compiler will combine linker options so we + # cannot just pass the convience library names through + # without $wl. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' + ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + output_verbose_link_cmd='echo' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | grep -v '^2\.7' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + fi + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + # So that behaviour is only enabled if SCOABSPATH is set to a + # non-empty value in the environment. Most likely only useful for + # creating official distributions of packages. + # This is a hack until libtool officially supports absolute path + # names for shared libraries. + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + vxworks*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; +esac +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_AC_TAGVAR(GCC, $1)="$GXX" +_LT_AC_TAGVAR(LD, $1)="$LD" + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +AC_LIBTOOL_POSTDEP_PREDEP($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC=$lt_save_CC +LDCXX=$LD +LD=$lt_save_LD +GCC=$lt_save_GCC +with_gnu_ldcxx=$with_gnu_ld +with_gnu_ld=$lt_save_with_gnu_ld +lt_cv_path_LDCXX=$lt_cv_path_LD +lt_cv_path_LD=$lt_save_path_LD +lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld +lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +])# AC_LIBTOOL_LANG_CXX_CONFIG + +# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) +# ------------------------------------ +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +ifelse([$1],[],[cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <> "$cfgfile" +ifelse([$1], [], +[#! $SHELL + +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 1996 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e 1s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# The names of the tagged configurations supported by this script. +available_tags= + +# ### BEGIN LIBTOOL CONFIG], +[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# LTCC compiler flags. +LTCFLAGS=$lt_LTCFLAGS + +# A language-specific compiler. +CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) + +# Is the compiler the GNU C compiler? +with_gcc=$_LT_AC_TAGVAR(GCC, $1) + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_[]_LT_AC_TAGVAR(LD, $1) + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext_cmds='$shrext_cmds' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) + +# Commands used to build and install a shared archive. +archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) +archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) +module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" + +# Set to yes if exported symbols are required. +always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) + +# The commands to list exported symbols. +export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) + +# Symbols that must always be exported. +include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) + +ifelse([$1],[], +[# ### END LIBTOOL CONFIG], +[# ### END LIBTOOL TAG CONFIG: $tagname]) + +__EOF__ + +ifelse([$1],[], [ + case $host_os in + aix3*) + cat <<\EOF >> "$cfgfile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || \ + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +]) +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi +])# AC_LIBTOOL_CONFIG + + +# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl + +_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + + AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI + + +# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +# --------------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], +[AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([AC_PROG_NM]) +AC_REQUIRE([AC_OBJEXT]) +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Transform an extracted symbol line into a proper C declaration +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) # Its linker distinguishes data from code symbols + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + ;; +linux*) + if test "$host_cpu" = ia64; then + symcode='[[ABCDGIRSTW]]' + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + fi + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris*) + symcode='[[BDRT]]' + ;; +sco3.2v5*) + symcode='[[DT]]' + ;; +sysv4.2uw2*) + symcode='[[DT]]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[[ABDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if grep ' nm_test_var$' "$nlist" >/dev/null; then + if grep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[[]] = +{ +EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_save_LIBS="$LIBS" + lt_save_CFLAGS="$CFLAGS" + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS="$lt_save_LIBS" + CFLAGS="$lt_save_CFLAGS" + else + echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD + fi + else + echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD + cat conftest.$ac_ext >&5 + fi + rm -f conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done +]) +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + AC_MSG_RESULT(failed) +else + AC_MSG_RESULT(ok) +fi +]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE + + +# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) +# --------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], +[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= + +AC_MSG_CHECKING([for $compiler option to produce PIC]) + ifelse([$1],[CXX],[ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | os2* | pw32*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + interix3*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | kfreebsd*-gnu | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + icpc* | ecpc*) + # Intel C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC*) + # Portland Group C++ compiler. + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + interix3*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + newsos6) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + linux*) + case $cc_basename in + icc* | ecc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgcc* | pgf77* | pgf90* | pgf95*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then + AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], + _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), + [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" + ;; +esac + +# +# Check to make sure the static flag actually works. +# +wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\" +AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) +]) + + +# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) +# ------------------------------------ +# See if the linker supports building shared libraries. +AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], +[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +ifelse([$1],[CXX],[ + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + case $host_os in + aix4* | aix5*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + ;; + *) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac +],[ + runpath_var= + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)= + _LT_AC_TAGVAR(archive_expsym_cmds, $1)= + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_minus_L, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown + _LT_AC_TAGVAR(hardcode_automatic, $1)=no + _LT_AC_TAGVAR(module_cmds, $1)= + _LT_AC_TAGVAR(module_expsym_cmds, $1)= + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_AC_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + # Just being paranoid about ensuring that cc_basename is set. + _LT_CC_BASENAME([$compiler]) + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + interix3*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + linux*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + tmp_addflag= + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + esac + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test $supports_anon_versioning = yes; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + $echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no; then + runpath_var= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GCC" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + # see comment about different semantics on the GNU ld section + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + bsdi[[45]]*) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' + _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + darwin* | rhapsody*) + case $host_os in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' + ;; + esac + fi + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + if test "$GCC" = yes ; then + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + freebsd1*) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu | dragonfly*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + fi + ;; + + hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + openbsd*) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' + if test "$GCC" = yes; then + wlarc='${wl}' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + wlarc='' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine linker options so we + # cannot just pass the convience library names through + # without $wl, iff we do not link with $LD. + # Luckily, gcc supports the same syntax we need for Sun Studio. + # Supported since Solaris 2.6 (maybe 2.5.1?) + case $wlarc in + '') + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; + *) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;; + esac ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +# +# Do we need to explicitly link libc? +# +case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_AC_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_MSG_CHECKING([whether -lc should be explicitly linked in]) + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) + then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + else + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) + ;; + esac + fi + ;; +esac +])# AC_LIBTOOL_PROG_LD_SHLIBS + + +# _LT_AC_FILE_LTDLL_C +# ------------------- +# Be careful that the start marker always follows a newline. +AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ +])# _LT_AC_FILE_LTDLL_C + + +# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) +# --------------------------------- +AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) + + +# old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +# This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL]) + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) + +AC_DEFUN([LT_AC_PROG_RC], +[AC_CHECK_TOOL(RC, windres, no) +]) + +############################################################ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +############################################################ +# LT_AC_PROG_SED +# -------------- +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +AC_DEFUN([LT_AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && continue + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_MSG_RESULT([$SED]) +]) diff --git a/db/dist/aclocal/mutex.ac b/db/dist/aclocal/mutex.ac deleted file mode 100644 index 31b3d2942..000000000 --- a/db/dist/aclocal/mutex.ac +++ /dev/null @@ -1,746 +0,0 @@ -# $Id: mutex.ac,v 12.18 2006/06/20 20:31:01 bostic Exp $ - -# POSIX pthreads tests: inter-process safe and intra-process only. -AC_DEFUN(AM_PTHREADS_SHARED, [ -AC_TRY_RUN([ -#include -main() { - pthread_cond_t cond; - pthread_mutex_t mutex; - pthread_condattr_t condattr; - pthread_mutexattr_t mutexattr; - exit ( - pthread_condattr_init(&condattr) || - pthread_condattr_setpshared(&condattr, PTHREAD_PROCESS_SHARED) || - pthread_mutexattr_init(&mutexattr) || - pthread_mutexattr_setpshared(&mutexattr, PTHREAD_PROCESS_SHARED) || - pthread_cond_init(&cond, &condattr) || - pthread_mutex_init(&mutex, &mutexattr) || - pthread_mutex_lock(&mutex) || - pthread_mutex_unlock(&mutex) || - pthread_mutex_destroy(&mutex) || - pthread_cond_destroy(&cond) || - pthread_condattr_destroy(&condattr) || - pthread_mutexattr_destroy(&mutexattr)); -}], [db_cv_mutex="$1"],, -AC_TRY_LINK([ -#include ],[ - pthread_cond_t cond; - pthread_mutex_t mutex; - pthread_condattr_t condattr; - pthread_mutexattr_t mutexattr; - exit ( - pthread_condattr_init(&condattr) || - pthread_condattr_setpshared(&condattr, PTHREAD_PROCESS_SHARED) || - pthread_mutexattr_init(&mutexattr) || - pthread_mutexattr_setpshared(&mutexattr, PTHREAD_PROCESS_SHARED) || - pthread_cond_init(&cond, &condattr) || - pthread_mutex_init(&mutex, &mutexattr) || - pthread_mutex_lock(&mutex) || - pthread_mutex_unlock(&mutex) || - pthread_mutex_destroy(&mutex) || - pthread_cond_destroy(&cond) || - pthread_condattr_destroy(&condattr) || - pthread_mutexattr_destroy(&mutexattr)); -], [db_cv_mutex="$1"]))]) -AC_DEFUN(AM_PTHREADS_PRIVATE, [ -AC_TRY_RUN([ -#include -main() { - pthread_cond_t cond; - pthread_mutex_t mutex; - pthread_condattr_t condattr; - pthread_mutexattr_t mutexattr; - exit ( - pthread_condattr_init(&condattr) || - pthread_mutexattr_init(&mutexattr) || - pthread_cond_init(&cond, &condattr) || - pthread_mutex_init(&mutex, &mutexattr) || - pthread_mutex_lock(&mutex) || - pthread_mutex_unlock(&mutex) || - pthread_mutex_destroy(&mutex) || - pthread_cond_destroy(&cond) || - pthread_condattr_destroy(&condattr) || - pthread_mutexattr_destroy(&mutexattr)); -}], [db_cv_mutex="$1"],, -AC_TRY_LINK([ -#include ],[ - pthread_cond_t cond; - pthread_mutex_t mutex; - pthread_condattr_t condattr; - pthread_mutexattr_t mutexattr; - exit ( - pthread_condattr_init(&condattr) || - pthread_mutexattr_init(&mutexattr) || - pthread_cond_init(&cond, &condattr) || - pthread_mutex_init(&mutex, &mutexattr) || - pthread_mutex_lock(&mutex) || - pthread_mutex_unlock(&mutex) || - pthread_mutex_destroy(&mutex) || - pthread_cond_destroy(&cond) || - pthread_condattr_destroy(&condattr) || - pthread_mutexattr_destroy(&mutexattr)); -], [db_cv_mutex="$1"]))]) - -# Figure out mutexes for this compiler/architecture. -AC_DEFUN(AM_DEFINE_MUTEXES, [ - -# Mutexes we don't test for, but want the #defines to exist for -# other ports. -AH_TEMPLATE(HAVE_MUTEX_VMS, [Define to 1 to use VMS mutexes.]) -AH_TEMPLATE(HAVE_MUTEX_VXWORKS, [Define to 1 to use VxWorks mutexes.]) - -AC_CACHE_CHECK([for mutexes], db_cv_mutex, [ -db_cv_mutex=no - -orig_libs=$LIBS - -# User-specified POSIX or UI mutexes. -# -# There are two different reasons to specify mutexes: First, the application -# is already using one type of mutex and doesn't want to mix-and-match (for -# example, on Solaris, which has POSIX, UI and LWP mutexes). Second, the -# applications POSIX pthreads mutexes don't support inter-process locking, -# but the application wants to use them anyway (for example, some Linux and -# *BSD systems). -# -# Test for LWP threads before testing for UI/POSIX threads, we prefer them -# on Solaris, for two reasons: a bug in SunOS 5.7 causes applications to -# get pwrite, not pwrite64, if they load the C library before the appropriate -# threads library, e.g., tclsh using dlopen to load the DB library. Second, -# LWP mutexes are faster than POSIX pthread mutexes by some amount. -# -# Otherwise, test for POSIX threads before UI threads. There are Linux systems -# that support a UI compatibility mode, and applications are more likely to be -# written for POSIX threads than UI threads. -if test "$db_cv_posixmutexes" = yes; then - db_cv_mutex="posix_only"; -fi -if test "$db_cv_uimutexes" = yes; then - db_cv_mutex="ui_only"; -fi - -# User-specified Win32 mutexes (MinGW build) -if test "$db_cv_mingw" = "yes"; then - db_cv_mutex=win32/gcc -fi - -# LWP threads: _lwp_XXX -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include ],[ - static lwp_mutex_t mi = SHAREDMUTEX; - static lwp_cond_t ci = SHAREDCV; - lwp_mutex_t mutex = mi; - lwp_cond_t cond = ci; - exit ( - _lwp_mutex_lock(&mutex) || - _lwp_mutex_unlock(&mutex)); -], [db_cv_mutex="Solaris/lwp"]) -fi - -# POSIX.1 pthreads: pthread_XXX -# -# 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 - LIBS="$LIBS -lpthread" - AM_PTHREADS_SHARED("POSIX/pthreads/library") - LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "posix_only"; then - AM_PTHREADS_SHARED("POSIX/pthreads") -fi -if test "$db_cv_mutex" = "posix_only"; then - AM_PTHREADS_PRIVATE("POSIX/pthreads/private") -fi -if test "$db_cv_mutex" = "posix_only"; then - LIBS="$LIBS -lpthread" - AM_PTHREADS_PRIVATE("POSIX/pthreads/library/private") - LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = "posix_only"; then - AC_MSG_ERROR([unable to find POSIX 1003.1 mutex interfaces]) -fi - -# UI threads: thr_XXX -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -LIBS="$LIBS -lthread" -AC_TRY_LINK([ -#include -#include ],[ - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); -], [db_cv_mutex="UI/threads/library"]) -LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -AC_TRY_LINK([ -#include -#include ],[ - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); -], [db_cv_mutex="UI/threads"]) -fi -if test "$db_cv_mutex" = "ui_only"; then - AC_MSG_ERROR([unable to find UI mutex interfaces]) -fi - -# msemaphore: HPPA only -# Try HPPA before general msem test, it needs special alignment. -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include ],[ -#if defined(__hppa) - typedef msemaphore tsl_t; - msemaphore x; - msem_init(&x, 0); - msem_lock(&x, 0); - msem_unlock(&x, 0); - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="HP/msem_init"]) -fi - -# msemaphore: AIX, OSF/1 -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include -#include ],[ - typedef msemaphore tsl_t; - msemaphore x; - msem_init(&x, 0); - msem_lock(&x, 0); - msem_unlock(&x, 0); - exit(0); -], [db_cv_mutex="UNIX/msem_init"]) -fi - -# ReliantUNIX -if test "$db_cv_mutex" = no; then -LIBS="$LIBS -lmproc" -AC_TRY_LINK([ -#include ],[ - typedef spinlock_t tsl_t; - spinlock_t x; - initspin(&x, 1); - cspinlock(&x); - spinunlock(&x); -], [db_cv_mutex="ReliantUNIX/initspin"]) -LIBS="$orig_libs" -fi - -# SCO: UnixWare has threads in libthread, but OpenServer doesn't. -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__USLC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="SCO/x86/cc-assembly"]) -fi - -# abilock_t: SGI -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include ],[ - typedef abilock_t tsl_t; - abilock_t x; - init_lock(&x); - acquire_lock(&x); - release_lock(&x); -], [db_cv_mutex="SGI/init_lock"]) -fi - -# sema_t: Solaris -# The sema_XXX calls do not work on Solaris 5.5. I see no reason to ever -# turn this test on, unless we find some other platform that uses the old -# POSIX.1 interfaces. (I plan to move directly to pthreads on Solaris.) -if test "$db_cv_mutex" = DOESNT_WORK; then -AC_TRY_LINK([ -#include ],[ - typedef sema_t tsl_t; - sema_t x; - sema_init(&x, 1, USYNC_PROCESS, NULL); - sema_wait(&x); - sema_post(&x); -], [db_cv_mutex="UNIX/sema_init"]) -fi - -# _lock_try/_lock_clear: Solaris -# On Solaris systems without Pthread or UI mutex interfaces, DB uses the -# undocumented _lock_try _lock_clear function calls instead of either the -# sema_trywait(3T) or sema_wait(3T) function calls. This is because of -# problems in those interfaces in some releases of the Solaris C library. -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include ],[ - typedef lock_t tsl_t; - lock_t x; - _lock_try(&x); - _lock_clear(&x); -], [db_cv_mutex="Solaris/_lock_try"]) -fi - -# _check_lock/_clear_lock: AIX -if test "$db_cv_mutex" = no; then -AC_TRY_LINK([ -#include ],[ - int x; - _check_lock(&x,0,1); - _clear_lock(&x,0); -], [db_cv_mutex="AIX/_check_lock"]) -fi - -# _spin_lock_try/_spin_unlock: Apple/Darwin -if test "$db_cv_mutex" = no; then -AC_TRY_LINK(,[ - int x; - _spin_lock_try(&x); - _spin_unlock(&x); -], [db_cv_mutex="Darwin/_spin_lock_try"]) -fi - -# Tru64/cc -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__alpha) && defined(__DECC) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="Tru64/cc-assembly"]) -fi - -# Alpha/gcc -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__alpha) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="ALPHA/gcc-assembly"]) -fi - -# ARM/gcc: Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__arm__) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="ARM/gcc-assembly"]) -fi - -# MIPS/gcc: Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="MIPS/gcc-assembly"]) -fi - -# MIPS/gcc: Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="MIPS/gcc-assembly"]) -fi - -# PaRisc/gcc: HP/UX -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="HPPA/gcc-assembly"]) -fi - -# PPC/gcc: -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="PPC/gcc-assembly"]) -fi - -# Sparc/gcc: SunOS, Solaris -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__sparc__) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="Sparc/gcc-assembly"]) -fi - -# 68K/gcc: SunOS -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(mc68020) || defined(sun3)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="68K/gcc-assembly"]) -fi - -# x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(i386) || defined(__i386__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="x86/gcc-assembly"]) -fi - -# x86_64/gcc: FreeBSD, NetBSD, BSD/OS, Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="x86_64/gcc-assembly"]) -fi - -# S390/cc: IBM OS/390 Unix -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__MVS__) && defined(__IBMC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="S390/cc-assembly"]) -fi - -# S390/gcc: Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__s390__) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="S390/gcc-assembly"]) -fi - -# ia64/gcc: Linux -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(__ia64) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="ia64/gcc-assembly"]) -fi - -# uts/cc: UTS -if test "$db_cv_mutex" = no; then -AC_TRY_COMPILE(,[ -#if defined(_UTS) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif -], [db_cv_mutex="UTS/cc-assembly"]) -fi - -# default to UNIX fcntl system call mutexes. -if test "$db_cv_mutex" = no; then - db_cv_mutex="UNIX/fcntl" -fi -]) - -AC_SUBST(thread_h_decl) -AC_SUBST(db_threadid_t_decl) -db_threadid_t_decl=notset - -case "$db_cv_mutex" in -68K/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_68K_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_68K_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and 68K assembly language mutexes.]);; -AIX/_check_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_AIX_CHECK_LOCK) - AH_TEMPLATE(HAVE_MUTEX_AIX_CHECK_LOCK, - [Define to 1 to use the AIX _check_lock mutexes.]);; -Darwin/_spin_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY) - AH_TEMPLATE(HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY, - [Define to 1 to use the Apple/Darwin _spin_lock_try mutexes.]);; -ALPHA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_ALPHA_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_ALPHA_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and Alpha assembly language mutexes.]);; -ARM/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_ARM_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_ARM_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and ARM assembly language mutexes.]);; -HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_HPPA_MSEM_INIT) - AH_TEMPLATE(HAVE_MUTEX_HPPA_MSEM_INIT, - [Define to 1 to use the msem_XXX mutexes on HP-UX.]);; -HPPA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_HPPA_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_HPPA_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and PaRisc assembly language mutexes.]);; -ia64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_IA64_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_IA64_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and IA64 assembly language mutexes.]);; -POSIX/pthreads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS) - AH_TEMPLATE(HAVE_MUTEX_PTHREADS, - [Define to 1 to use POSIX 1003.1 pthread_XXX mutexes.]);; -POSIX/pthreads/private) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS) - AH_TEMPLATE(HAVE_MUTEX_PTHREADS, - [Define to 1 to use POSIX 1003.1 pthread_XXX mutexes.]) - AC_DEFINE(HAVE_MUTEX_THREAD_ONLY) - AH_TEMPLATE(HAVE_MUTEX_THREAD_ONLY, - [Define to 1 to configure mutexes intra-process only.]);; -POSIX/pthreads/library) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS) - AH_TEMPLATE(HAVE_MUTEX_PTHREADS, - [Define to 1 to use POSIX 1003.1 pthread_XXX mutexes.]);; -POSIX/pthreads/library/private) - ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS) - AH_TEMPLATE(HAVE_MUTEX_PTHREADS, - [Define to 1 to use POSIX 1003.1 pthread_XXX mutexes.]) - AC_DEFINE(HAVE_MUTEX_THREAD_ONLY) - AH_TEMPLATE(HAVE_MUTEX_THREAD_ONLY, - [Define to 1 to configure mutexes intra-process only.]);; -PPC/gcc-assembly) - ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PPC_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_PPC_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and PowerPC assembly language mutexes.]);; -ReliantUNIX/initspin) LIBSO_LIBS="$LIBSO_LIBS -lmproc" - ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_RELIANTUNIX_INITSPIN) - AH_TEMPLATE(HAVE_MUTEX_RELIANTUNIX_INITSPIN, - [Define to 1 to use Reliant UNIX initspin mutexes.]);; -S390/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_S390_CC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_S390_CC_ASSEMBLY, - [Define to 1 to use the IBM C compiler and S/390 assembly language mutexes.]);; -S390/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_S390_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_S390_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and S/390 assembly language mutexes.]);; -SCO/x86/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SCO_X86_CC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_SCO_X86_CC_ASSEMBLY, - [Define to 1 to use the SCO compiler and x86 assembly language mutexes.]);; -SGI/init_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SGI_INIT_LOCK) - AH_TEMPLATE(HAVE_MUTEX_SGI_INIT_LOCK, - [Define to 1 to use the SGI XXX_lock mutexes.]);; -Solaris/_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SOLARIS_LOCK_TRY) - AH_TEMPLATE(HAVE_MUTEX_SOLARIS_LOCK_TRY, - [Define to 1 to use the Solaris _lock_XXX mutexes.]);; -Solaris/lwp) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SOLARIS_LWP) - AH_TEMPLATE(HAVE_MUTEX_SOLARIS_LWP, - [Define to 1 to use the Solaris lwp threads mutexes.]);; -Sparc/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SPARC_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_SPARC_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and Sparc assembly language mutexes.]);; -Tru64/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_TRU64_CC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_TRU64_CC_ASSEMBLY, - [Define to 1 to use the CC compiler and Tru64 assembly language mutexes.]);; -UI/threads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_UI_THREADS) - AH_TEMPLATE(HAVE_MUTEX_UI_THREADS, - [Define to 1 to use the UNIX International mutexes.]);; -UI/threads/library) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_UI_THREADS) - AH_TEMPLATE(HAVE_MUTEX_UI_THREADS, - [Define to 1 to use the UNIX International mutexes.]);; -UNIX/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_MSEM_INIT) - AH_TEMPLATE(HAVE_MUTEX_MSEM_INIT, - [Define to 1 to use the msem_XXX mutexes on systems other than HP-UX.]);; -UNIX/sema_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SEMA_INIT) - AH_TEMPLATE(HAVE_MUTEX_SEMA_INIT, - [Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes.]);; -UTS/cc-assembly) ADDITIONAL_OBJS="uts4.cc${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_UTS_CC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_UTS_CC_ASSEMBLY, - [Define to 1 to use the UTS compiler and assembly language mutexes.]);; -win32) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_WIN32) - AH_TEMPLATE(HAVE_MUTEX_WIN32, [Define to 1 to use the MSVC compiler and Windows mutexes.]);; -win32/gcc) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_WIN32_GCC) - AH_TEMPLATE(HAVE_MUTEX_WIN32_GCC, [Define to 1 to use the GCC compiler and Windows mutexes.]);; -MIPS/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_MIPS_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_MIPS_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and MIPS assembly language mutexes.]);; -x86/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_X86_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_X86_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and x86 assembly language mutexes.]);; -x86_64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_X86_64_GCC_ASSEMBLY) - AH_TEMPLATE(HAVE_MUTEX_X86_64_GCC_ASSEMBLY, - [Define to 1 to use the GCC compiler and amd64 assembly language mutexes.]);; -UNIX/fcntl) AC_MSG_WARN( - [NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE.]) - ADDITIONAL_OBJS="mut_fcntl${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_FCNTL) - AH_TEMPLATE(HAVE_MUTEX_FCNTL, - [Define to 1 to use the UNIX fcntl system call mutexes.]);; -*) AC_MSG_ERROR([Unknown mutex interface: $db_cv_mutex]);; -esac - -# The mutex selection may require specific declarations -- we fill in most of -# them above, but here are the common ones. -# -# The mutex selection may tell us what kind of thread package we're using, -# which we use to figure out the thread type. -# -# If we're configured for the POSIX pthread API, then force the thread ID type -# and include function, regardless of the mutex selection. Ditto for the -# (default) Solaris lwp mutexes, because they don't have a way to return the -# thread ID. -# -# Try and link with a threads library if possible. The problem is the Solaris -# C library has UI/POSIX interface stubs, but they're broken, configuring them -# for inter-process mutexes doesn't return an error, but it doesn't work either. -# For that reason always add -lpthread if we're using pthread calls or mutexes -# and there's a pthread library. -# -# We can't depend on any specific call existing (pthread_create, for example), -# as it may be #defined in an include file -- OSF/1 (Tru64) has this problem. -case "$db_cv_mutex" in -POSIX/pthread*|Solaris/lwp) - thread_h_decl="#include " - db_threadid_t_decl="typedef pthread_t db_threadid_t;" - AC_HAVE_LIBRARY(pthread, LIBSO_LIBS="$LIBSO_LIBS -lpthread");; -UI/threads*) - thread_h_decl="#include " - db_threadid_t_decl="typedef thread_t db_threadid_t;" - AC_HAVE_LIBRARY(thread, LIBSO_LIBS="$LIBSO_LIBS -lthread");; -*) - if test "$db_cv_pthread_api" = "yes"; then - thread_h_decl="#include " - db_threadid_t_decl="typedef pthread_t db_threadid_t;" - AC_HAVE_LIBRARY(pthread, LIBSO_LIBS="$LIBSO_LIBS -lpthread") - fi;; -esac - -# We need to know if the thread ID type will fit into an integral type and we -# can compare it for equality and generally treat it like an int, or if it's a -# non-integral type and we have to treat it like a structure or other untyped -# block of bytes. For example, MVS typedef's pthread_t to a structure. -AH_TEMPLATE(HAVE_SIMPLE_THREAD_TYPE, - [Define to 1 if thread identifier type db_threadid_t is integral.]) -if test "$db_threadid_t_decl" = "notset"; then - db_threadid_t_decl="typedef uintmax_t db_threadid_t;" - AC_DEFINE(HAVE_SIMPLE_THREAD_TYPE) -else - AC_TRY_COMPILE( - #include - $thread_h_decl, [ - $db_threadid_t_decl - db_threadid_t a; - a = 0; - ], AC_DEFINE(HAVE_SIMPLE_THREAD_TYPE)) -fi - -# If we're building replication and configured with POSIX pthreads or were -# told to build using the POSIX API, build the replication manager framework. -db_cv_build_replication_mgr="no" -if test "$db_cv_build_replication" = "yes"; then - AH_TEMPLATE(HAVE_REPLICATION_THREADS, - [Define to 1 if building the Berkeley DB replication framework.]) - case "$db_cv_mutex" in - POSIX/pthread*|Solaris/lwp) - db_cv_build_replication_mgr="yes";; - esac - if test "$db_cv_pthread_api" = "yes"; then - db_cv_build_replication_mgr="yes" - fi - - if test "$db_cv_build_replication_mgr" = "yes"; then - AC_DEFINE(HAVE_REPLICATION_THREADS) - - # Solaris requires the socket and nsl libraries to build the - # replication manager. Don't add nsl regardless of the OS, - # it causes RPC to fail on AIX 4.3.3. - case "$host_os" in - solaris*) - AC_HAVE_LIBRARY(nsl, LIBSO_LIBS="$LIBSO_LIBS -lnsl") - AC_HAVE_LIBRARY(socket, - LIBSO_LIBS="$LIBSO_LIBS -lsocket");; - esac - fi -fi - -# There are 3 classes of mutexes: -# -# 1: Mutexes requiring no cleanup, for example, test-and-set mutexes. -# 2: Mutexes that must be destroyed, but which don't hold permanent system -# resources, for example, pthread mutexes on MVS aka OS/390 aka z/OS. -# 3: Mutexes that must be destroyed, even after the process is gone, for -# example, pthread mutexes on QNX and binary semaphores on VxWorks. -# -# DB cannot currently distinguish between #2 and #3 because DB does not know -# if the application is running environment recovery as part of startup and -# does not need to do cleanup, or if the environment is being removed and/or -# recovered in a loop in the application, and so does need to clean up. If -# we get it wrong, we're going to call the mutex destroy routine on a random -# piece of memory, which usually works, but just might drop core. For now, -# we group #2 and #3 into the HAVE_MUTEX_SYSTEM_RESOURCES define, until we -# have a better solution or reason to solve this in a general way -- so far, -# the places we've needed to handle this are few. -AH_TEMPLATE(HAVE_MUTEX_SYSTEM_RESOURCES, - [Define to 1 if mutexes hold system resources.]) - -case "$host_os$db_cv_mutex" in -*qnx*POSIX/pthread*|openedition*POSIX/pthread*) - AC_DEFINE(HAVE_MUTEX_SYSTEM_RESOURCES);; -esac]) diff --git a/db/dist/aclocal/mutex.m4 b/db/dist/aclocal/mutex.m4 index 5f16ee0e1..7932794cc 100644 --- a/db/dist/aclocal/mutex.m4 +++ b/db/dist/aclocal/mutex.m4 @@ -1,100 +1,10 @@ -dnl $Id: mutex.m4,v 11.20 2000/12/20 22:16:56 bostic Exp $ +# $Id: mutex.m4,v 12.26 2007/05/18 15:08:50 bostic Exp $ -dnl Figure out mutexes for this compiler/architecture. -AC_DEFUN(AM_DEFINE_MUTEXES, [ - -AC_CACHE_CHECK([for mutexes], db_cv_mutex, [dnl -db_cv_mutex=no - -orig_libs=$LIBS - -dnl User-specified POSIX mutexes. -dnl -dnl Assume that -lpthread exists when the user specifies POSIX mutexes. (I -dnl only expect this option to be used on Solaris, which has -lpthread.) -if test "$db_cv_posixmutexes" = yes; then - db_cv_mutex="posix_only" -fi - -dnl User-specified UI mutexes. -dnl -dnl Assume that -lthread exists when the user specifies UI mutexes. (I only -dnl expect this option to be used on Solaris, which has -lthread.) -if test "$db_cv_uimutexes" = yes; then - db_cv_mutex="ui_only" -fi - -dnl LWP threads: _lwp_XXX -dnl -dnl Test for LWP threads before testing for UI/POSIX threads, we prefer them -dnl on Solaris. There are two reasons: the Solaris C library has UI/POSIX -dnl interface stubs, but they're broken, configuring them for inter-process -dnl mutexes doesn't return an error, but it doesn't work either. Second, -dnl there's a bug in SunOS 5.7 where applications get pwrite, not pwrite64, -dnl if they load the C library before the appropriate threads library, e.g., -dnl tclsh using dlopen to load the DB library. Anyway, by using LWP threads -dnl we avoid answering lots of user questions, not to mention the bugs. -if test "$db_cv_mutex" = no; then -AC_TRY_RUN([ -#include -main(){ - static lwp_mutex_t mi = SHAREDMUTEX; - static lwp_cond_t ci = SHAREDCV; - lwp_mutex_t mutex = mi; - lwp_cond_t cond = ci; - exit ( - _lwp_mutex_lock(&mutex) || - _lwp_mutex_unlock(&mutex)); -}], [db_cv_mutex="Solaris/lwp"]) -fi - -dnl UI threads: thr_XXX -dnl -dnl Try with and without the -lthread library. -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -LIBS="-lthread $LIBS" -AC_TRY_RUN([ -#include -#include -main(){ - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); -}], [db_cv_mutex="UI/threads/library"]) -LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -AC_TRY_RUN([ -#include -#include -main(){ - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); -}], [db_cv_mutex="UI/threads"]) -fi -if test "$db_cv_mutex" = "ui_only"; then - AC_MSG_ERROR([unable to find UI mutex interfaces]) -fi - - -dnl POSIX.1 pthreads: pthread_XXX -dnl -dnl Try with and without the -lpthread library. -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "posix_only"; then +# POSIX pthreads tests: inter-process safe and intra-process only. +AC_DEFUN(AM_PTHREADS_SHARED, [ AC_TRY_RUN([ #include -main(){ +main() { pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -112,13 +22,9 @@ main(){ pthread_cond_destroy(&cond) || pthread_condattr_destroy(&condattr) || pthread_mutexattr_destroy(&mutexattr)); -}], [db_cv_mutex="POSIX/pthreads"]) -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "posix_only"; then -LIBS="-lpthread $LIBS" -AC_TRY_RUN([ -#include -main(){ +}], [db_cv_mutex="$1"],, +AC_TRY_LINK([ +#include ],[ pthread_cond_t cond; pthread_mutex_t mutex; pthread_condattr_t condattr; @@ -136,19 +42,251 @@ main(){ pthread_cond_destroy(&cond) || pthread_condattr_destroy(&condattr) || pthread_mutexattr_destroy(&mutexattr)); -}], [db_cv_mutex="POSIX/pthreads/library"]) -LIBS="$orig_libs" +], [db_cv_mutex="$1"]))]) +AC_DEFUN(AM_PTHREADS_PRIVATE, [ +AC_TRY_RUN([ +#include +main() { + pthread_cond_t cond; + pthread_mutex_t mutex; + pthread_condattr_t condattr; + pthread_mutexattr_t mutexattr; + exit ( + pthread_condattr_init(&condattr) || + pthread_mutexattr_init(&mutexattr) || + pthread_cond_init(&cond, &condattr) || + pthread_mutex_init(&mutex, &mutexattr) || + pthread_mutex_lock(&mutex) || + pthread_mutex_unlock(&mutex) || + pthread_mutex_destroy(&mutex) || + pthread_cond_destroy(&cond) || + pthread_condattr_destroy(&condattr) || + pthread_mutexattr_destroy(&mutexattr)); +}], [db_cv_mutex="$1"],, +AC_TRY_LINK([ +#include ],[ + pthread_cond_t cond; + pthread_mutex_t mutex; + pthread_condattr_t condattr; + pthread_mutexattr_t mutexattr; + exit ( + pthread_condattr_init(&condattr) || + pthread_mutexattr_init(&mutexattr) || + pthread_cond_init(&cond, &condattr) || + pthread_mutex_init(&mutex, &mutexattr) || + pthread_mutex_lock(&mutex) || + pthread_mutex_unlock(&mutex) || + pthread_mutex_destroy(&mutex) || + pthread_cond_destroy(&cond) || + pthread_condattr_destroy(&condattr) || + pthread_mutexattr_destroy(&mutexattr)); +], [db_cv_mutex="$1"]))]) + +# Figure out mutexes for this compiler/architecture. +# +# There are 3 mutex groups in BDB: pthreads-style, test-and-set, or a hybrid +# combination of the two. We first test for the pthreads-style mutex, and +# then for a test-and-set mutex. +AC_DEFUN(AM_DEFINE_MUTEXES, [ + +# Mutexes we don't test for, but want the #defines to exist for other ports. +AH_TEMPLATE(HAVE_MUTEX_VMS, [Define to 1 to use VMS mutexes.]) +AH_TEMPLATE(HAVE_MUTEX_VXWORKS, [Define to 1 to use VxWorks mutexes.]) + +AC_CACHE_CHECK([for mutexes], db_cv_mutex, [ + +orig_libs=$LIBS + +db_cv_mutex=no + +# Mutexes can be disabled. +if test "$db_cv_build_mutexsupport" = no; then + db_cv_mutex=disabled; fi -if test "$db_cv_mutex" = "posix_only"; then - AC_MSG_ERROR([unable to find POSIX mutex interfaces]) + +# User-specified Win32 mutexes (MinGW build) +if test "$db_cv_mingw" = yes; then + db_cv_mutex=win32/gcc fi -dnl msemaphore: HPPA only -dnl Try HPPA before general msem test, it needs special alignment. if test "$db_cv_mutex" = no; then -AC_TRY_RUN([ -#include -main(){ + # User-specified POSIX or UI mutexes. + # + # There are two different reasons to specify mutexes: First, the + # application is already using one type of mutex and doesn't want + # to mix-and-match (for example, on Solaris, which has POSIX, UI + # and LWP mutexes). Second, the application's POSIX pthreads + # mutexes don't support inter-process locking, but the application + # wants to use them anyway (for example, some Linux and *BSD systems). + # + # Test for LWP threads before testing for UI/POSIX threads, we prefer + # them on Solaris, for two reasons: a bug in SunOS 5.7 causes + # applications to get pwrite, not pwrite64, if they load the C library + # before the appropriate threads library, e.g., tclsh using dlopen to + # load the DB library. Second, LWP mutexes are faster than POSIX + # pthread mutexes by some amount. + # + # Otherwise, test for POSIX threads before UI threads. There are Linux + # systems that support a UI compatibility mode, and applications are + # more likely to be written for POSIX threads than UI threads. + + if test "$db_cv_posixmutexes" = yes; then + db_cv_mutex=posix_only; + fi + if test "$db_cv_uimutexes" = yes; then + db_cv_mutex=ui_only; + fi + + # LWP threads: _lwp_XXX + if test "$db_cv_mutex" = no; then + AC_TRY_LINK([ + #include ],[ + static lwp_mutex_t mi = SHAREDMUTEX; + static lwp_cond_t ci = SHAREDCV; + lwp_mutex_t mutex = mi; + lwp_cond_t cond = ci; + exit ( + _lwp_mutex_lock(&mutex) || + _lwp_mutex_unlock(&mutex)); + ], [db_cv_mutex=Solaris/lwp]) + fi + + # POSIX.1 pthreads: pthread_XXX + # + # 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 + LIBS="$LIBS -lpthread" + AM_PTHREADS_SHARED(POSIX/pthreads/library) + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then + AM_PTHREADS_SHARED(POSIX/pthreads) + fi + if test "$db_cv_mutex" = posix_only; then + AM_PTHREADS_PRIVATE(POSIX/pthreads/private) + fi + if test "$db_cv_mutex" = posix_only; then + LIBS="$LIBS -lpthread" + AM_PTHREADS_PRIVATE(POSIX/pthreads/library/private) + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = posix_only; then + AC_MSG_ERROR([unable to find POSIX 1003.1 mutex interfaces]) + fi + + # UI threads: thr_XXX + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = ui_only; then + LIBS="$LIBS -lthread" + AC_TRY_LINK([ + #include + #include ],[ + mutex_t mutex; + cond_t cond; + int type = USYNC_PROCESS; + exit ( + mutex_init(&mutex, type, NULL) || + cond_init(&cond, type, NULL) || + mutex_lock(&mutex) || + mutex_unlock(&mutex)); + ], [db_cv_mutex=UI/threads/library]) + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = ui_only; then + AC_TRY_LINK([ + #include + #include ],[ + mutex_t mutex; + cond_t cond; + int type = USYNC_PROCESS; + exit ( + mutex_init(&mutex, type, NULL) || + cond_init(&cond, type, NULL) || + mutex_lock(&mutex) || + mutex_unlock(&mutex)); + ], [db_cv_mutex=UI/threads]) + fi + if test "$db_cv_mutex" = ui_only; then + AC_MSG_ERROR([unable to find UI mutex interfaces]) + fi + + # We're done testing for pthreads-style mutexes. Next, check for + # test-and-set mutexes. Check first for hybrid implementations, + # because we check for them even if we've already found a + # pthreads-style mutex and they're the most common architectures + # anyway. + # + # x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux + AC_TRY_COMPILE(,[ + #if (defined(i386) || defined(__i386__)) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif + ], [db_cv_mutex="$db_cv_mutex/x86/gcc-assembly"]) + + # x86_64/gcc: FreeBSD, NetBSD, BSD/OS, Linux + AC_TRY_COMPILE(,[ + #if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif + ], [db_cv_mutex="$db_cv_mutex/x86_64/gcc-assembly"]) + + # Solaris is one of the systems where we can configure hybrid mutexes. + # However, we require the membar_enter function for that, and only newer + # Solaris releases have it. Check to see if we can configure hybrids. + AC_TRY_LINK([ + #include + #include ],[ + typedef lock_t tsl_t; + lock_t x; + _lock_try(&x); + _lock_clear(&x); + membar_enter(); + ], [db_cv_mutex="$db_cv_mutex/Solaris/_lock_try/membar"]) + + # Sparc/gcc: SunOS, Solaris + AC_TRY_COMPILE(,[ + #if defined(__sparc__) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif + ], [db_cv_mutex="$db_cv_mutex/Sparc/gcc-assembly"]) + + # We're done testing for any hybrid mutex implementations. If we did + # not find a pthreads-style mutex, but did find a test-and-set mutex, + # we set db_cv_mutex to "no/XXX" -- clean that up. + db_cv_mutex=`echo $db_cv_mutex | sed 's/^no\///'` +fi + +# If we still don't have a mutex implementation yet, continue testing for a +# test-and-set mutex implementation. + +# _lock_try/_lock_clear: Solaris +# On Solaris systems without other mutex interfaces, DB uses the undocumented +# _lock_try _lock_clear function calls instead of either the sema_trywait(3T) +# or sema_wait(3T) function calls. This is because of problems in those +# interfaces in some releases of the Solaris C library. +if test "$db_cv_mutex" = no; then +AC_TRY_LINK([ +#include +#include ],[ + typedef lock_t tsl_t; + lock_t x; + _lock_try(&x); + _lock_clear(&x); +], [db_cv_mutex=Solaris/_lock_try]) +fi + +# msemaphore: HPPA only +# Try HPPA before general msem test, it needs special alignment. +if test "$db_cv_mutex" = no; then +AC_TRY_LINK([ +#include ],[ #if defined(__hppa) typedef msemaphore tsl_t; msemaphore x; @@ -157,239 +295,514 @@ main(){ msem_unlock(&x, 0); exit(0); #else - exit(1); + FAIL TO COMPILE/LINK #endif -}], [db_cv_mutex="HP/msem_init"]) +], [db_cv_mutex=HP/msem_init]) fi -dnl msemaphore: AIX, OSF/1 +# msemaphore: AIX, OSF/1 if test "$db_cv_mutex" = no; then -AC_TRY_RUN([ +AC_TRY_LINK([ #include -#include ; -main(){ +#include ],[ typedef msemaphore tsl_t; msemaphore x; msem_init(&x, 0); msem_lock(&x, 0); msem_unlock(&x, 0); exit(0); -}], [db_cv_mutex="UNIX/msem_init"]) +], [db_cv_mutex=UNIX/msem_init]) fi -dnl ReliantUNIX +# ReliantUNIX if test "$db_cv_mutex" = no; then LIBS="$LIBS -lmproc" -AC_TRY_LINK([#include ], -[typedef spinlock_t tsl_t; -spinlock_t x; initspin(&x, 1); cspinlock(&x); spinunlock(&x);], -[db_cv_mutex="ReliantUNIX/initspin"]) +AC_TRY_LINK([ +#include ],[ + typedef spinlock_t tsl_t; + spinlock_t x; + initspin(&x, 1); + cspinlock(&x); + spinunlock(&x); +], [db_cv_mutex=ReliantUNIX/initspin]) LIBS="$orig_libs" fi -dnl SCO: UnixWare has threads in libthread, but OpenServer doesn't. +# SCO: UnixWare has threads in libthread, but OpenServer doesn't. if test "$db_cv_mutex" = no; then -AC_TRY_RUN([ -main(){ +AC_TRY_COMPILE(,[ #if defined(__USLC__) exit(0); +#else + FAIL TO COMPILE/LINK #endif - exit(1); -}], [db_cv_mutex="SCO/x86/cc-assembly"]) +], [db_cv_mutex=SCO/x86/cc-assembly]) fi -dnl abilock_t: SGI +# abilock_t: SGI if test "$db_cv_mutex" = no; then -AC_TRY_LINK([#include ], -[typedef abilock_t tsl_t; -abilock_t x; init_lock(&x); acquire_lock(&x); release_lock(&x);], -[db_cv_mutex="SGI/init_lock"]) +AC_TRY_LINK([ +#include ],[ + typedef abilock_t tsl_t; + abilock_t x; + init_lock(&x); + acquire_lock(&x); + release_lock(&x); +], [db_cv_mutex=SGI/init_lock]) fi -dnl sema_t: Solaris -dnl The sema_XXX calls do not work on Solaris 5.5. I see no reason to ever -dnl turn this test on, unless we find some other platform that uses the old -dnl POSIX.1 interfaces. (I plan to move directly to pthreads on Solaris.) +# sema_t: Solaris +# The sema_XXX calls do not work on Solaris 5.5. I see no reason to ever +# turn this test on, unless we find some other platform that uses the old +# POSIX.1 interfaces. if test "$db_cv_mutex" = DOESNT_WORK; then -AC_TRY_LINK([#include ], -[typedef sema_t tsl_t; - sema_t x; - sema_init(&x, 1, USYNC_PROCESS, NULL); sema_wait(&x); sema_post(&x);], -[db_cv_mutex="UNIX/sema_init"]) +AC_TRY_LINK([ +#include ],[ + typedef sema_t tsl_t; + sema_t x; + sema_init(&x, 1, USYNC_PROCESS, NULL); + sema_wait(&x); + sema_post(&x); +], [db_cv_mutex=UNIX/sema_init]) fi -dnl _lock_try/_lock_clear: Solaris -dnl On Solaris systems without Pthread or UI mutex interfaces, DB uses the -dnl undocumented _lock_try _lock_clear function calls instead of either the -dnl sema_trywait(3T) or sema_wait(3T) function calls. This is because of -dnl problems in those interfaces in some releases of the Solaris C library. +# _check_lock/_clear_lock: AIX if test "$db_cv_mutex" = no; then -AC_TRY_LINK([#include ], -[typedef lock_t tsl_t; - lock_t x; - _lock_try(&x); _lock_clear(&x);], -[db_cv_mutex="Solaris/_lock_try"]) +AC_TRY_LINK([ +#include ],[ + int x; + _check_lock(&x,0,1); + _clear_lock(&x,0); +], [db_cv_mutex=AIX/_check_lock]) fi -dnl _check_lock/_clear_lock: AIX +# _spin_lock_try/_spin_unlock: Apple/Darwin if test "$db_cv_mutex" = no; then -AC_TRY_LINK([#include ], -[int x; _check_lock(&x,0,1); _clear_lock(&x,0);], -[db_cv_mutex="AIX/_check_lock"]) +AC_TRY_LINK(,[ + int x; + _spin_lock_try(&x); + _spin_unlock(&x); +], [db_cv_mutex=Darwin/_spin_lock_try]) fi -dnl Alpha/gcc: OSF/1 -dnl The alpha/gcc code doesn't work as far as I know. There are -dnl two versions, both have problems. See Support Request #1583. -if test "$db_cv_mutex" = DOESNT_WORK; then -AC_TRY_RUN([main(){ -#if defined(__alpha) -#if defined(__GNUC__) -exit(0); -#endif +# Tru64/cc +if test "$db_cv_mutex" = no; then +AC_TRY_COMPILE(,[ +#if defined(__alpha) && defined(__DECC) + exit(0); +#else + FAIL TO COMPILE/LINK #endif -exit(1);}], -[db_cv_mutex="ALPHA/gcc-assembly"]) +], [db_cv_mutex=Tru64/cc-assembly]) fi -dnl PaRisc/gcc: HP/UX +# Alpha/gcc if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ -#if defined(__hppa) -#if defined(__GNUC__) -exit(0); -#endif +AC_TRY_COMPILE(,[ +#if defined(__alpha) && defined(__GNUC__) + exit(0); +#else + FAIL TO COMPILE/LINK #endif -exit(1);}], -[db_cv_mutex="HPPA/gcc-assembly"]) +], [db_cv_mutex=ALPHA/gcc-assembly]) fi -dnl PPC/gcc: +# ARM/gcc: Linux if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ -#if defined(__powerpc__) -#if defined(__GNUC__) -exit(0); -#endif +AC_TRY_COMPILE(,[ +#if defined(__arm__) && defined(__GNUC__) + exit(0); +#else + FAIL TO COMPILE/LINK #endif -exit(1);}], -[db_cv_mutex="PPC/gcc-assembly"]) +], [db_cv_mutex=ARM/gcc-assembly]) fi -dnl Sparc/gcc: SunOS, Solaris -dnl The sparc/gcc code doesn't always work, specifically, I've seen assembler -dnl failures from the stbar instruction on SunOS 4.1.4/sun4c and gcc 2.7.2.2. -if test "$db_cv_mutex" = DOESNT_WORK; then -AC_TRY_RUN([main(){ -#if defined(__sparc__) -#if defined(__GNUC__) +# MIPS/gcc: Linux +if test "$db_cv_mutex" = no; then +AC_TRY_COMPILE(,[ +#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) exit(0); +#else + FAIL TO COMPILE/LINK #endif -#endif - exit(1); -}], [db_cv_mutex="Sparc/gcc-assembly"]) +], [db_cv_mutex=MIPS/gcc-assembly]) fi -dnl 68K/gcc: SunOS +# PaRisc/gcc: HP/UX if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ -#if (defined(mc68020) || defined(sun3)) -#if defined(__GNUC__) +AC_TRY_COMPILE(,[ +#if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__) exit(0); +#else + FAIL TO COMPILE/LINK #endif +], [db_cv_mutex=HPPA/gcc-assembly]) +fi + +# PPC/gcc: +if test "$db_cv_mutex" = no; then +AC_TRY_COMPILE(,[ +#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__) + exit(0); +#else + FAIL TO COMPILE/LINK #endif - exit(1); -}], [db_cv_mutex="68K/gcc-assembly"]) +], [db_cv_mutex=PPC/gcc-assembly]) fi -dnl x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux +# 68K/gcc: SunOS if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ -#if defined(i386) || defined(__i386__) -#if defined(__GNUC__) +AC_TRY_COMPILE(,[ +#if (defined(mc68020) || defined(sun3)) && defined(__GNUC__) exit(0); +#else + FAIL TO COMPILE/LINK #endif +], [db_cv_mutex=68K/gcc-assembly]) +fi + +# S390/cc: IBM OS/390 Unix +if test "$db_cv_mutex" = no; then +AC_TRY_COMPILE(,[ +#if defined(__MVS__) && defined(__IBMC__) + exit(0); +#else + FAIL TO COMPILE/LINK #endif - exit(1); -}], [db_cv_mutex="x86/gcc-assembly"]) +], [db_cv_mutex=S390/cc-assembly]) fi -dnl ia86/gcc: Linux +# S390/gcc: Linux if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ -#if defined(__ia64) -#if defined(__GNUC__) +AC_TRY_COMPILE(,[ +#if defined(__s390__) && defined(__GNUC__) exit(0); +#else + FAIL TO COMPILE/LINK #endif +], [db_cv_mutex=S390/gcc-assembly]) +fi + +# ia64/gcc: Linux +if test "$db_cv_mutex" = no; then +AC_TRY_COMPILE(,[ +#if defined(__ia64) && defined(__GNUC__) + exit(0); +#else + FAIL TO COMPILE/LINK #endif - exit(1); -}], [db_cv_mutex="ia64/gcc-assembly"]) +], [db_cv_mutex=ia64/gcc-assembly]) fi -dnl: uts/cc: UTS +# uts/cc: UTS if test "$db_cv_mutex" = no; then -AC_TRY_RUN([main(){ +AC_TRY_COMPILE(,[ #if defined(_UTS) exit(0); +#else + FAIL TO COMPILE/LINK #endif - exit(1); -}], [db_cv_mutex="UTS/cc-assembly"]) +], [db_cv_mutex=UTS/cc-assembly]) fi -]) +# UNIX fcntl system call mutexes. if test "$db_cv_mutex" = no; then - AC_MSG_WARN( - [THREAD MUTEXES NOT AVAILABLE FOR THIS COMPILER/ARCHITECTURE.]) - ADDITIONAL_OBJS="mut_fcntl${o} $ADDITIONAL_OBJS" -else - AC_DEFINE(HAVE_MUTEX_THREADS) + db_cv_mutex=UNIX/fcntl +AC_TRY_LINK([ +#include ],[ + struct flock l; + l.l_whence = SEEK_SET; + l.l_start = 10; + l.l_len = 1; + l.l_type = F_WRLCK; + fcntl(0, F_SETLK, &l); +], [db_cv_mutex=UNIX/fcntl]) fi +]) + +# Mutexes may not have been found, or may have been disabled. +case "$db_cv_mutex" in +disabled) ;; +no) + AC_MSG_ERROR([Unable to find a mutex implementation]);; +*) AC_DEFINE(HAVE_MUTEX_SUPPORT) + AH_TEMPLATE(HAVE_MUTEX_SUPPORT, + [Define to 1 if the Berkeley DB library should support mutexes.]) +esac +# Configure a pthreads-style mutex implementation. +hybrid=pthread +case "$db_cv_mutex" in +POSIX/pthreads*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_PTHREADS) + AH_TEMPLATE(HAVE_MUTEX_PTHREADS, + [Define to 1 to use POSIX 1003.1 pthread_XXX mutexes.]);; +POSIX/pthreads/private*)ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_PTHREADS) + AC_DEFINE(HAVE_MUTEX_THREAD_ONLY) + AH_TEMPLATE(HAVE_MUTEX_THREAD_ONLY, + [Define to 1 to configure mutexes intra-process only.]);; +POSIX/pthreads/library*)ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_PTHREADS);; +POSIX/pthreads/library/private*) + ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_PTHREADS) + AC_DEFINE(HAVE_MUTEX_THREAD_ONLY);; +Solaris/lwp*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_SOLARIS_LWP) + AH_TEMPLATE(HAVE_MUTEX_SOLARIS_LWP, + [Define to 1 to use the Solaris lwp threads mutexes.]);; +UI/threads*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_UI_THREADS) + AH_TEMPLATE(HAVE_MUTEX_UI_THREADS, + [Define to 1 to use the UNIX International mutexes.]);; +UI/threads/library*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_UI_THREADS);; +*) hybrid=no;; +esac + +# Configure a test-and-set mutex implementation. case "$db_cv_mutex" in 68K/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_68K_GCC_ASSEMBLY);; + AC_DEFINE(HAVE_MUTEX_68K_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_68K_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and 68K assembly language mutexes.]);; AIX/_check_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_AIX_CHECK_LOCK);; + AC_DEFINE(HAVE_MUTEX_AIX_CHECK_LOCK) + AH_TEMPLATE(HAVE_MUTEX_AIX_CHECK_LOCK, + [Define to 1 to use the AIX _check_lock mutexes.]);; +Darwin/_spin_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY) + AH_TEMPLATE(HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY, + [Define to 1 to use the Apple/Darwin _spin_lock_try mutexes.]);; ALPHA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_ALPHA_GCC_ASSEMBLY);; + AC_DEFINE(HAVE_MUTEX_ALPHA_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_ALPHA_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and Alpha assembly language mutexes.]);; +ARM/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_ARM_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_ARM_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and ARM assembly language mutexes.]);; HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_HPPA_MSEM_INIT);; + AC_DEFINE(HAVE_MUTEX_HPPA_MSEM_INIT) + AH_TEMPLATE(HAVE_MUTEX_HPPA_MSEM_INIT, + [Define to 1 to use the msem_XXX mutexes on HP-UX.]);; HPPA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_HPPA_GCC_ASSEMBLY);; + AC_DEFINE(HAVE_MUTEX_HPPA_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_HPPA_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and PaRisc assembly language mutexes.]);; ia64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_IA64_GCC_ASSEMBLY);; -POSIX/pthreads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS);; -POSIX/pthreads/library) LIBS="-lpthread $LIBS" - ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PTHREADS);; -PPC/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_PPC_GCC_ASSEMBLY);; -ReliantUNIX/initspin) LIBS="$LIBS -lmproc" + AC_DEFINE(HAVE_MUTEX_IA64_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_IA64_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and IA64 assembly language mutexes.]);; +MIPS/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_MIPS_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_MIPS_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and MIPS assembly language mutexes.]);; +PPC/gcc-assembly) + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_PPC_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_PPC_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and PowerPC assembly language mutexes.]);; +ReliantUNIX/initspin) LIBSO_LIBS="$LIBSO_LIBS -lmproc" ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_RELIANTUNIX_INITSPIN);; + AC_DEFINE(HAVE_MUTEX_RELIANTUNIX_INITSPIN) + AH_TEMPLATE(HAVE_MUTEX_RELIANTUNIX_INITSPIN, + [Define to 1 to use Reliant UNIX initspin mutexes.]);; +S390/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_S390_CC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_S390_CC_ASSEMBLY, + [Define to 1 to use the IBM C compiler and S/390 assembly language mutexes.]);; +S390/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_S390_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_S390_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and S/390 assembly language mutexes.]);; SCO/x86/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SCO_X86_CC_ASSEMBLY);; + AC_DEFINE(HAVE_MUTEX_SCO_X86_CC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_SCO_X86_CC_ASSEMBLY, + [Define to 1 to use the SCO compiler and x86 assembly language mutexes.]);; SGI/init_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SGI_INIT_LOCK);; + AC_DEFINE(HAVE_MUTEX_SGI_INIT_LOCK) + AH_TEMPLATE(HAVE_MUTEX_SGI_INIT_LOCK, + [Define to 1 to use the SGI XXX_lock mutexes.]);; Solaris/_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SOLARIS_LOCK_TRY);; -Solaris/lwp) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SOLARIS_LWP);; -Sparc/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SPARC_GCC_ASSEMBLY);; -UI/threads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_UI_THREADS);; -UI/threads/library) LIBS="-lthread $LIBS" - ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_UI_THREADS);; + AC_DEFINE(HAVE_MUTEX_SOLARIS_LOCK_TRY) + AH_TEMPLATE(HAVE_MUTEX_SOLARIS_LOCK_TRY, + [Define to 1 to use the Solaris _lock_XXX mutexes.]);; +*Solaris/_lock_try/membar) + hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_SOLARIS_LOCK_TRY) + AH_TEMPLATE(HAVE_MUTEX_SOLARIS_LOCK_TRY, + [Define to 1 to use the Solaris _lock_XXX mutexes.]);; +*Sparc/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_SPARC_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_SPARC_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and Sparc assembly language mutexes.]);; +Tru64/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_TRU64_CC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_TRU64_CC_ASSEMBLY, + [Define to 1 to use the CC compiler and Tru64 assembly language mutexes.]);; UNIX/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_MSEM_INIT);; + AC_DEFINE(HAVE_MUTEX_MSEM_INIT) + AH_TEMPLATE(HAVE_MUTEX_MSEM_INIT, + [Define to 1 to use the msem_XXX mutexes on systems other than HP-UX.]);; UNIX/sema_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_SEMA_INIT);; -UTS/cc-assembly) ADDITIONAL_OBJS="$ADDITIONAL_OBJS uts4.cc${o}" - AC_DEFINE(HAVE_MUTEX_UTS_CC_ASSEMBLY);; -x86/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" - AC_DEFINE(HAVE_MUTEX_X86_GCC_ASSEMBLY);; + AC_DEFINE(HAVE_MUTEX_SEMA_INIT) + AH_TEMPLATE(HAVE_MUTEX_SEMA_INIT, + [Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes.]);; +UTS/cc-assembly) ADDITIONAL_OBJS="uts4.cc${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_UTS_CC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_UTS_CC_ASSEMBLY, + [Define to 1 to use the UTS compiler and assembly language mutexes.]);; +*x86/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_X86_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_X86_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and 32-bit x86 assembly language mutexes.]);; +*x86_64/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_X86_64_GCC_ASSEMBLY) + AH_TEMPLATE(HAVE_MUTEX_X86_64_GCC_ASSEMBLY, + [Define to 1 to use the GCC compiler and 64-bit x86 assembly language mutexes.]);; +esac + +# Configure the remaining special cases. +case "$db_cv_mutex" in +UNIX/fcntl) AC_MSG_WARN( + [NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE.]) + ADDITIONAL_OBJS="mut_fcntl${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_FCNTL) + AH_TEMPLATE(HAVE_MUTEX_FCNTL, + [Define to 1 to use the UNIX fcntl system call mutexes.]);; +win32) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_WIN32) + AH_TEMPLATE(HAVE_MUTEX_WIN32, [Define to 1 to use the MSVC compiler and Windows mutexes.]);; +win32/gcc) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" + AC_DEFINE(HAVE_MUTEX_WIN32_GCC) + AH_TEMPLATE(HAVE_MUTEX_WIN32_GCC, [Define to 1 to use the GCC compiler and Windows mutexes.]);; esac -])dnl + +# We may have found both a pthreads-style mutex implementation as well as a +# test-and-set, in which case configure for the hybrid. +if test "$hybrid" = pthread/tas; then + AC_DEFINE(HAVE_MUTEX_HYBRID) + AH_TEMPLATE(HAVE_MUTEX_HYBRID, + [Define to 1 to use test-and-set mutexes with blocking mutexes.]) +fi + +# The mutex selection may require specific declarations -- we fill in most of +# them above, but here are the common ones. +# +# The mutex selection may tell us what kind of thread package we're using, +# which we use to figure out the thread type. +# +# If we're configured for the POSIX pthread API, then force the thread ID type +# and include function, regardless of the mutex selection. Ditto for the +# (default) Solaris lwp mutexes, because they don't have a way to return the +# thread ID. +# +# Try and link with a threads library if possible. The problem is the Solaris +# C library has UI/POSIX interface stubs, but they're broken, configuring them +# for inter-process mutexes doesn't return an error, but it doesn't work either. +# For that reason always add -lpthread if we're using pthread calls or mutexes +# and there's a pthread library. +# +# We can't depend on any specific call existing (pthread_create, for example), +# as it may be #defined in an include file -- OSF/1 (Tru64) has this problem. + +AC_SUBST(thread_h_decl) +AC_SUBST(db_threadid_t_decl) +db_threadid_t_decl=notset + +case "$db_cv_mutex" in +POSIX/pthread*|Solaris/lwp*) + thread_h_decl="#include " + db_threadid_t_decl="typedef pthread_t db_threadid_t;" + AC_HAVE_LIBRARY(pthread, LIBSO_LIBS="$LIBSO_LIBS -lpthread");; +UI/threads*) + thread_h_decl="#include " + db_threadid_t_decl="typedef thread_t db_threadid_t;" + AC_HAVE_LIBRARY(thread, LIBSO_LIBS="$LIBSO_LIBS -lthread");; +*) + if test "$db_cv_pthread_api" = yes; then + thread_h_decl="#include " + db_threadid_t_decl="typedef pthread_t db_threadid_t;" + AC_HAVE_LIBRARY(pthread, LIBSO_LIBS="$LIBSO_LIBS -lpthread") + fi;; +esac + +# We need to know if the thread ID type will fit into an integral type and we +# can compare it for equality and generally treat it like an int, or if it's a +# non-integral type and we have to treat it like a structure or other untyped +# block of bytes. For example, MVS typedef's pthread_t to a structure. +AH_TEMPLATE(HAVE_SIMPLE_THREAD_TYPE, + [Define to 1 if thread identifier type db_threadid_t is integral.]) +if test "$db_threadid_t_decl" = notset; then + db_threadid_t_decl="typedef uintmax_t db_threadid_t;" + AC_DEFINE(HAVE_SIMPLE_THREAD_TYPE) +else + AC_TRY_COMPILE( + #include + $thread_h_decl, [ + $db_threadid_t_decl + db_threadid_t a; + a = 0; + ], AC_DEFINE(HAVE_SIMPLE_THREAD_TYPE)) +fi + +# If we're building replication and configured with POSIX pthreads or were +# told to build using the POSIX API, build the replication manager framework. +db_cv_build_replication_mgr=no +if test "$db_cv_build_replication" = yes; then + AH_TEMPLATE(HAVE_REPLICATION_THREADS, + [Define to 1 if building the Berkeley DB replication framework.]) + case "$db_cv_mutex" in + POSIX/pthread*|Solaris/lwp) + db_cv_build_replication_mgr=yes;; + esac + if test "$db_cv_pthread_api" = yes; then + db_cv_build_replication_mgr=yes + fi + + if test "$db_cv_build_replication_mgr" = yes; then + AC_DEFINE(HAVE_REPLICATION_THREADS) + + # Solaris requires the socket and nsl libraries to build the + # replication manager. Don't add nsl regardless of the OS, + # it causes RPC to fail on AIX 4.3.3. + case "$host_os" in + solaris*) + AC_HAVE_LIBRARY(nsl, LIBSO_LIBS="$LIBSO_LIBS -lnsl") + AC_HAVE_LIBRARY(socket, + LIBSO_LIBS="$LIBSO_LIBS -lsocket");; + esac + fi +fi + +# There are 3 classes of mutexes: +# +# 1: Mutexes requiring no cleanup, for example, test-and-set mutexes. +# 2: Mutexes that must be destroyed, but which don't hold permanent system +# resources, for example, pthread mutexes on MVS aka OS/390 aka z/OS. +# 3: Mutexes that must be destroyed, even after the process is gone, for +# example, pthread mutexes on QNX and binary semaphores on VxWorks. +# +# DB cannot currently distinguish between #2 and #3 because DB does not know +# if the application is running environment recovery as part of startup and +# does not need to do cleanup, or if the environment is being removed and/or +# recovered in a loop in the application, and so does need to clean up. If +# we get it wrong, we're going to call the mutex destroy routine on a random +# piece of memory, which usually works, but just might drop core. For now, +# we group #2 and #3 into the HAVE_MUTEX_SYSTEM_RESOURCES define, until we +# have a better solution or reason to solve this in a general way -- so far, +# the places we've needed to handle this are few. +AH_TEMPLATE(HAVE_MUTEX_SYSTEM_RESOURCES, + [Define to 1 if mutexes hold system resources.]) + +case "$host_os$db_cv_mutex" in +*qnx*POSIX/pthread*|openedition*POSIX/pthread*) + AC_DEFINE(HAVE_MUTEX_SYSTEM_RESOURCES);; +esac]) diff --git a/db/dist/aclocal/options.ac b/db/dist/aclocal/options.ac deleted file mode 100644 index 81e1361b8..000000000 --- a/db/dist/aclocal/options.ac +++ /dev/null @@ -1,291 +0,0 @@ -# $Id: options.ac,v 12.4 2006/04/07 15:08:58 bostic Exp $ - -# Process user-specified options. -AC_DEFUN(AM_OPTIONS_SET, [ - -# --enable-bigfile was the configuration option that Berkeley DB used before -# autoconf 2.50 was released (which had --enable-largefile integrated in). -AC_ARG_ENABLE(bigfile, - [AC_HELP_STRING([--disable-bigfile], - [Obsolete; use --disable-largefile instead.])], - [AC_MSG_ERROR( - [--enable-bigfile no longer supported, use --enable-largefile])]) - -AC_MSG_CHECKING(if --disable-cryptography option specified) -AC_ARG_ENABLE(cryptography, - AC_HELP_STRING([--disable-cryptography], - [Do not build database cryptography support.]),, enableval="yes") -db_cv_build_cryptography="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --disable-hash option specified) -AC_ARG_ENABLE(hash, - AC_HELP_STRING([--disable-hash], - [Do not build Hash access method.]),, enableval="yes") -db_cv_build_hash="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --disable-queue option specified) -AC_ARG_ENABLE(queue, - AC_HELP_STRING([--disable-queue], - [Do not build Queue access method.]),, enableval="yes") -db_cv_build_queue="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --disable-replication option specified) -AC_ARG_ENABLE(replication, - AC_HELP_STRING([--disable-replication], - [Do not build database replication support.]),, enableval="yes") -db_cv_build_replication="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --disable-statistics option specified) -AC_ARG_ENABLE(statistics, - AC_HELP_STRING([--disable-statistics], - [Do not build statistics support.]),, enableval="yes") -db_cv_build_statistics="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --disable-verify option specified) -AC_ARG_ENABLE(verify, - AC_HELP_STRING([--disable-verify], - [Do not build database verification support.]),, enableval="yes") -db_cv_build_verify="$enableval" -case "$enableval" in - no) AC_MSG_RESULT(yes);; -yes) AC_MSG_RESULT(no);; -esac - -AC_MSG_CHECKING(if --enable-compat185 option specified) -AC_ARG_ENABLE(compat185, - [AC_HELP_STRING([--enable-compat185], - [Build DB 1.85 compatibility API.])], - [db_cv_compat185="$enable_compat185"], [db_cv_compat185="no"]) -AC_MSG_RESULT($db_cv_compat185) - -AC_MSG_CHECKING(if --enable-cxx option specified) -AC_ARG_ENABLE(cxx, - [AC_HELP_STRING([--enable-cxx], - [Build C++ API.])], - [db_cv_cxx="$enable_cxx"], [db_cv_cxx="no"]) -AC_MSG_RESULT($db_cv_cxx) - -AC_MSG_CHECKING(if --enable-debug option specified) -AC_ARG_ENABLE(debug, - [AC_HELP_STRING([--enable-debug], - [Build a debugging version.])], - [db_cv_debug="$enable_debug"], [db_cv_debug="no"]) -AC_MSG_RESULT($db_cv_debug) - -AC_MSG_CHECKING(if --enable-debug_rop option specified) -AC_ARG_ENABLE(debug_rop, - [AC_HELP_STRING([--enable-debug_rop], - [Build a version that logs read operations.])], - [db_cv_debug_rop="$enable_debug_rop"], [db_cv_debug_rop="no"]) -AC_MSG_RESULT($db_cv_debug_rop) - -AC_MSG_CHECKING(if --enable-debug_wop option specified) -AC_ARG_ENABLE(debug_wop, - [AC_HELP_STRING([--enable-debug_wop], - [Build a version that logs write operations.])], - [db_cv_debug_wop="$enable_debug_wop"], [db_cv_debug_wop="no"]) -AC_MSG_RESULT($db_cv_debug_wop) - -AC_MSG_CHECKING(if --enable-diagnostic option specified) -AC_ARG_ENABLE(diagnostic, - [AC_HELP_STRING([--enable-diagnostic], - [Build a version with run-time diagnostics.])], - [db_cv_diagnostic="$enable_diagnostic"], [db_cv_diagnostic="no"]) -if test "$db_cv_diagnostic" = "yes"; then - AC_MSG_RESULT($db_cv_diagnostic) -fi -if test "$db_cv_diagnostic" = "no" -a "$db_cv_debug_rop" = "yes"; then - db_cv_diagnostic="yes" - AC_MSG_RESULT([by --enable-debug_rop]) -fi -if test "$db_cv_diagnostic" = "no" -a "$db_cv_debug_wop" = "yes"; then - db_cv_diagnostic="yes" - AC_MSG_RESULT([by --enable-debug_wop]) -fi -if test "$db_cv_diagnostic" = "no"; then - AC_MSG_RESULT($db_cv_diagnostic) -fi - -AC_MSG_CHECKING(if --enable-dump185 option specified) -AC_ARG_ENABLE(dump185, - [AC_HELP_STRING([--enable-dump185], - [Build db_dump185(1) to dump 1.85 databases.])], - [db_cv_dump185="$enable_dump185"], [db_cv_dump185="no"]) -AC_MSG_RESULT($db_cv_dump185) - -AC_MSG_CHECKING(if --enable-java option specified) -AC_ARG_ENABLE(java, - [AC_HELP_STRING([--enable-java], - [Build Java API.])], - [db_cv_java="$enable_java"], [db_cv_java="no"]) -AC_MSG_RESULT($db_cv_java) - -AC_MSG_CHECKING(if --enable-mingw option specified) -AC_ARG_ENABLE(mingw, - [AC_HELP_STRING([--enable-mingw], - [Build Berkeley DB for MinGW.])], - [db_cv_mingw="$enable_mingw"], [db_cv_mingw="no"]) -AC_MSG_RESULT($db_cv_mingw) - -AC_MSG_CHECKING(if --enable-o_direct option specified) -AC_ARG_ENABLE(o_direct, - [AC_HELP_STRING([--enable-o_direct], - [Enable the O_DIRECT flag for direct I/O.])], - [db_cv_o_direct="$enable_o_direct"], [db_cv_o_direct="no"]) -AC_MSG_RESULT($db_cv_o_direct) - -AC_MSG_CHECKING(if --enable-posixmutexes option specified) -AC_ARG_ENABLE(posixmutexes, - [AC_HELP_STRING([--enable-posixmutexes], - [Force use of POSIX standard mutexes.])], - [db_cv_posixmutexes="$enable_posixmutexes"], [db_cv_posixmutexes="no"]) -AC_MSG_RESULT($db_cv_posixmutexes) - -AC_ARG_ENABLE(pthread_self, - [AC_HELP_STRING([--enable-pthread_self], - [Obsolete; use --enable-pthread_api instead.])], - [AC_MSG_ERROR( - [--enable-pthread_self no longer supported, use --enable-pthread_api])]) - -AC_MSG_CHECKING(if --enable-pthread_api option specified) -AC_ARG_ENABLE(pthread_api, - [AC_HELP_STRING([--enable-pthread_api], - [Configure Berkeley DB for POSIX pthread API.])], - [db_cv_pthread_api="$enable_pthread_api"], [db_cv_pthread_api="no"]) -# POSIX mutexes implies other POSIX APIs. -if test "$db_cv_posixmutexes" != "no"; then - db_cv_pthread_api="yes" -fi -AC_MSG_RESULT($db_cv_pthread_api) -AH_TEMPLATE(HAVE_PTHREAD_API, - [Define to 1 to configure Berkeley DB for POSIX pthread API.]) -if test "$db_cv_pthread_api" = "yes"; then - AC_DEFINE(HAVE_PTHREAD_API) -fi - -AC_MSG_CHECKING(if --enable-rpc option specified) -AC_ARG_ENABLE(rpc, - [AC_HELP_STRING([--enable-rpc], - [Build RPC client/server.])], - [db_cv_rpc="$enable_rpc"], [db_cv_rpc="no"]) -AC_MSG_RESULT($db_cv_rpc) - -AC_MSG_CHECKING(if --enable-smallbuild option specified) -AC_ARG_ENABLE(smallbuild, - [AC_HELP_STRING([--enable-smallbuild], - [Build small footprint version of the library.])], - [db_cv_smallbuild="$enable_smallbuild"], [db_cv_smallbuild="no"]) -if test "$db_cv_smallbuild" = "yes"; then - db_cv_build_cryptography="no" - db_cv_build_hash="no" - db_cv_build_queue="no" - db_cv_build_replication="no" - db_cv_build_statistics="no" - db_cv_build_verify="no" -fi -AC_MSG_RESULT($db_cv_smallbuild) - -AC_MSG_CHECKING(if --enable-tcl option specified) -AC_ARG_ENABLE(tcl, - [AC_HELP_STRING([--enable-tcl], - [Build Tcl API.])], - [db_cv_tcl="$enable_tcl"], [db_cv_tcl="no"]) -AC_MSG_RESULT($db_cv_tcl) - -AC_MSG_CHECKING(if --enable-test option specified) -AC_ARG_ENABLE(test, - [AC_HELP_STRING([--enable-test], - [Configure to run the test suite.])], - [db_cv_test="$enable_test"], [db_cv_test="no"]) -AC_MSG_RESULT($db_cv_test) - -AC_MSG_CHECKING(if --enable-uimutexes option specified) -AC_ARG_ENABLE(uimutexes, - [AC_HELP_STRING([--enable-uimutexes], - [Force use of Unix International mutexes.])], - [db_cv_uimutexes="$enable_uimutexes"], [db_cv_uimutexes="no"]) -AC_MSG_RESULT($db_cv_uimutexes) - -AC_MSG_CHECKING(if --enable-umrw option specified) -AC_ARG_ENABLE(umrw, - [AC_HELP_STRING([--enable-umrw], - [Mask harmless uninitialized memory read/writes.])], - [db_cv_umrw="$enable_umrw"], [db_cv_umrw="no"]) -AC_MSG_RESULT($db_cv_umrw) - -AC_MSG_CHECKING(if --with-mutex=MUTEX option specified) -AC_ARG_WITH(mutex, - [AC_HELP_STRING([--with-mutex=MUTEX], - [Selection of non-standard mutexes.])], - [with_mutex="$withval"], [with_mutex="no"]) -if test "$with_mutex" = "yes"; then - AC_MSG_ERROR([--with-mutex requires a mutex name argument]) -fi -if test "$with_mutex" != "no"; then - db_cv_mutex="$with_mutex" -fi -AC_MSG_RESULT($with_mutex) - -# --with-mutexalign=ALIGNMENT was the configuration option that Berkeley DB -# used before the DbEnv::mutex_set_align method was added. -AC_ARG_WITH(mutexalign, - [AC_HELP_STRING([--with-mutexalign=ALIGNMENT], - [Obsolete; use DbEnv::mutex_set_align instead.])], - [AC_MSG_ERROR( - [--with-mutexalign no longer supported, use DbEnv::mutex_set_align])]) - -AC_MSG_CHECKING([if --with-tcl=DIR option specified]) -AC_ARG_WITH(tcl, - [AC_HELP_STRING([--with-tcl=DIR], - [Directory location of tclConfig.sh.])], - [with_tclconfig="$withval"], [with_tclconfig="no"]) -AC_MSG_RESULT($with_tclconfig) -if test "$with_tclconfig" != "no"; then - db_cv_tcl="yes" -fi - -AC_MSG_CHECKING([if --with-uniquename=NAME option specified]) -AC_ARG_WITH(uniquename, - [AC_HELP_STRING([--with-uniquename=NAME], - [Build a uniquely named library.])], - [with_uniquename="$withval"], [with_uniquename="no"]) -if test "$with_uniquename" = "no"; then - db_cv_uniquename="no" - DB_VERSION_UNIQUE_NAME="" - AC_MSG_RESULT($with_uniquename) -else - db_cv_uniquename="yes" - if test "$with_uniquename" = "yes"; then - DB_VERSION_UNIQUE_NAME="__EDIT_DB_VERSION_UNIQUE_NAME__" - else - DB_VERSION_UNIQUE_NAME="$with_uniquename" - fi - AC_MSG_RESULT($DB_VERSION_UNIQUE_NAME) -fi - -# Test requires Tcl -if test "$db_cv_test" = "yes"; then - if test "$db_cv_tcl" = "no"; then - AC_MSG_ERROR([--enable-test requires --enable-tcl]) - fi -fi]) diff --git a/db/dist/aclocal/options.m4 b/db/dist/aclocal/options.m4 index c51a39524..455ec8d8b 100644 --- a/db/dist/aclocal/options.m4 +++ b/db/dist/aclocal/options.m4 @@ -1,121 +1,314 @@ -dnl $Id: options.m4,v 11.10 2000/07/07 15:50:39 bostic Exp $ +# $Id: options.m4,v 12.7 2007/05/04 13:46:25 bostic Exp $ -dnl Process user-specified options. +# Process user-specified options. AC_DEFUN(AM_OPTIONS_SET, [ -AC_MSG_CHECKING(if --disable-bigfile option specified) +# --enable-bigfile was the configuration option that Berkeley DB used before +# autoconf 2.50 was released (which had --enable-largefile integrated in). AC_ARG_ENABLE(bigfile, - [ --disable-bigfile Disable AIX, HP/UX, Solaris big files.], - [db_cv_bigfile="yes"], [db_cv_bigfile="no"]) -AC_MSG_RESULT($db_cv_bigfile) + [AC_HELP_STRING([--disable-bigfile], + [Obsolete; use --disable-largefile instead.])], + [AC_MSG_ERROR( + [--enable-bigfile no longer supported, use --enable-largefile])]) + +AC_MSG_CHECKING(if --disable-cryptography option specified) +AC_ARG_ENABLE(cryptography, + AC_HELP_STRING([--disable-cryptography], + [Do not build database cryptography support.]),, enableval="yes") +db_cv_build_cryptography="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-hash option specified) +AC_ARG_ENABLE(hash, + AC_HELP_STRING([--disable-hash], + [Do not build Hash access method.]),, enableval="yes") +db_cv_build_hash="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-mutexsupport option specified) +AC_ARG_ENABLE(mutexsupport, + AC_HELP_STRING([--disable-mutexsupport], + [Do not build any mutex support.]),, enableval="yes") +db_cv_build_mutexsupport="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-queue option specified) +AC_ARG_ENABLE(queue, + AC_HELP_STRING([--disable-queue], + [Do not build Queue access method.]),, enableval="yes") +db_cv_build_queue="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-replication option specified) +AC_ARG_ENABLE(replication, + AC_HELP_STRING([--disable-replication], + [Do not build database replication support.]),, enableval="yes") +db_cv_build_replication="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-statistics option specified) +AC_ARG_ENABLE(statistics, + AC_HELP_STRING([--disable-statistics], + [Do not build statistics support.]),, enableval="yes") +db_cv_build_statistics="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac + +AC_MSG_CHECKING(if --disable-verify option specified) +AC_ARG_ENABLE(verify, + AC_HELP_STRING([--disable-verify], + [Do not build database verification support.]),, enableval="yes") +db_cv_build_verify="$enableval" +case "$enableval" in + no) AC_MSG_RESULT(yes);; +yes) AC_MSG_RESULT(no);; +esac AC_MSG_CHECKING(if --enable-compat185 option specified) AC_ARG_ENABLE(compat185, - [ --enable-compat185 Build DB 1.85 compatibility API.], + [AC_HELP_STRING([--enable-compat185], + [Build DB 1.85 compatibility API.])], [db_cv_compat185="$enable_compat185"], [db_cv_compat185="no"]) AC_MSG_RESULT($db_cv_compat185) AC_MSG_CHECKING(if --enable-cxx option specified) AC_ARG_ENABLE(cxx, - [ --enable-cxx Build C++ API.], + [AC_HELP_STRING([--enable-cxx], + [Build C++ API.])], [db_cv_cxx="$enable_cxx"], [db_cv_cxx="no"]) AC_MSG_RESULT($db_cv_cxx) AC_MSG_CHECKING(if --enable-debug option specified) AC_ARG_ENABLE(debug, - [ --enable-debug Build a debugging version.], + [AC_HELP_STRING([--enable-debug], + [Build a debugging version.])], [db_cv_debug="$enable_debug"], [db_cv_debug="no"]) AC_MSG_RESULT($db_cv_debug) AC_MSG_CHECKING(if --enable-debug_rop option specified) AC_ARG_ENABLE(debug_rop, - [ --enable-debug_rop Build a version that logs read operations.], + [AC_HELP_STRING([--enable-debug_rop], + [Build a version that logs read operations.])], [db_cv_debug_rop="$enable_debug_rop"], [db_cv_debug_rop="no"]) AC_MSG_RESULT($db_cv_debug_rop) AC_MSG_CHECKING(if --enable-debug_wop option specified) AC_ARG_ENABLE(debug_wop, - [ --enable-debug_wop Build a version that logs write operations.], + [AC_HELP_STRING([--enable-debug_wop], + [Build a version that logs write operations.])], [db_cv_debug_wop="$enable_debug_wop"], [db_cv_debug_wop="no"]) AC_MSG_RESULT($db_cv_debug_wop) AC_MSG_CHECKING(if --enable-diagnostic option specified) AC_ARG_ENABLE(diagnostic, - [ --enable-diagnostic Build a version with run-time diagnostics.], + [AC_HELP_STRING([--enable-diagnostic], + [Build a version with run-time diagnostics.])], [db_cv_diagnostic="$enable_diagnostic"], [db_cv_diagnostic="no"]) -AC_MSG_RESULT($db_cv_diagnostic) +if test "$db_cv_diagnostic" = "yes"; then + AC_MSG_RESULT($db_cv_diagnostic) +fi +if test "$db_cv_diagnostic" = "no" -a "$db_cv_debug_rop" = "yes"; then + db_cv_diagnostic="yes" + AC_MSG_RESULT([by --enable-debug_rop]) +fi +if test "$db_cv_diagnostic" = "no" -a "$db_cv_debug_wop" = "yes"; then + db_cv_diagnostic="yes" + AC_MSG_RESULT([by --enable-debug_wop]) +fi +if test "$db_cv_diagnostic" = "no"; then + AC_MSG_RESULT($db_cv_diagnostic) +fi AC_MSG_CHECKING(if --enable-dump185 option specified) AC_ARG_ENABLE(dump185, - [ --enable-dump185 Build db_dump185(1) to dump 1.85 databases.], + [AC_HELP_STRING([--enable-dump185], + [Build db_dump185(1) to dump 1.85 databases.])], [db_cv_dump185="$enable_dump185"], [db_cv_dump185="no"]) AC_MSG_RESULT($db_cv_dump185) -AC_MSG_CHECKING(if --enable-dynamic option specified) -AC_ARG_ENABLE(dynamic, - [ --enable-dynamic Build with dynamic libraries.], - [db_cv_dynamic="$enable_dynamic"], [db_cv_dynamic="no"]) -AC_MSG_RESULT($db_cv_dynamic) - AC_MSG_CHECKING(if --enable-java option specified) AC_ARG_ENABLE(java, - [ --enable-java Build Java API.], + [AC_HELP_STRING([--enable-java], + [Build Java API.])], [db_cv_java="$enable_java"], [db_cv_java="no"]) AC_MSG_RESULT($db_cv_java) +AC_MSG_CHECKING(if --enable-mingw option specified) +AC_ARG_ENABLE(mingw, + [AC_HELP_STRING([--enable-mingw], + [Build Berkeley DB for MinGW.])], + [db_cv_mingw="$enable_mingw"], [db_cv_mingw="no"]) +AC_MSG_RESULT($db_cv_mingw) + +AC_MSG_CHECKING(if --enable-fine_grained_lock_manager option specified) +AC_ARG_ENABLE(fine_grained_lock_manager, + [AC_HELP_STRING([--enable-fine_grained_lock_manager], + [Build Berkeley DB with a fine-grained lock manager.])], + [db_cv_fine_grained_lock_manager="$enable_fine_grained_lock_manager"], + [db_cv_fine_grained_lock_manager="no"]) +AC_MSG_RESULT($db_cv_fine_grained_lock_manager) +AH_TEMPLATE(HAVE_FINE_GRAINED_LOCK_MANAGER, + [Define to 1 to build Berkeley DB with a fine-grained lock manager.]) +if test "$db_cv_fine_grained_lock_manager" = "yes"; then + AC_DEFINE(HAVE_FINE_GRAINED_LOCK_MANAGER) +fi + +AC_MSG_CHECKING(if --enable-o_direct option specified) +AC_ARG_ENABLE(o_direct, + [AC_HELP_STRING([--enable-o_direct], + [Enable the O_DIRECT flag for direct I/O.])], + [db_cv_o_direct="$enable_o_direct"], [db_cv_o_direct="no"]) +AC_MSG_RESULT($db_cv_o_direct) + AC_MSG_CHECKING(if --enable-posixmutexes option specified) AC_ARG_ENABLE(posixmutexes, - [ --enable-posixmutexes Force use of POSIX standard mutexes.], + [AC_HELP_STRING([--enable-posixmutexes], + [Force use of POSIX standard mutexes.])], [db_cv_posixmutexes="$enable_posixmutexes"], [db_cv_posixmutexes="no"]) AC_MSG_RESULT($db_cv_posixmutexes) +AC_ARG_ENABLE(pthread_self, + [AC_HELP_STRING([--enable-pthread_self], + [Obsolete; use --enable-pthread_api instead.])], + [AC_MSG_ERROR( + [--enable-pthread_self no longer supported, use --enable-pthread_api])]) + +AC_MSG_CHECKING(if --enable-pthread_api option specified) +AC_ARG_ENABLE(pthread_api, + [AC_HELP_STRING([--enable-pthread_api], + [Configure Berkeley DB for POSIX pthread API.])], + [db_cv_pthread_api="$enable_pthread_api"], [db_cv_pthread_api="no"]) +# POSIX mutexes implies other POSIX APIs. +if test "$db_cv_posixmutexes" != "no"; then + db_cv_pthread_api="yes" +fi +AC_MSG_RESULT($db_cv_pthread_api) +AH_TEMPLATE(HAVE_PTHREAD_API, + [Define to 1 to configure Berkeley DB for POSIX pthread API.]) +if test "$db_cv_pthread_api" = "yes"; then + AC_DEFINE(HAVE_PTHREAD_API) +fi + AC_MSG_CHECKING(if --enable-rpc option specified) AC_ARG_ENABLE(rpc, - [ --enable-rpc Build RPC client/server.], + [AC_HELP_STRING([--enable-rpc], + [Build RPC client/server.])], [db_cv_rpc="$enable_rpc"], [db_cv_rpc="no"]) AC_MSG_RESULT($db_cv_rpc) -dnl --enable-shared is an alias for --enable-dynamic. We support it for -dnl compatibility with other applications, e.g., Tcl. -AC_MSG_CHECKING(if --enable-shared option specified) -AC_ARG_ENABLE(shared, - [ --enable-shared Build with dynamic libraries.], - [db_cv_shared="$enable_shared"], [db_cv_shared="no"]) -AC_MSG_RESULT($db_cv_shared) -if test "$db_cv_shared" != "no"; then - db_cv_dynamic="yes" +AC_MSG_CHECKING(if --enable-smallbuild option specified) +AC_ARG_ENABLE(smallbuild, + [AC_HELP_STRING([--enable-smallbuild], + [Build small footprint version of the library.])], + [db_cv_smallbuild="$enable_smallbuild"], [db_cv_smallbuild="no"]) +if test "$db_cv_smallbuild" = "yes"; then + db_cv_build_cryptography="no" + db_cv_build_hash="no" + db_cv_build_queue="no" + db_cv_build_replication="no" + db_cv_build_statistics="no" + db_cv_build_verify="no" fi +AC_MSG_RESULT($db_cv_smallbuild) AC_MSG_CHECKING(if --enable-tcl option specified) AC_ARG_ENABLE(tcl, - [ --enable-tcl Build Tcl API.], + [AC_HELP_STRING([--enable-tcl], + [Build Tcl API.])], [db_cv_tcl="$enable_tcl"], [db_cv_tcl="no"]) AC_MSG_RESULT($db_cv_tcl) AC_MSG_CHECKING(if --enable-test option specified) AC_ARG_ENABLE(test, - [ --enable-test Configure to run the test suite.], + [AC_HELP_STRING([--enable-test], + [Configure to run the test suite.])], [db_cv_test="$enable_test"], [db_cv_test="no"]) AC_MSG_RESULT($db_cv_test) AC_MSG_CHECKING(if --enable-uimutexes option specified) AC_ARG_ENABLE(uimutexes, - [ --enable-uimutexes Force use of Unix International mutexes.], + [AC_HELP_STRING([--enable-uimutexes], + [Force use of Unix International mutexes.])], [db_cv_uimutexes="$enable_uimutexes"], [db_cv_uimutexes="no"]) AC_MSG_RESULT($db_cv_uimutexes) AC_MSG_CHECKING(if --enable-umrw option specified) AC_ARG_ENABLE(umrw, - [ --enable-umrw Mask harmless unitialized memory read/writes.], + [AC_HELP_STRING([--enable-umrw], + [Mask harmless uninitialized memory read/writes.])], [db_cv_umrw="$enable_umrw"], [db_cv_umrw="no"]) AC_MSG_RESULT($db_cv_umrw) -AC_MSG_CHECKING([if --with-tcl option specified]) +AC_MSG_CHECKING(if --with-mutex=MUTEX option specified) +AC_ARG_WITH(mutex, + [AC_HELP_STRING([--with-mutex=MUTEX], + [Select non-default mutex implementation.])], + [with_mutex="$withval"], [with_mutex="no"]) +if test "$with_mutex" = "yes"; then + AC_MSG_ERROR([--with-mutex requires a mutex name argument]) +fi +if test "$with_mutex" != "no"; then + db_cv_mutex="$with_mutex" +fi +AC_MSG_RESULT($with_mutex) + +# --with-mutexalign=ALIGNMENT was the configuration option that Berkeley DB +# used before the DbEnv::mutex_set_align method was added. +AC_ARG_WITH(mutexalign, + [AC_HELP_STRING([--with-mutexalign=ALIGNMENT], + [Obsolete; use DbEnv::mutex_set_align instead.])], + [AC_MSG_ERROR( + [--with-mutexalign no longer supported, use DbEnv::mutex_set_align])]) + +AC_MSG_CHECKING([if --with-tcl=DIR option specified]) AC_ARG_WITH(tcl, - [ --with-tcl=DIR Directory location of tclConfig.sh.], - with_tclconfig=${withval}, with_tclconfig="no") + [AC_HELP_STRING([--with-tcl=DIR], + [Directory location of tclConfig.sh.])], + [with_tclconfig="$withval"], [with_tclconfig="no"]) AC_MSG_RESULT($with_tclconfig) if test "$with_tclconfig" != "no"; then db_cv_tcl="yes" fi -])dnl + +AC_MSG_CHECKING([if --with-uniquename=NAME option specified]) +AC_ARG_WITH(uniquename, + [AC_HELP_STRING([--with-uniquename=NAME], + [Build a uniquely named library.])], + [with_uniquename="$withval"], [with_uniquename="no"]) +if test "$with_uniquename" = "no"; then + db_cv_uniquename="no" + DB_VERSION_UNIQUE_NAME="" + AC_MSG_RESULT($with_uniquename) +else + db_cv_uniquename="yes" + if test "$with_uniquename" = "yes"; then + DB_VERSION_UNIQUE_NAME="__EDIT_DB_VERSION_UNIQUE_NAME__" + else + DB_VERSION_UNIQUE_NAME="$with_uniquename" + fi + AC_MSG_RESULT($DB_VERSION_UNIQUE_NAME) +fi + +# Test requires Tcl +if test "$db_cv_test" = "yes"; then + if test "$db_cv_tcl" = "no"; then + AC_MSG_ERROR([--enable-test requires --enable-tcl]) + fi +fi]) diff --git a/db/dist/aclocal/programs.ac b/db/dist/aclocal/programs.ac deleted file mode 100644 index 3fb61f045..000000000 --- a/db/dist/aclocal/programs.ac +++ /dev/null @@ -1,52 +0,0 @@ -# $Id: programs.ac,v 12.2 2006/07/06 14:00:28 bostic Exp $ - -# Check for programs used in building/installation. -AC_DEFUN(AM_PROGRAMS_SET, [ - -AC_CHECK_TOOL(AR, ar, none) -test "$AR" = "none" && AC_MSG_ERROR([No ar utility found.]) - -AC_CHECK_TOOL(CHMOD, chmod, none) -test "$CHMOD" = "none" && AC_MSG_ERROR([No chmod utility found.]) - -AC_CHECK_TOOL(CP, cp, none) -test "$CP" = "none" && AC_MSG_ERROR([No cp utility found.]) - -# The Tcl test suite requires a kill utility. -if test "$db_cv_test" = "yes"; then - AC_CHECK_TOOL(KILL, kill, none) - test "$KILL" = "none" && AC_MSG_ERROR([No kill utility found.]) -fi - -AC_CHECK_TOOL(LN, ln, none) -test "$LN" = "none" && AC_MSG_ERROR([No ln utility found.]) - -AC_CHECK_TOOL(MKDIR, mkdir, none) -test "$MKDIR" = "none" && AC_MSG_ERROR([No mkdir utility found.]) - -# Ranlib doesn't exist on some architectures because the ar utility -# packages the library itself. -AC_CHECK_TOOL(RANLIB, ranlib, none) - -AC_CHECK_TOOL(RM, rm, none) -test "$RM" = "none" && AC_MSG_ERROR([No rm utility found.]) - -if test "$db_cv_rpc" = "yes"; then - AC_CHECK_TOOL(RPCGEN, rpcgen, none) - test "$RPCGEN" = "none" && AC_MSG_ERROR([No rpcgen utility found.]) -fi - -# We need a complete path for sh, because some make utility implementations get -# upset if SHELL is set to just the command name. Don't use the SHELL variable -# here because the user likely has the SHELL variable set to something other -# than the Bourne shell, which is what Make wants. -AC_PATH_TOOL(db_cv_path_sh, sh, none) -test "$db_cv_path_sh" = "none" && AC_MSG_ERROR([No sh utility found.]) - -# Don't strip the binaries if --enable-debug was specified. -if test "$db_cv_debug" = yes; then - STRIP="none" -else - AC_CHECK_TOOL(STRIP, strip, none) - test "$STRIP" = "none" && AC_MSG_WARN([No strip utility found.]) -fi]) diff --git a/db/dist/aclocal/programs.m4 b/db/dist/aclocal/programs.m4 index 9ec04f4d8..9a592f788 100644 --- a/db/dist/aclocal/programs.m4 +++ b/db/dist/aclocal/programs.m4 @@ -1,48 +1,42 @@ -dnl $Id: programs.m4,v 11.11 2000/03/30 21:20:50 bostic Exp $ +# $Id: programs.m4,v 12.3 2007/04/18 14:28:19 bostic Exp $ -dnl Check for programs used in building/installation. +# Check for programs used in building/installation. AC_DEFUN(AM_PROGRAMS_SET, [ -AC_PATH_PROG(db_cv_path_ar, ar, missing_ar) -if test "$db_cv_path_ar" = missing_ar; then - AC_MSG_ERROR([No ar utility found.]) -fi -AC_PATH_PROG(db_cv_path_chmod, chmod, missing_chmod) -if test "$db_cv_path_chmod" = missing_chmod; then - AC_MSG_ERROR([No chmod utility found.]) -fi -AC_PATH_PROG(db_cv_path_cp, cp, missing_cp) -if test "$db_cv_path_cp" = missing_cp; then - AC_MSG_ERROR([No cp utility found.]) -fi -AC_PATH_PROG(db_cv_path_ln, ln, missing_ln) -if test "$db_cv_path_ln" = missing_ln; then - AC_MSG_ERROR([No ln utility found.]) -fi -AC_PATH_PROG(db_cv_path_mkdir, mkdir, missing_mkdir) -if test "$db_cv_path_mkdir" = missing_mkdir; then - AC_MSG_ERROR([No mkdir utility found.]) -fi -AC_PATH_PROG(db_cv_path_ranlib, ranlib, missing_ranlib) -AC_PATH_PROG(db_cv_path_rm, rm, missing_rm) -if test "$db_cv_path_rm" = missing_rm; then - AC_MSG_ERROR([No rm utility found.]) -fi -AC_PATH_PROG(db_cv_path_sh, sh, missing_sh) -if test "$db_cv_path_sh" = missing_sh; then - AC_MSG_ERROR([No sh utility found.]) -fi -AC_PATH_PROG(db_cv_path_strip, strip, missing_strip) -if test "$db_cv_path_strip" = missing_strip; then - AC_MSG_ERROR([No strip utility found.]) -fi +AC_CHECK_TOOL(CHMOD, chmod, none) +test "$CHMOD" = "none" && AC_MSG_ERROR([No chmod utility found.]) -dnl Check for programs used in testing. +AC_CHECK_TOOL(CP, cp, none) +test "$CP" = "none" && AC_MSG_ERROR([No cp utility found.]) + +# The Tcl test suite requires a kill utility. if test "$db_cv_test" = "yes"; then - AC_PATH_PROG(db_cv_path_kill, kill, missing_kill) - if test "$db_cv_path_kill" = missing_kill; then - AC_MSG_ERROR([No kill utility found.]) - fi + AC_CHECK_TOOL(KILL, kill, none) + test "$KILL" = "none" && AC_MSG_ERROR([No kill utility found.]) fi -])dnl +AC_CHECK_TOOL(LN, ln, none) +test "$LN" = "none" && AC_MSG_ERROR([No ln utility found.]) + +AC_CHECK_TOOL(MKDIR, mkdir, none) +test "$MKDIR" = "none" && AC_MSG_ERROR([No mkdir utility found.]) + +AC_CHECK_TOOL(RM, rm, none) +test "$RM" = "none" && AC_MSG_ERROR([No rm utility found.]) + +if test "$db_cv_rpc" = "yes"; then + AC_CHECK_TOOL(RPCGEN, rpcgen, none) + test "$RPCGEN" = "none" && AC_MSG_ERROR([No rpcgen utility found.]) +fi + +# We need a complete path for sh, because some make utility implementations get +# upset if SHELL is set to just the command name. Don't use the SHELL variable +# here because the user likely has the SHELL variable set to something other +# than the Bourne shell, which is what Make wants. +AC_PATH_TOOL(db_cv_path_sh, sh, none) +test "$db_cv_path_sh" = "none" && AC_MSG_ERROR([No sh utility found.]) + +# Don't strip the binaries if --enable-debug was specified. +if test "$db_cv_debug" = yes; then + STRIP=":" +fi]) diff --git a/db/dist/aclocal/rpc.ac b/db/dist/aclocal/rpc.ac deleted file mode 100644 index 11fb0e925..000000000 --- a/db/dist/aclocal/rpc.ac +++ /dev/null @@ -1,77 +0,0 @@ -# $Id: rpc.ac,v 12.1 2006/05/08 20:52:36 bostic Exp $ - -# Try and configure RPC support. -AC_DEFUN(AM_RPC_CONFIGURE, [ - AC_DEFINE(HAVE_RPC) - AH_TEMPLATE(HAVE_RPC, [Define to 1 if building RPC client/server.]) - - # We use the target's rpcgen utility because it may be architecture - # specific, for example, 32- or 64-bit specific. - XDR_FILE=$srcdir/../rpc_server/db_server.x - - # Prefer the -C option to rpcgen which generates ANSI C-conformant - # code. - RPCGEN="rpcgen -C" - AC_MSG_CHECKING(["$RPCGEN" build of db_server.h]) - $RPCGEN -h $XDR_FILE > db_server.h 2>/dev/null - if test $? -ne 0; then - AC_MSG_RESULT([no]) - - # Try rpcgen without the -C option. - RPCGEN="rpcgen" - AC_MSG_CHECKING(["$RPCGEN" build of db_server.h]) - $RPCGEN -h $XDR_FILE > db_server.h 2>/dev/null - if test $? -ne 0; then - AC_MSG_RESULT([no]) - AC_MSG_ERROR( - [Unable to build RPC support: $RPCGEN failed.]) - fi - fi - - # Some rpcgen programs generate a set of client stubs called something - # like __db_env_create_4003 and functions on the server to handle the - # request called something like __db_env_create_4003_svc. Others - # expect client and server stubs to both be called __db_env_create_4003. - # - # We have to generate code in whichever format rpcgen expects, and the - # only reliable way to do that is to check what is in the db_server.h - # file we just created. - if grep "env_create_[[0-9]]*_svc" db_server.h >/dev/null 2>&1 ; then - sed 's/__SVCSUFFIX__/_svc/' \ - < $srcdir/../rpc_server/c/gen_db_server.c > gen_db_server.c - else - sed 's/__SVCSUFFIX__//' \ - < $srcdir/../rpc_server/c/gen_db_server.c > gen_db_server.c - fi - - AC_MSG_RESULT([yes]) - - $RPCGEN -l $XDR_FILE | - sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ - -e '1,/^#include/s/^#include/#include "db_config.h"\ -&/' > db_server_clnt.c - - $RPCGEN -s tcp $XDR_FILE | - sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ - -e 's/^main *()/__dbsrv_main()/' \ - -e 's/^main *(.*argc.*argv.*)/__dbsrv_main(int argc, char *argv[])/' \ - -e '/^db_rpc_serverprog/,/^}/{' \ - -e 's/return;//' \ - -e 's/^}/__dbsrv_timeout(0);}/' \ - -e '}' \ - -e '1,/^#include/s/^#include/#include "db_config.h"\ -&/' > db_server_svc.c - - $RPCGEN -c $XDR_FILE | - sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ - -e '1,/^#include/s/^#include/#include "db_config.h"\ -&/' > db_server_xdr.c - - RPC_SERVER_H=db_server.h - RPC_CLIENT_OBJS="\$(RPC_CLIENT_OBJS)" - ADDITIONAL_PROGS="berkeley_db_svc $ADDITIONAL_PROGS" - - # Solaris and HPUX need the nsl library to build RPC. - AC_CHECK_FUNC(svc_run,, - AC_HAVE_LIBRARY(nsl, LIBSO_LIBS="$LIBSO_LIBS -lnsl")) -]) diff --git a/db/dist/aclocal/rpc.m4 b/db/dist/aclocal/rpc.m4 new file mode 100644 index 000000000..44fc15efa --- /dev/null +++ b/db/dist/aclocal/rpc.m4 @@ -0,0 +1,77 @@ +# $Id: rpc.m4,v 12.1 2006/05/08 20:52:36 bostic Exp $ + +# Try and configure RPC support. +AC_DEFUN(AM_RPC_CONFIGURE, [ + AC_DEFINE(HAVE_RPC) + AH_TEMPLATE(HAVE_RPC, [Define to 1 if building RPC client/server.]) + + # We use the target's rpcgen utility because it may be architecture + # specific, for example, 32- or 64-bit specific. + XDR_FILE=$srcdir/../rpc_server/db_server.x + + # Prefer the -C option to rpcgen which generates ANSI C-conformant + # code. + RPCGEN="rpcgen -C" + AC_MSG_CHECKING(["$RPCGEN" build of db_server.h]) + $RPCGEN -h $XDR_FILE > db_server.h 2>/dev/null + if test $? -ne 0; then + AC_MSG_RESULT([no]) + + # Try rpcgen without the -C option. + RPCGEN="rpcgen" + AC_MSG_CHECKING(["$RPCGEN" build of db_server.h]) + $RPCGEN -h $XDR_FILE > db_server.h 2>/dev/null + if test $? -ne 0; then + AC_MSG_RESULT([no]) + AC_MSG_ERROR( + [Unable to build RPC support: $RPCGEN failed.]) + fi + fi + + # Some rpcgen programs generate a set of client stubs called something + # like __db_env_create_4003 and functions on the server to handle the + # request called something like __db_env_create_4003_svc. Others + # expect client and server stubs to both be called __db_env_create_4003. + # + # We have to generate code in whichever format rpcgen expects, and the + # only reliable way to do that is to check what is in the db_server.h + # file we just created. + if grep "env_create_[[0-9]]*_svc" db_server.h >/dev/null 2>&1 ; then + sed 's/__SVCSUFFIX__/_svc/' \ + < $srcdir/../rpc_server/c/gen_db_server.c > gen_db_server.c + else + sed 's/__SVCSUFFIX__//' \ + < $srcdir/../rpc_server/c/gen_db_server.c > gen_db_server.c + fi + + AC_MSG_RESULT([yes]) + + $RPCGEN -l $XDR_FILE | + sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ + -e '1,/^#include/s/^#include/#include "db_config.h"\ +&/' > db_server_clnt.c + + $RPCGEN -s tcp $XDR_FILE | + sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ + -e 's/^main *()/__dbsrv_main()/' \ + -e 's/^main *(.*argc.*argv.*)/__dbsrv_main(int argc, char *argv[])/' \ + -e '/^db_rpc_serverprog/,/^}/{' \ + -e 's/return;//' \ + -e 's/^}/__dbsrv_timeout(0);}/' \ + -e '}' \ + -e '1,/^#include/s/^#include/#include "db_config.h"\ +&/' > db_server_svc.c + + $RPCGEN -c $XDR_FILE | + sed -e 's/^#include.*db_server.h.*/#include "db_server.h"/' \ + -e '1,/^#include/s/^#include/#include "db_config.h"\ +&/' > db_server_xdr.c + + RPC_SERVER_H=db_server.h + RPC_CLIENT_OBJS="\$(RPC_CLIENT_OBJS)" + ADDITIONAL_PROGS="berkeley_db_svc $ADDITIONAL_PROGS" + + # Solaris and HPUX need the nsl library to build RPC. + AC_CHECK_FUNC(svc_run,, + AC_HAVE_LIBRARY(nsl, LIBSO_LIBS="$LIBSO_LIBS -lnsl")) +]) diff --git a/db/dist/aclocal/sequence.ac b/db/dist/aclocal/sequence.ac deleted file mode 100644 index 75cf19bfd..000000000 --- a/db/dist/aclocal/sequence.ac +++ /dev/null @@ -1,91 +0,0 @@ -# $Id: sequence.ac,v 12.3 2005/11/24 00:49:24 bostic Exp $ - -# Try and configure sequence support. -AC_DEFUN(AM_SEQUENCE_CONFIGURE, [ - AC_MSG_CHECKING([for 64-bit integral type support for sequences]) - - db_cv_build_sequence="yes" - - # Have to have found 64-bit types to support sequences. If we don't - # find the native types, we try and create our own. - if test "$ac_cv_type_int64_t" = "no" -a -z "$int64_decl"; then - db_cv_build_sequence="no" - fi - if test "$ac_cv_type_uint64_t" = "no" -a -z "$u_int64_decl"; then - db_cv_build_sequence="no" - fi - - # Figure out what type is the right size, and set the format. - AC_SUBST(INT64_FMT) - AC_SUBST(UINT64_FMT) - db_cv_seq_type="no" - if test "$db_cv_build_sequence" = "yes" -a\ - "$ac_cv_sizeof_long" -eq "8"; then - db_cv_seq_type="long" - db_cv_seq_fmt='"%ld"' - db_cv_seq_ufmt='"%lu"' - INT64_FMT='#define INT64_FMT "%ld"' - UINT64_FMT='#define UINT64_FMT "%lu"' - else if test "$db_cv_build_sequence" = "yes" -a\ - "$ac_cv_sizeof_long_long" -eq "8"; then - db_cv_seq_type="long long" - db_cv_seq_fmt='"%lld"' - db_cv_seq_ufmt='"%llu"' - INT64_FMT='#define INT64_FMT "%lld"' - UINT64_FMT='#define UINT64_FMT "%llu"' - else - db_cv_build_sequence="no" - fi - fi - - # Test to see if we can declare variables of the appropriate size - # and format them. If we're cross-compiling, all we get is a link - # test, which won't test for the appropriate printf format strings. - if test "$db_cv_build_sequence" = "yes"; then - AC_TRY_RUN([ - main() { - $db_cv_seq_type l; - unsigned $db_cv_seq_type u; - char buf@<:@100@:>@; - - buf@<:@0@:>@ = 'a'; - l = 9223372036854775807LL; - (void)snprintf(buf, sizeof(buf), $db_cv_seq_fmt, l); - if (strcmp(buf, "9223372036854775807")) - return (1); - u = 18446744073709551615ULL; - (void)snprintf(buf, sizeof(buf), $db_cv_seq_ufmt, u); - if (strcmp(buf, "18446744073709551615")) - return (1); - return (0); - }],, [db_cv_build_sequence="no"], - AC_TRY_LINK(,[ - $db_cv_seq_type l; - unsigned $db_cv_seq_type u; - char buf@<:@100@:>@; - - buf@<:@0@:>@ = 'a'; - l = 9223372036854775807LL; - (void)snprintf(buf, sizeof(buf), $db_cv_seq_fmt, l); - if (strcmp(buf, "9223372036854775807")) - return (1); - u = 18446744073709551615ULL; - (void)snprintf(buf, sizeof(buf), $db_cv_seq_ufmt, u); - if (strcmp(buf, "18446744073709551615")) - return (1); - return (0); - ],, [db_cv_build_sequence="no"])) - fi - if test "$db_cv_build_sequence" = "yes"; then - AC_SUBST(db_seq_decl) - db_seq_decl="typedef int64_t db_seq_t;"; - - AC_DEFINE(HAVE_64BIT_TYPES) - AH_TEMPLATE(HAVE_64BIT_TYPES, - [Define to 1 if 64-bit types are available.]) - else - # It still has to compile, but it won't run. - db_seq_decl="typedef int db_seq_t;"; - fi - AC_MSG_RESULT($db_cv_build_sequence) -]) diff --git a/db/dist/aclocal/sequence.m4 b/db/dist/aclocal/sequence.m4 new file mode 100644 index 000000000..a2c358f91 --- /dev/null +++ b/db/dist/aclocal/sequence.m4 @@ -0,0 +1,91 @@ +# $Id: sequence.m4,v 12.3 2005/11/24 00:49:24 bostic Exp $ + +# Try and configure sequence support. +AC_DEFUN(AM_SEQUENCE_CONFIGURE, [ + AC_MSG_CHECKING([for 64-bit integral type support for sequences]) + + db_cv_build_sequence="yes" + + # Have to have found 64-bit types to support sequences. If we don't + # find the native types, we try and create our own. + if test "$ac_cv_type_int64_t" = "no" -a -z "$int64_decl"; then + db_cv_build_sequence="no" + fi + if test "$ac_cv_type_uint64_t" = "no" -a -z "$u_int64_decl"; then + db_cv_build_sequence="no" + fi + + # Figure out what type is the right size, and set the format. + AC_SUBST(INT64_FMT) + AC_SUBST(UINT64_FMT) + db_cv_seq_type="no" + if test "$db_cv_build_sequence" = "yes" -a\ + "$ac_cv_sizeof_long" -eq "8"; then + db_cv_seq_type="long" + db_cv_seq_fmt='"%ld"' + db_cv_seq_ufmt='"%lu"' + INT64_FMT='#define INT64_FMT "%ld"' + UINT64_FMT='#define UINT64_FMT "%lu"' + else if test "$db_cv_build_sequence" = "yes" -a\ + "$ac_cv_sizeof_long_long" -eq "8"; then + db_cv_seq_type="long long" + db_cv_seq_fmt='"%lld"' + db_cv_seq_ufmt='"%llu"' + INT64_FMT='#define INT64_FMT "%lld"' + UINT64_FMT='#define UINT64_FMT "%llu"' + else + db_cv_build_sequence="no" + fi + fi + + # Test to see if we can declare variables of the appropriate size + # and format them. If we're cross-compiling, all we get is a link + # test, which won't test for the appropriate printf format strings. + if test "$db_cv_build_sequence" = "yes"; then + AC_TRY_RUN([ + main() { + $db_cv_seq_type l; + unsigned $db_cv_seq_type u; + char buf@<:@100@:>@; + + buf@<:@0@:>@ = 'a'; + l = 9223372036854775807LL; + (void)snprintf(buf, sizeof(buf), $db_cv_seq_fmt, l); + if (strcmp(buf, "9223372036854775807")) + return (1); + u = 18446744073709551615ULL; + (void)snprintf(buf, sizeof(buf), $db_cv_seq_ufmt, u); + if (strcmp(buf, "18446744073709551615")) + return (1); + return (0); + }],, [db_cv_build_sequence="no"], + AC_TRY_LINK(,[ + $db_cv_seq_type l; + unsigned $db_cv_seq_type u; + char buf@<:@100@:>@; + + buf@<:@0@:>@ = 'a'; + l = 9223372036854775807LL; + (void)snprintf(buf, sizeof(buf), $db_cv_seq_fmt, l); + if (strcmp(buf, "9223372036854775807")) + return (1); + u = 18446744073709551615ULL; + (void)snprintf(buf, sizeof(buf), $db_cv_seq_ufmt, u); + if (strcmp(buf, "18446744073709551615")) + return (1); + return (0); + ],, [db_cv_build_sequence="no"])) + fi + if test "$db_cv_build_sequence" = "yes"; then + AC_SUBST(db_seq_decl) + db_seq_decl="typedef int64_t db_seq_t;"; + + AC_DEFINE(HAVE_64BIT_TYPES) + AH_TEMPLATE(HAVE_64BIT_TYPES, + [Define to 1 if 64-bit types are available.]) + else + # It still has to compile, but it won't run. + db_seq_decl="typedef int db_seq_t;"; + fi + AC_MSG_RESULT($db_cv_build_sequence) +]) diff --git a/db/dist/aclocal/socklen.m4 b/db/dist/aclocal/socklen.m4 new file mode 100644 index 000000000..4a77800d9 --- /dev/null +++ b/db/dist/aclocal/socklen.m4 @@ -0,0 +1,55 @@ +dnl Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Albert Chin, Windows fixes from Simon Josefsson. + +dnl Check for socklen_t: historically on BSD it is an int, and in +dnl POSIX 1g it is a type of its own, but some platforms use different +dnl types for the argument to getsockopt, getpeername, etc. So we +dnl have to test to find something that will work. + +dnl On mingw32, socklen_t is in ws2tcpip.h ('int'), so we try to find +dnl it there first. That file is included by gnulib's socket_.h, which +dnl all users of this module should include. Cygwin must not include +dnl ws2tcpip.h. + +dnl Windows fixes removed for Berkeley DB. Functions renamed, basic check +dnl remains the same though. +dnl !!! +dnl The original version had fixes for MinGW -- if you need those, go back +dnl and look at the original code. + +AC_DEFUN([AM_SOCKLEN_T],[ + AC_CHECK_TYPE([socklen_t], , + [AC_MSG_CHECKING([for socklen_t equivalent]) + AC_CACHE_VAL([db_cv_socklen_t_equiv], + [# Systems have either "struct sockaddr *" or + # "void *" as the second argument to getpeername + db_cv_socklen_t_equiv= + for arg2 in "struct sockaddr" void; do + for t in int size_t "unsigned int" "long int" "unsigned long int"; do + AC_TRY_COMPILE( + [#include + #include + + int getpeername (int, $arg2 *, $t *);], + [$t len; + getpeername (0, 0, &len);], + [db_cv_socklen_t_equiv="$t"]) + test "$db_cv_socklen_t_equiv" != "" && break + done + test "$db_cv_socklen_t_equiv" != "" && break + done + ]) + if test "$db_cv_socklen_t_equiv" = ""; then + AC_MSG_ERROR([Cannot find a type to use in place of socklen_t]) + fi + AC_MSG_RESULT([$db_cv_socklen_t_equiv]) + AC_DEFINE_UNQUOTED([socklen_t], [$db_cv_socklen_t_equiv], + [type to use in place of socklen_t if not defined])], + [#include + #ifdef HAVE_SYS_SOCKET_H + #include + #endif])]) diff --git a/db/dist/aclocal/sosuffix.ac b/db/dist/aclocal/sosuffix.ac deleted file mode 100644 index bd391e248..000000000 --- a/db/dist/aclocal/sosuffix.ac +++ /dev/null @@ -1,76 +0,0 @@ -# $Id: sosuffix.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -# Determine shared object suffixes. -# -# Our method is to use the libtool variable $library_names_spec, -# set by using AC_PROG_LIBTOOL. This variable is a snippet of shell -# defined in terms of $versuffix, $release, $libname and $module -# We want to eval it and grab the suffix used for shared objects. -# By setting $module to yes/no, we obtain the suffixes -# used to create dlloadable, or java loadable modules. -# On many (*nix) systems, these all evaluate to .so, but there -# are some notable exceptions. -# Before calling this macro, $LIBTOOL_PROG must be set to -# the correct method of invoking libtool (e.g. $SHELL ./libtool) - -# This macro is used internally to discover the suffix for the current -# settings of $module. The result is stored in $_SOSUFFIX. -AC_DEFUN(_SOSUFFIX_INTERNAL, [ - versuffix="" - release="" - libname=libfoo - eval _SOSUFFIX=\"$shrext_cmds\" - if test "$_SOSUFFIX" = "" ; then - _SOSUFFIX=".so" - if test `$LIBTOOL_PROG --config | grep build_libtool_libs | grep no` 2>/dev/null; then - if test "$_SOSUFFIX_MESSAGE" = ""; then - _SOSUFFIX_MESSAGE=yes - AC_MSG_WARN([libtool may not know about this architecture.]) - AC_MSG_WARN([assuming $_SUFFIX suffix for dynamic libraries.]) - fi - fi - fi -]) - -# SOSUFFIX_CONFIG will set the variable SOSUFFIX to be the -# shared library extension used for general linking, not dlopen. -AC_DEFUN(SOSUFFIX_CONFIG, [ - AC_MSG_CHECKING([SOSUFFIX from libtool]) - module=no - _SOSUFFIX_INTERNAL - SOSUFFIX=$_SOSUFFIX - AC_MSG_RESULT($SOSUFFIX) - AC_SUBST(SOSUFFIX) -]) - -# MODSUFFIX_CONFIG will set the variable MODSUFFIX to be the -# shared library extension used for dlopen'ed modules. -# To discover this, we set $module, simulating libtool's -module option. -AC_DEFUN(MODSUFFIX_CONFIG, [ - AC_MSG_CHECKING([MODSUFFIX from libtool]) - module=yes - _SOSUFFIX_INTERNAL - MODSUFFIX=$_SOSUFFIX - AC_MSG_RESULT($MODSUFFIX) - AC_SUBST(MODSUFFIX) -]) - -# JMODSUFFIX_CONFIG will set the variable JMODSUFFIX to be the -# shared library extension used JNI modules opened by Java. -# To discover this, we set $jnimodule, simulating libtool's -shrext option. -########################################################################## -# Robert Boehne: Not much point in this macro any more because apparently -# Darwin is the only OS that wants or needs the .jnilib extension. -########################################################################## -AC_DEFUN(JMODSUFFIX_CONFIG, [ - AC_MSG_CHECKING([JMODSUFFIX from libtool]) - module=yes - _SOSUFFIX_INTERNAL - if test `uname` = "Darwin"; then - JMODSUFFIX=".jnilib" - else - JMODSUFFIX=$_SOSUFFIX - fi - AC_MSG_RESULT($JMODSUFFIX) - AC_SUBST(JMODSUFFIX) -]) - diff --git a/db/dist/aclocal/sosuffix.m4 b/db/dist/aclocal/sosuffix.m4 new file mode 100644 index 000000000..17224f7ba --- /dev/null +++ b/db/dist/aclocal/sosuffix.m4 @@ -0,0 +1,76 @@ +# $Id: sosuffix.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +# Determine shared object suffixes. +# +# Our method is to use the libtool variable $library_names_spec, +# set by using AC_PROG_LIBTOOL. This variable is a snippet of shell +# defined in terms of $versuffix, $release, $libname and $module +# We want to eval it and grab the suffix used for shared objects. +# By setting $module to yes/no, we obtain the suffixes +# used to create dlloadable, or java loadable modules. +# On many (*nix) systems, these all evaluate to .so, but there +# are some notable exceptions. +# Before calling this macro, $LIBTOOL_PROG must be set to +# the correct method of invoking libtool (e.g. $SHELL ./libtool) + +# This macro is used internally to discover the suffix for the current +# settings of $module. The result is stored in $_SOSUFFIX. +AC_DEFUN(_SOSUFFIX_INTERNAL, [ + versuffix="" + release="" + libname=libfoo + eval _SOSUFFIX=\"$shrext_cmds\" + if test "$_SOSUFFIX" = "" ; then + _SOSUFFIX=".so" + if test `$LIBTOOL_PROG --config | grep build_libtool_libs | grep no` 2>/dev/null; then + if test "$_SOSUFFIX_MESSAGE" = ""; then + _SOSUFFIX_MESSAGE=yes + AC_MSG_WARN([libtool may not know about this architecture.]) + AC_MSG_WARN([assuming $_SUFFIX suffix for dynamic libraries.]) + fi + fi + fi +]) + +# SOSUFFIX_CONFIG will set the variable SOSUFFIX to be the +# shared library extension used for general linking, not dlopen. +AC_DEFUN(SOSUFFIX_CONFIG, [ + AC_MSG_CHECKING([SOSUFFIX from libtool]) + module=no + _SOSUFFIX_INTERNAL + SOSUFFIX=$_SOSUFFIX + AC_MSG_RESULT($SOSUFFIX) + AC_SUBST(SOSUFFIX) +]) + +# MODSUFFIX_CONFIG will set the variable MODSUFFIX to be the +# shared library extension used for dlopen'ed modules. +# To discover this, we set $module, simulating libtool's -module option. +AC_DEFUN(MODSUFFIX_CONFIG, [ + AC_MSG_CHECKING([MODSUFFIX from libtool]) + module=yes + _SOSUFFIX_INTERNAL + MODSUFFIX=$_SOSUFFIX + AC_MSG_RESULT($MODSUFFIX) + AC_SUBST(MODSUFFIX) +]) + +# JMODSUFFIX_CONFIG will set the variable JMODSUFFIX to be the +# shared library extension used JNI modules opened by Java. +# To discover this, we set $jnimodule, simulating libtool's -shrext option. +########################################################################## +# Robert Boehne: Not much point in this macro any more because apparently +# Darwin is the only OS that wants or needs the .jnilib extension. +########################################################################## +AC_DEFUN(JMODSUFFIX_CONFIG, [ + AC_MSG_CHECKING([JMODSUFFIX from libtool]) + module=yes + _SOSUFFIX_INTERNAL + if test `uname` = "Darwin"; then + JMODSUFFIX=".jnilib" + else + JMODSUFFIX=$_SOSUFFIX + fi + AC_MSG_RESULT($JMODSUFFIX) + AC_SUBST(JMODSUFFIX) +]) + diff --git a/db/dist/aclocal/tcl.ac b/db/dist/aclocal/tcl.ac deleted file mode 100644 index 360cf62b1..000000000 --- a/db/dist/aclocal/tcl.ac +++ /dev/null @@ -1,135 +0,0 @@ -# $Id: tcl.ac,v 12.2 2005/06/28 20:45:25 gmf Exp $ - -# The SC_* macros in this file are from the unix/tcl.m4 files in the Tcl -# 8.3.0 distribution, with some minor changes. For this reason, license -# terms for the Berkeley DB distribution dist/aclocal/tcl.m4 file are as -# follows (copied from the license.terms file in the Tcl 8.3 distribution): -# -# This software is copyrighted by the Regents of the University of -# California, Sun Microsystems, Inc., Scriptics Corporation, -# and other parties. The following terms apply to all files associated -# with the software unless explicitly disclaimed in individual files. -# -# The authors hereby grant permission to use, copy, modify, distribute, -# and license this software and its documentation for any purpose, provided -# that existing copyright notices are retained in all copies and that this -# notice is included verbatim in any distributions. No written agreement, -# license, or royalty fee is required for any of the authorized uses. -# Modifications to this software may be copyrighted by their authors -# and need not follow the licensing terms described here, provided that -# the new terms are clearly indicated on the first page of each file where -# they apply. -# -# IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY -# FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES -# ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY -# DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# -# THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, -# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE -# IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE -# NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR -# MODIFICATIONS. -# -# GOVERNMENT USE: If you are acquiring this software on behalf of the -# U.S. government, the Government shall have only "Restricted Rights" -# in the software and related documentation as defined in the Federal -# Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you -# are acquiring the software on behalf of the Department of Defense, the -# software shall be classified as "Commercial Computer Software" and the -# Government shall have only "Restricted Rights" as defined in Clause -# 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the -# authors grant the U.S. Government and others acting in its behalf -# permission to use and distribute the software in accordance with the -# terms specified in this license. - -AC_DEFUN(SC_PATH_TCLCONFIG, [ - AC_CACHE_VAL(ac_cv_c_tclconfig,[ - - # First check to see if --with-tclconfig was specified. - if test "${with_tclconfig}" != no; then - if test -f "${with_tclconfig}/tclConfig.sh" ; then - ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` - else - AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh]) - fi - fi - - # check in a few common install locations - if test x"${ac_cv_c_tclconfig}" = x ; then - for i in `ls -d /usr/local/lib 2>/dev/null` ; do - if test -f "$i/tclConfig.sh" ; then - ac_cv_c_tclconfig=`(cd $i; pwd)` - break - fi - done - fi - - ]) - - if test x"${ac_cv_c_tclconfig}" = x ; then - TCL_BIN_DIR="# no Tcl configs found" - AC_MSG_ERROR(can't find Tcl configuration definitions) - else - TCL_BIN_DIR=${ac_cv_c_tclconfig} - fi -]) - -AC_DEFUN(SC_LOAD_TCLCONFIG, [ - AC_MSG_CHECKING([for existence of $TCL_BIN_DIR/tclConfig.sh]) - - if test -f "$TCL_BIN_DIR/tclConfig.sh" ; then - AC_MSG_RESULT([loading]) - . $TCL_BIN_DIR/tclConfig.sh - else - AC_MSG_RESULT([file not found]) - fi - - # DB requires at least version 8.4. - if test ${TCL_MAJOR_VERSION} -lt 8 \ - -o ${TCL_MAJOR_VERSION} -eq 8 -a ${TCL_MINOR_VERSION} -lt 4; then - AC_MSG_ERROR([Berkeley DB requires Tcl version 8.4 or better.]) - fi - - # The eval is required to do substitution (for example, the TCL_DBGX - # substitution in the TCL_LIB_FILE variable. - eval "TCL_INCLUDE_SPEC=\"${TCL_INCLUDE_SPEC}\"" - eval "TCL_LIB_FILE=\"${TCL_LIB_FILE}\"" - eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" - eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" - - # - # If the DB Tcl library isn't loaded with the Tcl spec and library - # flags on AIX, the resulting libdb_tcl-X.Y.so.0 will drop core at - # load time. [#4843] Furthermore, with Tcl 8.3, the link flags - # given by the Tcl spec are insufficient for our use. [#5779] - # - case "$host_os" in - aix4.[[2-9]].*) - LIBTSO_LIBS="$LIBTSO_LIBS $TCL_LIB_SPEC $TCL_LIB_FLAG" - LIBTSO_LIBS="$LIBTSO_LIBS -L$TCL_EXEC_PREFIX/lib -ltcl$TCL_VERSION";; - aix*) - LIBTSO_LIBS="$LIBTSO_LIBS $TCL_LIB_SPEC $TCL_LIB_FLAG";; - esac - AC_SUBST(TCL_BIN_DIR) - AC_SUBST(TCL_INCLUDE_SPEC) - AC_SUBST(TCL_LIB_FILE) - AC_SUBST(TCL_SRC_DIR) - - AC_SUBST(TCL_TCLSH) - TCL_TCLSH="${TCL_PREFIX}/bin/tclsh${TCL_VERSION}" -]) - -# Optional Tcl API. -AC_DEFUN(AM_TCL_LOAD, [ - if test `$LIBTOOL_PROG --config | grep build_libtool_libs | grep no` 2>/dev/null; then - AC_MSG_ERROR([Tcl requires shared libraries]) - fi - - SC_PATH_TCLCONFIG - SC_LOAD_TCLCONFIG - - INSTALL_LIBS="${INSTALL_LIBS} \$(libtso_target)" -]) diff --git a/db/dist/aclocal/tcl.m4 b/db/dist/aclocal/tcl.m4 index 3d0aec2e8..dd3f60290 100644 --- a/db/dist/aclocal/tcl.m4 +++ b/db/dist/aclocal/tcl.m4 @@ -1,49 +1,49 @@ -dnl $Id: tcl.m4,v 11.5 2000/06/27 13:21:28 bostic Exp $ - -dnl The SC_* macros in this file are from the unix/tcl.m4 files in the Tcl -dnl 8.3.0 distribution, with some minor changes. For this reason, license -dnl terms for the Berkeley DB distribution dist/aclocal/tcl.m4 file are as -dnl follows (copied from the license.terms file in the Tcl 8.3 distribution): -dnl -dnl This software is copyrighted by the Regents of the University of -dnl California, Sun Microsystems, Inc., Scriptics Corporation, -dnl and other parties. The following terms apply to all files associated -dnl with the software unless explicitly disclaimed in individual files. -dnl -dnl The authors hereby grant permission to use, copy, modify, distribute, -dnl and license this software and its documentation for any purpose, provided -dnl that existing copyright notices are retained in all copies and that this -dnl notice is included verbatim in any distributions. No written agreement, -dnl license, or royalty fee is required for any of the authorized uses. -dnl Modifications to this software may be copyrighted by their authors -dnl and need not follow the licensing terms described here, provided that -dnl the new terms are clearly indicated on the first page of each file where -dnl they apply. -dnl -dnl IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY -dnl FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES -dnl ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY -dnl DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE -dnl POSSIBILITY OF SUCH DAMAGE. -dnl -dnl THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, -dnl INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, -dnl FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE -dnl IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE -dnl NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR -dnl MODIFICATIONS. -dnl -dnl GOVERNMENT USE: If you are acquiring this software on behalf of the -dnl U.S. government, the Government shall have only "Restricted Rights" -dnl in the software and related documentation as defined in the Federal -dnl Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you -dnl are acquiring the software on behalf of the Department of Defense, the -dnl software shall be classified as "Commercial Computer Software" and the -dnl Government shall have only "Restricted Rights" as defined in Clause -dnl 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the -dnl authors grant the U.S. Government and others acting in its behalf -dnl permission to use and distribute the software in accordance with the -dnl terms specified in this license. +# $Id: tcl.m4,v 12.2 2005/06/28 20:45:25 gmf Exp $ + +# The SC_* macros in this file are from the unix/tcl.m4 files in the Tcl +# 8.3.0 distribution, with some minor changes. For this reason, license +# terms for the Berkeley DB distribution dist/aclocal/tcl.m4 file are as +# follows (copied from the license.terms file in the Tcl 8.3 distribution): +# +# This software is copyrighted by the Regents of the University of +# California, Sun Microsystems, Inc., Scriptics Corporation, +# and other parties. The following terms apply to all files associated +# with the software unless explicitly disclaimed in individual files. +# +# The authors hereby grant permission to use, copy, modify, distribute, +# and license this software and its documentation for any purpose, provided +# that existing copyright notices are retained in all copies and that this +# notice is included verbatim in any distributions. No written agreement, +# license, or royalty fee is required for any of the authorized uses. +# Modifications to this software may be copyrighted by their authors +# and need not follow the licensing terms described here, provided that +# the new terms are clearly indicated on the first page of each file where +# they apply. +# +# IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY +# FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +# ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY +# DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +# THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE +# IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE +# NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +# MODIFICATIONS. +# +# GOVERNMENT USE: If you are acquiring this software on behalf of the +# U.S. government, the Government shall have only "Restricted Rights" +# in the software and related documentation as defined in the Federal +# Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you +# are acquiring the software on behalf of the Department of Defense, the +# software shall be classified as "Commercial Computer Software" and the +# Government shall have only "Restricted Rights" as defined in Clause +# 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the +# authors grant the U.S. Government and others acting in its behalf +# permission to use and distribute the software in accordance with the +# terms specified in this license. AC_DEFUN(SC_PATH_TCLCONFIG, [ AC_CACHE_VAL(ac_cv_c_tclconfig,[ @@ -87,40 +87,49 @@ AC_DEFUN(SC_LOAD_TCLCONFIG, [ AC_MSG_RESULT([file not found]) fi - # - # The eval is required to do the TCL_DBGX substitution in the - # TCL_LIB_FILE variable - # - eval TCL_LIB_FILE="${TCL_LIB_FILE}" - eval TCL_LIB_FLAG="${TCL_LIB_FLAG}" + # DB requires at least version 8.4. + if test ${TCL_MAJOR_VERSION} -lt 8 \ + -o ${TCL_MAJOR_VERSION} -eq 8 -a ${TCL_MINOR_VERSION} -lt 4; then + AC_MSG_ERROR([Berkeley DB requires Tcl version 8.4 or better.]) + fi + + # The eval is required to do substitution (for example, the TCL_DBGX + # substitution in the TCL_LIB_FILE variable. + eval "TCL_INCLUDE_SPEC=\"${TCL_INCLUDE_SPEC}\"" + eval "TCL_LIB_FILE=\"${TCL_LIB_FILE}\"" + eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" + # + # If the DB Tcl library isn't loaded with the Tcl spec and library + # flags on AIX, the resulting libdb_tcl-X.Y.so.0 will drop core at + # load time. [#4843] Furthermore, with Tcl 8.3, the link flags + # given by the Tcl spec are insufficient for our use. [#5779] + # + case "$host_os" in + aix4.[[2-9]].*) + LIBTSO_LIBS="$LIBTSO_LIBS $TCL_LIB_SPEC $TCL_LIB_FLAG" + LIBTSO_LIBS="$LIBTSO_LIBS -L$TCL_EXEC_PREFIX/lib -ltcl$TCL_VERSION";; + aix*) + LIBTSO_LIBS="$LIBTSO_LIBS $TCL_LIB_SPEC $TCL_LIB_FLAG";; + esac AC_SUBST(TCL_BIN_DIR) - AC_SUBST(TCL_SRC_DIR) + AC_SUBST(TCL_INCLUDE_SPEC) AC_SUBST(TCL_LIB_FILE) + AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_TCLSH) TCL_TCLSH="${TCL_PREFIX}/bin/tclsh${TCL_VERSION}" ]) -dnl Optional Tcl API. +# Optional Tcl API. AC_DEFUN(AM_TCL_LOAD, [ -if test "$db_cv_tcl" != no; then - if test "$db_cv_dynamic" != "yes"; then - AC_MSG_ERROR([--with-tcl requires --enable-dynamic]) + if test `$LIBTOOL_PROG --config | grep build_libtool_libs | grep no` 2>/dev/null; then + AC_MSG_ERROR([Tcl requires shared libraries]) fi - AC_SUBST(TCFLAGS) - SC_PATH_TCLCONFIG SC_LOAD_TCLCONFIG - if test x"$TCL_PREFIX" != x && test -f "$TCL_PREFIX/include/tcl.h"; then - TCFLAGS="-I$TCL_PREFIX/include" - fi - - LIBS="$LIBS $TCL_LIB_SPEC $TCL_LIBS" - - ADDITIONAL_LIBS="$ADDITIONAL_LIBS \$(libtso_target)" - DEFAULT_INSTALL="${DEFAULT_INSTALL} install_tcl" -fi]) + INSTALL_LIBS="${INSTALL_LIBS} \$(libtso_target)" +]) diff --git a/db/dist/aclocal/types.ac b/db/dist/aclocal/types.ac deleted file mode 100644 index f9291386d..000000000 --- a/db/dist/aclocal/types.ac +++ /dev/null @@ -1,167 +0,0 @@ -# $Id: types.ac,v 12.3 2005/11/03 17:46:14 bostic Exp $ - -# Check the sizes we know about, and see if any of them match what's needed. -# -# Prefer ints to anything else, because read, write and others historically -# returned an int. -AC_DEFUN(AM_SEARCH_USIZES, [ - case "$3" in - "$ac_cv_sizeof_unsigned_int") - $1="typedef unsigned int $2;";; - "$ac_cv_sizeof_unsigned_char") - $1="typedef unsigned char $2;";; - "$ac_cv_sizeof_unsigned_short") - $1="typedef unsigned short $2;";; - "$ac_cv_sizeof_unsigned_long") - $1="typedef unsigned long $2;";; - "$ac_cv_sizeof_unsigned_long_long") - $1="typedef unsigned long long $2;";; - *) - if test "$4" != "notfatal"; then - AC_MSG_ERROR([No unsigned $3-byte integral type]) - fi;; - esac]) -AC_DEFUN(AM_SEARCH_SSIZES, [ - case "$3" in - "$ac_cv_sizeof_int") - $1="typedef int $2;";; - "$ac_cv_sizeof_char") - $1="typedef char $2;";; - "$ac_cv_sizeof_short") - $1="typedef short $2;";; - "$ac_cv_sizeof_long") - $1="typedef long $2;";; - "$ac_cv_sizeof_long_long") - $1="typedef long long $2;";; - *) - if test "$4" != "notfatal"; then - AC_MSG_ERROR([No signed $3-byte integral type]) - fi;; - esac]) - -# Check for the standard system types. -AC_DEFUN(AM_TYPES, [ - -# db.h includes and , not the other default includes -# autoconf usually includes. For that reason, we specify a set of includes -# for all type checking tests. [#5060] -# -# C99 says types should be in ; include if it exists. -# -# Some systems have types in ; include if it exists. -# -# IBM's OS/390 and z/OS releases have types in not also found -# in ; include if it exists. -db_includes="#include " -AC_SUBST(inttypes_h_decl) -AC_CHECK_HEADER(inttypes.h, [ - db_includes="$db_includes -#include " - inttypes_h_decl="#include "]) -AC_SUBST(stdint_h_decl) -AC_CHECK_HEADER(stdint.h, [ - db_includes="$db_includes -#include " - stdint_h_decl="#include "]) -AC_SUBST(stddef_h_decl) -AC_CHECK_HEADER(stddef.h, [ - db_includes="$db_includes -#include " - stddef_h_decl="#include "]) -AC_SUBST(unistd_h_decl) -AC_CHECK_HEADER(unistd.h, [ - db_includes="$db_includes -#include " - unistd_h_decl="#include "]) -db_includes="$db_includes -#include " - -# We require off_t and size_t, and we don't try to substitute our own -# if we can't find them. -AC_CHECK_TYPE(off_t,, AC_MSG_ERROR([No off_t type.]), $db_includes) -AC_CHECK_TYPE(size_t,, AC_MSG_ERROR([No size_t type.]), $db_includes) - -# We need to know the sizes of various objects on this system. -AC_CHECK_SIZEOF(char,, $db_includes) -AC_CHECK_SIZEOF(unsigned char,, $db_includes) -AC_CHECK_SIZEOF(short,, $db_includes) -AC_CHECK_SIZEOF(unsigned short,, $db_includes) -AC_CHECK_SIZEOF(int,, $db_includes) -AC_CHECK_SIZEOF(unsigned int,, $db_includes) -AC_CHECK_SIZEOF(long,, $db_includes) -AC_CHECK_SIZEOF(unsigned long,, $db_includes) -AC_CHECK_SIZEOF(long long,, $db_includes) -AC_CHECK_SIZEOF(unsigned long long,, $db_includes) -AC_CHECK_SIZEOF(size_t,, $db_includes) -AC_CHECK_SIZEOF(char *,, $db_includes) - -# We look for u_char, u_short, u_int, u_long -- if we can't find them, -# we create our own. -AC_SUBST(u_char_decl) -AC_CHECK_TYPE(u_char,, - [u_char_decl="typedef unsigned char u_char;"], $db_includes) - -AC_SUBST(u_short_decl) -AC_CHECK_TYPE(u_short,, - [u_short_decl="typedef unsigned short u_short;"], $db_includes) - -AC_SUBST(u_int_decl) -AC_CHECK_TYPE(u_int,, - [u_int_decl="typedef unsigned int u_int;"], $db_includes) - -AC_SUBST(u_long_decl) -AC_CHECK_TYPE(u_long,, - [u_long_decl="typedef unsigned long u_long;"], $db_includes) - -# We look for fixed-size variants of u_char, u_short, u_int, u_long as well. -AC_SUBST(u_int8_decl) -AC_CHECK_TYPE(u_int8_t,, - [AM_SEARCH_USIZES(u_int8_decl, u_int8_t, 1)], $db_includes) - -AC_SUBST(u_int16_decl) -AC_CHECK_TYPE(u_int16_t,, - [AM_SEARCH_USIZES(u_int16_decl, u_int16_t, 2)], $db_includes) - -AC_SUBST(int16_decl) -AC_CHECK_TYPE(int16_t,, - [AM_SEARCH_SSIZES(int16_decl, int16_t, 2)], $db_includes) - -AC_SUBST(u_int32_decl) -AC_CHECK_TYPE(u_int32_t,, - [AM_SEARCH_USIZES(u_int32_decl, u_int32_t, 4)], $db_includes) - -AC_SUBST(int32_decl) -AC_CHECK_TYPE(int32_t,, - [AM_SEARCH_SSIZES(int32_decl, int32_t, 4)], $db_includes) - -AC_SUBST(u_int64_decl) -AC_CHECK_TYPE(u_int64_t,, - [AM_SEARCH_USIZES(u_int64_decl, u_int64_t, 8, notfatal)], $db_includes) - -AC_SUBST(int64_decl) -AC_CHECK_TYPE(int64_t,, - [AM_SEARCH_SSIZES(int64_decl, int64_t, 8, notfatal)], $db_includes) - -# Check for ssize_t -- if none exists, find a signed integral type that's -# the same size as a size_t. -AC_SUBST(ssize_t_decl) -AC_CHECK_TYPE(ssize_t,, - [AM_SEARCH_SSIZES(ssize_t_decl, ssize_t, $ac_cv_sizeof_size_t)], - $db_includes) - -# So far, no autoconf'd systems lack pid_t. -AC_SUBST(pid_t_decl) - -# Check for uintmax_t -- if none exists, first the largest unsigned integral -# type available. -AC_SUBST(uintmax_t_decl) -AC_CHECK_TYPE(uintmax_t,, [AC_CHECK_TYPE(unsigned long long, - [uintmax_t_decl="typedef unsigned long long uintmax_t;"], - [uintmax_t_decl="typedef unsigned long uintmax_t;"], $db_includes)]) - -# Check for uintptr_t -- if none exists, find an integral type which is -# the same size as a pointer. -AC_SUBST(uintptr_t_decl) -AC_CHECK_TYPE(uintptr_t,, - [AM_SEARCH_USIZES(uintptr_t_decl, uintptr_t, $ac_cv_sizeof_char_p)]) -]) diff --git a/db/dist/aclocal/types.m4 b/db/dist/aclocal/types.m4 index a9a03ab6d..be5d8989d 100644 --- a/db/dist/aclocal/types.m4 +++ b/db/dist/aclocal/types.m4 @@ -1,139 +1,209 @@ -dnl $Id: types.m4,v 11.4 1999/12/04 19:18:28 bostic Exp $ +# $Id: types.m4,v 12.5 2007/04/18 14:28:20 bostic Exp $ -dnl Check for the standard shorthand types. -AC_DEFUN(AM_SHORTHAND_TYPES, [dnl +# Check the sizes we know about, and see if any of them match what's needed. +# +# Prefer ints to anything else, because read, write and others historically +# returned an int. +AC_DEFUN(AM_SEARCH_USIZES, [ + case "$3" in + "$ac_cv_sizeof_unsigned_int") + $1="typedef unsigned int $2;";; + "$ac_cv_sizeof_unsigned_char") + $1="typedef unsigned char $2;";; + "$ac_cv_sizeof_unsigned_short") + $1="typedef unsigned short $2;";; + "$ac_cv_sizeof_unsigned_long") + $1="typedef unsigned long $2;";; + "$ac_cv_sizeof_unsigned_long_long") + $1="typedef unsigned long long $2;";; + *) + if test "$4" != "notfatal"; then + AC_MSG_ERROR([No unsigned $3-byte integral type]) + fi;; + esac]) +AC_DEFUN(AM_SEARCH_SSIZES, [ + case "$3" in + "$ac_cv_sizeof_int") + $1="typedef int $2;";; + "$ac_cv_sizeof_char") + $1="typedef char $2;";; + "$ac_cv_sizeof_short") + $1="typedef short $2;";; + "$ac_cv_sizeof_long") + $1="typedef long $2;";; + "$ac_cv_sizeof_long_long") + $1="typedef long long $2;";; + *) + if test "$4" != "notfatal"; then + AC_MSG_ERROR([No signed $3-byte integral type]) + fi;; + esac]) -AC_SUBST(ssize_t_decl) -AC_CACHE_CHECK([for ssize_t], db_cv_ssize_t, [dnl -AC_TRY_COMPILE([#include ], ssize_t foo;, - [db_cv_ssize_t=yes], [db_cv_ssize_t=no])]) -if test "$db_cv_ssize_t" = no; then - ssize_t_decl="typedef int ssize_t;" -fi +# Check for the standard system types. +AC_DEFUN(AM_TYPES, [ + +# db.h includes and , not the other default includes +# autoconf usually includes. For that reason, we specify a set of includes +# for all type checking tests. [#5060] +# +# C99 says types should be in ; include if it exists. +# +# Some systems have types in ; include if it exists. +# +# IBM's OS/390 and z/OS releases have types in not also found +# in ; include if it exists. +db_includes="#include " +AC_SUBST(inttypes_h_decl) +AC_CHECK_HEADER(inttypes.h, [ + db_includes="$db_includes +#include " + inttypes_h_decl="#include "]) + +# IRIX has stdint.h that is only available when using c99 (i.e. __c99 +# is defined). Problem with having it in a public header is that a c++ +# compiler cannot #include if db.h #includes stdint.h, so we +# need to check that stdint.h is available for all cases. Also the +# IRIX compiler does not exit with a non-zero exit code when it sees +# #error, so we actually need to use the header for the compiler to fail. +AC_SUBST(stdint_h_decl) +AC_MSG_CHECKING(for stdint.h) +AC_COMPILE_IFELSE([#include + int main() { + uint_least8_t x=0; + return x; + }],[AC_MSG_RESULT(yes) +if test "$db_cv_cxx" = "yes"; then + AC_MSG_CHECKING([if stdint.h can be used by C++]) + AC_LANG_PUSH(C++) + AC_COMPILE_IFELSE([#include + int main() { + uint_least8_t x=0; + return x; + }],[AC_MSG_RESULT(yes) + stdint_h_decl="#include " + db_includes="$db_includes +#include " +],[AC_MSG_RESULT(no) + stdint_h_decl="#ifndef __cplusplus +#include +#endif" + db_includes="$db_includes +#ifndef __cplusplus +#include +#endif" +]) + AC_LANG_POP +else + stdint_h_decl="#include " + db_includes="$db_includes +#include " +fi],[AC_MSG_RESULT(no)]) + +AC_SUBST(stddef_h_decl) +AC_CHECK_HEADER(stddef.h, [ + db_includes="$db_includes +#include " + stddef_h_decl="#include "]) +AC_SUBST(unistd_h_decl) +AC_CHECK_HEADER(unistd.h, [ + db_includes="$db_includes +#include " + unistd_h_decl="#include "]) +db_includes="$db_includes +#include " +# We need to know the sizes of various objects on this system. +AC_CHECK_SIZEOF(char,, $db_includes) +AC_CHECK_SIZEOF(unsigned char,, $db_includes) +AC_CHECK_SIZEOF(short,, $db_includes) +AC_CHECK_SIZEOF(unsigned short,, $db_includes) +AC_CHECK_SIZEOF(int,, $db_includes) +AC_CHECK_SIZEOF(unsigned int,, $db_includes) +AC_CHECK_SIZEOF(long,, $db_includes) +AC_CHECK_SIZEOF(unsigned long,, $db_includes) +AC_CHECK_SIZEOF(long long,, $db_includes) +AC_CHECK_SIZEOF(unsigned long long,, $db_includes) +AC_CHECK_SIZEOF(char *,, $db_includes) + +# We look for u_char, u_short, u_int, u_long -- if we can't find them, +# we create our own. AC_SUBST(u_char_decl) -AC_CACHE_CHECK([for u_char], db_cv_uchar, [dnl -AC_TRY_COMPILE([#include ], u_char foo;, - [db_cv_uchar=yes], [db_cv_uchar=no])]) -if test "$db_cv_uchar" = no; then - u_char_decl="typedef unsigned char u_char;" -fi +AC_CHECK_TYPE(u_char,, + [u_char_decl="typedef unsigned char u_char;"], $db_includes) AC_SUBST(u_short_decl) -AC_CACHE_CHECK([for u_short], db_cv_ushort, [dnl -AC_TRY_COMPILE([#include ], u_short foo;, - [db_cv_ushort=yes], [db_cv_ushort=no])]) -if test "$db_cv_ushort" = no; then - u_short_decl="typedef unsigned short u_short;" -fi +AC_CHECK_TYPE(u_short,, + [u_short_decl="typedef unsigned short u_short;"], $db_includes) AC_SUBST(u_int_decl) -AC_CACHE_CHECK([for u_int], db_cv_uint, [dnl -AC_TRY_COMPILE([#include ], u_int foo;, - [db_cv_uint=yes], [db_cv_uint=no])]) -if test "$db_cv_uint" = no; then - u_int_decl="typedef unsigned int u_int;" -fi +AC_CHECK_TYPE(u_int,, + [u_int_decl="typedef unsigned int u_int;"], $db_includes) AC_SUBST(u_long_decl) -AC_CACHE_CHECK([for u_long], db_cv_ulong, [dnl -AC_TRY_COMPILE([#include ], u_long foo;, - [db_cv_ulong=yes], [db_cv_ulong=no])]) -if test "$db_cv_ulong" = no; then - u_long_decl="typedef unsigned long u_long;" -fi - -dnl DB/Vi use specific integer sizes. +AC_CHECK_TYPE(u_long,, + [u_long_decl="typedef unsigned long u_long;"], $db_includes) + +# We look for fixed-size variants of u_char, u_short, u_int, u_long as well. AC_SUBST(u_int8_decl) -AC_CACHE_CHECK([for u_int8_t], db_cv_uint8, [dnl -AC_TRY_COMPILE([#include ], u_int8_t foo;, - [db_cv_uint8=yes], - AC_TRY_RUN([main(){exit(sizeof(unsigned char) != 1);}], - [db_cv_uint8="unsigned char"], [db_cv_uint8=no]))]) -if test "$db_cv_uint8" = no; then - AC_MSG_ERROR(No unsigned 8-bit integral type.) -fi -if test "$db_cv_uint8" != yes; then - u_int8_decl="typedef $db_cv_uint8 u_int8_t;" -fi +AC_CHECK_TYPE(u_int8_t,, + [AM_SEARCH_USIZES(u_int8_decl, u_int8_t, 1)], $db_includes) AC_SUBST(u_int16_decl) -AC_CACHE_CHECK([for u_int16_t], db_cv_uint16, [dnl -AC_TRY_COMPILE([#include ], u_int16_t foo;, - [db_cv_uint16=yes], -AC_TRY_RUN([main(){exit(sizeof(unsigned short) != 2);}], - [db_cv_uint16="unsigned short"], -AC_TRY_RUN([main(){exit(sizeof(unsigned int) != 2);}], - [db_cv_uint16="unsigned int"], [db_cv_uint16=no])))]) -if test "$db_cv_uint16" = no; then - AC_MSG_ERROR([No unsigned 16-bit integral type.]) -fi -if test "$db_cv_uint16" != yes; then - u_int16_decl="typedef $db_cv_uint16 u_int16_t;" -fi +AC_CHECK_TYPE(u_int16_t,, + [AM_SEARCH_USIZES(u_int16_decl, u_int16_t, 2)], $db_includes) AC_SUBST(int16_decl) -AC_CACHE_CHECK([for int16_t], db_cv_int16, [dnl -AC_TRY_COMPILE([#include ], int16_t foo;, - [db_cv_int16=yes], -AC_TRY_RUN([main(){exit(sizeof(short) != 2);}], - [db_cv_int16="short"], -AC_TRY_RUN([main(){exit(sizeof(int) != 2);}], - [db_cv_int16="int"], [db_cv_int16=no])))]) -if test "$db_cv_int16" = no; then - AC_MSG_ERROR([No signed 16-bit integral type.]) -fi -if test "$db_cv_int16" != yes; then - int16_decl="typedef $db_cv_int16 int16_t;" -fi +AC_CHECK_TYPE(int16_t,, + [AM_SEARCH_SSIZES(int16_decl, int16_t, 2)], $db_includes) AC_SUBST(u_int32_decl) -AC_CACHE_CHECK([for u_int32_t], db_cv_uint32, [dnl -AC_TRY_COMPILE([#include ], u_int32_t foo;, - [db_cv_uint32=yes], -AC_TRY_RUN([main(){exit(sizeof(unsigned int) != 4);}], - [db_cv_uint32="unsigned int"], -AC_TRY_RUN([main(){exit(sizeof(unsigned long) != 4);}], - [db_cv_uint32="unsigned long"], [db_cv_uint32=no])))]) -if test "$db_cv_uint32" = no; then - AC_MSG_ERROR([No unsigned 32-bit integral type.]) -fi -if test "$db_cv_uint32" != yes; then - u_int32_decl="typedef $db_cv_uint32 u_int32_t;" -fi +AC_CHECK_TYPE(u_int32_t,, + [AM_SEARCH_USIZES(u_int32_decl, u_int32_t, 4)], $db_includes) AC_SUBST(int32_decl) -AC_CACHE_CHECK([for int32_t], db_cv_int32, [dnl -AC_TRY_COMPILE([#include ], int32_t foo;, - [db_cv_int32=yes], -AC_TRY_RUN([main(){exit(sizeof(int) != 4);}], - [db_cv_int32="int"], -AC_TRY_RUN([main(){exit(sizeof(long) != 4);}], - [db_cv_int32="long"], [db_cv_int32=no])))]) -if test "$db_cv_int32" = no; then - AC_MSG_ERROR([No signed 32-bit integral type.]) -fi -if test "$db_cv_int32" != yes; then - int32_decl="typedef $db_cv_int32 int32_t;" -fi - -dnl Figure out largest integral type. -AC_SUBST(db_align_t_decl) -AC_CACHE_CHECK([for largest integral type], db_cv_align_t, [dnl -AC_TRY_COMPILE([#include ], long long foo;, - [db_cv_align_t="unsigned long long"], [db_cv_align_t="unsigned long"])]) -db_align_t_decl="typedef $db_cv_align_t db_align_t;" - -dnl Figure out integral type the same size as a pointer. -AC_SUBST(db_alignp_t_decl) -AC_CACHE_CHECK([for integral type equal to pointer size], db_cv_alignp_t, [dnl -db_cv_alignp_t=$db_cv_align_t -AC_TRY_RUN([main(){exit(sizeof(unsigned int) != sizeof(char *));}], - [db_cv_alignp_t="unsigned int"]) -AC_TRY_RUN([main(){exit(sizeof(unsigned long) != sizeof(char *));}], - [db_cv_alignp_t="unsigned long"]) -AC_TRY_RUN([main(){exit(sizeof(unsigned long long) != sizeof(char *));}], - [db_cv_alignp_t="unsigned long long"])]) -db_alignp_t_decl="typedef $db_cv_alignp_t db_alignp_t;" - -])dnl +AC_CHECK_TYPE(int32_t,, + [AM_SEARCH_SSIZES(int32_decl, int32_t, 4)], $db_includes) + +AC_SUBST(u_int64_decl) +AC_CHECK_TYPE(u_int64_t,, + [AM_SEARCH_USIZES(u_int64_decl, u_int64_t, 8, notfatal)], $db_includes) + +AC_SUBST(int64_decl) +AC_CHECK_TYPE(int64_t,, + [AM_SEARCH_SSIZES(int64_decl, int64_t, 8, notfatal)], $db_includes) + +# No currently autoconf'd systems lack FILE, off_t pid_t, size_t, time_t. +# +# We require them, we don't try to substitute our own if we can't find them. +AC_SUBST(FILE_t_decl) +AC_CHECK_TYPE(FILE,, AC_MSG_ERROR([No FILE type.]), $db_includes) +AC_SUBST(off_t_decl) +AC_CHECK_TYPE(off_t,, AC_MSG_ERROR([No off_t type.]), $db_includes) +AC_SUBST(pid_t_decl) +AC_CHECK_TYPE(pid_t,, AC_MSG_ERROR([No pid_t type.]), $db_includes) +AC_SUBST(size_t_decl) +AC_CHECK_TYPE(size_t,, AC_MSG_ERROR([No size_t type.]), $db_includes) +AC_SUBST(time_t_decl) +AC_CHECK_TYPE(time_t,, AC_MSG_ERROR([No time_t type.]), $db_includes) + +# Check for ssize_t -- if none exists, find a signed integral type that's +# the same size as a size_t. +AC_CHECK_SIZEOF(size_t,, $db_includes) +AC_SUBST(ssize_t_decl) +AC_CHECK_TYPE(ssize_t,, + [AM_SEARCH_SSIZES(ssize_t_decl, ssize_t, $ac_cv_sizeof_size_t)], + $db_includes) + +# Check for uintmax_t -- if none exists, first the largest unsigned integral +# type available. +AC_SUBST(uintmax_t_decl) +AC_CHECK_TYPE(uintmax_t,, [AC_CHECK_TYPE(unsigned long long, + [uintmax_t_decl="typedef unsigned long long uintmax_t;"], + [uintmax_t_decl="typedef unsigned long uintmax_t;"], $db_includes)]) + +# Check for uintptr_t -- if none exists, find an integral type which is +# the same size as a pointer. +AC_SUBST(uintptr_t_decl) +AC_CHECK_TYPE(uintptr_t,, + [AM_SEARCH_USIZES(uintptr_t_decl, uintptr_t, $ac_cv_sizeof_char_p)]) +]) diff --git a/db/dist/aclocal_java/ac_check_class.ac b/db/dist/aclocal_java/ac_check_class.ac deleted file mode 100644 index b12e7f02f..000000000 --- a/db/dist/aclocal_java/ac_check_class.ac +++ /dev/null @@ -1,107 +0,0 @@ -dnl @synopsis AC_CHECK_CLASS -dnl -dnl AC_CHECK_CLASS tests the existence of a given Java class, either in -dnl a jar or in a '.class' file. -dnl -dnl *Warning*: its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_check_class.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_CHECK_CLASS],[ -AC_REQUIRE([AC_PROG_JAVA]) -ac_var_name=`echo $1 | sed 's/\./_/g'` -dnl Normaly I'd use a AC_CACHE_CHECK here but since the variable name is -dnl dynamic I need an extra level of extraction -AC_MSG_CHECKING([for $1 class]) -AC_CACHE_VAL(ac_cv_class_$ac_var_name, [ -if test x$ac_cv_prog_uudecode_base64 = xyes; then -dnl /** -dnl * Test.java: used to test dynamicaly if a class exists. -dnl */ -dnl public class Test -dnl { -dnl -dnl public static void -dnl main( String[] argv ) -dnl { -dnl Class lib; -dnl if (argv.length < 1) -dnl { -dnl System.err.println ("Missing argument"); -dnl System.exit (77); -dnl } -dnl try -dnl { -dnl lib = Class.forName (argv[0]); -dnl } -dnl catch (ClassNotFoundException e) -dnl { -dnl System.exit (1); -dnl } -dnl lib = null; -dnl System.exit (0); -dnl } -dnl -dnl } -cat << \EOF > Test.uue -begin-base64 644 Test.class -yv66vgADAC0AKQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE -bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51 -bWJlclRhYmxlDAAKAAsBAANlcnIBABVMamF2YS9pby9QcmludFN0cmVhbTsJ -AA0ACQcADgEAEGphdmEvbGFuZy9TeXN0ZW0IABABABBNaXNzaW5nIGFyZ3Vt -ZW50DAASABMBAAdwcmludGxuAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWCgAV -ABEHABYBABNqYXZhL2lvL1ByaW50U3RyZWFtDAAYABkBAARleGl0AQAEKEkp -VgoADQAXDAAcAB0BAAdmb3JOYW1lAQAlKExqYXZhL2xhbmcvU3RyaW5nOylM -amF2YS9sYW5nL0NsYXNzOwoAHwAbBwAgAQAPamF2YS9sYW5nL0NsYXNzBwAi -AQAgamF2YS9sYW5nL0NsYXNzTm90Rm91bmRFeGNlcHRpb24BAAY8aW5pdD4B -AAMoKVYMACMAJAoAAwAlAQAKU291cmNlRmlsZQEACVRlc3QuamF2YQAhAAEA -AwAAAAAAAgAJAAUABgABAAcAAABtAAMAAwAAACkqvgSiABCyAAwSD7YAFBBN -uAAaKgMyuAAeTKcACE0EuAAaAUwDuAAasQABABMAGgAdACEAAQAIAAAAKgAK -AAAACgAAAAsABgANAA4ADgATABAAEwASAB4AFgAiABgAJAAZACgAGgABACMA -JAABAAcAAAAhAAEAAQAAAAUqtwAmsQAAAAEACAAAAAoAAgAAAAQABAAEAAEA -JwAAAAIAKA== -==== -EOF - if uudecode$EXEEXT Test.uue; then - : - else - echo "configure: __oline__: uudecode had trouble decoding base 64 file 'Test.uue'" >&AC_FD_CC - echo "configure: failed file was:" >&AC_FD_CC - cat Test.uue >&AC_FD_CC - ac_cv_prog_uudecode_base64=no - fi - rm -f Test.uue - if AC_TRY_COMMAND($JAVA $JAVAFLAGS Test $1) >/dev/null 2>&1; then - eval "ac_cv_class_$ac_var_name=yes" - else - eval "ac_cv_class_$ac_var_name=no" - fi - rm -f Test.class -else - AC_TRY_COMPILE_JAVA([$1], , [eval "ac_cv_class_$ac_var_name=yes"], - [eval "ac_cv_class_$ac_var_name=no"]) -fi -eval "ac_var_val=$`eval echo ac_cv_class_$ac_var_name`" -eval "HAVE_$ac_var_name=$`echo ac_cv_class_$ac_var_val`" -HAVE_LAST_CLASS=$ac_var_val -if test x$ac_var_val = xyes; then - ifelse([$2], , :, [$2]) -else - ifelse([$3], , :, [$3]) -fi -]) -dnl for some reason the above statment didn't fall though here? -dnl do scripts have variable scoping? -eval "ac_var_val=$`eval echo ac_cv_class_$ac_var_name`" -AC_MSG_RESULT($ac_var_val) -]) diff --git a/db/dist/aclocal_java/ac_check_class.m4 b/db/dist/aclocal_java/ac_check_class.m4 new file mode 100644 index 000000000..fedaf1517 --- /dev/null +++ b/db/dist/aclocal_java/ac_check_class.m4 @@ -0,0 +1,107 @@ +dnl @synopsis AC_CHECK_CLASS +dnl +dnl AC_CHECK_CLASS tests the existence of a given Java class, either in +dnl a jar or in a '.class' file. +dnl +dnl *Warning*: its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_check_class.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_CHECK_CLASS],[ +AC_REQUIRE([AC_PROG_JAVA]) +ac_var_name=`echo $1 | sed 's/\./_/g'` +dnl Normaly I'd use a AC_CACHE_CHECK here but since the variable name is +dnl dynamic I need an extra level of extraction +AC_MSG_CHECKING([for $1 class]) +AC_CACHE_VAL(ac_cv_class_$ac_var_name, [ +if test x$ac_cv_prog_uudecode_base64 = xyes; then +dnl /** +dnl * Test.java: used to test dynamicaly if a class exists. +dnl */ +dnl public class Test +dnl { +dnl +dnl public static void +dnl main( String[] argv ) +dnl { +dnl Class lib; +dnl if (argv.length < 1) +dnl { +dnl System.err.println ("Missing argument"); +dnl System.exit (77); +dnl } +dnl try +dnl { +dnl lib = Class.forName (argv[0]); +dnl } +dnl catch (ClassNotFoundException e) +dnl { +dnl System.exit (1); +dnl } +dnl lib = null; +dnl System.exit (0); +dnl } +dnl +dnl } +cat << \EOF > Test.uue +begin-base64 644 Test.class +yv66vgADAC0AKQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE +bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51 +bWJlclRhYmxlDAAKAAsBAANlcnIBABVMamF2YS9pby9QcmludFN0cmVhbTsJ +AA0ACQcADgEAEGphdmEvbGFuZy9TeXN0ZW0IABABABBNaXNzaW5nIGFyZ3Vt +ZW50DAASABMBAAdwcmludGxuAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWCgAV +ABEHABYBABNqYXZhL2lvL1ByaW50U3RyZWFtDAAYABkBAARleGl0AQAEKEkp +VgoADQAXDAAcAB0BAAdmb3JOYW1lAQAlKExqYXZhL2xhbmcvU3RyaW5nOylM +amF2YS9sYW5nL0NsYXNzOwoAHwAbBwAgAQAPamF2YS9sYW5nL0NsYXNzBwAi +AQAgamF2YS9sYW5nL0NsYXNzTm90Rm91bmRFeGNlcHRpb24BAAY8aW5pdD4B +AAMoKVYMACMAJAoAAwAlAQAKU291cmNlRmlsZQEACVRlc3QuamF2YQAhAAEA +AwAAAAAAAgAJAAUABgABAAcAAABtAAMAAwAAACkqvgSiABCyAAwSD7YAFBBN +uAAaKgMyuAAeTKcACE0EuAAaAUwDuAAasQABABMAGgAdACEAAQAIAAAAKgAK +AAAACgAAAAsABgANAA4ADgATABAAEwASAB4AFgAiABgAJAAZACgAGgABACMA +JAABAAcAAAAhAAEAAQAAAAUqtwAmsQAAAAEACAAAAAoAAgAAAAQABAAEAAEA +JwAAAAIAKA== +==== +EOF + if uudecode$EXEEXT Test.uue; then + : + else + echo "configure: __oline__: uudecode had trouble decoding base 64 file 'Test.uue'" >&AC_FD_CC + echo "configure: failed file was:" >&AC_FD_CC + cat Test.uue >&AC_FD_CC + ac_cv_prog_uudecode_base64=no + fi + rm -f Test.uue + if AC_TRY_COMMAND($JAVA $JAVAFLAGS Test $1) >/dev/null 2>&1; then + eval "ac_cv_class_$ac_var_name=yes" + else + eval "ac_cv_class_$ac_var_name=no" + fi + rm -f Test.class +else + AC_TRY_COMPILE_JAVA([$1], , [eval "ac_cv_class_$ac_var_name=yes"], + [eval "ac_cv_class_$ac_var_name=no"]) +fi +eval "ac_var_val=$`eval echo ac_cv_class_$ac_var_name`" +eval "HAVE_$ac_var_name=$`echo ac_cv_class_$ac_var_val`" +HAVE_LAST_CLASS=$ac_var_val +if test x$ac_var_val = xyes; then + ifelse([$2], , :, [$2]) +else + ifelse([$3], , :, [$3]) +fi +]) +dnl for some reason the above statment didn't fall though here? +dnl do scripts have variable scoping? +eval "ac_var_val=$`eval echo ac_cv_class_$ac_var_name`" +AC_MSG_RESULT($ac_var_val) +]) diff --git a/db/dist/aclocal_java/ac_check_classpath.ac b/db/dist/aclocal_java/ac_check_classpath.ac deleted file mode 100644 index b18d479b3..000000000 --- a/db/dist/aclocal_java/ac_check_classpath.ac +++ /dev/null @@ -1,23 +0,0 @@ -dnl @synopsis AC_CHECK_CLASSPATH -dnl -dnl AC_CHECK_CLASSPATH just displays the CLASSPATH, for the edification -dnl of the user. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_check_classpath.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_CHECK_CLASSPATH],[ -if test "x$CLASSPATH" = x; then - echo "You have no CLASSPATH, I hope it is good" -else - echo "You have CLASSPATH $CLASSPATH, hope it is correct" -fi -]) diff --git a/db/dist/aclocal_java/ac_check_classpath.m4 b/db/dist/aclocal_java/ac_check_classpath.m4 new file mode 100644 index 000000000..3dbcf63cf --- /dev/null +++ b/db/dist/aclocal_java/ac_check_classpath.m4 @@ -0,0 +1,23 @@ +dnl @synopsis AC_CHECK_CLASSPATH +dnl +dnl AC_CHECK_CLASSPATH just displays the CLASSPATH, for the edification +dnl of the user. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_check_classpath.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_CHECK_CLASSPATH],[ +if test "x$CLASSPATH" = x; then + echo "You have no CLASSPATH, I hope it is good" +else + echo "You have CLASSPATH $CLASSPATH, hope it is correct" +fi +]) diff --git a/db/dist/aclocal_java/ac_check_junit.ac b/db/dist/aclocal_java/ac_check_junit.ac deleted file mode 100644 index cc02e3276..000000000 --- a/db/dist/aclocal_java/ac_check_junit.ac +++ /dev/null @@ -1,54 +0,0 @@ -dnl @synopsis AC_CHECK_JUNIT -dnl -dnl AC_CHECK_JUNIT tests the availability of the Junit testing -dnl framework, and set some variables for conditional compilation -dnl of the test suite by automake. -dnl -dnl If available, JUNIT is set to a command launching the text -dnl based user interface of Junit, @JAVA_JUNIT@ is set to $JAVA_JUNIT -dnl and @TESTS_JUNIT@ is set to $TESTS_JUNIT, otherwise they are set -dnl to empty values. -dnl -dnl You can use these variables in your Makefile.am file like this : -dnl -dnl # Some of the following classes are built only if junit is available -dnl JAVA_JUNIT = Class1Test.java Class2Test.java AllJunitTests.java -dnl -dnl noinst_JAVA = Example1.java Example2.java @JAVA_JUNIT@ -dnl -dnl EXTRA_JAVA = $(JAVA_JUNIT) -dnl -dnl TESTS_JUNIT = AllJunitTests -dnl -dnl TESTS = StandaloneTest1 StandaloneTest2 @TESTS_JUNIT@ -dnl -dnl EXTRA_TESTS = $(TESTS_JUNIT) -dnl -dnl AllJunitTests : -dnl echo "#! /bin/sh" > $@ -dnl echo "exec @JUNIT@ my.package.name.AllJunitTests" >> $@ -dnl chmod +x $@ -dnl -dnl @author Luc Maisonobe -dnl @version $Id: ac_check_junit.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_CHECK_JUNIT],[ -AC_CACHE_VAL(ac_cv_prog_JUNIT,[ -AC_CHECK_CLASS(junit.textui.TestRunner) -if test x"`eval 'echo $ac_cv_class_junit_textui_TestRunner'`" != xno ; then - ac_cv_prog_JUNIT='$(CLASSPATH_ENV) $(JAVA) $(JAVAFLAGS) junit.textui.TestRunner' -fi]) -AC_MSG_CHECKING([for junit]) -if test x"`eval 'echo $ac_cv_prog_JUNIT'`" != x ; then - JUNIT="$ac_cv_prog_JUNIT" - JAVA_JUNIT='$(JAVA_JUNIT)' - TESTS_JUNIT='$(TESTS_JUNIT)' -else - JUNIT= - JAVA_JUNIT= - TESTS_JUNIT= -fi -AC_MSG_RESULT($JAVA_JUNIT) -AC_SUBST(JUNIT) -AC_SUBST(JAVA_JUNIT) -AC_SUBST(TESTS_JUNIT)]) diff --git a/db/dist/aclocal_java/ac_check_junit.m4 b/db/dist/aclocal_java/ac_check_junit.m4 new file mode 100644 index 000000000..59ef12a82 --- /dev/null +++ b/db/dist/aclocal_java/ac_check_junit.m4 @@ -0,0 +1,54 @@ +dnl @synopsis AC_CHECK_JUNIT +dnl +dnl AC_CHECK_JUNIT tests the availability of the Junit testing +dnl framework, and set some variables for conditional compilation +dnl of the test suite by automake. +dnl +dnl If available, JUNIT is set to a command launching the text +dnl based user interface of Junit, @JAVA_JUNIT@ is set to $JAVA_JUNIT +dnl and @TESTS_JUNIT@ is set to $TESTS_JUNIT, otherwise they are set +dnl to empty values. +dnl +dnl You can use these variables in your Makefile.am file like this : +dnl +dnl # Some of the following classes are built only if junit is available +dnl JAVA_JUNIT = Class1Test.java Class2Test.java AllJunitTests.java +dnl +dnl noinst_JAVA = Example1.java Example2.java @JAVA_JUNIT@ +dnl +dnl EXTRA_JAVA = $(JAVA_JUNIT) +dnl +dnl TESTS_JUNIT = AllJunitTests +dnl +dnl TESTS = StandaloneTest1 StandaloneTest2 @TESTS_JUNIT@ +dnl +dnl EXTRA_TESTS = $(TESTS_JUNIT) +dnl +dnl AllJunitTests : +dnl echo "#! /bin/sh" > $@ +dnl echo "exec @JUNIT@ my.package.name.AllJunitTests" >> $@ +dnl chmod +x $@ +dnl +dnl @author Luc Maisonobe +dnl @version $Id: ac_check_junit.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_CHECK_JUNIT],[ +AC_CACHE_VAL(ac_cv_prog_JUNIT,[ +AC_CHECK_CLASS(junit.textui.TestRunner) +if test x"`eval 'echo $ac_cv_class_junit_textui_TestRunner'`" != xno ; then + ac_cv_prog_JUNIT='$(CLASSPATH_ENV) $(JAVA) $(JAVAFLAGS) junit.textui.TestRunner' +fi]) +AC_MSG_CHECKING([for junit]) +if test x"`eval 'echo $ac_cv_prog_JUNIT'`" != x ; then + JUNIT="$ac_cv_prog_JUNIT" + JAVA_JUNIT='$(JAVA_JUNIT)' + TESTS_JUNIT='$(TESTS_JUNIT)' +else + JUNIT= + JAVA_JUNIT= + TESTS_JUNIT= +fi +AC_MSG_RESULT($JAVA_JUNIT) +AC_SUBST(JUNIT) +AC_SUBST(JAVA_JUNIT) +AC_SUBST(TESTS_JUNIT)]) diff --git a/db/dist/aclocal_java/ac_check_rqrd_class.ac b/db/dist/aclocal_java/ac_check_rqrd_class.ac deleted file mode 100644 index c7c26b877..000000000 --- a/db/dist/aclocal_java/ac_check_rqrd_class.ac +++ /dev/null @@ -1,26 +0,0 @@ -dnl @synopsis AC_CHECK_RQRD_CLASS -dnl -dnl AC_CHECK_RQRD_CLASS tests the existence of a given Java class, either in -dnl a jar or in a '.class' file and fails if it doesn't exist. -dnl Its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_check_rqrd_class.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl - -AC_DEFUN([AC_CHECK_RQRD_CLASS],[ -CLASS=`echo $1|sed 's/\./_/g'` -AC_CHECK_CLASS($1) -if test "$HAVE_LAST_CLASS" = "no"; then - AC_MSG_ERROR([Required class $1 missing, exiting.]) -fi -]) diff --git a/db/dist/aclocal_java/ac_check_rqrd_class.m4 b/db/dist/aclocal_java/ac_check_rqrd_class.m4 new file mode 100644 index 000000000..ec9be7bda --- /dev/null +++ b/db/dist/aclocal_java/ac_check_rqrd_class.m4 @@ -0,0 +1,26 @@ +dnl @synopsis AC_CHECK_RQRD_CLASS +dnl +dnl AC_CHECK_RQRD_CLASS tests the existence of a given Java class, either in +dnl a jar or in a '.class' file and fails if it doesn't exist. +dnl Its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_check_rqrd_class.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl + +AC_DEFUN([AC_CHECK_RQRD_CLASS],[ +CLASS=`echo $1|sed 's/\./_/g'` +AC_CHECK_CLASS($1) +if test "$HAVE_LAST_CLASS" = "no"; then + AC_MSG_ERROR([Required class $1 missing, exiting.]) +fi +]) diff --git a/db/dist/aclocal_java/ac_java_options.ac b/db/dist/aclocal_java/ac_java_options.ac deleted file mode 100644 index e71adfe68..000000000 --- a/db/dist/aclocal_java/ac_java_options.ac +++ /dev/null @@ -1,32 +0,0 @@ -dnl @synopsis AC_JAVA_OPTIONS -dnl -dnl AC_JAVA_OPTIONS adds configure command line options used for Java m4 -dnl macros. This Macro is optional. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Devin Weaver -dnl @version $Id: ac_java_options.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_JAVA_OPTIONS],[ -AC_ARG_WITH(java-prefix, - [ --with-java-prefix=PFX prefix where Java runtime is installed (optional)]) -AC_ARG_WITH(javac-flags, - [ --with-javac-flags=FLAGS flags to pass to the Java compiler (optional)]) -AC_ARG_WITH(java-flags, - [ --with-java-flags=FLAGS flags to pass to the Java VM (optional)]) -JAVAPREFIX=$with_java_prefix -JAVACFLAGS=$with_javac_flags -JAVAFLAGS=$with_java_flags -AC_SUBST(JAVAPREFIX)dnl -AC_SUBST(JAVACFLAGS)dnl -AC_SUBST(JAVAFLAGS)dnl -AC_SUBST(JAVA)dnl -AC_SUBST(JAVAC)dnl -]) diff --git a/db/dist/aclocal_java/ac_java_options.m4 b/db/dist/aclocal_java/ac_java_options.m4 new file mode 100644 index 000000000..3e2cfe47a --- /dev/null +++ b/db/dist/aclocal_java/ac_java_options.m4 @@ -0,0 +1,32 @@ +dnl @synopsis AC_JAVA_OPTIONS +dnl +dnl AC_JAVA_OPTIONS adds configure command line options used for Java m4 +dnl macros. This Macro is optional. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Devin Weaver +dnl @version $Id: ac_java_options.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_JAVA_OPTIONS],[ +AC_ARG_WITH(java-prefix, + [ --with-java-prefix=PFX prefix where Java runtime is installed (optional)]) +AC_ARG_WITH(javac-flags, + [ --with-javac-flags=FLAGS flags to pass to the Java compiler (optional)]) +AC_ARG_WITH(java-flags, + [ --with-java-flags=FLAGS flags to pass to the Java VM (optional)]) +JAVAPREFIX=$with_java_prefix +JAVACFLAGS=$with_javac_flags +JAVAFLAGS=$with_java_flags +AC_SUBST(JAVAPREFIX)dnl +AC_SUBST(JAVACFLAGS)dnl +AC_SUBST(JAVAFLAGS)dnl +AC_SUBST(JAVA)dnl +AC_SUBST(JAVAC)dnl +]) diff --git a/db/dist/aclocal_java/ac_jni_include_dirs.ac b/db/dist/aclocal_java/ac_jni_include_dirs.ac deleted file mode 100644 index 177f62f85..000000000 --- a/db/dist/aclocal_java/ac_jni_include_dirs.ac +++ /dev/null @@ -1,114 +0,0 @@ -dnl @synopsis AC_JNI_INCLUDE_DIR -dnl -dnl AC_JNI_INCLUDE_DIR finds include directories needed -dnl for compiling programs using the JNI interface. -dnl -dnl JNI include directories are usually in the java distribution -dnl This is deduced from the value of JAVAC. When this macro -dnl completes, a list of directories is left in the variable -dnl JNI_INCLUDE_DIRS. -dnl -dnl Example usage follows: -dnl -dnl AC_JNI_INCLUDE_DIR -dnl -dnl for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS -dnl do -dnl CPPFLAGS="$CPPFLAGS -I$JNI_INCLUDE_DIR" -dnl done -dnl -dnl If you want to force a specific compiler: -dnl -dnl - at the configure.in level, set JAVAC=yourcompiler before calling -dnl AC_JNI_INCLUDE_DIR -dnl -dnl - at the configure level, setenv JAVAC -dnl -dnl Note: This macro can work with the autoconf M4 macros for Java programs. -dnl This particular macro is not part of the original set of macros. -dnl -dnl @author Don Anderson -dnl @version $Id: ac_jni_include_dirs.ac,v 12.1 2006/08/24 14:45:36 bostic Exp $ -dnl -AC_DEFUN(AC_JNI_INCLUDE_DIR,[ - -JNI_INCLUDE_DIRS="" - -test "x$JAVAC" = x && AC_MSG_ERROR(['$JAVAC' undefined]) -AC_PATH_PROG(_ACJNI_JAVAC, $JAVAC, $JAVAC) -test ! -x "$_ACJNI_JAVAC" && AC_MSG_ERROR([$JAVAC could not be found in path]) -AC_MSG_CHECKING(absolute path of $JAVAC) -case "$_ACJNI_JAVAC" in -/*) AC_MSG_RESULT($_ACJNI_JAVAC);; -*) AC_MSG_ERROR([$_ACJNI_JAVAC is not an absolute path name]);; -esac - -_ACJNI_FOLLOW_SYMLINKS("$_ACJNI_JAVAC") -_JTOPDIR=`echo "$_ACJNI_FOLLOWED" | sed -e 's://*:/:g' -e 's:/[[^/]]*$::'` -case "$host_os" in - darwin*) _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` - _JINC="$_JTOPDIR/Headers";; - *) _JINC="$_JTOPDIR/include";; -esac - -# If we find jni.h in /usr/include, then it's not a java-only tree, so -# don't add /usr/include or subdirectories to the list of includes. -# An extra -I/usr/include can foul things up with newer gcc's. -# -# If we don't find jni.h, just keep going. Hopefully javac knows where -# to find its include files, even if we can't. -if test -r "$_JINC/jni.h"; then - if test "$_JINC" != "/usr/include"; then - JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JINC" - fi -else - _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` - if test -r "$_JTOPDIR/include/jni.h"; then - if test "$_JTOPDIR" != "/usr"; then - JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include" - fi - fi -fi - -# get the likely subdirectories for system specific java includes -if test "$_JTOPDIR" != "/usr"; then - case "$host_os" in - aix*) _JNI_INC_SUBDIRS="aix";; - bsdi*) _JNI_INC_SUBDIRS="bsdos";; - freebsd*) _JNI_INC_SUBDIRS="freebsd";; - hp*) _JNI_INC_SUBDIRS="hp-ux";; - linux*) _JNI_INC_SUBDIRS="linux genunix";; - osf*) _JNI_INC_SUBDIRS="alpha";; - solaris*) _JNI_INC_SUBDIRS="solaris";; - *) _JNI_INC_SUBDIRS="genunix";; - esac -fi - -# add any subdirectories that are present -for _JINCSUBDIR in $_JNI_INC_SUBDIRS -do - if test -d "$_JTOPDIR/include/$_JINCSUBDIR"; then - JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include/$_JINCSUBDIR" - fi -done -]) - -# _ACJNI_FOLLOW_SYMLINKS -# Follows symbolic links on , -# finally setting variable _ACJNI_FOLLOWED -# -------------------- -AC_DEFUN(_ACJNI_FOLLOW_SYMLINKS,[ -# find the include directory relative to the javac executable -_cur="$1" -while ls -ld "$_cur" 2>/dev/null | grep " -> " >/dev/null; do - AC_MSG_CHECKING(symlink for $_cur) - _slink=`ls -ld "$_cur" | sed 's/.* -> //'` - case "$_slink" in - /*) _cur="$_slink";; - # 'X' avoids triggering unwanted echo options. - *) _cur=`echo "X$_cur" | sed -e 's/^X//' -e 's:[[^/]]*$::'`"$_slink";; - esac - AC_MSG_RESULT($_cur) -done -_ACJNI_FOLLOWED="$_cur" -])# _ACJNI diff --git a/db/dist/aclocal_java/ac_jni_include_dirs.m4 b/db/dist/aclocal_java/ac_jni_include_dirs.m4 new file mode 100644 index 000000000..d7738777a --- /dev/null +++ b/db/dist/aclocal_java/ac_jni_include_dirs.m4 @@ -0,0 +1,114 @@ +dnl @synopsis AC_JNI_INCLUDE_DIR +dnl +dnl AC_JNI_INCLUDE_DIR finds include directories needed +dnl for compiling programs using the JNI interface. +dnl +dnl JNI include directories are usually in the java distribution +dnl This is deduced from the value of JAVAC. When this macro +dnl completes, a list of directories is left in the variable +dnl JNI_INCLUDE_DIRS. +dnl +dnl Example usage follows: +dnl +dnl AC_JNI_INCLUDE_DIR +dnl +dnl for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS +dnl do +dnl CPPFLAGS="$CPPFLAGS -I$JNI_INCLUDE_DIR" +dnl done +dnl +dnl If you want to force a specific compiler: +dnl +dnl - at the configure.in level, set JAVAC=yourcompiler before calling +dnl AC_JNI_INCLUDE_DIR +dnl +dnl - at the configure level, setenv JAVAC +dnl +dnl Note: This macro can work with the autoconf M4 macros for Java programs. +dnl This particular macro is not part of the original set of macros. +dnl +dnl @author Don Anderson +dnl @version $Id: ac_jni_include_dirs.m4,v 12.1 2006/08/24 14:45:36 bostic Exp $ +dnl +AC_DEFUN(AC_JNI_INCLUDE_DIR,[ + +JNI_INCLUDE_DIRS="" + +test "x$JAVAC" = x && AC_MSG_ERROR(['$JAVAC' undefined]) +AC_PATH_PROG(_ACJNI_JAVAC, $JAVAC, $JAVAC) +test ! -x "$_ACJNI_JAVAC" && AC_MSG_ERROR([$JAVAC could not be found in path]) +AC_MSG_CHECKING(absolute path of $JAVAC) +case "$_ACJNI_JAVAC" in +/*) AC_MSG_RESULT($_ACJNI_JAVAC);; +*) AC_MSG_ERROR([$_ACJNI_JAVAC is not an absolute path name]);; +esac + +_ACJNI_FOLLOW_SYMLINKS("$_ACJNI_JAVAC") +_JTOPDIR=`echo "$_ACJNI_FOLLOWED" | sed -e 's://*:/:g' -e 's:/[[^/]]*$::'` +case "$host_os" in + darwin*) _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` + _JINC="$_JTOPDIR/Headers";; + *) _JINC="$_JTOPDIR/include";; +esac + +# If we find jni.h in /usr/include, then it's not a java-only tree, so +# don't add /usr/include or subdirectories to the list of includes. +# An extra -I/usr/include can foul things up with newer gcc's. +# +# If we don't find jni.h, just keep going. Hopefully javac knows where +# to find its include files, even if we can't. +if test -r "$_JINC/jni.h"; then + if test "$_JINC" != "/usr/include"; then + JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JINC" + fi +else + _JTOPDIR=`echo "$_JTOPDIR" | sed -e 's:/[[^/]]*$::'` + if test -r "$_JTOPDIR/include/jni.h"; then + if test "$_JTOPDIR" != "/usr"; then + JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include" + fi + fi +fi + +# get the likely subdirectories for system specific java includes +if test "$_JTOPDIR" != "/usr"; then + case "$host_os" in + aix*) _JNI_INC_SUBDIRS="aix";; + bsdi*) _JNI_INC_SUBDIRS="bsdos";; + freebsd*) _JNI_INC_SUBDIRS="freebsd";; + hp*) _JNI_INC_SUBDIRS="hp-ux";; + linux*) _JNI_INC_SUBDIRS="linux genunix";; + osf*) _JNI_INC_SUBDIRS="alpha";; + solaris*) _JNI_INC_SUBDIRS="solaris";; + *) _JNI_INC_SUBDIRS="genunix";; + esac +fi + +# add any subdirectories that are present +for _JINCSUBDIR in $_JNI_INC_SUBDIRS +do + if test -d "$_JTOPDIR/include/$_JINCSUBDIR"; then + JNI_INCLUDE_DIRS="$JNI_INCLUDE_DIRS $_JTOPDIR/include/$_JINCSUBDIR" + fi +done +]) + +# _ACJNI_FOLLOW_SYMLINKS +# Follows symbolic links on , +# finally setting variable _ACJNI_FOLLOWED +# -------------------- +AC_DEFUN(_ACJNI_FOLLOW_SYMLINKS,[ +# find the include directory relative to the javac executable +_cur="$1" +while ls -ld "$_cur" 2>/dev/null | grep " -> " >/dev/null; do + AC_MSG_CHECKING(symlink for $_cur) + _slink=`ls -ld "$_cur" | sed 's/.* -> //'` + case "$_slink" in + /*) _cur="$_slink";; + # 'X' avoids triggering unwanted echo options. + *) _cur=`echo "X$_cur" | sed -e 's/^X//' -e 's:[[^/]]*$::'`"$_slink";; + esac + AC_MSG_RESULT($_cur) +done +_ACJNI_FOLLOWED="$_cur" +])# _ACJNI diff --git a/db/dist/aclocal_java/ac_prog_jar.ac b/db/dist/aclocal_java/ac_prog_jar.ac deleted file mode 100644 index c60a79a85..000000000 --- a/db/dist/aclocal_java/ac_prog_jar.ac +++ /dev/null @@ -1,36 +0,0 @@ -dnl @synopsis AC_PROG_JAR -dnl -dnl AC_PROG_JAR tests for an existing jar program. It uses the environment -dnl variable JAR then tests in sequence various common jar programs. -dnl -dnl If you want to force a specific compiler: -dnl -dnl - at the configure.in level, set JAR=yourcompiler before calling -dnl AC_PROG_JAR -dnl -dnl - at the configure level, setenv JAR -dnl -dnl You can use the JAR variable in your Makefile.in, with @JAR@. -dnl -dnl Note: This macro depends on the autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download that whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl -dnl The general documentation of those macros, as well as the sample -dnl configure.in, is included in the AC_PROG_JAVA macro. -dnl -dnl @author Egon Willighagen -dnl @version $Id: ac_prog_jar.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAR],[ -AC_REQUIRE([AC_EXEEXT])dnl -if test "x$JAVAPREFIX" = x; then - test "x$JAR" = x && AC_CHECK_PROGS(JAR, jar$EXEEXT) -else - test "x$JAR" = x && AC_CHECK_PROGS(JAR, jar, $JAVAPREFIX) -fi -test "x$JAR" = x && AC_MSG_ERROR([no acceptable jar program found in \$PATH]) -AC_PROVIDE([$0])dnl -]) diff --git a/db/dist/aclocal_java/ac_prog_jar.m4 b/db/dist/aclocal_java/ac_prog_jar.m4 new file mode 100644 index 000000000..1dc316f2e --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_jar.m4 @@ -0,0 +1,36 @@ +dnl @synopsis AC_PROG_JAR +dnl +dnl AC_PROG_JAR tests for an existing jar program. It uses the environment +dnl variable JAR then tests in sequence various common jar programs. +dnl +dnl If you want to force a specific compiler: +dnl +dnl - at the configure.in level, set JAR=yourcompiler before calling +dnl AC_PROG_JAR +dnl +dnl - at the configure level, setenv JAR +dnl +dnl You can use the JAR variable in your Makefile.in, with @JAR@. +dnl +dnl Note: This macro depends on the autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download that whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl +dnl The general documentation of those macros, as well as the sample +dnl configure.in, is included in the AC_PROG_JAVA macro. +dnl +dnl @author Egon Willighagen +dnl @version $Id: ac_prog_jar.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAR],[ +AC_REQUIRE([AC_EXEEXT])dnl +if test "x$JAVAPREFIX" = x; then + test "x$JAR" = x && AC_CHECK_PROGS(JAR, jar$EXEEXT) +else + test "x$JAR" = x && AC_CHECK_PROGS(JAR, jar, $JAVAPREFIX) +fi +test "x$JAR" = x && AC_MSG_ERROR([no acceptable jar program found in \$PATH]) +AC_PROVIDE([$0])dnl +]) diff --git a/db/dist/aclocal_java/ac_prog_java.ac b/db/dist/aclocal_java/ac_prog_java.ac deleted file mode 100644 index 05c65e7c4..000000000 --- a/db/dist/aclocal_java/ac_prog_java.ac +++ /dev/null @@ -1,79 +0,0 @@ -dnl @synopsis AC_PROG_JAVA -dnl -dnl Here is a summary of the main macros: -dnl -dnl AC_PROG_JAVAC: finds a Java compiler. -dnl -dnl AC_PROG_JAVA: finds a Java virtual machine. -dnl -dnl AC_CHECK_CLASS: finds if we have the given class (beware of CLASSPATH!). -dnl -dnl AC_CHECK_RQRD_CLASS: finds if we have the given class and stops otherwise. -dnl -dnl AC_TRY_COMPILE_JAVA: attempt to compile user given source. -dnl -dnl AC_TRY_RUN_JAVA: attempt to compile and run user given source. -dnl -dnl AC_JAVA_OPTIONS: adds Java configure options. -dnl -dnl AC_PROG_JAVA tests an existing Java virtual machine. It uses the -dnl environment variable JAVA then tests in sequence various common Java -dnl virtual machines. For political reasons, it starts with the free ones. -dnl You *must* call [AC_PROG_JAVAC] before. -dnl -dnl If you want to force a specific VM: -dnl -dnl - at the configure.in level, set JAVA=yourvm before calling AC_PROG_JAVA -dnl (but after AC_INIT) -dnl -dnl - at the configure level, setenv JAVA -dnl -dnl You can use the JAVA variable in your Makefile.in, with @JAVA@. -dnl -dnl *Warning*: its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl TODO: allow to exclude virtual machines (rationale: most Java programs -dnl cannot run with some VM like kaffe). -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl -dnl A Web page, with a link to the latest CVS snapshot is at -dnl . -dnl -dnl This is a sample configure.in -dnl Process this file with autoconf to produce a configure script. -dnl -dnl AC_INIT(UnTag.java) -dnl -dnl dnl Checks for programs. -dnl AC_CHECK_CLASSPATH -dnl AC_PROG_JAVAC -dnl AC_PROG_JAVA -dnl -dnl dnl Checks for classes -dnl AC_CHECK_RQRD_CLASS(org.xml.sax.Parser) -dnl AC_CHECK_RQRD_CLASS(com.jclark.xml.sax.Driver) -dnl -dnl AC_OUTPUT(Makefile) -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_prog_java.ac,v 12.1 2006/08/24 14:45:36 bostic Exp $ -dnl -dnl Note: Modified to prefer java over kaffe. [#8059] -dnl -AC_DEFUN([AC_PROG_JAVA],[ -AC_REQUIRE([AC_EXEEXT])dnl -if test x$JAVAPREFIX = x; then - test x$JAVA = x && AC_CHECK_PROGS(JAVA, java$EXEEXT kaffe$EXEEXT) -else - test x$JAVA = x && AC_CHECK_PROGS(JAVA, java$EXEEXT kaffe$EXEEXT, $JAVAPREFIX) -fi -test x$JAVA = x && AC_MSG_ERROR([no acceptable Java virtual machine found in \$PATH]) -AC_PROG_JAVA_WORKS -AC_PROVIDE([$0])dnl -]) diff --git a/db/dist/aclocal_java/ac_prog_java.m4 b/db/dist/aclocal_java/ac_prog_java.m4 new file mode 100644 index 000000000..7a908bec7 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_java.m4 @@ -0,0 +1,79 @@ +dnl @synopsis AC_PROG_JAVA +dnl +dnl Here is a summary of the main macros: +dnl +dnl AC_PROG_JAVAC: finds a Java compiler. +dnl +dnl AC_PROG_JAVA: finds a Java virtual machine. +dnl +dnl AC_CHECK_CLASS: finds if we have the given class (beware of CLASSPATH!). +dnl +dnl AC_CHECK_RQRD_CLASS: finds if we have the given class and stops otherwise. +dnl +dnl AC_TRY_COMPILE_JAVA: attempt to compile user given source. +dnl +dnl AC_TRY_RUN_JAVA: attempt to compile and run user given source. +dnl +dnl AC_JAVA_OPTIONS: adds Java configure options. +dnl +dnl AC_PROG_JAVA tests an existing Java virtual machine. It uses the +dnl environment variable JAVA then tests in sequence various common Java +dnl virtual machines. For political reasons, it starts with the free ones. +dnl You *must* call [AC_PROG_JAVAC] before. +dnl +dnl If you want to force a specific VM: +dnl +dnl - at the configure.in level, set JAVA=yourvm before calling AC_PROG_JAVA +dnl (but after AC_INIT) +dnl +dnl - at the configure level, setenv JAVA +dnl +dnl You can use the JAVA variable in your Makefile.in, with @JAVA@. +dnl +dnl *Warning*: its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl TODO: allow to exclude virtual machines (rationale: most Java programs +dnl cannot run with some VM like kaffe). +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl +dnl A Web page, with a link to the latest CVS snapshot is at +dnl . +dnl +dnl This is a sample configure.in +dnl Process this file with autoconf to produce a configure script. +dnl +dnl AC_INIT(UnTag.java) +dnl +dnl dnl Checks for programs. +dnl AC_CHECK_CLASSPATH +dnl AC_PROG_JAVAC +dnl AC_PROG_JAVA +dnl +dnl dnl Checks for classes +dnl AC_CHECK_RQRD_CLASS(org.xml.sax.Parser) +dnl AC_CHECK_RQRD_CLASS(com.jclark.xml.sax.Driver) +dnl +dnl AC_OUTPUT(Makefile) +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_prog_java.m4,v 12.1 2006/08/24 14:45:36 bostic Exp $ +dnl +dnl Note: Modified to prefer java over kaffe. [#8059] +dnl +AC_DEFUN([AC_PROG_JAVA],[ +AC_REQUIRE([AC_EXEEXT])dnl +if test x$JAVAPREFIX = x; then + test x$JAVA = x && AC_CHECK_PROGS(JAVA, java$EXEEXT kaffe$EXEEXT) +else + test x$JAVA = x && AC_CHECK_PROGS(JAVA, java$EXEEXT kaffe$EXEEXT, $JAVAPREFIX) +fi +test x$JAVA = x && AC_MSG_ERROR([no acceptable Java virtual machine found in \$PATH]) +AC_PROG_JAVA_WORKS +AC_PROVIDE([$0])dnl +]) diff --git a/db/dist/aclocal_java/ac_prog_java_works.ac b/db/dist/aclocal_java/ac_prog_java_works.ac deleted file mode 100644 index f0ff8c57f..000000000 --- a/db/dist/aclocal_java/ac_prog_java_works.ac +++ /dev/null @@ -1,97 +0,0 @@ -dnl @synopsis AC_PROG_JAVA_WORKS -dnl -dnl Internal use ONLY. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_prog_java_works.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAVA_WORKS], [ -AC_CHECK_PROG(uudecode, uudecode$EXEEXT, yes) -if test x$uudecode = xyes; then -AC_CACHE_CHECK([if uudecode can decode base 64 file], ac_cv_prog_uudecode_base64, [ -dnl /** -dnl * Test.java: used to test if java compiler works. -dnl */ -dnl public class Test -dnl { -dnl -dnl public static void -dnl main( String[] argv ) -dnl { -dnl System.exit (0); -dnl } -dnl -dnl } -cat << \EOF > Test.uue -begin-base64 644 Test.class -yv66vgADAC0AFQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE -bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51 -bWJlclRhYmxlDAAKAAsBAARleGl0AQAEKEkpVgoADQAJBwAOAQAQamF2YS9s -YW5nL1N5c3RlbQEABjxpbml0PgEAAygpVgwADwAQCgADABEBAApTb3VyY2VG -aWxlAQAJVGVzdC5qYXZhACEAAQADAAAAAAACAAkABQAGAAEABwAAACEAAQAB -AAAABQO4AAyxAAAAAQAIAAAACgACAAAACgAEAAsAAQAPABAAAQAHAAAAIQAB -AAEAAAAFKrcAErEAAAABAAgAAAAKAAIAAAAEAAQABAABABMAAAACABQ= -==== -EOF -if uudecode$EXEEXT Test.uue; then - ac_cv_prog_uudecode_base64=yes -else - echo "configure: __oline__: uudecode had trouble decoding base 64 file 'Test.uue'" >&AC_FD_CC - echo "configure: failed file was:" >&AC_FD_CC - cat Test.uue >&AC_FD_CC - ac_cv_prog_uudecode_base64=no -fi -rm -f Test.uue]) -fi -if test x$ac_cv_prog_uudecode_base64 != xyes; then - rm -f Test.class - AC_MSG_WARN([I have to compile Test.class from scratch]) - if test x$ac_cv_prog_javac_works = xno; then - AC_MSG_ERROR([Cannot compile java source. $JAVAC does not work properly]) - fi - if test x$ac_cv_prog_javac_works = x; then - AC_PROG_JAVAC - fi -fi -AC_CACHE_CHECK(if $JAVA works, ac_cv_prog_java_works, [ -JAVA_TEST=Test.java -CLASS_TEST=Test.class -TEST=Test -changequote(, )dnl -cat << \EOF > $JAVA_TEST -/* [#]line __oline__ "configure" */ -public class Test { -public static void main (String args[]) { - System.exit (0); -} } -EOF -changequote([, ])dnl -if test x$ac_cv_prog_uudecode_base64 != xyes; then - if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) && test -s $CLASS_TEST; then - : - else - echo "configure: failed program was:" >&AC_FD_CC - cat $JAVA_TEST >&AC_FD_CC - AC_MSG_ERROR(The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?)) - fi -fi -if AC_TRY_COMMAND($JAVA $JAVAFLAGS $TEST) >/dev/null 2>&1; then - ac_cv_prog_java_works=yes -else - echo "configure: failed program was:" >&AC_FD_CC - cat $JAVA_TEST >&AC_FD_CC - AC_MSG_ERROR(The Java VM $JAVA failed (see config.log, check the CLASSPATH?)) -fi -rm -fr $JAVA_TEST $CLASS_TEST Test.uue -]) -AC_PROVIDE([$0])dnl -] -) diff --git a/db/dist/aclocal_java/ac_prog_java_works.m4 b/db/dist/aclocal_java/ac_prog_java_works.m4 new file mode 100644 index 000000000..33a0e19e1 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_java_works.m4 @@ -0,0 +1,97 @@ +dnl @synopsis AC_PROG_JAVA_WORKS +dnl +dnl Internal use ONLY. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_prog_java_works.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAVA_WORKS], [ +AC_CHECK_PROG(uudecode, uudecode$EXEEXT, yes) +if test x$uudecode = xyes; then +AC_CACHE_CHECK([if uudecode can decode base 64 file], ac_cv_prog_uudecode_base64, [ +dnl /** +dnl * Test.java: used to test if java compiler works. +dnl */ +dnl public class Test +dnl { +dnl +dnl public static void +dnl main( String[] argv ) +dnl { +dnl System.exit (0); +dnl } +dnl +dnl } +cat << \EOF > Test.uue +begin-base64 644 Test.class +yv66vgADAC0AFQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE +bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51 +bWJlclRhYmxlDAAKAAsBAARleGl0AQAEKEkpVgoADQAJBwAOAQAQamF2YS9s +YW5nL1N5c3RlbQEABjxpbml0PgEAAygpVgwADwAQCgADABEBAApTb3VyY2VG +aWxlAQAJVGVzdC5qYXZhACEAAQADAAAAAAACAAkABQAGAAEABwAAACEAAQAB +AAAABQO4AAyxAAAAAQAIAAAACgACAAAACgAEAAsAAQAPABAAAQAHAAAAIQAB +AAEAAAAFKrcAErEAAAABAAgAAAAKAAIAAAAEAAQABAABABMAAAACABQ= +==== +EOF +if uudecode$EXEEXT Test.uue; then + ac_cv_prog_uudecode_base64=yes +else + echo "configure: __oline__: uudecode had trouble decoding base 64 file 'Test.uue'" >&AC_FD_CC + echo "configure: failed file was:" >&AC_FD_CC + cat Test.uue >&AC_FD_CC + ac_cv_prog_uudecode_base64=no +fi +rm -f Test.uue]) +fi +if test x$ac_cv_prog_uudecode_base64 != xyes; then + rm -f Test.class + AC_MSG_WARN([I have to compile Test.class from scratch]) + if test x$ac_cv_prog_javac_works = xno; then + AC_MSG_ERROR([Cannot compile java source. $JAVAC does not work properly]) + fi + if test x$ac_cv_prog_javac_works = x; then + AC_PROG_JAVAC + fi +fi +AC_CACHE_CHECK(if $JAVA works, ac_cv_prog_java_works, [ +JAVA_TEST=Test.java +CLASS_TEST=Test.class +TEST=Test +changequote(, )dnl +cat << \EOF > $JAVA_TEST +/* [#]line __oline__ "configure" */ +public class Test { +public static void main (String args[]) { + System.exit (0); +} } +EOF +changequote([, ])dnl +if test x$ac_cv_prog_uudecode_base64 != xyes; then + if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) && test -s $CLASS_TEST; then + : + else + echo "configure: failed program was:" >&AC_FD_CC + cat $JAVA_TEST >&AC_FD_CC + AC_MSG_ERROR(The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?)) + fi +fi +if AC_TRY_COMMAND($JAVA $JAVAFLAGS $TEST) >/dev/null 2>&1; then + ac_cv_prog_java_works=yes +else + echo "configure: failed program was:" >&AC_FD_CC + cat $JAVA_TEST >&AC_FD_CC + AC_MSG_ERROR(The Java VM $JAVA failed (see config.log, check the CLASSPATH?)) +fi +rm -fr $JAVA_TEST $CLASS_TEST Test.uue +]) +AC_PROVIDE([$0])dnl +] +) diff --git a/db/dist/aclocal_java/ac_prog_javac.ac b/db/dist/aclocal_java/ac_prog_javac.ac deleted file mode 100644 index b3607dcf8..000000000 --- a/db/dist/aclocal_java/ac_prog_javac.ac +++ /dev/null @@ -1,43 +0,0 @@ -dnl @synopsis AC_PROG_JAVAC -dnl -dnl AC_PROG_JAVAC tests an existing Java compiler. It uses the environment -dnl variable JAVAC then tests in sequence various common Java compilers. For -dnl political reasons, it starts with the free ones. -dnl -dnl If you want to force a specific compiler: -dnl -dnl - at the configure.in level, set JAVAC=yourcompiler before calling -dnl AC_PROG_JAVAC -dnl -dnl - at the configure level, setenv JAVAC -dnl -dnl You can use the JAVAC variable in your Makefile.in, with @JAVAC@. -dnl -dnl *Warning*: its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl TODO: allow to exclude compilers (rationale: most Java programs cannot compile -dnl with some compilers like guavac). -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_prog_javac.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAVAC],[ -AC_REQUIRE([AC_EXEEXT])dnl -if test "x$JAVAPREFIX" = x; then - test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, javac$EXEEXT "gcj$EXEEXT -C" guavac$EXEEXT jikes$EXEEXT) -else - test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, javac$EXEEXT "gcj$EXEEXT -C" guavac$EXEEXT jikes$EXEEXT, $JAVAPREFIX) -fi -test "x$JAVAC" = x && AC_MSG_ERROR([no acceptable Java compiler found in \$PATH]) -AC_PROG_JAVAC_WORKS -AC_PROVIDE([$0])dnl -]) diff --git a/db/dist/aclocal_java/ac_prog_javac.m4 b/db/dist/aclocal_java/ac_prog_javac.m4 new file mode 100644 index 000000000..580685993 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_javac.m4 @@ -0,0 +1,43 @@ +dnl @synopsis AC_PROG_JAVAC +dnl +dnl AC_PROG_JAVAC tests an existing Java compiler. It uses the environment +dnl variable JAVAC then tests in sequence various common Java compilers. For +dnl political reasons, it starts with the free ones. +dnl +dnl If you want to force a specific compiler: +dnl +dnl - at the configure.in level, set JAVAC=yourcompiler before calling +dnl AC_PROG_JAVAC +dnl +dnl - at the configure level, setenv JAVAC +dnl +dnl You can use the JAVAC variable in your Makefile.in, with @JAVAC@. +dnl +dnl *Warning*: its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl TODO: allow to exclude compilers (rationale: most Java programs cannot compile +dnl with some compilers like guavac). +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_prog_javac.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAVAC],[ +AC_REQUIRE([AC_EXEEXT])dnl +if test "x$JAVAPREFIX" = x; then + test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, javac$EXEEXT "gcj$EXEEXT -C" guavac$EXEEXT jikes$EXEEXT) +else + test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, javac$EXEEXT "gcj$EXEEXT -C" guavac$EXEEXT jikes$EXEEXT, $JAVAPREFIX) +fi +test "x$JAVAC" = x && AC_MSG_ERROR([no acceptable Java compiler found in \$PATH]) +AC_PROG_JAVAC_WORKS +AC_PROVIDE([$0])dnl +]) diff --git a/db/dist/aclocal_java/ac_prog_javac_works.ac b/db/dist/aclocal_java/ac_prog_javac_works.ac deleted file mode 100644 index 0cfd1f213..000000000 --- a/db/dist/aclocal_java/ac_prog_javac_works.ac +++ /dev/null @@ -1,35 +0,0 @@ -dnl @synopsis AC_PROG_JAVAC_WORKS -dnl -dnl Internal use ONLY. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Stephane Bortzmeyer -dnl @version $Id: ac_prog_javac_works.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAVAC_WORKS],[ -AC_CACHE_CHECK([if $JAVAC works], ac_cv_prog_javac_works, [ -JAVA_TEST=Test.java -CLASS_TEST=Test.class -cat << \EOF > $JAVA_TEST -/* [#]line __oline__ "configure" */ -public class Test { -} -EOF -if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) >/dev/null 2>&1; then - ac_cv_prog_javac_works=yes -else - AC_MSG_ERROR([The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?)]) - echo "configure: failed program was:" >&AC_FD_CC - cat $JAVA_TEST >&AC_FD_CC -fi -rm -f $JAVA_TEST $CLASS_TEST -]) -AC_PROVIDE([$0])dnl -]) diff --git a/db/dist/aclocal_java/ac_prog_javac_works.m4 b/db/dist/aclocal_java/ac_prog_javac_works.m4 new file mode 100644 index 000000000..548466827 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_javac_works.m4 @@ -0,0 +1,35 @@ +dnl @synopsis AC_PROG_JAVAC_WORKS +dnl +dnl Internal use ONLY. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Stephane Bortzmeyer +dnl @version $Id: ac_prog_javac_works.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAVAC_WORKS],[ +AC_CACHE_CHECK([if $JAVAC works], ac_cv_prog_javac_works, [ +JAVA_TEST=Test.java +CLASS_TEST=Test.class +cat << \EOF > $JAVA_TEST +/* [#]line __oline__ "configure" */ +public class Test { +} +EOF +if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) >/dev/null 2>&1; then + ac_cv_prog_javac_works=yes +else + AC_MSG_ERROR([The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?)]) + echo "configure: failed program was:" >&AC_FD_CC + cat $JAVA_TEST >&AC_FD_CC +fi +rm -f $JAVA_TEST $CLASS_TEST +]) +AC_PROVIDE([$0])dnl +]) diff --git a/db/dist/aclocal_java/ac_prog_javadoc.ac b/db/dist/aclocal_java/ac_prog_javadoc.ac deleted file mode 100644 index 36b95bd00..000000000 --- a/db/dist/aclocal_java/ac_prog_javadoc.ac +++ /dev/null @@ -1,37 +0,0 @@ -dnl @synopsis AC_PROG_JAVADOC -dnl -dnl AC_PROG_JAVADOC tests for an existing javadoc generator. It uses the environment -dnl variable JAVADOC then tests in sequence various common javadoc generator. -dnl -dnl If you want to force a specific compiler: -dnl -dnl - at the configure.in level, set JAVADOC=yourgenerator before calling -dnl AC_PROG_JAVADOC -dnl -dnl - at the configure level, setenv JAVADOC -dnl -dnl You can use the JAVADOC variable in your Makefile.in, with @JAVADOC@. -dnl -dnl Note: This macro depends on the autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download that whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl -dnl The general documentation of those macros, as well as the sample -dnl configure.in, is included in the AC_PROG_JAVA macro. -dnl -dnl @author Egon Willighagen -dnl @version $Id: ac_prog_javadoc.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAVADOC],[ -AC_REQUIRE([AC_EXEEXT])dnl -if test "x$JAVAPREFIX" = x; then - test "x$JAVADOC" = x && AC_CHECK_PROGS(JAVADOC, javadoc$EXEEXT) -else - test "x$JAVADOC" = x && AC_CHECK_PROGS(JAVADOC, javadoc, $JAVAPREFIX) -fi -test "x$JAVADOC" = x && AC_MSG_ERROR([no acceptable javadoc generator found in \$PATH]) -AC_PROVIDE([$0])dnl -]) - diff --git a/db/dist/aclocal_java/ac_prog_javadoc.m4 b/db/dist/aclocal_java/ac_prog_javadoc.m4 new file mode 100644 index 000000000..42b700bc9 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_javadoc.m4 @@ -0,0 +1,37 @@ +dnl @synopsis AC_PROG_JAVADOC +dnl +dnl AC_PROG_JAVADOC tests for an existing javadoc generator. It uses the environment +dnl variable JAVADOC then tests in sequence various common javadoc generator. +dnl +dnl If you want to force a specific compiler: +dnl +dnl - at the configure.in level, set JAVADOC=yourgenerator before calling +dnl AC_PROG_JAVADOC +dnl +dnl - at the configure level, setenv JAVADOC +dnl +dnl You can use the JAVADOC variable in your Makefile.in, with @JAVADOC@. +dnl +dnl Note: This macro depends on the autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download that whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl +dnl The general documentation of those macros, as well as the sample +dnl configure.in, is included in the AC_PROG_JAVA macro. +dnl +dnl @author Egon Willighagen +dnl @version $Id: ac_prog_javadoc.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAVADOC],[ +AC_REQUIRE([AC_EXEEXT])dnl +if test "x$JAVAPREFIX" = x; then + test "x$JAVADOC" = x && AC_CHECK_PROGS(JAVADOC, javadoc$EXEEXT) +else + test "x$JAVADOC" = x && AC_CHECK_PROGS(JAVADOC, javadoc, $JAVAPREFIX) +fi +test "x$JAVADOC" = x && AC_MSG_ERROR([no acceptable javadoc generator found in \$PATH]) +AC_PROVIDE([$0])dnl +]) + diff --git a/db/dist/aclocal_java/ac_prog_javah.ac b/db/dist/aclocal_java/ac_prog_javah.ac deleted file mode 100644 index 7563036c0..000000000 --- a/db/dist/aclocal_java/ac_prog_javah.ac +++ /dev/null @@ -1,26 +0,0 @@ -dnl @synopsis AC_PROG_JAVAH -dnl -dnl AC_PROG_JAVAH tests the availability of the javah header generator -dnl and looks for the jni.h header file. If available, JAVAH is set to -dnl the full path of javah and CPPFLAGS is updated accordingly. -dnl -dnl @author Luc Maisonobe -dnl @version $Id: ac_prog_javah.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_PROG_JAVAH],[ -AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl -AC_REQUIRE([AC_PROG_CPP])dnl -AC_PATH_PROG(JAVAH,javah) -if test x"`eval 'echo $ac_cv_path_JAVAH'`" != x ; then - AC_TRY_CPP([#include ],,[ - ac_save_CPPFLAGS="$CPPFLAGS" -changequote(, )dnl - ac_dir=`echo $ac_cv_path_JAVAH | sed 's,\(.*\)/[^/]*/[^/]*$,\1/include,'` - ac_machdep=`echo $build_os | sed 's,[-0-9].*,,'` -changequote([, ])dnl - CPPFLAGS="$ac_save_CPPFLAGS -I$ac_dir -I$ac_dir/$ac_machdep" - AC_TRY_CPP([#include ], - ac_save_CPPFLAGS="$CPPFLAGS", - AC_MSG_WARN([unable to include ])) - CPPFLAGS="$ac_save_CPPFLAGS"]) -fi]) diff --git a/db/dist/aclocal_java/ac_prog_javah.m4 b/db/dist/aclocal_java/ac_prog_javah.m4 new file mode 100644 index 000000000..7c07fe9e4 --- /dev/null +++ b/db/dist/aclocal_java/ac_prog_javah.m4 @@ -0,0 +1,26 @@ +dnl @synopsis AC_PROG_JAVAH +dnl +dnl AC_PROG_JAVAH tests the availability of the javah header generator +dnl and looks for the jni.h header file. If available, JAVAH is set to +dnl the full path of javah and CPPFLAGS is updated accordingly. +dnl +dnl @author Luc Maisonobe +dnl @version $Id: ac_prog_javah.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_PROG_JAVAH],[ +AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl +AC_REQUIRE([AC_PROG_CPP])dnl +AC_PATH_PROG(JAVAH,javah) +if test x"`eval 'echo $ac_cv_path_JAVAH'`" != x ; then + AC_TRY_CPP([#include ],,[ + ac_save_CPPFLAGS="$CPPFLAGS" +changequote(, )dnl + ac_dir=`echo $ac_cv_path_JAVAH | sed 's,\(.*\)/[^/]*/[^/]*$,\1/include,'` + ac_machdep=`echo $build_os | sed 's,[-0-9].*,,'` +changequote([, ])dnl + CPPFLAGS="$ac_save_CPPFLAGS -I$ac_dir -I$ac_dir/$ac_machdep" + AC_TRY_CPP([#include ], + ac_save_CPPFLAGS="$CPPFLAGS", + AC_MSG_WARN([unable to include ])) + CPPFLAGS="$ac_save_CPPFLAGS"]) +fi]) diff --git a/db/dist/aclocal_java/ac_try_compile_java.ac b/db/dist/aclocal_java/ac_try_compile_java.ac deleted file mode 100644 index d22aeab42..000000000 --- a/db/dist/aclocal_java/ac_try_compile_java.ac +++ /dev/null @@ -1,39 +0,0 @@ -dnl @synopsis AC_TRY_COMPILE_JAVA -dnl -dnl AC_TRY_COMPILE_JAVA attempt to compile user given source. -dnl -dnl *Warning*: its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Devin Weaver -dnl @version $Id: ac_try_compile_java.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_TRY_COMPILE_JAVA],[ -AC_REQUIRE([AC_PROG_JAVAC])dnl -cat << \EOF > Test.java -/* [#]line __oline__ "configure" */ -ifelse([$1], , , [import $1;]) -public class Test { -[$2] -} -EOF -if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class -then -dnl Don't remove the temporary files here, so they can be examined. - ifelse([$3], , :, [$3]) -else - echo "configure: failed program was:" >&AC_FD_CC - cat Test.java >&AC_FD_CC -ifelse([$4], , , [ rm -fr Test* - $4 -])dnl -fi -rm -fr Test*]) diff --git a/db/dist/aclocal_java/ac_try_compile_java.m4 b/db/dist/aclocal_java/ac_try_compile_java.m4 new file mode 100644 index 000000000..4f233bbcb --- /dev/null +++ b/db/dist/aclocal_java/ac_try_compile_java.m4 @@ -0,0 +1,39 @@ +dnl @synopsis AC_TRY_COMPILE_JAVA +dnl +dnl AC_TRY_COMPILE_JAVA attempt to compile user given source. +dnl +dnl *Warning*: its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Devin Weaver +dnl @version $Id: ac_try_compile_java.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_TRY_COMPILE_JAVA],[ +AC_REQUIRE([AC_PROG_JAVAC])dnl +cat << \EOF > Test.java +/* [#]line __oline__ "configure" */ +ifelse([$1], , , [import $1;]) +public class Test { +[$2] +} +EOF +if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class +then +dnl Don't remove the temporary files here, so they can be examined. + ifelse([$3], , :, [$3]) +else + echo "configure: failed program was:" >&AC_FD_CC + cat Test.java >&AC_FD_CC +ifelse([$4], , , [ rm -fr Test* + $4 +])dnl +fi +rm -fr Test*]) diff --git a/db/dist/aclocal_java/ac_try_run_javac.ac b/db/dist/aclocal_java/ac_try_run_javac.ac deleted file mode 100644 index 012493588..000000000 --- a/db/dist/aclocal_java/ac_try_run_javac.ac +++ /dev/null @@ -1,40 +0,0 @@ -dnl @synopsis AC_TRY_RUN_JAVA -dnl -dnl AC_TRY_RUN_JAVA attempt to compile and run user given source. -dnl -dnl *Warning*: its success or failure can depend on a proper setting of the -dnl CLASSPATH env. variable. -dnl -dnl Note: This is part of the set of autoconf M4 macros for Java programs. -dnl It is VERY IMPORTANT that you download the whole set, some -dnl macros depend on other. Unfortunately, the autoconf archive does not -dnl support the concept of set of macros, so I had to break it for -dnl submission. -dnl The general documentation, as well as the sample configure.in, is -dnl included in the AC_PROG_JAVA macro. -dnl -dnl @author Devin Weaver -dnl @version $Id: ac_try_run_javac.ac,v 12.0 2004/11/17 03:43:38 bostic Exp $ -dnl -AC_DEFUN([AC_TRY_RUN_JAVA],[ -AC_REQUIRE([AC_PROG_JAVAC])dnl -AC_REQUIRE([AC_PROG_JAVA])dnl -cat << \EOF > Test.java -/* [#]line __oline__ "configure" */ -ifelse([$1], , , [include $1;]) -public class Test { -[$2] -} -EOF -if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class && ($JAVA $JAVAFLAGS Test; exit) 2>/dev/null -then -dnl Don't remove the temporary files here, so they can be examined. - ifelse([$3], , :, [$3]) -else - echo "configure: failed program was:" >&AC_FD_CC - cat Test.java >&AC_FD_CC -ifelse([$4], , , [ rm -fr Test* - $4 -])dnl -fi -rm -fr Test*]) diff --git a/db/dist/aclocal_java/ac_try_run_javac.m4 b/db/dist/aclocal_java/ac_try_run_javac.m4 new file mode 100644 index 000000000..69f91e5bc --- /dev/null +++ b/db/dist/aclocal_java/ac_try_run_javac.m4 @@ -0,0 +1,40 @@ +dnl @synopsis AC_TRY_RUN_JAVA +dnl +dnl AC_TRY_RUN_JAVA attempt to compile and run user given source. +dnl +dnl *Warning*: its success or failure can depend on a proper setting of the +dnl CLASSPATH env. variable. +dnl +dnl Note: This is part of the set of autoconf M4 macros for Java programs. +dnl It is VERY IMPORTANT that you download the whole set, some +dnl macros depend on other. Unfortunately, the autoconf archive does not +dnl support the concept of set of macros, so I had to break it for +dnl submission. +dnl The general documentation, as well as the sample configure.in, is +dnl included in the AC_PROG_JAVA macro. +dnl +dnl @author Devin Weaver +dnl @version $Id: ac_try_run_javac.m4,v 12.0 2004/11/17 03:43:38 bostic Exp $ +dnl +AC_DEFUN([AC_TRY_RUN_JAVA],[ +AC_REQUIRE([AC_PROG_JAVAC])dnl +AC_REQUIRE([AC_PROG_JAVA])dnl +cat << \EOF > Test.java +/* [#]line __oline__ "configure" */ +ifelse([$1], , , [include $1;]) +public class Test { +[$2] +} +EOF +if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class && ($JAVA $JAVAFLAGS Test; exit) 2>/dev/null +then +dnl Don't remove the temporary files here, so they can be examined. + ifelse([$3], , :, [$3]) +else + echo "configure: failed program was:" >&AC_FD_CC + cat Test.java >&AC_FD_CC +ifelse([$4], , , [ rm -fr Test* + $4 +])dnl +fi +rm -fr Test*]) diff --git a/db/dist/brew/bdb_brew.dsp b/db/dist/brew/bdb_brew.dsp new file mode 100644 index 000000000..29948f367 --- /dev/null +++ b/db/dist/brew/bdb_brew.dsp @@ -0,0 +1,115 @@ +# Microsoft Developer Studio Project File - Name="bdb_brew" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=bdb_brew - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "bdb_brew.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "bdb_brew.mak" CFG="bdb_brew - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "bdb_brew - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "bdb_brew - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "bdb_brew - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release/bdb_brew" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release/bdb_brew" +# PROP Target_Dir "" +LINK32=link.exe +# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I ".." /I "$(BREWDIR)\inc" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "bdb_brew - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug/bdb_brew" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug/bdb_brew" +# PROP Target_Dir "" +LINK32=link.exe +# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /I "." /I ".." /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /ZI /Od /X /I "." /I ".." /I "$(BREWDIR)\inc" /D "DIAGNOSTIC" /D "UNICODE" /D "_UNICODE" /D "_DEBUG" /D "AEE_SIMULATOR" /D "__NO_SYSTEM_INCLUDES" /FR /FD /c +# ADD BASE RSC /l 0xc09 +# ADD RSC /l 0xc09 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "bdb_brew - Win32 Release" +# Name "bdb_brew - Win32 Debug" +# Begin Group "header_files" + +# PROP Default_Filter "" +# Begin Source File + +SOURCE=.\brew_db.h +# End Source File +# Begin Source File + +SOURCE=.\clib_port.h +# End Source File +# Begin Source File + +SOURCE=.\db.h +# End Source File +# Begin Source File + +SOURCE=.\db_config.h +# End Source File +# Begin Source File + +SOURCE=.\db_int.h +# End Source File +# Begin Source File + +SOURCE=.\errno.h +# End Source File +# End Group +# Begin Group "source_files" + +# PROP Default_Filter "" diff --git a/db/dist/brew/bdbread.mak b/db/dist/brew/bdbread.mak new file mode 100644 index 000000000..6b566ee99 --- /dev/null +++ b/db/dist/brew/bdbread.mak @@ -0,0 +1,418 @@ +#============================================================================ +# Name: +# $(TARGET).MAK +# +# Description: +# Makefile to build the $(TARGET) downloadable module. +# +# The following nmake targets are available in this makefile: +# +# all - make .elf and .mod image files (default) +# clean - delete object directory and image files +# filename.o - make object file +# +# The above targets can be made with the following command: +# +# nmake /f $(TARGET).mak [target] +# +# Assumptions: +# 1. The environment variable ADSHOME is set to the root directory of the +# arm tools. +# 2. The version of ADS is 1.2 or above. +# +# Notes: +# None. +# +# +# Copyright © 2000-2003 QUALCOMM Incorporated. +# All Rights Reserved. +# QUALCOMM Proprietary/GTDR +# +#---------------------------------------------------------------------------- +#============================================================================ +BREW_HOME =$(BREWDIR) +ARM_HOME =$(ARMHOME) +TARGET =D:\DB7588~1.BRE\BUILD_~1\bdb_brew +LIST OF OBJECT FILES +APP_INCLUDES = -I ..\build_brew -I .. + +#------------------------------------------------------------------------------- +# Target file name and type definitions +#------------------------------------------------------------------------------- + +EXETYPE = elf # Target image file format +MODULE = mod # Downloadable module extension + +#------------------------------------------------------------------------------- +# Target compile time symbol definitions +# +# Tells the SDK source stuffs that we're building a dynamic app. +#------------------------------------------------------------------------------- + +DYNAPP = -DDYNAMIC_APP + + +#------------------------------------------------------------------------------- +# Software tool and environment definitions +#------------------------------------------------------------------------------- + +AEESRCPATH = $(BREW_HOME)\src +AEEINCPATH = $(BREW_HOME)\inc + +ARMBIN = $(ARM_HOME)\bin # ARM ADS application directory +ARMINC = $(ARM_HOME)\include # ARM ADS include file directory +ARMLIB = $(ARM_HOME)\lib # ARM ADS library directory + +ARMCC = $(ARMBIN)\armcc # ARM ADS ARM 32-bit inst. set ANSI C compiler +LD = $(ARMBIN)\armlink # ARM ADS linker +HEXTOOL = $(ARMBIN)\fromelf # ARM ADS utility to create hex file from image + +OBJ_CMD = -o # Command line option to specify output filename + +#------------------------------------------------------------------------------- +# Processor architecture options +#------------------------------------------------------------------------------- + +CPU = -cpu ARM7TDMI # ARM7TDMI target processor + +#------------------------------------------------------------------------------- +# ARM Procedure Call Standard (APCS) options +#------------------------------------------------------------------------------- + +ROPI = ropi # Read-Only(code) Position independence +INTERWRK = interwork # Allow ARM-Thumb interworking + +APCS = -apcs /$(ROPI)/$(INTERWRK)/norwpi + +#------------------------------------------------------------------------------- +# Additional compile time error checking options +#------------------------------------------------------------------------------- + +CHK = -fa # Check for data flow anomolies + +#------------------------------------------------------------------------------- +# Compiler output options +#------------------------------------------------------------------------------- + +OUT = -c # Object file output only + +#------------------------------------------------------------------------------- +# Compiler/assembler debug options +#------------------------------------------------------------------------------- + +DBG = -g # Enable debug + +#------------------------------------------------------------------------------- +# Compiler optimization options +#------------------------------------------------------------------------------- + +OPT = -Ospace -O2 # Full compiler optimization for space + +#------------------------------------------------------------------------------- +# Compiler code generation options +#------------------------------------------------------------------------------- + +END = -littleend # Compile for little endian memory architecture +ZA = -zo # LDR may only access 32-bit aligned addresses + +CODE = $(END) $(ZA) + + +#------------------------------------------------------------------------------- +# Include file search path options +#------------------------------------------------------------------------------- + +INC = -I. -I$(AEEINCPATH) $(APP_INCLUDES) + + +#------------------------------------------------------------------------------- +# Compiler pragma emulation options +#------------------------------------------------------------------------------- + + +#------------------------------------------------------------------------------- +# Linker options +#------------------------------------------------------------------------------- + +LINK_CMD = -o #Command line option to specify output file + #on linking + +ROPILINK = -ropi #Link image as Read-Only Position Independent + +LINK_ORDER = -first AEEMod_Load + +#------------------------------------------------------------------------------- +# HEXTOOL options +#------------------------------------------------------------------------------- + +BINFORMAT = -bin + + +#------------------------------------------------------------------------------- +# Compiler flag definitions +#------------------------------------------------------------------------------- +NO_WARNING= -W + +CFLAGS0 = $(OUT) $(DYNAPP) $(CPU) $(APCS) $(CODE) $(CHK) $(DBG) +CFLAGS = $(NO_WARNING) $(CFLAGS0) $(OPT) + +#------------------------------------------------------------------------------- +# Linker flag definitions +#------------------------------------------------------------------------------- + +# the -entry flag is not really needed, but it keeps the linker from reporting +# warning L6305W (no entry point). The address +LFLAGS = $(ROPILINK) -rwpi -entry 0x8000# + +#---------------------------------------------------------------------------- +# Default target +#---------------------------------------------------------------------------- + +all : $(TARGET).$(MODULE) + +#---------------------------------------------------------------------------- +# Clean target +#---------------------------------------------------------------------------- + +# The object subdirectory, target image file, and target hex file are deleted. + +clean : + @echo --------------------------------------------------------------- + @echo CLEAN + -del /f $(OBJS) + -del /f $(TARGET).$(EXETYPE) + -del /f $(TARGET).$(MODULE) + @echo --------------------------------------------------------------- + +#============================================================================ +# DEFAULT SUFFIX RULES +#============================================================================ + +# The following are the default suffix rules used to compile all objects that +# are not specifically included in one of the module specific rules defined +# in the next section. + +# The following macros are used to specify the output object file, MSG_FILE +# symbol definition and input source file on the compile line in the rules +# defined below. + +SRC_FILE = $(@F:.o=.c) # Input source file specification +OBJ_FILE = $(OBJ_CMD) $(@F) # Output object file specification + +.SUFFIXES : +.SUFFIXES : .o .dep .c + +#-------------------------------------------------------------------------- +# C code inference rules +#---------------------------------------------------------------------------- + +.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(SRC_FILE) + @echo --------------------------------------------------------------- + +.c.mix: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) -S -fs $(CFLAGS) $(INC) $(OBJ_FILE) $< + @echo --------------------------------------------------------------- + + +{$(AEESRCPATH)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(AEESRCPATH)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +#=============================================================================== +# MODULE SPECIFIC RULES +#=============================================================================== + +APP_OBJS = $(OBJS) + + +#---------------------------------------------------------------------------- +# Lib file targets +#---------------------------------------------------------------------------- + +$(TARGET).$(MODULE) : $(TARGET).$(EXETYPE) + @echo --------------------------------------------------------------- + @echo TARGET $@ + $(HEXTOOL) $(TARGET).$(EXETYPE) $(BINFORMAT) $(TARGET).$(MODULE) + +$(TARGET).$(EXETYPE) : $(APP_OBJS) + @echo --------------------------------------------------------------- + @echo TARGET $@ + $(LD) $(LINK_CMD) $(TARGET).$(EXETYPE) $(LFLAGS) $(APP_OBJS) $(LINK_ORDER) + +#---------------------------------------------------------------------------- +# Applet Specific Rules +#---------------------------------------------------------------------------- + + +RULE1 = ..\clib +{$(RULE1)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE1)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE2 = ..\btree +{$(RULE2)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE2)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE3 = ..\db +{$(RULE3)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE3)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE4 = ..\common +{$(RULE4)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE4)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE5 = ..\os_brew +{$(RULE5)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE5)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE6 = ..\env +{$(RULE6)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE6)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE7 = ..\dbreg +{$(RULE7)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE7)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE8 = ..\fileops +{$(RULE8)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE8)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE9 = ..\hash +{$(RULE9)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE9)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE10 = ..\hmac +{$(RULE10)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE10)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE11 = ..\lock +{$(RULE11)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE11)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE12 = ..\log +{$(RULE12)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE12)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE13 = ..\mp +{$(RULE13)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE13)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE14 = ..\mutex +{$(RULE14)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE14)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE15 = ..\os +{$(RULE15)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE15)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE16 = ..\qam +{$(RULE16)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE16)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE17 = ..\rep +{$(RULE17)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE17)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE18 = ..\txn +{$(RULE18)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE18)\$(SRC_FILE) + @echo --------------------------------------------------------------- + + +RULE19 = ..\xa +{$(RULE19)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE19)\$(SRC_FILE) + @echo --------------------------------------------------------------- +RULE20 = ..\bdbread +{$(RULE20)}.c.o: + @echo --------------------------------------------------------------- + @echo OBJECT $(@F) + $(ARMCC) $(CFLAGS) $(INC) $(OBJ_FILE) $(RULE20)\$(SRC_FILE) + @echo --------------------------------------------------------------- + +# -------------------------------------------- +# DEPENDENCY LIST, DO NOT EDIT BELOW THIS LINE +# -------------------------------------------- + +bdbread.o : ..\bdbread\bdbread.c +AEEModGen.o : ..\bdbread\AEEModGen.c +AEEAppGen.o : ..\bdbread\AEEAppGen.c diff --git a/db/dist/brew/brew_config.in b/db/dist/brew/brew_config.in new file mode 100644 index 000000000..2b770e76c --- /dev/null +++ b/db/dist/brew/brew_config.in @@ -0,0 +1,548 @@ +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +/* #undef DB_WIN32 */ + +/* Define to 1 if you want a debugging version. */ +#if defined(_DEBUG) +#if !defined(DEBUG) +#define DEBUG 1 +#endif +#endif + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +/* #undef HAVE_64BIT_TYPES */ + +/* Define to 1 if you have the `abort' function. */ +/* #undef HAVE_ABORT */ + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +/* #undef HAVE_ATOL */ + +/* Define to 1 if building BREW. */ +#define HAVE_BREW 1 + +/* Define to 1 if building on BREW (SDK2). */ +#define HAVE_BREW_SDK2 1 + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +/* #undef HAVE_CRYPTO */ + +/* Define to 1 if you have the `ctime_r' function. */ +/* #undef HAVE_CTIME_R */ + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_DIRENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +/* #undef HAVE_FCLOSE */ + +/* Define to 1 if you have the `fcntl' function. */ +/* #undef HAVE_FCNTL */ + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +/* #undef HAVE_FGETC */ + +/* Define to 1 if you have the `fgets' function. */ +/* #undef HAVE_FGETS */ + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +/* #undef HAVE_FOPEN */ + +/* Define to 1 if you have the `ftruncate' function. */ +#define HAVE_FTRUNCATE 1 + +/* Define to 1 if you have the `fwrite' function. */ +/* #undef HAVE_FWRITE */ + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +/* #undef HAVE_GETCWD */ + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +/* #undef HAVE_GETOPT */ + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +/* #undef HAVE_HASH */ + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISALPHA */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISDIGIT */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISPRINT */ + +/* Define to 1 if you have the `isspace' function. */ +/* #undef HAVE_ISSPACE */ + +/* Define to 1 if you have the `localtime' function. */ +/* #undef HAVE_LOCALTIME */ + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MEMORY_H */ + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +/* #undef HAVE_MUNMAP */ + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +/* #undef HAVE_MUTEX_PTHREADS */ + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +/* #undef HAVE_MUTEX_SUPPORT */ + +/* Define to 1 if mutexes hold system resources. */ +/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ + +/* Define to 1 to configure mutexes intra-process only. */ +/* #undef HAVE_MUTEX_THREAD_ONLY */ + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32 */ + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +/* #undef HAVE_PRINTF */ + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +/* #undef HAVE_QSORT */ + +/* Define to 1 if building Queue access method. */ +/* #undef HAVE_QUEUE */ + +/* Define to 1 if you have the `raise' function. */ +/* #undef HAVE_RAISE */ + +/* Define to 1 if you have the `rand' function. */ +/* #undef HAVE_RAND */ + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + +/* Define to 1 if you have the `sched_yield' function. */ +/* #undef HAVE_SCHED_YIELD */ + +/* Define to 1 if you have the `select' function. */ +/* #undef HAVE_SELECT */ + +/* Define to 1 if you have the `shmget' function. */ +/* #undef HAVE_SHMGET */ + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +/* #undef HAVE_SIMPLE_THREAD_TYPE */ + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +/* #undef HAVE_STAT */ + +/* Define to 1 if building statistics support. */ +/* #undef HAVE_STATISTICS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDLIB_H */ + +/* Define to 1 if you have the `strcasecmp' function. */ +/* #undef HAVE_STRCASECMP */ + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +/* #undef HAVE_STRERROR */ + +/* Define to 1 if you have the `strftime' function. */ +/* #undef HAVE_STRFTIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STRINGS_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STRING_H */ + +/* Define to 1 if you have the `strncat' function. */ +/* #undef HAVE_STRNCAT */ + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +/* #undef HAVE_STRSEP */ + +/* Define to 1 if you have the `strtol' function. */ +/* #undef HAVE_STRTOL */ + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +/* #undef HAVE_SYSCONF */ + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SELECT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STAT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TIME_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TYPES_H 1*/ + +/* Define to 1 if you have the `time' function. */ +/* #undef HAVE_TIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +/* #undef HAVE_VERIFY */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +/* #undef HAVE__FSTATI64 1*/ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "support@sleepycat.com" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB __EDIT_DB_VERSION__" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-__EDIT_DB_VERSION__" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "__EDIT_DB_VERSION__" + +/* The size of a `char', as computed by sizeof. */ +#define SIZEOF_CHAR 1 + +/* The size of a `char *', as computed by sizeof. */ +#define SIZEOF_CHAR_P 4 + +/* The size of a `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of a `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +#define SIZEOF_SHORT 2 + +/* The size of a `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* The size of a `unsigned char', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_CHAR 1 + +/* The size of a `unsigned int', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_INT 4 + +/* The size of a `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_SHORT 2 + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/dist/brew/brew_db.in b/db/dist/brew/brew_db.in new file mode 100644 index 000000000..d9e156867 --- /dev/null +++ b/db/dist/brew/brew_db.in @@ -0,0 +1,150 @@ +/*- + * $Id: brew_db.in,v 1.5 2006/11/15 13:36:48 bostic Exp $ + * + * The following provides the information necessary to build Berkeley DB + * on BREW. + */ + +#include +#include +#include +#include + +#include "errno.h" +#include "db.h" +#include "clib_port.h" + +/* + * BREW doesn't have stdio. + */ +#define EOF (-1) /* Declare stdio's EOF. */ +#define stderr ((IFile *)1) /* Flag to call DBGPRINTF. */ +#define stdout ((IFile *)1) + +/* + * POSIX time structure/function compatibility. + * + * !!! + * This is likely wrong, we should probably move all Berkeley DB time-specific + * functionality into os/. + */ +struct tm { + int tm_sec; /* seconds after the minute - [0,59] */ + int tm_min; /* minutes after the hour - [0,59] */ + int tm_hour; /* hours since midnight - [0,23] */ + int tm_mday; /* day of the month - [1,31] */ + int tm_mon; /* months since January - [0,11] */ + int tm_year; /* years since 1900 */ + int tm_wday; /* days since Sunday - [0,6] */ + int tm_yday; /* days since January 1 - [0,365] */ + int tm_isdst; /* daylight savings time flag */ + /* + * We don't provide tm_zone or tm_gmtoff because BREW doesn't + * provide them. + */ +}; + +/* +* The ctime() function converts the time pointed to by clock, representing +* time in seconds since the Epoch to local time in the form of a string. +* +* Berkeley DB uses POSIX time values internally. +* +* The POSIX time function returns seconds since the Epoch, which was +* 1970/01/01 00:00:00 UTC. +* +* BREW's GETUTCSECONDS() returns the number of seconds since +* 1980/01/06 00:00:00 UTC. +* +* To convert from BREW to POSIX, add the seconds between 1970 and 1980 plus +* 6 more days. +*/ +#define BREW_EPOCH_OFFSET (315964800L) + +/* + * Map ANSI C library functions to BREW specific APIs. + */ +#define atoi(a) ATOI(a) +#define free(a) FREE(a) +#define malloc(a) MALLOC(a) +#define memcmp(a, b, c) MEMCMP(a, b, c) +#define memmove(a, b, c) MEMMOVE(a, b, c) +#define memset(a, b, c) MEMSET(a, b, c) +#define realloc(a, b) REALLOC(a, b) +#define snprintf SNPRINTF +#define sprintf SPRINTF +#define strcat(a, b) STRCAT(a, b) +#define strchr(a, b) STRCHR(a, b) +#define strcmp(a, b) STRCMP(a, b) +#define strcpy(a, b) STRCPY(a, b) +#define strdup(a) STRDUP(a) +#define strlen(a) STRLEN(a) +#define strncmp(a, b, c) STRNCMP(a, b, c) +#define strncpy(a, b, c) STRNCPY(a, b, c) +#define strrchr(a, b) STRRCHR(a, b) +#define strtoul(a, b, c) STRTOUL(a, b, c) +#define vsnprintf(a, b, c, d) VSNPRINTF(a, b, c, d) + +/* + * !!! + * Don't #define memcpy to MEMCPY, even though it exists, because that results + * in a C pre-processor loop and compile failure. + * + * Don't #define memcpy to MEMMOVE directly, that results in failure as well. + */ +#define memcpy memmove + +/* + * BREW does not have concept of 'sync'. + * + * It depends on the implementation of the BREW on various platforms, but + * Mobilus confirms the version of BREW that ships to North America in 3G + * models has sync features guaranteeing safe physical writes whenever a + * write is performed using BREW API. Therefore, the issue is not on the + * applications running top of BREW, but the implementation of BREW itself + * that has to be checked in order to provide durability. + */ +#define __os_fsync(a, b) (0) +#define fflush(a) (0) + +/* + * The ANSI C library functions for which we wrote local versions. + */ +int fclose(FILE *); +int fgetc(FILE *); +char *fgets(char *, int, FILE *); +FILE *fopen(const char *, const char *); +size_t fwrite(const void *, size_t, size_t, FILE *); +char *getcwd(char *, size_t); +struct tm *localtime(const time_t *); +time_t time(time_t *); + +/* + * FILE_MANAGER_CREATE -- + * Instantiate file manager instance. + */ +#define FILE_MANAGER_CREATE(dbenv, mgr, ret) do { \ + AEEApplet *__app = (AEEApplet *)GETAPPINSTANCE(); \ + int __ret; \ + if ((__ret = ISHELL_CreateInstance(__app->m_pIShell, \ + AEECLSID_FILEMGR, (void **)&(mgr))) == SUCCESS) \ + ret = 0; \ + else { \ + __db_syserr(dbenv, __ret, "ISHELL_CreateInstance"); \ + ret = __os_posix_err(__ret); \ + } \ +} while (0) + +/* + * FILE_MANAGER_ERR -- + * Handle file manager method error. + */ +#define FILE_MANAGER_ERR(dbenv, mgr, name, op, ret) do { \ + int __ret; \ + __ret = IFILEMGR_GetLastError(mgr); \ + if ((name) == NULL) \ + __db_syserr(dbenv, __ret, "%s", op); \ + else \ + __db_syserr(dbenv, __ret, "%s: %s", name, op); \ + (ret) = __os_posix_err(__ret); \ +} while (0) diff --git a/db/dist/brew/brew_make.in b/db/dist/brew/brew_make.in new file mode 100644 index 000000000..462c66640 --- /dev/null +++ b/db/dist/brew/brew_make.in @@ -0,0 +1,25 @@ +################################################### +# EVERYTHING IN THIS FILE HEADER COPIED FROM dist/brew_makefile.in +################################################## +CC= cc +CFLAGS= -c -g -W -Wall -Wpointer-arith -Wmissing-prototypes \ + -I. -I.. -DDIAGNOSTIC + +.c.o: + $(CC) $(CFLAGS) $< -o $@ + +a: t + +t: t.c libdb.a + $(CC) t.c -o t libdb.a + +t.c: + echo '#include ' > $@ + echo '#include ' >> $@ + echo '#define AEEApplet char' >> $@ + echo '#include "db.h"' >> $@ + echo 'int main() {' >> $@ + echo ' DB_ENV *dbenv; db_env_create(&dbenv, 0); return (0); }' >> $@ + +realclean distclean clean: + rm -f mklog t t.c tmp.c libdb.a *.o diff --git a/db/dist/brew/brew_posix.h b/db/dist/brew/brew_posix.h new file mode 100644 index 000000000..225ae4251 --- /dev/null +++ b/db/dist/brew/brew_posix.h @@ -0,0 +1,103 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 2005,2007 Oracle. All rights reserved. + * + * $Id: brew_posix.h,v 1.4 2007/05/17 15:15:08 bostic Exp $ + */ + +typedef void *AEEAppInfo; +typedef void *AEECLSID; +typedef void *IFileMgr; +typedef void *IShell; + +typedef int FileSeekType; +typedef int OpenFileMode; +typedef int boolean; + +typedef struct { + IShell *m_pIShell; +} AEEApplet; + +typedef struct { + unsigned int attrib; + unsigned int dwSize; + char *szName; +} FileInfo; + +typedef struct { + int wSecond; + int wMinute; + int wHour; + int wDay; + int wWeekDay; + int wMonth; + int wYear; +} JulianType; + +#define AECHAR char +#define AEECLSID_FILEMGR (1) +#define BREW_EPOCH_OFFSET (1) +#define DBGPRINTF printf +#define FILE_MANAGER_CREATE(a, b, c) (b = (IFileMgr *)a, c = 0) +#define FILE_MANAGER_ERR(a, b, c, d, e) (b = (IFileMgr *)a, e = 0) +#define FLOAT_TO_WSTR(a, b, c) (a = c) +#define GETAPPINSTANCE() (NULL) +#define GETJULIANDATE(a, b) +#define GETTIMESECONDS() (0) +#define GETUTCSECONDS() (0) +#define IFILEMGR_EnumInit(a, b, c) (b = b, 1) +#define IFILEMGR_EnumNext(a, b) (1) +#define IFILEMGR_GetInfo(a, b, c) (1) +#define IFILEMGR_GetLastError(a) (1) +#define IFILEMGR_MkDir(a, b) (b = b, 1) +#define IFILEMGR_OpenFile(a, b, c) (NULL) +#define IFILEMGR_Release(a) (a = a) +#define IFILEMGR_Remove(a, b) (b = b, 1) +#define IFILEMGR_Rename(a, b, c) (a = a, b = b, c = c, 0) +#define IFILEMGR_ResolvePath(a, b, c, d) (1) +#define IFILEMGR_Test(a, b) (b = b, 1) +#define IFILE_GetInfo(a, b) (a = a, 1) +#define IFILE_Read(a, b, c) (a = a, 1) +#define IFILE_Release(a) (a = a) +#define IFILE_Seek(a, b, c) (1) +#define IFILE_Truncate(a, b) (a = a, 1) +#define IFILE_Write(a, b, c) (a = a, 1) +#define ISHELL_ActiveApplet(a) (NULL) +#define ISHELL_CloseApplet(a, b) +#define ISHELL_CreateInstance(a, b, c) (1) +#define ISHELL_QueryClass(a, b, c) (*c = NULL, 1) +#define JULIANTOSECONDS(a) (1) +#define LOCALTIMEOFFSET(a) (1) +#define MEMCPY(a, b, c) (NULL) +#define MSLEEP(a) +#define WSTR_TO_STR(a, b, c) strncpy(b, a, c) +#define __os_fsync(a, b) (0) + +#define SUCCESS (0) +#define EFAILED (1) + +#define _FA_DIR (1) +#define _OFM_APPEND (1) +#define _OFM_CREATE (1) +#define _OFM_READ (1) +#define _OFM_READWRITE (1) +#define _SEEK_CURRENT (1) +#define _SEEK_END (1) +#define _SEEK_START (1) + +#define EBADFILENAME (1) +#define EBADSEEKPOS (2) +#define EDIRNOEXISTS (3) +#define EDIRNOTEMPTY (4) +#define EFILEEOF (5) +#define EFILEEXISTS (6) +#define EFILENOEXISTS (7) +#define EFILEOPEN (8) +#define EFSFULL (9) +#define EINVALIDOPERATION (10) +#define ENOMEDIA (11) +#define ENOMEMORY (12) +#define EOUTOFNODES (13) + +#define static diff --git a/db/dist/build/chk.code b/db/dist/build/chk.code deleted file mode 100644 index e88fcff15..000000000 --- a/db/dist/build/chk.code +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -# -# Id: chk.code,v 1.1 2001/05/08 15:07:05 bostic Exp -# -# Check to make sure that the code samples in the documents build. - -# Run from the top-level directory. -[ -f db_config.h ] || { - echo 'chk.code must be run from a build directory.' - exit 1 -} - -t1=/tmp/__1 - -find ../docs_src -name '*.cs' > ${t1} - -for i in `cat ${t1}`; do - echo "$i ..." - sed -e 's/m4_include(\(.*\))/#include <\1>/g' \ - -e 's/m4_[a-z]*[(\[)]*//g' \ - -e 's/(\[//g' \ - -e '/argv/!s/])//g' \ - -e 's/dnl//g' \ - -e 's/__GT__/>/g' \ - -e 's/__LB__/[/g' \ - -e 's/__LT__/ t.c - if cc -Wall -I. t.c libdb.a -o t; then - : - else - exit 1 - fi -done - -rm -f ${t1} diff --git a/db/dist/build/chk.def b/db/dist/build/chk.def deleted file mode 100755 index abd12b839..000000000 --- a/db/dist/build/chk.def +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh - -# -# $Id: chk.def,v 1.4 2000/12/12 18:20:59 bostic Exp $ -# -# Check to make sure we haven't forgotten to add any interfaces -# to the Win32 libdb.def file. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -f=build_win32/libdb.def -t1=/tmp/__1 -t2=/tmp/__2 - -sed '/; /d' $f | - egrep @ | - awk '{print $1}' | - sed -e '/db_xa_switch/d' \ - -e '/^__/d' -e '/^;/d' | - sort > ${t1} - -egrep __P include/db.src | - sed '/^[a-z]/!d' | - awk '{print $2}' | - sed 's/^\*//' | - sed '/^__/d' | sort > ${t2} - -if cmp -s ${t1} ${t2} ; then - : -else - echo "<<< libdb.def" - echo ">>> DB include files" - diff ${t1} ${t2} -fi - -# Check to make sure we don't have any extras in the libdb.def file. -sed '/; /d' $f | - egrep @ | - awk '{print $1}' | - sed -e '/__db_global_values/d' > ${t1} - -for i in `cat ${t1}`; do - if egrep $i */*.c > /dev/null; then - : - else - echo "$f: $i not found in DB sources" - fi -done - -rm -f ${t1} ${t2} diff --git a/db/dist/build/chk.define b/db/dist/build/chk.define deleted file mode 100755 index 9e2aa0db4..000000000 --- a/db/dist/build/chk.define +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh - -# -# $Id: chk.define,v 1.8 2000/12/12 18:20:59 bostic Exp $ -# -# Check to make sure that all #defines are actually used. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -t1=/tmp/__1 - -egrep '^#define' include/*.h | - sed -e '/db_185.h/d' -e '/xa.h/d' | - awk '{print $2}' | - sed -e '/^B_DELETE/d' \ - -e '/^B_MAX/d' \ - -e '/^CIRCLEQ/d' \ - -e '/^DB_RO_ACCESS/d' \ - -e '/^DEFINE_DB_CLASS/d' \ - -e '/^LIST/d' \ - -e '/^LOG_OP/d' \ - -e '/^MINFILL/d' \ - -e '/^MUTEX_FIELDS/d' \ - -e '/^NCACHED2X/d' \ - -e '/^NCACHED30/d' \ - -e '/^PAIR_MASK/d' \ - -e '/^POWER_OF_TWO/d' \ - -e '/^P_16_COPY/d' \ - -e '/^P_32_COPY/d' \ - -e '/^P_32_SWAP/d' \ - -e '/^SH_CIRCLEQ/d' \ - -e '/^SH_LIST/d' \ - -e '/^SH_TAILQ/d' \ - -e '/^TAILQ/d' \ - -e '/UNUSED/d' \ - -e '/^WRAPPED_CLASS/d' \ - -e '/^XA_$/d' \ - -e '/^_DB_SERVER_H_RPCGEN/d' \ - -e '/_AUTO_H$/d' \ - -e '/_H_$/d' \ - -e '/ext_h_/d' \ - -e '/^i_/d' \ - -e 's/(.*//' | sort > ${t1} - -for i in `cat ${t1}`; do - if egrep -w $i */*.c */*.cpp > /dev/null; then - :; - else - f=`egrep -l $i include/*.h | - sed 's;include/;;' | tr -s "[:space:]" " "` - echo "$i: $f" - fi -done | sort +1 - -rm -f ${t1} diff --git a/db/dist/build/chk.offt b/db/dist/build/chk.offt deleted file mode 100755 index ea7f0b914..000000000 --- a/db/dist/build/chk.offt +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -# -# $Id: chk.offt,v 1.3 2000/12/12 18:20:59 bostic Exp $ -# -# Make sure that no off_t's have snuck into the release. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -egrep -w off_t */*.[ch] | -sed -e "/#undef off_t/d" \ - -e "/mp_fopen.c:.*can't use off_t's here/d" \ - -e "/mp_fopen.c:.*size or type off_t's or/d" \ - -e "/mp_fopen.c:.*where an off_t is 32-bits/d" \ - -e "/os_map.c:.*(off_t)0))/d" \ - -e "/os_rw.c:.*(off_t)db_iop->pgno/d" \ - -e "/os_seek.c:.*off_t offset;/d" \ - -e "/os_seek.c:.*offset = /d" \ - -e "/test_vxworks\/vx_mutex.c:/d" diff --git a/db/dist/build/chk.proto b/db/dist/build/chk.proto deleted file mode 100755 index 8ebfae809..000000000 --- a/db/dist/build/chk.proto +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh - -# -# Id: chk.proto,v 1.3 2001/05/05 14:48:11 bostic Exp -# -# Check to make sure that prototypes are actually needed. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -t1=/tmp/__1 - -egrep '__P' include_auto/*.h | - sed -e 's/[ ][ ]*__P.*//' \ - -e 's/^.*[ *]//' \ - -e '/__db_cprint/d' \ - -e '/__db_lprint/d' \ - -e '/__db_noop_log/d' \ - -e '/__db_prnpage/d' \ - -e '/__db_txnlist_print/d' \ - -e '/__ham_func2/d' \ - -e '/__ham_func3/d' \ - -e '/_print$/d' \ - -e '/_read$/d' > ${t1} - -for i in `cat ${t1}`; do - c=`egrep -low $i include/*.in include/*.h */*.c */*.cpp | wc -l` - echo "$i: $c" -done | egrep ' 1$' - -rm -f ${t1} diff --git a/db/dist/build/chk.srcfiles b/db/dist/build/chk.srcfiles deleted file mode 100755 index cfd6f955e..000000000 --- a/db/dist/build/chk.srcfiles +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -# -# $Id: chk.srcfiles,v 1.3 2000/12/12 18:20:59 bostic Exp $ -# -# Check to make sure we haven't forgotten to add any files to the list -# of source files Win32 uses to build its dsp files. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -f=dist/srcfiles.in -t1=/tmp/__1 -t2=/tmp/__2 - -sed -e '/^[ #]/d' \ - -e '/^$/d' < $f | - awk '{print $1}' > ${t1} -find . -type f | - sed -e 's/^\.\///' | - egrep '\.c$|\.cpp$|\.def$|\.rc$' | - sed -e '/dist\/build\/chk.def/d' \ - -e '/perl.DB_File\/version.c/d' | - sort > ${t2} - -cmp ${t1} ${t2} > /dev/null || -(echo "<<< srcfiles.in >>> existing files" && \ - diff ${t1} ${t2} | tee /tmp/_f) - -rm -f ${t1} ${t2} diff --git a/db/dist/build/chk.str b/db/dist/build/chk.str deleted file mode 100644 index f4a3129a6..000000000 --- a/db/dist/build/chk.str +++ /dev/null @@ -1,22 +0,0 @@ -# This sed script can be used to check spelling in quoted strings: -# -# sed -f /tmp/f/i */*.c */*.cpp | tee /tmp/_f | spell > /tmp/f/spell.out - - -#!/bin/sh - -# -# Id: chk.str,v 1.1 2001/05/05 14:48:42 bostic Exp -# -# Check spelling in quoted strings. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -sed -e '/^#include/d' \ - -e '/revid/d' \ - -e '/"/!d' \ - -e 's/^[^"]*//' \ - -e 's/%s/ /g' \ - -e 's/[^"]*$//' \ - -e 's/\\[nt]/ /g' */*.c */*.cpp | \ - tee /tmp/chk.str.orig | spell > /tmp/chk.str diff --git a/db/dist/build/chk.tags b/db/dist/build/chk.tags deleted file mode 100755 index fa67927e7..000000000 --- a/db/dist/build/chk.tags +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh - -# -# $Id: chk.tags,v 1.5 2000/12/22 15:35:32 bostic Exp $ -# -# Check to make sure we don't need any more symbolic links to tags files. - -# Run from the top-level directory. -[ -f db_config.h ] && cd .. - -t1=/tmp/__1 -t2=/tmp/__2 - -(ls -F | egrep / | sort | - sed -e 's/\///' \ - -e '/^CVS$/d' \ - -e '/^build_vxworks$/d' \ - -e '/^build_win32$/d' \ - -e '/^docs$/d' \ - -e '/^docs.text$/d' \ - -e '/^docs_src$/d' \ - -e '/^docs_text$/d' \ - -e '/^java$/d' \ - -e '/^perl.BerkeleyDB$/d' \ - -e '/^perl.DB_File$/d' \ - -e '/^test$/d' \ - -e '/^test_purify$/d' \ - -e '/^test_thread$/d' \ - -e '/^test_vxworks$/d') > ${t1} - -(ls */tags | sed 's/\/tags$//' | sort) > ${t2} -if diff ${t1} ${t2} > /dev/null; then - : -else - echo "<<< source tree" - echo ">>> tags files" - diff ${t1} ${t2} -fi - -rm -f ${t1} ${t2} diff --git a/db/dist/build/script b/db/dist/build/script deleted file mode 100644 index 8eef3099f..000000000 --- a/db/dist/build/script +++ /dev/null @@ -1,94 +0,0 @@ -#!/bin/sh - -# $Id: script,v 1.21 2001/01/19 18:13:16 bostic Exp $ -# -# Build the distribution archives. -# -# A set of commands intended to be cut and pasted into a csh window. - -# Development tree, release home. -setenv D /a/db - -# Update the release number. -cd $D/dist -vi RELEASE -setenv VERSION \ -`sh -c '. RELEASE; echo $DB_VERSION_MAJOR.$DB_VERSION_MINOR.$DB_VERSION_PATCH'` -echo "Version: $VERSION" - -# Make sure the source tree is up-to-date, generate new support files, and -# commit anything that's changed. -cd $D && cvs -q update -cd $D/dist && sh s_all -cd $D && cvs -q commit - -# Build the documentation. -cd $D/docs_src && make clean -cd $D/docs_src && make -cd $D/docs_src && make && make check - -# Copy a development tree into a release tree. -setenv R /a/db-$VERSION -rm -rf $R && mkdir -p $R -cd $D && tar cf - \ -`cvs -q status | sed -n -e "/Repository/s;.*/CVSROOT/db/;;" -e "s/,v//p"` | \ -(cd $R && tar xpf -) - -# Fix symbolic links and permissions. -cd $R/dist && sh s_perm -cd $R/dist && sh s_symlink - -# Build the documents. -cd $R/docs_src && make - -# Build a version. -cd $R && rm -rf build_run && mkdir build_run -cd $R/build_run && ~bostic/bin/dbconf && make >& mklog - -# Smoke test. -./ex_access - -# Check the install -make prefix=`pwd`/BDB install - -# Run distribution check scripts -$R/dist/build/chk.def -$R/dist/build/chk.define -$R/dist/build/chk.offt -$R/dist/build/chk.srcfiles -$R/dist/build/chk.tags - -# Clean up the tree. -cd $R && rm -rf build_run docs_src -cd $R && rm -rf test_thread test_purify test_server test_vxworks test/TODO -cd $R && rm -rf test/upgrade/databases && mkdir test/upgrade/databases - -# ACQUIRE ROOT PRIVILEGES -cd $R && find . -type d | xargs chmod 775 -cd $R && find . -type f | xargs chmod 444 -cd $R/dist && sh s_perm -chown -R 100.100 $R -# DISCARD ROOT PRIVILEGES - -# Compare this release with the last one. -set LR=3.1.X -cd $R/.. && gzcat /a/releases/db-${LR}.tar.gz | tar xf - -cd $R/../db-${LR} && find . | sort > /tmp/__OLD -cd $R && find . | sort > /tmp/__NEW -diff -c /tmp/__OLD /tmp/__NEW - -# Create the tar archive release. -setenv T "$R/../db-$VERSION.tar.gz" -cd $R/.. && tar cf - db-$VERSION | gzip --best > $T -chmod 444 $T - -# Create the zip archive release. -# -# Remove symbolic links to tags files. They're large and we don't want to -# store real symbolic links in the archive for portability reasons. -# ACQUIRE ROOT PRIVILEGES -cd $R && rm -f `find . -type l -name 'tags'` -# DISCARD ROOT PRIVILEGES - -setenv T "$R/../db-$VERSION.zip" -cd $R/.. && zip -r - db-$VERSION > $T -chmod 444 $T diff --git a/db/dist/buildrel b/db/dist/buildrel index 1d2263cb5..67ee8cdae 100644 --- a/db/dist/buildrel +++ b/db/dist/buildrel @@ -1,17 +1,16 @@ -# $Id: buildrel,v 12.14 2006/09/20 01:12:33 bostic Exp $ +# $Id: buildrel,v 12.28 2007/07/13 14:36:54 bostic Exp $ # # Build the distribution package. # # A set of commands intended to be cut and pasted into a csh window. setenv D ~bostic/berkeleydb/db.rel -setenv DBCONF "~bostic/bin/dbconf thread" +setenv DBCONF "~db/bin/dbconf thread" setenv TARGETDIR ~bostic/berkeleydb/ # Update the release number. -cd $D/dist -cvs -q update RELEASE -vi RELEASE +cd $D/dist && cvs -q update RELEASE && vi RELEASE +setenv MINOR `sh -c '. RELEASE; echo $DB_VERSION_MINOR'` setenv VERSION `sh -c '. RELEASE; echo $DB_VERSION'` echo "Version: $VERSION" @@ -21,39 +20,39 @@ cd $D && cvs -q update # Build auto-generated files. cd $D/dist && sh s_all +# Update the change log patch number. +cd $D/docs_src/ref/changelog && vi toc.so 4.$MINOR.html + # Commit all of the changes. cd $D && cvs -q commit # Copy a development tree into a release tree. setenv R $TARGETDIR/db-$VERSION -rm -rf $R && mkdir -p $R -cd $D && cvs -q status | \ - grep "Repository revision" | \ - sed -e 's;.*CVSROOT/db/;;' \ - -e 's;.*CVSROOT/;;' \ - -e 's;,v$;;' | pax -rw $R/ - -# Build the documentation, copy it into place. -cd db_docs && cvs -q update -cd db_docs && sh build $D clean && sh build $D |& sed '/.html$/d' -cd je/docs_src && sh build db ../../db -rm -rf $R/docs && cp -r $D/docs $R/docs +rm -rf $R $R.tmp && mkdir $R.tmp +cd $R.tmp && cvs -q co db > /dev/null && mv db $R && cd .. && rm -rf $R.tmp +cd $R && find . -name CVS | xargs rm -rf + +# Build the C/C++/Java API documentation and Reference Guide. +# +# XXX +# This command only builds the C/C++ API documentation and Reference Guide +cd $R/docs_src && sh build clean && sh build |& sed '/.html$/d' ######################################## # PATCH RELEASE: starting point. ######################################## -# Fix symbolic links and permissions. +# Create symbolic links and cscope output, fix permissions. cd $R/dist && sh s_perm +cd $R/dist && sh s_cscope cd $R/dist && sh s_symlink # Remove source directories we don't distribute. -cd $R && rm -rf build_brew os_brew -cd $R && rm -rf docs_src docs/api_java docs/api_c/pindex.src +cd $R && rm -rf build_brew_x build_s60_x cd $R && rm -rf java/src/com/sleepycat/xa cd $R && rm -rf rpc_server/java cd $R && rm -rf test/TODO test/upgrade test_perf test_purify -cd $R && rm -rf test_rep test_server test_thread test_vxworks test_xa +cd $R && rm -rf test_rep test_server test_vxworks # Build a version and smoke test. cd $R && rm -rf build_run && mkdir build_run diff --git a/db/dist/clib_port.h b/db/dist/clib_port.h deleted file mode 100644 index cfefbb37d..000000000 --- a/db/dist/clib_port.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Exit success/failure macros. - */ -#ifndef HAVE_EXIT_SUCCESS -#define EXIT_FAILURE 1 -#define EXIT_SUCCESS 0 -#endif - -/* - * Don't step on the namespace. Other libraries may have their own - * implementations of these functions, we don't want to use their - * implementations or force them to use ours based on the load order. - */ -#ifndef HAVE_ATOI -#define atoi __db_Catoi -#endif -#ifndef HAVE_ATOL -#define atol __db_Catol -#endif -#ifndef HAVE_GETADDRINFO -#define freeaddrinfo(a) __db_Cfreeaddrinfo(a) -#define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) -#endif -#ifndef HAVE_GETCWD -#define getcwd __db_Cgetcwd -#endif -#ifndef HAVE_GETOPT -#define getopt __db_Cgetopt -#define optarg __db_Coptarg -#define opterr __db_Copterr -#define optind __db_Coptind -#define optopt __db_Coptopt -#define optreset __db_Coptreset -#endif -#ifndef HAVE_ISSPACE -#define isspace __db_Cisspace -#endif -#ifndef HAVE_MEMCMP -#define memcmp __db_Cmemcmp -#endif -#ifndef HAVE_MEMCPY -#define memcpy __db_Cmemcpy -#endif -#ifndef HAVE_MEMMOVE -#define memmove __db_Cmemmove -#endif -#ifndef HAVE_PRINTF -#define printf __db_Cprintf -#define fprintf __db_Cfprintf -#endif -#ifndef HAVE_RAISE -#define raise __db_Craise -#endif -#ifndef HAVE_RAND -#define rand __db_Crand -#define srand __db_Csrand -#endif -#ifndef HAVE_SNPRINTF -#define snprintf __db_Csnprintf -#endif -#ifndef HAVE_STRCASECMP -#define strcasecmp __db_Cstrcasecmp -#define strncasecmp __db_Cstrncasecmp -#endif -#ifndef HAVE_STRCAT -#define strcat __db_Cstrcat -#endif -#ifndef HAVE_STRCHR -#define strchr __db_Cstrchr -#endif -#ifndef HAVE_STRDUP -#define strdup __db_Cstrdup -#endif -#ifndef HAVE_STRERROR -#define strerror __db_Cstrerror -#endif -#ifndef HAVE_STRNCAT -#define strncat __db_Cstrncat -#endif -#ifndef HAVE_STRNCMP -#define strncmp __db_Cstrncmp -#endif -#ifndef HAVE_STRRCHR -#define strrchr __db_Cstrrchr -#endif -#ifndef HAVE_STRSEP -#define strsep __db_Cstrsep -#endif -#ifndef HAVE_STRTOL -#define strtol __db_Cstrtol -#endif -#ifndef HAVE_STRTOUL -#define strtoul __db_Cstrtoul -#endif -#ifndef HAVE_VSNPRINTF -#define vsnprintf __db_Cvsnprintf -#endif diff --git a/db/dist/clib_port.in b/db/dist/clib_port.in new file mode 100644 index 000000000..e8f87e5ea --- /dev/null +++ b/db/dist/clib_port.in @@ -0,0 +1,205 @@ +/* DO NOT EDIT: automatically built from dist/clib_port.in. */ +/* + * Minimum/maximum values for various types. + */ +#ifndef UINT16_MAX /* Maximum 16-bit unsigned. */ +#define UINT16_MAX 65535 +#endif +#ifndef UINT32_MAX /* Maximum 32-bit unsigned. */ +#define UINT32_MAX 4294967295U +#endif + +#ifndef INT_MAX +#if SIZEOF_INT == 4 +#define INT_MAX 2147483647 +#elif SIZEOF_INT == 8 +#define INT_MAX 9223372036854775807 +#endif +#endif + +#ifndef INT_MIN /* minimum (signed) int value */ +#define INT_MIN (-INT_MAX-1) +#endif + +#ifndef UINT_MAX /* maximum (signed) int value */ +#if SIZEOF_INT == 4 +#define UINT_MAX 4294967295U +#elif SIZEOF_INT == 8 +#define UINT_MAX 18446744073709551615U +#endif +#endif + +#ifndef LONG_MAX /* maximum (signed) long value */ +#if SIZEOF_LONG == 4 +#define LONG_MAX 2147483647 +#elif SIZEOF_LONG == 8 +#define LONG_MAX 9223372036854775807L +#endif +#endif + +#ifndef LONG_MIN /* minimum (signed) long value */ +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifndef ULONG_MAX /* maximum (unsigned) long value */ +#if SIZEOF_LONG == 4 +#define ULONG_MAX 4294967295U +#elif SIZEOF_LONG == 8 +#define ULONG_MAX 18446744073709551615UL +#endif +#endif + +#if defined(HAVE_64BIT_TYPES) +/* + * Override the system's 64-bit min/max constants. AIX's 32-bit compiler can + * handle 64-bit values, but the system's constants don't include the LL/ULL + * suffix, and so can't be compiled using the 32-bit compiler. + */ +#undef INT64_MAX +#undef INT64_MIN +#undef UINT64_MAX + +#ifdef DB_WIN32 +#define INT64_MAX _I64_MAX +#define INT64_MIN _I64_MIN +#define UINT64_MAX _UI64_MAX +#else +#define INT64_MAX 9223372036854775807LL +#define INT64_MIN (-INT64_MAX-1) +#define UINT64_MAX 18446744073709551615ULL +#endif /* DB_WIN32 */ + +@INT64_FMT@ +@UINT64_FMT@ +#endif /* HAVE_64BIT_TYPES */ + +/* + * Exit success/failure macros. + */ +#ifndef HAVE_EXIT_SUCCESS +#define EXIT_FAILURE 1 +#define EXIT_SUCCESS 0 +#endif + +/* + * Don't step on the namespace. Other libraries may have their own + * implementations of these functions, we don't want to use their + * implementations or force them to use ours based on the load order. + */ +#ifndef HAVE_ATOI +#define atoi __db_Catoi +#endif +#ifndef HAVE_ATOL +#define atol __db_Catol +#endif +#ifndef HAVE_FCLOSE +#define fclose __db_Cfclose +#endif +#ifndef HAVE_FGETC +#define fgetc __db_Cfgetc +#endif +#ifndef HAVE_FGETS +#define fgets __db_Cfgets +#endif +#ifndef HAVE_FOPEN +#define fopen __db_Cfopen +#endif +#ifndef HAVE_FWRITE +#define fwrite __db_Cfwrite +#endif +#ifndef HAVE_GETADDRINFO +#define freeaddrinfo(a) __db_Cfreeaddrinfo(a) +#define getaddrinfo(a, b, c, d) __db_Cgetaddrinfo(a, b, c, d) +#endif +#ifndef HAVE_GETCWD +#define getcwd __db_Cgetcwd +#endif +#ifndef HAVE_GETOPT +#define getopt __db_Cgetopt +#define optarg __db_Coptarg +#define opterr __db_Copterr +#define optind __db_Coptind +#define optopt __db_Coptopt +#define optreset __db_Coptreset +#endif +#ifndef HAVE_ISALPHA +#define isalpha __db_Cisalpha +#endif +#ifndef HAVE_ISDIGIT +#define isdigit __db_Cisdigit +#endif +#ifndef HAVE_ISPRINT +#define isprint __db_Cisprint +#endif +#ifndef HAVE_ISSPACE +#define isspace __db_Cisspace +#endif +#ifndef HAVE_LOCALTIME +#define localtime __db_Clocaltime +#endif +#ifndef HAVE_MEMCMP +#define memcmp __db_Cmemcmp +#endif +#ifndef HAVE_MEMCPY +#define memcpy __db_Cmemcpy +#endif +#ifndef HAVE_MEMMOVE +#define memmove __db_Cmemmove +#endif +#ifndef HAVE_PRINTF +#define printf __db_Cprintf +#define fprintf __db_Cfprintf +#endif +#ifndef HAVE_QSORT +#define qsort __db_Cqsort +#endif +#ifndef HAVE_RAISE +#define raise __db_Craise +#endif +#ifndef HAVE_RAND +#define rand __db_Crand +#define srand __db_Csrand +#endif +#ifndef HAVE_SNPRINTF +#define snprintf __db_Csnprintf +#endif +#ifndef HAVE_STRCASECMP +#define strcasecmp __db_Cstrcasecmp +#define strncasecmp __db_Cstrncasecmp +#endif +#ifndef HAVE_STRCAT +#define strcat __db_Cstrcat +#endif +#ifndef HAVE_STRCHR +#define strchr __db_Cstrchr +#endif +#ifndef HAVE_STRDUP +#define strdup __db_Cstrdup +#endif +#ifndef HAVE_STRERROR +#define strerror __db_Cstrerror +#endif +#ifndef HAVE_STRNCAT +#define strncat __db_Cstrncat +#endif +#ifndef HAVE_STRNCMP +#define strncmp __db_Cstrncmp +#endif +#ifndef HAVE_STRRCHR +#define strrchr __db_Cstrrchr +#endif +#ifndef HAVE_STRSEP +#define strsep __db_Cstrsep +#endif +#ifndef HAVE_STRTOL +#define strtol __db_Cstrtol +#endif +#ifndef HAVE_STRTOUL +#define strtoul __db_Cstrtoul +#endif +#ifndef HAVE_TIME +#define time __db_Ctime +#endif +#ifndef HAVE_VSNPRINTF +#define vsnprintf __db_Cvsnprintf +#endif diff --git a/db/dist/config.guess b/db/dist/config.guess index 396482d6c..951383e35 100755 --- a/db/dist/config.guess +++ b/db/dist/config.guess @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, # Inc. -timestamp='2006-07-02' +timestamp='2007-05-17' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -161,6 +161,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched @@ -329,7 +330,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; - i86pc:SunOS:5.*:*) + i86pc:SunOS:5.*:* | ix86xen:SunOS:5.*:*) echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) @@ -780,7 +781,7 @@ EOF i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; - i*:MINGW*:*) + *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; i*:windows32*:*) @@ -790,12 +791,15 @@ EOF i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; - x86:Interix*:[3456]*) - echo i586-pc-interix${UNAME_RELEASE} - exit ;; - EM64T:Interix*:[3456]*) - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; + *:Interix*:[3456]*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + EM64T | authenticamd) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; @@ -950,6 +954,9 @@ EOF x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;; + xtensa:Linux:*:*) + echo xtensa-unknown-linux-gnu + exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent @@ -1208,6 +1215,15 @@ EOF SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; diff --git a/db/dist/config.hin b/db/dist/config.hin index d4a3f3138..f0c125bc0 100644 --- a/db/dist/config.hin +++ b/db/dist/config.hin @@ -33,6 +33,12 @@ /* Define to 1 if you have the `atol' function. */ #undef HAVE_ATOL +/* Define to 1 if building on BREW. */ +#undef HAVE_BREW + +/* Define to 1 if building on BREW (SDK2). */ +#undef HAVE_BREW_SDK2 + /* Define to 1 if you have the `clock_gettime' function. */ #undef HAVE_CLOCK_GETTIME @@ -61,6 +67,9 @@ /* Define to 1 if you have the `fchmod' function. */ #undef HAVE_FCHMOD +/* Define to 1 if you have the `fclose' function. */ +#undef HAVE_FCLOSE + /* Define to 1 if you have the `fcntl' function. */ #undef HAVE_FCNTL @@ -70,12 +79,27 @@ /* Define to 1 if you have the `fdatasync' function. */ #undef HAVE_FDATASYNC +/* Define to 1 if you have the `fgetc' function. */ +#undef HAVE_FGETC + +/* Define to 1 if you have the `fgets' function. */ +#undef HAVE_FGETS + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #undef HAVE_FILESYSTEM_NOTZERO +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +#undef HAVE_FINE_GRAINED_LOCK_MANAGER + +/* Define to 1 if you have the `fopen' function. */ +#undef HAVE_FOPEN + /* Define to 1 if you have the `ftruncate' function. */ #undef HAVE_FTRUNCATE +/* Define to 1 if you have the `fwrite' function. */ +#undef HAVE_FWRITE + /* Define to 1 if you have the `getaddrinfo' function. */ #undef HAVE_GETADDRINFO @@ -100,6 +124,9 @@ /* Define to 1 if building Hash access method. */ #undef HAVE_HASH +/* Define to 1 if you have the `hstrerror' function. */ +#undef HAVE_HSTRERROR + /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H @@ -115,6 +142,9 @@ /* Define to 1 if you have the `isspace' function. */ #undef HAVE_ISSPACE +/* Define to 1 if you have the `localtime' function. */ +#undef HAVE_LOCALTIME + /* Define to 1 if you have the `memcmp' function. */ #undef HAVE_MEMCMP @@ -167,6 +197,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ #undef HAVE_MUTEX_HPPA_MSEM_INIT +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +#undef HAVE_MUTEX_HYBRID + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY @@ -211,6 +244,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#undef HAVE_MUTEX_SUPPORT + /* Define to 1 if mutexes hold system resources. */ #undef HAVE_MUTEX_SYSTEM_RESOURCES @@ -238,10 +274,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ #undef HAVE_MUTEX_WIN32_GCC -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ #undef HAVE_MUTEX_X86_GCC_ASSEMBLY /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -271,6 +309,9 @@ /* Define to 1 if building on QNX. */ #undef HAVE_QNX +/* Define to 1 if you have the `qsort' function. */ +#undef HAVE_QSORT + /* Define to 1 if building Queue access method. */ #undef HAVE_QUEUE @@ -289,6 +330,9 @@ /* Define to 1 if building RPC client/server. */ #undef HAVE_RPC +/* Define to 1 if building on S60. */ +#undef HAVE_S60 + /* Define to 1 if you have the `sched_yield' function. */ #undef HAVE_SCHED_YIELD @@ -367,13 +411,13 @@ /* Define to 1 if you have the `sysconf' function. */ #undef HAVE_SYSCONF +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#undef HAVE_SYSTEM_INCLUDE_FILES + /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_SYS_DIR_H -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_FCNTL_H - /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_SYS_NDIR_H @@ -381,6 +425,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_SELECT_H +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SOCKET_H + /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H @@ -390,19 +437,25 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H +/* Define to 1 if you have the `time' function. */ +#undef HAVE_TIME + /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to 1 if unlink of file with open file descriptors will fail. */ #undef HAVE_UNLINK_WITH_OPEN_FAILURE +/* Define to 1 if port includes historic database upgrade support. */ +#undef HAVE_UPGRADE_SUPPORT + /* Define to 1 if building access method verification support. */ #undef HAVE_VERIFY /* Define to 1 if you have the `vsnprintf' function. */ #undef HAVE_VSNPRINTF -/* Define to 1 if building VxWorks. */ +/* Define to 1 if building on VxWorks. */ #undef HAVE_VXWORKS /* Define to 1 if you have the `yield' function. */ @@ -483,8 +536,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ #undef const -#include "clib_port.h" - -#ifdef DB_WIN32 -#include "win_db.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#undef inline #endif + +/* type to use in place of socklen_t if not defined */ +#undef socklen_t diff --git a/db/dist/config.sub b/db/dist/config.sub index 53954dbe9..c060f4483 100755 --- a/db/dist/config.sub +++ b/db/dist/config.sub @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, # Inc. -timestamp='2006-08-14' +timestamp='2007-04-29' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -245,12 +245,12 @@ case $basic_machine in | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ + | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore \ + | maxq | mb | microblaze | mcore | mep \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ @@ -276,6 +276,7 @@ case $basic_machine in | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ + | score \ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ @@ -323,7 +324,7 @@ case $basic_machine in | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ @@ -682,6 +683,10 @@ case $basic_machine in basic_machine=i386-pc os=-mingw32 ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; miniframe) basic_machine=m68000-convergent ;; @@ -924,6 +929,9 @@ case $basic_machine in basic_machine=sh-hitachi os=-hms ;; + sh5el) + basic_machine=sh5le-unknown + ;; sh64) basic_machine=sh64-unknown ;; @@ -1218,7 +1226,7 @@ case $os in | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1370,6 +1378,9 @@ else # system, and we'll never get to this point. case $basic_machine in + score-*) + os=-elf + ;; spu-*) os=-elf ;; @@ -1410,6 +1421,9 @@ case $basic_machine in m68*-cisco) os=-aout ;; + mep-*) + os=-elf + ;; mips*-cisco) os=-elf ;; diff --git a/db/dist/configure b/db/dist/configure index b7af6f85c..f3cc93240 100755 --- a/db/dist/configure +++ b/db/dist/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.60 for Berkeley DB 4.5.20. +# Generated by GNU Autoconf 2.61 for Berkeley DB 4.6.18. # # Report bugs to . # @@ -12,7 +12,8 @@ ## M4sh Initialization. ## ## --------------------- ## -# Be Bourne compatible +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: @@ -21,10 +22,13 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh + + # PATH needs CR @@ -217,7 +221,7 @@ test \$exitcode = 0) || { (exit 1); exit 1; } else as_candidate_shells= as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /usr/bin/posix$PATH_SEPARATOR/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. @@ -235,7 +239,6 @@ IFS=$as_save_IFS # Try only shells that exist, to save several forks. if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { ("$as_shell") 2> /dev/null <<\_ASEOF -# Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: @@ -244,10 +247,12 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh + : _ASEOF @@ -255,7 +260,6 @@ _ASEOF CONFIG_SHELL=$as_shell as_have_required=yes if { "$as_shell" 2> /dev/null <<\_ASEOF -# Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: @@ -264,10 +268,12 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh + : (as_func_return () { @@ -514,19 +520,28 @@ else as_mkdir_p=false fi -# Find out whether ``test -x'' works. Don't use a zero-byte file, as -# systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - as_executable_p="test -x" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' else - as_executable_p=: + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' fi -rm -f conf$$.file +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -712,46 +727,46 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='Berkeley DB' -PACKAGE_TARNAME='db-4.5.20' -PACKAGE_VERSION='4.5.20' -PACKAGE_STRING='Berkeley DB 4.5.20' +PACKAGE_TARNAME='db-4.6.18' +PACKAGE_VERSION='4.6.18' +PACKAGE_STRING='Berkeley DB 4.6.18' PACKAGE_BUGREPORT='Oracle Technology Network Berkeley DB forum' ac_unique_file="../db/db.c" -ac_default_prefix=/usr/local/BerkeleyDB.4.5 +ac_default_prefix=/usr/local/BerkeleyDB.4.6 # Factoring default headers for most tests. ac_includes_default="\ #include -#if HAVE_SYS_TYPES_H +#ifdef HAVE_SYS_TYPES_H # include #endif -#if HAVE_SYS_STAT_H +#ifdef HAVE_SYS_STAT_H # include #endif -#if STDC_HEADERS +#ifdef STDC_HEADERS # include # include #else -# if HAVE_STDLIB_H +# ifdef HAVE_STDLIB_H # include # endif #endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif -#if HAVE_STRINGS_H +#ifdef HAVE_STRINGS_H # include #endif -#if HAVE_INTTYPES_H +#ifdef HAVE_INTTYPES_H # include #endif -#if HAVE_STDINT_H +#ifdef HAVE_STDINT_H # include #endif -#if HAVE_UNISTD_H +#ifdef HAVE_UNISTD_H # include #endif" @@ -853,17 +868,14 @@ DB_VERSION_MINOR DB_VERSION_PATCH DB_VERSION_STRING DB_VERSION_UNIQUE_NAME -AR CHMOD CP KILL LN MKDIR -RANLIB RM RPCGEN db_cv_path_sh -STRIP INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA @@ -880,6 +892,9 @@ GREP EGREP LN_S ECHO +AR +RANLIB +STRIP CPP F77 FFLAGS @@ -906,8 +921,12 @@ u_int32_decl int32_decl u_int64_decl int64_decl -ssize_t_decl +FILE_t_decl +off_t_decl pid_t_decl +size_t_decl +time_t_decl +ssize_t_decl uintmax_t_decl uintptr_t_decl thread_h_decl @@ -929,6 +948,7 @@ target_alias CC CFLAGS LDFLAGS +LIBS CPPFLAGS CXX CXXFLAGS @@ -1042,10 +1062,10 @@ do -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` eval enable_$ac_feature=no ;; -docdir | --docdir | --docdi | --doc | --do) @@ -1061,10 +1081,10 @@ do -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` eval enable_$ac_feature=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ @@ -1258,19 +1278,19 @@ do -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` eval with_$ac_package=\$ac_optarg ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` eval with_$ac_package=no ;; --x) @@ -1439,7 +1459,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Berkeley DB 4.5.20 to adapt to many kinds of systems. +\`configure' configures Berkeley DB 4.6.18 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1487,7 +1507,7 @@ Fine tuning of the installation directories: --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/db-4.5.20] + --docdir=DIR documentation root [DATAROOTDIR/doc/db-4.6.18] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] @@ -1509,7 +1529,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Berkeley DB 4.5.20:";; + short | recursive ) echo "Configuration of Berkeley DB 4.6.18:";; esac cat <<\_ACEOF @@ -1519,6 +1539,7 @@ Optional Features: --disable-bigfile Obsolete; use --disable-largefile instead. --disable-cryptography Do not build database cryptography support. --disable-hash Do not build Hash access method. + --disable-mutexsupport Do not build any mutex support. --disable-queue Do not build Queue access method. --disable-replication Do not build database replication support. --disable-statistics Do not build statistics support. @@ -1532,6 +1553,8 @@ Optional Features: --enable-dump185 Build db_dump185(1) to dump 1.85 databases. --enable-java Build Java API. --enable-mingw Build Berkeley DB for MinGW. + --enable-fine_grained_lock_manager + Build Berkeley DB with a fine-grained lock manager. --enable-o_direct Enable the O_DIRECT flag for direct I/O. --enable-posixmutexes Force use of POSIX standard mutexes. --enable-pthread_self Obsolete; use --enable-pthread_api instead. @@ -1552,7 +1575,7 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-mutex=MUTEX Selection of non-standard mutexes. + --with-mutex=MUTEX Select non-default mutex implementation. --with-mutexalign=ALIGNMENT Obsolete; use DbEnv::mutex_set_align instead. --with-tcl=DIR Directory location of tclConfig.sh. @@ -1567,6 +1590,7 @@ Some influential environment variables: CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory + LIBS libraries to pass to the linker, e.g. -l CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if you have headers in a nonstandard directory CXX C++ compiler command @@ -1640,8 +1664,8 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Berkeley DB configure 4.5.20 -generated by GNU Autoconf 2.60 +Berkeley DB configure 4.6.18 +generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. @@ -1654,8 +1678,8 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Berkeley DB $as_me 4.5.20, which was -generated by GNU Autoconf 2.60. Invocation command line was +It was created by Berkeley DB $as_me 4.6.18, which was +generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ @@ -2221,11 +2245,11 @@ echo "${ECHO_T}no" >&6; } DB_VERSION_MAJOR="4" -DB_VERSION_MINOR="5" +DB_VERSION_MINOR="6" -DB_VERSION_PATCH="20" +DB_VERSION_PATCH="18" -DB_VERSION_STRING='"Berkeley DB 4.5.20: (September 20, 2006)"' +DB_VERSION_STRING='"Berkeley DB 4.6.18: (July 17, 2007)"' # Process all options before using them. @@ -2275,6 +2299,23 @@ yes) { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; };; esac +{ echo "$as_me:$LINENO: checking if --disable-mutexsupport option specified" >&5 +echo $ECHO_N "checking if --disable-mutexsupport option specified... $ECHO_C" >&6; } +# Check whether --enable-mutexsupport was given. +if test "${enable_mutexsupport+set}" = set; then + enableval=$enable_mutexsupport; +else + enableval="yes" +fi + +db_cv_build_mutexsupport="$enableval" +case "$enableval" in + no) { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; };; +yes) { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; };; +esac + { echo "$as_me:$LINENO: checking if --disable-queue option specified" >&5 echo $ECHO_N "checking if --disable-queue option specified... $ECHO_C" >&6; } # Check whether --enable-queue was given. @@ -2467,6 +2508,26 @@ fi { echo "$as_me:$LINENO: result: $db_cv_mingw" >&5 echo "${ECHO_T}$db_cv_mingw" >&6; } +{ echo "$as_me:$LINENO: checking if --enable-fine_grained_lock_manager option specified" >&5 +echo $ECHO_N "checking if --enable-fine_grained_lock_manager option specified... $ECHO_C" >&6; } +# Check whether --enable-fine_grained_lock_manager was given. +if test "${enable_fine_grained_lock_manager+set}" = set; then + enableval=$enable_fine_grained_lock_manager; db_cv_fine_grained_lock_manager="$enable_fine_grained_lock_manager" +else + db_cv_fine_grained_lock_manager="no" +fi + +{ echo "$as_me:$LINENO: result: $db_cv_fine_grained_lock_manager" >&5 +echo "${ECHO_T}$db_cv_fine_grained_lock_manager" >&6; } + + +if test "$db_cv_fine_grained_lock_manager" = "yes"; then + cat >>confdefs.h <<\_ACEOF +#define HAVE_FINE_GRAINED_LOCK_MANAGER 1 +_ACEOF + +fi + { echo "$as_me:$LINENO: checking if --enable-o_direct option specified" >&5 echo $ECHO_N "checking if --enable-o_direct option specified... $ECHO_C" >&6; } # Check whether --enable-o_direct was given. @@ -2669,7 +2730,7 @@ echo "${ECHO_T}$with_uniquename" >&6; } else db_cv_uniquename="yes" if test "$with_uniquename" = "yes"; then - DB_VERSION_UNIQUE_NAME="_4005" + DB_VERSION_UNIQUE_NAME="_4006" else DB_VERSION_UNIQUE_NAME="$with_uniquename" fi @@ -2729,108 +2790,15 @@ _ACEOF fi -# Check for programs used in building and installation. - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. -set dummy ${ac_tool_prefix}ar; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_AR="${ac_tool_prefix}ar" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { echo "$as_me:$LINENO: result: $AR" >&5 -echo "${ECHO_T}$AR" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi -fi -if test -z "$ac_cv_prog_AR"; then - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. -set dummy ar; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_AR"; then - ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_AR="ar" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS +cat >>confdefs.h <<\_ACEOF +#define HAVE_UPGRADE_SUPPORT 1 +_ACEOF -fi -fi -ac_ct_AR=$ac_cv_prog_ac_ct_AR -if test -n "$ac_ct_AR"; then - { echo "$as_me:$LINENO: result: $ac_ct_AR" >&5 -echo "${ECHO_T}$ac_ct_AR" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - if test "x$ac_ct_AR" = x; then - AR="none" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - AR=$ac_ct_AR - fi -else - AR="$ac_cv_prog_AR" -fi +# Check for programs used in building and installation. -test "$AR" = "none" && { { echo "$as_me:$LINENO: error: No ar utility found." >&5 -echo "$as_me: error: No ar utility found." >&2;} - { (exit 1); exit 1; }; } if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}chmod", so it can be a program name with args. @@ -2849,7 +2817,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CHMOD="${ac_tool_prefix}chmod" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -2889,7 +2857,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CHMOD="chmod" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -2949,7 +2917,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CP="${ac_tool_prefix}cp" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -2989,7 +2957,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CP="cp" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3051,7 +3019,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_KILL="${ac_tool_prefix}kill" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3091,7 +3059,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_KILL="kill" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3152,7 +3120,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_LN="${ac_tool_prefix}ln" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3192,7 +3160,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_LN="ln" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3252,7 +3220,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_MKDIR="${ac_tool_prefix}mkdir" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3292,7 +3260,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_MKDIR="mkdir" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3335,105 +3303,6 @@ test "$MKDIR" = "none" && { { echo "$as_me:$LINENO: error: No mkdir utility foun echo "$as_me: error: No mkdir utility found." >&2;} { (exit 1); exit 1; }; } -# Ranlib doesn't exist on some architectures because the ar utility -# packages the library itself. -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB="none" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - - if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}rm", so it can be a program name with args. set dummy ${ac_tool_prefix}rm; ac_word=$2 @@ -3451,7 +3320,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RM="${ac_tool_prefix}rm" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3491,7 +3360,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RM="rm" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3552,7 +3421,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RPCGEN="${ac_tool_prefix}rpcgen" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3592,7 +3461,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RPCGEN="rpcgen" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3659,7 +3528,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_db_cv_path_sh="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3702,7 +3571,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ac_pt_db_cv_path_sh="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -3748,106 +3617,7 @@ echo "$as_me: error: No sh utility found." >&2;} # Don't strip the binaries if --enable-debug was specified. if test "$db_cv_debug" = yes; then - STRIP="none" -else - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP="none" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - - test "$STRIP" = "none" && { echo "$as_me:$LINENO: WARNING: No strip utility found." >&5 -echo "$as_me: WARNING: No strip utility found." >&2;} + STRIP=":" fi # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -3885,7 +3655,7 @@ case $as_dir/ in # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -3933,6 +3703,9 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' BUILD_TARGET="library_build" INSTALL_TARGET="library_install" +# Respect the environment LIBS settings +LIBSO_LIBS="$LIBS" + # This is where we handle stuff that autoconf can't handle: compiler, # preprocessor and load flags, libraries that the standard tests don't # look for. @@ -3950,6 +3723,10 @@ INSTALL_TARGET="library_install" optimize_debug="-O" case "$host_os" in aix4.3.*|aix5*) + case "$host_os" in + aix4.3.*) + CPPFLAGS="$CPPFLAGS -D_LINUX_SOURCE_COMPAT";; + esac optimize_debug="-O2" CC=${CC-"xlc_r"} CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" @@ -3969,7 +3746,8 @@ irix*) optimize_debug="-O2" mpeix*) CPPFLAGS="$CPPFLAGS -D_POSIX_SOURCE -D_SOCKET_SOURCE" LIBSO_LIBS="$LIBSO_LIBS -lsocket -lsvipc";; osf*) CPPFLAGS="$CPPFLAGS -pthread";; -*qnx*) cat >>confdefs.h <<\_ACEOF +*qnx*) qnx_build="yes" + cat >>confdefs.h <<\_ACEOF #define HAVE_QNX 1 _ACEOF @@ -4028,7 +3806,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4072,7 +3850,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -4211,7 +3989,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. -for ac_file in $ac_files +for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in @@ -4239,6 +4017,12 @@ done test "$ac_cv_exeext" = no && ac_cv_exeext= else + ac_file='' +fi + +{ echo "$as_me:$LINENO: result: $ac_file" >&5 +echo "${ECHO_T}$ac_file" >&6; } +if test -z "$ac_file"; then echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -4250,8 +4034,6 @@ See \`config.log' for more details." >&2;} fi ac_exeext=$ac_cv_exeext -{ echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6; } # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. @@ -4429,27 +4211,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 @@ -4504,27 +4269,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 @@ -4559,27 +4307,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : else echo "$as_me: failed program was:" >&5 @@ -4615,27 +4346,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 @@ -4751,27 +4465,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cc_c89=$ac_arg else echo "$as_me: failed program was:" >&5 @@ -4829,17 +4526,7 @@ else esac fi -# Checks for compiler characteristics. -DB_PROTO1="#undef __P" - -# AC_PROG_CC_STDC only sets ac_cv_prog_cc_stdc if the test fails, so -# check for "no", not "yes". -if test "$ac_cv_prog_cc_stdc" = "no"; then - DB_PROTO2="#define __P(protos) ()" -else - DB_PROTO2="#define __P(protos) protos" -fi - +# Check for "const" and "inline" keywords. { echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } @@ -4860,10 +4547,10 @@ main () #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; - const charset x; + const charset cs; /* SunOS 4.1.1 cc rejects this. */ - char const *const *ccp; - char **p; + char const *const *pcpcc; + char **ppc; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; @@ -4872,11 +4559,11 @@ main () an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; - ccp = &g + (g ? g-g : 0); + pcpcc = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ - ++ccp; - p = (char**) ccp; - ccp = (char const *const *) p; + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; @@ -4903,7 +4590,7 @@ main () const int foo = 10; if (!foo) return 0; } - return !x[0] && !zero.x; + return !cs[0] && !zero.x; #endif ; @@ -4923,27 +4610,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_c_const=yes else echo "$as_me: failed program was:" >&5 @@ -4964,11 +4634,101 @@ _ACEOF fi +{ echo "$as_me:$LINENO: checking for inline" >&5 +echo $ECHO_N "checking for inline... $ECHO_C" >&6; } +if test "${ac_cv_c_inline+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_inline=$ac_kw +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 +echo "${ECHO_T}$ac_cv_c_inline" >&6; } + + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + + +# We use prototypes and the keyword "const" in db.h which doesn't include +# db_config.h, so we have to figure out what to do there. We don't have +# much choice, we look at internal autoconf variables. if test "$ac_cv_c_const" != "yes"; then DB_CONST="#define const" fi +# Now prototypes. +# +# There is an autoconf AC_C_PROTOTYPES macro, but it doesn't set internal +# variables, so it doesn't help us at all -- use the internal variable for +# STDC compilers instead. +# +# First, clear __P, some other systems use it too. +DB_PROTO1="#undef __P" + +# AC_PROG_CC_STDC only sets ac_cv_prog_cc_stdc if the test fails, so +# check for "no", not "yes". +if test "$ac_cv_prog_cc_stdc" = "no"; then + DB_PROTO2="#define __P(protos) ()" +else + DB_PROTO2="#define __P(protos) protos" +fi + # Because of shared library building, the ${CC} used for config tests # may be different than the ${CC} we want to put in the Makefile. # The latter is known as ${MAKEFILE_CC} in this script. @@ -5004,7 +4764,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CCC="${ac_tool_prefix}xlC_r" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5044,7 +4804,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CCC="xlC_r" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5102,7 +4862,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CCC="${ac_tool_prefix}aCC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5142,7 +4902,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CCC="aCC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5198,7 +4958,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CCC="${ac_tool_prefix}CC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5238,7 +4998,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CCC="CC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5294,7 +5054,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CCC="${ac_tool_prefix}cxx" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5334,7 +5094,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CCC="cxx" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5372,7 +5132,10 @@ esac else CCC="$ac_cv_prog_CCC" fi -;; + + CXXFLAGS="$CXXFLAGS -D__USE_STD_IOSTREAM" + test -d /usr/include.dtk && + CXXFLAGS="$CXXFLAGS -I/usr/include.dtk";; solaris*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}CC", so it can be a program name with args. set dummy ${ac_tool_prefix}CC; ac_word=$2 @@ -5390,7 +5153,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CCC="${ac_tool_prefix}CC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5430,7 +5193,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CCC="CC" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5499,7 +5262,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5543,7 +5306,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -5656,27 +5419,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 @@ -5731,27 +5477,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 @@ -5786,27 +5515,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : else echo "$as_me: failed program was:" >&5 @@ -5842,27 +5554,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 @@ -5952,17 +5647,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -5996,17 +5684,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -6071,17 +5752,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -6115,17 +5789,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -6203,27 +5870,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then db_cv_cxx_have_stdheaders=yes else echo "$as_me: failed program was:" >&5 @@ -6468,7 +6118,7 @@ do for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_GREP" && $as_executable_p "$ac_path_GREP"; } || continue + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in @@ -6550,7 +6200,7 @@ do for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_EGREP" && $as_executable_p "$ac_path_EGREP"; } || continue + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in @@ -7030,7 +6680,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 7033 "configure"' > conftest.$ac_ext + echo '#line 6683 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7154,27 +6804,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then lt_cv_cc_needs_belf=yes else echo "$as_me: failed program was:" >&5 @@ -7183,7 +6817,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 lt_cv_cc_needs_belf=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -7277,17 +6911,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -7321,17 +6948,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -7396,17 +7016,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -7440,17 +7053,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -7521,27 +7127,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 @@ -7717,27 +7306,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 @@ -7800,27 +7372,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 @@ -7856,17 +7411,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -7983,17 +7531,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -8027,17 +7568,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -8102,17 +7636,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -8146,17 +7673,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -8196,7 +7716,7 @@ ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5' ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_f77_compiler_gnu if test -n "$ac_tool_prefix"; then - for ac_prog in g77 f77 xlf frt pgf77 cf77 fort77 fl32 af77 f90 xlf90 pgf90 pghpf epcf90 gfortran g95 f95 fort xlf95 ifort ifc efc pgf95 lf95 ftn + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgf95 lf95 ftn do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 @@ -8214,7 +7734,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_F77="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8240,7 +7760,7 @@ fi fi if test -z "$F77"; then ac_ct_F77=$F77 - for ac_prog in g77 f77 xlf frt pgf77 cf77 fort77 fl32 af77 f90 xlf90 pgf90 pghpf epcf90 gfortran g95 f95 fort xlf95 ifort ifc efc pgf95 lf95 ftn + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgf95 lf95 ftn do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -8258,7 +7778,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_F77="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8365,27 +7885,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 @@ -8428,27 +7931,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_f77_g=yes else echo "$as_me: failed program was:" >&5 @@ -8903,7 +8389,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AR="${ac_tool_prefix}ar" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8943,7 +8429,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AR="ar" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -8999,7 +8485,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9039,7 +8525,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9095,7 +8581,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9135,7 +8621,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -9456,11 +8942,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9459: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8945: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:9463: \$? = $ac_status" >&5 + echo "$as_me:8949: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -9724,11 +9210,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9727: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9213: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:9731: \$? = $ac_status" >&5 + echo "$as_me:9217: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -9828,11 +9314,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:9831: $lt_compile\"" >&5) + (eval echo "\"\$as_me:9317: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:9835: \$? = $ac_status" >&5 + echo "$as_me:9321: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -10308,27 +9794,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -10342,7 +9812,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -10383,27 +9853,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -10417,7 +9871,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -11665,27 +11119,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_dl_dlopen=yes else echo "$as_me: failed program was:" >&5 @@ -11694,7 +11132,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dl_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -11776,27 +11214,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_func_shl_load=yes else echo "$as_me: failed program was:" >&5 @@ -11805,7 +11227,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_shl_load=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 @@ -11855,27 +11277,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_dld_shl_load=yes else echo "$as_me: failed program was:" >&5 @@ -11884,7 +11290,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dld_shl_load=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -11956,27 +11362,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_func_dlopen=yes else echo "$as_me: failed program was:" >&5 @@ -11985,7 +11375,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 @@ -12035,27 +11425,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_dl_dlopen=yes else echo "$as_me: failed program was:" >&5 @@ -12064,7 +11438,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dl_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -12115,27 +11489,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_svld_dlopen=yes else echo "$as_me: failed program was:" >&5 @@ -12144,7 +11502,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_svld_dlopen=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -12195,27 +11553,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_dld_dld_link=yes else echo "$as_me: failed program was:" >&5 @@ -12224,7 +11566,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dld_dld_link=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -12280,7 +11622,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -13501,7 +12827,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -13543,27 +12869,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -13577,7 +12887,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -14752,11 +14062,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14755: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14065: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:14759: \$? = $ac_status" >&5 + echo "$as_me:14069: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -14856,11 +14166,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:14859: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14169: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:14863: \$? = $ac_status" >&5 + echo "$as_me:14173: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -16426,11 +15736,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16429: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15739: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:16433: \$? = $ac_status" >&5 + echo "$as_me:15743: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -16530,11 +15840,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16533: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15843: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:16537: \$? = $ac_status" >&5 + echo "$as_me:15847: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -17000,27 +16310,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -17034,7 +16328,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -17065,27 +16359,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -17099,7 +16377,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -18764,11 +18042,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18767: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18045: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:18771: \$? = $ac_status" >&5 + echo "$as_me:18049: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -19032,11 +18310,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19035: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18313: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:19039: \$? = $ac_status" >&5 + echo "$as_me:18317: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -19136,11 +18414,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19139: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18417: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:19143: \$? = $ac_status" >&5 + echo "$as_me:18421: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -19616,27 +18894,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -19650,7 +18912,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -19691,27 +18953,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` @@ -19725,7 +18971,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -22028,7 +21274,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVAC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22071,7 +21317,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVAC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22110,7 +21356,7 @@ else JAVA_TEST=Test.java CLASS_TEST=Test.class cat << \EOF > $JAVA_TEST -/* #line 22113 "configure" */ +/* #line 21359 "configure" */ public class Test { } EOF @@ -22155,7 +21401,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAR="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22198,7 +21444,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAR="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22248,7 +21494,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVA="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22291,7 +21537,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVA="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22337,7 +21583,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_uudecode="yes" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22379,7 +21625,7 @@ EOF if uudecode$EXEEXT Test.uue; then ac_cv_prog_uudecode_base64=yes else - echo "configure: 22382: uudecode had trouble decoding base 64 file 'Test.uue'" >&5 + echo "configure: 21628: uudecode had trouble decoding base 64 file 'Test.uue'" >&5 echo "configure: failed file was:" >&5 cat Test.uue >&5 ac_cv_prog_uudecode_base64=no @@ -22419,7 +21665,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVAC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22462,7 +21708,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_JAVAC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22501,7 +21747,7 @@ else JAVA_TEST=Test.java CLASS_TEST=Test.class cat << \EOF > $JAVA_TEST -/* #line 22504 "configure" */ +/* #line 21750 "configure" */ public class Test { } EOF @@ -22538,7 +21784,7 @@ JAVA_TEST=Test.java CLASS_TEST=Test.class TEST=Test cat << \EOF > $JAVA_TEST -/* [#]line 22541 "configure" */ +/* [#]line 21787 "configure" */ public class Test { public static void main (String args[]) { System.exit (0); @@ -22607,7 +21853,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path__ACJNI_JAVAC="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 @@ -22763,6 +22009,10 @@ _ACEOF else OSDIR=os PATH_SEPARATOR="/" + cat >>confdefs.h <<\_ACEOF +#define HAVE_SYSTEM_INCLUDE_FILES 1 +_ACEOF + fi # Checks for include files, structures, C types. @@ -22781,38 +22031,48 @@ cat >>conftest.$ac_ext <<_ACEOF #include #if defined S_ISBLK && defined S_IFDIR -# if S_ISBLK (S_IFDIR) -You lose. -# endif +extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1]; #endif #if defined S_ISBLK && defined S_IFCHR -# if S_ISBLK (S_IFCHR) -You lose. -# endif +extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1]; #endif #if defined S_ISLNK && defined S_IFREG -# if S_ISLNK (S_IFREG) -You lose. -# endif +extern char c3[S_ISLNK (S_IFREG) ? -1 : 1]; #endif #if defined S_ISSOCK && defined S_IFREG -# if S_ISSOCK (S_IFREG) -You lose. -# endif +extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1]; #endif _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "You lose" >/dev/null 2>&1; then - ac_cv_header_stat_broken=yes -else +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_stat_broken=no +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stat_broken=yes fi -rm -f conftest* +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_header_stat_broken" >&5 echo "${ECHO_T}$ac_cv_header_stat_broken" >&6; } @@ -22861,27 +22121,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_time=yes else echo "$as_me: failed program was:" >&5 @@ -22946,27 +22189,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 @@ -23039,27 +22265,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_search_opendir=$ac_res else echo "$as_me: failed program was:" >&5 @@ -23068,7 +22278,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext if test "${ac_cv_search_opendir+set}" = set; then break @@ -23139,27 +22349,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_search_opendir=$ac_res else echo "$as_me: failed program was:" >&5 @@ -23168,7 +22362,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext if test "${ac_cv_search_opendir+set}" = set; then break @@ -23195,7 +22389,7 @@ fi -for ac_header in sys/select.h sys/time.h sys/fcntl.h +for ac_header in sys/select.h sys/socket.h sys/time.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then @@ -23233,27 +22427,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 @@ -23289,17 +22466,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -23398,27 +22568,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_member_struct_stat_st_blksize=yes else echo "$as_me: failed program was:" >&5 @@ -23454,27 +22607,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_member_struct_stat_st_blksize=yes else echo "$as_me: failed program was:" >&5 @@ -23547,27 +22683,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 @@ -23603,17 +22722,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -23676,26 +22788,21 @@ fi -if test "${ac_cv_header_stdint_h+set}" = set; then - { echo "$as_me:$LINENO: checking for stdint.h" >&5 +# IRIX has stdint.h that is only available when using c99 (i.e. __c99 +# is defined). Problem with having it in a public header is that a c++ +# compiler cannot #include if db.h #includes stdint.h, so we +# need to check that stdint.h is available for all cases. Also the +# IRIX compiler does not exit with a non-zero exit code when it sees +# #error, so we actually need to use the header for the compiler to fail. + +{ echo "$as_me:$LINENO: checking for stdint.h" >&5 echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6; } -if test "${ac_cv_header_stdint_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_stdint_h" >&5 -echo "${ECHO_T}$ac_cv_header_stdint_h" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking stdint.h usability" >&5 -echo $ECHO_N "checking stdint.h usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default #include + int main() { + uint_least8_t x=0; + return x; + } _ACEOF rm -f conftest.$ac_objext if { (ac_try="$ac_compile" @@ -23710,133 +22817,88 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } +if test "$db_cv_cxx" = "yes"; then + { echo "$as_me:$LINENO: checking if stdint.h can be used by C++" >&5 +echo $ECHO_N "checking if stdint.h can be used by C++... $ECHO_C" >&6; } + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -# Is the header present? -{ echo "$as_me:$LINENO: checking stdint.h presence" >&5 -echo $ECHO_N "checking stdint.h presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ + cat >conftest.$ac_ext <<_ACEOF #include + int main() { + uint_least8_t x=0; + return x; + } _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + stdint_h_decl="#include " + db_includes="$db_includes +#include " + else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + stdint_h_decl="#ifndef __cplusplus +#include +#endif" + db_includes="$db_includes +#ifndef __cplusplus +#include +#endif" + fi -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: stdint.h: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: stdint.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: stdint.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: stdint.h: present but cannot be compiled" >&5 -echo "$as_me: WARNING: stdint.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: stdint.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: stdint.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: stdint.h: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: stdint.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: stdint.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: stdint.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## ---------------------------------------------------------- ## -## Report this to Oracle Technology Network Berkeley DB forum ## -## ---------------------------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ echo "$as_me:$LINENO: checking for stdint.h" >&5 -echo $ECHO_N "checking for stdint.h... $ECHO_C" >&6; } -if test "${ac_cv_header_stdint_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_header_stdint_h=$ac_header_preproc -fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_stdint_h" >&5 -echo "${ECHO_T}$ac_cv_header_stdint_h" >&6; } - + stdint_h_decl="#include " + db_includes="$db_includes +#include " fi -if test $ac_cv_header_stdint_h = yes; then +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - db_includes="$db_includes -#include " - stdint_h_decl="#include " + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test "${ac_cv_header_stddef_h+set}" = set; then @@ -23873,27 +22935,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 @@ -23929,17 +22974,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -24036,27 +23074,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 @@ -24092,17 +23113,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -24167,11 +23181,10 @@ fi db_includes="$db_includes #include " -# We require off_t and size_t, and we don't try to substitute our own -# if we can't find them. -{ echo "$as_me:$LINENO: checking for off_t" >&5 -echo $ECHO_N "checking for off_t... $ECHO_C" >&6; } -if test "${ac_cv_type_off_t+set}" = set; then +# We need to know the sizes of various objects on this system. +{ echo "$as_me:$LINENO: checking for char" >&5 +echo $ECHO_N "checking for char... $ECHO_C" >&6; } +if test "${ac_cv_type_char+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -24182,7 +23195,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef off_t ac__type_new_; +typedef char ac__type_new_; int main () { @@ -24207,53 +23220,35 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_off_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_char=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_off_t=no + ac_cv_type_char=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 -echo "${ECHO_T}$ac_cv_type_off_t" >&6; } -if test $ac_cv_type_off_t = yes; then - : -else - { { echo "$as_me:$LINENO: error: No off_t type." >&5 -echo "$as_me: error: No off_t type." >&2;} - { (exit 1); exit 1; }; } -fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_char" >&5 +echo "${ECHO_T}$ac_cv_type_char" >&6; } -{ echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } -if test "${ac_cv_type_size_t+set}" = set; then +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ echo "$as_me:$LINENO: checking size of char" >&5 +echo $ECHO_N "checking size of char... $ECHO_C" >&6; } +if test "${ac_cv_sizeof_char+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -24261,14 +23256,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef size_t ac__type_new_; + typedef char ac__type_sizeof_; int main () { -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; +test_array [0] = 0 + ; return 0; } @@ -24286,55 +23280,68 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + + typedef char ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_size_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_size_t=no + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6; } -if test $ac_cv_type_size_t = yes; then - : + done else - { { echo "$as_me:$LINENO: error: No size_t type." >&5 -echo "$as_me: error: No size_t type." >&2;} - { (exit 1); exit 1; }; } -fi - + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -# We need to know the sizes of various objects on this system. -{ echo "$as_me:$LINENO: checking for char" >&5 -echo $ECHO_N "checking for char... $ECHO_C" >&6; } -if test "${ac_cv_type_char+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -24342,14 +23349,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef char ac__type_new_; + typedef char ac__type_sizeof_; int main () { -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; +test_array [0] = 0 + ; return 0; } @@ -24367,53 +23373,13 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_char=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_char=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_char" >&5 -echo "${ECHO_T}$ac_cv_type_char" >&6; } - -{ echo "$as_me:$LINENO: checking size of char" >&5 -echo $ECHO_N "checking size of char... $ECHO_C" >&6; } -if test "${ac_cv_sizeof_char+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$ac_cv_type_char" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -24421,11 +23387,11 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char ac__type_sizeof_; + typedef char ac__type_sizeof_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; test_array [0] = 0 ; @@ -24445,30 +23411,40 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -24476,7 +23452,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char ac__type_sizeof_; + typedef char ac__type_sizeof_; int main () { @@ -24500,236 +23476,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$db_includes - - typedef char ac__type_sizeof_; -int -main () -{ -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$db_includes - - typedef char ac__type_sizeof_; -int -main () -{ -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_lo= ac_hi= -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$db_includes - - typedef char ac__type_sizeof_; -int -main () -{ -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -24742,11 +23492,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_char=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (char) +'') if test "$ac_cv_type_char" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (char) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (char) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_char=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -24757,7 +23511,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char ac__type_sizeof_; + typedef char ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -24816,21 +23570,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (char) +if test "$ac_cv_type_char" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (char) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (char) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_char=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_char=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_char" >&5 echo "${ECHO_T}$ac_cv_sizeof_char" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_CHAR $ac_cv_sizeof_char _ACEOF @@ -24874,27 +23632,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_char=yes else echo "$as_me: failed program was:" >&5 @@ -24908,16 +23649,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_char" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_char" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of unsigned char" >&5 echo $ECHO_N "checking size of unsigned char... $ECHO_C" >&6; } if test "${ac_cv_sizeof_unsigned_char+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_unsigned_char" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -24928,7 +23668,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; int main () { @@ -24952,27 +23692,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -24983,7 +23706,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; int main () { @@ -25007,27 +23730,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -25055,7 +23761,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; int main () { @@ -25079,27 +23785,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -25110,7 +23799,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; int main () { @@ -25134,27 +23823,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -25192,7 +23864,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; int main () { @@ -25216,27 +23888,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -25249,11 +23904,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_unsigned_char=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned char) +'') if test "$ac_cv_type_unsigned_char" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned char) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned char) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_char=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -25264,7 +23923,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned char ac__type_sizeof_; + typedef unsigned char ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -25323,21 +23982,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned char) +if test "$ac_cv_type_unsigned_char" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned char) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned char) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_char=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_unsigned_char=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_char" >&5 echo "${ECHO_T}$ac_cv_sizeof_unsigned_char" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_UNSIGNED_CHAR $ac_cv_sizeof_unsigned_char _ACEOF @@ -25381,27 +24044,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_short=yes else echo "$as_me: failed program was:" >&5 @@ -25415,16 +24061,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_short" >&5 echo "${ECHO_T}$ac_cv_type_short" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of short" >&5 echo $ECHO_N "checking size of short... $ECHO_C" >&6; } if test "${ac_cv_sizeof_short+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_short" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -25435,7 +24080,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; int main () { @@ -25459,27 +24104,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -25490,7 +24118,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; int main () { @@ -25514,27 +24142,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -25562,7 +24173,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; int main () { @@ -25586,27 +24197,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -25617,7 +24211,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; int main () { @@ -25641,27 +24235,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -25699,7 +24276,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; int main () { @@ -25723,27 +24300,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -25756,11 +24316,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_short=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (short) +'') if test "$ac_cv_type_short" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (short) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (short) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_short=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -25771,7 +24335,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef short ac__type_sizeof_; + typedef short ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -25830,21 +24394,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (short) +if test "$ac_cv_type_short" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (short) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (short) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_short=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_short=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_short" >&5 echo "${ECHO_T}$ac_cv_sizeof_short" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_SHORT $ac_cv_sizeof_short _ACEOF @@ -25888,27 +24456,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_short=yes else echo "$as_me: failed program was:" >&5 @@ -25922,16 +24473,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_short" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_short" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of unsigned short" >&5 echo $ECHO_N "checking size of unsigned short... $ECHO_C" >&6; } if test "${ac_cv_sizeof_unsigned_short+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_unsigned_short" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -25942,7 +24492,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; int main () { @@ -25966,27 +24516,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -25997,7 +24530,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; int main () { @@ -26021,27 +24554,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -26069,7 +24585,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; int main () { @@ -26093,27 +24609,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -26124,7 +24623,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; int main () { @@ -26148,27 +24647,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -26206,7 +24688,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; int main () { @@ -26230,27 +24712,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -26263,11 +24728,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_unsigned_short=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned short) +'') if test "$ac_cv_type_unsigned_short" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned short) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned short) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_short=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -26278,7 +24747,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned short ac__type_sizeof_; + typedef unsigned short ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -26337,21 +24806,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned short) +if test "$ac_cv_type_unsigned_short" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned short) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned short) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_short=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_unsigned_short=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_short" >&5 echo "${ECHO_T}$ac_cv_sizeof_unsigned_short" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_UNSIGNED_SHORT $ac_cv_sizeof_unsigned_short _ACEOF @@ -26395,27 +24868,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_int=yes else echo "$as_me: failed program was:" >&5 @@ -26429,16 +24885,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5 echo "${ECHO_T}$ac_cv_type_int" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of int" >&5 echo $ECHO_N "checking size of int... $ECHO_C" >&6; } if test "${ac_cv_sizeof_int+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_int" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -26449,7 +24904,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; int main () { @@ -26473,27 +24928,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -26504,7 +24942,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; int main () { @@ -26528,27 +24966,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -26576,7 +24997,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; int main () { @@ -26600,27 +25021,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -26631,7 +25035,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; int main () { @@ -26655,27 +25059,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -26713,7 +25100,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; int main () { @@ -26737,27 +25124,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -26770,11 +25140,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_int=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (int) +'') if test "$ac_cv_type_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (int) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (int) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_int=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -26785,7 +25159,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef int ac__type_sizeof_; + typedef int ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -26844,21 +25218,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (int) +if test "$ac_cv_type_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (int) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (int) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_int=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_int=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 echo "${ECHO_T}$ac_cv_sizeof_int" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_INT $ac_cv_sizeof_int _ACEOF @@ -26902,27 +25280,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_int=yes else echo "$as_me: failed program was:" >&5 @@ -26936,16 +25297,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_int" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_int" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of unsigned int" >&5 echo $ECHO_N "checking size of unsigned int... $ECHO_C" >&6; } if test "${ac_cv_sizeof_unsigned_int+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_unsigned_int" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -26956,7 +25316,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; int main () { @@ -26980,27 +25340,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -27011,7 +25354,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; int main () { @@ -27035,27 +25378,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -27083,7 +25409,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; int main () { @@ -27107,27 +25433,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -27138,7 +25447,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; int main () { @@ -27162,27 +25471,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -27220,7 +25512,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; int main () { @@ -27244,27 +25536,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -27277,11 +25552,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_unsigned_int=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int) +'') if test "$ac_cv_type_unsigned_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned int) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_int=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -27292,7 +25571,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned int ac__type_sizeof_; + typedef unsigned int ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -27351,21 +25630,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int) +if test "$ac_cv_type_unsigned_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned int) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_int=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_unsigned_int=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_int" >&5 echo "${ECHO_T}$ac_cv_sizeof_unsigned_int" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_UNSIGNED_INT $ac_cv_sizeof_unsigned_int _ACEOF @@ -27409,27 +25692,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_long=yes else echo "$as_me: failed program was:" >&5 @@ -27443,16 +25709,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_long" >&5 echo "${ECHO_T}$ac_cv_type_long" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of long" >&5 echo $ECHO_N "checking size of long... $ECHO_C" >&6; } if test "${ac_cv_sizeof_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_long" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -27463,7 +25728,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; int main () { @@ -27487,27 +25752,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -27518,7 +25766,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; int main () { @@ -27542,27 +25790,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -27590,7 +25821,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; int main () { @@ -27614,27 +25845,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -27645,7 +25859,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; int main () { @@ -27669,27 +25883,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -27727,7 +25924,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; int main () { @@ -27751,27 +25948,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -27784,11 +25964,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long) +'') if test "$ac_cv_type_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (long) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_long=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -27799,7 +25983,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long ac__type_sizeof_; + typedef long ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -27858,21 +26042,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long) +if test "$ac_cv_type_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (long) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_long=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_long=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5 echo "${ECHO_T}$ac_cv_sizeof_long" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_LONG $ac_cv_sizeof_long _ACEOF @@ -27916,27 +26104,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_long=yes else echo "$as_me: failed program was:" >&5 @@ -27950,16 +26121,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_long" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of unsigned long" >&5 echo $ECHO_N "checking size of unsigned long... $ECHO_C" >&6; } if test "${ac_cv_sizeof_unsigned_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_unsigned_long" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -27970,7 +26140,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; int main () { @@ -27994,27 +26164,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -28025,7 +26178,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; int main () { @@ -28049,27 +26202,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -28097,7 +26233,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; int main () { @@ -28121,27 +26257,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -28152,7 +26271,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; int main () { @@ -28176,27 +26295,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -28234,7 +26336,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; int main () { @@ -28258,27 +26360,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -28291,11 +26376,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_unsigned_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long) +'') if test "$ac_cv_type_unsigned_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned long) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_long=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -28306,7 +26395,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long ac__type_sizeof_; + typedef unsigned long ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -28365,21 +26454,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long) +if test "$ac_cv_type_unsigned_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned long) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_long=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_unsigned_long=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long" >&5 echo "${ECHO_T}$ac_cv_sizeof_unsigned_long" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_UNSIGNED_LONG $ac_cv_sizeof_unsigned_long _ACEOF @@ -28423,27 +26516,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_long_long=yes else echo "$as_me: failed program was:" >&5 @@ -28457,16 +26533,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 echo "${ECHO_T}$ac_cv_type_long_long" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of long long" >&5 echo $ECHO_N "checking size of long long... $ECHO_C" >&6; } if test "${ac_cv_sizeof_long_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_long_long" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -28477,7 +26552,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; int main () { @@ -28501,27 +26576,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -28532,7 +26590,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; int main () { @@ -28556,27 +26614,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -28604,7 +26645,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; int main () { @@ -28628,27 +26669,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -28659,7 +26683,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; int main () { @@ -28683,27 +26707,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -28741,7 +26748,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; int main () { @@ -28765,27 +26772,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -28798,11 +26788,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_long_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long) +'') if test "$ac_cv_type_long_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (long long) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_long_long=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -28813,7 +26807,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef long long ac__type_sizeof_; + typedef long long ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -28872,21 +26866,25 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long long) +if test "$ac_cv_type_long_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (long long) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_long_long=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_long_long=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5 echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long _ACEOF @@ -28930,27 +26928,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_long_long=yes else echo "$as_me: failed program was:" >&5 @@ -28964,16 +26945,15 @@ fi { echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6; } +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. { echo "$as_me:$LINENO: checking size of unsigned long long" >&5 echo $ECHO_N "checking size of unsigned long long... $ECHO_C" >&6; } if test "${ac_cv_sizeof_unsigned_long_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_unsigned_long_long" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -28984,7 +26964,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; int main () { @@ -29008,27 +26988,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -29039,7 +27002,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; int main () { @@ -29063,27 +27026,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -29111,7 +27057,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; int main () { @@ -29135,27 +27081,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -29166,7 +27095,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; int main () { @@ -29190,27 +27119,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -29248,7 +27160,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; int main () { @@ -29272,27 +27184,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -29305,11 +27200,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in ?*) ac_cv_sizeof_unsigned_long_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long long) +'') if test "$ac_cv_type_unsigned_long_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned long long) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_long_long=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -29320,7 +27219,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef unsigned long long ac__type_sizeof_; + typedef unsigned long long ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -29379,29 +27278,33 @@ echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long long) +if test "$ac_cv_type_unsigned_long_long" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long long) See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute sizeof (unsigned long long) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_unsigned_long_long=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_unsigned_long_long=0 -fi fi { echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long_long" >&5 echo "${ECHO_T}$ac_cv_sizeof_unsigned_long_long" >&6; } + + + cat >>confdefs.h <<_ACEOF #define SIZEOF_UNSIGNED_LONG_LONG $ac_cv_sizeof_unsigned_long_long _ACEOF -{ echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } -if test "${ac_cv_type_size_t+set}" = set; then +{ echo "$as_me:$LINENO: checking for char *" >&5 +echo $ECHO_N "checking for char *... $ECHO_C" >&6; } +if test "${ac_cv_type_char_p+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -29412,7 +27315,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef size_t ac__type_new_; +typedef char * ac__type_new_; int main () { @@ -29437,50 +27340,32 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_size_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_char_p=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_size_t=no + ac_cv_type_char_p=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6; } +{ echo "$as_me:$LINENO: result: $ac_cv_type_char_p" >&5 +echo "${ECHO_T}$ac_cv_type_char_p" >&6; } -{ echo "$as_me:$LINENO: checking size of size_t" >&5 -echo $ECHO_N "checking size of size_t... $ECHO_C" >&6; } -if test "${ac_cv_sizeof_size_t+set}" = set; then +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ echo "$as_me:$LINENO: checking size of char *" >&5 +echo $ECHO_N "checking size of char *... $ECHO_C" >&6; } +if test "${ac_cv_sizeof_char_p+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_size_t" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. if test "$cross_compiling" = yes; then # Depending upon the size, compute the lo and hi bounds. cat >conftest.$ac_ext <<_ACEOF @@ -29491,7 +27376,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; int main () { @@ -29515,27 +27400,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=0 ac_mid=0 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -29546,7 +27414,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; int main () { @@ -29570,27 +27438,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -29618,7 +27469,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; int main () { @@ -29642,27 +27493,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=-1 ac_mid=-1 while :; do cat >conftest.$ac_ext <<_ACEOF @@ -29673,7 +27507,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; int main () { @@ -29697,27 +27531,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 @@ -29755,7 +27572,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; int main () { @@ -29779,27 +27596,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_hi=$ac_mid else echo "$as_me: failed program was:" >&5 @@ -29811,12 +27611,16 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext done case $ac_lo in -?*) ac_cv_sizeof_size_t=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (size_t) +?*) ac_cv_sizeof_char_p=$ac_lo;; +'') if test "$ac_cv_type_char_p" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (char *) See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (size_t) +echo "$as_me: error: cannot compute sizeof (char *) See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_char_p=0 + fi ;; esac else cat >conftest.$ac_ext <<_ACEOF @@ -29827,7 +27631,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef size_t ac__type_sizeof_; + typedef char * ac__type_sizeof_; static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } #include @@ -29879,36 +27683,44 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_sizeof_size_t=`cat conftest.val` + ac_cv_sizeof_char_p=`cat conftest.val` else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (size_t) +if test "$ac_cv_type_char_p" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (char *) See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (size_t) +echo "$as_me: error: cannot compute sizeof (char *) See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } + else + ac_cv_sizeof_char_p=0 + fi fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.val -else - ac_cv_sizeof_size_t=0 fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_size_t" >&5 -echo "${ECHO_T}$ac_cv_sizeof_size_t" >&6; } +{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_char_p" >&5 +echo "${ECHO_T}$ac_cv_sizeof_char_p" >&6; } + + + cat >>confdefs.h <<_ACEOF -#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t +#define SIZEOF_CHAR_P $ac_cv_sizeof_char_p _ACEOF -{ echo "$as_me:$LINENO: checking for char *" >&5 -echo $ECHO_N "checking for char *... $ECHO_C" >&6; } -if test "${ac_cv_type_char_p+set}" = set; then + +# We look for u_char, u_short, u_int, u_long -- if we can't find them, +# we create our own. + +{ echo "$as_me:$LINENO: checking for u_char" >&5 +echo $ECHO_N "checking for u_char... $ECHO_C" >&6; } +if test "${ac_cv_type_u_char+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -29919,7 +27731,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef char * ac__type_new_; +typedef u_char ac__type_new_; int main () { @@ -29944,53 +27756,36 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_char_p=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_char=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_char_p=no + ac_cv_type_u_char=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_char_p" >&5 -echo "${ECHO_T}$ac_cv_type_char_p" >&6; } +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_char" >&5 +echo "${ECHO_T}$ac_cv_type_u_char" >&6; } +if test $ac_cv_type_u_char = yes; then + : +else + u_char_decl="typedef unsigned char u_char;" +fi -{ echo "$as_me:$LINENO: checking size of char *" >&5 -echo $ECHO_N "checking size of char *... $ECHO_C" >&6; } -if test "${ac_cv_sizeof_char_p+set}" = set; then + + +{ echo "$as_me:$LINENO: checking for u_short" >&5 +echo $ECHO_N "checking for u_short... $ECHO_C" >&6; } +if test "${ac_cv_type_u_short+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test "$ac_cv_type_char_p" = yes; then - # The cast to long int works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -29998,13 +27793,14 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; +typedef u_short ac__type_new_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; -test_array [0] = 0 - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -30022,30 +27818,36 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_short=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_short=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_short" >&5 +echo "${ECHO_T}$ac_cv_type_u_short" >&6; } +if test $ac_cv_type_u_short = yes; then + : +else + u_short_decl="typedef unsigned short u_short;" +fi + + + +{ echo "$as_me:$LINENO: checking for u_int" >&5 +echo $ECHO_N "checking for u_int... $ECHO_C" >&6; } +if test "${ac_cv_type_u_int+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -30053,13 +27855,14 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; +typedef u_int ac__type_new_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; -test_array [0] = 0 - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -30077,47 +27880,36 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_int=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` + ac_cv_type_u_int=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int" >&5 +echo "${ECHO_T}$ac_cv_type_u_int" >&6; } +if test $ac_cv_type_u_int = yes; then + : else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + u_int_decl="typedef unsigned int u_int;" +fi - cat >conftest.$ac_ext <<_ACEOF + + +{ echo "$as_me:$LINENO: checking for u_long" >&5 +echo $ECHO_N "checking for u_long... $ECHO_C" >&6; } +if test "${ac_cv_type_u_long+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -30125,13 +27917,14 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; +typedef u_long ac__type_new_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; -test_array [0] = 0 - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -30149,30 +27942,37 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_long=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_long=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_long" >&5 +echo "${ECHO_T}$ac_cv_type_u_long" >&6; } +if test $ac_cv_type_u_long = yes; then + : +else + u_long_decl="typedef unsigned long u_long;" +fi + + +# We look for fixed-size variants of u_char, u_short, u_int, u_long as well. + +{ echo "$as_me:$LINENO: checking for u_int8_t" >&5 +echo $ECHO_N "checking for u_int8_t... $ECHO_C" >&6; } +if test "${ac_cv_type_u_int8_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -30180,13 +27980,14 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; +typedef u_int8_t ac__type_new_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; -test_array [0] = 0 - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -30204,56 +28005,53 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_int8_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` + ac_cv_type_u_int8_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int8_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int8_t" >&6; } +if test $ac_cv_type_u_int8_t = yes; then + : else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_lo= ac_hi= + case "1" in + "$ac_cv_sizeof_unsigned_int") + u_int8_decl="typedef unsigned int u_int8_t;";; + "$ac_cv_sizeof_unsigned_char") + u_int8_decl="typedef unsigned char u_int8_t;";; + "$ac_cv_sizeof_unsigned_short") + u_int8_decl="typedef unsigned short u_int8_t;";; + "$ac_cv_sizeof_unsigned_long") + u_int8_decl="typedef unsigned long u_int8_t;";; + "$ac_cv_sizeof_unsigned_long_long") + u_int8_decl="typedef unsigned long long u_int8_t;";; + *) + if test "" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No unsigned 1-byte integral type" >&5 +echo "$as_me: error: No unsigned 1-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + +{ echo "$as_me:$LINENO: checking for u_int16_t" >&5 +echo $ECHO_N "checking for u_int16_t... $ECHO_C" >&6; } +if test "${ac_cv_type_u_int16_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -30262,13 +28060,14 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; +typedef u_int16_t ac__type_new_; int main () { -static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; -test_array [0] = 0 - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -30286,45 +28085,52 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_int16_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_lo=`expr '(' $ac_mid ')' + 1` + ac_cv_type_u_int16_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) ac_cv_sizeof_char_p=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (char *) -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (char *) -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } ;; -esac +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int16_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int16_t" >&6; } +if test $ac_cv_type_u_int16_t = yes; then + : +else + + case "2" in + "$ac_cv_sizeof_unsigned_int") + u_int16_decl="typedef unsigned int u_int16_t;";; + "$ac_cv_sizeof_unsigned_char") + u_int16_decl="typedef unsigned char u_int16_t;";; + "$ac_cv_sizeof_unsigned_short") + u_int16_decl="typedef unsigned short u_int16_t;";; + "$ac_cv_sizeof_unsigned_long") + u_int16_decl="typedef unsigned long u_int16_t;";; + "$ac_cv_sizeof_unsigned_long_long") + u_int16_decl="typedef unsigned long long u_int16_t;";; + *) + if test "" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No unsigned 2-byte integral type" >&5 +echo "$as_me: error: No unsigned 2-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac +fi + + + +{ echo "$as_me:$LINENO: checking for int16_t" >&5 +echo $ECHO_N "checking for int16_t... $ECHO_C" >&6; } +if test "${ac_cv_type_int16_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -30334,92 +28140,76 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes - typedef char * ac__type_sizeof_; -static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } -static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } -#include -#include +typedef int16_t ac__type_new_; int main () { - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - return 1; - if (((long int) (sizeof (ac__type_sizeof_))) < 0) - { - long int i = longval (); - if (i != ((long int) (sizeof (ac__type_sizeof_)))) - return 1; - fprintf (f, "%ld\n", i); - } - else - { - unsigned long int i = ulongval (); - if (i != ((long int) (sizeof (ac__type_sizeof_)))) - return 1; - fprintf (f, "%lu\n", i); - } - return ferror (f) || fclose (f) != 0; - +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sizeof_char_p=`cat conftest.val` + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_int16_t=yes else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 + echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (char *) -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (char *) -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } + ac_cv_type_int16_t=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest.val +{ echo "$as_me:$LINENO: result: $ac_cv_type_int16_t" >&5 +echo "${ECHO_T}$ac_cv_type_int16_t" >&6; } +if test $ac_cv_type_int16_t = yes; then + : else - ac_cv_sizeof_char_p=0 -fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_char_p" >&5 -echo "${ECHO_T}$ac_cv_sizeof_char_p" >&6; } -cat >>confdefs.h <<_ACEOF -#define SIZEOF_CHAR_P $ac_cv_sizeof_char_p -_ACEOF + case "2" in + "$ac_cv_sizeof_int") + int16_decl="typedef int int16_t;";; + "$ac_cv_sizeof_char") + int16_decl="typedef char int16_t;";; + "$ac_cv_sizeof_short") + int16_decl="typedef short int16_t;";; + "$ac_cv_sizeof_long") + int16_decl="typedef long int16_t;";; + "$ac_cv_sizeof_long_long") + int16_decl="typedef long long int16_t;";; + *) + if test "" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No signed 2-byte integral type" >&5 +echo "$as_me: error: No signed 2-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac +fi -# We look for u_char, u_short, u_int, u_long -- if we can't find them, -# we create our own. -{ echo "$as_me:$LINENO: checking for u_char" >&5 -echo $ECHO_N "checking for u_char... $ECHO_C" >&6; } -if test "${ac_cv_type_u_char+set}" = set; then +{ echo "$as_me:$LINENO: checking for u_int32_t" >&5 +echo $ECHO_N "checking for u_int32_t... $ECHO_C" >&6; } +if test "${ac_cv_type_u_int32_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30430,7 +28220,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_char ac__type_new_; +typedef u_int32_t ac__type_new_; int main () { @@ -30455,50 +28245,51 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_char=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_int32_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_char=no + ac_cv_type_u_int32_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_char" >&5 -echo "${ECHO_T}$ac_cv_type_u_char" >&6; } -if test $ac_cv_type_u_char = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int32_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int32_t" >&6; } +if test $ac_cv_type_u_int32_t = yes; then : else - u_char_decl="typedef unsigned char u_char;" + + case "4" in + "$ac_cv_sizeof_unsigned_int") + u_int32_decl="typedef unsigned int u_int32_t;";; + "$ac_cv_sizeof_unsigned_char") + u_int32_decl="typedef unsigned char u_int32_t;";; + "$ac_cv_sizeof_unsigned_short") + u_int32_decl="typedef unsigned short u_int32_t;";; + "$ac_cv_sizeof_unsigned_long") + u_int32_decl="typedef unsigned long u_int32_t;";; + "$ac_cv_sizeof_unsigned_long_long") + u_int32_decl="typedef unsigned long long u_int32_t;";; + *) + if test "" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No unsigned 4-byte integral type" >&5 +echo "$as_me: error: No unsigned 4-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac fi -{ echo "$as_me:$LINENO: checking for u_short" >&5 -echo $ECHO_N "checking for u_short... $ECHO_C" >&6; } -if test "${ac_cv_type_u_short+set}" = set; then +{ echo "$as_me:$LINENO: checking for int32_t" >&5 +echo $ECHO_N "checking for int32_t... $ECHO_C" >&6; } +if test "${ac_cv_type_int32_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30509,7 +28300,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_short ac__type_new_; +typedef int32_t ac__type_new_; int main () { @@ -30534,50 +28325,51 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_short=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_int32_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_short=no + ac_cv_type_int32_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_short" >&5 -echo "${ECHO_T}$ac_cv_type_u_short" >&6; } -if test $ac_cv_type_u_short = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_int32_t" >&5 +echo "${ECHO_T}$ac_cv_type_int32_t" >&6; } +if test $ac_cv_type_int32_t = yes; then : else - u_short_decl="typedef unsigned short u_short;" + + case "4" in + "$ac_cv_sizeof_int") + int32_decl="typedef int int32_t;";; + "$ac_cv_sizeof_char") + int32_decl="typedef char int32_t;";; + "$ac_cv_sizeof_short") + int32_decl="typedef short int32_t;";; + "$ac_cv_sizeof_long") + int32_decl="typedef long int32_t;";; + "$ac_cv_sizeof_long_long") + int32_decl="typedef long long int32_t;";; + *) + if test "" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No signed 4-byte integral type" >&5 +echo "$as_me: error: No signed 4-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac fi -{ echo "$as_me:$LINENO: checking for u_int" >&5 -echo $ECHO_N "checking for u_int... $ECHO_C" >&6; } -if test "${ac_cv_type_u_int+set}" = set; then +{ echo "$as_me:$LINENO: checking for u_int64_t" >&5 +echo $ECHO_N "checking for u_int64_t... $ECHO_C" >&6; } +if test "${ac_cv_type_u_int64_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30588,7 +28380,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_int ac__type_new_; +typedef u_int64_t ac__type_new_; int main () { @@ -30613,50 +28405,51 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_int=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_u_int64_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_int=no + ac_cv_type_u_int64_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int" >&5 -echo "${ECHO_T}$ac_cv_type_u_int" >&6; } -if test $ac_cv_type_u_int = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int64_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int64_t" >&6; } +if test $ac_cv_type_u_int64_t = yes; then : else - u_int_decl="typedef unsigned int u_int;" + + case "8" in + "$ac_cv_sizeof_unsigned_int") + u_int64_decl="typedef unsigned int u_int64_t;";; + "$ac_cv_sizeof_unsigned_char") + u_int64_decl="typedef unsigned char u_int64_t;";; + "$ac_cv_sizeof_unsigned_short") + u_int64_decl="typedef unsigned short u_int64_t;";; + "$ac_cv_sizeof_unsigned_long") + u_int64_decl="typedef unsigned long u_int64_t;";; + "$ac_cv_sizeof_unsigned_long_long") + u_int64_decl="typedef unsigned long long u_int64_t;";; + *) + if test "notfatal" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No unsigned 8-byte integral type" >&5 +echo "$as_me: error: No unsigned 8-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac fi -{ echo "$as_me:$LINENO: checking for u_long" >&5 -echo $ECHO_N "checking for u_long... $ECHO_C" >&6; } -if test "${ac_cv_type_u_long+set}" = set; then +{ echo "$as_me:$LINENO: checking for int64_t" >&5 +echo $ECHO_N "checking for int64_t... $ECHO_C" >&6; } +if test "${ac_cv_type_int64_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30667,7 +28460,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_long ac__type_new_; +typedef int64_t ac__type_new_; int main () { @@ -30692,51 +28485,54 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_long=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_int64_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_long=no + ac_cv_type_int64_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_long" >&5 -echo "${ECHO_T}$ac_cv_type_u_long" >&6; } -if test $ac_cv_type_u_long = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_int64_t" >&5 +echo "${ECHO_T}$ac_cv_type_int64_t" >&6; } +if test $ac_cv_type_int64_t = yes; then : else - u_long_decl="typedef unsigned long u_long;" + + case "8" in + "$ac_cv_sizeof_int") + int64_decl="typedef int int64_t;";; + "$ac_cv_sizeof_char") + int64_decl="typedef char int64_t;";; + "$ac_cv_sizeof_short") + int64_decl="typedef short int64_t;";; + "$ac_cv_sizeof_long") + int64_decl="typedef long int64_t;";; + "$ac_cv_sizeof_long_long") + int64_decl="typedef long long int64_t;";; + *) + if test "notfatal" != "notfatal"; then + { { echo "$as_me:$LINENO: error: No signed 8-byte integral type" >&5 +echo "$as_me: error: No signed 8-byte integral type" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac fi -# We look for fixed-size variants of u_char, u_short, u_int, u_long as well. +# No currently autoconf'd systems lack FILE, off_t pid_t, size_t, time_t. +# +# We require them, we don't try to substitute our own if we can't find them. -{ echo "$as_me:$LINENO: checking for u_int8_t" >&5 -echo $ECHO_N "checking for u_int8_t... $ECHO_C" >&6; } -if test "${ac_cv_type_u_int8_t+set}" = set; then +{ echo "$as_me:$LINENO: checking for FILE" >&5 +echo $ECHO_N "checking for FILE... $ECHO_C" >&6; } +if test "${ac_cv_type_FILE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30747,7 +28543,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_int8_t ac__type_new_; +typedef FILE ac__type_new_; int main () { @@ -30772,68 +28568,34 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_int8_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_FILE=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_int8_t=no + ac_cv_type_FILE=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int8_t" >&5 -echo "${ECHO_T}$ac_cv_type_u_int8_t" >&6; } -if test $ac_cv_type_u_int8_t = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_FILE" >&5 +echo "${ECHO_T}$ac_cv_type_FILE" >&6; } +if test $ac_cv_type_FILE = yes; then : else - - case "1" in - "$ac_cv_sizeof_unsigned_int") - u_int8_decl="typedef unsigned int u_int8_t;";; - "$ac_cv_sizeof_unsigned_char") - u_int8_decl="typedef unsigned char u_int8_t;";; - "$ac_cv_sizeof_unsigned_short") - u_int8_decl="typedef unsigned short u_int8_t;";; - "$ac_cv_sizeof_unsigned_long") - u_int8_decl="typedef unsigned long u_int8_t;";; - "$ac_cv_sizeof_unsigned_long_long") - u_int8_decl="typedef unsigned long long u_int8_t;";; - *) - if test "" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No unsigned 1-byte integral type" >&5 -echo "$as_me: error: No unsigned 1-byte integral type" >&2;} + { { echo "$as_me:$LINENO: error: No FILE type." >&5 +echo "$as_me: error: No FILE type." >&2;} { (exit 1); exit 1; }; } - fi;; - esac fi - -{ echo "$as_me:$LINENO: checking for u_int16_t" >&5 -echo $ECHO_N "checking for u_int16_t... $ECHO_C" >&6; } -if test "${ac_cv_type_u_int16_t+set}" = set; then +{ echo "$as_me:$LINENO: checking for off_t" >&5 +echo $ECHO_N "checking for off_t... $ECHO_C" >&6; } +if test "${ac_cv_type_off_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30844,7 +28606,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_int16_t ac__type_new_; +typedef off_t ac__type_new_; int main () { @@ -30869,68 +28631,34 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_int16_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_off_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_int16_t=no + ac_cv_type_off_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int16_t" >&5 -echo "${ECHO_T}$ac_cv_type_u_int16_t" >&6; } -if test $ac_cv_type_u_int16_t = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 +echo "${ECHO_T}$ac_cv_type_off_t" >&6; } +if test $ac_cv_type_off_t = yes; then : else - - case "2" in - "$ac_cv_sizeof_unsigned_int") - u_int16_decl="typedef unsigned int u_int16_t;";; - "$ac_cv_sizeof_unsigned_char") - u_int16_decl="typedef unsigned char u_int16_t;";; - "$ac_cv_sizeof_unsigned_short") - u_int16_decl="typedef unsigned short u_int16_t;";; - "$ac_cv_sizeof_unsigned_long") - u_int16_decl="typedef unsigned long u_int16_t;";; - "$ac_cv_sizeof_unsigned_long_long") - u_int16_decl="typedef unsigned long long u_int16_t;";; - *) - if test "" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No unsigned 2-byte integral type" >&5 -echo "$as_me: error: No unsigned 2-byte integral type" >&2;} + { { echo "$as_me:$LINENO: error: No off_t type." >&5 +echo "$as_me: error: No off_t type." >&2;} { (exit 1); exit 1; }; } - fi;; - esac fi - -{ echo "$as_me:$LINENO: checking for int16_t" >&5 -echo $ECHO_N "checking for int16_t... $ECHO_C" >&6; } -if test "${ac_cv_type_int16_t+set}" = set; then +{ echo "$as_me:$LINENO: checking for pid_t" >&5 +echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; } +if test "${ac_cv_type_pid_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30941,7 +28669,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef int16_t ac__type_new_; +typedef pid_t ac__type_new_; int main () { @@ -30966,68 +28694,34 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_int16_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_pid_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_int16_t=no + ac_cv_type_pid_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_int16_t" >&5 -echo "${ECHO_T}$ac_cv_type_int16_t" >&6; } -if test $ac_cv_type_int16_t = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 +echo "${ECHO_T}$ac_cv_type_pid_t" >&6; } +if test $ac_cv_type_pid_t = yes; then : else - - case "2" in - "$ac_cv_sizeof_int") - int16_decl="typedef int int16_t;";; - "$ac_cv_sizeof_char") - int16_decl="typedef char int16_t;";; - "$ac_cv_sizeof_short") - int16_decl="typedef short int16_t;";; - "$ac_cv_sizeof_long") - int16_decl="typedef long int16_t;";; - "$ac_cv_sizeof_long_long") - int16_decl="typedef long long int16_t;";; - *) - if test "" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No signed 2-byte integral type" >&5 -echo "$as_me: error: No signed 2-byte integral type" >&2;} + { { echo "$as_me:$LINENO: error: No pid_t type." >&5 +echo "$as_me: error: No pid_t type." >&2;} { (exit 1); exit 1; }; } - fi;; - esac fi - -{ echo "$as_me:$LINENO: checking for u_int32_t" >&5 -echo $ECHO_N "checking for u_int32_t... $ECHO_C" >&6; } -if test "${ac_cv_type_u_int32_t+set}" = set; then +{ echo "$as_me:$LINENO: checking for size_t" >&5 +echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } +if test "${ac_cv_type_size_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -31038,7 +28732,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_int32_t ac__type_new_; +typedef size_t ac__type_new_; int main () { @@ -31063,68 +28757,99 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_size_t=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_size_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +echo "${ECHO_T}$ac_cv_type_size_t" >&6; } +if test $ac_cv_type_size_t = yes; then + : +else + { { echo "$as_me:$LINENO: error: No size_t type." >&5 +echo "$as_me: error: No size_t type." >&2;} + { (exit 1); exit 1; }; } +fi + + +{ echo "$as_me:$LINENO: checking for time_t" >&5 +echo $ECHO_N "checking for time_t... $ECHO_C" >&6; } +if test "${ac_cv_type_time_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + +typedef time_t ac__type_new_; +int +main () +{ +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_int32_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_time_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_int32_t=no + ac_cv_type_time_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int32_t" >&5 -echo "${ECHO_T}$ac_cv_type_u_int32_t" >&6; } -if test $ac_cv_type_u_int32_t = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_time_t" >&5 +echo "${ECHO_T}$ac_cv_type_time_t" >&6; } +if test $ac_cv_type_time_t = yes; then : else - - case "4" in - "$ac_cv_sizeof_unsigned_int") - u_int32_decl="typedef unsigned int u_int32_t;";; - "$ac_cv_sizeof_unsigned_char") - u_int32_decl="typedef unsigned char u_int32_t;";; - "$ac_cv_sizeof_unsigned_short") - u_int32_decl="typedef unsigned short u_int32_t;";; - "$ac_cv_sizeof_unsigned_long") - u_int32_decl="typedef unsigned long u_int32_t;";; - "$ac_cv_sizeof_unsigned_long_long") - u_int32_decl="typedef unsigned long long u_int32_t;";; - *) - if test "" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No unsigned 4-byte integral type" >&5 -echo "$as_me: error: No unsigned 4-byte integral type" >&2;} + { { echo "$as_me:$LINENO: error: No time_t type." >&5 +echo "$as_me: error: No time_t type." >&2;} { (exit 1); exit 1; }; } - fi;; - esac fi - -{ echo "$as_me:$LINENO: checking for int32_t" >&5 -echo $ECHO_N "checking for int32_t... $ECHO_C" >&6; } -if test "${ac_cv_type_int32_t+set}" = set; then +# Check for ssize_t -- if none exists, find a signed integral type that's +# the same size as a size_t. +{ echo "$as_me:$LINENO: checking for size_t" >&5 +echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } +if test "${ac_cv_type_size_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -31135,14 +28860,112 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef int32_t ac__type_new_; +typedef size_t ac__type_new_; +int +main () +{ +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_size_t=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_size_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +echo "${ECHO_T}$ac_cv_type_size_t" >&6; } + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ echo "$as_me:$LINENO: checking size of size_t" >&5 +echo $ECHO_N "checking size of size_t... $ECHO_C" >&6; } +if test "${ac_cv_sizeof_size_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + + typedef size_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + + typedef size_t ac__type_sizeof_; int main () { -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -31160,71 +28983,30 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_int32_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_int32_t=no + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_int32_t" >&5 -echo "${ECHO_T}$ac_cv_type_int32_t" >&6; } -if test $ac_cv_type_int32_t = yes; then - : + done else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - case "4" in - "$ac_cv_sizeof_int") - int32_decl="typedef int int32_t;";; - "$ac_cv_sizeof_char") - int32_decl="typedef char int32_t;";; - "$ac_cv_sizeof_short") - int32_decl="typedef short int32_t;";; - "$ac_cv_sizeof_long") - int32_decl="typedef long int32_t;";; - "$ac_cv_sizeof_long_long") - int32_decl="typedef long long int32_t;";; - *) - if test "" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No signed 4-byte integral type" >&5 -echo "$as_me: error: No signed 4-byte integral type" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac -fi - - - -{ echo "$as_me:$LINENO: checking for u_int64_t" >&5 -echo $ECHO_N "checking for u_int64_t... $ECHO_C" >&6; } -if test "${ac_cv_type_u_int64_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -31232,14 +29014,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef u_int64_t ac__type_new_; + typedef size_t ac__type_sizeof_; int main () { -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; +test_array [0] = 0 + ; return 0; } @@ -31257,70 +29038,77 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + + typedef size_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_u_int64_t=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_u_int64_t=no + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_u_int64_t" >&5 -echo "${ECHO_T}$ac_cv_type_u_int64_t" >&6; } -if test $ac_cv_type_u_int64_t = yes; then - : + done else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 - case "8" in - "$ac_cv_sizeof_unsigned_int") - u_int64_decl="typedef unsigned int u_int64_t;";; - "$ac_cv_sizeof_unsigned_char") - u_int64_decl="typedef unsigned char u_int64_t;";; - "$ac_cv_sizeof_unsigned_short") - u_int64_decl="typedef unsigned short u_int64_t;";; - "$ac_cv_sizeof_unsigned_long") - u_int64_decl="typedef unsigned long u_int64_t;";; - "$ac_cv_sizeof_unsigned_long_long") - u_int64_decl="typedef unsigned long long u_int64_t;";; - *) - if test "notfatal" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No unsigned 8-byte integral type" >&5 -echo "$as_me: error: No unsigned 8-byte integral type" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac + ac_lo= ac_hi= fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi - -{ echo "$as_me:$LINENO: checking for int64_t" >&5 -echo $ECHO_N "checking for int64_t... $ECHO_C" >&6; } -if test "${ac_cv_type_int64_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -31329,14 +29117,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $db_includes -typedef int64_t ac__type_new_; + typedef size_t ac__type_sizeof_; int main () { -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + ; return 0; } @@ -31354,18 +29141,84 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_size_t=$ac_lo;; +'') if test "$ac_cv_type_size_t" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (size_t) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (size_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_size_t=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$db_includes + + typedef size_t ac__type_sizeof_; +static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } +static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (ac__type_sizeof_))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%ld\n", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%lu\n", i); + } + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; @@ -31375,45 +29228,37 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_int64_t=yes + ac_cv_sizeof_size_t=`cat conftest.val` else - echo "$as_me: failed program was:" >&5 + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_type_int64_t=no +( exit $ac_status ) +if test "$ac_cv_type_size_t" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (size_t) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (size_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_size_t=0 + fi fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_int64_t" >&5 -echo "${ECHO_T}$ac_cv_type_int64_t" >&6; } -if test $ac_cv_type_int64_t = yes; then - : -else - - case "8" in - "$ac_cv_sizeof_int") - int64_decl="typedef int int64_t;";; - "$ac_cv_sizeof_char") - int64_decl="typedef char int64_t;";; - "$ac_cv_sizeof_short") - int64_decl="typedef short int64_t;";; - "$ac_cv_sizeof_long") - int64_decl="typedef long int64_t;";; - "$ac_cv_sizeof_long_long") - int64_decl="typedef long long int64_t;";; - *) - if test "notfatal" != "notfatal"; then - { { echo "$as_me:$LINENO: error: No signed 8-byte integral type" >&5 -echo "$as_me: error: No signed 8-byte integral type" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac +rm -f conftest.val fi +{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_size_t" >&5 +echo "${ECHO_T}$ac_cv_sizeof_size_t" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t +_ACEOF -# Check for ssize_t -- if none exists, find a signed integral type that's -# the same size as a size_t. { echo "$as_me:$LINENO: checking for ssize_t" >&5 echo $ECHO_N "checking for ssize_t... $ECHO_C" >&6; } @@ -31453,27 +29298,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_ssize_t=yes else echo "$as_me: failed program was:" >&5 @@ -31511,9 +29339,6 @@ echo "$as_me: error: No signed $ac_cv_sizeof_size_t-byte integral type" >&2;} fi -# So far, no autoconf'd systems lack pid_t. - - # Check for uintmax_t -- if none exists, first the largest unsigned integral # type available. @@ -31554,27 +29379,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_uintmax_t=yes else echo "$as_me: failed program was:" >&5 @@ -31628,27 +29436,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_unsigned_long_long=yes else echo "$as_me: failed program was:" >&5 @@ -31710,27 +29501,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_uintptr_t=yes else echo "$as_me: failed program was:" >&5 @@ -31769,23 +29543,30 @@ fi -{ echo "$as_me:$LINENO: checking for ANSI C exit success/failure values" >&5 -echo $ECHO_N "checking for ANSI C exit success/failure values... $ECHO_C" >&6; } -if test "${db_cv_exit_defines+set}" = set; then + { echo "$as_me:$LINENO: checking for socklen_t" >&5 +echo $ECHO_N "checking for socklen_t... $ECHO_C" >&6; } +if test "${ac_cv_type_socklen_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - -cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include + #ifdef HAVE_SYS_SOCKET_H + #include + #endif + +typedef socklen_t ac__type_new_; int main () { -return (EXIT_SUCCESS); +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; ; return 0; } @@ -31803,27 +29584,140 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_socklen_t=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_socklen_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_socklen_t" >&5 +echo "${ECHO_T}$ac_cv_type_socklen_t" >&6; } +if test $ac_cv_type_socklen_t = yes; then + : +else + { echo "$as_me:$LINENO: checking for socklen_t equivalent" >&5 +echo $ECHO_N "checking for socklen_t equivalent... $ECHO_C" >&6; } + if test "${db_cv_socklen_t_equiv+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # Systems have either "struct sockaddr *" or + # "void *" as the second argument to getpeername + db_cv_socklen_t_equiv= + for arg2 in "struct sockaddr" void; do + for t in int size_t "unsigned int" "long int" "unsigned long int"; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + #include + + int getpeername (int, $arg2 *, $t *); +int +main () +{ +$t len; + getpeername (0, 0, &len); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_socklen_t_equiv="$t" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$db_cv_socklen_t_equiv" != "" && break + done + test "$db_cv_socklen_t_equiv" != "" && break + done + +fi + + if test "$db_cv_socklen_t_equiv" = ""; then + { { echo "$as_me:$LINENO: error: Cannot find a type to use in place of socklen_t" >&5 +echo "$as_me: error: Cannot find a type to use in place of socklen_t" >&2;} + { (exit 1); exit 1; }; } + fi + { echo "$as_me:$LINENO: result: $db_cv_socklen_t_equiv" >&5 +echo "${ECHO_T}$db_cv_socklen_t_equiv" >&6; } + +cat >>confdefs.h <<_ACEOF +#define socklen_t $db_cv_socklen_t_equiv +_ACEOF + +fi + + +{ echo "$as_me:$LINENO: checking for ANSI C exit success/failure values" >&5 +echo $ECHO_N "checking for ANSI C exit success/failure values... $ECHO_C" >&6; } +if test "${db_cv_exit_defines+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +return (EXIT_SUCCESS); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then db_cv_exit_defines=yes else echo "$as_me: failed program was:" >&5 @@ -31849,8 +29743,7 @@ fi # We do this first because it changes $LIBSO_LIBS. -# Mutexes we don't test for, but want the #defines to exist for -# other ports. +# Mutexes we don't test for, but want the #defines to exist for other ports. @@ -31862,61 +29755,70 @@ if test "${db_cv_mutex+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else -db_cv_mutex=no orig_libs=$LIBS -# User-specified POSIX or UI mutexes. -# -# There are two different reasons to specify mutexes: First, the application -# is already using one type of mutex and doesn't want to mix-and-match (for -# example, on Solaris, which has POSIX, UI and LWP mutexes). Second, the -# applications POSIX pthreads mutexes don't support inter-process locking, -# but the application wants to use them anyway (for example, some Linux and -# *BSD systems). -# -# Test for LWP threads before testing for UI/POSIX threads, we prefer them -# on Solaris, for two reasons: a bug in SunOS 5.7 causes applications to -# get pwrite, not pwrite64, if they load the C library before the appropriate -# threads library, e.g., tclsh using dlopen to load the DB library. Second, -# LWP mutexes are faster than POSIX pthread mutexes by some amount. -# -# Otherwise, test for POSIX threads before UI threads. There are Linux systems -# that support a UI compatibility mode, and applications are more likely to be -# written for POSIX threads than UI threads. -if test "$db_cv_posixmutexes" = yes; then - db_cv_mutex="posix_only"; -fi -if test "$db_cv_uimutexes" = yes; then - db_cv_mutex="ui_only"; +db_cv_mutex=no + +# Mutexes can be disabled. +if test "$db_cv_build_mutexsupport" = no; then + db_cv_mutex=disabled; fi # User-specified Win32 mutexes (MinGW build) -if test "$db_cv_mingw" = "yes"; then +if test "$db_cv_mingw" = yes; then db_cv_mutex=win32/gcc fi -# LWP threads: _lwp_XXX if test "$db_cv_mutex" = no; then -cat >conftest.$ac_ext <<_ACEOF + # User-specified POSIX or UI mutexes. + # + # There are two different reasons to specify mutexes: First, the + # application is already using one type of mutex and doesn't want + # to mix-and-match (for example, on Solaris, which has POSIX, UI + # and LWP mutexes). Second, the application's POSIX pthreads + # mutexes don't support inter-process locking, but the application + # wants to use them anyway (for example, some Linux and *BSD systems). + # + # Test for LWP threads before testing for UI/POSIX threads, we prefer + # them on Solaris, for two reasons: a bug in SunOS 5.7 causes + # applications to get pwrite, not pwrite64, if they load the C library + # before the appropriate threads library, e.g., tclsh using dlopen to + # load the DB library. Second, LWP mutexes are faster than POSIX + # pthread mutexes by some amount. + # + # Otherwise, test for POSIX threads before UI threads. There are Linux + # systems that support a UI compatibility mode, and applications are + # more likely to be written for POSIX threads than UI threads. + + if test "$db_cv_posixmutexes" = yes; then + db_cv_mutex=posix_only; + fi + if test "$db_cv_uimutexes" = yes; then + db_cv_mutex=ui_only; + fi + + # LWP threads: _lwp_XXX + if test "$db_cv_mutex" = no; then + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include + #include int main () { - static lwp_mutex_t mi = SHAREDMUTEX; - static lwp_cond_t ci = SHAREDCV; - lwp_mutex_t mutex = mi; - lwp_cond_t cond = ci; - exit ( - _lwp_mutex_lock(&mutex) || - _lwp_mutex_unlock(&mutex)); + static lwp_mutex_t mi = SHAREDMUTEX; + static lwp_cond_t ci = SHAREDCV; + lwp_mutex_t mutex = mi; + lwp_cond_t cond = ci; + exit ( + _lwp_mutex_lock(&mutex) || + _lwp_mutex_unlock(&mutex)); ; return 0; @@ -31935,28 +29837,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="Solaris/lwp" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=Solaris/lwp else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -31964,16 +29850,17 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext -fi + fi -# POSIX.1 pthreads: pthread_XXX -# -# 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 - LIBS="$LIBS -lpthread" + # POSIX.1 pthreads: pthread_XXX + # + # 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 + LIBS="$LIBS -lpthread" if test "$cross_compiling" = yes; then cat >conftest.$ac_ext <<_ACEOF @@ -32023,28 +29910,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/library"" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex="POSIX/pthreads/library" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32052,7 +29923,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF @@ -32103,7 +29974,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/library"" + db_cv_mutex="POSIX/pthreads/library" else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 @@ -32114,9 +29985,9 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$a fi - LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "posix_only"; then + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = posix_only; then if test "$cross_compiling" = yes; then cat >conftest.$ac_ext <<_ACEOF @@ -32166,28 +30037,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads"" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex="POSIX/pthreads" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32195,7 +30050,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF @@ -32246,7 +30101,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads"" + db_cv_mutex="POSIX/pthreads" else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 @@ -32257,8 +30112,8 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$a fi -fi -if test "$db_cv_mutex" = "posix_only"; then + fi + if test "$db_cv_mutex" = posix_only; then if test "$cross_compiling" = yes; then cat >conftest.$ac_ext <<_ACEOF @@ -32306,28 +30161,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/private"" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex="POSIX/pthreads/private" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32335,7 +30174,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF @@ -32384,7 +30223,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/private"" + db_cv_mutex="POSIX/pthreads/private" else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 @@ -32395,9 +30234,9 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$a fi -fi -if test "$db_cv_mutex" = "posix_only"; then - LIBS="$LIBS -lpthread" + fi + if test "$db_cv_mutex" = posix_only; then + LIBS="$LIBS -lpthread" if test "$cross_compiling" = yes; then cat >conftest.$ac_ext <<_ACEOF @@ -32445,28 +30284,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/library/private"" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex="POSIX/pthreads/library/private" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32474,7 +30297,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF @@ -32523,7 +30346,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - db_cv_mutex=""POSIX/pthreads/library/private"" + db_cv_mutex="POSIX/pthreads/library/private" else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 @@ -32534,38 +30357,38 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$a fi - LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = "posix_only"; then - { { echo "$as_me:$LINENO: error: unable to find POSIX 1003.1 mutex interfaces" >&5 + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = posix_only; then + { { echo "$as_me:$LINENO: error: unable to find POSIX 1003.1 mutex interfaces" >&5 echo "$as_me: error: unable to find POSIX 1003.1 mutex interfaces" >&2;} { (exit 1); exit 1; }; } -fi + fi -# UI threads: thr_XXX -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -LIBS="$LIBS -lthread" -cat >conftest.$ac_ext <<_ACEOF + # UI threads: thr_XXX + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = ui_only; then + LIBS="$LIBS -lthread" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include + #include + #include int main () { - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); + mutex_t mutex; + cond_t cond; + int type = USYNC_PROCESS; + exit ( + mutex_init(&mutex, type, NULL) || + cond_init(&cond, type, NULL) || + mutex_lock(&mutex) || + mutex_unlock(&mutex)); ; return 0; @@ -32584,28 +30407,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="UI/threads/library" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=UI/threads/library else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32613,32 +30420,32 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext -LIBS="$orig_libs" -fi -if test "$db_cv_mutex" = no -o "$db_cv_mutex" = "ui_only"; then -cat >conftest.$ac_ext <<_ACEOF + LIBS="$orig_libs" + fi + if test "$db_cv_mutex" = no -o "$db_cv_mutex" = ui_only; then + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include + #include + #include int main () { - mutex_t mutex; - cond_t cond; - int type = USYNC_PROCESS; - exit ( - mutex_init(&mutex, type, NULL) || - cond_init(&cond, type, NULL) || - mutex_lock(&mutex) || - mutex_unlock(&mutex)); + mutex_t mutex; + cond_t cond; + int type = USYNC_PROCESS; + exit ( + mutex_init(&mutex, type, NULL) || + cond_init(&cond, type, NULL) || + mutex_lock(&mutex) || + mutex_unlock(&mutex)); ; return 0; @@ -32657,28 +30464,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="UI/threads" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=UI/threads else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32686,80 +30477,110 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext -fi -if test "$db_cv_mutex" = "ui_only"; then - { { echo "$as_me:$LINENO: error: unable to find UI mutex interfaces" >&5 + fi + if test "$db_cv_mutex" = ui_only; then + { { echo "$as_me:$LINENO: error: unable to find UI mutex interfaces" >&5 echo "$as_me: error: unable to find UI mutex interfaces" >&2;} { (exit 1); exit 1; }; } -fi + fi -# msemaphore: HPPA only -# Try HPPA before general msem test, it needs special alignment. -if test "$db_cv_mutex" = no; then -cat >conftest.$ac_ext <<_ACEOF + # We're done testing for pthreads-style mutexes. Next, check for + # test-and-set mutexes. Check first for hybrid implementations, + # because we check for them even if we've already found a + # pthreads-style mutex and they're the most common architectures + # anyway. + # + # x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include int main () { -#if defined(__hppa) - typedef msemaphore tsl_t; - msemaphore x; - msem_init(&x, 0); - msem_lock(&x, 0); - msem_unlock(&x, 0); - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + #if (defined(i386) || defined(__i386__)) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex="$db_cv_mutex/x86/gcc-assembly" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + # x86_64/gcc: FreeBSD, NetBSD, BSD/OS, Linux + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + #if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="HP/msem_init" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex="$db_cv_mutex/x86_64/gcc-assembly" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32767,31 +30588,29 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# msemaphore: AIX, OSF/1 -if test "$db_cv_mutex" = no; then -cat >conftest.$ac_ext <<_ACEOF + # Solaris is one of the systems where we can configure hybrid mutexes. + # However, we require the membar_enter function for that, and only newer + # Solaris releases have it. Check to see if we can configure hybrids. + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -#include + #include + #include int main () { - typedef msemaphore tsl_t; - msemaphore x; - msem_init(&x, 0); - msem_lock(&x, 0); - msem_unlock(&x, 0); - exit(0); + typedef lock_t tsl_t; + lock_t x; + _lock_try(&x); + _lock_clear(&x); + membar_enter(); ; return 0; @@ -32810,28 +30629,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="UNIX/msem_init" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex="$db_cv_mutex/Solaris/_lock_try/membar" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32839,70 +30642,49 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext -fi -# ReliantUNIX -if test "$db_cv_mutex" = no; then -LIBS="$LIBS -lmproc" -cat >conftest.$ac_ext <<_ACEOF + # Sparc/gcc: SunOS, Solaris + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include int main () { - typedef spinlock_t tsl_t; - spinlock_t x; - initspin(&x, 1); - cspinlock(&x); - spinunlock(&x); + #if defined(__sparc__) && defined(__GNUC__) + exit(0); + #else + FAIL TO COMPILE/LINK + #endif ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="ReliantUNIX/initspin" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex="$db_cv_mutex/Sparc/gcc-assembly" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32910,12 +30692,22 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS="$orig_libs" +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + # We're done testing for any hybrid mutex implementations. If we did + # not find a pthreads-style mutex, but did find a test-and-set mutex, + # we set db_cv_mutex to "no/XXX" -- clean that up. + db_cv_mutex=`echo $db_cv_mutex | sed 's/^no\///'` fi -# SCO: UnixWare has threads in libthread, but OpenServer doesn't. +# If we still don't have a mutex implementation yet, continue testing for a +# test-and-set mutex implementation. + +# _lock_try/_lock_clear: Solaris +# On Solaris systems without other mutex interfaces, DB uses the undocumented +# _lock_try _lock_clear function calls instead of either the sema_trywait(3T) +# or sema_wait(3T) function calls. This is because of problems in those +# interfaces in some releases of the Solaris C library. if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -32924,55 +30716,40 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include +#include int main () { -#if defined(__USLC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + typedef lock_t tsl_t; + lock_t x; + _lock_try(&x); + _lock_clear(&x); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="SCO/x86/cc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=Solaris/_lock_try else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -32980,10 +30757,12 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi -# abilock_t: SGI +# msemaphore: HPPA only +# Try HPPA before general msem test, it needs special alignment. if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -32992,16 +30771,21 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include int main () { - typedef abilock_t tsl_t; - abilock_t x; - init_lock(&x); - acquire_lock(&x); - release_lock(&x); +#if defined(__hppa) + typedef msemaphore tsl_t; + msemaphore x; + msem_init(&x, 0); + msem_lock(&x, 0); + msem_unlock(&x, 0); + exit(0); +#else + FAIL TO COMPILE/LINK +#endif ; return 0; @@ -33020,28 +30804,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="SGI/init_lock" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=HP/msem_init else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33049,15 +30817,12 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -# sema_t: Solaris -# The sema_XXX calls do not work on Solaris 5.5. I see no reason to ever -# turn this test on, unless we find some other platform that uses the old -# POSIX.1 interfaces. (I plan to move directly to pthreads on Solaris.) -if test "$db_cv_mutex" = DOESNT_WORK; then +# msemaphore: AIX, OSF/1 +if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -33065,16 +30830,18 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include +#include int main () { - typedef sema_t tsl_t; - sema_t x; - sema_init(&x, 1, USYNC_PROCESS, NULL); - sema_wait(&x); - sema_post(&x); + typedef msemaphore tsl_t; + msemaphore x; + msem_init(&x, 0); + msem_lock(&x, 0); + msem_unlock(&x, 0); + exit(0); ; return 0; @@ -33093,28 +30860,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="UNIX/sema_init" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=UNIX/msem_init else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33122,16 +30873,13 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -# _lock_try/_lock_clear: Solaris -# On Solaris systems without Pthread or UI mutex interfaces, DB uses the -# undocumented _lock_try _lock_clear function calls instead of either the -# sema_trywait(3T) or sema_wait(3T) function calls. This is because of -# problems in those interfaces in some releases of the Solaris C library. +# ReliantUNIX if test "$db_cv_mutex" = no; then +LIBS="$LIBS -lmproc" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -33139,15 +30887,16 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include int main () { - typedef lock_t tsl_t; - lock_t x; - _lock_try(&x); - _lock_clear(&x); + typedef spinlock_t tsl_t; + spinlock_t x; + initspin(&x, 1); + cspinlock(&x); + spinunlock(&x); ; return 0; @@ -33166,28 +30915,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="Solaris/_lock_try" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=ReliantUNIX/initspin else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33195,11 +30928,12 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext +LIBS="$orig_libs" fi -# _check_lock/_clear_lock: AIX +# SCO: UnixWare has threads in libthread, but OpenServer doesn't. if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33208,54 +30942,38 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include int main () { - int x; - _check_lock(&x,0,1); - _clear_lock(&x,0); +#if defined(__USLC__) + exit(0); +#else + FAIL TO COMPILE/LINK +#endif ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="AIX/_check_lock" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=SCO/x86/cc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33263,11 +30981,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# _spin_lock_try/_spin_unlock: Apple/Darwin +# abilock_t: SGI if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33276,13 +30993,16 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include int main () { - int x; - _spin_lock_try(&x); - _spin_unlock(&x); + typedef abilock_t tsl_t; + abilock_t x; + init_lock(&x); + acquire_lock(&x); + release_lock(&x); ; return 0; @@ -33301,28 +31021,12 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="Darwin/_spin_lock_try" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=SGI/init_lock else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33330,12 +31034,15 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -# Tru64/cc -if test "$db_cv_mutex" = no; then +# sema_t: Solaris +# The sema_XXX calls do not work on Solaris 5.5. I see no reason to ever +# turn this test on, unless we find some other platform that uses the old +# POSIX.1 interfaces. +if test "$db_cv_mutex" = DOESNT_WORK; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -33343,55 +31050,40 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include int main () { -#if defined(__alpha) && defined(__DECC) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + typedef sema_t tsl_t; + sema_t x; + sema_init(&x, 1, USYNC_PROCESS, NULL); + sema_wait(&x); + sema_post(&x); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="Tru64/cc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=UNIX/sema_init else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33399,10 +31091,11 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi -# Alpha/gcc +# _check_lock/_clear_lock: AIX if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33411,55 +31104,38 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include int main () { -#if defined(__alpha) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + int x; + _check_lock(&x,0,1); + _clear_lock(&x,0); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="ALPHA/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=AIX/_check_lock else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33467,10 +31143,11 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi -# ARM/gcc: Linux +# _spin_lock_try/_spin_unlock: Apple/Darwin if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33483,51 +31160,33 @@ int main () { -#if defined(__arm__) && defined(__GNUC__) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + int x; + _spin_lock_try(&x); + _spin_unlock(&x); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="ARM/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=Darwin/_spin_lock_try else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33535,10 +31194,11 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi -# MIPS/gcc: Linux +# Tru64/cc if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33551,7 +31211,7 @@ int main () { -#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) +#if defined(__alpha) && defined(__DECC) exit(0); #else FAIL TO COMPILE/LINK @@ -33574,28 +31234,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="MIPS/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=Tru64/cc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33606,7 +31249,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# MIPS/gcc: Linux +# Alpha/gcc if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33619,7 +31262,7 @@ int main () { -#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) +#if defined(__alpha) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33642,28 +31285,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="MIPS/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=ALPHA/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33674,7 +31300,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# PaRisc/gcc: HP/UX +# ARM/gcc: Linux if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33687,7 +31313,7 @@ int main () { -#if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__) +#if defined(__arm__) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33710,28 +31336,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="HPPA/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=ARM/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33742,7 +31351,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# PPC/gcc: +# MIPS/gcc: Linux if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33755,7 +31364,7 @@ int main () { -#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__) +#if (defined(__mips) || defined(__mips__)) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33778,28 +31387,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="PPC/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=MIPS/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33810,7 +31402,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# Sparc/gcc: SunOS, Solaris +# PaRisc/gcc: HP/UX if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33823,7 +31415,7 @@ int main () { -#if defined(__sparc__) && defined(__GNUC__) +#if (defined(__hppa) || defined(__hppa__)) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33846,28 +31438,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="Sparc/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=HPPA/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33878,7 +31453,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# 68K/gcc: SunOS +# PPC/gcc: if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33891,7 +31466,7 @@ int main () { -#if (defined(mc68020) || defined(sun3)) && defined(__GNUC__) +#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33914,28 +31489,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="68K/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=PPC/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -33946,7 +31504,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# x86/gcc: FreeBSD, NetBSD, BSD/OS, Linux +# 68K/gcc: SunOS if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33959,7 +31517,7 @@ int main () { -#if (defined(i386) || defined(__i386__)) && defined(__GNUC__) +#if (defined(mc68020) || defined(sun3)) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -33982,28 +31540,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="x86/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=68K/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34014,7 +31555,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# x86_64/gcc: FreeBSD, NetBSD, BSD/OS, Linux +# S390/cc: IBM OS/390 Unix if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -34027,7 +31568,7 @@ int main () { -#if (defined(x86_64) || defined(__x86_64__)) && defined(__GNUC__) +#if defined(__MVS__) && defined(__IBMC__) exit(0); #else FAIL TO COMPILE/LINK @@ -34050,28 +31591,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="x86_64/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=S390/cc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34082,7 +31606,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# S390/cc: IBM OS/390 Unix +# S390/gcc: Linux if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -34095,7 +31619,7 @@ int main () { -#if defined(__MVS__) && defined(__IBMC__) +#if defined(__s390__) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -34118,28 +31642,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="S390/cc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=S390/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34150,7 +31657,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# S390/gcc: Linux +# ia64/gcc: Linux if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -34163,7 +31670,7 @@ int main () { -#if defined(__s390__) && defined(__GNUC__) +#if defined(__ia64) && defined(__GNUC__) exit(0); #else FAIL TO COMPILE/LINK @@ -34186,28 +31693,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="S390/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=ia64/gcc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34218,7 +31708,7 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# ia64/gcc: Linux +# uts/cc: UTS if test "$db_cv_mutex" = no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -34231,7 +31721,7 @@ int main () { -#if defined(__ia64) && defined(__GNUC__) +#if defined(_UTS) exit(0); #else FAIL TO COMPILE/LINK @@ -34254,28 +31744,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="ia64/gcc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + db_cv_mutex=UTS/cc-assembly else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34286,8 +31759,9 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -# uts/cc: UTS +# UNIX fcntl system call mutexes. if test "$db_cv_mutex" = no; then + db_cv_mutex=UNIX/fcntl cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -34295,55 +31769,41 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +#include int main () { -#if defined(_UTS) - exit(0); -#else - FAIL TO COMPILE/LINK -#endif + struct flock l; + l.l_whence = SEEK_SET; + l.l_start = 10; + l.l_len = 1; + l.l_type = F_WRLCK; + fcntl(0, F_SETLK, &l); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - db_cv_mutex="UTS/cc-assembly" + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + db_cv_mutex=UNIX/fcntl else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -34351,116 +31811,148 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -# default to UNIX fcntl system call mutexes. -if test "$db_cv_mutex" = no; then - db_cv_mutex="UNIX/fcntl" +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi fi { echo "$as_me:$LINENO: result: $db_cv_mutex" >&5 echo "${ECHO_T}$db_cv_mutex" >&6; } +# Mutexes may not have been found, or may have been disabled. +case "$db_cv_mutex" in +disabled) ;; +no) + { { echo "$as_me:$LINENO: error: Unable to find a mutex implementation" >&5 +echo "$as_me: error: Unable to find a mutex implementation" >&2;} + { (exit 1); exit 1; }; };; +*) cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_SUPPORT 1 +_ACEOF -db_threadid_t_decl=notset +esac + +# Configure a pthreads-style mutex implementation. +hybrid=pthread case "$db_cv_mutex" in -68K/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +POSIX/pthreads*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_68K_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_PTHREADS 1 _ACEOF ;; -AIX/_check_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +POSIX/pthreads/private*)ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_AIX_CHECK_LOCK 1 +#define HAVE_MUTEX_PTHREADS 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_THREAD_ONLY 1 _ACEOF ;; -Darwin/_spin_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +POSIX/pthreads/library*)ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY 1 +#define HAVE_MUTEX_PTHREADS 1 +_ACEOF +;; +POSIX/pthreads/library/private*) + ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" + cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_PTHREADS 1 _ACEOF - + cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_THREAD_ONLY 1 +_ACEOF ;; -ALPHA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +Solaris/lwp*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_ALPHA_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_SOLARIS_LWP 1 _ACEOF ;; -ARM/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +UI/threads*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_ARM_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_UI_THREADS 1 _ACEOF ;; -HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +UI/threads/library*) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_HPPA_MSEM_INIT 1 +#define HAVE_MUTEX_UI_THREADS 1 +_ACEOF +;; +*) hybrid=no;; +esac + +# Configure a test-and-set mutex implementation. +case "$db_cv_mutex" in +68K/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" + cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_68K_GCC_ASSEMBLY 1 _ACEOF ;; -HPPA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +AIX/_check_lock) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_HPPA_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_AIX_CHECK_LOCK 1 _ACEOF ;; -ia64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +Darwin/_spin_lock_try) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_IA64_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY 1 _ACEOF ;; -POSIX/pthreads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" +ALPHA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_PTHREADS 1 +#define HAVE_MUTEX_ALPHA_GCC_ASSEMBLY 1 _ACEOF ;; -POSIX/pthreads/private) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" +ARM/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_PTHREADS 1 +#define HAVE_MUTEX_ARM_GCC_ASSEMBLY 1 _ACEOF - +;; +HP/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_THREAD_ONLY 1 +#define HAVE_MUTEX_HPPA_MSEM_INIT 1 _ACEOF ;; -POSIX/pthreads/library) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" +HPPA/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_PTHREADS 1 +#define HAVE_MUTEX_HPPA_GCC_ASSEMBLY 1 _ACEOF ;; -POSIX/pthreads/library/private) - ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" +ia64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_PTHREADS 1 +#define HAVE_MUTEX_IA64_GCC_ASSEMBLY 1 _ACEOF - +;; +MIPS/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_THREAD_ONLY 1 +#define HAVE_MUTEX_MIPS_GCC_ASSEMBLY 1 _ACEOF @@ -34516,14 +32008,17 @@ _ACEOF ;; -Solaris/lwp) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" +*Solaris/_lock_try/membar) + hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_SOLARIS_LWP 1 +#define HAVE_MUTEX_SOLARIS_LOCK_TRY 1 _ACEOF ;; -Sparc/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +*Sparc/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF #define HAVE_MUTEX_SPARC_GCC_ASSEMBLY 1 _ACEOF @@ -34536,20 +32031,6 @@ Tru64/cc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" _ACEOF -;; -UI/threads) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_UI_THREADS 1 -_ACEOF - - -;; -UI/threads/library) ADDITIONAL_OBJS="mut_pthread${o} $ADDITIONAL_OBJS" - cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_UI_THREADS 1 -_ACEOF - - ;; UNIX/msem_init) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF @@ -34572,54 +32053,61 @@ _ACEOF ;; -win32) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" +*x86/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_WIN32 1 +#define HAVE_MUTEX_X86_GCC_ASSEMBLY 1 _ACEOF ;; -win32/gcc) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" +*x86_64/gcc-assembly) hybrid="$hybrid/tas" + ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_WIN32_GCC 1 +#define HAVE_MUTEX_X86_64_GCC_ASSEMBLY 1 _ACEOF ;; -MIPS/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +esac + +# Configure the remaining special cases. +case "$db_cv_mutex" in +UNIX/fcntl) { echo "$as_me:$LINENO: WARNING: NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE." >&5 +echo "$as_me: WARNING: NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE." >&2;} + ADDITIONAL_OBJS="mut_fcntl${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_MIPS_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_FCNTL 1 _ACEOF ;; -x86/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +win32) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_X86_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_WIN32 1 _ACEOF ;; -x86_64/gcc-assembly) ADDITIONAL_OBJS="mut_tas${o} $ADDITIONAL_OBJS" +win32/gcc) ADDITIONAL_OBJS="mut_win32${o} $ADDITIONAL_OBJS" cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_X86_64_GCC_ASSEMBLY 1 +#define HAVE_MUTEX_WIN32_GCC 1 _ACEOF ;; -UNIX/fcntl) { echo "$as_me:$LINENO: WARNING: NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE." >&5 -echo "$as_me: WARNING: NO FAST MUTEXES FOUND FOR THIS COMPILER/ARCHITECTURE." >&2;} - ADDITIONAL_OBJS="mut_fcntl${o} $ADDITIONAL_OBJS" - cat >>confdefs.h <<\_ACEOF -#define HAVE_MUTEX_FCNTL 1 +esac + +# We may have found both a pthreads-style mutex implementation as well as a +# test-and-set, in which case configure for the hybrid. +if test "$hybrid" = pthread/tas; then + cat >>confdefs.h <<\_ACEOF +#define HAVE_MUTEX_HYBRID 1 _ACEOF -;; -*) { { echo "$as_me:$LINENO: error: Unknown mutex interface: $db_cv_mutex" >&5 -echo "$as_me: error: Unknown mutex interface: $db_cv_mutex" >&2;} - { (exit 1); exit 1; }; };; -esac + +fi # The mutex selection may require specific declarations -- we fill in most of # them above, but here are the common ones. @@ -34640,8 +32128,13 @@ esac # # We can't depend on any specific call existing (pthread_create, for example), # as it may be #defined in an include file -- OSF/1 (Tru64) has this problem. + + + +db_threadid_t_decl=notset + case "$db_cv_mutex" in -POSIX/pthread*|Solaris/lwp) +POSIX/pthread*|Solaris/lwp*) thread_h_decl="#include " db_threadid_t_decl="typedef pthread_t db_threadid_t;" { echo "$as_me:$LINENO: checking for main in -lpthread" >&5 @@ -34680,27 +32173,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_pthread_main=yes else echo "$as_me: failed program was:" >&5 @@ -34709,7 +32186,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_pthread_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -34759,27 +32236,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_thread_main=yes else echo "$as_me: failed program was:" >&5 @@ -34788,7 +32249,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_thread_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -34800,7 +32261,7 @@ fi ac_cv_lib_thread=ac_cv_lib_thread_main ;; *) - if test "$db_cv_pthread_api" = "yes"; then + if test "$db_cv_pthread_api" = yes; then thread_h_decl="#include " db_threadid_t_decl="typedef pthread_t db_threadid_t;" { echo "$as_me:$LINENO: checking for main in -lpthread" >&5 @@ -34839,27 +32300,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_pthread_main=yes else echo "$as_me: failed program was:" >&5 @@ -34868,7 +32313,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_pthread_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -34888,7 +32333,7 @@ esac # block of bytes. For example, MVS typedef's pthread_t to a structure. -if test "$db_threadid_t_decl" = "notset"; then +if test "$db_threadid_t_decl" = notset; then db_threadid_t_decl="typedef uintmax_t db_threadid_t;" cat >>confdefs.h <<\_ACEOF #define HAVE_SIMPLE_THREAD_TYPE 1 @@ -34928,27 +32373,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then cat >>confdefs.h <<\_ACEOF #define HAVE_SIMPLE_THREAD_TYPE 1 _ACEOF @@ -34965,19 +32393,19 @@ fi # If we're building replication and configured with POSIX pthreads or were # told to build using the POSIX API, build the replication manager framework. -db_cv_build_replication_mgr="no" -if test "$db_cv_build_replication" = "yes"; then +db_cv_build_replication_mgr=no +if test "$db_cv_build_replication" = yes; then case "$db_cv_mutex" in POSIX/pthread*|Solaris/lwp) - db_cv_build_replication_mgr="yes";; + db_cv_build_replication_mgr=yes;; esac - if test "$db_cv_pthread_api" = "yes"; then - db_cv_build_replication_mgr="yes" + if test "$db_cv_pthread_api" = yes; then + db_cv_build_replication_mgr=yes fi - if test "$db_cv_build_replication_mgr" = "yes"; then + if test "$db_cv_build_replication_mgr" = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_REPLICATION_THREADS 1 _ACEOF @@ -35024,27 +32452,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_nsl_main=yes else echo "$as_me: failed program was:" >&5 @@ -35053,7 +32465,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35100,27 +32512,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_socket_main=yes else echo "$as_me: failed program was:" >&5 @@ -35129,7 +32525,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35175,16 +32571,15 @@ esac # Test for various functions/libraries -- do tests that change library values # first. # +# Update LIBS, so we're testing against the current list of libraries. +LIBS="$LIBSO_LIBS" + # The yield function on Solaris is almost certainly pthread_yield (LWP threads # or POSIX pthreads), or thr_yield (UI threads). There's an outside chance it # is sched_yield() though, only available in -lrt on Solaris. -# -# The Berkeley DB library calls fdatasync, only available in -lrt on Solaris. -# See if we can find either without additional libraries or in -lrt. If found -# in -lrt and we haven't yet added -lrt, add it to the shared library list. -{ echo "$as_me:$LINENO: checking for library containing fdatasync" >&5 -echo $ECHO_N "checking for library containing fdatasync... $ECHO_C" >&6; } -if test "${ac_cv_search_fdatasync+set}" = set; then +{ echo "$as_me:$LINENO: checking for library containing sched_yield" >&5 +echo $ECHO_N "checking for library containing sched_yield... $ECHO_C" >&6; } +if test "${ac_cv_search_sched_yield+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS @@ -35201,11 +32596,11 @@ cat >>conftest.$ac_ext <<_ACEOF #ifdef __cplusplus extern "C" #endif -char fdatasync (); +char sched_yield (); int main () { -return fdatasync (); +return sched_yield (); ; return 0; } @@ -35230,27 +32625,96 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_search_sched_yield=$ac_res +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_sched_yield+set}" = set; then + break +fi +done +if test "${ac_cv_search_sched_yield+set}" = set; then + : +else + ac_cv_search_sched_yield=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_search_sched_yield" >&5 +echo "${ECHO_T}$ac_cv_search_sched_yield" >&6; } +ac_res=$ac_cv_search_sched_yield +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + + +# The Berkeley DB library calls fdatasync, only available in -lrt on Solaris. +{ echo "$as_me:$LINENO: checking for library containing fdatasync" >&5 +echo $ECHO_N "checking for library containing fdatasync... $ECHO_C" >&6; } +if test "${ac_cv_search_fdatasync+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_func_search_save_LIBS=$LIBS +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char fdatasync (); +int +main () +{ +return fdatasync (); + ; + return 0; +} +_ACEOF +for ac_lib in '' rt; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_search_fdatasync=$ac_res else echo "$as_me: failed program was:" >&5 @@ -35259,7 +32723,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext if test "${ac_cv_search_fdatasync+set}" = set; then break @@ -35278,13 +32742,13 @@ echo "${ECHO_T}$ac_cv_search_fdatasync" >&6; } ac_res=$ac_cv_search_fdatasync if test "$ac_res" != no; then test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - if test "$ac_cv_search_fdatasync" != "none required" ; then - LIBSO_LIBS="$LIBSO_LIBS -lrt"; - fi -else - { echo "$as_me:$LINENO: checking for library containing sched_yield" >&5 -echo $ECHO_N "checking for library containing sched_yield... $ECHO_C" >&6; } -if test "${ac_cv_search_sched_yield+set}" = set; then + +fi + + +{ echo "$as_me:$LINENO: checking for library containing getaddrinfo" >&5 +echo $ECHO_N "checking for library containing getaddrinfo... $ECHO_C" >&6; } +if test "${ac_cv_search_getaddrinfo+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS @@ -35301,16 +32765,16 @@ cat >>conftest.$ac_ext <<_ACEOF #ifdef __cplusplus extern "C" #endif -char sched_yield (); +char getaddrinfo (); int main () { -return sched_yield (); +return getaddrinfo (); ; return 0; } _ACEOF -for ac_lib in '' rt; do +for ac_lib in '' nsl socket; do if test -z "$ac_lib"; then ac_res="none required" else @@ -35330,28 +32794,95 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_search_getaddrinfo=$ac_res +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_getaddrinfo+set}" = set; then + break +fi +done +if test "${ac_cv_search_getaddrinfo+set}" = set; then + : +else + ac_cv_search_getaddrinfo=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_search_getaddrinfo" >&5 +echo "${ECHO_T}$ac_cv_search_getaddrinfo" >&6; } +ac_res=$ac_cv_search_getaddrinfo +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + +{ echo "$as_me:$LINENO: checking for library containing hstrerror" >&5 +echo $ECHO_N "checking for library containing hstrerror... $ECHO_C" >&6; } +if test "${ac_cv_search_hstrerror+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_func_search_save_LIBS=$LIBS +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char hstrerror (); +int +main () +{ +return hstrerror (); + ; + return 0; +} +_ACEOF +for ac_lib in '' resolv; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_search_sched_yield=$ac_res + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_search_hstrerror=$ac_res else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -35359,33 +32890,32 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext - if test "${ac_cv_search_sched_yield+set}" = set; then + if test "${ac_cv_search_hstrerror+set}" = set; then break fi done -if test "${ac_cv_search_sched_yield+set}" = set; then +if test "${ac_cv_search_hstrerror+set}" = set; then : else - ac_cv_search_sched_yield=no + ac_cv_search_hstrerror=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi -{ echo "$as_me:$LINENO: result: $ac_cv_search_sched_yield" >&5 -echo "${ECHO_T}$ac_cv_search_sched_yield" >&6; } -ac_res=$ac_cv_search_sched_yield +{ echo "$as_me:$LINENO: result: $ac_cv_search_hstrerror" >&5 +echo "${ECHO_T}$ac_cv_search_hstrerror" >&6; } +ac_res=$ac_cv_search_hstrerror if test "$ac_res" != no; then test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - if test "$ac_cv_search_sched_yield" != "none required" ; then - LIBSO_LIBS="$LIBSO_LIBS -lrt"; - fi -fi fi +# Those tests updated LIBS, update our internal list. +LIBSO_LIBS="$LIBS" + # !!! # We could be more exact about whether these libraries are needed, but don't # bother -- if they exist, we load them, it's only the test programs anyway. @@ -35425,27 +32955,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_m_main=yes else echo "$as_me: failed program was:" >&5 @@ -35454,7 +32968,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_m_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35501,27 +33015,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_nsl_main=yes else echo "$as_me: failed program was:" >&5 @@ -35530,7 +33028,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35577,27 +33075,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_pthread_main=yes else echo "$as_me: failed program was:" >&5 @@ -35606,7 +33088,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_pthread_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35653,27 +33135,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_socket_main=yes else echo "$as_me: failed program was:" >&5 @@ -35682,7 +33148,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -35694,10 +33160,6 @@ fi ac_cv_lib_socket=ac_cv_lib_socket_main -# Update LIBS so that the rest of our tests are run with the libraries we'll -# load against. -LIBS="$LIBSO_LIBS" - # Checks for system functions for which we have replacements. # # The only portable getcwd call is getcwd(char *, size_t), where the @@ -35728,12 +33190,14 @@ LIBS="$LIBSO_LIBS" + for ac_func in \ - abort atoi atol getcwd getenv getopt isalpha isdigit isprint isspace\ - memcmp memcpy memmove printf raise rand strcasecmp strcat strchr\ - strdup strerror strncat strncmp strrchr strsep strtol strtoul + abort atoi atol getcwd getenv getopt isalpha isdigit isprint\ + isspace memcmp memcpy memmove printf qsort raise rand strcasecmp\ + strcat strchr strdup strerror strncat strncmp strrchr strsep\ + strtol strtoul do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -35799,27 +33263,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -35828,7 +33276,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -35866,6 +33314,13 @@ done + + + + + + + @@ -35875,10 +33330,11 @@ done for ac_func in \ - _fstati64 clock_gettime directio fchmod fcntl fdatasync getaddrinfo\ - getrusage gettimeofday getuid mprotect pstat_getdynamic pthread_yield\ - sched_yield select sigaction snprintf stat strftime sysconf vsnprintf\ - yield + _fstati64 directio fchmod fclose fcntl fdatasync fgetc fgets\ + fopen fwrite getaddrinfo getrusage gettimeofday getuid hstrerror\ + localtime mprotect pstat_getdynamic pthread_yield sched_yield\ + select sigaction snprintf stat strftime sysconf time vsnprintf\ + yield do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -35944,27 +33400,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -35973,7 +33413,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -36056,27 +33496,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -36085,7 +33509,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -36106,13 +33530,14 @@ if test \ echo "$as_me: WARNING: replication requires ftruncate, replication disabled." >&2;} fi -# ctime_r -- -# -# There are two versions of ctime_r, one of which takes a buffer length as a -# third argument, and one which only takes two arguments. (There is also a -# difference in return values, but we handle that in the code itself.) +# AIX 4.3 will link applications with calls to clock_gettime, but the +# calls always fail. +case "$host_os" in +aix4.3.*) + ;; +*) -for ac_func in ctime_r +for ac_func in clock_gettime do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` { echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -36178,27 +33603,112 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + eval "$as_ac_var=yes" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval echo '${'$as_ac_var'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +if test `eval echo '${'$as_ac_var'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done +;; esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in + +# ctime_r -- +# +# There are two versions of ctime_r, one of which takes a buffer length as a +# third argument, and one which only takes two arguments. (There is also a +# difference in return values, but we handle that in the code itself.) + +for ac_func in ctime_r +do +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -36207,7 +33717,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -36259,27 +33769,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then db_cv_ctime_r_3arg="3-argument" else echo "$as_me: failed program was:" >&5 @@ -36288,7 +33782,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 db_cv_ctime_r_3arg="2-argument" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $db_cv_ctime_r_3arg" >&5 @@ -36379,27 +33873,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -36408,7 +33886,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -36463,27 +33941,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then db_cv_fcntl_f_setfd=yes else echo "$as_me: failed program was:" >&5 @@ -36492,7 +33954,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 db_cv_fcntl_f_setfd=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $db_cv_fcntl_f_setfd" >&5 @@ -36558,27 +34020,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then db_cv_open_o_direct=yes else echo "$as_me: failed program was:" >&5 @@ -36587,7 +34033,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 db_cv_open_o_direct=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $db_cv_open_o_direct" >&5 @@ -36658,27 +34104,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then break else echo "$as_me: failed program was:" >&5 @@ -36702,27 +34131,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_sys_largefile_CC=' -n32'; break else echo "$as_me: failed program was:" >&5 @@ -36750,7 +34162,6 @@ if test "${ac_cv_sys_file_offset_bits+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else while :; do - ac_cv_sys_file_offset_bits=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -36787,28 +34198,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_file_offset_bits=no; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -36854,27 +34248,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_sys_file_offset_bits=64; break else echo "$as_me: failed program was:" >&5 @@ -36884,26 +34261,28 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_file_offset_bits=unknown break done fi { echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5 echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6; } -if test "$ac_cv_sys_file_offset_bits" != no; then - +case $ac_cv_sys_file_offset_bits in #( + no | unknown) ;; + *) cat >>confdefs.h <<_ACEOF #define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits _ACEOF - -fi +;; +esac rm -f conftest* - { echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5 + if test $ac_cv_sys_file_offset_bits = unknown; then + { echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5 echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6; } if test "${ac_cv_sys_large_files+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else while :; do - ac_cv_sys_large_files=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -36940,28 +34319,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_large_files=no; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -37007,27 +34369,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_sys_large_files=1; break else echo "$as_me: failed program was:" >&5 @@ -37037,19 +34382,22 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_large_files=unknown break done fi { echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5 echo "${ECHO_T}$ac_cv_sys_large_files" >&6; } -if test "$ac_cv_sys_large_files" != no; then - +case $ac_cv_sys_large_files in #( + no | unknown) ;; + *) cat >>confdefs.h <<_ACEOF #define _LARGE_FILES $ac_cv_sys_large_files _ACEOF - -fi +;; +esac rm -f conftest* + fi fi @@ -37138,27 +34486,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -37167,7 +34499,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -37256,27 +34588,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -37285,7 +34601,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -37367,27 +34683,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -37396,7 +34696,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -37492,27 +34792,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 @@ -37521,7 +34805,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval echo '${'$as_ac_var'}'` @@ -37691,27 +34975,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_func_svc_run=yes else echo "$as_me: failed program was:" >&5 @@ -37720,7 +34988,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_svc_run=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { echo "$as_me:$LINENO: result: $ac_cv_func_svc_run" >&5 @@ -37764,27 +35032,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_nsl_main=yes else echo "$as_me: failed program was:" >&5 @@ -37793,7 +35045,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_main=no fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi @@ -37999,27 +35251,11 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then : else echo "$as_me: failed program was:" >&5 @@ -38028,7 +35264,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 db_cv_build_sequence="no" fi -rm -f core conftest.err conftest.$ac_objext \ +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF @@ -38169,9 +35405,11 @@ _ACEOF if test "$db_cv_build_replication_mgr" = "yes"; then ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(REPMGR_OBJS)" + else + ADDITIONAL_OBJS="$ADDITIONAL_OBJS repmgr_stub${o}" fi else - ADDITIONAL_OBJS="$ADDITIONAL_OBJS rep_stub${o}" + ADDITIONAL_OBJS="$ADDITIONAL_OBJS rep_stub${o} repmgr_stub${o}" fi # The statistics code can be disabled. @@ -38211,12 +35449,25 @@ else CRYPTO_OBJS="crypto_stub${o}" fi +# The mutex code can be disabled, and if there aren't any mutexes, then there's +# no reason to include the locking code. +if test "$db_cv_build_mutexsupport" = "yes"; then + ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(LOCK_OBJS) \$(MUTEX_OBJS)" +else + ADDITIONAL_OBJS="$ADDITIONAL_OBJS lock_stub${o} mut_stub${o}" +fi + # If DIAGNOSTIC is defined, include the log print routines in the library # itself, various diagnostic modes use them. if test "$db_cv_diagnostic" = "yes"; then ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(PRINT_OBJS)" fi +# If building for QNX, we need additional OS files. +if test "$qnx_build" = "yes"; then + ADDITIONAL_OBJS="$ADDITIONAL_OBJS os_qnx_open${o}" +fi + # We need to add the additional object files into the Makefile with the correct # suffix. We can't use $LTLIBOBJS itself, because that variable has $U encoded # in it for automake, and that's not what we want. See SR #7227 for additional @@ -38224,29 +35475,23 @@ fi # # XXX: I'm not sure this is correct. REPLACEMENT_OBJS=`echo "$LIBOBJS" | - sed "s,\.[^.]* ,$o ,g;s,\.[^.]*$,$o,"` + sed "s,\.[^.]* ,$o ,g;s,\.[^.]*$,$o,"` # This is necessary so that .o files in LIBOBJS are also built via # the ANSI2KNR-filtering rules. LIBOBJS=`echo "$LIBOBJS" | - sed 's,\.[^.]* ,$U&,g;s,\.[^.]*$,$U&,'` + sed 's,\.[^.]* ,$U&,g;s,\.[^.]*$,$U&,'` LTLIBOBJS=`echo "$LIBOBJS" | - sed 's,\.[^.]* ,.lo ,g;s,\.[^.]*$,.lo,'` + sed 's,\.[^.]* ,.lo ,g;s,\.[^.]*$,.lo,'` # Initial output file list. CREATE_LIST="Makefile db_cxx.h:$srcdir/../dbinc/db_cxx.in db_int.h:$srcdir/../dbinc/db_int.in - clib_port.h:$srcdir/../dist/clib_port.h + clib_port.h:$srcdir/../dist/clib_port.in include.tcl:$srcdir/../test/include.tcl" -# MinGW needs win_db.h. -if test "$db_cv_mingw" = "yes"; then -CREATE_LIST="$CREATE_LIST - win_db.h:$srcdir/win_db.in" -fi - # Create the db.h file from a source file, a list of global function # prototypes, and, if configured for unique names, a list of #defines # to do DB_VERSION_UNIQUE_NAME substitution. @@ -38404,7 +35649,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF ## M4sh Initialization. ## ## --------------------- ## -# Be Bourne compatible +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: @@ -38413,10 +35659,13 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh + + # PATH needs CR @@ -38640,19 +35889,28 @@ else as_mkdir_p=false fi -# Find out whether ``test -x'' works. Don't use a zero-byte file, as -# systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - as_executable_p="test -x" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' else - as_executable_p=: + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' fi -rm -f conf$$.file +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -38667,8 +35925,8 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Berkeley DB $as_me 4.5.20, which was -generated by GNU Autoconf 2.60. Invocation command line was +This file was extended by Berkeley DB $as_me 4.6.18, which was +generated by GNU Autoconf 2.61. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -38696,7 +35954,7 @@ current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit - -V, --version print version number, then exit + -V, --version print version number and configuration settings, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions @@ -38716,8 +35974,8 @@ Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -Berkeley DB config.status 4.5.20 -configured by $0, generated by GNU Autoconf 2.60, +Berkeley DB config.status 4.6.18 +configured by $0, generated by GNU Autoconf 2.61, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2006 Free Software Foundation, Inc. @@ -39026,17 +36284,14 @@ ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF DB_VERSION_UNIQUE_NAME!$DB_VERSION_UNIQUE_NAME$ac_delim -AR!$AR$ac_delim CHMOD!$CHMOD$ac_delim CP!$CP$ac_delim KILL!$KILL$ac_delim LN!$LN$ac_delim MKDIR!$MKDIR$ac_delim -RANLIB!$RANLIB$ac_delim RM!$RM$ac_delim RPCGEN!$RPCGEN$ac_delim db_cv_path_sh!$db_cv_path_sh$ac_delim -STRIP!$STRIP$ac_delim INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim INSTALL_DATA!$INSTALL_DATA$ac_delim @@ -39053,6 +36308,9 @@ GREP!$GREP$ac_delim EGREP!$EGREP$ac_delim LN_S!$LN_S$ac_delim ECHO!$ECHO$ac_delim +AR!$AR$ac_delim +RANLIB!$RANLIB$ac_delim +STRIP!$STRIP$ac_delim CPP!$CPP$ac_delim F77!$F77$ac_delim FFLAGS!$FFLAGS$ac_delim @@ -39079,8 +36337,12 @@ u_int32_decl!$u_int32_decl$ac_delim int32_decl!$int32_decl$ac_delim u_int64_decl!$u_int64_decl$ac_delim int64_decl!$int64_decl$ac_delim -ssize_t_decl!$ssize_t_decl$ac_delim +FILE_t_decl!$FILE_t_decl$ac_delim +off_t_decl!$off_t_decl$ac_delim pid_t_decl!$pid_t_decl$ac_delim +size_t_decl!$size_t_decl$ac_delim +time_t_decl!$time_t_decl$ac_delim +ssize_t_decl!$ssize_t_decl$ac_delim uintmax_t_decl!$uintmax_t_decl$ac_delim uintptr_t_decl!$uintptr_t_decl$ac_delim thread_h_decl!$thread_h_decl$ac_delim @@ -39097,7 +36359,7 @@ db_seq_decl!$db_seq_decl$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 70; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 74; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 diff --git a/db/dist/configure.ac b/db/dist/configure.ac index 592fb5511..ada275a53 100644 --- a/db/dist/configure.ac +++ b/db/dist/configure.ac @@ -1,4 +1,4 @@ -# $Id: configure.ac,v 12.46 2006/09/19 00:33:58 bostic Exp $ +# $Id: configure.ac,v 12.64 2007/05/08 21:16:46 bostic Exp $ # Process this file with autoconf to produce a configure script. PACKAGE=db @@ -123,6 +123,10 @@ if test "$db_cv_test" = "yes"; then [Define to 1 if you want to build a version for running the test suite.]) fi +AH_TEMPLATE(HAVE_UPGRADE_SUPPORT, + [Define to 1 if port includes historic database upgrade support.]) +AC_DEFINE(HAVE_UPGRADE_SUPPORT) + # Check for programs used in building and installation. AM_PROGRAMS_SET AC_PROG_INSTALL @@ -130,6 +134,9 @@ AC_PROG_INSTALL BUILD_TARGET="library_build" INSTALL_TARGET="library_install" +# Respect the environment LIBS settings +LIBSO_LIBS="$LIBS" + # This is where we handle stuff that autoconf can't handle: compiler, # preprocessor and load flags, libraries that the standard tests don't # look for. @@ -147,6 +154,10 @@ INSTALL_TARGET="library_install" optimize_debug="-O" case "$host_os" in aix4.3.*|aix5*) + case "$host_os" in + aix4.3.*) + CPPFLAGS="$CPPFLAGS -D_LINUX_SOURCE_COMPAT";; + esac optimize_debug="-O2" CC=${CC-"xlc_r"} CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" @@ -166,7 +177,8 @@ irix*) optimize_debug="-O2" mpeix*) CPPFLAGS="$CPPFLAGS -D_POSIX_SOURCE -D_SOCKET_SOURCE" LIBSO_LIBS="$LIBSO_LIBS -lsocket -lsvipc";; osf*) CPPFLAGS="$CPPFLAGS -pthread";; -*qnx*) AC_DEFINE(HAVE_QNX) +*qnx*) qnx_build="yes" + AC_DEFINE(HAVE_QNX) AH_TEMPLATE(HAVE_QNX, [Define to 1 if building on QNX.]);; solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS ";; @@ -215,7 +227,25 @@ else esac fi -# Checks for compiler characteristics. +# Check for "const" and "inline" keywords. +AC_C_CONST +AC_C_INLINE + +# We use prototypes and the keyword "const" in db.h which doesn't include +# db_config.h, so we have to figure out what to do there. We don't have +# much choice, we look at internal autoconf variables. +AC_SUBST(DB_CONST) +if test "$ac_cv_c_const" != "yes"; then + DB_CONST="#define const" +fi + +# Now prototypes. +# +# There is an autoconf AC_C_PROTOTYPES macro, but it doesn't set internal +# variables, so it doesn't help us at all -- use the internal variable for +# STDC compilers instead. +# +# First, clear __P, some other systems use it too. DB_PROTO1="#undef __P" # AC_PROG_CC_STDC only sets ac_cv_prog_cc_stdc if the test fails, so @@ -226,12 +256,6 @@ else DB_PROTO2="#define __P(protos) protos" fi -AC_C_CONST -AC_SUBST(DB_CONST) -if test "$ac_cv_c_const" != "yes"; then - DB_CONST="#define const" -fi - # Because of shared library building, the ${CC} used for config tests # may be different than the ${CC} we want to put in the Makefile. # The latter is known as ${MAKEFILE_CC} in this script. @@ -255,7 +279,10 @@ if test "$db_cv_cxx" = "yes"; then LIBSO_LIBS="-lC_r $LIBSO_LIBS";; hpux*) AC_CHECK_TOOL(CCC, aCC);; irix*) AC_CHECK_TOOL(CCC, CC);; - osf*) AC_CHECK_TOOL(CCC, cxx);; + osf*) AC_CHECK_TOOL(CCC, cxx) + CXXFLAGS="$CXXFLAGS -D__USE_STD_IOSTREAM" + test -d /usr/include.dtk && + CXXFLAGS="$CXXFLAGS -I/usr/include.dtk";; solaris*) AC_CHECK_TOOL(CCC, CC);; esac fi @@ -435,15 +462,17 @@ if test "$db_cv_mingw" = "yes"; then else OSDIR=os PATH_SEPARATOR="/" + AC_DEFINE(HAVE_SYSTEM_INCLUDE_FILES) fi # Checks for include files, structures, C types. AC_HEADER_STAT AC_HEADER_TIME AC_HEADER_DIRENT -AC_CHECK_HEADERS(sys/select.h sys/time.h sys/fcntl.h) +AC_CHECK_HEADERS(sys/select.h sys/socket.h sys/time.h) AC_CHECK_MEMBERS([struct stat.st_blksize]) AM_TYPES +AM_SOCKLEN_T AC_CACHE_CHECK([for ANSI C exit success/failure values], db_cv_exit_defines, [ AC_TRY_COMPILE([#include ], return (EXIT_SUCCESS);, @@ -461,21 +490,22 @@ AM_DEFINE_MUTEXES # Test for various functions/libraries -- do tests that change library values # first. # +# Update LIBS, so we're testing against the current list of libraries. +LIBS="$LIBSO_LIBS" + # The yield function on Solaris is almost certainly pthread_yield (LWP threads # or POSIX pthreads), or thr_yield (UI threads). There's an outside chance it # is sched_yield() though, only available in -lrt on Solaris. -# +AC_SEARCH_LIBS(sched_yield, rt) + # The Berkeley DB library calls fdatasync, only available in -lrt on Solaris. -# See if we can find either without additional libraries or in -lrt. If found -# in -lrt and we haven't yet added -lrt, add it to the shared library list. -AC_SEARCH_LIBS(fdatasync, rt, [dnl - if test "$ac_cv_search_fdatasync" != "none required" ; then - LIBSO_LIBS="$LIBSO_LIBS -lrt"; - fi], [dnl - AC_SEARCH_LIBS(sched_yield, rt, [dnl - if test "$ac_cv_search_sched_yield" != "none required" ; then - LIBSO_LIBS="$LIBSO_LIBS -lrt"; - fi])]) +AC_SEARCH_LIBS(fdatasync, rt) + +AC_SEARCH_LIBS(getaddrinfo, nsl socket) +AC_SEARCH_LIBS(hstrerror, resolv) + +# Those tests updated LIBS, update our internal list. +LIBSO_LIBS="$LIBS" # !!! # We could be more exact about whether these libraries are needed, but don't @@ -485,26 +515,24 @@ AC_HAVE_LIBRARY(nsl, TEST_LIBS="$TEST_LIBS -lnsl") AC_HAVE_LIBRARY(pthread, TEST_LIBS="$TEST_LIBS -lpthread") AC_HAVE_LIBRARY(socket, TEST_LIBS="$TEST_LIBS -lsocket") -# Update LIBS so that the rest of our tests are run with the libraries we'll -# load against. -LIBS="$LIBSO_LIBS" - # Checks for system functions for which we have replacements. # # The only portable getcwd call is getcwd(char *, size_t), where the # buffer is non-NULL -- Solaris can't handle a NULL buffer, and they # deleted getwd(). AC_REPLACE_FUNCS(\ - abort atoi atol getcwd getenv getopt isalpha isdigit isprint isspace\ - memcmp memcpy memmove printf raise rand strcasecmp strcat strchr\ - strdup strerror strncat strncmp strrchr strsep strtol strtoul) + abort atoi atol getcwd getenv getopt isalpha isdigit isprint\ + isspace memcmp memcpy memmove printf qsort raise rand strcasecmp\ + strcat strchr strdup strerror strncat strncmp strrchr strsep\ + strtol strtoul) # Check for system functions we optionally use. AC_CHECK_FUNCS(\ - _fstati64 clock_gettime directio fchmod fcntl fdatasync getaddrinfo\ - getrusage gettimeofday getuid mprotect pstat_getdynamic pthread_yield\ - sched_yield select sigaction snprintf stat strftime sysconf vsnprintf\ - yield) + _fstati64 directio fchmod fclose fcntl fdatasync fgetc fgets\ + fopen fwrite getaddrinfo getrusage gettimeofday getuid hstrerror\ + localtime mprotect pstat_getdynamic pthread_yield sched_yield\ + select sigaction snprintf stat strftime sysconf time vsnprintf\ + yield) # Replication can't run correctly if ftruncate isn't available. AC_CHECK_FUNCS(ftruncate) @@ -514,6 +542,15 @@ if test \ AC_MSG_WARN([replication requires ftruncate, replication disabled.]) fi +# AIX 4.3 will link applications with calls to clock_gettime, but the +# calls always fail. +case "$host_os" in +aix4.3.*) + ;; +*) + AC_CHECK_FUNCS(clock_gettime);; +esac + # ctime_r -- # # There are two versions of ctime_r, one of which takes a buffer length as a @@ -690,9 +727,11 @@ if test "$db_cv_build_replication" = "yes"; then if test "$db_cv_build_replication_mgr" = "yes"; then ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(REPMGR_OBJS)" + else + ADDITIONAL_OBJS="$ADDITIONAL_OBJS repmgr_stub${o}" fi else - ADDITIONAL_OBJS="$ADDITIONAL_OBJS rep_stub${o}" + ADDITIONAL_OBJS="$ADDITIONAL_OBJS rep_stub${o} repmgr_stub${o}" fi # The statistics code can be disabled. @@ -723,12 +762,25 @@ else CRYPTO_OBJS="crypto_stub${o}" fi +# The mutex code can be disabled, and if there aren't any mutexes, then there's +# no reason to include the locking code. +if test "$db_cv_build_mutexsupport" = "yes"; then + ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(LOCK_OBJS) \$(MUTEX_OBJS)" +else + ADDITIONAL_OBJS="$ADDITIONAL_OBJS lock_stub${o} mut_stub${o}" +fi + # If DIAGNOSTIC is defined, include the log print routines in the library # itself, various diagnostic modes use them. if test "$db_cv_diagnostic" = "yes"; then ADDITIONAL_OBJS="$ADDITIONAL_OBJS \$(PRINT_OBJS)" fi +# If building for QNX, we need additional OS files. +if test "$qnx_build" = "yes"; then + ADDITIONAL_OBJS="$ADDITIONAL_OBJS os_qnx_open${o}" +fi + # We need to add the additional object files into the Makefile with the correct # suffix. We can't use $LTLIBOBJS itself, because that variable has $U encoded # in it for automake, and that's not what we want. See SR #7227 for additional @@ -736,29 +788,23 @@ fi # # XXX: I'm not sure this is correct. REPLACEMENT_OBJS=`echo "$LIB@&t@OBJS" | - sed "s,\.[[^.]]* ,$o ,g;s,\.[[^.]]*$,$o,"` + sed "s,\.[[^.]]* ,$o ,g;s,\.[[^.]]*$,$o,"` # This is necessary so that .o files in LIBOBJS are also built via # the ANSI2KNR-filtering rules. LIB@&t@OBJS=`echo "$LIB@&t@OBJS" | - sed 's,\.[[^.]]* ,$U&,g;s,\.[[^.]]*$,$U&,'` + sed 's,\.[[^.]]* ,$U&,g;s,\.[[^.]]*$,$U&,'` LTLIBOBJS=`echo "$LIB@&t@OBJS" | - sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'` + sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'` AC_SUBST(LTLIBOBJS) # Initial output file list. CREATE_LIST="Makefile db_cxx.h:$srcdir/../dbinc/db_cxx.in db_int.h:$srcdir/../dbinc/db_int.in - clib_port.h:$srcdir/../dist/clib_port.h + clib_port.h:$srcdir/../dist/clib_port.in include.tcl:$srcdir/../test/include.tcl" -# MinGW needs win_db.h. -if test "$db_cv_mingw" = "yes"; then -CREATE_LIST="$CREATE_LIST - win_db.h:$srcdir/win_db.in" -fi - # Create the db.h file from a source file, a list of global function # prototypes, and, if configured for unique names, a list of #defines # to do DB_VERSION_UNIQUE_NAME substitution. diff --git a/db/dist/configure.in b/db/dist/configure.in deleted file mode 100644 index 6c2a0c5d0..000000000 --- a/db/dist/configure.in +++ /dev/null @@ -1,501 +0,0 @@ -dnl $Id: configure.in,v 11.77 2001/01/18 19:05:25 bostic Exp $ -dnl Process this file with autoconf to produce a configure script. - -AC_INIT(../db/db.c) -AC_CONFIG_HEADER(db_config.h:config.hin) - -dnl Configure setup. -AC_PROG_INSTALL() -AC_CANONICAL_HOST -AC_ARG_PROGRAM() - -dnl We cannot build in the top-level directory. -AC_MSG_CHECKING(if building in the top-level directory) -[ test -d db_archive ] && AC_MSG_ERROR([ -Berkeley DB cannot be built in the top-level distribution directory.]) -AC_MSG_RESULT(no) - -dnl Substitution variables. -AC_SUBST(ADDITIONAL_INCS) -AC_SUBST(ADDITIONAL_LANG) -AC_SUBST(ADDITIONAL_LIBS) -AC_SUBST(ADDITIONAL_OBJS) -AC_SUBST(ADDITIONAL_PROGS) -AC_SUBST(CFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(CXX) -AC_SUBST(CXXFLAGS) -AC_SUBST(DBS_LIBS) -AC_SUBST(DEFAULT_INSTALL) -AC_SUBST(DEFAULT_LIB) -AC_SUBST(INSTALLER) -AC_SUBST(INSTALL_LIBS) -AC_SUBST(JAR) -AC_SUBST(JAVAC) -AC_SUBST(JAVACFLAGS) -AC_SUBST(LDFLAGS) -AC_SUBST(LIBDB_ARGS) -AC_SUBST(LIBJSO_LIBS) -AC_SUBST(LIBS) -AC_SUBST(LIBSO_LIBS) -AC_SUBST(LIBTOOL) -AC_SUBST(LIBTSO_LIBS) -AC_SUBST(LIBXSO_LIBS) -AC_SUBST(MAKEFILE_CC) -AC_SUBST(MAKEFILE_CCLINK) -AC_SUBST(MAKEFILE_CXX) -AC_SUBST(POSTLINK) -AC_SUBST(RPC_OBJS) -AC_SUBST(SOFLAGS) -AC_SUBST(SOLINK) -AC_SUBST(SOSUFFIX) - -dnl $o is set to ".o" or ".lo", and is the file suffix used in the -dnl Makefile instead of .o -AC_SUBST(o) -o=.o -INSTALLER="\$(cp)" -DEFAULT_LIB="\$(libdb)" -DEFAULT_INSTALL="install_static" - -dnl Set the version. -AM_VERSION_SET - -dnl Set the default installation location. -AC_PREFIX_DEFAULT(/usr/local/BerkeleyDB.@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@) - -dnl Process all options before using them. This is necessary because there -dnl are dependencies among them. -AM_OPTIONS_SET - -dnl This is where we handle stuff that autoconf can't handle: compiler, -dnl preprocessor and load flags, libraries that the standard tests don't -dnl look for. The default optimization is -O. We would like to set the -dnl default optimization for systems using gcc to -O2, but we can't. By -dnl the time we know we're using gcc, it's too late to set optimization -dnl flags. -dnl -dnl There are additional libraries we need for some compiler/architecture -dnl combinations. -dnl -dnl Some architectures require DB to be compiled with special flags and/or -dnl libraries for threaded applications -dnl -dnl The makefile CC may be different than the CC used in config testing, -dnl because the makefile CC may be set to use $(LIBTOOL). -dnl -dnl XXX -dnl Don't override anything if it's already set from the environment. -optimize_def="-O" -case "$host_os" in -aix4.*) optimize_def="-O2" - CC=${CC-"xlc_r"} - CPPFLAGS="-D_THREAD_SAFE $CPPFLAGS" - LIBTSO_LIBS="\$(LIBS)";; -bsdi3*) CC=${CC-"shlicc2"} - optimize_def="-O2" - LIBS="-lipc $LIBS";; -bsdi*) optimize_def="-O2";; -freebsd*) optimize_def="-O2" - CPPFLAGS="-D_THREAD_SAFE $CPPFLAGS" - LIBS="-pthread";; -hpux*) CPPFLAGS="-D_REENTRANT $CPPFLAGS";; -irix*) optimize_def="-O2" - CPPFLAGS="-D_SGI_MP_SOURCE $CPPFLAGS";; -linux*) optimize_def="-O2" - CFLAGS="-D_GNU_SOURCE" - CPPFLAGS="-D_REENTRANT $CPPFLAGS";; -mpeix*) CPPFLAGS="-D_POSIX_SOURCE -D_SOCKET_SOURCE $CPPFLAGS" - LIBS="-lsocket -lsvipc $LIBS";; -osf*) CPPFLAGS="-D_REENTRANT $CPPFLAGS";; -*qnx) AC_DEFINE(HAVE_QNX);; -sco3.2v4*) CC=${CC-"cc -belf"} - LIBS="-lsocket -lnsl_s $LIBS";; -sco*) CC=${CC-"cc -belf"} - LIBS="-lsocket -lnsl $LIBS";; -solaris*) CPPFLAGS="-D_REENTRANT $CPPFLAGS";; -esac - -dnl Set CFLAGS/CXXFLAGS. We MUST set the flags before we call autoconf -dnl compiler configuration macros, because if we don't, they set CFLAGS -dnl to no optimization and -g, which isn't what we want. -CFLAGS=${CFLAGS-$optimize_def} -CXXFLAGS=${CXXFLAGS-"$CFLAGS"} - -dnl If the user wants a debugging environment, add -g to the CFLAGS value. -dnl -dnl XXX -dnl Some compilers can't mix optimizing and debug flags. The only way to -dnl handle this is to specify CFLAGS in the environment before configuring. -if test "$db_cv_debug" = yes; then - AC_DEFINE(DEBUG) - CFLAGS="$CFLAGS -g" - CXXFLAGS="$CXXFLAGS -g" -fi - -dnl The default compiler is cc (NOT gcc), the default CFLAGS is as specified -dnl above, NOT what is set by AC_PROG_CC, as it won't set optimization flags. -dnl We still call AC_PROG_CC so that we get the other side-effects. -AC_CHECK_PROG(CC, cc, cc) -AC_CHECK_PROG(CC, gcc, gcc) -AC_PROG_CC - -dnl Because of dynamic library building, the ${CC} used for config tests -dnl may be different than the ${CC} we want to put in the Makefile. -dnl The latter is known as ${MAKEFILE_CC} in this script. -MAKEFILE_CC=${CC} -MAKEFILE_CCLINK="\$(CC)" -MAKEFILE_CXX="nocxx" - -dnl Set some #defines based on configuration options. -if test "$db_cv_diagnostic" = yes; then - AC_DEFINE(DIAGNOSTIC) -fi -if test "$db_cv_debug_rop" = yes; then - AC_DEFINE(DEBUG_ROP) -fi -if test "$db_cv_debug_wop" = yes; then - AC_DEFINE(DEBUG_WOP) -fi -if test "$db_cv_umrw" = yes; then - AC_DEFINE(UMRW) -fi -if test "$db_cv_test" = yes; then - AC_DEFINE(CONFIG_TEST) -fi - -dnl See if we need the C++ compiler at all. If so, we'd like to find one that -dnl interoperates with the C compiler we chose. Since we prefered cc over gcc, -dnl we'll also prefer the vendor's compiler over g++/gcc. If we're wrong, the -dnl user can set CC and CXX in their environment before running configure. -dnl -dnl AC_PROG_CXX sets CXX, but it uses $CXX and $CCC (in that order) as its -dnl first choices. -if test "$db_cv_cxx" = "yes"; then - if test "$GCC" != "yes"; then - case "$host_os" in - aix*) AC_CHECK_PROG(CCC, xlC_r, xlC_r);; - hpux*) AC_CHECK_PROG(CCC, aCC, aCC);; - osf*) AC_CHECK_PROG(CCC, cxx, cxx);; - solaris*) AC_CHECK_PROG(CCC, CC, CC);; - esac - fi - AC_PROG_CXX - MAKEFILE_CXX=${CXX} -fi - -dnl XXX -dnl Versions of GCC up to 2.8.0 required -fhandle-exceptions, but it is -dnl renamed as -fexceptions and is the default in versions 2.8.0 and after. -dnl -dnl $GXX may be set as a result of enabling C++ or Java. -if test "$GXX" = "yes"; then - CXXVERSION=`${MAKEFILE_CXX} --version` - case ${CXXVERSION} in - 1.*|2.[[01234567]].*|*-1.*|*-2.[[01234567]].* ) - CXXFLAGS="-fhandle-exceptions $CXXFLAGS";; - * ) CXXFLAGS="-fexceptions $CXXFLAGS";; - esac -fi - -dnl Export our compiler preferences for the libtool configuration. -export CC CCC -CCC=CXX - -dnl Dynamic library and libtool configuration; optional, but required for -dnl Tcl or Java support. -LIBDB_ARGS="libdb.a" -LIBTOOL="nolibtool" -POSTLINK="@true" -SOSUFFIX="so" -if test "$db_cv_dynamic" = "yes"; then - SAVE_CC="${MAKEFILE_CC}" - SAVE_CXX="${MAKEFILE_CXX}" - - # Configure libtool. - AC_MSG_CHECKING(libtool configuration) - AC_MSG_RESULT([]) - ${CONFIG_SHELL-/bin/sh} $srcdir/ltconfig \ - --no-verify $srcdir/ltmain.sh \ - --output=./libtool $host_os \ - --disable-static \ - || AC_MSG_ERROR([libtool configure failed]) - - SOSUFFIX=`sed -e '/^library_names_spec=/!d' -e 's/.*\.\([[a-zA-Z0-9_]]*\).*/\1/' ./libtool` - DEFAULT_LIB="\$(libso_target)" - DEFAULT_INSTALL="install_dynamic" - LIBDB_ARGS="\$(libso_linkname)" - LIBTOOL="\$(SHELL) ./libtool" - - MAKEFILE_CC="\$(LIBTOOL) --mode=compile ${SAVE_CC}" - MAKEFILE_CXX="\$(LIBTOOL) --mode=compile ${SAVE_CXX}" - MAKEFILE_CCLINK="\$(LIBTOOL) --mode=link ${SAVE_CC}" - - INSTALLER="\$(LIBTOOL) --mode=install cp" - POSTLINK="\$(LIBTOOL) --mode=execute true" - SOLINK="\$(LIBTOOL) --mode=link ${SAVE_CC} -avoid-version" - SOFLAGS="-rpath \$(libdir)" - o=".lo" -fi - -dnl Optional C++ API. -if test "$db_cv_cxx" = "yes"; then - if test "$db_cv_dynamic" = "yes"; then - ADDITIONAL_LIBS="$ADDITIONAL_LIBS \$(libxso_target)" - DEFAULT_INSTALL="${DEFAULT_INSTALL} install_dynamic_cxx" - else - ADDITIONAL_LIBS="$ADDITIONAL_LIBS \$(libcxx)" - DEFAULT_INSTALL="${DEFAULT_INSTALL} install_static_cxx" - fi -fi - -dnl Optional Java API. -if test "$db_cv_java" = "yes"; then - if test "$db_cv_dynamic" != "yes"; then - AC_MSG_ERROR([--enable-java requires --enable-dynamic]) - fi - - AC_CHECK_PROG(JAVAC, javac, javac, nojavac) - if test "$JAVAC" = "nojavac"; then - AC_MSG_ERROR([no javac compiler in PATH]) - fi - AC_CHECK_PROG(JAR, jar, jar, nojar) - if test "$JAR" = "nojar"; then - AC_MSG_ERROR([no jar utility in PATH]) - fi - AC_PATH_PROG(JAVACABS, javac, nojavac) - ADDITIONAL_LIBS="$ADDITIONAL_LIBS \$(libjso_target)" - ADDITIONAL_LANG="$ADDITIONAL_LANG java" - DEFAULT_INSTALL="${DEFAULT_INSTALL} install_java" - -dnl find the include directory relative to the javac executable - while ls -ld "$JAVACABS" 2>/dev/null | grep " -> " >/dev/null; do - AC_MSG_CHECKING(symlink for $JAVACABS) - JAVACLINK=`ls -ld $JAVACABS | sed 's/.* -> //'` - case "$JAVACLINK" in - /*) JAVACABS="$JAVACLINK";; -dnl 'X' avoids triggering unwanted echo options. - *) JAVACABS=`echo "X$JAVACABS" | sed -e 's/^X//' -e 's:[[^/]]*$::'`"$JAVACLINK";; - esac - AC_MSG_RESULT($JAVACABS) - done - JTOPDIR=`echo "$JAVACABS" | sed -e 's://*:/:g' -e 's:/[[^/]]*$::'` - if test -f "$JTOPDIR/include/jni.h"; then - CPPFLAGS="$CPPFLAGSS -I$JTOPDIR/include" - else - JTOPDIR=`echo "$JTOPDIR" | sed -e 's:/[[^/]]*$::'` - if test -f "$JTOPDIR/include/jni.h"; then - CPPFLAGS="$CPPFLAGS -I$JTOPDIR/include" - else - AC_MSG_ERROR([cannot find java include files]) - fi - fi - -dnl get the likely subdirectories for system specific java includes - case "$host_os" in - solaris*) JINCSUBDIRS="solaris";; - linux*) JINCSUBDIRS="linux genunix";; - *) JINCSUBDIRS="genunix";; - esac - - for JINCSUBDIR in $JINCSUBDIRS - do - if test -d "$JTOPDIR/include/$JINCSUBDIR"; then - CPPFLAGS="$CPPFLAGS -I$JTOPDIR/include/$JINCSUBDIR" - fi - done -else - JAVAC=nojavac -fi - -dnl Optional RPC client/server. -if test "$db_cv_rpc" = "yes"; then - AC_DEFINE(HAVE_RPC) - - RPC_OBJS="\$(RPC_OBJS)" - ADDITIONAL_PROGS="berkeley_db_svc $ADDITIONAL_PROGS" - - case "$host_os" in - hpux*) - AC_CHECK_FUNC(svc_run,, - AC_CHECK_LIB(nsl, svc_run, - LIBS="-lnsl $LIBS"; LIBTSO_LIBS="-lnsl $LIBTSO_LIBS"));; - solaris*) - AC_CHECK_FUNC(svc_run,, AC_CHECK_LIB(nsl, svc_run));; - esac -fi - -AM_TCL_LOAD - -dnl Optional DB 1.85 compatibility API. -if test "$db_cv_compat185" = "yes"; then - ADDITIONAL_INCS="db_185.h $ADDITIONAL_INCS" - ADDITIONAL_OBJS="db185${o} $ADDITIONAL_OBJS" -fi - -dnl Optional utilities. -if test "$db_cv_dump185" = "yes"; then - ADDITIONAL_PROGS="db_dump185 $ADDITIONAL_PROGS" -fi - -dnl Test Server. -dnl Include -lpthread if the library exists. -AC_CHECK_LIB(pthread, pthread_create, DBS_LIBS=-lpthread) - -dnl Checks for typedefs, structures, and system/compiler characteristics. -AC_C_BIGENDIAN -AC_C_CONST -AC_HEADER_STAT -AC_HEADER_TIME -AC_STRUCT_ST_BLKSIZE -AC_TYPE_MODE_T -AC_TYPE_OFF_T -AC_TYPE_PID_T -AC_TYPE_SIZE_T - -dnl Define any short-hand types we're missing. -AM_SHORTHAND_TYPES - -dnl Checks for header files. -AC_HEADER_DIRENT -AC_CHECK_HEADERS(sys/select.h) -AC_CHECK_HEADERS(sys/time.h) - -dnl Check for mutexes. We do this here because it changes $LIBS. -AM_DEFINE_MUTEXES - -dnl Checks for system functions for which we have replacements. -dnl -dnl XXX -dnl The only portable getcwd call is getcwd(char *, size_t), where the -dnl buffer is non-NULL -- Solaris can't handle a NULL buffer, and they -dnl deleted getwd(). -AC_REPLACE_FUNCS(getcwd getopt memcmp memcpy memmove) -AC_REPLACE_FUNCS(raise snprintf strcasecmp strerror vsnprintf) - -dnl XXX -dnl Nasty hack. AC_REPLACE_FUNCS added entries of the form xxx.o to the -dnl LIBOBJS variable. They have to be xxx.lo if we are building shared -dnl libraries. Use sed, configure already requires it. -tmp="`echo \"$LIBOBJS\" | sed \"s/\.o/${o}/g\"`" -LIBOBJS="$tmp" - -dnl Check for system functions we optionally use. -AC_CHECK_FUNCS(getuid pstat_getdynamic sysconf sched_yield strtoul yield) - -dnl Pread/pwrite. -dnl -dnl HP-UX has pread/pwrite, but it doesn't work with bigfile support. -case "$host_os" in -hpux*) - AC_MSG_WARN([pread/pwrite interfaces ignored on $host_os.]);; -*) AC_CHECK_FUNCS(pread pwrite) -esac - -dnl Check for fcntl(2) to deny child process access to file descriptors. -AC_CACHE_CHECK([for fcntl/F_SETFD], db_cv_fcntl_f_setfd, [dnl -AC_TRY_RUN([ -#include -#include -main(){exit(fcntl(1, F_SETFD, 1) == -1);}], - [db_cv_fcntl_f_setfd=yes], [db_cv_fcntl_f_setfd=no])]) -if test "$db_cv_fcntl_f_setfd" = yes; then - AC_DEFINE(HAVE_FCNTL_F_SETFD) -fi - -dnl A/UX has a broken getopt(3). -case "$host_os" in -aux*) ADDITIONAL_OBJS="getopt${o} $ADDITIONAL_OBJS";; -esac - -dnl Checks for system functions for which we don't have replacements. - -dnl We require qsort(3) and select(2). -AC_CHECK_FUNCS(qsort, , AC_MSG_ERROR([No qsort library function.])) -AC_CHECK_FUNCS(select, , AC_MSG_ERROR([No select library function.])) - -dnl Some versions of sprintf return a pointer to the first argument instead -dnl of a character count. We assume that the return value of snprintf and -dnl vsprintf etc. will be the same as sprintf, and check the easy one. -AC_CACHE_CHECK([for int type sprintf return value], db_cv_sprintf_count, [dnl -AC_TRY_RUN([main(){char buf[20]; exit(sprintf(buf, "XXX") != 3);}], - [db_cv_sprintf_count=yes], [db_cv_sprintf_count=no])]) -if test "$db_cv_sprintf_count" = no; then - AC_DEFINE(SPRINTF_RET_CHARPNT) -fi - -dnl Vendors are doing 64-bit lseek in different ways. -dnl AIX, HP/UX, Solaris and Linux all use _FILE_OFFSET_BITS -dnl to specify a "big-file" environment. -dnl -dnl You can't build C++ with big-file support on HP-UX, the include files -dnl are wrong. On Solaris 8, included with big-file support -dnl is not compatible with C++. -if test "$db_cv_bigfile" = no; then - case "$host_os" in - solaris2.8|hpux*) - if test "$db_cv_cxx" = "yes"; then - AC_MSG_WARN([Large file and C++ API support are incompatible on HP-UX]) - AC_MSG_WARN([and Solaris 8; large file support has been turned off.]) - else - AC_DEFINE(HAVE_FILE_OFFSET_BITS) - fi;; - aix*|solaris*|linux*) - AC_DEFINE(HAVE_FILE_OFFSET_BITS);; - esac -fi - -dnl Figure out how to create shared regions. -dnl -dnl First, we look for mmap. -dnl -dnl BSD/OS has mlock(2), but it doesn't work until the 4.1 release. -dnl -dnl Nextstep (version 3.3) apparently supports mmap(2) (the mmap symbol -dnl is defined in the C library) but does not support munmap(2). Don't -dnl try to use mmap if we can't find munmap. -dnl -dnl Ultrix has mmap(2), but it doesn't work. -mmap_ok=no -case "$host_os" in -bsdi3*|bsdi4.0) - AC_MSG_WARN([mlock(2) interface ignored on BSD/OS 3.X and 4.0.]) - mmap_ok=yes - AC_CHECK_FUNCS(mmap munmap, , mmap_ok=no);; -ultrix*) - AC_MSG_WARN([mmap(2) interface ignored on Ultrix.]);; -*) - mmap_ok=yes - AC_CHECK_FUNCS(mlock munlock) - AC_CHECK_FUNCS(mmap munmap, , mmap_ok=no);; -esac - -dnl Second, we look for shmget. -dnl -dnl SunOS has the shmget(2) interfaces, but there appears to be a missing -dnl #include file, so we ignore them. -shmget_ok=no -case "$host_os" in -sunos*) - AC_MSG_WARN([shmget(2) interface ignored on SunOS.]);; -*) - shmget_ok=yes - AC_CHECK_FUNCS(shmget, , shmget_ok=no);; -esac - -dnl We require either mmap/munmap(2) or shmget(2). -if test "$mmap_ok" = no -a "$shmget_ok" = no; then - AC_MSG_WARN([Neither mmap/munmap(2) or shmget(2) library functions.]) -fi - -dnl Check for programs used in building and installation. -AM_PROGRAMS_SET - -CREATE_LIST="Makefile - include.tcl:../test/include.tcl - db.h:../include/db.src - db_int.h:../include/db_int.src" -if test "$db_cv_compat185" = "yes"; then - CREATE_LIST="${CREATE_LIST} db_185.h:../include/db_185.h" -fi -AC_OUTPUT(${CREATE_LIST}) diff --git a/db/dist/errno.h b/db/dist/errno.h index ae5bc88c8..935efcce2 100644 --- a/db/dist/errno.h +++ b/db/dist/errno.h @@ -34,15 +34,14 @@ * @(#)errno.h 8.5 (Berkeley) 1/21/94 * FreeBSD: /repoman/r/ncvs/src/sys/sys/errno.h,v 1.28 2005/04/02 12:33:28 das Exp $ * - * $Id: errno.h,v 1.2 2006/06/11 16:13:13 bostic Exp $ + * $Id: errno.h,v 1.4 2006/11/09 14:23:11 bostic Exp $ */ #ifndef _SYS_ERRNO_H_ #define _SYS_ERRNO_H_ #undef errno -#define errno __db_errno -extern int __db_errno; +#define errno DB_GLOBAL(db_errno) #define EPERM 1 /* Operation not permitted */ #define ENOENT 2 /* No such file or directory */ @@ -91,7 +90,10 @@ extern int __db_errno; #ifndef _POSIX_SOURCE #define EWOULDBLOCK EAGAIN /* Operation would block */ #define EINPROGRESS 36 /* Operation now in progress */ + +#ifndef EALREADY /* BREW already has an EALREADY. */ #define EALREADY 37 /* Operation already in progress */ +#endif /* ipc/network software -- argument errors */ #define ENOTSOCK 38 /* Socket operation on non-socket */ diff --git a/db/dist/gen_rec.awk b/db/dist/gen_rec.awk index a8f1f01f3..dcf2ffc88 100644 --- a/db/dist/gen_rec.awk +++ b/db/dist/gen_rec.awk @@ -2,10 +2,9 @@ # # See the file LICENSE for redistribution information. # -# Copyright (c) 1996-2006 -# Oracle Corporation. All rights reserved. +# Copyright (c) 1996,2007 Oracle. All rights reserved. # -# $Id: gen_rec.awk,v 12.22 2006/09/14 15:00:47 bostic Exp $ +# $Id: gen_rec.awk,v 12.28 2007/06/13 19:01:29 bostic Exp $ # # This awk script generates all the log, print, and read routines for the DB @@ -108,6 +107,7 @@ BEGIN { exit } in_begin = 1; + is_duplicate = 0; is_dbt = 0; has_dbp = 0; is_uint = 0; @@ -122,21 +122,13 @@ BEGIN { nvars = 0; thisfunc = $2; + dup_thisfunc = $2; version = $3; if (not_buf) rectype = $4; - logfunc = sprintf("%s_%s", prefix, $2); - logname[num_funcs] = logfunc; - if (is_compat) { - funcname = sprintf("%s_%s_%s", prefix, $2, version); - } else { - funcname = logfunc; - } - funcs[num_funcs] = funcname; - functable[num_funcs] = is_compat; - ++num_funcs; + make_name(thisfunc, thisfunc, version); } /^[ ]*(DB|ARG|DBT|LOCKS|PGDBT|POINTER|TIME)/ { vars[nvars] = $2; @@ -164,6 +156,19 @@ BEGIN { } nvars++; } +/^[ ]*DUPLICATE/ { + is_duplicate = 1; + dup_rectype = $4; + old_logfunc = logfunc; + old_funcname = funcname; + make_name($2, funcname, $3); + internal_name = sprintf("%s_%s_int", prefix, thisfunc); + dup_logfunc = logfunc; + dup_funcname = funcname; + dup_thisfunc = $2; + logfunc = old_logfunc; + funcname = old_funcname; +} /^[ ]*END/ { if (!in_begin) { print "Invalid format: missing BEGIN statement" @@ -173,6 +178,10 @@ BEGIN { # Declare the record type. if (not_buf) { printf("#define\tDB_%s\t%d\n", funcname, rectype) >> HFILE + if (is_duplicate) + printf("#define\tDB_%s\t%d\n", \ + dup_funcname, dup_rectype) >> HFILE + } # Structure declaration. @@ -207,8 +216,8 @@ BEGIN { # Recovery template if (not_buf) { cmd = sprintf(\ - "sed -e s/PREF/%s/ -e s/FUNC/%s/ < template/rec_ctemp >> %s", - prefix, thisfunc, TFILE) + "sed -e s/PREF/%s/ -e s/FUNC/%s/ -e s/DUP/%s/ < template/rec_ctemp >> %s", + prefix, thisfunc, dup_thisfunc, TFILE) system(cmd); } @@ -256,7 +265,7 @@ END { printf("\tif ((ret = __db_add_recovery(dbenv, ") >> PFILE; printf("dtabp, dtabsizep,\n") >> PFILE; printf("\t %s_print, DB_%s)) != 0)\n", \ - funcs[i], funcs[i]) >> PFILE; + dupfuncs[i], funcs[i]) >> PFILE; printf("\t\treturn (ret);\n") >> PFILE; } printf("\treturn (0);\n}\n") >> PFILE; @@ -301,82 +310,19 @@ END { function log_function() { - # Write the log function; function prototype - pi = 1; - if (not_buf) { - p[pi++] = sprintf("int %s_log", logfunc); - p[pi++] = " "; - if (has_dbp == 1) { - p[pi++] = "__P((DB *"; - } else { - p[pi++] = "__P((DB_ENV *"; - } - p[pi++] = ", DB_TXN *, DB_LSN *, u_int32_t"; - } else { - p[pi++] = sprintf("int %s_buf", logfunc); - p[pi++] = " "; - p[pi++] = "__P((u_int8_t *, size_t, size_t *"; - } - for (i = 0; i < nvars; i++) { - if (modes[i] == "DB") - continue; - p[pi++] = ", "; - p[pi++] = sprintf("%s%s%s", - (modes[i] == "DBT" || modes[i] == "LOCKS" || - modes[i] == "PGDBT") ? "const " : "", types[i], - (modes[i] == "DBT" || modes[i] == "LOCKS" || - modes[i] == "PGDBT") ? " *" : ""); + log_prototype(logfunc, 0); + if (is_duplicate) { + log_prototype(dup_logfunc, 0); + log_prototype(internal_name, 1); } - p[pi++] = ""; - p[pi++] = "));"; - p[pi++] = ""; - proto_format(p, CFILE); # Function declaration - if (not_buf && has_dbp == 1) { - printf("int\n%s_log(dbp, txnp, ret_lsnp, flags", \ - logfunc) >> CFILE; - } else if (not_buf) { - printf("int\n%s_log(dbenv, txnp, ret_lsnp, flags", \ - logfunc) >> CFILE; - } else { - printf("int\n%s_buf(buf, max, lenp", logfunc) >> CFILE; - } - for (i = 0; i < nvars; i++) { - if (modes[i] == "DB") { - # We pass in fileids on the dbp, so if this is one, - # skip it. - continue; - } - printf(",") >> CFILE; - if ((i % 6) == 0) - printf("\n ") >> CFILE; - else - printf(" ") >> CFILE; - printf("%s", vars[i]) >> CFILE; - } - printf(")\n") >> CFILE; - - # Now print the parameters - if (not_buf) { - if (has_dbp == 1) { - printf("\tDB *dbp;\n") >> CFILE; - } else { - printf("\tDB_ENV *dbenv;\n") >> CFILE; - } - printf("\tDB_TXN *txnp;\n\tDB_LSN *ret_lsnp;\n") >> CFILE; - printf("\tu_int32_t flags;\n") >> CFILE; - } else { - printf("\tu_int8_t *buf;\n") >> CFILE; - printf("\tsize_t max, *lenp;\n") >> CFILE; - } - for (i = 0; i < nvars; i++) { - # We just skip for modes == DB. - if (modes[i] == "DBT" || - modes[i] == "LOCKS" || modes[i] == "PGDBT") - printf("\tconst %s *%s;\n", types[i], vars[i]) >> CFILE; - else if (modes[i] != "DB") - printf("\t%s %s;\n", types[i], vars[i]) >> CFILE; + log_funcdecl(logfunc, 0); + if (is_duplicate) { + log_callint(funcname); + log_funcdecl(dup_logfunc, 0); + log_callint(dup_funcname); + log_funcdecl(internal_name, 1); } # Function body and local decls @@ -415,7 +361,10 @@ function log_function() printf("\tdbenv = dbp->dbenv;\n") >> CFILE; if (dbprivate) printf("\tCOMPQUIET(lr, NULL);\n\n") >> CFILE; - printf("\trectype = DB_%s;\n", logfunc) >> CFILE; + if (is_duplicate) + printf("\trectype = type;\n") >> CFILE; + else + printf("\trectype = DB_%s;\n", funcname) >> CFILE; printf("\tnpad = 0;\n") >> CFILE; printf("\trlsnp = ret_lsnp;\n\n") >> CFILE; } @@ -643,6 +592,7 @@ function log_function() printf("\t\t\tif (rlsnp != ret_lsnp)\n") >> CFILE; printf("\t\t\t\t *ret_lsnp = *rlsnp;\n") >> CFILE; printf("\t\t}\n\t} else {\n") >> CFILE; + printf("\t\tret = 0;\n") >> CFILE; printf("#ifdef DIAGNOSTIC\n") >> CFILE; # Add the debug bit if we are logging a ND record. @@ -660,11 +610,10 @@ function log_function() printf("logrec.data, &rectype, sizeof(rectype));\n\n") \ >> CFILE; # Output the log record. - printf("\t\tret = __log_put(dbenv,\n") >> CFILE; - printf("\t\t rlsnp, (DBT *)&logrec, ") >> CFILE; + printf("\t\tif (!IS_REP_CLIENT(dbenv))\n") >> CFILE; + printf("\t\t\tret = __log_put(dbenv,\n") >> CFILE; + printf("\t\t\t rlsnp, (DBT *)&logrec, ") >> CFILE; printf("flags | DB_LOG_NOCOPY);\n") >> CFILE; - printf("#else\n") >> CFILE; - printf("\t\tret = 0;\n") >> CFILE; printf("#endif\n") >> CFILE; # Add a ND record to the txn list. printf("\t\tSTAILQ_INSERT_HEAD(&txnp") >> CFILE; @@ -712,6 +661,46 @@ function log_function() printf("\treturn (ret);\n}\n\n") >> CFILE; } +function log_prototype(fname, with_type) +{ + + # Write the log function; function prototype + pi = 1; + if (not_buf) { + p[pi++] = sprintf("int %s_log", fname); + p[pi++] = " "; + if (has_dbp == 1) { + p[pi++] = "__P((DB *"; + } else { + p[pi++] = "__P((DB_ENV *"; + } + p[pi++] = ", DB_TXN *, DB_LSN *, u_int32_t"; + } else { + p[pi++] = sprintf("int %s_buf", fname); + p[pi++] = " "; + p[pi++] = "__P((u_int8_t *, size_t, size_t *"; + } + for (i = 0; i < nvars; i++) { + if (modes[i] == "DB") + continue; + p[pi++] = ", "; + p[pi++] = sprintf("%s%s%s", + (modes[i] == "DBT" || modes[i] == "LOCKS" || + modes[i] == "PGDBT") ? "const " : "", types[i], + (modes[i] == "DBT" || modes[i] == "LOCKS" || + modes[i] == "PGDBT") ? " *" : ""); + } + + # If this is a logging call with type, add the type here. + if (with_type) + p[pi++] = ", u_int32_t"; + + p[pi++] = ""; + p[pi++] = "));"; + p[pi++] = ""; + proto_format(p, CFILE); +} + # If we're logging a DB handle, make sure we have a log # file ID for it. function db_handle_id_function(modes, n) @@ -1010,3 +999,109 @@ function write_free(tab, ptr, file) print(tab "free(" ptr ");") >> file } } + +function make_name(unique_name, dup_name, p_version) +{ + logfunc = sprintf("%s_%s", prefix, unique_name); + logname[num_funcs] = logfunc; + if (is_compat) { + funcname = sprintf("%s_%s_%s", prefix, unique_name, p_version); + } else { + funcname = logfunc; + } + + if (is_duplicate) + dupfuncs[num_funcs] = dup_name; + else + dupfuncs[num_funcs] = funcname; + + funcs[num_funcs] = funcname; + functable[num_funcs] = is_compat; + ++num_funcs; +} + +function log_funcdecl(name, withtype) +{ + # Function declaration + if (not_buf && has_dbp == 1) { + printf("int\n%s_log(dbp, txnp, ret_lsnp, flags", \ + name) >> CFILE; + } else if (not_buf) { + printf("int\n%s_log(dbenv, txnp, ret_lsnp, flags", \ + name) >> CFILE; + } else { + printf("int\n%s_buf(buf, max, lenp", name) >> CFILE; + } + for (i = 0; i < nvars; i++) { + if (modes[i] == "DB") { + # We pass in fileids on the dbp, so if this is one, + # skip it. + continue; + } + printf(",") >> CFILE; + if ((i % 6) == 0) + printf("\n ") >> CFILE; + else + printf(" ") >> CFILE; + printf("%s", vars[i]) >> CFILE; + } + + if (withtype) + printf(", type") >> CFILE; + + printf(")\n") >> CFILE; + + # Now print the parameters + if (not_buf) { + if (has_dbp == 1) { + printf("\tDB *dbp;\n") >> CFILE; + } else { + printf("\tDB_ENV *dbenv;\n") >> CFILE; + } + printf("\tDB_TXN *txnp;\n\tDB_LSN *ret_lsnp;\n") >> CFILE; + printf("\tu_int32_t flags;\n") >> CFILE; + } else { + printf("\tu_int8_t *buf;\n") >> CFILE; + printf("\tsize_t max, *lenp;\n") >> CFILE; + } + for (i = 0; i < nvars; i++) { + # We just skip for modes == DB. + if (modes[i] == "DBT" || + modes[i] == "LOCKS" || modes[i] == "PGDBT") + printf("\tconst %s *%s;\n", types[i], vars[i]) >> CFILE; + else if (modes[i] != "DB") + printf("\t%s %s;\n", types[i], vars[i]) >> CFILE; + } + if (withtype) + printf("\tu_int32_t type;\n") >> CFILE; +} + +# This should always be called with not_buf +function log_callint(fname) +{ + if (has_dbp == 1) { + printf("\n{\n\treturn (%s_log(dbp, txnp, ret_lsnp, flags", \ + internal_name) >> CFILE; + } else { + printf("\n{\n\treturn (%s_log(dbenv, txnp, ret_lsnp, flags", \ + internal_name) >> CFILE; + } + + for (i = 0; i < nvars; i++) { + if (modes[i] == "DB") { + # We pass in fileids on the dbp, so if this is one, + # skip it. + continue; + } + printf(",") >> CFILE; + if ((i % 6) == 0) + printf("\n ") >> CFILE; + else + printf(" ") >> CFILE; + printf("%s", vars[i]) >> CFILE; + } + + printf(", DB_%s", fname) >> CFILE; + + printf("));\n}\n") >> CFILE; +} diff --git a/db/dist/gen_rpc.awk b/db/dist/gen_rpc.awk index e4bf85e76..7b3e63508 100644 --- a/db/dist/gen_rpc.awk +++ b/db/dist/gen_rpc.awk @@ -1,5 +1,5 @@ # -# $Id: gen_rpc.awk,v 12.7 2006/05/05 15:29:43 bostic Exp $ +# $Id: gen_rpc.awk,v 12.13 2007/05/23 15:07:29 bostic Exp $ # Awk script for generating client/server RPC code. # # This awk script generates most of the RPC routines for DB client/server @@ -757,7 +757,8 @@ END { args[i], args[i], xidsize) >> CFILE } if (rpc_type[i] == "INT") { - printf("\tmsg.%s = %s;\n", args[i], args[i]) >> CFILE + printf("\tmsg.%s = (u_int)%s;\n", + args[i], args[i]) >> CFILE } if (rpc_type[i] == "STRING") { printf("\tif (%s == NULL)\n", args[i]) >> CFILE @@ -790,8 +791,8 @@ END { # If we are an array of ints, *_len is how many # elements. If we are a GID, *_len is total bytes. # - printf("\tmsg.%s.%s_len = %si",args[i], args[i], \ - args[i]) >> CFILE + printf("\tmsg.%s.%s_len = (u_int)%si", + args[i], args[i], args[i]) >> CFILE if (list_type[i] == "GID") printf(" * %d;\n", xidsize) >> CFILE else @@ -858,10 +859,11 @@ END { # for (i = 0; i < rvars; ++i) { if (ret_isarg[i]) { - printf("\tif (%sp != NULL)\n", \ + printf("\tif (%sp != NULL)\n", retargs[i]) >> CFILE; - printf("\t\t*%sp = replyp->%s;\n", \ - retargs[i], retargs[i]) >> CFILE; + printf("\t\t*%sp = (%s)replyp->%s;\n", + retargs[i], + retc_type[i], retargs[i]) >> CFILE; } } } else { @@ -984,7 +986,7 @@ function general_headers() printf("#include \"db_config.h\"\n") >> CFILE printf("\n") >> CFILE printf("#include \"db_int.h\"\n") >> CFILE - printf("#ifndef NO_SYSTEM_INCLUDES\n") >> CFILE + printf("#ifdef HAVE_SYSTEM_INCLUDE_FILES\n") >> CFILE printf("#include \n") >> CFILE printf("#endif\n") >> CFILE printf("#include \"db_server.h\"\n") >> CFILE @@ -1001,7 +1003,7 @@ function general_headers() printf("#include \"db_config.h\"\n") >> SFILE printf("\n") >> SFILE printf("#include \"db_int.h\"\n") >> SFILE - printf("#ifndef NO_SYSTEM_INCLUDES\n") >> SFILE + printf("#ifdef HAVE_SYSTEM_INCLUDE_FILES\n") >> SFILE printf("#include \n") >> SFILE printf("#endif\n") >> SFILE printf("#include \"db_server.h\"\n") >> SFILE @@ -1012,7 +1014,7 @@ function general_headers() printf("#include \"db_config.h\"\n") >> PFILE printf("\n") >> PFILE printf("#include \"db_int.h\"\n") >> PFILE - printf("#ifndef NO_SYSTEM_INCLUDES\n") >> PFILE + printf("#ifdef HAVE_SYSTEM_INCLUDE_FILES\n") >> PFILE printf("#include \n") >> PFILE printf("#endif\n") >> PFILE printf("#include \"db_server.h\"\n") >> PFILE @@ -1028,6 +1030,8 @@ function illegal_functions(OUTPUT) printf("static int __dbcl_dbp_illegal __P((DB *));\n") >> OUTPUT printf("static int __dbcl_noserver __P((DB_ENV *));\n") >> OUTPUT printf("static int __dbcl_txn_illegal __P((DB_TXN *));\n") >> OUTPUT + # If we ever need an "illegal" function for a DBC method. + # printf("static int __dbcl_dbc_illegal __P((DBC *));\n") >> OUTPUT printf("\n") >> OUTPUT printf("static int\n") >> OUTPUT @@ -1071,23 +1075,38 @@ function illegal_functions(OUTPUT) printf("{\n\treturn (__dbcl_dbenv_illegal(txn->mgrp->dbenv));\n")\ >> OUTPUT printf("}\n\n") >> OUTPUT + # If we ever need an "illegal" function for a DBC method. + # printf("static int\n") >> OUTPUT + # printf("__dbcl_dbc_illegal(dbc)\n") >> OUTPUT + # printf("\tDBC *dbc;\n") >> OUTPUT + # printf("{\n\treturn (__dbcl_dbenv_illegal(dbc->dbp->dbenv));\n") \ + # >> OUTPUT + # printf("}\n\n") >> OUTPUT } function obj_func(v, l) { - # Ignore db_create -- there's got to be something cleaner, but I - # don't want to rewrite rpc.src right now. + # Ignore db_create and env_create -- there's got to be something + # cleaner, but I don't want to rewrite rpc.src right now. if (name == "db_create") return; if (name == "env_create") return; - # Strip off the leading prefix for the method name -- there's got to - # be something cleaner, but I don't want to rewrite rpc.src right now. + # Strip off the leading prefix for the method name. + # + # There are two method names for cursors, the old and the new. + # + # There just has to be something cleaner, but yadda, yadda, yadda. len = length(name); i = index(name, "_"); - l[obj_indx] = sprintf("\t%s->%s = __dbcl_%s;", - v, substr(name, i + 1, len - i), name); + s = substr(name, i + 1, len - i) + + if (v != "dbc" || s == "get_priority" || s == "set_priority") + o = "" + else + o = sprintf(" = %s->c_%s", v, s) + l[obj_indx] = sprintf("\t%s->%s%s = __dbcl_%s;", v, s, o, name) } function obj_illegal(l, handle, method, proto) diff --git a/db/dist/ltconfig b/db/dist/ltconfig deleted file mode 100644 index f78afda0e..000000000 --- a/db/dist/ltconfig +++ /dev/null @@ -1,3136 +0,0 @@ -#! /bin/sh - -# ltconfig - Create a system-specific libtool. -# Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A lot of this script is taken from autoconf-2.10. - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} -echo=echo -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec "$SHELL" "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null`} - case X$UNAME in - *-DOS) PATH_SEPARATOR=';' ;; - *) PATH_SEPARATOR=':' ;; - esac -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -if test "X${echo_test_string+set}" != Xset; then - # find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if (echo_test_string="`eval $cmd`") 2>/dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" != 'X\t' || - test "X`($echo "$echo_test_string") 2>/dev/null`" != X"$echo_test_string"; then - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running ltconfig again with it. - ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}" - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf "%s\n"' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - test "X`($echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then - # Cool, printf works - : - elif test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' && - test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then - CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL" - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif test "X`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' && - test "X`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec "${ORIGINAL_CONFIG_SHELL}" "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# The name of this program. -progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` - -# Constants: -PROGRAM=ltconfig -PACKAGE=libtool -VERSION=1.3.5 -TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)" -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -rm="rm -f" - -help="Try \`$progname --help' for more information." - -# Global variables: -default_ofile=libtool -can_build_shared=yes -enable_shared=yes -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -enable_static=yes -enable_fast_install=yes -enable_dlopen=unknown -enable_win32_dll=no -ltmain= -silent= -srcdir= -ac_config_guess= -ac_config_sub= -host= -nonopt= -ofile="$default_ofile" -verify_host=yes -with_gcc=no -with_gnu_ld=no -need_locks=yes -ac_ext=c -objext=o -libext=a -exeext= -cache_file= - -old_AR="$AR" -old_CC="$CC" -old_CFLAGS="$CFLAGS" -old_CPPFLAGS="$CPPFLAGS" -old_LDFLAGS="$LDFLAGS" -old_LD="$LD" -old_LN_S="$LN_S" -old_LIBS="$LIBS" -old_NM="$NM" -old_RANLIB="$RANLIB" -old_DLLTOOL="$DLLTOOL" -old_OBJDUMP="$OBJDUMP" -old_AS="$AS" - -# Parse the command line options. -args= -prev= -for option -do - case "$option" in - -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - eval "$prev=\$option" - prev= - continue - fi - - case "$option" in - --help) cat <&2 - echo "$help" 1>&2 - exit 1 - ;; - - *) - if test -z "$ltmain"; then - ltmain="$option" - elif test -z "$host"; then -# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1 -# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then -# echo "$progname: warning \`$option' is not a valid host type" 1>&2 -# fi - host="$option" - else - echo "$progname: too many arguments" 1>&2 - echo "$help" 1>&2 - exit 1 - fi ;; - esac -done - -if test -z "$ltmain"; then - echo "$progname: you must specify a LTMAIN file" 1>&2 - echo "$help" 1>&2 - exit 1 -fi - -if test ! -f "$ltmain"; then - echo "$progname: \`$ltmain' does not exist" 1>&2 - echo "$help" 1>&2 - exit 1 -fi - -# Quote any args containing shell metacharacters. -ltconfig_args= -for arg -do - case "$arg" in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ltconfig_args="$ltconfig_args '$arg'" ;; - *) ltconfig_args="$ltconfig_args $arg" ;; - esac -done - -# A relevant subset of AC_INIT. - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 5 compiler messages saved in config.log -# 6 checking for... messages and results -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>>./config.log - -# NLS nuisances. -# Only set LANG and LC_ALL to C if already set. -# These must not be set unconditionally because not all systems understand -# e.g. LANG=C (notably SCO). -if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi -if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi - -if test -n "$cache_file" && test -r "$cache_file"; then - echo "loading cache $cache_file within ltconfig" - . $cache_file -fi - -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi - -if test -z "$srcdir"; then - # Assume the source directory is the same one as the path to LTMAIN. - srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'` - test "$srcdir" = "$ltmain" && srcdir=. -fi - -trap "$rm conftest*; exit 1" 1 2 15 -if test "$verify_host" = yes; then - # Check for config.guess and config.sub. - ac_aux_dir= - for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/config.guess; then - ac_aux_dir=$ac_dir - break - fi - done - if test -z "$ac_aux_dir"; then - echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2 - echo "$help" 1>&2 - exit 1 - fi - ac_config_guess=$ac_aux_dir/config.guess - ac_config_sub=$ac_aux_dir/config.sub - - # Make sure we can run config.sub. - if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then : - else - echo "$progname: cannot run $ac_config_sub" 1>&2 - echo "$help" 1>&2 - exit 1 - fi - - echo $ac_n "checking host system type""... $ac_c" 1>&6 - - host_alias=$host - case "$host_alias" in - "") - if host_alias=`$SHELL $ac_config_guess`; then : - else - echo "$progname: cannot guess host type; you must specify one" 1>&2 - echo "$help" 1>&2 - exit 1 - fi ;; - esac - host=`$SHELL $ac_config_sub $host_alias` - echo "$ac_t$host" 1>&6 - - # Make sure the host verified. - test -z "$host" && exit 1 - -elif test -z "$host"; then - echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2 - echo "$help" 1>&2 - exit 1 -else - host_alias=$host -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case "$host_os" in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -case "$host_os" in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR cru $oldlib$oldobjs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -# Set a sane default for `AR'. -test -z "$AR" && AR=ar - -# Set a sane default for `OBJDUMP'. -test -z "$OBJDUMP" && OBJDUMP=objdump - -# If RANLIB is not set, then run the test. -if test "${RANLIB+set}" != "set"; then - result=no - - echo $ac_n "checking for ranlib... $ac_c" 1>&6 - IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for dir in $PATH; do - test -z "$dir" && dir=. - if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then - RANLIB="ranlib" - result="ranlib" - break - fi - done - IFS="$save_ifs" - - echo "$ac_t$result" 1>&6 -fi - -if test -n "$RANLIB"; then - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -fi - -# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin. -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$AS" && AS=as - -# Check to see if we are using GCC. -if test "$with_gcc" != yes || test -z "$CC"; then - # If CC is not set, then try to find GCC or a usable CC. - if test -z "$CC"; then - echo $ac_n "checking for gcc... $ac_c" 1>&6 - IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for dir in $PATH; do - test -z "$dir" && dir=. - if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then - CC="gcc" - break - fi - done - IFS="$save_ifs" - - if test -n "$CC"; then - echo "$ac_t$CC" 1>&6 - else - echo "$ac_t"no 1>&6 - fi - fi - - # Not "gcc", so try "cc", rejecting "/usr/ucb/cc". - if test -z "$CC"; then - echo $ac_n "checking for cc... $ac_c" 1>&6 - IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - cc_rejected=no - for dir in $PATH; do - test -z "$dir" && dir=. - if test -f $dir/cc || test -f $dir/cc$ac_exeext; then - if test "$dir/cc" = "/usr/ucb/cc"; then - cc_rejected=yes - continue - fi - CC="cc" - break - fi - done - IFS="$save_ifs" - if test $cc_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $CC - shift - if test $# -gt 0; then - # We chose a different compiler from the bogus one. - # However, it has the same name, so the bogon will be chosen - # first if we set CC to just the name; use the full file name. - shift - set dummy "$dir/cc" "$@" - shift - CC="$@" - fi - fi - - if test -n "$CC"; then - echo "$ac_t$CC" 1>&6 - else - echo "$ac_t"no 1>&6 - fi - - if test -z "$CC"; then - echo "$progname: error: no acceptable cc found in \$PATH" 1>&2 - exit 1 - fi - fi - - # Now see if the compiler is really GCC. - with_gcc=no - echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6 - echo "$progname:581: checking whether we are using GNU C" >&5 - - $rm conftest.c - cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - with_gcc=yes - fi - $rm conftest.c - echo "$ac_t$with_gcc" 1>&6 -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -echo $ac_n "checking for object suffix... $ac_c" 1>&6 -$rm conftest* -echo 'int i = 1;' > conftest.c -echo "$progname:603: checking for object suffix" >& 5 -if { (eval echo $progname:604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then - # Append any warnings to the config.log. - cat conftest.err 1>&5 - - for ac_file in conftest.*; do - case $ac_file in - *.c) ;; - *) objext=`echo $ac_file | sed -e s/conftest.//` ;; - esac - done -else - cat conftest.err 1>&5 - echo "$progname: failed program was:" >&5 - cat conftest.c >&5 -fi -$rm conftest* -echo "$ac_t$objext" 1>&6 - -echo $ac_n "checking for executable suffix... $ac_c" 1>&6 -if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_cv_exeext="no" - $rm conftest* - echo 'main () { return 0; }' > conftest.c - echo "$progname:629: checking for executable suffix" >& 5 - if { (eval echo $progname:630: \"$ac_link\") 1>&5; (eval $ac_link) 2>conftest.err; }; then - # Append any warnings to the config.log. - cat conftest.err 1>&5 - - for ac_file in conftest.*; do - case $ac_file in - *.c | *.err | *.$objext ) ;; - *) ac_cv_exeext=.`echo $ac_file | sed -e s/conftest.//` ;; - esac - done - else - cat conftest.err 1>&5 - echo "$progname: failed program was:" >&5 - cat conftest.c >&5 - fi - $rm conftest* -fi -if test "X$ac_cv_exeext" = Xno; then - exeext="" -else - exeext="$ac_cv_exeext" -fi -echo "$ac_t$ac_cv_exeext" 1>&6 - -echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6 -pic_flag= -special_shlib_compile_flags= -wl= -link_static_flag= -no_builtin_flag= - -if test "$with_gcc" = yes; then - wl='-Wl,' - link_static_flag='-static' - - case "$host_os" in - beos* | irix5* | irix6* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # we not sure about C++ programs. - link_static_flag="$link_static_flag ${wl}-lC" - ;; - cygwin* | mingw* | os2*) - # We can build DLLs from non-PIC. - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - pic_flag='-m68020 -resident32 -malways-restore-a4' - ;; - sysv4*MP*) - if test -d /usr/nec; then - pic_flag=-Kconform_pic - fi - ;; - *) - pic_flag='-fPIC' - ;; - esac -else - # PORTME Check for PIC flags for the system compiler. - case "$host_os" in - aix3* | aix4*) - # All AIX code is PIC. - link_static_flag='-bnso -bI:/lib/syscalls.exp' - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better link_static_flag that works with the bundled CC? - wl='-Wl,' - link_static_flag="${wl}-a ${wl}archive" - pic_flag='+Z' - ;; - - irix5* | irix6*) - wl='-Wl,' - link_static_flag='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | os2*) - # We can build DLLs from non-PIC. - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - wl='-Wl,' - link_static_flag='-non_shared' - ;; - - sco3.2v5*) - pic_flag='-Kpic' - link_static_flag='-dn' - special_shlib_compile_flags='-belf' - ;; - - solaris*) - pic_flag='-KPIC' - link_static_flag='-Bstatic' - wl='-Wl,' - ;; - - sunos4*) - pic_flag='-PIC' - link_static_flag='-Bstatic' - wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - pic_flag='-KPIC' - link_static_flag='-Bstatic' - wl='-Wl,' - ;; - - uts4*) - pic_flag='-pic' - link_static_flag='-Bstatic' - ;; - sysv4*MP*) - if test -d /usr/nec ;then - pic_flag='-Kconform_pic' - link_static_flag='-Bstatic' - fi - ;; - *) - can_build_shared=no - ;; - esac -fi - -if test -n "$pic_flag"; then - echo "$ac_t$pic_flag" 1>&6 - - # Check to make sure the pic_flag actually works. - echo $ac_n "checking if $compiler PIC flag $pic_flag works... $ac_c" 1>&6 - $rm conftest* - echo "int some_variable = 0;" > conftest.c - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $pic_flag -DPIC" - echo "$progname:776: checking if $compiler PIC flag $pic_flag works" >&5 - if { (eval echo $progname:777: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then - # Append any warnings to the config.log. - cat conftest.err 1>&5 - - case "$host_os" in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then they - # create non-PIC objects. So, if there were any warnings, we assume that - # PIC is not supported. - if test -s conftest.err; then - echo "$ac_t"no 1>&6 - can_build_shared=no - pic_flag= - else - echo "$ac_t"yes 1>&6 - pic_flag=" $pic_flag" - fi - ;; - *) - echo "$ac_t"yes 1>&6 - pic_flag=" $pic_flag" - ;; - esac - else - # Append any errors to the config.log. - cat conftest.err 1>&5 - can_build_shared=no - pic_flag= - echo "$ac_t"no 1>&6 - fi - CFLAGS="$save_CFLAGS" - $rm conftest* -else - echo "$ac_t"none 1>&6 -fi - -# Check to see if options -o and -c are simultaneously supported by compiler -echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6 -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -$rm conftest* -echo "int some_variable = 0;" > conftest.c -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.o" -echo "$progname:829: checking if $compiler supports -c -o file.o" >&5 -if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then - - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - echo "$ac_t"no 1>&6 - compiler_c_o=no - else - echo "$ac_t"yes 1>&6 - compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - compiler_c_o=no - echo "$ac_t"no 1>&6 -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - echo $ac_n "checking if $compiler supports -c -o file.lo... $ac_c" 1>&6 - $rm conftest* - echo "int some_variable = 0;" > conftest.c - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - echo "$progname:862: checking if $compiler supports -c -o file.lo" >&5 -if { (eval echo $progname:863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then - - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - echo "$ac_t"no 1>&6 - compiler_o_lo=no - else - echo "$ac_t"yes 1>&6 - compiler_o_lo=yes - fi - else - # Append any errors to the config.log. - cat conftest.err 1>&5 - compiler_o_lo=no - echo "$ac_t"no 1>&6 - fi - CFLAGS="$save_CFLAGS" - $rm conftest* -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$ac_t$hard_links" 1>&6 - $rm conftest* - if test "$hard_links" = no; then - echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2 - need_locks=warn - fi -else - need_locks=no -fi - -if test "$with_gcc" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6 - $rm conftest* - echo "int some_variable = 0;" > conftest.c - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c" - echo "$progname:914: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 - if { (eval echo $progname:915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then - - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - echo "$ac_t"no 1>&6 - compiler_rtti_exceptions=no - else - echo "$ac_t"yes 1>&6 - compiler_rtti_exceptions=yes - fi - else - # Append any errors to the config.log. - cat conftest.err 1>&5 - compiler_rtti_exceptions=no - echo "$ac_t"no 1>&6 - fi - CFLAGS="$save_CFLAGS" - $rm conftest* - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi - -fi - -# Check for any special shared library compilation flags. -if test -n "$special_shlib_compile_flags"; then - echo "$progname: warning: \`$CC' requires \`$special_shlib_compile_flags' to build shared libraries" 1>&2 - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$special_shlib_compile_flags[ ]" >/dev/null; then : - else - echo "$progname: add \`$special_shlib_compile_flags' to the CC or CFLAGS env variable and reconfigure" 1>&2 - can_build_shared=no - fi -fi - -echo $ac_n "checking if $compiler static flag $link_static_flag works... $ac_c" 1>&6 -$rm conftest* -echo 'main(){return(0);}' > conftest.c -save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS $link_static_flag" -echo "$progname:958: checking if $compiler static flag $link_static_flag works" >&5 -if { (eval echo $progname:959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then - echo "$ac_t$link_static_flag" 1>&6 -else - echo "$ac_t"none 1>&6 - link_static_flag= -fi -LDFLAGS="$save_LDFLAGS" -$rm conftest* - -if test -z "$LN_S"; then - # Check to see if we can use ln -s, or we need hard links. - echo $ac_n "checking whether ln -s works... $ac_c" 1>&6 - $rm conftest.dat - if ln -s X conftest.dat 2>/dev/null; then - $rm conftest.dat - LN_S="ln -s" - else - LN_S=ln - fi - if test "$LN_S" = "ln -s"; then - echo "$ac_t"yes 1>&6 - else - echo "$ac_t"no 1>&6 - fi -fi - -# Make sure LD is an absolute path. -if test -z "$LD"; then - ac_prog=ld - if test "$with_gcc" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6 - echo "$progname:991: checking for ld used by GCC" >&5 - ac_prog=`($CC -print-prog-name=ld) 2>&5` - case "$ac_prog" in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we are not using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac - elif test "$with_gnu_ld" = yes; then - echo $ac_n "checking for GNU ld... $ac_c" 1>&6 - echo "$progname:1015: checking for GNU ld" >&5 - else - echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 - echo "$progname:1018: checking for non-GNU ld" >&5 - fi - - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" - fi - - if test -n "$LD"; then - echo "$ac_t$LD" 1>&6 - else - echo "$ac_t"no 1>&6 - fi - - if test -z "$LD"; then - echo "$progname: error: no acceptable ld found in \$PATH" 1>&2 - exit 1 - fi -fi - -# Check to see if it really is or is not GNU ld. -echo $ac_n "checking if the linker ($LD) is GNU ld... $ac_c" 1>&6 -# I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - with_gnu_ld=yes -else - with_gnu_ld=no -fi -echo "$ac_t$with_gnu_ld" 1>&6 - -# See if the linker supports building shared libraries. -echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6 - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. - -case "$host_os" in -cygwin* | mingw*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$with_gcc" != yes; then - with_gnu_ld=no - fi - ;; - -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case "$host_os" in - aix3* | aix4*) - # On AIX, the GNU linker is very broken - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left by newer dlltools. - export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ - test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~ - $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def $objdir/$soname-ltdll.$objext $libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols' - - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~ - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \$# in - 2) echo " \$2 @ \$_lt_hint ; " >> $objdir/$soname-def;; - *) echo " \$2 @ \$_lt_hint \$3 ; " >> $objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done~ - test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ - test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~ - $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~ - $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~ - $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts' - - old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib' - # can we support soname and/or expsyms with a.out? -oliva - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case "$host_os" in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $objdir/$soname $libobjs $deplibs $linkopts -bE:$export_symbols -T512 -H512 -bM:SRE~$AR cru $lib $objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$with_gcc" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4*) - hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib' - hardcode_libdir_separator=':' - if test "$with_gcc" = yes; then - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - shared_flag='-shared' - else - shared_flag='${wl}-bM:SRE' - hardcode_direct=yes - fi - allow_undefined_flag=' ${wl}-berok' - archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}' - archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}' - #### local change for Sleepycat DB: - # On AIX 4.3.2 (at least), -bexpall exports too much, - # causing symbol conflicts. This was: - # case "$host_os" in aix4.[01]|aix4.[01].*) - case "$host_os" in aix4.*) - # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on - always_export_symbols=yes ;; - esac - ;; - - amigaos*) - archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $linkopts `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs' - fix_srcfile_path='`cygpath -w $srcfile`' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case "$host_os" in - hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6*) - if test "$with_gcc" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts' # ELF - fi - hardcode_libdir_flag_spec='${wl}-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - openbsd*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def~$echo DATA >> $objdir/$libname.def~$echo " SINGLE NONSHARED" >> $objdir/$libname.def~$echo EXPORTS >> $objdir/$libname.def~emxexp $libobjs >> $objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $linkopts $objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def' - ;; - - osf3*) - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # As osf3* with the addition of the -msym flag - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - rhapsody*) - archive_cmds='$CC -bundle -undefined suppress -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flags_spec='-L$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ;; - - solaris*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case "$host_os" in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $linkopts' - else - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - unixware7*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -echo "$ac_t$ld_shlibs" 1>&6 -test "$ld_shlibs" = no && can_build_shared=no - -if test -z "$NM"; then - echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6 - case "$NM" in - [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path. - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - NM="$ac_dir/nm -B" - break - elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - NM="$ac_dir/nm -p" - break - else - NM=${NM="$ac_dir/nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$NM" && NM=nm - ;; - esac - echo "$ac_t$NM" 1>&6 -fi - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6 - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Define system-specific variables. -case "$host_os" in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'" - ;; -irix*) - symcode='[BCDEGRST]' - ;; -solaris*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. - global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode\)[ ][ ]*\($ac_symprfx\)$sympat$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - $rm conftest* - cat > conftest.c <&5 - if { (eval echo $progname:1654: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then - # Now try to grab the symbols. - nlist=conftest.nm - if { echo "$progname:1657: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then - - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.c -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.c' - - cat <> conftest.c -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[] = -{ -EOF - sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.c - cat <<\EOF >> conftest.c - {0, (lt_ptr_t) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$objext conftstm.$objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo $progname:1709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then - pipe_works=yes - else - echo "$progname: failed program was:" >&5 - cat conftest.c >&5 - fi - LIBS="$save_LIBS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.c >&5 - fi - $rm conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - global_symbol_pipe= - fi -done -if test "$pipe_works" = yes; then - echo "${ac_t}ok" 1>&6 -else - echo "${ac_t}failed" 1>&6 -fi - -if test -z "$global_symbol_pipe"; then - global_symbol_to_cdecl= -fi - -# Check hardcoding attributes. -echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$ac_t$hardcode_action" 1>&6 - - -reload_flag= -reload_cmds='$LD$reload_flag -o $output$reload_objs' -echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6 -# PORTME Some linkers may need a different reload flag. -reload_flag='-r' -echo "$ac_t$reload_flag" 1>&6 -test -n "$reload_flag" && reload_flag=" $reload_flag" - -# PORTME Fill in your ld.so characteristics -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -file_magic_cmd= -file_magic_test_file= -deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [regex]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. -echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6 -case "$host_os" in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4*) - version_type=linux - # AIX has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - # We preserve .a as extension for shared libraries though AIX4.2 - # and later linker supports .so - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a' - shlibpath_var=LIBPATH - deplibs_check_method=pass_all - ;; - -amigaos*) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - deplibs_check_method=pass_all - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - file_magic_cmd=/usr/bin/file - file_magic_test_file=/shlib/libc.so - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw*) - version_type=windows - need_version=no - need_lib_prefix=no - if test "$with_gcc" = yes; then - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a' - else - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - fi - dynamic_linker='Win32 ld.exe' - deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - file_magic_cmd='${OBJDUMP} -f' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case "$version_type" in - freebsd-elf*) - deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /usr/lib/libc.so*` - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - deplibs_check_method=unknown - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case "$host_os" in - freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*) - shlibpath_overrides_runpath=yes - ;; - *) # from 3.2 on - shlibpath_overrides_runpath=no - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - - #### local change for Sleepycat DB: [#1990] - # The following 3 lines added, otherwise dependent libraries are not allowed - # on HP. We use dependent libraries in a very straightforward way, to - # incorporate -lnsl into libtcl.sl, and for testing only. - deplibs_check_method='file_magic PA-RISC[1-9][0-9.]* shared library' - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /lib/libc.sl*` - ;; - -irix5* | irix6*) - version_type=irix - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so.$major' - library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so' - case "$host_os" in - irix5*) - libsuff= shlibsuff= - # this will be overridden with pass_all, but let us keep it just in case - deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case "$LD" in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /lib${libsuff}/libc.so*` - deplibs_check_method='pass_all' - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - deplibs_check_method=pass_all - - if test -f /lib/ld.so.1; then - dynamic_linker='GNU ld.so' - else - # Only the GNU ld.so supports shared libraries on MkLinux. - case "$host_cpu" in - powerpc*) dynamic_linker=no ;; - *) dynamic_linker='Linux ld.so' ;; - esac - fi - ;; - -netbsd*) - version_type=sunos - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - ;; - -openbsd*) - version_type=sunos - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - need_version=no - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - shlibpath_var=LD_LIBRARY_PATH - # this will be overridden with pass_all, but let us keep it just in case - deplibs_check_method='file_magic COFF format alpha shared library' - file_magic_cmd=/usr/bin/file - file_magic_test_file=/shlib/libc.so - deplibs_check_method='pass_all' - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -rhapsody*) - version_type=sunos - library_names_spec='${libname}.so' - soname_spec='${libname}.so' - shlibpath_var=DYLD_LIBRARY_PATH - deplibs_check_method=pass_all - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - #### local change for Sleepycat DB: - # The following line added, otherwise dependent libraries are not allowed - # on SCO. We use dependent libraries in a very straightforward way. - deplibs_check_method='pass_all' - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib" - file_magic_cmd=/usr/bin/file - file_magic_test_file=/lib/libc.so - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case "$host_vendor" in - sequent) - file_magic_cmd='/bin/file' - deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - ncr) - deplibs_check_method='pass_all' - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -#### local change for Sleepycat DB: -# Add in the QNX support from QNX. -nto-qnx) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - deplibs_check_method='pass_all' - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$ac_t$dynamic_linker" 1>&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6 - -# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in -# configure.in, otherwise build static only libraries. -case "$host_os" in -cygwin* | mingw* | os2*) - if test x$can_build_shared = xyes; then - test x$enable_win32_dll = xno && can_build_shared=no - echo "checking if package supports dlls... $can_build_shared" 1>&6 - fi -;; -esac - -if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then - case "$deplibs_check_method" in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac -fi - -echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - test "$enable_shared" = yes && enable_static=no - ;; -esac - -echo "$ac_t$enable_shared" 1>&6 - -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes - -echo "checking whether to build static libraries... $enable_static" 1>&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -echo $ac_n "checking for objdir... $ac_c" 1>&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$ac_t$objdir" 1>&6 - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else -if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then - lt_cv_dlopen=no lt_cv_dlopen_libs= -echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "$progname:2248: checking for dlopen in -ldl" >&5 -ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldl $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -echo "$progname:2288: checking for dlopen" >&5 -if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -dlopen(); -#endif - -; return 0; } -EOF -if { (eval echo $progname:2318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_dlopen=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_func_dlopen=no" -fi -rm -f conftest* -fi -if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -echo "$progname:2335: checking for dld_link in -ldld" >&5 -ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldld $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -echo "$progname:2375: checking for shl_load" >&5 -if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char shl_load(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -shl_load(); -#endif - -; return 0; } -EOF -if { (eval echo $progname:2405: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_shl_load=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_func_shl_load=no" -fi -rm -f conftest* -fi - -if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="shl_load" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "$progname:2423: checking for shl_load in -ldld" >&5 -ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldld $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" -else - echo "$ac_t""no" 1>&6 -fi - - -fi - - -fi - - -fi - - -fi - -fi - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - fi - - case "$lt_cv_dlopen" in - dlopen) -for ac_hdr in dlfcn.h; do -ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` -echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "$progname:2488: checking for $ac_hdr" >&5 -if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -int fnord = 0; -EOF -ac_try="$ac_compile >/dev/null 2>conftest.out" -{ (eval echo $progname:2498: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` -if test -z "$ac_err"; then - rm -rf conftest* - eval "ac_cv_header_$ac_safe=yes" -else - echo "$ac_err" >&5 - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_header_$ac_safe=no" -fi -rm -f conftest* -fi -if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then - echo "$ac_t""yes" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi -done - - if test "x$ac_cv_header_dlfcn_h" = xyes; then - CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - fi - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2526: checking whether a program can dlopen itself" >&5 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test "$cross_compiling" = yes; then - lt_cv_dlopen_self=cross - else - cat > conftest.c < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LTDL_GLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LTDL_GLOBAL DL_GLOBAL -# else -# define LTDL_GLOBAL 0 -# endif -#endif - -/* We may have to define LTDL_LAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LTDL_LAZY_OR_NOW -# ifdef RTLD_LAZY -# define LTDL_LAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LTDL_LAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LTDL_LAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LTDL_LAZY_OR_NOW DL_NOW -# else -# define LTDL_LAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -fnord() { int i=42;} -main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); - if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } - -EOF -if { (eval echo $progname:2580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null -then - lt_cv_dlopen_self=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -fr conftest* - lt_cv_dlopen_self=no -fi -rm -fr conftest* -fi - -fi - -echo "$ac_t""$lt_cv_dlopen_self" 1>&6 - - if test "$lt_cv_dlopen_self" = yes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2599: checking whether a statically linked program can dlopen itself" >&5 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test "$cross_compiling" = yes; then - lt_cv_dlopen_self_static=cross - else - cat > conftest.c < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LTDL_GLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LTDL_GLOBAL DL_GLOBAL -# else -# define LTDL_GLOBAL 0 -# endif -#endif - -/* We may have to define LTDL_LAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LTDL_LAZY_OR_NOW -# ifdef RTLD_LAZY -# define LTDL_LAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LTDL_LAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LTDL_LAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LTDL_LAZY_OR_NOW DL_NOW -# else -# define LTDL_LAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -fnord() { int i=42;} -main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); - if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } - -EOF -if { (eval echo $progname:2653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null -then - lt_cv_dlopen_self_static=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -fr conftest* - lt_cv_dlopen_self_static=no -fi -rm -fr conftest* -fi - -fi - -echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6 -fi - ;; - esac - - case "$lt_cv_dlopen_self" in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case "$lt_cv_dlopen_self_static" in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - -# Copy echo and quote the copy, instead of the original, because it is -# used later. -ltecho="$echo" -if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ltecho="$CONFIG_SHELL \$0 --fallback-echo" -fi -LTSHELL="$SHELL" - -LTCONFIG_VERSION="$VERSION" - -# Only quote variables if we're using ltmain.sh. -case "$ltmain" in -*.sh) - # Now quote all the things that may contain metacharacters. - for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \ - old_LD old_LDFLAGS old_LIBS \ - old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \ - AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \ - file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case "$var" in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - case "$ltecho" in - *'\$0 --fallback-echo"') - ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` - ;; - esac - - trap "$rm \"$ofile\"; exit 1" 1 2 15 - echo "creating $ofile" - $rm "$ofile" - cat < "$ofile" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. -# -# Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="sed -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -### BEGIN LIBTOOL CONFIG -EOF - cfgfile="$ofile" - ;; - -*) - # Double-quote the variables that need it (for aesthetics). - for var in old_CC old_CFLAGS old_CPPFLAGS \ - old_LD old_LDFLAGS old_LIBS \ - old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do - eval "$var=\\\"\$var\\\"" - done - - # Just create a config file. - cfgfile="$ofile.cfg" - trap "$rm \"$cfgfile\"; exit 1" 1 2 15 - echo "creating $cfgfile" - $rm "$cfgfile" - cat < "$cfgfile" -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -EOF - ;; -esac - -cat <> "$cfgfile" -# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# -# CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\ -# LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\ -# NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\ -# DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\ -# $0$ltconfig_args -# -# Compiler and other test output produced by $progname, useful for -# debugging $progname, is in ./config.log if it exists. - -# The version of $progname that generated this script. -LTCONFIG_VERSION=$LTCONFIG_VERSION - -# Shell to use when invoking shell scripts. -SHELL=$LTSHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$ltecho - -# The archiver. -AR=$AR - -# The default C compiler. -CC=$CC - -# The linker used to build libraries. -LD=$LD - -# Whether we need hard or soft links. -LN_S=$LN_S - -# A BSD-compatible nm program. -NM=$NM - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$reload_flag -reload_cmds=$reload_cmds - -# How to pass a linker flag through the compiler. -wl=$wl - -# Object file suffix (normally "o"). -objext="$objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$pic_flag - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$RANLIB -old_archive_cmds=$old_archive_cmds -old_postinstall_cmds=$old_postinstall_cmds -old_postuninstall_cmds=$old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$old_archive_from_new_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$archive_cmds -archive_expsym_cmds=$archive_expsym_cmds -postinstall_cmds=$postinstall_cmds -postuninstall_cmds=$postuninstall_cmds - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$global_symbol_to_cdecl - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$include_expsyms - -EOF - -case "$ltmain" in -*.sh) - echo '### END LIBTOOL CONFIG' >> "$ofile" - echo >> "$ofile" - case "$host_os" in - aix3*) - cat <<\EOF >> "$ofile" - -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - # Append the ltmain.sh script. - sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1) - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - - chmod +x "$ofile" - ;; - -*) - # Compile the libtool program. - echo "FIXME: would compile $ltmain" - ;; -esac - -test -n "$cache_file" || exit 0 - -# AC_CACHE_SAVE -trap '' 1 2 15 -cat > confcache <<\EOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -EOF -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -(set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote substitution - # turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - -e "s/'/'\\\\''/g" \ - -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; - esac >> confcache -if cmp -s $cache_file confcache; then - : -else - if test -w $cache_file; then - echo "updating cache $cache_file" - cat confcache > $cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -exit 0 - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: -#! /bin/bash diff --git a/db/dist/pubdef.in b/db/dist/pubdef.in index 67b222499..95af25d3c 100644 --- a/db/dist/pubdef.in +++ b/db/dist/pubdef.in @@ -1,4 +1,4 @@ -# $Id: pubdef.in,v 12.35 2006/09/13 14:53:38 mjc Exp $ +# $Id: pubdef.in,v 12.51 2007/07/06 00:22:52 mjc Exp $ # # Name # D == documentation @@ -9,7 +9,6 @@ DB_AFTER D I J DB_AGGRESSIVE D I J DB_ALREADY_ABORTED * I * DB_AM_CHKSUM * I * -DB_AM_CL_WRITER * I * DB_AM_COMPENSATE * I * DB_AM_CREATED * I * DB_AM_CREATED_MSTR * I * @@ -54,6 +53,7 @@ DB_BTREEVERSION * I * DB_BUFFER_SMALL D I N DB_CDB_ALLDB D I J DB_CHKSUM D I J +DB_CKP_INTERNAL * I * DB_COMPACT_FLAGS * I * DB_CONFIG D * * DB_CONSUME D I J @@ -66,6 +66,7 @@ DB_DBT_APPMALLOC D I N DB_DBT_DUPOK * I * DB_DBT_ISSET * I * DB_DBT_MALLOC D I J +DB_DBT_MULTIPLE D I N DB_DBT_PARTIAL D I J DB_DBT_REALLOC D I N DB_DBT_USERCOPY * I N @@ -76,7 +77,7 @@ DB_DIRECT D I * DB_DIRECT_DB D I J DB_DIRECT_LOG D I J DB_DIRTY_READ * I * -DB_DONOTINDEX D I J +DB_DONOTINDEX D I N DB_DSYNC_DB D I J DB_DSYNC_LOG D I J DB_DUP D I J @@ -89,13 +90,11 @@ DB_ENCRYPT_AES D I J DB_ENV_AUTO_COMMIT * I * DB_ENV_CDB * I * DB_ENV_CDB_ALLDB * I * -DB_ENV_CREATE * I * DB_ENV_DBLOCAL * I * DB_ENV_DIRECT_DB * I * DB_ENV_DIRECT_LOG * I * DB_ENV_DSYNC_DB * I * DB_ENV_DSYNC_LOG * I * -DB_ENV_FATAL * I * DB_ENV_LOCKDOWN * I * DB_ENV_LOG_AUTOREMOVE * I * DB_ENV_LOG_INMEMORY * I * @@ -103,9 +102,12 @@ DB_ENV_MULTIVERSION * I * DB_ENV_NOLOCKING * I * DB_ENV_NOMMAP * I * DB_ENV_NOPANIC * I * +DB_ENV_NO_OUTPUT_SET * I * DB_ENV_OPEN_CALLED * I * DB_ENV_OVERWRITE * I * DB_ENV_PRIVATE * I * +DB_ENV_RECOVER_FATAL * I * +DB_ENV_REF_COUNTED * I * DB_ENV_REGION_INIT * I * DB_ENV_RPCCLIENT * I * DB_ENV_RPCCLIENT_GIVEN * I * @@ -113,16 +115,20 @@ DB_ENV_SYSTEM_MEM * I * DB_ENV_THREAD * I * DB_ENV_TIME_NOTGRANTED * I * DB_ENV_TXN_NOSYNC * I * +DB_ENV_TXN_NOWAIT * I * DB_ENV_TXN_SNAPSHOT * I * DB_ENV_TXN_WRITE_NOSYNC * I * DB_ENV_YIELDCPU * I * +DB_EVENT_NOT_HANDLED * I * DB_EVENT_NO_SUCH_EVENT * I * -DB_EVENT_PANIC D I J -DB_EVENT_REP_CLIENT D I J -DB_EVENT_REP_MASTER D I J -DB_EVENT_REP_NEWMASTER D I J -DB_EVENT_REP_STARTUPDONE D I J -DB_EVENT_WRITE_FAILED D I J +DB_EVENT_PANIC D I N +DB_EVENT_REP_CLIENT D I N +DB_EVENT_REP_ELECTED D I N +DB_EVENT_REP_MASTER D I N +DB_EVENT_REP_NEWMASTER D I N +DB_EVENT_REP_PERM_FAILED D I N +DB_EVENT_REP_STARTUPDONE D I N +DB_EVENT_WRITE_FAILED D I N DB_EXCL D I J DB_EXTENT * I * DB_FAST_STAT D I J @@ -143,6 +149,7 @@ DB_HASHMAGIC * I * DB_HASHOLDVER * I * DB_HASHVERSION * I * DB_HOME D * * +DB_IGNORE_LEASE D I J DB_IMMUTABLE_KEY D I J DB_INIT_CDB D I J DB_INIT_LOCK D I J @@ -224,7 +231,7 @@ DB_MAX_PAGES * I * DB_MAX_RECORDS * I * DB_MPOOL_CREATE D I * DB_MPOOL_DIRTY D I * -DB_MPOOL_DISCARD D I * +DB_MPOOL_DISCARD * I * DB_MPOOL_EDIT D I * DB_MPOOL_FREE * I * DB_MPOOL_LAST D I * @@ -273,11 +280,13 @@ DB_PAGE_NOTFOUND D I * DB_PANIC_ENVIRONMENT D I J DB_POSITION D I J DB_PREV D I J +DB_PREV_DUP D I J DB_PREV_NODUP D I J DB_PRINTABLE D I J DB_PRIORITY_DEFAULT D I J DB_PRIORITY_HIGH D I J DB_PRIORITY_LOW D I J +DB_PRIORITY_UNCHANGED D I * DB_PRIORITY_VERY_HIGH D I J DB_PRIORITY_VERY_LOW D I J DB_PRIVATE D I J @@ -302,6 +311,7 @@ DB_REGION_MAGIC * I * DB_REGISTER D I J DB_RENAMEMAGIC * I * DB_RENUMBER D I J +DB_REPFLAGS_MASK * I * DB_REPMGR_ACKS_ALL D I J DB_REPMGR_ACKS_ALL_PEERS D I J DB_REPMGR_ACKS_NONE D I J @@ -314,27 +324,31 @@ DB_REPMGR_PEER D I J DB_REP_ACK_TIMEOUT D I J DB_REP_ANYWHERE D I J DB_REP_BULKOVF * I * +DB_REP_CHECKPOINT_DELAY D I J DB_REP_CLIENT D I J DB_REP_CONF_BULK D I J DB_REP_CONF_DELAYCLIENT D I J DB_REP_CONF_NOAUTOINIT D I J DB_REP_CONF_NOWAIT D I J DB_REP_CONNECTION_RETRY D I J +DB_REP_DEFAULT_PRIORITY * I J DB_REP_DUPMASTER D I N DB_REP_EGENCHG * I * DB_REP_ELECTION D I J DB_REP_ELECTION_RETRY D I J DB_REP_ELECTION_TIMEOUT D I J -DB_REP_FULL_ELECTION D I J +DB_REP_FULL_ELECTION_TIMEOUT D I J DB_REP_HANDLE_DEAD D I N DB_REP_HOLDELECTION D I N DB_REP_IGNORE D I J DB_REP_ISPERM D I J DB_REP_JOIN_FAILURE D I N +DB_REP_LEASE_EXPIRED D I N +DB_REP_LEASE_TIMEOUT D I N DB_REP_LOCKOUT D I N DB_REP_LOGREADY * I * DB_REP_MASTER D I J -DB_REP_NEWMASTER D I J +DB_REP_NEWMASTER * I * DB_REP_NEWSITE D I J DB_REP_NOBUFFER D I J DB_REP_NOTPERM D I J @@ -363,6 +377,7 @@ DB_SET_TXN_LSNP * I * DB_SET_TXN_NOW * I * DB_SET_TXN_TIMEOUT D I J DB_SNAPSHOT D I J +DB_SPARE_FLAG * I * DB_STAT_ALL D I * DB_STAT_CLEAR D I J DB_STAT_LOCK_CONF D I * @@ -406,6 +421,7 @@ DB_TXN_POPENFILES * I * DB_TXN_PRINT D I J DB_TXN_SNAPSHOT D I J DB_TXN_SYNC D I J +DB_TXN_WAIT D I J DB_TXN_WRITE_NOSYNC D I J DB_UNDO * I * DB_UNKNOWN D I J @@ -417,6 +433,8 @@ DB_USERCOPY_SETDATA * I N DB_USE_ENVIRON D I J DB_USE_ENVIRON_ROOT D I J DB_VERB_DEADLOCK D I J +DB_VERB_FILEOPS D I J +DB_VERB_FILEOPS_ALL D I J DB_VERB_RECOVERY D I J DB_VERB_REGISTER D I J DB_VERB_REPLICATION D I J diff --git a/db/dist/rec_ctemp b/db/dist/rec_ctemp deleted file mode 100644 index 6be6d3166..000000000 --- a/db/dist/rec_ctemp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * __PREF_FUNC_recover -- - * Recovery function for FUNC. - * - * PUBLIC: int __PREF_FUNC_recover - * PUBLIC: __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); - */ -int -__PREF_FUNC_recover(dbenv, dbtp, lsnp, op, info) - DB_ENV *dbenv; - DBT *dbtp; - DB_LSN *lsnp; - db_recops op; - void *info; -{ - __PREF_FUNC_args *argp; - DB *file_dbp; - DBC *dbc; - DB_MPOOLFILE *mpf; - PAGE *pagep; - int cmp_n, cmp_p, modified, ret; - - REC_PRINT(__PREF_FUNC_print); - REC_INTRO(__PREF_FUNC_read); - - if ((ret = memp_fget(mpf, &argp->pgno, 0, &pagep)) != 0) - if (DB_REDO(op)) { - if ((ret = memp_fget(mpf, - &argp->pgno, DB_MPOOL_CREATE, &pagep)) != 0) - goto out; - } else { - *lsnp = argp->prev_lsn; - ret = 0; - goto out; - } - - modified = 0; - cmp_n = log_compare(lsnp, &LSN(pagep)); - - /* - * Use this when there is something like "pagelsn" in the argp - * structure. Sometimes, you might need to compare meta-data - * lsn's instead. - * - * cmp_p = log_compare(&LSN(pagep), argp->pagelsn); - */ - if (cmp_p == 0 && DB_REDO(op)) { - /* Need to redo update described. */ - modified = 1; - } else if (cmp_n == 0 && !DB_REDO(op)) { - /* Need to undo update described. */ - modified = 1; - } - if (ret = memp_fput(mpf, pagep, modified ? DB_MPOOL_DIRTY : 0)) - goto out; - - *lsnp = argp->prev_lsn; - ret = 0; - -out: REC_CLOSE; -} - diff --git a/db/dist/s60/s60.mmp.1 b/db/dist/s60/s60.mmp.1 new file mode 100644 index 000000000..fb3e99640 --- /dev/null +++ b/db/dist/s60/s60.mmp.1 @@ -0,0 +1,7 @@ +// bdb_s60.mmp +// DO NOT EDIT: automatically built by dist/s_s60_mmp + +TARGET bdb_s60.lib +TARGETTYPE lib +UID 0x10004262 0xE8000016 +VENDORID 0x70000002 diff --git a/db/dist/s60/s60.mmp.2 b/db/dist/s60/s60.mmp.2 new file mode 100644 index 000000000..797301f27 --- /dev/null +++ b/db/dist/s60/s60.mmp.2 @@ -0,0 +1,7 @@ +SYSTEMINCLUDE \epoc32\include\stdapis \epoc32\include +USERINCLUDE . +USERINCLUDE .. + +LIBRARY libc.lib libpthread.lib euser.lib libcrt0.lib + +nostrictdef diff --git a/db/dist/s60/s60_config.in b/db/dist/s60/s60_config.in new file mode 100644 index 000000000..b55ed7330 --- /dev/null +++ b/db/dist/s60/s60_config.in @@ -0,0 +1,547 @@ +/* db_config.h. Generated from config.hin by configure. */ +/* config.hin. Generated from configure.ac by autoheader. */ + +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +/* #undef DB_WIN32 */ + +/* Define to 1 if you want a debugging version. */ +/* #undef DEBUG */ + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +/* #undef HAVE_64BIT_TYPES */ + +/* Define to 1 if you have the `abort' function. */ +#define HAVE_ABORT 1 + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +#define HAVE_ATOL 1 + +/* Define to 1 if building on BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +/* #undef HAVE_CRYPTO */ + +/* Define to 1 if you have the `ctime_r' function. */ +#define HAVE_CTIME_R 1 + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + +/* Define to 1 if you have the `fcntl' function. */ +#define HAVE_FCNTL 1 + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + +/* Define to 1 if you have the `ftruncate' function. */ +/* #undef HAVE_FTRUNCATE */ + +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +/* #undef HAVE_HASH */ + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `isalpha' function. */ +#define HAVE_ISALPHA 1 + +/* Define to 1 if you have the `isdigit' function. */ +#define HAVE_ISDIGIT 1 + +/* Define to 1 if you have the `isprint' function. */ +#define HAVE_ISPRINT 1 + +/* Define to 1 if you have the `isspace' function. */ +#define HAVE_ISSPACE 1 + +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MEMORY_H */ + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +#define HAVE_MUNMAP 1 + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +#define HAVE_MUTEX_PTHREADS 1 + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + +/* Define to 1 if mutexes hold system resources. */ +#define HAVE_MUTEX_SYSTEM_RESOURCES 1 + +/* Define to 1 to configure mutexes intra-process only. */ +#define HAVE_MUTEX_THREAD_ONLY 1 + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32 */ + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +#define HAVE_PRINTF 1 + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + +/* Define to 1 if building Queue access method. */ +/* #undef HAVE_QUEUE */ + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rand' function. */ +#define HAVE_RAND 1 + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +#define HAVE_S60 1 + +/* Define to 1 if you have the `sched_yield' function. */ +#define HAVE_SCHED_YIELD 1 + +/* Define to 1 if you have the `select' function. */ +#define HAVE_SELECT 1 + +/* Define to 1 if you have the `shmget' function. */ +#define HAVE_SHMGET 1 + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +#define HAVE_SIMPLE_THREAD_TYPE 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +#define HAVE_STAT 1 + +/* Define to 1 if building statistics support. */ +#define HAVE_STATISTICS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the `strftime' function. */ +#define HAVE_STRFTIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncat' function. */ +#define HAVE_STRNCAT 1 + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +#define HAVE_SYSCONF 1 + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#define HAVE_SYSTEM_INCLUDE_FILES 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +/* #undef HAVE_VERIFY */ + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building on VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +/* #undef HAVE__FSTATI64 */ + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "Oracle Technology Network Berkeley DB forum" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB __EDIT_DB_VERSION__" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-__EDIT_DB_VERSION__" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "__EDIT_DB_VERSION__" + +/* The size of `char', as computed by sizeof. */ +#define SIZEOF_CHAR 1 + +/* The size of `char *', as computed by sizeof. */ +#define SIZEOF_CHAR_P 4 + +/* The size of `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of `short', as computed by sizeof. */ +#define SIZEOF_SHORT 2 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 4 + +/* The size of `unsigned char', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_CHAR 1 + +/* The size of `unsigned int', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_INT 4 + +/* The size of `unsigned long', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_LONG 4 + +/* The size of `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of `unsigned short', as computed by sizeof. */ +#define SIZEOF_UNSIGNED_SHORT 2 + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/dist/s60/s60_make.in b/db/dist/s60/s60_make.in new file mode 100644 index 000000000..00d82dfd5 --- /dev/null +++ b/db/dist/s60/s60_make.in @@ -0,0 +1,25 @@ +################################################### +# EVERYTHING IN THIS FILE HEADER COPIED FROM dist/brew_makefile.in +################################################## +CC= cc +CFLAGS= -c -g -W -Wall -Wpointer-arith -Wmissing-prototypes \ + -I. -I.. -DDIAGNOSTIC + +.c.o: + $(CC) $(CFLAGS) $< -o $@ + +a: t + +t: t.c libdb.a + $(CC) t.c -o t libdb.a -lpthread + +t.c: + echo '#include ' > $@ + echo '#include ' >> $@ + echo '#define AEEApplet char' >> $@ + echo '#include "db.h"' >> $@ + echo 'int main() {' >> $@ + echo ' DB_ENV *dbenv; db_env_create(&dbenv, 0); return (0); }' >> $@ + +realclean distclean clean: + rm -f mklog t t.c tmp.c libdb.a *.o diff --git a/db/dist/s_all b/db/dist/s_all index 0891a713b..2de424704 100755 --- a/db/dist/s_all +++ b/db/dist/s_all @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_all,v 12.2 2005/12/01 03:24:24 bostic Exp $ +# $Id: s_all,v 12.8 2007/07/06 16:29:16 bostic Exp $ sh s_perm # permissions. sh s_symlink # symbolic links. @@ -13,9 +13,18 @@ sh s_recover # logging/recovery files. sh s_rpc # RPC files. sh s_include # standard include files. -sh s_windows # Windows include files. -sh s_windows_dsp # Windows build environment. -sh s_vxworks # VxWorks include files. sh s_java # Java support. sh s_test # Test suite support. sh s_tags # Tags files. + +# We only build the Cscope file for releases, it's too big to commit +# into the CVS tree. +#sh s_cscope # Cscope files. + +sh s_brew # BREW support. +sh s_brew_dsp # BREW support: build environment. +sh s_s60 # S60 support. +sh s_s60_mmp # S60 support: build environment. +sh s_vxworks # VxWorks support. +sh s_windows # Windows support. +sh s_windows_dsp # Windows support: build environment. diff --git a/db/dist/s_brew b/db/dist/s_brew new file mode 100644 index 000000000..addd8c36f --- /dev/null +++ b/db/dist/s_brew @@ -0,0 +1,142 @@ +#!/bin/sh - +# $Id: s_brew,v 12.6 2007/05/24 13:16:50 bostic Exp $ +# +# Build the BREW files. + +msgc="/* DO NOT EDIT: automatically built by dist/s_brew. */" + +. RELEASE + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t ; exit 0' 0 +trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 + +# Build the BREW db.h. +cat < $s +/@inttypes_h_decl@/d +/@stdint_h_decl@/d +s/@stddef_h_decl@/#include / +/@unistd_h_decl@/d +/@thread_h_decl@/d +s/@u_int8_decl@/typedef unsigned char u_int8_t;/ +s/@int16_decl@/typedef short int16_t;/ +s/@u_int16_decl@/typedef unsigned short u_int16_t;/ +s/@int32_decl@/typedef int int32_t;/ +s/@u_int32_decl@/typedef unsigned int u_int32_t;/ +/@int64_decl@/d +/@u_int64_decl@/d +s/@u_char_decl@/typedef unsigned char u_char;/ +s/@u_int_decl@/typedef unsigned int u_int;/ +s/@u_long_decl@/typedef unsigned long u_long;/ +s/@u_short_decl@/typedef unsigned short u_short;/ +s/@uintmax_t_decl@/typedef unsigned long uintmax_t;/ +s/@uintptr_t_decl@/typedef unsigned long uintptr_t;/ +s/@FILE_t_decl@/typedef IFile FILE;/ +s/@off_t_decl@/typedef u_int32_t off_t;/ +s/@pid_t_decl@/typedef int pid_t;/ +s/@size_t_decl@/typedef unsigned int size_t;/ +s/@ssize_t_decl@/typedef int ssize_t;/ +s/@time_t_decl@/typedef long time_t;/ +s/@db_seq_decl@/typedef int32_t db_seq_t;/ +s/@db_threadid_t_decl@/typedef uintmax_t db_threadid_t;/ +s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/ +s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/ +s/@DB_VERSION_PATCH@/$DB_VERSION_PATCH/ +s/@DB_VERSION_STRING@/"$DB_VERSION_STRING"/ +s/@DB_VERSION_UNIQUE_NAME@// +s/@DB_CONST@// +s/@DB_PROTO1@/#undef __P/ +s/@DB_PROTO2@/#define __P(protos) protos/ +/@platform_header@/d +/@platform_footer@/{ + i\\ +typedef struct {\\ +\ AEEApplet a; /* AEEApplet must be listed first. */\\ +\ void *db_global_values;\\ +} BDBApp;\\ +int brew_bdb_begin __P((void));\\ +void brew_bdb_end __P((void)); + d +} +/^#ifndef.__NO_SYSTEM_INCLUDES/i\\ +#include +/^#ifndef.__NO_SYSTEM_INCLUDES/,/^#endif/d +ENDOFSEDTEXT +(echo "$msgc" && + sed -f $s ../dbinc/db.in && + cat ../dbinc_auto/ext_prot.in) > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in BREW db.h.' + exit 1 +} +f=../build_brew/db.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build the BREW db_int.h. +cat < $s +s/@PATH_SEPARATOR@/\\\\\\\\\/:/ +s/@db_int_def@// +/#endif.*HAVE_SYSTEM_INCLUDE_FILES/a\\ +#include "brew_db.h" +ENDOFSEDTEXT +(echo "$msgc" && sed -f $s ../dbinc/db_int.in) > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in BREW db_int.h.' + exit 1 +} +f=../build_brew/db_int.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build the BREW db_config.h +# We don't fail, but we complain if the brew_config.in file isn't up-to-date. +check_config() +{ + egrep '^#undef' config.hin | awk '{print $2}' | sort > $s + (egrep '#undef' $1 | awk '{print $3}' + egrep '^#define' $1 | awk '{print $2}') | sort > $t + cmp $s $t > /dev/null || { + echo "config.hin and $1 differ" + echo "<<< config.hin >>> $1" + diff $s $t + } +} +check_config brew/brew_config.in +f=../build_brew/db_config.h +(echo "$msgc" && + sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" brew/brew_config.in) > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build BREW's brew_db.h +f=../build_brew/brew_db.h +i=brew/brew_db.in +cmp $i $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) + +# Build the BREW clib_port.h. +cat < $s +/@INT64_FMT@/d +/@UINT64_FMT@/d +ENDOFSEDTEXT +sed -f $s clib_port.in > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in BREW clib_port.h.' + exit 1 +} +f=../build_brew/clib_port.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in errno.h. +f=../build_brew/errno.h +cmp errno.h $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp errno.h $f && chmod 444 $f) + +exit 0 diff --git a/db/dist/s_brew_dsp b/db/dist/s_brew_dsp new file mode 100644 index 000000000..60b70f4f1 --- /dev/null +++ b/db/dist/s_brew_dsp @@ -0,0 +1,65 @@ +#!/bin/sh - +# $Id: s_brew_dsp,v 1.3 2007/02/22 17:03:24 bostic Exp $ +# +# Build BREW .dsp files. + +. RELEASE + +SRCFILES=srcfiles.in + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t; exit 0' 0 +trap 'rm -f $s $t; exit 1' 1 2 3 13 15 + +# Build the bdb_brew.dsp file. +dsp() +{ + grep -w brew $SRCFILES | awk '{print $1}' > $s + + (cat brew/bdb_brew.dsp; + for i in `cat $s`; do + echo '# Begin Source File ' + echo "SOURCE=..\\$i " + echo '# End Source File ' + done | sed 's/\//\\/g' + echo '# End Group ' + echo '# End Target ' + echo '# End Project ') > $t + + f=../build_brew/bdb_brew.dsp + cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +} + +# Build the bdbread.mak applet example file. +mak() +{ + (echo -n 'OBJS =bdbread.o AEEModGen.o AEEAppGen.o' + grep -w brew $SRCFILES | + awk '{print $1}' | + sed -e 's/.*\///' \ + -e 's/\.c/\.o/g' | + awk '{printf " %s", $1}' + echo " ") > $s + + sed -e '/LIST OF OBJECT FILES/{' \ + -e "r $s" \ + -e 'd' \ + -e '}' < brew/bdbread.mak > $t + + for i in `grep -w brew $SRCFILES | awk '{print $1}'`; do + echo "`basename $i .c`.o: ../$i " + done | + sed 's/\//\\/g' >> $t + + f=../build_brew/bdbread.mak + cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +} + +dsp +mak + +exit 0 diff --git a/db/dist/s_brew_posix b/db/dist/s_brew_posix new file mode 100644 index 000000000..dce2953ff --- /dev/null +++ b/db/dist/s_brew_posix @@ -0,0 +1,107 @@ +#!/bin/sh - +# $Id: s_brew_posix,v 12.2 2006/11/09 14:11:49 bostic Exp $ +# +# Build the BREW files on a POSIX system. + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t ; exit 0' 0 +trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 + +# Temporary directory to build in. +test -d ../build_brew_x || mkdir ../build_brew_x + +# Copy in db_config.h. +# +# We do have system include files in the POSIX build. +f=../build_brew_x/db_config.h +cat < $s +/HAVE_SYSTEM_INCLUDE_FILES/{ + a\\ +#define HAVE_SYSTEM_INCLUDE_FILES 1 +} +ENDOFSEDTEXT +sed -f $s < ../build_brew/db_config.h > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in db.h. +f=../build_brew_x/db.h +sed -e '/typedef.*[ ]FILE;/s/.*/#define IFile FILE/' \ + -e '/typedef.*[ ]off_t;/d' \ + -e '/typedef.*[ ]time_t;/d' \ + -e '/typedef.*[ ]uintptr_t;/d' \ + -e '/#include./d' \ + < ../build_brew/db.h > $t + +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in brew_db.h +f=../build_brew_x/brew_db.h +cmp brew/brew_posix.h $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp brew/brew_posix.h $f && chmod 444 $f) + +# Copy in clib_port.h +# +# Delete all references to isalpha, isdigit, isprint, isspace. +f=../build_brew_x/clib_port.h +sed -e '/HAVE_ISALPHA/,/#endif/d' \ + -e '/HAVE_ISDIGIT/,/#endif/d' \ + -e '/HAVE_ISPRINT/,/#endif/d' \ + -e '/HAVE_ISSPACE/,/#endif/d' < ../build_brew/clib_port.h > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in remaining files. +for i in db_int.h errno.h; do + f=../build_brew_x/$i + cmp ../build_brew/$i $f > /dev/null 2>&1 || + (echo "Building $f" && + rm -f $f && cp ../build_brew/$i $f && chmod 444 $f) +done + +# Build a Makefile for testing on a POSIX system. +# $1 is srcfiles keyword +# $2 is Makefile name +build_make() +{ + f=../build_brew_x/$2 + + (cat brew/brew_make.in && + echo && + echo '###################################################' && + echo '# EVERYTHING BELOW THIS LINE IS GENERATED BY s_brew' && + echo '##################################################' && + echo 'OBJS=\' && + grep -w $1 srcfiles.in | + awk '{print $1}' | + sed -e '/isalpha/d' \ + -e '/isdigit/d' \ + -e '/isprint/d' \ + -e '/isspace/d' \ + -e 's/.*\// /' \ + -e 's/\.c$/.o/' \ + -e '$!s/$/\\/' && + echo && + grep -w $1 srcfiles.in | + awk '{print $1}' | + sed -e '/isalpha/d' \ + -e '/isdigit/d' \ + -e '/isprint/d' \ + -e '/isspace/d' \ + -e 's/\.c$//' \ + -e 's/.*/&.o: ..\/&.c/' \ + -e 's/^[^\/]*\///' && + echo && + echo 'libdb.a: $(OBJS)' && + echo ' ar cr $@ $(OBJS)') > $t + + cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +} + +build_make brew Makefile + +exit 0 diff --git a/db/dist/s_config b/db/dist/s_config index 194df83a5..256ed3d38 100755 --- a/db/dist/s_config +++ b/db/dist/s_config @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_config,v 12.1 2005/08/16 05:19:18 mjc Exp $ +# $Id: s_config,v 12.2 2007/04/18 14:47:26 bostic Exp $ # # Build the autoconfiguration files. @@ -8,7 +8,7 @@ trap 'rm -f aclocal.m4 ; exit 0' 0 1 2 3 13 15 . ./RELEASE echo "autoconf: building aclocal.m4..." -cat aclocal/*.ac aclocal_java/*.ac > aclocal.m4 +cat aclocal/*.m4 aclocal_java/*.m4 > aclocal.m4 echo "autoconf: running autoheader to build config.hin..." rm -f config.hin diff --git a/db/dist/s_crypto b/db/dist/s_crypto index 8dc736207..12dabcfd0 100755 --- a/db/dist/s_crypto +++ b/db/dist/s_crypto @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_crypto,v 12.1 2005/12/01 03:24:24 bostic Exp $ +# $Id: s_crypto,v 12.2 2007/06/13 20:16:04 bostic Exp $ # Remove crypto from the DB source tree. @@ -37,9 +37,11 @@ chmod 664 $f f=srcfiles.in chmod 664 $f +f=srcfiles.in +r=`egrep crypto/crypto.c $f | awk 'BEGIN { FS="\t*" } { print $2 }'` (echo 'g/^crypto\//d' && echo '/crypto_stub\.c/' && - echo 's/small/dynamic small static vx/' && + echo "s/\$/ $r/" && echo 'w' && echo 'q') | ed $f diff --git a/db/dist/s_cscope b/db/dist/s_cscope new file mode 100644 index 000000000..619f104b5 --- /dev/null +++ b/db/dist/s_cscope @@ -0,0 +1,17 @@ +#!/bin/sh - +# $Id: s_cscope,v 12.2 2007/04/20 18:32:27 bostic Exp $ +# +# Build cscope files. + +( +echo ../dbinc/*.in ../dbinc/*.h ../dbinc_auto/*.h; +cat srcfiles.in | +sed -e '/^#/d' \ + -e '/^$/d' \ + -e 's/^/..\//' \ + -e '/\/db_server_clnt.c/d' \ + -e '/\/db_server_svc.c/d' \ + -e '/\/db_server_xdr.c/d' \ + -e '/\/csv_local.c/d' \ + -e '/\/gen_db_server.c/d' | +awk '{print $1}') | cscope -bkUu -i- diff --git a/db/dist/s_include b/db/dist/s_include index 57a048ed8..b9859e2d5 100755 --- a/db/dist/s_include +++ b/db/dist/s_include @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_include,v 12.3 2006/04/27 13:40:36 mjc Exp $ +# $Id: s_include,v 12.8 2007/02/22 17:52:51 bostic Exp $ # # Build the automatically generated function prototype files. @@ -77,11 +77,14 @@ for i in db btree clib common crypto dbreg env fileops hash hmac \ head "_${i}_ext_h_" > $i_pfile if [ $i = os ] ; then - f=`ls ../$i/*.c ../os_windows/*.c` + f=`ls ../$i/*.c \ + ../os_brew/*.c ../os_qnx/*.c ../os_vxworks/*.c ../os_windows/*.c` elif [ $i = rpc_server ] ; then f=`ls ../$i/c/*.c` elif [ $i = crypto ] ; then f=`ls ../$i/*.c ../$i/*/*.c` + elif [ $i = env ] ; then + f=`ls ../$i/*.c ../repmgr/repmgr_stub.c` else f=`ls ../$i/*.c` fi diff --git a/db/dist/s_java_stat b/db/dist/s_java_stat index 67fa917f8..54ce587ee 100755 --- a/db/dist/s_java_stat +++ b/db/dist/s_java_stat @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_java_stat,v 12.14 2006/08/24 14:45:35 bostic Exp $ +# $Id: s_java_stat,v 12.20 2007/07/06 00:22:52 mjc Exp $ # # Build the Java files. @@ -8,8 +8,7 @@ msgjava="/*- * * See the file LICENSE for redistribution information. * - * Copyright (c) 2002-2006 - * Oracle Corporation. All rights reserved. + * Copyright (c) 2002,2007 Oracle. All rights reserved. */" s=/tmp/__java.sed @@ -17,7 +16,7 @@ t=/tmp/__java c=/tmp/__javajnic u1=/tmp/__javautil1 u2=/tmp/__javautil2 -trap 'rm -f $t $c $u1 $u2; exit 0' 0 1 2 3 13 15 +trap 'rm -f $s $t $c $u1 $u2; exit 0' 0 1 2 3 13 15 # Script to convert DB C structure declarations into Java declarations. jclass() @@ -89,9 +88,9 @@ EOF -e 's/_n([b-df-hj-np-tv-z]|upgrade)/_num_$1/;' \ -e 's/_(min|max)([a-z])/_$1_$2/;' \ -e 's/_mvcc/_multiversion/;' \ - -e 's/_cnt/_count_/;' \ + -e 's/cnt/_count_/;' \ -e 's/_pg/_pages_/;' \ - -e 's/(count|flag|free|page|percent|size|timeout)/_$1/g;' \ + -e 's/(count|flag|free|page|percent|size|sync|timeout)/_$1/g;' \ -e 's/([^p])(id\()/$1_$2/g;' \ -e 's/__*/_/g;' \ -e 's/_(.)/\U$1/g' \ @@ -320,6 +319,7 @@ stat_class mpool_stat CacheStats stat_class mutex_stat MutexStats stat_class qam_stat QueueStats " extends DatabaseStats" stat_class rep_stat ReplicationStats +stat_class repmgr_stat ReplicationManagerStats stat_class seq_stat SequenceStats # Build TransactionStats.java - special because of embedded Active class diff --git a/db/dist/s_je2db b/db/dist/s_je2db index a5c64197e..12fe822ce 100644 --- a/db/dist/s_je2db +++ b/db/dist/s_je2db @@ -66,7 +66,7 @@ done cd "$JETEST" for f in `find . -name '*.java' | grep $DIRMATCH | grep -v $EXCLUDETESTS` ; do #echo $DBTEST/$f - sed -e "$E1" < $f > $DBTEST/$f.sed.out + sed -e "$E1" -e "$E4" < $f > $DBTEST/$f.sed.out diff -q -I "\$\Id:" $DBTEST/$f $DBTEST/$f.sed.out || \ mv -f $DBTEST/$f.sed.out $DBTEST/$f rm -f $DBTEST/$f.sed.out @@ -78,7 +78,7 @@ if [ $COPY_EXAMPLES -eq 1 ] ; then cd "$JEEXAMPLES" for f in `find . -name '*.java' | grep $DIRMATCH` ; do #echo $DBEXAMPLES/$f - sed -e "$E1" < $f > $DBEXAMPLES/$f.sed.out + sed -e "$E1" -e "$E4" < $f > $DBEXAMPLES/$f.sed.out diff -q -I "\$\Id:" $DBEXAMPLES/$f $DBEXAMPLES/$f.sed.out || \ mv -f $DBEXAMPLES/$f.sed.out $DBEXAMPLES/$f rm -f $DBEXAMPLES/$f.sed.out diff --git a/db/dist/s_readme b/db/dist/s_readme index afa8c5b60..cb3cbef2f 100755 --- a/db/dist/s_readme +++ b/db/dist/s_readme @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_readme,v 12.1 2006/08/24 14:45:35 bostic Exp $ +# $Id: s_readme,v 12.2 2006/11/01 00:52:45 bostic Exp $ # # Build the README. @@ -15,9 +15,9 @@ trap 'rm -f $t; exit 0' 0 1 2 3 13 15 cat << END_OF_README>$t $DB_VERSION_STRING -This is version $DB_VERSION_MAJOR.$DB_VERSION_MINOR.$DB_VERSION_PATCH of Berkeley DB from Oracle Corporation. To view -the release and installation documentation, load the distribution file -docs/index.html into your web browser. +This is version $DB_VERSION_MAJOR.$DB_VERSION_MINOR.$DB_VERSION_PATCH of Berkeley DB from Oracle. To view release and +installation documentation, load the distribution file docs/index.html +into your web browser. END_OF_README f=../README diff --git a/db/dist/s_s60 b/db/dist/s_s60 new file mode 100644 index 000000000..7c1302826 --- /dev/null +++ b/db/dist/s_s60 @@ -0,0 +1,117 @@ +#!/bin/sh - +# $Id: s_s60,v 12.4 2007/07/06 16:29:16 bostic Exp $ +# +# Build the S60 files. + +msgc="/* DO NOT EDIT: automatically built by dist/s_s60. */" + +. RELEASE + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t ; exit 0' 0 +trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 + +# Build the S60 db.h. +cat < $s +/@inttypes_h_decl@/d +/@stdint_h_decl@/d +s/@stddef_h_decl@/#include / +/@unistd_h_decl@/d +s/@thread_h_decl@/#include / +/@u_int8_decl@/d +/@int16_decl@/d +/@u_int16_decl@/d +/@int32_decl@/d +/@u_int32_decl@/d +/@int64_decl@/d +/@u_int64_decl@/d +/@u_char_decl@/d +/@u_int_decl@/d +/@u_long_decl@/d +/@u_short_decl@/d +s/@uintmax_t_decl@/typedef unsigned long uintmax_t;/ +/@uintptr_t_decl@/d +/@FILE_t_decl@/d +/@off_t_decl@/d +/@pid_t_decl@/d +/@size_t_decl@/d +/@ssize_t_decl@/d +/@time_t_decl@/d +s/@db_seq_decl@/typedef int32_t db_seq_t;/ +s/@db_threadid_t_decl@/typedef pthread_t db_threadid_t;/ +s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/ +s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/ +s/@DB_VERSION_PATCH@/$DB_VERSION_PATCH/ +s/@DB_VERSION_STRING@/"$DB_VERSION_STRING"/ +s/@DB_VERSION_UNIQUE_NAME@// +s/@DB_CONST@// +s/@DB_PROTO1@/#undef __P/ +s/@DB_PROTO2@/#define __P(protos) protos/ +/@platform_header@/d +/@platform_footer@/d +ENDOFSEDTEXT +(echo "$msgc" && + sed -f $s ../dbinc/db.in && + cat ../dbinc_auto/ext_prot.in) > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in S60 db.h.' + exit 1 +} +f=../build_s60/db.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build the S60 db_int.h. +cat < $s +s/@PATH_SEPARATOR@/\\\\\\\\\/:/ +s/@db_int_def@// +ENDOFSEDTEXT +(echo "$msgc" && sed -f $s ../dbinc/db_int.in) > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in S60 db_int.h.' + exit 1 +} +f=../build_s60/db_int.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build the S60 db_config.h +# We don't fail, but we complain if the s60_config.in file isn't up-to-date. +check_config() +{ + egrep '^#undef' config.hin | awk '{print $2}' | sort > $s + (egrep '#undef' $1 | awk '{print $3}' + egrep '^#define' $1 | awk '{print $2}') | sort > $t + cmp $s $t > /dev/null || { + echo "config.hin and $1 differ" + echo "<<< config.hin >>> $1" + diff $s $t + } +} +check_config s60/s60_config.in +f=../build_s60/db_config.h +(echo "$msgc" && + sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" s60/s60_config.in) > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Build the S60 clib_port.h. +cat < $s +/@INT64_FMT@/d +/@UINT64_FMT@/d +ENDOFSEDTEXT +sed -f $s clib_port.in > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in S60 clib_port.h.' + exit 1 +} +f=../build_s60/clib_port.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +exit 0 diff --git a/db/dist/s_s60_mmp b/db/dist/s_s60_mmp new file mode 100644 index 000000000..4fe05db3d --- /dev/null +++ b/db/dist/s_s60_mmp @@ -0,0 +1,36 @@ +#!/bin/sh - +# $Id: s_s60_mmp,v 12.3 2007/07/06 16:29:16 bostic Exp $ +# +# Build BREW .dsp files. + +. RELEASE + +SRCFILES=srcfiles.in + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t; exit 0' 0 +trap 'rm -f $s $t; exit 1' 1 2 3 13 15 + +# Build the bdb_s60.mmp file. +mmp() +{ + + (cat s60/s60.mmp.1; + echo; + grep -w s60 $SRCFILES | awk '{print $1}' | + sed -e 's/^/SOURCE ..\\/' \ + -e 's/\//\\/g' | + sort; + echo; + cat s60/s60.mmp.2) > $t + + f=../build_s60/bdb_s60.mmp + cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +} + +mmp + +exit 0 diff --git a/db/dist/s_s60_posix b/db/dist/s_s60_posix new file mode 100644 index 000000000..4ab74837d --- /dev/null +++ b/db/dist/s_s60_posix @@ -0,0 +1,65 @@ +#!/bin/sh - +# $Id: s_s60_posix,v 1.2 2007/07/06 16:29:16 bostic Exp $ +# +# Build the S60 files on a POSIX system. + +s=/tmp/__db_a +t=/tmp/__db_b + +trap 'rm -f $s $t ; exit 0' 0 +trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 + +# Temporary directory to build in. +test -d ../build_s60_x || mkdir ../build_s60_x + +# Copy in db.h. +f=../build_s60_x/db.h +sed -e '/typedef.*[ ]off_t;/d' \ + -e '/typedef.*[ ]time_t;/d' \ + -e '/typedef.*[ ]uintptr_t;/d' \ + < ../build_s60/db.h > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in common files. +for i in clib_port.h db_config.h db_int.h; do + f=../build_s60_x/$i + cmp ../build_s60/$i $f > /dev/null 2>&1 || + (echo "Building $f" && + rm -f $f && cp ../build_s60/$i $f && chmod 444 $f) +done + +# Build a Makefile for testing on a POSIX system. +# $1 is srcfiles keyword +# $2 is Makefile name +build_make() +{ + (cat s60/s60_make.in && + echo && + echo '###################################################' && + echo '# EVERYTHING BELOW THIS LINE GENERATED BY s_s60_posix' && + echo '##################################################' && + echo 'OBJS=\' && + grep -w $1 srcfiles.in | + awk '{print $1}' | + sed -e 's/.*\// /' \ + -e 's/\.c$/.o/' \ + -e '$!s/$/\\/' && + echo && + grep -w $1 srcfiles.in | + awk '{print $1}' | + sed -e 's/\.c$//' \ + -e 's/.*/&.o: ..\/&.c/' \ + -e 's/^[^\/]*\///' && + echo && + echo 'libdb.a: $(OBJS)' && + echo ' ar cr $@ $(OBJS)') > $t + + f=../build_s60_x/$2 + cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +} + +build_make s60 Makefile + +exit 0 diff --git a/db/dist/s_symlink b/db/dist/s_symlink index 9625e0134..14124c283 100755 --- a/db/dist/s_symlink +++ b/db/dist/s_symlink @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_symlink,v 12.5 2006/09/13 17:51:34 bostic Exp $ +# $Id: s_symlink,v 12.9 2007/07/06 16:29:16 bostic Exp $ echo 'Creating Berkeley DB source tree symbolic links...' @@ -19,6 +19,7 @@ build db/tags ../dist/tags build db185/tags ../dist/tags build db_archive/tags ../dist/tags build db_checkpoint/tags ../dist/tags +build db_codegen/tags ../dist/tags build db_deadlock/tags ../dist/tags build db_dump/tags ../dist/tags build db_dump185/tags ../dist/tags @@ -47,6 +48,8 @@ build mp/tags ../dist/tags build mutex/tags ../dist/tags build os/tags ../dist/tags build os_brew/tags ../dist/tags +build os_qnx/tags ../dist/tags +build os_s60/tags ../dist/tags build os_vxworks/tags ../dist/tags build os_windows/tags ../dist/tags build qam/tags ../dist/tags diff --git a/db/dist/s_tags b/db/dist/s_tags index ff59d826e..430b59e44 100755 --- a/db/dist/s_tags +++ b/db/dist/s_tags @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_tags,v 12.2 2006/04/23 15:58:33 bostic Exp $ +# $Id: s_tags,v 12.3 2006/12/21 14:21:40 bostic Exp $ # # Build tags files. @@ -25,6 +25,7 @@ files=`echo ../dbinc/*.h \ ../mp/*.[ch] \ ../mutex/*.[ch] \ ../os/*.[ch] \ + ../os_qnx/*.[ch] \ ../qam/*.[ch] \ ../rep/*.[ch] \ ../repmgr/*.[ch] \ diff --git a/db/dist/s_tcl b/db/dist/s_tcl deleted file mode 100755 index 7350e9a49..000000000 --- a/db/dist/s_tcl +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh - -# $Id: s_tcl,v 1.14 2000/11/09 19:24:07 sue Exp $ -# -# Build the Tcl test files. - -msgshb="# DO NOT EDIT BELOW THIS LINE: automatically built by dist/s_tcl." - -. RELEASE - -f=../test/include.tcl -echo "Building $f" -rm -f $f -(echo "set tclsh_path @TCL_TCLSH@" && \ - echo "set tcllib .libs/libdb_tcl-@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@SOSUFFIX@" && \ - echo "set rpc_server localhost" && \ - echo "set rpc_path ." && \ - echo "set test_path @srcdir@/../test" && \ - echo "" && \ - echo "set KILL \"@db_cv_path_kill@\"" && \ - echo "" && \ - echo "$msgshb" && \ - echo "" && \ - echo "global dict" && \ - echo "global testdir" && \ - echo "global util_path" && \ - echo "set testdir ./TESTDIR" && \ - echo "set rpc_testdir \$rpc_path/TESTDIR" && \ - echo "" && \ - echo "global is_hp_test" && \ - echo "global is_qnx_test" && \ - echo "global is_windows_test") > $f -chmod 444 $f - -f=../build_win32/include.tcl -echo "Building $f" -rm -f $f -(echo "set tclsh_path SET_YOUR_TCLSH_PATH" && \ - echo "set test_path ../test" && \ - echo "set tcllib ./Debug/libdb_tcl${DB_VERSION_MAJOR}${DB_VERSION_MINOR}d.dll" && \ - echo "" && \ - echo "set KILL ./dbkill.exe" && \ - echo "" && \ - echo "$msgshb" && \ - echo "" && \ - echo "global dict" && \ - echo "global testdir" && \ - echo "global util_path" && \ - echo "set testdir ./TESTDIR" && \ - echo "" && \ - echo "global is_hp_test" && \ - echo "global is_qnx_test" && \ - echo "global is_windows_test") > $f -chmod 444 $f diff --git a/db/dist/s_vxworks b/db/dist/s_vxworks index ff974e676..814bfb448 100755 --- a/db/dist/s_vxworks +++ b/db/dist/s_vxworks @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_vxworks,v 12.13 2006/09/13 16:57:49 bostic Exp $ +# $Id: s_vxworks,v 12.19 2007/05/24 13:16:50 bostic Exp $ # # Build the VxWorks files. @@ -16,7 +16,7 @@ vxsmallfiles=/tmp/__db_e trap 'rm -f $s $t $u $vxfilelist $vxsmallfiles ; exit 0' 0 trap 'rm -f $s $t $u $vxfilelist $vxsmallfiles ; exit 1' 1 2 3 13 15 -# Build the VxWorks automatically generated files. +# Build the VxWorks db.h. cat < $s /extern "C" {/{ n @@ -41,14 +41,18 @@ s/@u_int32_decl@/typedef unsigned int u_int32_t;/ s/@int64_decl@// s/@u_int64_decl@/typedef unsigned long long u_int64_t;/ /@u_char_decl@/d -/@u_short_decl@/d /@u_int_decl@/d /@u_long_decl@/d -/@ssize_t_decl@/d +/@u_short_decl@/d s/@uintmax_t_decl@/typedef unsigned long uintmax_t;/ s/@uintptr_t_decl@/typedef unsigned long uintptr_t;/ -s/@db_seq_decl@/typedef int db_seq_t;/ +/@FILE_t_decl@/d +/@off_t_decl@/d /@pid_t_decl@/d +/@size_t_decl@/d +/@ssize_t_decl@/d +/@time_t_decl@/d +s/@db_seq_decl@/typedef int db_seq_t;/ s/@db_threadid_t_decl@/typedef uintmax_t db_threadid_t;/ s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/ s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/ @@ -73,11 +77,15 @@ f=../build_vxworks/db.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the VxWorks db_int.h. cat < $s -s/@INT64_FMT@/#define INT64_FMT "%lld"/ -s/@UINT64_FMT@/#define UINT64_FMT "%llu"/ s/@PATH_SEPARATOR@/\/\\\\\\\\/ s/@db_int_def@// +/#ifdef.*HAVE_SYSTEM_INCLUDE_FILES/i\\ +#include "vxWorks.h" +/#endif.*HAVE_SYSTEM_INCLUDE_FILES/a\\ +#include "clib_port.h"\\ +#include "db.h" ENDOFSEDTEXT (echo "$msgc" && sed -f $s ../dbinc/db_int.in) > $t test `egrep '@.*@' $t` && { @@ -89,15 +97,14 @@ f=../build_vxworks/db_int.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -# Build the VxWorks db_config.h file. +# Build the VxWorks db_config.h. # We don't fail, but we complain if the vx_config.in file isn't up-to-date. check_config() { - egrep '^#undef' config.hin | - awk '{print $2}' | sed '/^SIZEOF_/d' | sort > $s + egrep '^#undef' config.hin | awk '{print $2}' | sort > $s (egrep '#undef' $1 | awk '{print $3}' egrep '^#define' $1 | awk '{print $2}') | sort > $t - cmp $s $t || { + cmp $s $t > /dev/null || { echo "config.hin and $1 differ" echo "<<< config.hin >>> $1" diff $s $t @@ -109,6 +116,7 @@ f=../build_vxworks/db_config.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the VxWorks db_config_small.h. f=../build_vxworks/db_config_small.h (echo "$msgc" && sed -e "s/__EDIT_DB_VERSION__/$DB_VERSION/" \ @@ -122,9 +130,20 @@ f=../build_vxworks/db_config_small.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the VxWorks clib_port.h. +cat < $s +s/@INT64_FMT@/#define INT64_FMT "%lld"/ +s/@UINT64_FMT@/#define UINT64_FMT "%llu"/ +ENDOFSEDTEXT +sed -f $s clib_port.in > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in VxWorks clib_port.h.' + exit 1 +} f=../build_vxworks/clib_port.h -cmp clib_port.h $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp clib_port.h $f && chmod 444 $f) +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) # Build a sed script that will change a "standard" DB utility into # VxWorks-compatible code. @@ -174,12 +193,14 @@ ENDOFSEDTEXT echo "s/^\($k(\)/$1_\1/g" done - # There is a special case the rules above don't catch: + # There are special cases the rules above don't catch: + # a feedback function used as an argument to dbenv->set_feedback + # a print_app_record function used as an argument to + # dbenv->set_app_dispatch. # a txn_compare function used as an argument to qsort(3). - # a print_app_record function used as argument to - # dbenv->set_app_dispatch). - echo "s/, txn_compare);/, db_stat_txn_compare);/" + echo "s/, feedback);/, db_recover_feedback);/" echo "s/, print_app_record)) /, db_printlog_print_app_record)) /" + echo "s/, txn_compare);/, db_stat_txn_compare);/" # We convert the ex_access sample into dbdemo for VxWorks. echo 's/progname = "ex_access";/progname = "dbdemo";/' @@ -229,7 +250,7 @@ util_one() i="\$(PRJ_DIR)/../../$i" fi o=" FILE_$i" - + echo "${o}_dependDone" echo "FALSE" echo "" diff --git a/db/dist/s_win32 b/db/dist/s_win32 deleted file mode 100755 index acdb92249..000000000 --- a/db/dist/s_win32 +++ /dev/null @@ -1,153 +0,0 @@ -#!/bin/sh - -# $Id: s_win32,v 1.37 2004/10/15 18:28:21 bostic Exp $ -# -# Build Windows/32 include files. - -msgc="/* DO NOT EDIT: automatically built by dist/s_win32. */" -msgw="; DO NOT EDIT: automatically built by dist/s_win32." - -. RELEASE - -s=/tmp/__db_a$$ -t=/tmp/__db_b$$ -rm -f $s $t - -trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 - -# Build the Win32 automatically generated files. -cat < $s -/@inttypes_h_decl@/d -/@stdint_h_decl@/d -s/@stddef_h_decl@/#include / -s/@u_int8_decl@/typedef unsigned char u_int8_t;/ -s/@int16_decl@/typedef short int16_t;/ -s/@u_int16_decl@/typedef unsigned short u_int16_t;/ -s/@int32_decl@/typedef int int32_t;/ -s/@u_int32_decl@/typedef unsigned int u_int32_t;/ -s/@int64_decl@/typedef __int64 int64_t;/ -s/@u_int64_decl@/typedef unsigned __int64 u_int64_t;/ -s/@db_seq_decl@/typedef int64_t db_seq_t;/ -/@u_char_decl@/{ - i\\ -#ifndef _WINSOCKAPI_ - s/@u_char_decl@/typedef unsigned char u_char;/ -} -s/@u_short_decl@/typedef unsigned short u_short;/ -s/@u_int_decl@/typedef unsigned int u_int;/ -/@u_long_decl@/{ - s/@u_long_decl@/typedef unsigned long u_long;/ - a\\ -#endif -} -/@ssize_t_decl@/{ - i\\ -#ifdef _WIN64\\ -typedef int64_t ssize_t;\\ -#else\\ -typedef int32_t ssize_t;\\ -#endif - d -} -s/@uintmax_t_decl@/typedef u_int64_t uintmax_t;/ -/@uintptr_t_decl@/{ - i\\ -#ifdef _WIN64\\ -typedef u_int64_t uintptr_t;\\ -#else\\ -typedef u_int32_t uintptr_t;\\ -#endif - d -} -s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/ -s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/ -s/@DB_VERSION_PATCH@/$DB_VERSION_PATCH/ -s/@DB_VERSION_STRING@/"$DB_VERSION_STRING"/ -s/@DB_VERSION_UNIQUE_NAME@// -s/@DB_CONST@// -s/@DB_PROTO1@/#undef __P/ -s/@DB_PROTO2@/#define __P(protos) protos/ -ENDOFSEDTEXT -(echo "$msgc" && - sed -f $s ../dbinc/db.in && - cat ../dbinc_auto/ext_prot.in) > $t -`egrep '@.*@' $t` && { - echo 'Unexpanded autoconf variables found in Windows db.h.' - exit 1 -} -f=../build_win32/db.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -f=../build_win64/db.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -cat < $s -s/@cxx_have_stdheaders@/#define HAVE_CXX_STDHEADERS 1/ -ENDOFSEDTEXT -(echo "$msgc" && sed -f $s ../dbinc/db_cxx.in) > $t -`egrep '@.*@' $t` && { - echo 'Unexpanded autoconf variables found in Windows db_cxx.h.' - exit 1 -} -f=../build_win32/db_cxx.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -f=../build_win64/db_cxx.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -cat < $s -s/@PATH_SEPARATOR@/\\\\\\\\\/:/ -s/@db_int_def@// -ENDOFSEDTEXT -(echo "$msgc" && sed -f $s ../dbinc/db_int.in) > $t -`egrep '@.*@' $t` && { - echo 'Unexpanded autoconf variables found in Windows db_int.h.' - exit 1 -} -f=../build_win32/db_int.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -f=../build_win64/db_int.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -f=../build_win32/db_config.h -(echo "$msgc" && sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" win_config.in) > $t -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -f=../build_win64/db_config.h -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -f=../build_win32/libdb.rc -cat < $s -s/%MAJOR%/$DB_VERSION_MAJOR/ -s/%MINOR%/$DB_VERSION_MINOR/ -s/%PATCH%/$DB_VERSION_PATCH/ -ENDOFSEDTEXT -sed -f $s ../build_win32/libdbrc.src > $t -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -f=../build_win32/libdb.def -(echo $msgw && - echo && - echo EXPORTS; -a=1 -for i in `sed -e '/^$/d' -e '/^#/d' win_exports.in`; do - echo " $i @$a" - a=`expr $a + 1` -done) > $t -cmp $t $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - -f=../build_win32/win_db.h -i=win_db.in -cmp $i $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) -f=../build_win64/win_db.h -cmp $i $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) - -rm -f $s $t diff --git a/db/dist/s_win32_dsp b/db/dist/s_win32_dsp deleted file mode 100644 index 10e0ccc4b..000000000 --- a/db/dist/s_win32_dsp +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh - -# $Id: s_win32_dsp,v 1.12 2004/08/20 15:01:06 mjc Exp $ -# -# Build Windows/32 .dsp files. - -. RELEASE - -SRCFILES=srcfiles.in - -create_dsp() -{ - projname="$1" # name of the .dsp file - match="$2" # the string used to egrep the $sources file - sources="$3" # a modified version of $SRCFILES to facilitate matches - dsptemplate="$4" # overall template file for the .dsp - srctemplate="$5" # template file for the src file fragments - - dspoutput=$BUILDDIR/$projname.dsp - - rm -f $dspoutput.insert - for srcpath in `egrep "$match" $sources | sed -e 's/[ ].*//'` - do - # take the path name and break it up, converting / to \\. - # so many backslashes needed because of shell quoting and - # sed quoting -- we'll end up with two backslashes for every - # forward slash, but we need that when feeding that to the - # later sed command. - set - `echo $srcpath | sed -e 's;\(.*\)/;../\\1 ;' \ - -e "s;$BUILDDIR;.;" \ - -e 's;/;\\\\\\\\;g'` - srcdir="$1" - srcfile="$2" - sed -e "s/@srcdir@/$srcdir/g" \ - -e "s/@srcfile@/$srcfile/g" \ - < $srctemplate >> $dspoutput.insert - done - sed -e "/@SOURCE_FILES@/r$dspoutput.insert" \ - -e "/@SOURCE_FILES@/d" \ - -e "s/@project_name@/$projname/g" \ - -e "s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/g" \ - -e "s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/g" \ - < $dsptemplate > $dspoutput.new - - # Set the file mode to 644 because the VC++ IDE needs a writeable file - # in our development environment. - cmp $dspoutput.new $dspoutput > /dev/null 2>&1 || - (echo "Building $dspoutput" && rm -f $dspoutput && - cp $dspoutput.new $dspoutput && chmod 664 $dspoutput) - rm -f $dspoutput.insert $dspoutput.new -} - -TMPA=/tmp/swin32dsp$$a -trap "rm -f $TMPA; exit 1" 1 2 3 15 - -# create a copy of the srcfiles with comments and empty lines removed. -# add a space at the end of each list of modules so that each module -# can be unambiguously matched e.g. ' dynamic ' -sed -e "s/#.*$//" \ - -e "/^[ ]*$/d" \ - -e "s/[ ][ ]*/ /" \ - -e "s/[ ]*$//" \ - -e "/[ ]/!d" \ - -e "s/$/ /" < $SRCFILES > $TMPA - -# get a list of all modules mentioned -# -MODULES="`sed -e 's/^[^ ]* //' < $TMPA \ - | tr ' ' '\012' | sort | uniq`" - -for BUILDDIR in ../build_win32 ../build_win64 -do - for module in $MODULES - do - case "$module" in - dynamic ) - create_dsp db_dll " $module " $TMPA \ - $BUILDDIR/dynamic_dsp.src $BUILDDIR/srcfile_dsp.src - ;; - small ) - create_dsp db_small " $module " $TMPA \ - $BUILDDIR/small_dsp.src $BUILDDIR/srcfile_dsp.src - ;; - static ) - create_dsp db_static " $module " $TMPA \ - $BUILDDIR/static_dsp.src $BUILDDIR/srcfile_dsp.src - ;; - java ) - create_dsp db_java " $module " $TMPA \ - $BUILDDIR/java_dsp.src $BUILDDIR/srcfile_dsp.src - ;; - tcl ) - create_dsp db_tcl " $module " $TMPA \ - $BUILDDIR/tcl_dsp.src $BUILDDIR/srcfile_dsp.src - ;; - testutil ) - create_dsp db_test " $module " $TMPA \ - $BUILDDIR/db_test.src $BUILDDIR/srcfile_dsp.src - ;; - app=* ) - appname=`echo $module | sed -e 's/^app=//'` - if [ -f $BUILDDIR/$appname.src ] ; then - srcname=$BUILDDIR/$appname.src - else - srcname=$BUILDDIR/app_dsp.src - fi - create_dsp $appname " $module " $TMPA \ - $srcname $BUILDDIR/srcfile_dsp.src - ;; - vx|vxsmall ) - ;; - * ) - echo "s_win32_dsp: module name $module in $SRCFILES is unknown type" - ;; - esac - done -done - -rm -f $TMPA diff --git a/db/dist/s_windows b/db/dist/s_windows index b5f46eabf..56f9f6ddf 100755 --- a/db/dist/s_windows +++ b/db/dist/s_windows @@ -1,5 +1,5 @@ #!/bin/sh - -# $Id: s_windows,v 12.20 2006/07/13 06:19:45 mjc Exp $ +# $Id: s_windows,v 12.26 2007/05/24 13:16:50 bostic Exp $ # # Build Windows include files. @@ -14,7 +14,7 @@ rm -f $s $t trap 'rm -f $s $t ; exit 1' 1 2 3 13 15 -# Build the Win32 automatically generated files. +# Build the Windows db.h cat < $s /@inttypes_h_decl@/d /@stdint_h_decl@/d @@ -29,8 +29,8 @@ s/@u_int32_decl@/typedef unsigned int u_int32_t;/ s/@int64_decl@/typedef __int64 int64_t;/ s/@u_int64_decl@/typedef unsigned __int64 u_int64_t;/ s/@db_seq_decl@/typedef int64_t db_seq_t;/ -s/@pid_t_decl@/typedef int pid_t;/ s/@db_threadid_t_decl@/typedef u_int32_t db_threadid_t;/ +s/@pid_t_decl@/typedef int pid_t;/ /@u_char_decl@/{ i\\ #ifndef _WINSOCKAPI_ @@ -43,6 +43,8 @@ s/@u_int_decl@/typedef unsigned int u_int;/ a\\ #endif } +/@FILE_t_decl@/d +/@size_t_decl@/d /@ssize_t_decl@/{ i\\ #ifdef _WIN64\\ @@ -52,6 +54,7 @@ typedef int32_t ssize_t;\\ #endif d } +/@time_t_decl@/d s/@uintmax_t_decl@/typedef u_int64_t uintmax_t;/ /@uintptr_t_decl@/{ i\\ @@ -62,6 +65,16 @@ typedef u_int32_t uintptr_t;\\ #endif d } +/@off_t_decl@/{ + i\\ +/*\\ +\ * Windows defines off_t to long (i.e., 32 bits). We need to pass 64-bit\\ +\ * file offsets, so we declare our own.\\ +\ */\\ +#define off_t __db_off_t\\ +typedef int64_t off_t; + d +} /@platform_header@/{ i\\ /*\\ @@ -102,6 +115,11 @@ s/@DB_CONST@// s/@DB_PROTO1@/#undef __P/ s/@DB_PROTO2@/#define __P(protos) protos/ ENDOFSEDTEXT +# The db.h, db_int.h files are identical between Windows and WinCE. +# This may change in the future, for now have the script copy +# the headers into the build_wince directory. +# WinCE does not support the C++ API, so don't need to copy db_cxx.h + (echo "$msgc" && sed -f $s ../dbinc/db.in && cat ../dbinc_auto/ext_prot.in) > $t @@ -111,9 +129,13 @@ test `egrep '@.*@' $t` && { exit 1 } f=../build_windows/db.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +f=../build_wince/db.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the Windows db_cxx.h. cat < $s s/@cxx_have_stdheaders@/#define HAVE_CXX_STDHEADERS 1/ ENDOFSEDTEXT @@ -127,9 +149,8 @@ f=../build_windows/db_cxx.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the Windows db_int.h. cat < $s -s/@INT64_FMT@/#define INT64_FMT "%I64d"/ -s/@UINT64_FMT@/#define UINT64_FMT "%I64u"/ s/@PATH_SEPARATOR@/\\\\\\\\\/:/ s/@db_int_def@// ENDOFSEDTEXT @@ -140,18 +161,20 @@ test `egrep '@.*@' $t` && { exit 1 } f=../build_windows/db_int.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +f=../build_wince/db_int.h cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -# Build the Windows db_config.h file. +# Build the Windows and WinCE db_config.h. # We don't fail, but we complain if the win_config.in file isn't up-to-date. check_config() { - egrep '^#undef' config.hin | - awk '{print $2}' | sed '/^SIZEOF_/d' | sort > $s + egrep '^#undef' config.hin | awk '{print $2}' | sort > $s (egrep '#undef' $1 | awk '{print $3}' egrep '^#define' $1 | awk '{print $2}') | sed '/__STDC__/d' | sort > $t - cmp $s $t || { + cmp $s $t > /dev/null || { echo "config.hin and $1 differ" echo "<<< config.hin >>> $1" diff $s $t @@ -160,9 +183,15 @@ check_config() check_config win_config.in f=../build_windows/db_config.h (echo "$msgc" && sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" win_config.in) > $t +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +check_config wince_config.in +f=../build_wince/db_config.h +(echo "$msgc" && sed "s/__EDIT_DB_VERSION__/$DB_VERSION/" wince_config.in) > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +# Build the Windows libdb.rc and libdb.def. f=../build_windows/libdb.rc cat < $s s/%MAJOR%/$DB_VERSION_MAJOR/ @@ -172,7 +201,6 @@ ENDOFSEDTEXT sed -f $s ../build_windows/libdbrc.src > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) - f=../build_windows/libdb.def (echo $msgw && echo && @@ -185,13 +213,27 @@ done) > $t cmp $t $f > /dev/null 2>&1 || (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) -f=../build_windows/win_db.h -i=win_db.in -cmp $i $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp $i $f && chmod 444 $f) - +# Build the Windows clib_port.h. +cat < $s +s/@INT64_FMT@/#define INT64_FMT "%I64d"/ +s/@UINT64_FMT@/#define UINT64_FMT "%I64u"/ +ENDOFSEDTEXT +sed -f $s clib_port.in > $t +test `egrep '@.*@' $t` && { + egrep '@.*@' $t + echo 'Unexpanded autoconf variables found in Windows clib_port.h.' + exit 1 +} f=../build_windows/clib_port.h -cmp clib_port.h $f > /dev/null 2>&1 || - (echo "Building $f" && rm -f $f && cp clib_port.h $f && chmod 444 $f) +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) +f=../build_wince/clib_port.h +cmp $t $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp $t $f && chmod 444 $f) + +# Copy in errno.h. +f=../build_wince/errno.h +cmp errno.h $f > /dev/null 2>&1 || + (echo "Building $f" && rm -f $f && cp errno.h $f && chmod 444 $f) rm -f $s $t diff --git a/db/dist/s_windows_dsp b/db/dist/s_windows_dsp index c7a94fe64..9fa4f35cc 100755 --- a/db/dist/s_windows_dsp +++ b/db/dist/s_windows_dsp @@ -1,5 +1,5 @@ -#!/bin/sh - -# $Id: s_windows_dsp,v 12.9 2006/07/13 06:19:45 mjc Exp $ +#!/bin/bash - +# $Id: s_windows_dsp,v 12.21 2007/07/06 16:29:16 bostic Exp $ # # Build Windows/32 .dsp files. @@ -17,10 +17,18 @@ create_dsp() release_libs="$6" # libraries to link against in Release builds debug_libs="$7" # libraries to link against in Debug builds lib_suffix="$8" # the library name is libdb@lib_suffix@@VERSION@ + proj_type="$9" # the project type dsp or vcp + proj_guid="${10}" # The project guid for VS2005 projects - srctemplate="$BUILDDIR/srcfile_dsp.src" # template file for the src file fragments - dspoutput=$BUILDDIR/$projname.dsp + # Set the default project type to be "dsp" + if [ ! "$proj_type" ] ; then + proj_type=dsp + fi + # template file for the src file fragments + srctemplate="$BUILDDIR/srcfile_$proj_type.src" + rsrctemplate="$BUILDDIR/rsrcfile_$proj_type.src" + dspoutput=$BUILDDIR/$projname.$proj_type postbuild=$dspoutput.postbuild if [ ! -f $postbuild ] ; then @@ -40,9 +48,15 @@ create_dsp() -e 's;/;\\\\\\\\;g'` srcdir="$1" srcfile="$2" + if [ "${srcfile##*.}" = "rc" -a "$proj_type" = "vcproj" ] ; then + inptemplate=$rsrctemplate + else + inptemplate=$srctemplate + fi + sed -e "s/@srcdir@/$srcdir/g" \ -e "s/@srcfile@/$srcfile/g" \ - < $srctemplate >> $dspoutput.insert + < $inptemplate >> $dspoutput.insert done sed -e "/@SOURCE_FILES@/r$dspoutput.insert" \ -e "/@SOURCE_FILES@/d" \ @@ -59,8 +73,14 @@ create_dsp() -e "s,@lib_suffix@,$lib_suffix,g" \ -e "s/@DB_VERSION_MAJOR@/$DB_VERSION_MAJOR/g" \ -e "s/@DB_VERSION_MINOR@/$DB_VERSION_MINOR/g" \ + -e "s/@PROJ_GUID@/$proj_guid/g" \ < $dsptemplate > $dspoutput.new + # We run this script on Windows (under Cygwin). Fix up the line-endings + # for the temporary files. We don't test the platform, just run unix2dos + # if the command exists, ignoring any not-found error message. + (unix2dos.exe $dspoutput.new) >/dev/null 2>&1 + # Set the file mode to 644 because the VC++ IDE needs a writeable file # in our development environment. cmp $dspoutput.new $dspoutput > /dev/null 2>&1 || @@ -84,61 +104,107 @@ sed -e "s/#.*$//" \ # get a list of all modules mentioned # -MODULES="`sed -e 's/^[^ ]* //' < $TMPA \ - | tr ' ' '\012' | sort | uniq`" +MODULES="`sed -e 's/^[^ ]* //' < $TMPA | tr ' ' '\012' | sort | uniq`" -for BUILDDIR in ../build_windows +for module in $MODULES do - for module in $MODULES - do - case "$module" in - dynamic ) - create_dsp db_dll " $module " $TMPA $BUILDDIR/dynamic_dsp.src \ - '' 'ws2_32.lib' 'ws2_32.lib' - ;; - small ) - create_dsp db_small " $module " $TMPA $BUILDDIR/static_dsp.src \ - '/D "HAVE_SMALLBUILD"' '' '' _small - ;; - static ) - create_dsp db_static " $module " $TMPA $BUILDDIR/static_dsp.src - ;; - java ) - create_dsp db_java " $module " $TMPA $BUILDDIR/dynamic_dsp.src '' \ - 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib' \ - 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib' _java - ;; - tcl ) - create_dsp db_tcl " $module " $TMPA $BUILDDIR/dynamic_dsp.src \ - '/D "DB_TCL_SUPPORT"' \ - 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib tcl84.lib' \ - 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib tcl84g.lib' _tcl - ;; - testutil ) - create_dsp db_test " $module " $TMPA $BUILDDIR/app_dsp.src \ - '' '/out:"dbkill.exe"' '/out:"dbkill.exe"' - ;; - app=* ) - appname=`echo $module | sed -e 's/^app=//'` - case "$appname" in - ex_rep_base ) - libs='ws2_32.lib' - ;; - * ) - libs='' - ;; - esac - create_dsp $appname " $module " $TMPA $BUILDDIR/app_dsp.src '' \ - $libs $libs - ;; - vx|vxsmall ) + case "$module" in + dynamic ) + BUILDDIR=../build_windows + create_dsp db_dll " $module " $TMPA $BUILDDIR/dynamic_dsp.src \ + '' 'ws2_32.lib' 'ws2_32.lib' + ;; + small ) + BUILDDIR=../build_windows + create_dsp db_small " $module " $TMPA $BUILDDIR/static_dsp.src \ + '/D "HAVE_SMALLBUILD"' '' '' _small + ;; + static ) + BUILDDIR=../build_windows + create_dsp db_static " $module " $TMPA $BUILDDIR/static_dsp.src + ;; + ce) + BUILDDIR=../build_wince + create_dsp db_static " $module " $TMPA \ + ../build_wince/static_vcp.src '' '' '' '' vcp + # Build VS2005 projects. + # The GUID passed in must match that in the .sln workspace. + # It would be ideal to grab the GUID from there if this + # project is already included there. + create_dsp db_static " $module " $TMPA \ + ../build_wince/static_vcproj.src '' '' '' '' vcproj \ + "4AB4958F-8DD0-49B5-8C02-014B5637C59A" + ;; + ce_small) + BUILDDIR=../build_wince + create_dsp db_small " $module " $TMPA \ + ../build_wince/static_vcp.src '/D "HAVE_SMALLBUILD"' \ + '' '' _small vcp + # Build VS2005 projects. + # The GUID passed in must match that in the .sln workspace. + # It would be ideal to grab the GUID from there if this + # project is already included there. + create_dsp db_small " $module " $TMPA \ + ../build_wince/static_vcproj.src 'HAVE_SMALLBUILD' \ + '' '' _small vcproj "6A2849DA-8F7C-4B50-BDAE-AE7752EF8213" + ;; + java ) + BUILDDIR=../build_windows + create_dsp db_java " $module " $TMPA $BUILDDIR/dynamic_dsp.src '' \ + 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib' \ + 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib' _java + ;; + tcl ) + BUILDDIR=../build_windows + create_dsp db_tcl " $module " $TMPA $BUILDDIR/dynamic_dsp.src \ + '/D "DB_TCL_SUPPORT"' \ + 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@.lib tcl84.lib' \ + 'libdb@DB_VERSION_MAJOR@@DB_VERSION_MINOR@d.lib tcl84g.lib' _tcl + ;; + testutil ) + BUILDDIR=../build_windows + create_dsp db_test " $module " $TMPA $BUILDDIR/app_dsp.src \ + '' '/out:"dbkill.exe"' '/out:"dbkill.exe"' + ;; + app=* ) + BUILDDIR=../build_windows + appname=`echo $module | sed -e 's/^app=//'` + case "$appname" in + ex_rep_base ) + libs='ws2_32.lib' ;; * ) - echo \ - "s_windows_dsp: module name $module in $SRCFILES is unknown type" + libs='' ;; esac - done + # Split into Windows CE and Win32/64 project creation. + case "$appname" in + wce_tpcb ) + BUILDDIR=../build_wince + create_dsp $appname " $module " $TMPA \ + ../build_wince/app_vcp.src '/D "__NO_SYSTEM_INCLUDES"' \ + '' '' '' vcp + # The GUID passed in must match that in the .sln workspace. + # It would be ideal to grab the GUID from there if this + # project is already included there. + create_dsp $appname " $module " $TMPA \ + ../build_wince/app_vcproj.src '__NO_SYSTEM_INCLUDES' \ + '' '' '' vcproj "F2CE670A-ABAE-414A-9A17-8079AB58613F" + BUILDDIR=../build_windows + ;; + * ) + create_dsp $appname " $module " $TMPA $BUILDDIR/app_dsp.src \ + '' $libs $libs + ;; + esac + ;; + brew|s60|vx|vxsmall ) + ;; + * ) + echo \ + "s_windows_dsp: module name $module in $SRCFILES is unknown type" + ;; + esac done rm -f $TMPA diff --git a/db/dist/srcfiles.in b/db/dist/srcfiles.in index 870ab3be4..930e7a623 100644 --- a/db/dist/srcfiles.in +++ b/db/dist/srcfiles.in @@ -1,4 +1,4 @@ -# $Id: srcfiles.in,v 12.53 2006/09/09 14:08:39 bostic Exp $ +# $Id: srcfiles.in,v 12.84 2007/07/06 16:29:16 bostic Exp $ # # This is an input file for the s_windows_dsp and s_vxworks scripts. It lists # the source files in the Berkeley DB tree and notes which are used to build @@ -21,26 +21,26 @@ # vx File is in the VxWorks library. # vxsmall File is in the small VxWorks library. -btree/bt_compact.c dynamic small static vx vxsmall -btree/bt_compare.c dynamic small static vx vxsmall -btree/bt_conv.c dynamic small static vx vxsmall -btree/bt_curadj.c dynamic small static vx vxsmall -btree/bt_cursor.c dynamic small static vx vxsmall -btree/bt_delete.c dynamic small static vx vxsmall -btree/bt_method.c dynamic small static vx vxsmall -btree/bt_open.c dynamic small static vx vxsmall -btree/bt_put.c dynamic small static vx vxsmall -btree/bt_rec.c dynamic small static vx vxsmall -btree/bt_reclaim.c dynamic small static vx vxsmall -btree/bt_recno.c dynamic small static vx vxsmall -btree/bt_rsearch.c dynamic small static vx vxsmall -btree/bt_search.c dynamic small static vx vxsmall -btree/bt_split.c dynamic small static vx vxsmall -btree/bt_stat.c dynamic small static vx vxsmall -btree/bt_upgrade.c dynamic small static vx vxsmall -btree/bt_verify.c dynamic static vx -btree/btree_auto.c dynamic small static vx vxsmall -btree/btree_autop.c app=db_printlog +btree/bt_compact.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_compare.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_conv.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_curadj.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_cursor.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_delete.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_method.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_open.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_put.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_reclaim.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_recno.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_rsearch.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_search.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_split.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_stat.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/bt_upgrade.c ce ce_small dynamic small static vx vxsmall +btree/bt_verify.c ce ce_small dynamic static vx +btree/btree_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +btree/btree_autop.c app=db_printlog build_vxworks/db_archive/db_archive.c build_vxworks/db_checkpoint/db_checkpoint.c build_vxworks/db_deadlock/db_deadlock.c @@ -53,366 +53,385 @@ build_vxworks/db_stat/db_stat.c build_vxworks/db_upgrade/db_upgrade.c build_vxworks/db_verify/db_verify.c build_vxworks/dbdemo/dbdemo.c -build_windows/dbkill.cpp testutil -build_windows/libdb.def dynamic -build_windows/libdb.rc dynamic -build_windows/libdb_tcl.def tcl -clib/abort.c +build_windows/dbkill.cpp testutil +build_windows/libdb.def dynamic +build_windows/libdb.rc dynamic +build_windows/libdb_tcl.def tcl clib/atoi.c -clib/atol.c -clib/ctime.c dynamic small static vx vxsmall -clib/getaddrinfo.c dynamic static +clib/atol.c brew +clib/ctime.c dynamic small static s60 vx vxsmall +clib/getaddrinfo.c dynamic static clib/getcwd.c -clib/getopt.c vx vxsmall -clib/isalpha.c -clib/isdigit.c -clib/isprint.c -clib/isspace.c +clib/getopt.c vx vxsmall +clib/isalpha.c brew +clib/isdigit.c brew +clib/isprint.c brew +clib/isspace.c brew clib/memcmp.c clib/memmove.c -clib/printf.c +clib/printf.c brew +clib/qsort.c brew clib/raise.c -clib/rand.c -clib/snprintf.c vx vxsmall -clib/strcasecmp.c dynamic small static vx vxsmall +clib/rand.c brew +clib/snprintf.c s60 vx vxsmall +clib/strcasecmp.c brew s60 vx vxsmall clib/strcat.c clib/strchr.c -clib/strdup.c vx vxsmall -clib/strerror.c -clib/strncat.c +clib/strdup.c ce ce_small vx vxsmall +clib/strerror.c ce ce_small brew +clib/strncat.c brew clib/strncmp.c clib/strrchr.c -clib/strsep.c dynamic small static vx vxsmall -clib/strtol.c +clib/strsep.c brew ce ce_small dynamic small static s60 vx vxsmall +clib/strtol.c brew clib/strtoul.c -common/crypto_stub.c small vxsmall -common/db_byteorder.c dynamic small static vx vxsmall -common/db_clock.c dynamic static vx -common/db_err.c dynamic small static vx vxsmall -common/db_getlong.c dynamic small static vx vxsmall -common/db_idspace.c dynamic small static vx vxsmall -common/db_log2.c dynamic small static vx vxsmall -common/mkpath.c dynamic small static vx vxsmall -common/util_arg.c vx vxsmall -common/util_cache.c dynamic small static vx vxsmall -common/util_log.c dynamic small static vx vxsmall -common/util_sig.c dynamic small static vx vxsmall -crypto/aes_method.c dynamic static vx -crypto/crypto.c dynamic static vx -crypto/mersenne/mt19937db.c dynamic static vx -crypto/rijndael/rijndael-alg-fst.c dynamic static vx -crypto/rijndael/rijndael-api-fst.c dynamic static vx -cxx/cxx_db.cpp dynamic small static -cxx/cxx_dbc.cpp dynamic small static -cxx/cxx_dbt.cpp dynamic small static -cxx/cxx_env.cpp dynamic small static -cxx/cxx_except.cpp dynamic small static -cxx/cxx_lock.cpp dynamic small static -cxx/cxx_logc.cpp dynamic small static -cxx/cxx_mpool.cpp dynamic small static -cxx/cxx_multi.cpp dynamic small static -cxx/cxx_seq.cpp dynamic small static -cxx/cxx_txn.cpp dynamic small static -db/crdel_auto.c dynamic small static vx vxsmall -db/crdel_autop.c app=db_printlog -db/crdel_rec.c dynamic small static vx vxsmall -db/db.c dynamic small static vx vxsmall -db/db_am.c dynamic small static vx vxsmall -db/db_auto.c dynamic small static vx vxsmall -db/db_autop.c app=db_printlog -db/db_cam.c dynamic small static vx vxsmall -db/db_cds.c dynamic small static vx vxsmall -db/db_conv.c dynamic small static vx vxsmall -db/db_dispatch.c dynamic small static vx vxsmall -db/db_dup.c dynamic small static vx vxsmall -db/db_iface.c dynamic small static vx vxsmall -db/db_join.c dynamic small static vx vxsmall -db/db_meta.c dynamic small static vx vxsmall -db/db_method.c dynamic small static vx vxsmall -db/db_open.c dynamic small static vx vxsmall -db/db_overflow.c dynamic small static vx vxsmall -db/db_ovfl_vrfy.c dynamic static vx -db/db_pr.c dynamic small static vx vxsmall -db/db_rec.c dynamic small static vx vxsmall -db/db_reclaim.c dynamic small static vx vxsmall -db/db_remove.c dynamic small static vx vxsmall -db/db_rename.c dynamic small static vx vxsmall -db/db_ret.c dynamic small static vx vxsmall -db/db_setid.c dynamic small static vx vxsmall -db/db_setlsn.c dynamic small static vx vxsmall -db/db_stati.c dynamic small static vx vxsmall -db/db_truncate.c dynamic small static vx vxsmall -db/db_upg.c dynamic small static vx vxsmall -db/db_upg_opd.c dynamic small static vx vxsmall -db/db_vrfy.c dynamic static vx -db/db_vrfy_stub.c small vxsmall -db/db_vrfyutil.c dynamic static vx +common/crypto_stub.c brew ce_small small s60 vxsmall +common/db_byteorder.c brew ce ce_small dynamic small static s60 vx vxsmall +common/db_err.c brew ce ce_small dynamic small static s60 vx vxsmall +common/db_getlong.c brew ce ce_small dynamic small static s60 vx vxsmall +common/db_idspace.c brew ce ce_small dynamic small static s60 vx vxsmall +common/db_log2.c brew ce ce_small dynamic small static s60 vx vxsmall +common/db_shash.c brew ce ce_small dynamic small static s60 vx vxsmall +common/mkpath.c brew ce ce_small dynamic small static s60 vx vxsmall +common/util_arg.c vx vxsmall +common/util_cache.c ce ce_small dynamic small static vx vxsmall +common/util_log.c ce ce_small dynamic small static vx vxsmall +common/util_sig.c dynamic small static vx vxsmall +crypto/aes_method.c ce dynamic static vx +crypto/crypto.c ce dynamic static vx +crypto/mersenne/mt19937db.c ce dynamic static vx +crypto/rijndael/rijndael-alg-fst.c ce dynamic static vx +crypto/rijndael/rijndael-api-fst.c ce dynamic static vx +cxx/cxx_db.cpp dynamic small static +cxx/cxx_dbc.cpp dynamic small static +cxx/cxx_dbt.cpp dynamic small static +cxx/cxx_env.cpp dynamic small static +cxx/cxx_except.cpp dynamic small static +cxx/cxx_lock.cpp dynamic small static +cxx/cxx_logc.cpp dynamic small static +cxx/cxx_mpool.cpp dynamic small static +cxx/cxx_multi.cpp dynamic small static +cxx/cxx_seq.cpp dynamic small static +cxx/cxx_txn.cpp dynamic small static +db/crdel_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +db/crdel_autop.c app=db_printlog +db/crdel_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_am.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_autop.c app=db_printlog +db/db_cam.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_cds.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_conv.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_dispatch.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_dup.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_iface.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_join.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_meta.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_method.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_open.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_overflow.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_ovfl_vrfy.c ce dynamic static vx +db/db_pr.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_reclaim.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_remove.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_rename.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_ret.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_setid.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_setlsn.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_stati.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_truncate.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_upg.c brew ce ce_small dynamic small static s60 vx vxsmall +db/db_upg_opd.c ce ce_small dynamic small static vx vxsmall +db/db_vrfy.c ce dynamic static vx +db/db_vrfy_stub.c brew ce_small small s60 vxsmall +db/db_vrfyutil.c ce dynamic static vx db185/db185.c -db_archive/db_archive.c app=db_archive -db_checkpoint/db_checkpoint.c app=db_checkpoint -db_deadlock/db_deadlock.c app=db_deadlock -db_dump/db_dump.c app=db_dump +db_archive/db_archive.c app=db_archive +db_checkpoint/db_checkpoint.c app=db_checkpoint +db_codegen/code_capi.c app=db_codegen +db_codegen/code_parse.c app=db_codegen +db_codegen/db_codegen.c app=db_codegen +db_deadlock/db_deadlock.c app=db_deadlock +db_dump/db_dump.c app=db_dump db_dump185/db_dump185.c -db_hotbackup/db_hotbackup.c app=db_hotbackup -db_load/db_load.c app=db_load -db_printlog/db_printlog.c app=db_printlog -db_recover/db_recover.c app=db_recover +db_hotbackup/db_hotbackup.c app=db_hotbackup +db_load/db_load.c app=db_load +db_printlog/db_printlog.c app=db_printlog +db_recover/db_recover.c app=db_recover db_server_clnt.c db_server_svc.c db_server_xdr.c -db_stat/db_stat.c app=db_stat -db_upgrade/db_upgrade.c app=db_upgrade -db_verify/db_verify.c app=db_verify -dbm/dbm.c dynamic static -dbreg/dbreg.c dynamic small static vx vxsmall -dbreg/dbreg_auto.c dynamic small static vx vxsmall -dbreg/dbreg_autop.c app=db_printlog -dbreg/dbreg_rec.c dynamic small static vx vxsmall -dbreg/dbreg_stat.c dynamic small static vx vxsmall -dbreg/dbreg_util.c dynamic small static vx vxsmall -env/db_salloc.c dynamic small static vx vxsmall -env/db_shash.c dynamic small static vx vxsmall -env/env_config.c dynamic small static vx vxsmall -env/env_failchk.c dynamic small static vx vxsmall -env/env_file.c dynamic small static vx vxsmall -env/env_method.c dynamic small static vx vxsmall -env/env_open.c dynamic small static vx vxsmall -env/env_recover.c dynamic small static vx vxsmall -env/env_region.c dynamic small static vx vxsmall -env/env_register.c dynamic small static vx vxsmall -env/env_stat.c dynamic small static vx vxsmall +db_stat/db_stat.c app=db_stat +db_upgrade/db_upgrade.c app=db_upgrade +db_verify/db_verify.c app=db_verify +dbm/dbm.c dynamic static +dbreg/dbreg.c brew ce ce_small dynamic small static s60 vx vxsmall +dbreg/dbreg_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +dbreg/dbreg_autop.c app=db_printlog +dbreg/dbreg_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +dbreg/dbreg_stat.c brew ce ce_small dynamic small static s60 vx vxsmall +dbreg/dbreg_util.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_alloc.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_config.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_failchk.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_file.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_globals.c ce ce_small dynamic small static s60 vx vxsmall +env/env_method.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_name.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_open.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_recover.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_region.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_register.c brew ce ce_small dynamic small static s60 vx vxsmall +env/env_stat.c brew ce ce_small dynamic small static s60 vx vxsmall examples_c/bench_001.c -examples_c/csv/DbRecord.c app=ex_csvload app=ex_csvquery -examples_c/csv/code.c app=ex_csvcode -examples_c/csv/csv_local.c app=ex_csvload app=ex_csvquery -examples_c/csv/db.c app=ex_csvload app=ex_csvquery -examples_c/csv/load.c app=ex_csvload -examples_c/csv/load_main.c app=ex_csvload -examples_c/csv/query.c app=ex_csvquery -examples_c/csv/query_main.c app=ex_csvquery -examples_c/csv/util.c app=ex_csvload app=ex_csvquery -examples_c/ex_access.c app=ex_access +examples_c/csv/DbRecord.c app=ex_csvload app=ex_csvquery +examples_c/csv/code.c app=ex_csvcode +examples_c/csv/csv_local.c app=ex_csvload app=ex_csvquery +examples_c/csv/db.c app=ex_csvload app=ex_csvquery +examples_c/csv/load.c app=ex_csvload +examples_c/csv/load_main.c app=ex_csvload +examples_c/csv/query.c app=ex_csvquery +examples_c/csv/query_main.c app=ex_csvquery +examples_c/csv/util.c app=ex_csvload app=ex_csvquery +examples_c/ex_access.c app=ex_access examples_c/ex_apprec/ex_apprec.c examples_c/ex_apprec/ex_apprec_auto.c examples_c/ex_apprec/ex_apprec_autop.c examples_c/ex_apprec/ex_apprec_rec.c -examples_c/ex_btrec.c app=ex_btrec +examples_c/ex_btrec.c app=ex_btrec examples_c/ex_dbclient.c -examples_c/ex_env.c app=ex_env -examples_c/ex_lock.c app=ex_lock -examples_c/ex_mpool.c app=ex_mpool -examples_c/ex_rep/base/rep_base.c app=ex_rep_base -examples_c/ex_rep/base/rep_msg.c app=ex_rep_base -examples_c/ex_rep/base/rep_net.c app=ex_rep_base -examples_c/ex_rep/common/rep_common.c app=ex_rep_base app=ex_rep_mgr -examples_c/ex_rep/mgr/rep_mgr.c app=ex_rep_mgr -examples_c/ex_sequence.c app=ex_sequence +examples_c/ex_env.c app=ex_env +examples_c/ex_lock.c app=ex_lock +examples_c/ex_mpool.c app=ex_mpool +examples_c/ex_rep/base/rep_base.c app=ex_rep_base +examples_c/ex_rep/base/rep_msg.c app=ex_rep_base +examples_c/ex_rep/base/rep_net.c app=ex_rep_base +examples_c/ex_rep/common/rep_common.c app=ex_rep_base app=ex_rep_mgr +examples_c/ex_rep/mgr/rep_mgr.c app=ex_rep_mgr +examples_c/ex_sequence.c app=ex_sequence examples_c/ex_thread.c -examples_c/ex_tpcb.c app=ex_tpcb -examples_c/getting_started/example_database_load.c app=example_database_load -examples_c/getting_started/example_database_read.c app=example_database_read -examples_c/getting_started/gettingstarted_common.c app=example_database_load app=example_database_read -examples_c/txn_guide/txn_guide.c app=ex_txnguide -examples_c/txn_guide/txn_guide_inmemory.c app=ex_txnguide_inmem -examples_cxx/AccessExample.cpp app=excxx_access -examples_cxx/BtRecExample.cpp app=excxx_btrec -examples_cxx/EnvExample.cpp app=excxx_env -examples_cxx/LockExample.cpp app=excxx_lock -examples_cxx/MpoolExample.cpp app=excxx_mpool -examples_cxx/SequenceExample.cpp app=excxx_sequence -examples_cxx/TpcbExample.cpp app=excxx_tpcb -examples_cxx/excxx_repquote/RepConfigInfo.cpp app=excxx_repquote -examples_cxx/excxx_repquote/RepQuoteExample.cpp app=excxx_repquote -examples_cxx/getting_started/MyDb.cpp app=excxx_example_database_load app=excxx_example_database_read +examples_c/ex_tpcb.c app=ex_tpcb +examples_c/getting_started/example_database_load.c app=example_database_load +examples_c/getting_started/example_database_read.c app=example_database_read +examples_c/getting_started/gettingstarted_common.c app=example_database_load app=example_database_read +examples_c/txn_guide/txn_guide.c app=ex_txnguide +examples_c/txn_guide/txn_guide_inmemory.c app=ex_txnguide_inmem +examples_cxx/AccessExample.cpp app=excxx_access +examples_cxx/BtRecExample.cpp app=excxx_btrec +examples_cxx/EnvExample.cpp app=excxx_env +examples_cxx/LockExample.cpp app=excxx_lock +examples_cxx/MpoolExample.cpp app=excxx_mpool +examples_cxx/SequenceExample.cpp app=excxx_sequence +examples_cxx/TpcbExample.cpp app=excxx_tpcb +examples_cxx/excxx_repquote/RepConfigInfo.cpp app=excxx_repquote +examples_cxx/excxx_repquote/RepQuoteExample.cpp app=excxx_repquote +examples_cxx/getting_started/MyDb.cpp app=excxx_example_database_load app=excxx_example_database_read examples_cxx/getting_started/excxx_example_database_load.cpp app=excxx_example_database_load examples_cxx/getting_started/excxx_example_database_read.cpp app=excxx_example_database_read -examples_cxx/txn_guide/TxnGuide.cpp app=excxx_txnguide -examples_cxx/txn_guide/TxnGuideInMemory.cpp app=excxx_txnguide_inmem -fileops/fileops_auto.c dynamic small static vx vxsmall -fileops/fileops_autop.c app=db_printlog -fileops/fop_basic.c dynamic small static vx vxsmall -fileops/fop_rec.c dynamic small static vx vxsmall -fileops/fop_util.c dynamic small static vx vxsmall +examples_cxx/txn_guide/TxnGuide.cpp app=excxx_txnguide +examples_cxx/txn_guide/TxnGuideInMemory.cpp app=excxx_txnguide_inmem +examples_cxx/wce_tpcb/TpcbExample.cpp app=wce_tpcb +examples_cxx/wce_tpcb/TpcbUI.cpp app=wce_tpcb +examples_cxx/wce_tpcb/wce_tpcb.rc app=wce_tpcb +fileops/fileops_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +fileops/fileops_autop.c app=db_printlog +fileops/fop_basic.c brew ce ce_small dynamic small static s60 vx vxsmall +fileops/fop_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +fileops/fop_util.c brew ce ce_small dynamic small static s60 vx vxsmall gen_db_server.c -hash/hash.c dynamic static vx -hash/hash_auto.c dynamic static vx -hash/hash_autop.c app=db_printlog -hash/hash_conv.c dynamic static vx -hash/hash_dup.c dynamic static vx -hash/hash_func.c dynamic small static vx vxsmall -hash/hash_meta.c dynamic static vx -hash/hash_method.c dynamic static vx -hash/hash_open.c dynamic static vx -hash/hash_page.c dynamic static vx -hash/hash_rec.c dynamic static vx -hash/hash_reclaim.c dynamic static vx -hash/hash_stat.c dynamic static vx -hash/hash_stub.c small vxsmall -hash/hash_upgrade.c dynamic static vx -hash/hash_verify.c dynamic static vx -hmac/hmac.c dynamic small static vx vxsmall -hmac/sha1.c dynamic small static vx vxsmall -hsearch/hsearch.c dynamic static vx -libdb_java/db_java_wrap.c java -lock/lock.c dynamic small static vx vxsmall -lock/lock_deadlock.c dynamic small static vx vxsmall -lock/lock_failchk.c dynamic small static vx vxsmall -lock/lock_id.c dynamic small static vx vxsmall -lock/lock_list.c dynamic small static vx vxsmall -lock/lock_method.c dynamic small static vx vxsmall -lock/lock_region.c dynamic small static vx vxsmall -lock/lock_stat.c dynamic small static vx vxsmall -lock/lock_timer.c dynamic small static vx vxsmall -lock/lock_util.c dynamic small static vx vxsmall -log/log.c dynamic small static vx vxsmall -log/log_archive.c dynamic small static vx vxsmall -log/log_compare.c dynamic small static vx vxsmall -log/log_debug.c dynamic small static vx vxsmall -log/log_get.c dynamic small static vx vxsmall -log/log_method.c dynamic small static vx vxsmall -log/log_put.c dynamic small static vx vxsmall -log/log_stat.c dynamic small static vx vxsmall -mp/mp_alloc.c dynamic small static vx vxsmall -mp/mp_bh.c dynamic small static vx vxsmall -mp/mp_fget.c dynamic small static vx vxsmall -mp/mp_fmethod.c dynamic small static vx vxsmall -mp/mp_fopen.c dynamic small static vx vxsmall -mp/mp_fput.c dynamic small static vx vxsmall -mp/mp_fset.c dynamic small static vx vxsmall -mp/mp_method.c dynamic small static vx vxsmall -mp/mp_mvcc.c dynamic small static vx vxsmall -mp/mp_region.c dynamic small static vx vxsmall -mp/mp_register.c dynamic small static vx vxsmall -mp/mp_stat.c dynamic small static vx vxsmall -mp/mp_sync.c dynamic small static vx vxsmall -mp/mp_trickle.c dynamic small static vx vxsmall -mutex/mut_alloc.c dynamic small static vx vxsmall -mutex/mut_failchk.c dynamic small static vx vxsmall +hash/hash.c ce dynamic static vx +hash/hash_auto.c ce dynamic static vx +hash/hash_autop.c app=db_printlog +hash/hash_conv.c ce dynamic static vx +hash/hash_dup.c ce dynamic static vx +hash/hash_func.c brew ce ce_small dynamic small static s60 vx vxsmall +hash/hash_meta.c ce dynamic static vx +hash/hash_method.c ce dynamic static vx +hash/hash_open.c ce dynamic static vx +hash/hash_page.c ce dynamic static vx +hash/hash_rec.c ce dynamic static vx +hash/hash_reclaim.c ce dynamic static vx +hash/hash_stat.c ce dynamic static vx +hash/hash_stub.c brew ce_small small s60 vxsmall +hash/hash_upgrade.c ce dynamic static vx +hash/hash_verify.c ce dynamic static vx +hmac/hmac.c brew ce ce_small dynamic small static s60 vx vxsmall +hmac/sha1.c brew ce ce_small dynamic small static s60 vx vxsmall +hsearch/hsearch.c ce dynamic static vx +libdb_java/db_java_wrap.c java +lock/lock.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_deadlock.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_failchk.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_id.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_list.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_method.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_region.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_stat.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_stub.c brew +lock/lock_timer.c ce ce_small dynamic small static s60 vx vxsmall +lock/lock_util.c ce ce_small dynamic small static s60 vx vxsmall +log/log.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_archive.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_compare.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_debug.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_get.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_method.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_put.c brew ce ce_small dynamic small static s60 vx vxsmall +log/log_stat.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_alloc.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_bh.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_fget.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_fmethod.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_fopen.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_fput.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_fset.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_method.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_mvcc.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_region.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_register.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_resize.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_stat.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_sync.c brew ce ce_small dynamic small static s60 vx vxsmall +mp/mp_trickle.c brew ce ce_small dynamic small static s60 vx vxsmall +mutex/mut_alloc.c ce ce_small dynamic small static s60 vx vxsmall +mutex/mut_failchk.c ce ce_small dynamic small static s60 vx vxsmall mutex/mut_fcntl.c -mutex/mut_method.c dynamic small static vx vxsmall -mutex/mut_pthread.c -mutex/mut_region.c dynamic small static vx vxsmall -mutex/mut_stat.c dynamic small static vx vxsmall -mutex/mut_tas.c vx vxsmall -mutex/mut_win32.c dynamic small static -mutex/tm.c app=tm -os/os_abs.c -os/os_alloc.c dynamic small static vx vxsmall -os/os_clock.c vx vxsmall +mutex/mut_method.c ce ce_small dynamic small static s60 vx vxsmall +mutex/mut_pthread.c s60 +mutex/mut_region.c ce ce_small dynamic small static s60 vx vxsmall +mutex/mut_stat.c ce ce_small dynamic small static s60 vx vxsmall +mutex/mut_stub.c brew +mutex/mut_tas.c vx vxsmall +mutex/mut_win32.c ce ce_small dynamic small static +mutex/test_mutex.c app=test_mutex +os/os_abort.c ce ce_small dynamic small static s60 vx vxsmall tcl +os/os_abs.c s60 +os/os_alloc.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_clock.c brew s60 vx vxsmall os/os_config.c -os/os_dir.c vx vxsmall -os/os_errno.c vx vxsmall -os/os_fid.c vx vxsmall -os/os_flock.c vx vxsmall -os/os_fsync.c vx vxsmall -os/os_fzero.c dynamic small static vx vxsmall -os/os_getenv.c vx vxsmall -os/os_handle.c vx vxsmall -os/os_map.c -os/os_method.c vx vxsmall -os/os_mkdir.c dynamic small static vx vxsmall -os/os_oflags.c dynamic small static vx vxsmall -os/os_open.c vx vxsmall -os/os_pid.c dynamic small static vx vxsmall -os/os_region.c dynamic small static vx vxsmall -os/os_rename.c vx vxsmall -os/os_root.c dynamic small static vx vxsmall -os/os_rpath.c dynamic small static -os/os_rw.c vx vxsmall -os/os_seek.c vx vxsmall -os/os_sleep.c vx vxsmall -os/os_spin.c vx vxsmall -os/os_stat.c vx vxsmall -os/os_tmpdir.c dynamic small static vx vxsmall -os/os_truncate.c vx vxsmall -os/os_uid.c dynamic small static vx vxsmall -os/os_unlink.c vx vxsmall -os/os_yield.c vx vxsmall -os_brew/abort.c -os_brew/ctime.c -os_brew/fclose.c -os_brew/fgetc.c -os_brew/fgets.c -os_brew/fopen.c -os_brew/fwrite.c -os_brew/getcwd.c -os_brew/localtime.c -os_brew/os_abs.c -os_brew/os_config.c -os_brew/os_dir.c -os_brew/os_errno.c -os_brew/os_handle.c -os_brew/os_mkdir.c -os_brew/os_oflags.c -os_brew/os_open.c -os_brew/os_pid.c -os_brew/os_rename.c -os_brew/os_rw.c -os_brew/os_seek.c -os_brew/os_sleep.c -os_brew/os_stat.c -os_brew/os_truncate.c -os_brew/os_unlink.c -os_brew/time.c -os_vxworks/os_vx_abs.c vx vxsmall -os_vxworks/os_vx_config.c vx vxsmall -os_vxworks/os_vx_map.c vx vxsmall -os_vxworks/os_vx_rpath.c vx vxsmall -os_windows/os_abs.c dynamic small static -os_windows/os_clock.c dynamic small static -os_windows/os_config.c dynamic small static -os_windows/os_dir.c dynamic small static -os_windows/os_errno.c dynamic small static -os_windows/os_fid.c dynamic small static -os_windows/os_flock.c dynamic small static -os_windows/os_fsync.c dynamic small static -os_windows/os_getenv.c dynamic small static -os_windows/os_handle.c dynamic small static -os_windows/os_map.c dynamic small static -os_windows/os_open.c dynamic small static -os_windows/os_rename.c dynamic small static -os_windows/os_rw.c dynamic small static -os_windows/os_seek.c dynamic small static -os_windows/os_sleep.c dynamic small static -os_windows/os_spin.c dynamic small static -os_windows/os_stat.c dynamic small static -os_windows/os_truncate.c dynamic small static -os_windows/os_unlink.c dynamic small static -os_windows/os_yield.c dynamic small static -qam/qam.c dynamic static vx -qam/qam_auto.c dynamic static vx -qam/qam_autop.c app=db_printlog -qam/qam_conv.c dynamic static vx -qam/qam_files.c dynamic static vx -qam/qam_method.c dynamic static vx -qam/qam_open.c dynamic static vx -qam/qam_rec.c dynamic static vx -qam/qam_stat.c dynamic static vx -qam/qam_stub.c small vxsmall -qam/qam_upgrade.c dynamic static vx -qam/qam_verify.c dynamic static vx -rep/rep_auto.c dynamic static vx -rep/rep_autop.c app=db_printlog -rep/rep_backup.c dynamic static vx -rep/rep_elect.c dynamic static vx -rep/rep_log.c dynamic static vx -rep/rep_method.c dynamic static vx -rep/rep_record.c dynamic static vx -rep/rep_region.c dynamic static vx -rep/rep_stat.c dynamic static vx -rep/rep_stub.c small vxsmall -rep/rep_util.c dynamic static vx -rep/rep_verify.c dynamic static vx -repmgr/repmgr_elect.c dynamic static -repmgr/repmgr_method.c dynamic static -repmgr/repmgr_msg.c dynamic static -repmgr/repmgr_net.c dynamic static +os/os_dir.c s60 vx vxsmall +os/os_errno.c s60 vx vxsmall +os/os_fid.c brew s60 vx vxsmall +os/os_flock.c brew s60 vx vxsmall +os/os_fsync.c s60 vx vxsmall +os/os_fzero.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_getenv.c brew s60 vx vxsmall +os/os_handle.c s60 vx vxsmall +os/os_map.c brew s60 +os/os_method.c vx vxsmall +os/os_mkdir.c s60 vx vxsmall +os/os_oflags.c ce ce_small dynamic small static s60 vx vxsmall +os/os_open.c s60 vx vxsmall +os/os_pid.c ce ce_small dynamic small static s60 vx vxsmall +os/os_region.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_rename.c s60 vx vxsmall +os/os_root.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_rpath.c brew ce ce_small dynamic small static s60 +os/os_rw.c s60 vx vxsmall +os/os_seek.c s60 vx vxsmall +os/os_sleep.c s60 vx vxsmall +os/os_spin.c s60 vx vxsmall +os/os_stat.c s60 vx vxsmall +os/os_tmpdir.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_truncate.c s60 vx vxsmall +os/os_uid.c brew ce ce_small dynamic small static s60 vx vxsmall +os/os_unlink.c s60 vx vxsmall +os/os_yield.c brew s60 vx vxsmall +os_brew/ctime.c brew +os_brew/fclose.c brew +os_brew/fgetc.c brew +os_brew/fgets.c brew +os_brew/fopen.c brew +os_brew/fwrite.c brew +os_brew/getcwd.c brew +os_brew/globals.c brew +os_brew/localtime.c brew +os_brew/os_abort.c brew +os_brew/os_abs.c brew +os_brew/os_config.c brew +os_brew/os_dir.c brew +os_brew/os_errno.c brew +os_brew/os_handle.c brew +os_brew/os_mkdir.c brew +os_brew/os_oflags.c brew +os_brew/os_open.c brew +os_brew/os_pid.c brew +os_brew/os_rename.c brew +os_brew/os_rw.c brew +os_brew/os_seek.c brew +os_brew/os_sleep.c brew +os_brew/os_stat.c brew +os_brew/os_truncate.c brew +os_brew/os_unlink.c brew +os_brew/time.c brew +os_qnx/os_qnx_open.c +os_s60/os_config.c s60 +os_vxworks/os_vx_abs.c vx vxsmall +os_vxworks/os_vx_config.c vx vxsmall +os_vxworks/os_vx_map.c vx vxsmall +os_vxworks/os_vx_rpath.c vx vxsmall +os_windows/ce_ctime.c ce ce_small +os_windows/ce_time.c ce ce_small +os_windows/os_abs.c ce ce_small dynamic small static +os_windows/os_clock.c ce ce_small dynamic small static +os_windows/os_config.c ce ce_small dynamic small static +os_windows/os_dir.c ce ce_small dynamic small static +os_windows/os_errno.c ce ce_small dynamic small static +os_windows/os_fid.c ce ce_small dynamic small static +os_windows/os_flock.c ce ce_small dynamic small static +os_windows/os_fsync.c ce ce_small dynamic small static +os_windows/os_getenv.c ce ce_small dynamic small static +os_windows/os_handle.c ce ce_small dynamic small static +os_windows/os_map.c ce ce_small dynamic small static +os_windows/os_mkdir.c ce ce_small dynamic small static +os_windows/os_open.c ce ce_small dynamic small static +os_windows/os_rename.c ce ce_small dynamic small static +os_windows/os_rw.c ce ce_small dynamic small static +os_windows/os_seek.c ce ce_small dynamic small static +os_windows/os_sleep.c ce ce_small dynamic small static +os_windows/os_spin.c ce ce_small dynamic small static +os_windows/os_stat.c ce ce_small dynamic small static +os_windows/os_truncate.c ce ce_small dynamic small static +os_windows/os_unlink.c ce ce_small dynamic small static +os_windows/os_yield.c ce ce_small dynamic small static +qam/qam.c ce dynamic static vx +qam/qam_auto.c ce dynamic static vx +qam/qam_autop.c app=db_printlog +qam/qam_conv.c ce dynamic static vx +qam/qam_files.c ce dynamic static vx +qam/qam_method.c ce dynamic static vx +qam/qam_open.c ce dynamic static vx +qam/qam_rec.c ce dynamic static vx +qam/qam_stat.c ce dynamic static vx +qam/qam_stub.c brew ce_small small s60 vxsmall +qam/qam_upgrade.c ce dynamic static vx +qam/qam_verify.c ce dynamic static vx +rep/rep_auto.c dynamic static vx +rep/rep_autop.c app=db_printlog +rep/rep_backup.c dynamic static vx +rep/rep_elect.c dynamic static vx +rep/rep_lease.c dynamic static vx +rep/rep_log.c dynamic static vx +rep/rep_method.c dynamic static vx +rep/rep_record.c dynamic static vx +rep/rep_region.c dynamic static vx +rep/rep_stat.c dynamic static vx +rep/rep_stub.c brew ce ce_small small s60 vxsmall +rep/rep_util.c dynamic static vx +rep/rep_verify.c dynamic static vx +repmgr/repmgr_elect.c dynamic static +repmgr/repmgr_method.c dynamic static +repmgr/repmgr_msg.c dynamic static +repmgr/repmgr_net.c dynamic static repmgr/repmgr_posix.c -repmgr/repmgr_queue.c dynamic static -repmgr/repmgr_sel.c dynamic static -repmgr/repmgr_stat.c dynamic static -repmgr/repmgr_util.c dynamic static -repmgr/repmgr_windows.c dynamic static +repmgr/repmgr_queue.c dynamic static +repmgr/repmgr_sel.c dynamic static +repmgr/repmgr_stat.c dynamic static +repmgr/repmgr_stub.c brew ce ce_small small s60 vx vxsmall +repmgr/repmgr_util.c dynamic static +repmgr/repmgr_windows.c dynamic static rpc_client/client.c rpc_client/gen_client.c rpc_client/gen_client_ret.c @@ -420,76 +439,90 @@ rpc_server/c/db_server_proc.c rpc_server/c/db_server_util.c rpc_server/cxx/db_server_cxxproc.cpp rpc_server/cxx/db_server_cxxutil.cpp -sequence/seq_stat.c dynamic small static -sequence/sequence.c dynamic small static -tcl/tcl_compat.c tcl -tcl/tcl_db.c tcl -tcl/tcl_db_pkg.c tcl -tcl/tcl_dbcursor.c tcl -tcl/tcl_env.c tcl -tcl/tcl_internal.c tcl -tcl/tcl_lock.c tcl -tcl/tcl_log.c tcl -tcl/tcl_mp.c tcl -tcl/tcl_rep.c tcl -tcl/tcl_seq.c tcl -tcl/tcl_txn.c tcl -tcl/tcl_util.c tcl -test_perf/db_perf.c app=db_perf -test_perf/perf_checkpoint.c app=db_perf -test_perf/perf_config.c app=db_perf -test_perf/perf_dbs.c app=db_perf -test_perf/perf_dead.c app=db_perf -test_perf/perf_debug.c app=db_perf -test_perf/perf_file.c app=db_perf -test_perf/perf_key.c app=db_perf -test_perf/perf_log.c app=db_perf -test_perf/perf_misc.c app=db_perf -test_perf/perf_op.c app=db_perf -test_perf/perf_parse.c app=db_perf -test_perf/perf_rand.c app=db_perf app=db_reptest -test_perf/perf_spawn.c app=db_perf -test_perf/perf_stat.c app=db_perf -test_perf/perf_sync.c app=db_perf -test_perf/perf_thread.c app=db_perf -test_perf/perf_trickle.c app=db_perf -test_perf/perf_txn.c app=db_perf -test_perf/perf_util.c app=db_perf +sequence/seq_stat.c ce ce_small dynamic small static +sequence/sequence.c ce ce_small dynamic small static +tcl/tcl_compat.c tcl +tcl/tcl_db.c tcl +tcl/tcl_db_pkg.c tcl +tcl/tcl_dbcursor.c tcl +tcl/tcl_env.c tcl +tcl/tcl_internal.c tcl +tcl/tcl_lock.c tcl +tcl/tcl_log.c tcl +tcl/tcl_mp.c tcl +tcl/tcl_rep.c tcl +tcl/tcl_seq.c tcl +tcl/tcl_txn.c tcl +tcl/tcl_util.c tcl +test_micro/SOURCE/b_curalloc.c +test_micro/SOURCE/b_curwalk.c +test_micro/SOURCE/b_del.c +test_micro/SOURCE/b_get.c +test_micro/SOURCE/b_load.c +test_micro/SOURCE/b_open.c +test_micro/SOURCE/b_put.c +test_micro/SOURCE/b_recover.c +test_micro/SOURCE/b_txn.c +test_micro/SOURCE/b_txn_write.c +test_micro/SOURCE/b_workload.c +test_micro/SOURCE/inmem.c +test_micro/SOURCE/uname.c +test_perf/db_perf.c app=db_perf +test_perf/perf_checkpoint.c app=db_perf +test_perf/perf_config.c app=db_perf +test_perf/perf_dbs.c app=db_perf +test_perf/perf_dead.c app=db_perf +test_perf/perf_debug.c app=db_perf +test_perf/perf_file.c app=db_perf +test_perf/perf_key.c app=db_perf +test_perf/perf_log.c app=db_perf +test_perf/perf_misc.c app=db_perf +test_perf/perf_op.c app=db_perf +test_perf/perf_parse.c app=db_perf +test_perf/perf_rand.c app=db_perf app=db_reptest +test_perf/perf_spawn.c app=db_perf +test_perf/perf_stat.c app=db_perf +test_perf/perf_sync.c app=db_perf +test_perf/perf_thread.c app=db_perf +test_perf/perf_trickle.c app=db_perf +test_perf/perf_txn.c app=db_perf +test_perf/perf_util.c app=db_perf test_perf/perf_vx.c -test_rep/db_reptest.c app=db_reptest -test_rep/reptest_accept.c app=db_reptest -test_rep/reptest_client.c app=db_reptest -test_rep/reptest_config.c app=db_reptest -test_rep/reptest_dbs.c app=db_reptest -test_rep/reptest_debug.c app=db_reptest -test_rep/reptest_elect.c app=db_reptest -test_rep/reptest_env.c app=db_reptest -test_rep/reptest_exec.c app=db_reptest -test_rep/reptest_file.c app=db_reptest -test_rep/reptest_key.c app=db_reptest -test_rep/reptest_master.c app=db_reptest -test_rep/reptest_misc.c app=db_reptest -test_rep/reptest_msg_thread.c app=db_reptest -test_rep/reptest_op.c app=db_reptest -test_rep/reptest_parse.c app=db_reptest -test_rep/reptest_send.c app=db_reptest -test_rep/reptest_site.c app=db_reptest -test_rep/reptest_socket.c app=db_reptest -test_rep/reptest_spawn.c app=db_reptest -test_rep/reptest_thread.c app=db_reptest -test_rep/reptest_txn.c app=db_reptest -test_rep/reptest_util.c app=db_reptest -txn/txn.c dynamic small static vx vxsmall -txn/txn_auto.c dynamic small static vx vxsmall -txn/txn_autop.c app=db_printlog -txn/txn_chkpt.c dynamic small static vx vxsmall -txn/txn_failchk.c dynamic small static vx vxsmall -txn/txn_method.c dynamic small static vx vxsmall -txn/txn_rec.c dynamic small static vx vxsmall -txn/txn_recover.c dynamic small static vx vxsmall -txn/txn_region.c dynamic small static vx vxsmall -txn/txn_stat.c dynamic small static vx vxsmall -txn/txn_util.c dynamic small static vx vxsmall -xa/xa.c dynamic small static vx vxsmall -xa/xa_db.c dynamic small static vx vxsmall -xa/xa_map.c dynamic small static vx vxsmall +test_rep/db_reptest.c app=db_reptest +test_rep/reptest_accept.c app=db_reptest +test_rep/reptest_client.c app=db_reptest +test_rep/reptest_config.c app=db_reptest +test_rep/reptest_dbs.c app=db_reptest +test_rep/reptest_debug.c app=db_reptest +test_rep/reptest_elect.c app=db_reptest +test_rep/reptest_env.c app=db_reptest +test_rep/reptest_exec.c app=db_reptest +test_rep/reptest_file.c app=db_reptest +test_rep/reptest_key.c app=db_reptest +test_rep/reptest_master.c app=db_reptest +test_rep/reptest_misc.c app=db_reptest +test_rep/reptest_msg_thread.c app=db_reptest +test_rep/reptest_op.c app=db_reptest +test_rep/reptest_parse.c app=db_reptest +test_rep/reptest_send.c app=db_reptest +test_rep/reptest_site.c app=db_reptest +test_rep/reptest_socket.c app=db_reptest +test_rep/reptest_spawn.c app=db_reptest +test_rep/reptest_thread.c app=db_reptest +test_rep/reptest_txn.c app=db_reptest +test_rep/reptest_util.c app=db_reptest +txn/txn.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_auto.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_autop.c app=db_printlog +txn/txn_chkpt.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_failchk.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_method.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_rec.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_recover.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_region.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_stat.c brew ce ce_small dynamic small static s60 vx vxsmall +txn/txn_util.c brew ce ce_small dynamic small static s60 vx vxsmall +xa/xa.c ce ce_small dynamic small static vx vxsmall +xa/xa_db.c ce ce_small dynamic small static vx vxsmall +xa/xa_map.c ce ce_small dynamic small static vx vxsmall +xa/xa_stub.c brew s60 diff --git a/db/dist/tags b/db/dist/tags index 46ff0c65d..2b272c77b 100644 --- a/db/dist/tags +++ b/db/dist/tags @@ -1,115 +1,102 @@ -ACK_WAITER ../repmgr/repmgr_windows.c /^} ACK_WAITER;$/ -ACK_WAITERS_TABLE ../dbinc/repmgr.h /^struct __ack_waiters_table;$/ +ACK_WAITERS_TABLE ../dbinc/repmgr.h 58 ACQUIRE ../btree/bt_cursor.c /^#define ACQUIRE(dbc, mode, lpgno, lock, fpgno, pag/ ACQUIRE_CUR ../btree/bt_cursor.c /^#define ACQUIRE_CUR(dbc, mode, p, flags, ret) do {/ ACQUIRE_WRITE_LOCK ../btree/bt_cursor.c /^#define ACQUIRE_WRITE_LOCK(dbc, ret) do { \\$/ -ACTION ../dbinc/db.in /^} ACTION;$/ +ACTION ../dbinc/db.in 2582 ACTIVATE_CTP ../dbinc/db_server_int.h /^#define ACTIVATE_CTP(ctp, id, type) { \\$/ -ADDRINFO ../dbinc/repmgr.h /^typedef struct addrinfo ADDRINFO;$/ +ADDRINFO ../dbinc/repmgr.h 214 ADDR_LIST_CURRENT ../dbinc/repmgr.h /^#define ADDR_LIST_CURRENT(na) ((na)->current)$/ ADDR_LIST_FIRST ../dbinc/repmgr.h /^#define ADDR_LIST_FIRST(na) ((na)->current = (na)-/ ADDR_LIST_NEXT ../dbinc/repmgr.h /^#define ADDR_LIST_NEXT(na) ((na)->current = (na)->/ ADD_CONFIG_NAME ../tcl/tcl_db_pkg.c /^#define ADD_CONFIG_NAME(name) \\$/ -AES_CIPHER ../dbinc/crypto.h /^} AES_CIPHER;$/ -AI_CANONNAME ../dbinc/repmgr.h /^#define AI_CANONNAME 0x02$/ -AI_NUMERICHOST ../dbinc/repmgr.h /^#define AI_NUMERICHOST 0x04$/ -AI_PASSIVE ../dbinc/repmgr.h /^#define AI_PASSIVE 0x01$/ -ALIGNP_DEC ../dbinc/db_int.in /^#define ALIGNP_DEC(p, bound) \\$/ +AI_CANONNAME ../dbinc/repmgr.h 225 +AI_NUMERICHOST ../dbinc/repmgr.h 227 +AI_PASSIVE ../dbinc/repmgr.h 223 ALIGNP_INC ../dbinc/db_int.in /^#define ALIGNP_INC(p, bound) \\$/ ALIVE_ON ../dbinc/db_int.in /^#define ALIVE_ON(dbenv) ((dbenv)->is_alive != NUL/ ALREADY_FLUSHED ../log/log_put.c /^#define ALREADY_FLUSHED(lp, lsnp) \\$/ ANYSITE ../rep/rep_record.c /^#define ANYSITE(rep)$/ -APPNAME ../dbinc/db_int.in /^} APPNAME;$/ -BACKUP_PREFIX ../db/db.c /^#define BACKUP_PREFIX "__db"$/ -BADARG ../clib/getopt.c /^#define BADARG (int)':'$/ -BADCH ../clib/getopt.c /^#define BADCH (int)'?'$/ -BAD_BLOCK_LENGTH ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_BLOCK_LENGTH -6$/ -BAD_CIPHER_INSTANCE ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_CIPHER_INSTANCE -7$/ -BAD_CIPHER_MODE ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_CIPHER_MODE -4 \/* Params st/ -BAD_CIPHER_STATE ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_CIPHER_STATE -5 \/* Cipher in/ -BAD_DATA ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_DATA -8 \/* Data cont/ -BAD_KEY_DIR ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_KEY_DIR -1 \/* Key direc/ -BAD_KEY_INSTANCE ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_KEY_INSTANCE -3 \/* Key passe/ -BAD_KEY_MAT ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_KEY_MAT -2 \/* Key mater/ -BAD_KILLID ../lock/lock_deadlock.c /^#define BAD_KILLID 0xffffffff$/ -BAD_OTHER ../crypto/rijndael/rijndael-api-fst.h /^#define BAD_OTHER -9 \/* Unknown e/ -BFMSG ../db185/db185.c /^#define BFMSG \\$/ -BH ../dbinc/mp.h /^struct __bh; typedef struct __bh BH;$/ -BH_CALLPGIN ../dbinc/mp.h /^#define BH_CALLPGIN 0x001 \/* Convert the page be/ -BH_DIRTY ../dbinc/mp.h /^#define BH_DIRTY 0x002 \/* Page is modified. *\/$/ -BH_DIRTY_CREATE ../dbinc/mp.h /^#define BH_DIRTY_CREATE 0x004 \/* Page is modifie/ -BH_DISCARD ../dbinc/mp.h /^#define BH_DISCARD 0x008 \/* Page is useless. *\// -BH_FREED ../dbinc/mp.h /^#define BH_FREED 0x010 \/* Page was freed. *\/$/ -BH_FREE_FREEMEM ../dbinc/mp.h /^#define BH_FREE_FREEMEM 0x01$/ -BH_FREE_REUSE ../dbinc/mp.h /^#define BH_FREE_REUSE 0x02$/ -BH_FREE_UNLOCKED ../dbinc/mp.h /^#define BH_FREE_UNLOCKED 0x04$/ -BH_FROZEN ../dbinc/mp.h /^#define BH_FROZEN 0x020 \/* Frozen buffer: alloca/ -BH_FROZEN_ALLOC ../dbinc/mp.h /^struct __bh_frozen_a; typedef struct __bh_frozen_a/ -BH_FROZEN_PAGE ../dbinc/mp.h /^struct __bh_frozen; typedef struct __bh_frozen_p B/ -BH_LOCKED ../dbinc/mp.h /^#define BH_LOCKED 0x040 \/* Page is locked (I\/O / +APPNAME ../dbinc/db_int.in 361 +BACKUP_PREFIX ../db/db.c 1193 +BADARG ../clib/getopt.c 52 +BADCH ../clib/getopt.c 50 +BAD_BLOCK_LENGTH ../crypto/rijndael/rijndael-api-fst.h 64 +BAD_CIPHER_INSTANCE ../crypto/rijndael/rijndael-api-fst.h 65 +BAD_CIPHER_MODE ../crypto/rijndael/rijndael-api-fst.h 62 +BAD_CIPHER_STATE ../crypto/rijndael/rijndael-api-fst.h 63 +BAD_DATA ../crypto/rijndael/rijndael-api-fst.h 66 +BAD_KEY_DIR ../crypto/rijndael/rijndael-api-fst.h 59 +BAD_KEY_INSTANCE ../crypto/rijndael/rijndael-api-fst.h 61 +BAD_KEY_MAT ../crypto/rijndael/rijndael-api-fst.h 60 +BAD_KILLID ../lock/lock_deadlock.c 32 +BAD_OTHER ../crypto/rijndael/rijndael-api-fst.h 67 +BFMSG ../db185/db185.c 173 +BH ../dbinc/mp.h 16 +BH_CALLPGIN ../dbinc/mp.h 487 +BH_DIRTY ../dbinc/mp.h 488 +BH_DIRTY_CREATE ../dbinc/mp.h 489 +BH_DISCARD ../dbinc/mp.h 490 +BH_FREED ../dbinc/mp.h 491 +BH_FREE_FREEMEM ../dbinc/mp.h 475 +BH_FREE_REUSE ../dbinc/mp.h 476 +BH_FREE_UNLOCKED ../dbinc/mp.h 477 +BH_FROZEN ../dbinc/mp.h 492 +BH_FROZEN_ALLOC ../dbinc/mp.h 18 +BH_FROZEN_PAGE ../dbinc/mp.h 17 +BH_LOCKED ../dbinc/mp.h 493 BH_OBSOLETE ../dbinc/mp.h /^#define BH_OBSOLETE(bhp, old_lsn) ((SH_CHAIN_HASNE/ BH_OWNED_BY ../dbinc/mp.h /^#define BH_OWNED_BY(dbenv, bhp, txn) ((txn) != NUL/ BH_OWNER ../dbinc/mp.h /^#define BH_OWNER(dbenv, bhp) \\$/ BH_PRIORITY ../dbinc/mp.h /^#define BH_PRIORITY(bhp) \\$/ -BH_TRACK ../mp/mp_sync.c /^} BH_TRACK;$/ -BH_TRASH ../dbinc/mp.h /^#define BH_TRASH 0x080 \/* Page is garbage. *\/$/ -BINTERNAL ../dbinc/db_page.h /^} BINTERNAL;$/ +BH_TRASH ../dbinc/mp.h 494 BINTERNAL_PSIZE ../dbinc/db_page.h /^#define BINTERNAL_PSIZE(len) \\$/ BINTERNAL_SIZE ../dbinc/db_page.h /^#define BINTERNAL_SIZE(len) \\$/ BITEM_PSIZE ../dbinc/db_page.h /^#define BITEM_PSIZE(bk) \\$/ BITEM_SIZE ../dbinc/db_page.h /^#define BITEM_SIZE(bk) \\$/ -BITSPERBLOCK ../crypto/rijndael/rijndael-api-fst.h /^#define BITSPERBLOCK 128 \/* Default nu/ -BI_DELETED ../dbinc/btree.h /^#define BI_DELETED 0x01 \/* Key\/data pair only p/ -BKEYDATA ../dbinc/db_page.h /^} BKEYDATA;$/ +BITSPERBLOCK ../crypto/rijndael/rijndael-api-fst.h 56 +BI_DELETED ../dbinc/btree.h 75 BKEYDATA_PSIZE ../dbinc/db_page.h /^#define BKEYDATA_PSIZE(len) \\$/ BKEYDATA_SIZE ../dbinc/db_page.h /^#define BKEYDATA_SIZE(len) \\$/ -BOVERFLOW ../dbinc/db_page.h /^} BOVERFLOW;$/ -BOVERFLOW_PSIZE ../dbinc/db_page.h /^#define BOVERFLOW_PSIZE \\$/ -BOVERFLOW_SIZE ../dbinc/db_page.h /^#define BOVERFLOW_SIZE \\$/ -BPI_NORECNUM ../dbinc/btree.h /^#define BPI_NORECNUM 0x02 \/* Not update the recn/ -BPI_SPACEONLY ../dbinc/btree.h /^#define BPI_SPACEONLY 0x01 \/* Only check for spa/ +BOVERFLOW_PSIZE ../dbinc/db_page.h 587 +BOVERFLOW_SIZE ../dbinc/db_page.h 585 +BPI_NORECNUM ../dbinc/btree.h 332 +BPI_SPACEONLY ../dbinc/btree.h 331 BS_TO_PAGE ../dbinc/hash.h /^#define BS_TO_PAGE(bucket, spares) \\$/ -BTMETA ../dbinc/db_page.h /^} BTMETA33, BTMETA;$/ -BTMETA2X ../dbinc/db_upgrade.h /^} BTMETA2X;$/ -BTMETA30 ../dbinc/db_upgrade.h /^} BTMETA30;$/ -BTMETA31 ../dbinc/db_upgrade.h /^} BTMETA31;$/ -BTM_DUP ../dbinc/db_page.h /^#define BTM_DUP 0x001 \/* Duplicates. *\/$/ -BTM_DUPSORT ../dbinc/db_page.h /^#define BTM_DUPSORT 0x040 \/* Duplicates are sor/ -BTM_FIXEDLEN ../dbinc/db_page.h /^#define BTM_FIXEDLEN 0x008 \/* Recno: fixed leng/ -BTM_MASK ../dbinc/db_page.h /^#define BTM_MASK 0x07f$/ -BTM_RECNO ../dbinc/db_page.h /^#define BTM_RECNO 0x002 \/* Recno tree. *\/$/ -BTM_RECNUM ../dbinc/db_page.h /^#define BTM_RECNUM 0x004 \/* Btree: maintain rec/ -BTM_RENUMBER ../dbinc/db_page.h /^#define BTM_RENUMBER 0x010 \/* Recno: renumber o/ -BTM_SUBDB ../dbinc/db_page.h /^#define BTM_SUBDB 0x020 \/* Subdatabases. *\/$/ -BTREE ../dbinc/btree.h /^struct __btree; typedef struct __btree BTREE;$/ -BTREEINFO ../dbinc/db_185.in /^} BTREEINFO;$/ -BTREEMAGIC ../dbinc/db_185.in /^#define BTREEMAGIC 0x053162$/ -BTREEVERSION ../dbinc/db_185.in /^#define BTREEVERSION 3$/ -BTREE_CURSOR ../dbinc/btree.h /^struct __cursor; typedef struct __cursor BTREE_CUR/ +BTM_DUP ../dbinc/db_page.h 95 +BTM_DUPSORT ../dbinc/db_page.h 101 +BTM_FIXEDLEN ../dbinc/db_page.h 98 +BTM_MASK ../dbinc/db_page.h 102 +BTM_RECNO ../dbinc/db_page.h 96 +BTM_RECNUM ../dbinc/db_page.h 97 +BTM_RENUMBER ../dbinc/db_page.h 99 +BTM_SUBDB ../dbinc/db_page.h 100 +BTREE ../dbinc/btree.h 51 +BTREEMAGIC ../dbinc/db_185.in 123 +BTREEVERSION ../dbinc/db_185.in 124 +BTREE_CURSOR ../dbinc/btree.h 52 BT_STK_CLR ../dbinc/btree.h /^#define BT_STK_CLR(c) do { \\$/ BT_STK_ENTER ../dbinc/btree.h /^#define BT_STK_ENTER(dbenv, c, pagep, page_indx, l/ BT_STK_NUM ../dbinc/btree.h /^#define BT_STK_NUM(dbenv, c, pagep, page_indx, ret/ BT_STK_NUMPUSH ../dbinc/btree.h /^#define BT_STK_NUMPUSH(dbenv, c, pagep, page_indx,/ BT_STK_POP ../dbinc/btree.h /^#define BT_STK_POP(c) \\$/ BT_STK_PUSH ../dbinc/btree.h /^#define BT_STK_PUSH(dbenv, c, pagep, page_indx, lo/ -BUCKET_INVALID ../dbinc/hash.h /^#define BUCKET_INVALID 0xFFFFFFFF$/ +BUCKET_INVALID ../dbinc/hash.h 115 BUCKET_TO_PAGE ../dbinc/hash.h /^#define BUCKET_TO_PAGE(I, B) (BS_TO_PAGE((B), (I)-/ -BULK_FORCE ../dbinc/rep.h /^#define BULK_FORCE 0x001 \/* Force buffer after t/ -BULK_XMIT ../dbinc/rep.h /^#define BULK_XMIT 0x002 \/* Buffer in transit. */ +BULK_XMIT ../dbinc/rep.h 639 B_DCLR ../dbinc/db_page.h /^#define B_DCLR(t) (t) &= ~B_DELETE$/ -B_DELETE ../dbinc/db_page.h /^#define B_DELETE (0x80)$/ +B_DELETE ../dbinc/db_page.h 531 B_DISSET ../dbinc/db_page.h /^#define B_DISSET(t) ((t) & B_DELETE)$/ B_DSET ../dbinc/db_page.h /^#define B_DSET(t) (t) |= B_DELETE$/ -B_DUPLICATE ../dbinc/db_page.h /^#define B_DUPLICATE 2 \/* Duplicate key\/data item/ -B_KEYDATA ../dbinc/db_page.h /^#define B_KEYDATA 1 \/* Key\/data item. *\/$/ +B_DUPLICATE ../dbinc/db_page.h 522 +B_KEYDATA ../dbinc/db_page.h 521 B_MAX ../dbinc/btree.h /^#define B_MAX(a,b) (((a) > (b)) ? (a) : (b))$/ B_MAXSIZEONPAGE ../dbinc/btree.h /^#define B_MAXSIZEONPAGE(ovflsize) \\$/ B_MINKEY_TO_OVFLSIZE ../dbinc/btree.h /^#define B_MINKEY_TO_OVFLSIZE(dbp, minkey, pgsize) / -B_OVERFLOW ../dbinc/db_page.h /^#define B_OVERFLOW 3 \/* Overflow key\/data item. / +B_OVERFLOW ../dbinc/db_page.h 523 B_TSET ../dbinc/db_page.h /^#define B_TSET(t, type) ((t) = B_TYPE(type))$/ B_TSET_DELETED ../dbinc/db_page.h /^#define B_TSET_DELETED(t, type) ((t) = (type) | B_/ B_TYPE ../dbinc/db_page.h /^#define B_TYPE(t) ((t) & ~B_DELETE)$/ -CAD_UPDATEROOT ../dbinc/btree.h /^#define CAD_UPDATEROOT 0x01 \/* Root page count w/ +CAD_UPDATEROOT ../dbinc/btree.h 69 CALC_QAM_RECNO_PER_PAGE ../dbinc/qam.h /^#define CALC_QAM_RECNO_PER_PAGE(dbp) \\$/ CDB_LOCKING ../dbinc/db_int.in /^#define CDB_LOCKING(dbenv) F_ISSET(dbenv, DB_ENV_C/ CDB_LOCKING_DONE ../db/db_cam.c /^#define CDB_LOCKING_DONE(dbenv, dbc) \\$/ @@ -117,738 +104,819 @@ CDB_LOCKING_INIT ../db/db_cam.c /^#define CDB_LOCKING_INIT(dbenv, dbc) \\$/ CD_CLR ../btree/bt_recno.c /^#define CD_CLR(cp) { \\$/ CD_ISSET ../btree/bt_recno.c /^#define CD_ISSET(cp) \\$/ CD_SET ../btree/bt_recno.c /^#define CD_SET(cp) { \\$/ -CHAR64LONG16 ../hmac/sha1.c /^} CHAR64LONG16;$/ -CHARKEY ../dbinc/hash.h /^#define CHARKEY "%$sniglet^&"$/ +CHARKEY ../dbinc/hash.h 96 CHECK_LSN ../dbinc/log.h /^#define CHECK_LSN(e, redo, cmp, lsn, prev) \\$/ CHECK_MTX_THREAD ../dbinc/db_int.in /^#define CHECK_MTX_THREAD(dbenv, mtx) do { \\$/ CHECK_THREAD ../dbinc/db_int.in /^#define CHECK_THREAD(dbenv) do { \\$/ -CIPHER ../dbinc/crypto.h /^} CIPHER;$/ -CIPHER_AES ../dbinc/crypto.h /^#define CIPHER_AES 1 \/* AES algorithm *\/$/ -CIPHER_ANY ../dbinc/crypto.h /^#define CIPHER_ANY 0x00000001 \/* Only for DB_CIPH/ -CKPLSN_CMP ../dbinc/log.h /^#define CKPLSN_CMP 0$/ -CLEAR_BYTE ../dbinc/debug.h /^#define CLEAR_BYTE 0xdb$/ +CIPHER_AES ../dbinc/crypto.h 48 +CIPHER_ANY ../dbinc/crypto.h 52 +CKPLSN_CMP ../dbinc/log.h 415 +CLEAR_BYTE ../dbinc/debug.h 27 CLEAR_MAP ../lock/lock_deadlock.c /^#define CLEAR_MAP(M, N) { \\$/ CLIENT_ONLY ../rep/rep_record.c /^#define CLIENT_ONLY(rep, rp) do { \\$/ -CLIENT_REREQ ../rep/rep_record.c /^#define CLIENT_REREQ do { \\$/ +CLIENT_REREQ ../rep/rep_record.c 74 CLOSE_HANDLE ../fileops/fop_util.c /^#define CLOSE_HANDLE(D, F) { \\$/ -CLR_MAP ../lock/lock_deadlock.c /^#define CLR_MAP(M, B) ((M)[(B) \/ 32] &= ~((u_int)/ +CLR_MAP ../lock/lock_deadlock.c /^#define CLR_MAP(M, B) ((M)[(B) \/ 32] &= ~((u_int)1/ COMPQUIET ../dbinc/debug.h /^#define COMPQUIET(n, v) do { \\$/ CONFIG_GET_INT ../env/env_config.c /^#define CONFIG_GET_INT(s, vp) do { \\$/ CONFIG_GET_LONG ../env/env_config.c /^#define CONFIG_GET_LONG(s, vp) do { \\$/ CONFIG_GET_UINT32 ../env/env_config.c /^#define CONFIG_GET_UINT32(s, vp) do { \\$/ CONFIG_INT ../env/env_config.c /^#define CONFIG_INT(s, f) do { \\$/ -CONFIG_SLOTS ../env/env_config.c /^#define CONFIG_SLOTS 10$/ +CONFIG_SLOTS ../env/env_config.c 110 CONFIG_UINT32 ../env/env_config.c /^#define CONFIG_UINT32(s, f) do { \\$/ CONFLICTS ../dbinc/lock.h /^#define CONFLICTS(T, R, HELD, WANTED) \\$/ -CONNECTION_LIST ../dbinc/repmgr.h /^typedef TAILQ_HEAD(__repmgr_conn_list, __repmgr_co/ -CONN_CONNECTING ../dbinc/repmgr.h /^#define CONN_CONNECTING 0x01 \/* nonblocking conne/ -CONN_DEFUNCT ../dbinc/repmgr.h /^#define CONN_DEFUNCT 0x02 \/* socket close pending/ +CONN_CONNECTING ../dbinc/repmgr.h 174 +CONN_DEFUNCT ../dbinc/repmgr.h 175 COPY_OBJ ../lock/lock_list.c /^#define COPY_OBJ(dp, obj) do { \\$/ COPY_RET_MEM ../dbinc/db_int.in /^#define COPY_RET_MEM(src, dest) \\$/ CRYPTO_ON ../dbinc/db_int.in /^#define CRYPTO_ON(dbenv) ((dbenv)->crypto_handle !/ CRYPTO_ONLY ../libdb_java/db_java_wrap.c /^#define CRYPTO_ONLY(x) (x);$/ -CS_DEL ../btree/bt_compact.c /^#define CS_DEL 4 \/* Get a stack to delete a page/ -CS_GETRECNO ../btree/bt_compact.c /^#define CS_GETRECNO 0x80 \/* Extract record nu/ -CS_NEXT ../btree/bt_compact.c /^#define CS_NEXT 2 \/* Get the next page. *\/$/ -CS_NEXT_WRITE ../btree/bt_compact.c /^#define CS_NEXT_WRITE 3 \/* Get the next page and / -CS_PARENT ../btree/bt_compact.c /^#define CS_PARENT 1 \/* We want the parent too, wr/ -CS_READ ../btree/bt_compact.c /^#define CS_READ 0 \/* We are just reading. *\/$/ -CS_START ../btree/bt_compact.c /^#define CS_START 5 \/* Starting level for stack, w/ -CTIME_BUFLEN ../dbinc/os.h /^#define CTIME_BUFLEN 26$/ +CS_DEL ../btree/bt_compact.c 289 +CS_GETRECNO ../btree/bt_compact.c 291 +CS_NEXT ../btree/bt_compact.c 287 +CS_NEXT_WRITE ../btree/bt_compact.c 288 +CS_PARENT ../btree/bt_compact.c 286 +CS_READ ../btree/bt_compact.c 285 +CS_START ../btree/bt_compact.c 290 +CTIME_BUFLEN ../dbinc/os.h 133 CTRACE ../btree/bt_compact.c /^#define CTRACE(dbc, location, t, start, f) do { / -CT_CURSOR ../dbinc/db_server_int.h /^#define CT_CURSOR 0x001 \/* Cursor *\/$/ -CT_DB ../dbinc/db_server_int.h /^#define CT_DB 0x002 \/* Database *\/$/ -CT_ENV ../dbinc/db_server_int.h /^#define CT_ENV 0x004 \/* Env *\/$/ -CT_JOIN ../dbinc/db_server_int.h /^#define CT_JOIN 0x10000000 \/* Join cursor compon/ -CT_JOINCUR ../dbinc/db_server_int.h /^#define CT_JOINCUR 0x20000000 \/* Join cursor *\/$/ -CT_TXN ../dbinc/db_server_int.h /^#define CT_TXN 0x008 \/* Txn *\/$/ +CT_CURSOR ../dbinc/db_server_int.h 35 +CT_DB ../dbinc/db_server_int.h 36 +CT_ENV ../dbinc/db_server_int.h 37 +CT_JOIN ../dbinc/db_server_int.h 40 +CT_JOINCUR ../dbinc/db_server_int.h 41 +CT_TXN ../dbinc/db_server_int.h 38 CURADJ_LOG ../btree/bt_recno.c /^#define CURADJ_LOG(dbc) \\$/ -C_DELETED ../dbinc/btree.h /^#define C_DELETED 0x0001 \/* Record was deleted. / +C_DELETED ../dbinc/btree.h 225 C_EQUAL ../btree/bt_recno.c /^#define C_EQUAL(cp1, cp2) \\$/ C_LESSTHAN ../btree/bt_recno.c /^#define C_LESSTHAN(cp1, cp2) \\$/ -C_RECNUM ../dbinc/btree.h /^#define C_RECNUM 0x0002 \/* Tree requires record / -C_RENUMBER ../dbinc/btree.h /^#define C_RENUMBER 0x0004 \/* Tree records are mu/ -DATA_INIT_CNT ../env/env_method.c /^#define DATA_INIT_CNT 20 \/* Start with 20 data / -DB ../dbinc/db.in /^struct __db; typedef struct __db DB;$/ -DB2JDBENV ../libdb_java/db_java_wrap.c /^#define DB2JDBENV ((jobject)DB_ENV_INTERNAL(arg1->/ -DBC ../dbinc/db.in /^struct __dbc; typedef struct __dbc DBC;$/ -DBC2JDBENV ../libdb_java/db_java_wrap.c /^#define DBC2JDBENV ((jobject)DB_ENV_INTERNAL(arg1-/ -DBC_ACTIVE ../dbinc/db.in /^#define DBC_ACTIVE 0x0001 \/* Cursor in use. *\/$/ -DBC_DONTLOCK ../dbinc/db.in /^#define DBC_DONTLOCK 0x0002 \/* Don't lock on thi/ -DBC_INTERNAL ../dbinc/db.in /^struct __dbc_internal; typedef struct __dbc_intern/ +C_RECNUM ../dbinc/btree.h 231 +C_RENUMBER ../dbinc/btree.h 238 +DATA_INIT_CNT ../env/env_method.c 737 +DB ../dbinc/db.in 138 +DB2JDBENV ../libdb_java/db_java_wrap.c 1125 +DBC ../dbinc/db.in 178 +DBC2JDBENV ../libdb_java/db_java_wrap.c 1126 +DBC_ACTIVE ../dbinc/db.in 1961 +DBC_DONTLOCK ../dbinc/db.in 1962 +DBC_INTERNAL ../dbinc/db.in 179 DBC_LOGGING ../dbinc/db_int.in /^#define DBC_LOGGING(dbc) __dbc_logging(dbc)$/ -DBC_METHOD ../cxx/cxx_dbc.cpp /^\/\/ Helper macro for simple methods that pass thr/ -DBC_MULTIPLE ../dbinc/db.in /^#define DBC_MULTIPLE 0x0004 \/* Return Multiple d/ -DBC_MULTIPLE_KEY ../dbinc/db.in /^#define DBC_MULTIPLE_KEY 0x0008 \/* Return Multipl/ -DBC_OPD ../dbinc/db.in /^#define DBC_OPD 0x0010 \/* Cursor references off/ -DBC_OWN_LID ../dbinc/db.in /^#define DBC_OWN_LID 0x0020 \/* Free lock id on de/ -DBC_READ_COMMITTED ../dbinc/db.in /^#define DBC_READ_COMMITTED 0x0040 \/* Cursor has d/ -DBC_READ_UNCOMMITTED ../dbinc/db.in /^#define DBC_READ_UNCOMMITTED 0x0080 \/* Cursor has/ -DBC_RECOVER ../dbinc/db.in /^#define DBC_RECOVER 0x0100 \/* Recovery cursor; d/ -DBC_RMW ../dbinc/db.in /^#define DBC_RMW 0x0200 \/* Acquire write flag in/ -DBC_TRANSIENT ../dbinc/db.in /^#define DBC_TRANSIENT 0x0400 \/* Cursor is transi/ -DBC_WRITECURSOR ../dbinc/db.in /^#define DBC_WRITECURSOR 0x0800 \/* Cursor may be / -DBC_WRITER ../dbinc/db.in /^#define DBC_WRITER 0x1000 \/* Cursor immediately / +DBC_METHOD ../cxx/cxx_dbc.cpp /^#define DBC_METHOD(_name, _argspec, _arglist, _ret/ +DBC_MULTIPLE ../dbinc/db.in 1963 +DBC_MULTIPLE_KEY ../dbinc/db.in 1964 +DBC_OPD ../dbinc/db.in 1965 +DBC_OWN_LID ../dbinc/db.in 1966 +DBC_READ_COMMITTED ../dbinc/db.in 1967 +DBC_READ_UNCOMMITTED ../dbinc/db.in 1968 +DBC_RECOVER ../dbinc/db.in 1969 +DBC_RMW ../dbinc/db.in 1970 +DBC_TRANSIENT ../dbinc/db.in 1971 +DBC_WRITECURSOR ../dbinc/db.in 1972 +DBC_WRITER ../dbinc/db.in 1973 DBENV_LOGGING ../dbinc/db_int.in /^#define DBENV_LOGGING(dbenv) \\$/ DBENV_METHOD ../cxx/cxx_env.cpp /^#define DBENV_METHOD(_name, _argspec, _arglist) / -DBENV_METHOD_ERR ../cxx/cxx_env.cpp /^\/\/ Helper macros for simple methods that pass th/ +DBENV_METHOD_ERR ../cxx/cxx_env.cpp /^#define DBENV_METHOD_ERR(_name, _argspec, _arglist/ DBENV_METHOD_QUIET ../cxx/cxx_env.cpp /^#define DBENV_METHOD_QUIET(_name, _argspec, _argli/ DBENV_METHOD_VOID ../cxx/cxx_env.cpp /^#define DBENV_METHOD_VOID(_name, _argspec, _arglis/ -DBLOG_FORCE_OPEN ../dbinc/log.h /^#define DBLOG_FORCE_OPEN 0x02 \/* Force the DB ope/ -DBLOG_RECOVER ../dbinc/log.h /^#define DBLOG_RECOVER 0x01 \/* We are in recovery/ -DBM ../dbinc/db.in /^typedef struct __db DBM;$/ -DBMETA ../dbinc/db_page.h /^} DBMETA33, DBMETA;$/ -DBMETA30 ../dbinc/db_upgrade.h /^} DBMETA30;$/ -DBMETA31 ../dbinc/db_upgrade.h /^} DBMETA31;$/ -DBMETASIZE ../dbinc/db_page.h /^#define DBMETASIZE 512$/ -DBMETA_CHKSUM ../dbinc/db_page.h /^#define DBMETA_CHKSUM 0x01$/ -DBM_INSERT ../dbinc/db.in /^#define DBM_INSERT 0 \/* Flags to dbm_store(). */ -DBM_REPLACE ../dbinc/db.in /^#define DBM_REPLACE 1$/ -DBM_SUFFIX ../dbinc/db.in /^#define DBM_SUFFIX ".db"$/ -DBREG_CHKPNT ../dbinc/log.h /^#define DBREG_CHKPNT 1 \/* Checkpoint: file name/ -DBREG_CLOSE ../dbinc/log.h /^#define DBREG_CLOSE 2 \/* File close. *\/$/ -DBREG_OPEN ../dbinc/log.h /^#define DBREG_OPEN 3 \/* File open. *\/$/ -DBREG_PREOPEN ../dbinc/log.h /^#define DBREG_PREOPEN 4 \/* Open in mpool only. */ -DBREG_RCLOSE ../dbinc/log.h /^#define DBREG_RCLOSE 5 \/* File close after recov/ -DBREG_REOPEN ../dbinc/log.h /^#define DBREG_REOPEN 6 \/* Open for in-memory dat/ -DBREP_OPENFILES ../dbinc/rep.h /^#define DBREP_OPENFILES 0x0001 \/* This handle ha/ -DBSEQ_METHOD ../cxx/cxx_seq.cpp /^\/\/ Helper macro for simple methods that pass thr/ -DBT ../dbinc/db.in /^struct __db_dbt; typedef struct __db_dbt DBT;$/ -DBTBUFLEN ../db/db_pr.c /^#define DBTBUFLEN 100$/ -DBTCL_DBM ../dbinc/tcl_db.h /^#define DBTCL_DBM 1$/ -DBTCL_GLOBAL ../dbinc/tcl_db.h /^} DBTCL_GLOBAL;$/ -DBTCL_INFO ../dbinc/tcl_db.h /^} DBTCL_INFO;$/ -DBTCL_NDBM ../dbinc/tcl_db.h /^#define DBTCL_NDBM 2$/ -DBTCL_PREP ../dbinc/tcl_db.h /^#define DBTCL_PREP 64 \/* Size of txn_recover prep/ -DBTXN_METHOD ../cxx/cxx_txn.cpp /^\/\/ Helper macro for simple methods that pass thr/ -DBTYPE ../dbinc/db.in /^} DBTYPE;$/ -DBT_LOCKED ../libdb_java/db_java_wrap.c /^} DBT_LOCKED;$/ -DB_ADDSTR ../env/env_open.c /^#define DB_ADDSTR(add) { \\$/ -DB_ADD_BIG ../dbinc/db_am.h /^#define DB_ADD_BIG 3$/ -DB_ADD_DUP ../dbinc/db_am.h /^#define DB_ADD_DUP 1$/ -DB_ADD_PAGE_COMPAT ../dbinc/db_am.h /^#define DB_ADD_PAGE_COMPAT 5 \/* Compatibility for/ -DB_AES_CHUNK ../dbinc/crypto.h /^#define DB_AES_CHUNK 16 \/* AES byte unit size *\// -DB_AES_KEYLEN ../dbinc/crypto.h /^#define DB_AES_KEYLEN 128 \/* AES key length *\/$/ -DB_AFTER ../dbinc/db.in /^#define DB_AFTER 1 \/* c_put() *\/$/ -DB_AGGRESSIVE ../dbinc/db.in /^#define DB_AGGRESSIVE 0x0000001 \/* Salvage / +DBLOG_FORCE_OPEN ../dbinc/log.h 122 +DBLOG_OPENFILES ../dbinc/log.h 124 +DBLOG_RECOVER ../dbinc/log.h 125 +DBM ../dbinc/db.in 2519 +DBMETASIZE ../dbinc/db_page.h 182 +DBMETA_CHKSUM ../dbinc/db_page.h 78 +DBM_INSERT ../dbinc/db.in 2521 +DBM_REPLACE ../dbinc/db.in 2522 +DBM_SUFFIX ../dbinc/db.in 2528 +DBREG_CHKPNT ../dbinc/log.h 62 +DBREG_CLOSE ../dbinc/log.h 63 +DBREG_OPEN ../dbinc/log.h 64 +DBREG_PREOPEN ../dbinc/log.h 65 +DBREG_RCLOSE ../dbinc/log.h 66 +DBREG_REOPEN ../dbinc/log.h 67 +DBREP_OPENFILES ../dbinc/rep.h 458 +DBSEQ_METHOD ../cxx/cxx_seq.cpp /^#define DBSEQ_METHOD(_name, _argspec, _arglist, _d/ +DBT ../dbinc/db.in 142 +DBTBUFLEN ../db/db_pr.c 1132 +DBTCL_DBM ../dbinc/tcl_db.h 24 +DBTCL_NDBM ../dbinc/tcl_db.h 25 +DBTCL_PREP ../dbinc/tcl_db.h 22 +DBTXN_METHOD ../cxx/cxx_txn.cpp /^#define DBTXN_METHOD(_name, _delete, _argspec, _ar/ +DBTYPE ../dbinc/db.in 1376 +DB_ADDSTR ../env/env_name.c /^#define DB_ADDSTR(add) { \\$/ +DB_ADD_BIG ../dbinc/db_am.h 41 +DB_ADD_DUP ../dbinc/db_am.h 39 +DB_ADD_PAGE_COMPAT ../dbinc/db_am.h 43 +DB_AES_CHUNK ../dbinc/crypto.h 71 +DB_AES_KEYLEN ../dbinc/crypto.h 70 +DB_AFTER ../dbinc/db.in 1399 +DB_AGGRESSIVE ../dbinc/db.in 408 DB_ALIGN ../dbinc/db_int.in /^#define DB_ALIGN(v, bound) \\$/ -DB_ALREADY_ABORTED ../dbinc/db.in /^#define DB_ALREADY_ABORTED (-30899)$/ -DB_AM_CHKSUM ../dbinc/db.in /^#define DB_AM_CHKSUM 0x00000001 \/* Checksumming / -DB_AM_CL_WRITER ../dbinc/db.in /^#define DB_AM_CL_WRITER 0x00000002 \/* Allow writ/ -DB_AM_COMPENSATE ../dbinc/db.in /^#define DB_AM_COMPENSATE 0x00000004 \/* Created by/ -DB_AM_CREATED ../dbinc/db.in /^#define DB_AM_CREATED 0x00000008 \/* Database was/ -DB_AM_CREATED_MSTR ../dbinc/db.in /^#define DB_AM_CREATED_MSTR 0x00000010 \/* Encompas/ -DB_AM_DBM_ERROR ../dbinc/db.in /^#define DB_AM_DBM_ERROR 0x00000020 \/* Error in D/ -DB_AM_DELIMITER ../dbinc/db.in /^#define DB_AM_DELIMITER 0x00000040 \/* Variable l/ -DB_AM_DISCARD ../dbinc/db.in /^#define DB_AM_DISCARD 0x00000080 \/* Discard any / -DB_AM_DUP ../dbinc/db.in /^#define DB_AM_DUP 0x00000100 \/* DB_DUP *\/$/ -DB_AM_DUPSORT ../dbinc/db.in /^#define DB_AM_DUPSORT 0x00000200 \/* DB_DUPSORT */ -DB_AM_ENCRYPT ../dbinc/db.in /^#define DB_AM_ENCRYPT 0x00000400 \/* Encryption */ -DB_AM_FIXEDLEN ../dbinc/db.in /^#define DB_AM_FIXEDLEN 0x00000800 \/* Fixed-lengt/ -DB_AM_INMEM ../dbinc/db.in /^#define DB_AM_INMEM 0x00001000 \/* In-memory; no / -DB_AM_INORDER ../dbinc/db.in /^#define DB_AM_INORDER 0x00002000 \/* DB_INORDER */ -DB_AM_IN_RENAME ../dbinc/db.in /^#define DB_AM_IN_RENAME 0x00004000 \/* File is be/ -DB_AM_NOT_DURABLE ../dbinc/db.in /^#define DB_AM_NOT_DURABLE 0x00008000 \/* Do not lo/ -DB_AM_OPEN_CALLED ../dbinc/db.in /^#define DB_AM_OPEN_CALLED 0x00010000 \/* DB->open / -DB_AM_PAD ../dbinc/db.in /^#define DB_AM_PAD 0x00020000 \/* Fixed-length rec/ -DB_AM_PGDEF ../dbinc/db.in /^#define DB_AM_PGDEF 0x00040000 \/* Page size was / -DB_AM_RDONLY ../dbinc/db.in /^#define DB_AM_RDONLY 0x00080000 \/* Database is r/ -DB_AM_READ_UNCOMMITTED ../dbinc/db.in /^#define DB_AM_READ_UNCOMMITTED 0x00100000 \/* Supp/ -DB_AM_RECNUM ../dbinc/db.in /^#define DB_AM_RECNUM 0x00200000 \/* DB_RECNUM *\// -DB_AM_RECOVER ../dbinc/db.in /^#define DB_AM_RECOVER 0x00400000 \/* DB opened by/ -DB_AM_RENUMBER ../dbinc/db.in /^#define DB_AM_RENUMBER 0x00800000 \/* DB_RENUMBER/ -DB_AM_REVSPLITOFF ../dbinc/db.in /^#define DB_AM_REVSPLITOFF 0x01000000 \/* DB_REVSPL/ -DB_AM_SECONDARY ../dbinc/db.in /^#define DB_AM_SECONDARY 0x02000000 \/* Database i/ -DB_AM_SNAPSHOT ../dbinc/db.in /^#define DB_AM_SNAPSHOT 0x04000000 \/* DB_SNAPSHOT/ -DB_AM_SUBDB ../dbinc/db.in /^#define DB_AM_SUBDB 0x08000000 \/* Subdatabases s/ -DB_AM_SWAP ../dbinc/db.in /^#define DB_AM_SWAP 0x10000000 \/* Pages need to b/ -DB_AM_TXN ../dbinc/db.in /^#define DB_AM_TXN 0x20000000 \/* Opened in a tran/ -DB_AM_VERIFYING ../dbinc/db.in /^#define DB_AM_VERIFYING 0x40000000 \/* DB handle / -DB_APPEND ../dbinc/db.in /^#define DB_APPEND 2 \/* put() *\/$/ -DB_ARCH_ABS ../dbinc/db.in /^#define DB_ARCH_ABS 0x001 \/* Absolute pathnames./ -DB_ARCH_DATA ../dbinc/db.in /^#define DB_ARCH_DATA 0x002 \/* Data files. *\/$/ -DB_ARCH_LOG ../dbinc/db.in /^#define DB_ARCH_LOG 0x004 \/* Log files. *\/$/ -DB_ARCH_REMOVE ../dbinc/db.in /^#define DB_ARCH_REMOVE 0x008 \/* Remove log files./ +DB_ALLOC_SIZE ../env/env_alloc.c /^#define DB_ALLOC_SIZE(len) \\$/ +DB_ALREADY_ABORTED ../dbinc/db.in 1485 +DB_AM_CHKSUM ../dbinc/db.in 1777 +DB_AM_COMPENSATE ../dbinc/db.in 1778 +DB_AM_CREATED ../dbinc/db.in 1779 +DB_AM_CREATED_MSTR ../dbinc/db.in 1780 +DB_AM_DBM_ERROR ../dbinc/db.in 1781 +DB_AM_DELIMITER ../dbinc/db.in 1782 +DB_AM_DISCARD ../dbinc/db.in 1783 +DB_AM_DUP ../dbinc/db.in 1784 +DB_AM_DUPSORT ../dbinc/db.in 1785 +DB_AM_ENCRYPT ../dbinc/db.in 1786 +DB_AM_FIXEDLEN ../dbinc/db.in 1787 +DB_AM_INMEM ../dbinc/db.in 1788 +DB_AM_INORDER ../dbinc/db.in 1789 +DB_AM_IN_RENAME ../dbinc/db.in 1790 +DB_AM_NOT_DURABLE ../dbinc/db.in 1791 +DB_AM_OPEN_CALLED ../dbinc/db.in 1792 +DB_AM_PAD ../dbinc/db.in 1793 +DB_AM_PGDEF ../dbinc/db.in 1794 +DB_AM_RDONLY ../dbinc/db.in 1795 +DB_AM_READ_UNCOMMITTED ../dbinc/db.in 1796 +DB_AM_RECNUM ../dbinc/db.in 1797 +DB_AM_RECOVER ../dbinc/db.in 1798 +DB_AM_RENUMBER ../dbinc/db.in 1799 +DB_AM_REVSPLITOFF ../dbinc/db.in 1800 +DB_AM_SECONDARY ../dbinc/db.in 1801 +DB_AM_SNAPSHOT ../dbinc/db.in 1802 +DB_AM_SUBDB ../dbinc/db.in 1803 +DB_AM_SWAP ../dbinc/db.in 1804 +DB_AM_TXN ../dbinc/db.in 1805 +DB_AM_VERIFYING ../dbinc/db.in 1806 +DB_APPEND ../dbinc/db.in 1400 +DB_ARCH_ABS ../dbinc/db.in 645 +DB_ARCH_DATA ../dbinc/db.in 646 +DB_ARCH_LOG ../dbinc/db.in 647 +DB_ARCH_REMOVE ../dbinc/db.in 648 DB_ASSERT ../dbinc/debug.h /^#define DB_ASSERT(env, e) \\$/ -DB_ASSOC_IMMUTABLE_KEY ../dbinc/db.in /^#define DB_ASSOC_IMMUTABLE_KEY 0x00000001 \/* S/ -DB_AUTO_COMMIT ../dbinc/db.in /^#define DB_AUTO_COMMIT 0x02000000\/* Implied/ -DB_BEFORE ../dbinc/db.in /^#define DB_BEFORE 3 \/* c_put() *\/$/ -DB_BEGIN_SINGLE_THREAD ../dbinc/mutex.h /^#define DB_BEGIN_SINGLE_THREAD do { \\$/ -DB_BTREEMAGIC ../dbinc/db.in /^#define DB_BTREEMAGIC 0x053162$/ -DB_BTREEOLDVER ../dbinc/db.in /^#define DB_BTREEOLDVER 8 \/* Oldest btree version/ -DB_BTREEVERSION ../dbinc/db.in /^#define DB_BTREEVERSION 9 \/* Current btree versi/ -DB_BTREE_STAT ../dbinc/db.in /^struct __db_bt_stat; typedef struct __db_bt_stat D/ -DB_BUFFER_SMALL ../dbinc/db.in /^#define DB_BUFFER_SMALL (-30999)\/* User memory t/ -DB_CACHESIZE_MIN ../dbinc/mp.h /^#define DB_CACHESIZE_MIN (20 * 1024)$/ -DB_CACHE_PRIORITY ../dbinc/db.in /^} DB_CACHE_PRIORITY;$/ -DB_CDB_ALLDB ../dbinc/db.in /^#define DB_CDB_ALLDB 0x00004000\/* Set CDB l/ -DB_CHKSUM ../dbinc/db.in /^#define DB_CHKSUM 0x00004000 \/* Do checksum/ -DB_CIPHER ../dbinc/db.in /^struct __db_cipher; typedef struct __db_cipher DB_/ -DB_CLEARLEN_NOTSET ../dbinc/db_int.in /^#define DB_CLEARLEN_NOTSET UINT32_MAX \/* Not yet / -DB_COMMIT_FLUSH ../dbinc/log.h /^#define DB_COMMIT_FLUSH 0x0001 \/* Flush the log / -DB_COMPACT ../dbinc/db.in /^struct __db_compact; typedef struct __db_compact D/ -DB_COMPACT_FLAGS ../dbinc/db.in /^#define DB_COMPACT_FLAGS \\$/ -DB_CONSUME ../dbinc/db.in /^#define DB_CONSUME 4 \/* get() *\/$/ -DB_CONSUME_WAIT ../dbinc/db.in /^#define DB_CONSUME_WAIT 5 \/* get() *\/$/ -DB_CREATE ../dbinc/db.in /^#define DB_CREATE 0x0000001 \/* Create file / -DB_CURRENT ../dbinc/db.in /^#define DB_CURRENT 6 \/* c_get(), c_put(), DB_LO/ -DB_CXX_NO_EXCEPTIONS ../dbinc/db.in /^#define DB_CXX_NO_EXCEPTIONS 0x0000001 \/* C++: r/ -DB_DBM_HSEARCH ../dbinc/db.in /^#define DB_DBM_HSEARCH 0 \/* No historic interfac/ -DB_DBT_APPMALLOC ../dbinc/db.in /^#define DB_DBT_APPMALLOC 0x001 \/* Callback alloca/ -DB_DBT_DUPOK ../dbinc/db.in /^#define DB_DBT_DUPOK 0x080 \/* Insert if duplicat/ -DB_DBT_ISSET ../dbinc/db.in /^#define DB_DBT_ISSET 0x002 \/* Lower level calls / -DB_DBT_MALLOC ../dbinc/db.in /^#define DB_DBT_MALLOC 0x004 \/* Return in malloc'/ -DB_DBT_PARTIAL ../dbinc/db.in /^#define DB_DBT_PARTIAL 0x008 \/* Partial put\/get/ -DB_DBT_REALLOC ../dbinc/db.in /^#define DB_DBT_REALLOC 0x010 \/* Return in reallo/ -DB_DBT_USERCOPY ../dbinc/db.in /^#define DB_DBT_USERCOPY 0x020 \/* Use the user-su/ -DB_DBT_USERMEM ../dbinc/db.in /^#define DB_DBT_USERMEM 0x040 \/* Return in user's/ -DB_DEF_IOSIZE ../dbinc/db_int.in /^#define DB_DEF_IOSIZE (8 * 1024)$/ -DB_DEGREE_2 ../dbinc/db.in /^#define DB_DEGREE_2 0x04000000\/* Historic n/ -DB_DELETED ../dbinc/db.in /^#define DB_DELETED (-30898)\/* Recovery file mark/ +DB_ASSOC_IMMUTABLE_KEY ../dbinc/db.in 1643 +DB_AUTO_COMMIT ../dbinc/db.in 251 +DB_BEFORE ../dbinc/db.in 1401 +DB_BEGIN_SINGLE_THREAD ../dbinc/mutex.h 127 +DB_BINARY_SEARCH_FOR ../dbinc/db_am.h /^#define DB_BINARY_SEARCH_FOR(base, limit, page, ad/ +DB_BINARY_SEARCH_INCR ../dbinc/db_am.h /^#define DB_BINARY_SEARCH_INCR(index, base, limit, / +DB_BINARY_SEARCH_SHIFT_BASE ../dbinc/db_am.h /^#define DB_BINARY_SEARCH_SHIFT_BASE(index, base, l/ +DB_BTREEMAGIC ../dbinc/db.in 1382 +DB_BTREEOLDVER ../dbinc/db.in 1381 +DB_BTREEVERSION ../dbinc/db.in 1380 +DB_BTREE_STAT ../dbinc/db.in 139 +DB_BUFFER_SMALL ../dbinc/db.in 1455 +DB_CACHESIZE_MIN ../dbinc/mp.h 24 +DB_CACHE_PRIORITY ../dbinc/db.in 784 +DB_CALLBACK_C_INTERCEPT ../cxx/cxx_db.cpp /^#define DB_CALLBACK_C_INTERCEPT(_name, _rettype, _/ +DB_CDB_ALLDB ../dbinc/db.in 332 +DB_CHKSUM ../dbinc/db.in 376 +DB_CHK_META ../dbinc/db_am.h 238 +DB_CHK_NOLSN ../dbinc/db_am.h 239 +DB_CIPHER ../dbinc/db.in 140 +DB_CKP_INTERNAL ../dbinc/db.in 322 +DB_CLEARLEN_NOTSET ../dbinc/db_int.in 603 +DB_COMMIT_FLUSH ../dbinc/log.h 342 +DB_COMPACT ../dbinc/db.in 141 +DB_COMPACT_FLAGS ../dbinc/db.in 363 +DB_CONSUME ../dbinc/db.in 1402 +DB_CONSUME_WAIT ../dbinc/db.in 1403 +DB_CREATE ../dbinc/db.in 213 +DB_CURRENT ../dbinc/db.in 1404 +DB_CXX_NO_EXCEPTIONS ../dbinc/db.in 264 +DB_CXX_PRIVATE_ENV ../dbinc/cxx_int.h 73 +DB_DBM_HSEARCH ../dbinc/db.in 2513 +DB_DBT_APPMALLOC ../dbinc/db.in 196 +DB_DBT_DUPOK ../dbinc/db.in 197 +DB_DBT_ISSET ../dbinc/db.in 198 +DB_DBT_MALLOC ../dbinc/db.in 199 +DB_DBT_MULTIPLE ../dbinc/db.in 200 +DB_DBT_PARTIAL ../dbinc/db.in 201 +DB_DBT_REALLOC ../dbinc/db.in 202 +DB_DBT_USERCOPY ../dbinc/db.in 203 +DB_DBT_USERMEM ../dbinc/db.in 204 +DB_DEF_IOSIZE ../dbinc/db_int.in 146 +DB_DEGREE_2 ../dbinc/db.in 254 +DB_DELETED ../dbinc/db.in 1486 DB_DESTRUCTOR ../cxx/cxx_db.cpp /^#define DB_DESTRUCTOR(_name, _argspec, _arglist, _/ -DB_DIRECT ../dbinc/db.in /^#define DB_DIRECT 0x0004000 \/* Don't buffer/ -DB_DIRECT_DB ../dbinc/db.in /^#define DB_DIRECT_DB 0x00008000\/* Don't buf/ -DB_DIRECT_LOG ../dbinc/db.in /^#define DB_DIRECT_LOG 0x00010000\/* Don't bu/ -DB_DIRTY_READ ../dbinc/db.in /^#define DB_DIRTY_READ 0x08000000\/* Historic/ -DB_DONOTINDEX ../dbinc/db.in /^#define DB_DONOTINDEX (-30998)\/* "Null" return f/ -DB_DSYNC_DB ../dbinc/db.in /^#define DB_DSYNC_DB 0x00020000\/* Set O_DSYN/ -DB_DSYNC_LOG ../dbinc/db.in /^#define DB_DSYNC_LOG 0x00040000\/* Set O_DSY/ -DB_DUP ../dbinc/db.in /^#define DB_DUP 0x00008000 \/* Btree, Hash: / -DB_DUPSORT ../dbinc/db.in /^#define DB_DUPSORT 0x00010000 \/* Btree, Has/ -DB_DURABLE_UNKNOWN ../dbinc/db.in /^#define DB_DURABLE_UNKNOWN 0x0000002 \/* Durabi/ -DB_EID_BROADCAST ../dbinc/db.in /^#define DB_EID_BROADCAST -1$/ -DB_EID_INVALID ../dbinc/db.in /^#define DB_EID_INVALID -2$/ -DB_ENCRYPT ../dbinc/db.in /^#define DB_ENCRYPT 0x00020000 \/* Btree, Has/ -DB_ENCRYPT_AES ../dbinc/db.in /^#define DB_ENCRYPT_AES 0x0000001 \/* AES, as/ -DB_ENC_MAGIC ../dbinc/hmac.h /^#define DB_ENC_MAGIC "encryption and decryption ke/ -DB_END_SINGLE_THREAD ../dbinc/mutex.h /^#define DB_END_SINGLE_THREAD (void)semGive(DB_GLOB/ -DB_ENTRY ../dbinc/log.h /^} DB_ENTRY;$/ -DB_ENV ../dbinc/db.in /^struct __db_env; typedef struct __db_env DB_ENV;$/ -DB_ENV_AUTO_COMMIT ../dbinc/db.in /^#define DB_ENV_AUTO_COMMIT 0x00000001 \/* DB_AUTO_/ -DB_ENV_CDB ../dbinc/db.in /^#define DB_ENV_CDB 0x00000002 \/* DB_INIT_CDB. */ -DB_ENV_CDB_ALLDB ../dbinc/db.in /^#define DB_ENV_CDB_ALLDB 0x00000004 \/* CDB enviro/ -DB_ENV_CREATE ../dbinc/db.in /^#define DB_ENV_CREATE 0x00000008 \/* DB_CREATE se/ -DB_ENV_DBLOCAL ../dbinc/db.in /^#define DB_ENV_DBLOCAL 0x00000010 \/* Environment/ -DB_ENV_DIRECT_DB ../dbinc/db.in /^#define DB_ENV_DIRECT_DB 0x00000020 \/* DB_DIRECT_/ -DB_ENV_DIRECT_LOG ../dbinc/db.in /^#define DB_ENV_DIRECT_LOG 0x00000040 \/* DB_DIRECT/ -DB_ENV_DSYNC_DB ../dbinc/db.in /^#define DB_ENV_DSYNC_DB 0x00000080 \/* DB_DSYNC_D/ -DB_ENV_DSYNC_LOG ../dbinc/db.in /^#define DB_ENV_DSYNC_LOG 0x00000100 \/* DB_DSYNC_L/ -DB_ENV_FATAL ../dbinc/db.in /^#define DB_ENV_FATAL 0x00000200 \/* Doing fatal r/ +DB_DIRECT ../dbinc/db.in 369 +DB_DIRECT_DB ../dbinc/db.in 333 +DB_DIRECT_LOG ../dbinc/db.in 334 +DB_DIRTY_READ ../dbinc/db.in 257 +DB_DONOTINDEX ../dbinc/db.in 1456 +DB_DSYNC_DB ../dbinc/db.in 335 +DB_DSYNC_LOG ../dbinc/db.in 336 +DB_DUP ../dbinc/db.in 377 +DB_DUPSORT ../dbinc/db.in 378 +DB_DURABLE_UNKNOWN ../dbinc/db.in 214 +DB_EID_BROADCAST ../dbinc/db.in 1142 +DB_EID_INVALID ../dbinc/db.in 1143 +DB_ENCRYPT ../dbinc/db.in 379 +DB_ENCRYPT_AES ../dbinc/db.in 327 +DB_ENC_MAGIC ../dbinc/hmac.h 32 +DB_END_SINGLE_THREAD ../dbinc/mutex.h 145 +DB_ENV ../dbinc/db.in 143 +DB_ENV_AUTO_COMMIT ../dbinc/db.in 2477 +DB_ENV_CDB ../dbinc/db.in 2478 +DB_ENV_CDB_ALLDB ../dbinc/db.in 2479 +DB_ENV_DBLOCAL ../dbinc/db.in 2480 +DB_ENV_DIRECT_DB ../dbinc/db.in 2481 +DB_ENV_DIRECT_LOG ../dbinc/db.in 2482 +DB_ENV_DSYNC_DB ../dbinc/db.in 2483 +DB_ENV_DSYNC_LOG ../dbinc/db.in 2484 DB_ENV_INTERNAL ../libdb_java/db_java_wrap.c /^#define DB_ENV_INTERNAL(dbenv) ((dbenv)->api2_inte/ -DB_ENV_LOCKDOWN ../dbinc/db.in /^#define DB_ENV_LOCKDOWN 0x00000400 \/* DB_LOCKDOW/ -DB_ENV_LOG_AUTOREMOVE ../dbinc/db.in /^#define DB_ENV_LOG_AUTOREMOVE 0x00000800 \/* DB_/ -DB_ENV_LOG_INMEMORY ../dbinc/db.in /^#define DB_ENV_LOG_INMEMORY 0x00001000 \/* DB_/ -DB_ENV_MULTIVERSION ../dbinc/db.in /^#define DB_ENV_MULTIVERSION 0x00002000 \/* DB_MULT/ -DB_ENV_NOLOCKING ../dbinc/db.in /^#define DB_ENV_NOLOCKING 0x00004000 \/* DB_NOLOCKI/ -DB_ENV_NOMMAP ../dbinc/db.in /^#define DB_ENV_NOMMAP 0x00008000 \/* DB_NOMMAP se/ -DB_ENV_NOPANIC ../dbinc/db.in /^#define DB_ENV_NOPANIC 0x00010000 \/* Okay if pan/ -DB_ENV_OPEN_CALLED ../dbinc/db.in /^#define DB_ENV_OPEN_CALLED 0x00020000 \/* DB_ENV->/ -DB_ENV_OVERWRITE ../dbinc/db.in /^#define DB_ENV_OVERWRITE 0x00040000 \/* DB_OVERWRI/ -DB_ENV_PRIVATE ../dbinc/db.in /^#define DB_ENV_PRIVATE 0x00080000 \/* DB_PRIVATE / -DB_ENV_REGION_INIT ../dbinc/db.in /^#define DB_ENV_REGION_INIT 0x00100000 \/* DB_REGIO/ -DB_ENV_RPCCLIENT ../dbinc/db.in /^#define DB_ENV_RPCCLIENT 0x00200000 \/* DB_RPCCLIE/ -DB_ENV_RPCCLIENT_GIVEN ../dbinc/db.in /^#define DB_ENV_RPCCLIENT_GIVEN 0x00400000 \/* User/ -DB_ENV_SYSTEM_MEM ../dbinc/db.in /^#define DB_ENV_SYSTEM_MEM 0x00800000 \/* DB_SYSTEM/ +DB_ENV_LOCKDOWN ../dbinc/db.in 2485 +DB_ENV_LOG_AUTOREMOVE ../dbinc/db.in 2486 +DB_ENV_LOG_INMEMORY ../dbinc/db.in 2487 +DB_ENV_MULTIVERSION ../dbinc/db.in 2488 +DB_ENV_NOLOCKING ../dbinc/db.in 2489 +DB_ENV_NOMMAP ../dbinc/db.in 2490 +DB_ENV_NOPANIC ../dbinc/db.in 2491 +DB_ENV_NO_OUTPUT_SET ../dbinc/db.in 2492 +DB_ENV_OPEN_CALLED ../dbinc/db.in 2493 +DB_ENV_OVERWRITE ../dbinc/db.in 2494 +DB_ENV_PRIVATE ../dbinc/db.in 2495 +DB_ENV_RECOVER_FATAL ../dbinc/db.in 2496 +DB_ENV_REF_COUNTED ../dbinc/db.in 2497 +DB_ENV_REGION_INIT ../dbinc/db.in 2498 +DB_ENV_RPCCLIENT ../dbinc/db.in 2499 +DB_ENV_RPCCLIENT_GIVEN ../dbinc/db.in 2500 +DB_ENV_SYSTEM_MEM ../dbinc/db.in 2501 DB_ENV_TEST_RECOVERY ../dbinc/debug.h /^#define DB_ENV_TEST_RECOVERY(env, val, ret, name) / DB_ENV_TEST_RECYCLE ../dbinc/debug.h /^#define DB_ENV_TEST_RECYCLE(env, ret) do { \\$/ -DB_ENV_THREAD ../dbinc/db.in /^#define DB_ENV_THREAD 0x01000000 \/* DB_THREAD se/ -DB_ENV_TIME_NOTGRANTED ../dbinc/db.in /^#define DB_ENV_TIME_NOTGRANTED 0x02000000 \/* DB_T/ -DB_ENV_TXN_NOSYNC ../dbinc/db.in /^#define DB_ENV_TXN_NOSYNC 0x04000000 \/* DB_TXN_NO/ -DB_ENV_TXN_SNAPSHOT ../dbinc/db.in /^#define DB_ENV_TXN_SNAPSHOT 0x08000000 \/* DB_TXN_/ -DB_ENV_TXN_WRITE_NOSYNC ../dbinc/db.in /^#define DB_ENV_TXN_WRITE_NOSYNC 0x10000000 \/* DB_/ -DB_ENV_YIELDCPU ../dbinc/db.in /^#define DB_ENV_YIELDCPU 0x20000000 \/* DB_YIELDCP/ +DB_ENV_THREAD ../dbinc/db.in 2502 +DB_ENV_TIME_NOTGRANTED ../dbinc/db.in 2503 +DB_ENV_TXN_NOSYNC ../dbinc/db.in 2504 +DB_ENV_TXN_NOWAIT ../dbinc/db.in 2505 +DB_ENV_TXN_SNAPSHOT ../dbinc/db.in 2506 +DB_ENV_TXN_WRITE_NOSYNC ../dbinc/db.in 2507 +DB_ENV_YIELDCPU ../dbinc/db.in 2508 +DB_ERROR ../dbinc/cxx_int.h /^#define DB_ERROR(env, caller, ecode, policy) \\$/ +DB_ERROR_DBT ../dbinc/cxx_int.h /^#define DB_ERROR_DBT(env, caller, dbt, policy) \\$/ DB_EVENT ../dbinc/db_int.in /^#define DB_EVENT(dbenv, e, einfo) do { \\$/ -DB_EVENT_NO_SUCH_EVENT ../dbinc/db.in /^#define DB_EVENT_NO_SUCH_EVENT 0 \/* out-of-band / -DB_EVENT_PANIC ../dbinc/db.in /^#define DB_EVENT_PANIC 1$/ -DB_EVENT_REP_CLIENT ../dbinc/db.in /^#define DB_EVENT_REP_CLIENT 2$/ -DB_EVENT_REP_MASTER ../dbinc/db.in /^#define DB_EVENT_REP_MASTER 3$/ -DB_EVENT_REP_NEWMASTER ../dbinc/db.in /^#define DB_EVENT_REP_NEWMASTER 4$/ -DB_EVENT_REP_STARTUPDONE ../dbinc/db.in /^#define DB_EVENT_REP_STARTUPDONE 5$/ -DB_EVENT_WRITE_FAILED ../dbinc/db.in /^#define DB_EVENT_WRITE_FAILED 6$/ -DB_EXCL ../dbinc/db.in /^#define DB_EXCL 0x0004000 \/* Exclusive ope/ -DB_EXTENT ../dbinc/db.in /^#define DB_EXTENT 0x0008000 \/* internal: de/ -DB_FAST_STAT ../dbinc/db.in /^#define DB_FAST_STAT 0x0000001 \/* Don't tra/ -DB_FCNTL_LOCKING ../dbinc/db.in /^#define DB_FCNTL_LOCKING 0x0008000 \/* UNDOC:/ -DB_FH ../dbinc/db.in /^struct __fh_t; typedef struct __fh_t DB_FH;$/ -DB_FH_NOSYNC ../dbinc/os.h /^#define DB_FH_NOSYNC 0x01 \/* Handle doesn't need/ -DB_FH_OPENED ../dbinc/os.h /^#define DB_FH_OPENED 0x02 \/* Handle is valid. */ -DB_FH_UNLINK ../dbinc/os.h /^#define DB_FH_UNLINK 0x04 \/* Unlink on close *\// -DB_FILE_ID_LEN ../dbinc/db.in /^#define DB_FILE_ID_LEN 20 \/* Unique file ID leng/ -DB_FIRST ../dbinc/db.in /^#define DB_FIRST 7 \/* c_get(), DB_LOGC->get() */ -DB_FLUSH ../dbinc/db.in /^#define DB_FLUSH 0x001 \/* Flush data to disk (pu/ -DB_FNAME_DURABLE ../dbinc/log.h /^#define DB_FNAME_DURABLE 0x02 \/* File is durable./ -DB_FNAME_NOTLOGGED ../dbinc/log.h /^#define DB_FNAME_NOTLOGGED 0x01 \/* Log of close f/ -DB_FORCE ../dbinc/db.in /^#define DB_FORCE 0x0000004 \/* Force (anythi/ -DB_FREELIST_ONLY ../dbinc/db.in /^#define DB_FREELIST_ONLY 0x00004000 \/* Just / -DB_FREEZER_MAGIC ../mp/mp_mvcc.c /^#define DB_FREEZER_MAGIC 0x06102002$/ -DB_FREE_SPACE ../dbinc/db.in /^#define DB_FREE_SPACE 0x00008000 \/* Free / -DB_FTYPE_NOTSET ../dbinc/db_int.in /^#define DB_FTYPE_NOTSET 0 \/* Don't call... *\// -DB_FTYPE_SET ../dbinc/db_int.in /^#define DB_FTYPE_SET -1 \/* Call pgin\/pgout fun/ -DB_GET_BOTH ../dbinc/db.in /^#define DB_GET_BOTH 8 \/* get(), c_get() *\/$/ -DB_GET_BOTHC ../dbinc/db.in /^#define DB_GET_BOTHC 9 \/* c_get() (internal) */ -DB_GET_BOTH_RANGE ../dbinc/db.in /^#define DB_GET_BOTH_RANGE 10 \/* get(), c_get() */ -DB_GET_RECNO ../dbinc/db.in /^#define DB_GET_RECNO 11 \/* c_get() *\/$/ -DB_GLOBAL ../dbinc/globals.h /^#define DB_GLOBAL(v) __db_global_values.v$/ -DB_GLOBALS ../dbinc/globals.h /^} DB_GLOBALS;$/ -DB_GROW_SIZE ../dbinc/log.h /^#define DB_GROW_SIZE 64$/ -DB_HANDLE_LOCK ../dbinc/db.in /^#define DB_HANDLE_LOCK 1$/ -DB_HASHMAGIC ../dbinc/db.in /^#define DB_HASHMAGIC 0x061561$/ -DB_HASHOLDVER ../dbinc/db.in /^#define DB_HASHOLDVER 7 \/* Oldest hash version s/ -DB_HASHTAB ../dbinc/db_int.in /^typedef SH_TAILQ_HEAD(__hash_head) DB_HASHTAB;$/ -DB_HASHVERSION ../dbinc/db.in /^#define DB_HASHVERSION 8 \/* Current hash version/ -DB_HASH_DUP ../dbinc/db_page.h /^#define DB_HASH_DUP 0x01 \/* Duplicates. *\/$/ -DB_HASH_DUPSORT ../dbinc/db_page.h /^#define DB_HASH_DUPSORT 0x04 \/* Duplicates are / -DB_HASH_STAT ../dbinc/db.in /^struct __db_h_stat; typedef struct __db_h_stat DB_/ -DB_HASH_SUBDB ../dbinc/db_page.h /^#define DB_HASH_SUBDB 0x02 \/* Subdatabases. *\// +DB_EVENT_NOT_HANDLED ../dbinc/db.in 1487 +DB_EVENT_NO_SUCH_EVENT ../dbinc/db.in 1184 +DB_EVENT_PANIC ../dbinc/db.in 1185 +DB_EVENT_REP_CLIENT ../dbinc/db.in 1186 +DB_EVENT_REP_ELECTED ../dbinc/db.in 1187 +DB_EVENT_REP_MASTER ../dbinc/db.in 1188 +DB_EVENT_REP_NEWMASTER ../dbinc/db.in 1189 +DB_EVENT_REP_PERM_FAILED ../dbinc/db.in 1190 +DB_EVENT_REP_STARTUPDONE ../dbinc/db.in 1191 +DB_EVENT_WRITE_FAILED ../dbinc/db.in 1192 +DB_EXCL ../dbinc/db.in 301 +DB_EXTENT ../dbinc/db.in 370 +DB_FAST_STAT ../dbinc/db.in 389 +DB_FCNTL_LOCKING ../dbinc/db.in 302 +DB_FH ../dbinc/db.in 180 +DB_FH_ENVLINK ../dbinc/os.h 122 +DB_FH_NOSYNC ../dbinc/os.h 123 +DB_FH_OPENED ../dbinc/os.h 124 +DB_FH_UNLINK ../dbinc/os.h 125 +DB_FILE_ID_LEN ../dbinc/db.in 470 +DB_FIRST ../dbinc/db.in 1405 +DB_FLUSH ../dbinc/db.in 651 +DB_FNAME_CLOSED ../dbinc/log.h 52 +DB_FNAME_DURABLE ../dbinc/log.h 53 +DB_FNAME_INMEM ../dbinc/log.h 54 +DB_FNAME_NOTLOGGED ../dbinc/log.h 55 +DB_FNAME_RECOVER ../dbinc/log.h 56 +DB_FNAME_RESTORED ../dbinc/log.h 57 +DB_FORCE ../dbinc/db.in 215 +DB_FREELIST_ONLY ../dbinc/db.in 361 +DB_FREEZER_MAGIC ../mp/mp_mvcc.c 195 +DB_FREE_SPACE ../dbinc/db.in 362 +DB_FTYPE_NOTSET ../dbinc/db_int.in 601 +DB_FTYPE_SET ../dbinc/db_int.in 600 +DB_GET_BOTH ../dbinc/db.in 1406 +DB_GET_BOTHC ../dbinc/db.in 1407 +DB_GET_BOTH_RANGE ../dbinc/db.in 1408 +DB_GET_RECNO ../dbinc/db.in 1409 +DB_GLOBAL ../dbinc/globals.h /^#define DB_GLOBAL(v) \\$/ +DB_GROW_SIZE ../dbinc/log.h 105 +DB_HANDLE_LOCK ../dbinc/db.in 609 +DB_HASHMAGIC ../dbinc/db.in 1386 +DB_HASHOLDVER ../dbinc/db.in 1385 +DB_HASHVERSION ../dbinc/db.in 1384 +DB_HASH_DUP ../dbinc/db_page.h 125 +DB_HASH_DUPSORT ../dbinc/db_page.h 127 +DB_HASH_STAT ../dbinc/db.in 144 +DB_HASH_SUBDB ../dbinc/db_page.h 126 DB_HTONL ../dbinc/db_swap.h /^#define DB_HTONL(p) do { \\$/ +DB_IGNORE_LEASE ../dbinc/db.in 250 DB_ILLEGAL_AFTER_OPEN ../dbinc/db_int.in /^#define DB_ILLEGAL_AFTER_OPEN(dbp, name) \\$/ DB_ILLEGAL_BEFORE_OPEN ../dbinc/db_int.in /^#define DB_ILLEGAL_BEFORE_OPEN(dbp, name) \\$/ DB_ILLEGAL_IN_ENV ../dbinc/db_int.in /^#define DB_ILLEGAL_IN_ENV(dbp, name) \\$/ DB_ILLEGAL_METHOD ../dbinc/db_int.in /^#define DB_ILLEGAL_METHOD(dbp, flags) { \\$/ -DB_IMMUTABLE_KEY ../dbinc/db.in /^#define DB_IMMUTABLE_KEY 0x0004000 \/* Second/ -DB_INITENV_CDB ../env/env_open.c /^#define DB_INITENV_CDB 0x0001 \/* DB_INIT_CDB *\// -DB_INITENV_CDB_ALLDB ../env/env_open.c /^#define DB_INITENV_CDB_ALLDB 0x0002 \/* DB_INIT_CD/ -DB_INITENV_LOCK ../env/env_open.c /^#define DB_INITENV_LOCK 0x0004 \/* DB_INIT_LOCK */ -DB_INITENV_LOG ../env/env_open.c /^#define DB_INITENV_LOG 0x0008 \/* DB_INIT_LOG *\// -DB_INITENV_MPOOL ../env/env_open.c /^#define DB_INITENV_MPOOL 0x0010 \/* DB_INIT_MPOOL / -DB_INITENV_REP ../env/env_open.c /^#define DB_INITENV_REP 0x0020 \/* DB_INIT_REP *\// -DB_INITENV_TXN ../env/env_open.c /^#define DB_INITENV_TXN 0x0040 \/* DB_INIT_TXN *\// -DB_INITIALIZE_DB_GLOBALS ../env/env_method.c /^#define DB_INITIALIZE_DB_GLOBALS 1$/ -DB_INIT_CDB ../dbinc/db.in /^#define DB_INIT_CDB 0x0004000 \/* Concurrent/ +DB_IMMUTABLE_KEY ../dbinc/db.in 310 +DB_INITENV_CDB ../env/env_open.c 255 +DB_INITENV_CDB_ALLDB ../env/env_open.c 256 +DB_INITENV_LOCK ../env/env_open.c 257 +DB_INITENV_LOG ../env/env_open.c 258 +DB_INITENV_MPOOL ../env/env_open.c 259 +DB_INITENV_REP ../env/env_open.c 260 +DB_INITENV_TXN ../env/env_open.c 261 +DB_INITIALIZE_DB_GLOBALS ../env/env_globals.c 16 +DB_INIT_CDB ../dbinc/db.in 284 DB_INIT_DBT ../dbinc/db_int.in /^#define DB_INIT_DBT(dbt, d, s) do { \\$/ -DB_INIT_LOCK ../dbinc/db.in /^#define DB_INIT_LOCK 0x0008000 \/* Initializ/ -DB_INIT_LOG ../dbinc/db.in /^#define DB_INIT_LOG 0x0010000 \/* Initialize/ -DB_INIT_MPOOL ../dbinc/db.in /^#define DB_INIT_MPOOL 0x0020000 \/* Initiali/ -DB_INIT_REP ../dbinc/db.in /^#define DB_INIT_REP 0x0040000 \/* Initialize/ -DB_INIT_TXN ../dbinc/db.in /^#define DB_INIT_TXN 0x0080000 \/* Initialize/ -DB_INORDER ../dbinc/db.in /^#define DB_INORDER 0x00040000 \/* Queue: str/ +DB_INIT_LOCK ../dbinc/db.in 285 +DB_INIT_LOG ../dbinc/db.in 286 +DB_INIT_MPOOL ../dbinc/db.in 287 +DB_INIT_REP ../dbinc/db.in 288 +DB_INIT_TXN ../dbinc/db.in 289 +DB_INORDER ../dbinc/db.in 380 DB_INTERNAL ../libdb_java/db_java_wrap.c /^#define DB_INTERNAL(db) ((db)->api_internal)$/ -DB_IO_READ ../dbinc/os.h /^#define DB_IO_READ 1$/ -DB_IO_WRITE ../dbinc/os.h /^#define DB_IO_WRITE 2$/ +DB_IO_READ ../dbinc/os.h 83 +DB_IO_WRITE ../dbinc/os.h 84 DB_IS_READONLY ../dbinc/db_am.h /^#define DB_IS_READONLY(dbp) \\$/ DB_IS_THREADED ../dbinc/db_int.in /^#define DB_IS_THREADED(dbp) \\$/ -DB_IV_BYTES ../dbinc/db_int.in /^#define DB_IV_BYTES 16 \/* Bytes per IV *\/$/ -DB_JOINENV ../dbinc/db.in /^#define DB_JOINENV 0x0 \/* Compatibility. */ -DB_JOIN_ITEM ../dbinc/db.in /^#define DB_JOIN_ITEM 12 \/* c_get(); do not do pr/ -DB_JOIN_NOSORT ../dbinc/db.in /^#define DB_JOIN_NOSORT 0x0000001 \/* Don't t/ -DB_KEYEMPTY ../dbinc/db.in /^#define DB_KEYEMPTY (-30997)\/* Key\/data deleted/ -DB_KEYEXIST ../dbinc/db.in /^#define DB_KEYEXIST (-30996)\/* The key\/data pai/ -DB_KEYFIRST ../dbinc/db.in /^#define DB_KEYFIRST 13 \/* c_put() *\/$/ -DB_KEYLAST ../dbinc/db.in /^#define DB_KEYLAST 14 \/* c_put() *\/$/ -DB_KEY_RANGE ../dbinc/db.in /^struct __key_range; typedef struct __key_range DB_/ -DB_LAST ../dbinc/db.in /^#define DB_LAST 15 \/* c_get(), DB_LOGC->get() */ -DB_LOCK ../dbinc/db.in /^struct __db_lock_u; typedef struct __db_lock_u DB_/ -DB_LOCKDOWN ../dbinc/db.in /^#define DB_LOCKDOWN 0x0100000 \/* Lock memor/ -DB_LOCKER ../dbinc/lock.h /^} DB_LOCKER;$/ -DB_LOCKER_DELETED ../dbinc/lock.h /^#define DB_LOCKER_DELETED 0x0001$/ -DB_LOCKER_DIRTY ../dbinc/lock.h /^#define DB_LOCKER_DIRTY 0x0002$/ -DB_LOCKER_INABORT ../dbinc/lock.h /^#define DB_LOCKER_INABORT 0x0004$/ -DB_LOCKER_TIMEOUT ../dbinc/lock.h /^#define DB_LOCKER_TIMEOUT 0x0008$/ -DB_LOCKOBJ ../dbinc/lock.h /^} DB_LOCKOBJ;$/ -DB_LOCKREGION ../dbinc/lock.h /^} DB_LOCKREGION;$/ -DB_LOCKREQ ../dbinc/db.in /^struct __db_lockreq; typedef struct __db_lockreq D/ -DB_LOCKTAB ../dbinc/db.in /^struct __db_locktab; typedef struct __db_locktab D/ -DB_LOCKVERSION ../dbinc/db.in /^#define DB_LOCKVERSION 1$/ -DB_LOCK_ABORT ../dbinc/db.in /^#define DB_LOCK_ABORT 0x001 \/* Internal: Lock du/ -DB_LOCK_CDB_N ../lock/lock_region.c /^#define DB_LOCK_CDB_N 5$/ -DB_LOCK_DEADLOCK ../dbinc/db.in /^#define DB_LOCK_DEADLOCK (-30995)\/* Deadlock. *\// -DB_LOCK_DEFAULT ../dbinc/db.in /^#define DB_LOCK_DEFAULT 1 \/* Default policy. *\// -DB_LOCK_DEFAULT_N ../dbinc/lock.h /^#define DB_LOCK_DEFAULT_N 1000 \/* Default # of lo/ -DB_LOCK_DOALL ../dbinc/lock.h /^#define DB_LOCK_DOALL 0x010000$/ -DB_LOCK_EXPIRE ../dbinc/db.in /^#define DB_LOCK_EXPIRE 2 \/* Only expire locks, n/ -DB_LOCK_FREE ../dbinc/lock.h /^#define DB_LOCK_FREE 0x040000$/ -DB_LOCK_ILOCK ../dbinc/db.in /^struct __db_ilock; typedef struct __db_ilock DB_LO/ -DB_LOCK_INVALIDID ../dbinc/lock.h /^#define DB_LOCK_INVALIDID 0$/ -DB_LOCK_MAXID ../dbinc/lock.h /^#define DB_LOCK_MAXID 0x7fffffff$/ -DB_LOCK_MAXLOCKS ../dbinc/db.in /^#define DB_LOCK_MAXLOCKS 3 \/* Select locker with / -DB_LOCK_MAXWRITE ../dbinc/db.in /^#define DB_LOCK_MAXWRITE 4 \/* Select locker with / -DB_LOCK_MINLOCKS ../dbinc/db.in /^#define DB_LOCK_MINLOCKS 5 \/* Select locker with / -DB_LOCK_MINWRITE ../dbinc/db.in /^#define DB_LOCK_MINWRITE 6 \/* Select locker with / -DB_LOCK_NOPROMOTE ../dbinc/lock.h /^#define DB_LOCK_NOPROMOTE 0x080000$/ -DB_LOCK_NOREGION ../dbinc/lock.h /^#define DB_LOCK_NOREGION 0x200000$/ -DB_LOCK_NORUN ../dbinc/db.in /^#define DB_LOCK_NORUN 0$/ -DB_LOCK_NOTGRANTED ../dbinc/db.in /^#define DB_LOCK_NOTGRANTED (-30994)\/* Lock unavai/ -DB_LOCK_NOWAIT ../dbinc/db.in /^#define DB_LOCK_NOWAIT 0x002 \/* Don't wait on un/ -DB_LOCK_NOWAITERS ../dbinc/lock.h /^#define DB_LOCK_NOWAITERS 0x400000$/ -DB_LOCK_OLDEST ../dbinc/db.in /^#define DB_LOCK_OLDEST 7 \/* Select oldest locker/ -DB_LOCK_RANDOM ../dbinc/db.in /^#define DB_LOCK_RANDOM 8 \/* Select random locker/ -DB_LOCK_RECORD ../dbinc/db.in /^#define DB_LOCK_RECORD 0x004 \/* Internal: record/ -DB_LOCK_RIW_N ../lock/lock_region.c /^#define DB_LOCK_RIW_N 9$/ -DB_LOCK_SET_TIMEOUT ../dbinc/db.in /^#define DB_LOCK_SET_TIMEOUT 0x008 \/* Internal: se/ -DB_LOCK_STAT ../dbinc/db.in /^struct __db_lock_stat; typedef struct __db_lock_st/ -DB_LOCK_SWITCH ../dbinc/db.in /^#define DB_LOCK_SWITCH 0x010 \/* Internal: switch/ -DB_LOCK_UNLINK ../dbinc/lock.h /^#define DB_LOCK_UNLINK 0x100000$/ -DB_LOCK_UPGRADE ../dbinc/db.in /^#define DB_LOCK_UPGRADE 0x020 \/* Internal: upgra/ -DB_LOCK_YOUNGEST ../dbinc/db.in /^#define DB_LOCK_YOUNGEST 9 \/* Select youngest loc/ -DB_LOG ../dbinc/db.in /^struct __db_log; typedef struct __db_log DB_LOG;$/ -DB_LOGC ../dbinc/db.in /^struct __db_log_cursor; typedef struct __db_log_cu/ -DB_LOGFILEID_INVALID ../dbinc/db.in /^#define DB_LOGFILEID_INVALID -1$/ -DB_LOGMAGIC ../dbinc/db.in /^#define DB_LOGMAGIC 0x040988$/ -DB_LOGOLDVER ../dbinc/db.in /^#define DB_LOGOLDVER 8 \/* Oldest log version sup/ -DB_LOGVERSION ../dbinc/db.in /^#define DB_LOGVERSION 12 \/* Current log version./ -DB_LOGVERSION_42 ../dbinc/rep.h /^#define DB_LOGVERSION_42 8$/ -DB_LOGVERSION_43 ../dbinc/rep.h /^#define DB_LOGVERSION_43 10$/ -DB_LOGVERSION_44 ../dbinc/rep.h /^#define DB_LOGVERSION_44 11$/ -DB_LOGVERSION_45 ../dbinc/rep.h /^#define DB_LOGVERSION_45 12$/ -DB_LOG_AUTOREMOVE ../dbinc/db.in /^#define DB_LOG_AUTOREMOVE 0x00080000\/* Automa/ -DB_LOG_BUFFER_FULL ../dbinc/db.in /^#define DB_LOG_BUFFER_FULL (-30993)\/* In-memory l/ -DB_LOG_CHKPNT ../dbinc/db.in /^#define DB_LOG_CHKPNT 0x002 \/* Flush supports a / -DB_LOG_COMMIT ../dbinc/db.in /^#define DB_LOG_COMMIT 0x004 \/* Flush supports a / -DB_LOG_DISK ../dbinc/db.in /^#define DB_LOG_DISK 0x01 \/* Log record came from/ -DB_LOG_INMEMORY ../dbinc/db.in /^#define DB_LOG_INMEMORY 0x00100000\/* Store / -DB_LOG_LOCKED ../dbinc/db.in /^#define DB_LOG_LOCKED 0x02 \/* Log region already/ -DB_LOG_NOCOPY ../dbinc/db.in /^#define DB_LOG_NOCOPY 0x008 \/* Don't copy data */ -DB_LOG_NOT_DURABLE ../dbinc/db.in /^#define DB_LOG_NOT_DURABLE 0x010 \/* Do not log; k/ -DB_LOG_PERM_42_44 ../dbinc/rep.h /^#define DB_LOG_PERM_42_44 0x20$/ -DB_LOG_RESEND_42_44 ../dbinc/rep.h /^#define DB_LOG_RESEND_42_44 0x40$/ -DB_LOG_SILENT_ERR ../dbinc/db.in /^#define DB_LOG_SILENT_ERR 0x04 \/* Turn-off error / -DB_LOG_STAT ../dbinc/db.in /^struct __db_log_stat; typedef struct __db_log_stat/ -DB_LOG_WRNOSYNC ../dbinc/db.in /^#define DB_LOG_WRNOSYNC 0x020 \/* Write, don't sy/ -DB_LSN ../dbinc/db.in /^struct __db_lsn; typedef struct __db_lsn DB_LSN;$/ -DB_LSN_OFF_NOTSET ../dbinc/db_int.in /^#define DB_LSN_OFF_NOTSET -1 \/* Not yet set. *\// -DB_LSN_STACK_SIZE ../dbinc/db_dispatch.h /^#define DB_LSN_STACK_SIZE 4$/ -DB_MAC_KEY ../dbinc/db_int.in /^#define DB_MAC_KEY 20 \/* Bytes per MAC checksum / -DB_MAC_MAGIC ../dbinc/hmac.h /^#define DB_MAC_MAGIC "mac derivation key magic val/ -DB_MAXMMAPSIZE ../mp/mp_fopen.c /^#define DB_MAXMMAPSIZE (10 * 1024 * 1024) \/* 10 M/ -DB_MAXPATHLEN ../dbinc/db_int.in /^#define DB_MAXPATHLEN 1024$/ -DB_MAX_PAGES ../dbinc/db.in /^#define DB_MAX_PAGES 0xffffffff \/* >= # of pages / -DB_MAX_PGSIZE ../dbinc/db_int.in /^#define DB_MAX_PGSIZE 0x010000 \/* Maximum page si/ -DB_MAX_RECORDS ../dbinc/db.in /^#define DB_MAX_RECORDS 0xffffffff \/* >= # of reco/ -DB_METHOD ../cxx/cxx_db.cpp /^\/\/ Helper macros for simple methods that pass th/ +DB_IV_BYTES ../dbinc/db_int.in 667 +DB_JOINENV ../dbinc/db.in 296 +DB_JOIN_ITEM ../dbinc/db.in 1410 +DB_JOIN_NOSORT ../dbinc/db.in 403 +DB_KEYEMPTY ../dbinc/db.in 1457 +DB_KEYEXIST ../dbinc/db.in 1458 +DB_KEYFIRST ../dbinc/db.in 1411 +DB_KEYLAST ../dbinc/db.in 1412 +DB_KEY_RANGE ../dbinc/db.in 182 +DB_LAST ../dbinc/db.in 1413 +DB_LOCK ../dbinc/db.in 148 +DB_LOCKDOWN ../dbinc/db.in 290 +DB_LOCKER ../dbinc/db.in 149 +DB_LOCKER_DELETED ../dbinc/lock.h 163 +DB_LOCKER_DIRTY ../dbinc/lock.h 164 +DB_LOCKER_INABORT ../dbinc/lock.h 165 +DB_LOCKER_TIMEOUT ../dbinc/lock.h 166 +DB_LOCKREQ ../dbinc/db.in 150 +DB_LOCKTAB ../dbinc/db.in 151 +DB_LOCKVERSION ../dbinc/db.in 468 +DB_LOCK_ABORT ../dbinc/db.in 488 +DB_LOCK_CDB_N ../lock/lock_region.c 41 +DB_LOCK_DEADLOCK ../dbinc/db.in 1459 +DB_LOCK_DEFAULT ../dbinc/db.in 477 +DB_LOCK_DEFAULT_N ../dbinc/lock.h 16 +DB_LOCK_DOALL ../dbinc/lock.h 225 +DB_LOCK_EXPIRE ../dbinc/db.in 478 +DB_LOCK_FREE ../dbinc/lock.h 226 +DB_LOCK_HSTAT ../dbinc/db.in 147 +DB_LOCK_ILOCK ../dbinc/db.in 145 +DB_LOCK_INVALIDID ../dbinc/lock.h 23 +DB_LOCK_MAXID ../dbinc/lock.h 24 +DB_LOCK_MAXLOCKS ../dbinc/db.in 479 +DB_LOCK_MAXWRITE ../dbinc/db.in 480 +DB_LOCK_MINLOCKS ../dbinc/db.in 481 +DB_LOCK_MINWRITE ../dbinc/db.in 482 +DB_LOCK_NOPROMOTE ../dbinc/lock.h 227 +DB_LOCK_NORUN ../dbinc/db.in 476 +DB_LOCK_NOTGRANTED ../dbinc/db.in 1460 +DB_LOCK_NOWAIT ../dbinc/db.in 489 +DB_LOCK_NOWAITERS ../dbinc/lock.h 229 +DB_LOCK_OLDEST ../dbinc/db.in 483 +DB_LOCK_RANDOM ../dbinc/db.in 484 +DB_LOCK_RECORD ../dbinc/db.in 490 +DB_LOCK_RIW_N ../lock/lock_region.c 22 +DB_LOCK_SET_TIMEOUT ../dbinc/db.in 491 +DB_LOCK_STAT ../dbinc/db.in 146 +DB_LOCK_SWITCH ../dbinc/db.in 492 +DB_LOCK_UNLINK ../dbinc/lock.h 228 +DB_LOCK_UPGRADE ../dbinc/db.in 493 +DB_LOCK_YOUNGEST ../dbinc/db.in 485 +DB_LOG ../dbinc/db.in 152 +DB_LOGC ../dbinc/db.in 153 +DB_LOGFILEID_INVALID ../dbinc/db.in 1534 +DB_LOGMAGIC ../dbinc/db.in 642 +DB_LOGOLDVER ../dbinc/db.in 641 +DB_LOGVERSION ../dbinc/db.in 640 +DB_LOGVERSION_42 ../dbinc/rep.h 95 +DB_LOGVERSION_43 ../dbinc/rep.h 96 +DB_LOGVERSION_44 ../dbinc/rep.h 97 +DB_LOGVERSION_45 ../dbinc/rep.h 98 +DB_LOGVERSION_46 ../dbinc/rep.h 99 +DB_LOG_AUTOREMOVE ../dbinc/db.in 337 +DB_LOG_BUFFER_FULL ../dbinc/db.in 1461 +DB_LOG_CHKPNT ../dbinc/db.in 652 +DB_LOG_COMMIT ../dbinc/db.in 653 +DB_LOG_DISK ../dbinc/db.in 713 +DB_LOG_INMEMORY ../dbinc/db.in 338 +DB_LOG_LOCKED ../dbinc/db.in 714 +DB_LOG_NOCOPY ../dbinc/db.in 654 +DB_LOG_NOT_DURABLE ../dbinc/db.in 655 +DB_LOG_PERM_42_44 ../dbinc/rep.h 535 +DB_LOG_RESEND_42_44 ../dbinc/rep.h 536 +DB_LOG_SILENT_ERR ../dbinc/db.in 715 +DB_LOG_STAT ../dbinc/db.in 154 +DB_LOG_WRNOSYNC ../dbinc/db.in 656 +DB_LSN ../dbinc/db.in 155 +DB_LSN_OFF_NOTSET ../dbinc/db_int.in 602 +DB_LSN_STACK_SIZE ../dbinc/db_dispatch.h 75 +DB_MAC_KEY ../dbinc/db_int.in 668 +DB_MAC_MAGIC ../dbinc/hmac.h 31 +DB_MAXMMAPSIZE ../mp/mp_fopen.c 489 +DB_MAXPATHLEN ../dbinc/db_int.in 346 +DB_MAX_PAGES ../dbinc/db.in 118 +DB_MAX_PGSIZE ../dbinc/db_int.in 135 +DB_MAX_RECORDS ../dbinc/db.in 121 +DB_MEMP_SUPPRESS_WRITE ../dbinc/mp.h 213 +DB_MEMP_SYNC_INTERRUPT ../dbinc/mp.h 214 +DB_METHOD ../cxx/cxx_db.cpp /^#define DB_METHOD(_name, _argspec, _arglist, _reto/ DB_METHOD_QUIET ../cxx/cxx_db.cpp /^#define DB_METHOD_QUIET(_name, _argspec, _arglist)/ DB_METHOD_VOID ../cxx/cxx_db.cpp /^#define DB_METHOD_VOID(_name, _argspec, _arglist) / -DB_MINPAGECACHE ../dbinc/db_int.in /^#define DB_MINPAGECACHE 16$/ -DB_MIN_PGSIZE ../dbinc/db_int.in /^#define DB_MIN_PGSIZE 0x000200 \/* Minimum page si/ -DB_MPOOL ../dbinc/db.in /^struct __db_mpool; typedef struct __db_mpool DB_MP/ -DB_MPOOLFILE ../dbinc/db.in /^struct __db_mpoolfile; typedef struct __db_mpoolfi/ -DB_MPOOLFILE_METHOD ../cxx/cxx_mpool.cpp /^\/\/ Helper macros for simple methods that pass th/ +DB_MINPAGECACHE ../dbinc/db_int.in 140 +DB_MIN_PGSIZE ../dbinc/db_int.in 134 +DB_MPOOL ../dbinc/db.in 156 +DB_MPOOLFILE ../dbinc/db.in 159 +DB_MPOOLFILE_METHOD ../cxx/cxx_mpool.cpp /^#define DB_MPOOLFILE_METHOD(_name, _argspec, _argl/ DB_MPOOLFILE_METHOD_VOID ../cxx/cxx_mpool.cpp /^#define DB_MPOOLFILE_METHOD_VOID(_name, _argspec, / -DB_MPOOL_CREATE ../dbinc/db.in /^#define DB_MPOOL_CREATE 0x001 \/* Create a page. / -DB_MPOOL_DIRTY ../dbinc/db.in /^#define DB_MPOOL_DIRTY 0x002 \/* Get page for an / -DB_MPOOL_DISCARD ../dbinc/db.in /^#define DB_MPOOL_DISCARD 0x001 \/* Don't cache the/ -DB_MPOOL_EDIT ../dbinc/db.in /^#define DB_MPOOL_EDIT 0x004 \/* Modify without co/ -DB_MPOOL_FREE ../dbinc/db.in /^#define DB_MPOOL_FREE 0x008 \/* Free page if pres/ -DB_MPOOL_FSTAT ../dbinc/db.in /^struct __db_mpool_fstat;typedef struct __db_mpool_/ -DB_MPOOL_HASH ../dbinc/mp.h /^struct __db_mpool_hash; typedef struct __db_mpool_/ -DB_MPOOL_LAST ../dbinc/db.in /^#define DB_MPOOL_LAST 0x010 \/* Return the last p/ -DB_MPOOL_NEW ../dbinc/db.in /^#define DB_MPOOL_NEW 0x020 \/* Create a new page./ -DB_MPOOL_NOFILE ../dbinc/db.in /^#define DB_MPOOL_NOFILE 0x001 \/* Never open a ba/ -DB_MPOOL_STAT ../dbinc/db.in /^struct __db_mpool_stat; typedef struct __db_mpool_/ -DB_MPOOL_UNLINK ../dbinc/db.in /^#define DB_MPOOL_UNLINK 0x002 \/* Unlink the file/ -DB_MPREG ../dbinc/mp.h /^struct __db_mpreg; typedef struct __db_mpreg DB_MP/ -DB_MSGBUF ../dbinc/db_int.in /^} DB_MSGBUF;$/ +DB_MPOOL_CREATE ../dbinc/db.in 762 +DB_MPOOL_DIRTY ../dbinc/db.in 763 +DB_MPOOL_DISCARD ../dbinc/db.in 770 +DB_MPOOL_EDIT ../dbinc/db.in 764 +DB_MPOOL_FREE ../dbinc/db.in 765 +DB_MPOOL_FSTAT ../dbinc/db.in 157 +DB_MPOOL_HASH ../dbinc/mp.h 19 +DB_MPOOL_LAST ../dbinc/db.in 766 +DB_MPOOL_NEW ../dbinc/db.in 767 +DB_MPOOL_NOFILE ../dbinc/db.in 773 +DB_MPOOL_STAT ../dbinc/db.in 158 +DB_MPOOL_UNLINK ../dbinc/db.in 774 +DB_MPREG ../dbinc/mp.h 20 DB_MSGBUF_FLUSH ../dbinc/db_int.in /^#define DB_MSGBUF_FLUSH(dbenv, a) do { \\$/ DB_MSGBUF_INIT ../dbinc/db_int.in /^#define DB_MSGBUF_INIT(a) do { \\$/ -DB_MULTIPLE ../dbinc/db.in /^#define DB_MULTIPLE 0x10000000 \/* Return multiple/ +DB_MULTIPLE ../dbinc/db.in 1442 DB_MULTIPLE_INIT ../dbinc/db.in /^#define DB_MULTIPLE_INIT(pointer, dbt) \\$/ -DB_MULTIPLE_KEY ../dbinc/db.in /^#define DB_MULTIPLE_KEY 0x20000000 \/* Return mult/ +DB_MULTIPLE_KEY ../dbinc/db.in 1443 DB_MULTIPLE_KEY_NEXT ../dbinc/db.in /^#define DB_MULTIPLE_KEY_NEXT(pointer, dbt, retkey,/ DB_MULTIPLE_NEXT ../dbinc/db.in /^#define DB_MULTIPLE_NEXT(pointer, dbt, retdata, re/ DB_MULTIPLE_RECNO_NEXT ../dbinc/db.in /^#define DB_MULTIPLE_RECNO_NEXT(pointer, dbt, recno/ -DB_MULTIVERSION ../dbinc/db.in /^#define DB_MULTIVERSION 0x0000008 \/* Multiv/ -DB_MUTEX ../dbinc/db.in /^struct __db_mutex_t; typedef struct __db_mutex_t D/ -DB_MUTEXMGR ../dbinc/db.in /^struct __db_mutexmgr; typedef struct __db_mutexmgr/ -DB_MUTEXREGION ../dbinc/mutex_int.h /^} DB_MUTEXREGION;$/ -DB_MUTEX_ALLOCATED ../dbinc/db.in /^#define DB_MUTEX_ALLOCATED 0x01 \/* Mutex currentl/ -DB_MUTEX_LOCKED ../dbinc/db.in /^#define DB_MUTEX_LOCKED 0x02 \/* Mutex currently / -DB_MUTEX_LOGICAL_LOCK ../dbinc/db.in /^#define DB_MUTEX_LOGICAL_LOCK 0x04 \/* Mutex backs/ -DB_MUTEX_PROCESS_ONLY ../dbinc/db.in /^#define DB_MUTEX_PROCESS_ONLY 0x08 \/* Mutex priva/ -DB_MUTEX_SELF_BLOCK ../dbinc/db.in /^#define DB_MUTEX_SELF_BLOCK 0x10 \/* Must be able / -DB_MUTEX_STAT ../dbinc/db.in /^struct __db_mutex_stat; typedef struct __db_mutex_/ -DB_NEEDSPLIT ../dbinc/db.in /^#define DB_NEEDSPLIT (-30897)\/* Page needs to be/ -DB_NEXT ../dbinc/db.in /^#define DB_NEXT 16 \/* c_get(), DB_LOGC->get() */ -DB_NEXT_DUP ../dbinc/db.in /^#define DB_NEXT_DUP 17 \/* c_get() *\/$/ -DB_NEXT_NODUP ../dbinc/db.in /^#define DB_NEXT_NODUP 18 \/* c_get() *\/$/ -DB_NODUPDATA ../dbinc/db.in /^#define DB_NODUPDATA 19 \/* put(), c_put() *\/$/ -DB_NOLOCKING ../dbinc/db.in /^#define DB_NOLOCKING 0x00200000\/* Set locki/ -DB_NOMMAP ../dbinc/db.in /^#define DB_NOMMAP 0x0000010 \/* Don't mmap u/ +DB_MULTIVERSION ../dbinc/db.in 216 +DB_MUTEX ../dbinc/db.in 161 +DB_MUTEXMGR ../dbinc/db.in 162 +DB_MUTEX_ALLOCATED ../dbinc/db.in 439 +DB_MUTEX_LOCKED ../dbinc/db.in 440 +DB_MUTEX_LOGICAL_LOCK ../dbinc/db.in 441 +DB_MUTEX_PROCESS_ONLY ../dbinc/db.in 442 +DB_MUTEX_SELF_BLOCK ../dbinc/db.in 443 +DB_MUTEX_STAT ../dbinc/db.in 160 +DB_NEEDSPLIT ../dbinc/db.in 1488 +DB_NEXT ../dbinc/db.in 1414 +DB_NEXT_DUP ../dbinc/db.in 1415 +DB_NEXT_NODUP ../dbinc/db.in 1416 +DB_NODUPDATA ../dbinc/db.in 1417 +DB_NOLOCKING ../dbinc/db.in 339 +DB_NOMMAP ../dbinc/db.in 217 DB_NONBLOCK ../dbinc/db_int.in /^#define DB_NONBLOCK(C) ((C)->txn != NULL && F_ISSE/ -DB_NOORDERCHK ../dbinc/db.in /^#define DB_NOORDERCHK 0x0000002 \/* Skip sor/ -DB_NOOVERWRITE ../dbinc/db.in /^#define DB_NOOVERWRITE 20 \/* put() *\/$/ -DB_NOPANIC ../dbinc/db.in /^#define DB_NOPANIC 0x00400000\/* Set panic s/ -DB_NOSERVER ../dbinc/db.in /^#define DB_NOSERVER (-30992)\/* Server panic retu/ -DB_NOSERVER_HOME ../dbinc/db.in /^#define DB_NOSERVER_HOME (-30991)\/* Bad home sent/ -DB_NOSERVER_ID ../dbinc/db.in /^#define DB_NOSERVER_ID (-30990)\/* Bad ID sent to/ -DB_NOSYNC ../dbinc/db.in /^#define DB_NOSYNC 21 \/* close() *\/$/ -DB_NOTFOUND ../dbinc/db.in /^#define DB_NOTFOUND (-30989)\/* Key\/data pair no/ -DB_NO_AUTO_COMMIT ../dbinc/db.in /^#define DB_NO_AUTO_COMMIT 0x0010000 \/* Overri/ +DB_NOORDERCHK ../dbinc/db.in 409 +DB_NOOVERWRITE ../dbinc/db.in 1418 +DB_NOPANIC ../dbinc/db.in 340 +DB_NOSERVER ../dbinc/db.in 1462 +DB_NOSERVER_HOME ../dbinc/db.in 1463 +DB_NOSERVER_ID ../dbinc/db.in 1464 +DB_NOSYNC ../dbinc/db.in 1419 +DB_NOTFOUND ../dbinc/db.in 1465 +DB_NO_AUTO_COMMIT ../dbinc/db.in 303 DB_NTOHL ../dbinc/db_swap.h /^#define DB_NTOHL(p) do { \\$/ -DB_ODDFILESIZE ../dbinc/db.in /^#define DB_ODDFILESIZE 0x0010000 \/* Truncat/ -DB_OK_BTREE ../dbinc/db.in /^#define DB_OK_BTREE 0x01$/ -DB_OK_HASH ../dbinc/db.in /^#define DB_OK_HASH 0x02$/ -DB_OK_QUEUE ../dbinc/db.in /^#define DB_OK_QUEUE 0x04$/ -DB_OK_RECNO ../dbinc/db.in /^#define DB_OK_RECNO 0x08$/ -DB_OLD_VERSION ../dbinc/db.in /^#define DB_OLD_VERSION (-30988)\/* Out-of-date ve/ -DB_OPFLAGS_MASK ../dbinc/db.in /^#define DB_OPFLAGS_MASK 0x000000ff \/* Mask for op/ -DB_OPNOTSUP ../dbinc/db_int.in /^#define DB_OPNOTSUP EOPNOTSUPP$/ -DB_ORDERCHKONLY ../dbinc/db.in /^#define DB_ORDERCHKONLY 0x0000004 \/* Only p/ -DB_OSO_ABSMODE ../dbinc/os.h /^#define DB_OSO_ABSMODE 0x0001 \/* Absolute mode s/ -DB_OSO_CREATE ../dbinc/os.h /^#define DB_OSO_CREATE 0x0002 \/* POSIX: O_CREAT */ -DB_OSO_DIRECT ../dbinc/os.h /^#define DB_OSO_DIRECT 0x0004 \/* Don't buffer the/ -DB_OSO_DSYNC ../dbinc/os.h /^#define DB_OSO_DSYNC 0x0008 \/* POSIX: O_DSYNC. */ -DB_OSO_EXCL ../dbinc/os.h /^#define DB_OSO_EXCL 0x0010 \/* POSIX: O_EXCL *\/$/ -DB_OSO_RDONLY ../dbinc/os.h /^#define DB_OSO_RDONLY 0x0020 \/* POSIX: O_RDONLY / -DB_OSO_REGION ../dbinc/os.h /^#define DB_OSO_REGION 0x0040 \/* Opening a region/ -DB_OSO_SEQ ../dbinc/os.h /^#define DB_OSO_SEQ 0x0080 \/* Expected sequential/ -DB_OSO_TEMP ../dbinc/os.h /^#define DB_OSO_TEMP 0x0100 \/* Remove after last / -DB_OSO_TRUNC ../dbinc/os.h /^#define DB_OSO_TRUNC 0x0200 \/* POSIX: O_TRUNC */ -DB_OVERWRITE ../dbinc/db.in /^#define DB_OVERWRITE 0x00800000\/* Overwrite/ -DB_PAGE_DB_LEN ../dbinc/db_page.h /^#define DB_PAGE_DB_LEN 32$/ -DB_PAGE_LOCK ../dbinc/db.in /^#define DB_PAGE_LOCK 3$/ -DB_PAGE_NOTFOUND ../dbinc/db.in /^#define DB_PAGE_NOTFOUND (-30987)\/* Requested pag/ -DB_PAGE_QUEUE_LEN ../dbinc/db_page.h /^#define DB_PAGE_QUEUE_LEN 0$/ -DB_PANIC_ENVIRONMENT ../dbinc/db.in /^#define DB_PANIC_ENVIRONMENT 0x01000000\/* Set pa/ +DB_ODDFILESIZE ../dbinc/db.in 371 +DB_OK_BTREE ../dbinc/db.in 1764 +DB_OK_HASH ../dbinc/db.in 1765 +DB_OK_QUEUE ../dbinc/db.in 1766 +DB_OK_RECNO ../dbinc/db.in 1767 +DB_OLD_VERSION ../dbinc/db.in 1466 +DB_OPFLAGS_MASK ../dbinc/db.in 1432 +DB_OPNOTSUP ../dbinc/db_int.in 329 +DB_ORDERCHKONLY ../dbinc/db.in 410 +DB_OSO_ABSMODE ../dbinc/os.h 68 +DB_OSO_CREATE ../dbinc/os.h 69 +DB_OSO_DIRECT ../dbinc/os.h 70 +DB_OSO_DSYNC ../dbinc/os.h 71 +DB_OSO_EXCL ../dbinc/os.h 72 +DB_OSO_RDONLY ../dbinc/os.h 73 +DB_OSO_REGION ../dbinc/os.h 74 +DB_OSO_SEQ ../dbinc/os.h 75 +DB_OSO_TEMP ../dbinc/os.h 76 +DB_OSO_TRUNC ../dbinc/os.h 77 +DB_OVERFLOWED_DBT ../dbinc/cxx_int.h /^#define DB_OVERFLOWED_DBT(dbt) \\$/ +DB_OVERWRITE ../dbinc/db.in 341 +DB_PAGE_DB_LEN ../dbinc/db_page.h 60 +DB_PAGE_LOCK ../dbinc/db.in 611 +DB_PAGE_NOTFOUND ../dbinc/db.in 1467 +DB_PAGE_QUEUE_LEN ../dbinc/db_page.h 61 +DB_PANIC_ENVIRONMENT ../dbinc/db.in 342 DB_PCT ../dbinc/db_int.in /^#define DB_PCT(v, total) \\$/ DB_PCT_PG ../dbinc/db_int.in /^#define DB_PCT_PG(v, total, pgsize) \\$/ -DB_PGINFO ../dbinc/db_int.in /^} DB_PGINFO;$/ -DB_PKG ../libdb_java/db_java_wrap.c /^#define DB_PKG "com\/sleepycat\/db\/"$/ -DB_POSITION ../dbinc/db.in /^#define DB_POSITION 22 \/* c_dup() *\/$/ -DB_PREPLIST ../dbinc/db.in /^struct __db_preplist; typedef struct __db_preplist/ -DB_PREV ../dbinc/db.in /^#define DB_PREV 23 \/* c_get(), DB_LOGC->get() */ -DB_PREV_NODUP ../dbinc/db.in /^#define DB_PREV_NODUP 24 \/* c_get(), DB_LOGC->ge/ -DB_PRINTABLE ../dbinc/db.in /^#define DB_PRINTABLE 0x0000020 \/* Use print/ -DB_PRIVATE ../dbinc/db.in /^#define DB_PRIVATE 0x0200000 \/* DB_ENV is p/ -DB_PR_PAGE ../dbinc/db.in /^#define DB_PR_PAGE 0x0000008 \/* Show page c/ -DB_PR_RECOVERYTEST ../dbinc/db.in /^#define DB_PR_RECOVERYTEST 0x0000010 \/* Recove/ -DB_QAMMAGIC ../dbinc/db.in /^#define DB_QAMMAGIC 0x042253$/ -DB_QAMOLDVER ../dbinc/db.in /^#define DB_QAMOLDVER 3 \/* Oldest queue version s/ -DB_QAMVERSION ../dbinc/db.in /^#define DB_QAMVERSION 4 \/* Current queue version/ -DB_QUEUE_STAT ../dbinc/db.in /^struct __db_qam_stat; typedef struct __db_qam_stat/ -DB_RDONLY ../dbinc/db.in /^#define DB_RDONLY 0x0000020 \/* Read-only (O/ -DB_RDWRMASTER ../dbinc/db.in /^#define DB_RDWRMASTER 0x0020000 \/* UNDOC: a/ -DB_READ_COMMITTED ../dbinc/db.in /^#define DB_READ_COMMITTED 0x04000000\/* Degree/ -DB_READ_UNCOMMITTED ../dbinc/db.in /^#define DB_READ_UNCOMMITTED 0x08000000\/* Degree/ -DB_REAL_ERR ../dbinc/debug.h /^#define DB_REAL_ERR(env, error, error_set, default/ +DB_PKG ../libdb_java/db_java_wrap.c 193 +DB_POSITION ../dbinc/db.in 1420 +DB_PREPLIST ../dbinc/db.in 163 +DB_PREV ../dbinc/db.in 1421 +DB_PREV_DUP ../dbinc/db.in 1422 +DB_PREV_NODUP ../dbinc/db.in 1423 +DB_PRINTABLE ../dbinc/db.in 413 +DB_PRIVATE ../dbinc/db.in 291 +DB_PR_PAGE ../dbinc/db.in 411 +DB_PR_RECOVERYTEST ../dbinc/db.in 412 +DB_QAMMAGIC ../dbinc/db.in 1390 +DB_QAMOLDVER ../dbinc/db.in 1389 +DB_QAMVERSION ../dbinc/db.in 1388 +DB_QUEUE_STAT ../dbinc/db.in 164 +DB_RDONLY ../dbinc/db.in 218 +DB_RDWRMASTER ../dbinc/db.in 304 +DB_READ_COMMITTED ../dbinc/db.in 253 +DB_READ_UNCOMMITTED ../dbinc/db.in 256 +DB_REAL_ERR ../dbinc/debug.h /^#define DB_REAL_ERR(env, error, error_set, app_cal/ DB_REAL_MSG ../dbinc/debug.h /^#define DB_REAL_MSG(env, fmt) { \\$/ -DB_RECNUM ../dbinc/db.in /^#define DB_RECNUM 0x00080000 \/* Btree: reco/ -DB_RECORD_LOCK ../dbinc/db.in /^#define DB_RECORD_LOCK 2$/ -DB_RECOVER ../dbinc/db.in /^#define DB_RECOVER 0x0000040 \/* Run normal / -DB_RECOVER_FATAL ../dbinc/db.in /^#define DB_RECOVER_FATAL 0x0400000 \/* Run ca/ +DB_RECNUM ../dbinc/db.in 381 +DB_RECORD_LOCK ../dbinc/db.in 610 +DB_RECOVER ../dbinc/db.in 219 +DB_RECOVER_FATAL ../dbinc/db.in 292 DB_REDO ../dbinc/db.in /^#define DB_REDO(op) ((op) == DB_TXN_FORWARD_ROLL |/ -DB_REGENV_REPLOCKED ../dbinc/region.h /^#define DB_REGENV_REPLOCKED 0x0001 \/* Env locked / -DB_REGENV_TIMEOUT ../dbinc/region.h /^#define DB_REGENV_TIMEOUT 30 \/* Backup timeout. */ -DB_REGION_ENV ../dbinc/region.h /^#define DB_REGION_ENV "__db.001" \/* Primary envi/ -DB_REGION_FMT ../dbinc/region.h /^#define DB_REGION_FMT "__db.%03d" \/* Region file/ -DB_REGION_INIT ../dbinc/db.in /^#define DB_REGION_INIT 0x20000000\/* Page-fa/ -DB_REGION_MAGIC ../dbinc/db.in /^#define DB_REGION_MAGIC 0x120897 \/* Environment m/ -DB_REGION_NAME_LENGTH ../dbinc/region.h /^#define DB_REGION_NAME_LENGTH 8 \/* Length of fil/ -DB_REGION_PREFIX ../dbinc/region.h /^#define DB_REGION_PREFIX "__db" \/* DB file name / -DB_REGISTER ../dbinc/db.in /^#define DB_REGISTER 0x0800000 \/* Multi-proc/ -DB_REM_BIG ../dbinc/db_am.h /^#define DB_REM_BIG 4$/ -DB_REM_DUP ../dbinc/db_am.h /^#define DB_REM_DUP 2$/ -DB_REM_PAGE_COMPAT ../dbinc/db_am.h /^#define DB_REM_PAGE_COMPAT 6 \/* Compatibility for/ -DB_RENAMEMAGIC ../dbinc/db.in /^#define DB_RENAMEMAGIC 0x030800 \/* File has been / -DB_RENUMBER ../dbinc/db.in /^#define DB_RENUMBER 0x00100000 \/* Recno: re/ -DB_REP ../dbinc/db.in /^struct __db_rep; typedef struct __db_rep DB_REP;$/ -DB_REPMGR_ACK ../dbinc/repmgr.h /^} DB_REPMGR_ACK;$/ -DB_REPMGR_ACKS_ALL ../dbinc/db.in /^#define DB_REPMGR_ACKS_ALL 1$/ -DB_REPMGR_ACKS_ALL_PEERS ../dbinc/db.in /^#define DB_REPMGR_ACKS_ALL_PEERS 2$/ -DB_REPMGR_ACKS_NONE ../dbinc/db.in /^#define DB_REPMGR_ACKS_NONE 3$/ -DB_REPMGR_ACKS_ONE ../dbinc/db.in /^#define DB_REPMGR_ACKS_ONE 4$/ -DB_REPMGR_ACKS_ONE_PEER ../dbinc/db.in /^#define DB_REPMGR_ACKS_ONE_PEER 5$/ -DB_REPMGR_ACKS_QUORUM ../dbinc/db.in /^#define DB_REPMGR_ACKS_QUORUM 6$/ -DB_REPMGR_CONNECTED ../dbinc/db.in /^#define DB_REPMGR_CONNECTED 0x01$/ -DB_REPMGR_DISCONNECTED ../dbinc/db.in /^#define DB_REPMGR_DISCONNECTED 0x02$/ -DB_REPMGR_HANDSHAKE ../dbinc/repmgr.h /^} DB_REPMGR_HANDSHAKE;$/ -DB_REPMGR_PEER ../dbinc/db.in /^#define DB_REPMGR_PEER 0x01$/ -DB_REPMGR_SITE ../dbinc/db.in /^ typedef struct __db_repmgr_site DB_REPMGR_SITE;/ -DB_REPMGR_VERSION ../dbinc/repmgr.h /^#define DB_REPMGR_VERSION 1$/ -DB_REPVERSION ../dbinc/rep.h /^#define DB_REPVERSION 3$/ -DB_REPVERSION_42 ../dbinc/rep.h /^#define DB_REPVERSION_42 1$/ -DB_REPVERSION_43 ../dbinc/rep.h /^#define DB_REPVERSION_43 2$/ -DB_REPVERSION_44 ../dbinc/rep.h /^#define DB_REPVERSION_44 3$/ -DB_REPVERSION_45 ../dbinc/rep.h /^#define DB_REPVERSION_45 3$/ -DB_REPVERSION_INVALID ../dbinc/rep.h /^#define DB_REPVERSION_INVALID 0$/ -DB_REP_ACK_TIMEOUT ../dbinc/db.in /^#define DB_REP_ACK_TIMEOUT 1$/ -DB_REP_ANYWHERE ../dbinc/db.in /^#define DB_REP_ANYWHERE 0x0000001 \/* Messag/ -DB_REP_BULKOVF ../dbinc/db.in /^#define DB_REP_BULKOVF (-30896)\/* Rep bulk buffe/ -DB_REP_CLIENT ../dbinc/db.in /^#define DB_REP_CLIENT 1$/ -DB_REP_CONF_BULK ../dbinc/db.in /^#define DB_REP_CONF_BULK 0x0001 \/* Bulk transfer./ -DB_REP_CONF_DELAYCLIENT ../dbinc/db.in /^#define DB_REP_CONF_DELAYCLIENT 0x0002 \/* Delay c/ -DB_REP_CONF_NOAUTOINIT ../dbinc/db.in /^#define DB_REP_CONF_NOAUTOINIT 0x0004 \/* No autom/ -DB_REP_CONF_NOWAIT ../dbinc/db.in /^#define DB_REP_CONF_NOWAIT 0x0008 \/* Don't wait, / -DB_REP_CONNECTION_RETRY ../dbinc/db.in /^#define DB_REP_CONNECTION_RETRY 4$/ -DB_REP_DUPMASTER ../dbinc/db.in /^#define DB_REP_DUPMASTER (-30986)\/* There are two/ -DB_REP_EGENCHG ../dbinc/db.in /^#define DB_REP_EGENCHG (-30895)\/* Egen changed w/ -DB_REP_ELECTION ../dbinc/db.in /^#define DB_REP_ELECTION 2$/ -DB_REP_ELECTION_RETRY ../dbinc/db.in /^#define DB_REP_ELECTION_RETRY 3$/ -DB_REP_ELECTION_TIMEOUT ../dbinc/db.in /^#define DB_REP_ELECTION_TIMEOUT 2$/ -DB_REP_FULL_ELECTION ../dbinc/db.in /^#define DB_REP_FULL_ELECTION 3$/ -DB_REP_HANDLE_DEAD ../dbinc/db.in /^#define DB_REP_HANDLE_DEAD (-30985)\/* Rolled back/ -DB_REP_HOLDELECTION ../dbinc/db.in /^#define DB_REP_HOLDELECTION (-30984)\/* Time to ho/ -DB_REP_IGNORE ../dbinc/db.in /^#define DB_REP_IGNORE (-30983)\/* This msg should/ -DB_REP_ISPERM ../dbinc/db.in /^#define DB_REP_ISPERM (-30982)\/* Cached not writ/ -DB_REP_JOIN_FAILURE ../dbinc/db.in /^#define DB_REP_JOIN_FAILURE (-30981)\/* Unable to / -DB_REP_LOCKOUT ../dbinc/db.in /^#define DB_REP_LOCKOUT (-30980)\/* API\/Replicati/ -DB_REP_LOGREADY ../dbinc/db.in /^#define DB_REP_LOGREADY (-30894)\/* Rep log ready/ -DB_REP_MASTER ../dbinc/db.in /^#define DB_REP_MASTER 4$/ -DB_REP_MAX_GAP ../dbinc/rep.h /^#define DB_REP_MAX_GAP 128$/ -DB_REP_NEWMASTER ../dbinc/db.in /^#define DB_REP_NEWMASTER (-30979)\/* We have learn/ -DB_REP_NEWSITE ../dbinc/db.in /^#define DB_REP_NEWSITE (-30978)\/* New site enter/ -DB_REP_NOBUFFER ../dbinc/db.in /^#define DB_REP_NOBUFFER 0x0000002 \/* Do not/ -DB_REP_NOTPERM ../dbinc/db.in /^#define DB_REP_NOTPERM (-30977)\/* Permanent log / -DB_REP_PAGEDONE ../dbinc/db.in /^#define DB_REP_PAGEDONE (-30893)\/* This page was/ -DB_REP_PERMANENT ../dbinc/db.in /^#define DB_REP_PERMANENT 0x0000004 \/* Import/ -DB_REP_REQUEST_GAP ../dbinc/rep.h /^#define DB_REP_REQUEST_GAP 4$/ -DB_REP_REREQUEST ../dbinc/db.in /^#define DB_REP_REREQUEST 0x0000008 \/* This m/ -DB_REP_STAT ../dbinc/db.in /^struct __db_rep_stat; typedef struct __db_rep_stat/ -DB_REP_UNAVAIL ../dbinc/db.in /^#define DB_REP_UNAVAIL (-30976)\/* Site cannot cu/ +DB_REGENV_REPLOCKED ../dbinc/region.h 199 +DB_REGENV_TIMEOUT ../dbinc/region.h 201 +DB_REGION_ENV ../dbinc/region.h 117 +DB_REGION_FMT ../dbinc/region.h 116 +DB_REGION_INIT ../dbinc/db.in 347 +DB_REGION_MAGIC ../dbinc/db.in 2065 +DB_REGION_NAME_LENGTH ../dbinc/region.h 118 +DB_REGION_PREFIX ../dbinc/region.h 115 +DB_REGISTER ../dbinc/db.in 293 +DB_REM_BIG ../dbinc/db_am.h 42 +DB_REM_DUP ../dbinc/db_am.h 40 +DB_REM_PAGE_COMPAT ../dbinc/db_am.h 44 +DB_RENAMEMAGIC ../dbinc/db.in 1378 +DB_RENUMBER ../dbinc/db.in 382 +DB_REP ../dbinc/db.in 165 +DB_REPFLAGS_MASK ../dbinc/db.in 1162 +DB_REPMGR_ACKS_ALL ../dbinc/db.in 1167 +DB_REPMGR_ACKS_ALL_PEERS ../dbinc/db.in 1168 +DB_REPMGR_ACKS_NONE ../dbinc/db.in 1169 +DB_REPMGR_ACKS_ONE ../dbinc/db.in 1170 +DB_REPMGR_ACKS_ONE_PEER ../dbinc/db.in 1171 +DB_REPMGR_ACKS_QUORUM ../dbinc/db.in 1172 +DB_REPMGR_CONNECTED ../dbinc/db.in 1203 +DB_REPMGR_DISCONNECTED ../dbinc/db.in 1204 +DB_REPMGR_PEER ../dbinc/db.in 1195 +DB_REPMGR_SITE ../dbinc/db.in 168 +DB_REPMGR_STAT ../dbinc/db.in 170 +DB_REPMGR_VERSION ../dbinc/repmgr.h 291 +DB_REPVERSION ../dbinc/rep.h 106 +DB_REPVERSION_42 ../dbinc/rep.h 101 +DB_REPVERSION_43 ../dbinc/rep.h 102 +DB_REPVERSION_44 ../dbinc/rep.h 103 +DB_REPVERSION_45 ../dbinc/rep.h 104 +DB_REPVERSION_46 ../dbinc/rep.h 105 +DB_REPVERSION_INVALID ../dbinc/rep.h 100 +DB_REP_ACK_TIMEOUT ../dbinc/db.in 1175 +DB_REP_ANYWHERE ../dbinc/db.in 425 +DB_REP_BULKOVF ../dbinc/db.in 1489 +DB_REP_CHECKPOINT_DELAY ../dbinc/db.in 1176 +DB_REP_CLIENT ../dbinc/db.in 1158 +DB_REP_CONF_BULK ../dbinc/db.in 1146 +DB_REP_CONF_DELAYCLIENT ../dbinc/db.in 1147 +DB_REP_CONF_NOAUTOINIT ../dbinc/db.in 1148 +DB_REP_CONF_NOWAIT ../dbinc/db.in 1149 +DB_REP_CONNECTION_RETRY ../dbinc/db.in 1177 +DB_REP_DEFAULT_PRIORITY ../dbinc/db.in 1164 +DB_REP_DUPMASTER ../dbinc/db.in 1468 +DB_REP_EGENCHG ../dbinc/db.in 1490 +DB_REP_ELECTION ../dbinc/db.in 1159 +DB_REP_ELECTION_RETRY ../dbinc/db.in 1178 +DB_REP_ELECTION_TIMEOUT ../dbinc/db.in 1179 +DB_REP_FULL_ELECTION_TIMEOUT ../dbinc/db.in 1180 +DB_REP_HANDLE_DEAD ../dbinc/db.in 1469 +DB_REP_HOLDELECTION ../dbinc/db.in 1470 +DB_REP_IGNORE ../dbinc/db.in 1471 +DB_REP_ISPERM ../dbinc/db.in 1472 +DB_REP_JOIN_FAILURE ../dbinc/db.in 1473 +DB_REP_LEASE_EXPIRED ../dbinc/db.in 1474 +DB_REP_LEASE_TIMEOUT ../dbinc/db.in 1181 +DB_REP_LOCKOUT ../dbinc/db.in 1475 +DB_REP_LOGREADY ../dbinc/db.in 1491 +DB_REP_MASTER ../dbinc/db.in 1160 +DB_REP_MAX_GAP ../dbinc/rep.h 210 +DB_REP_NEWMASTER ../dbinc/db.in 1492 +DB_REP_NEWSITE ../dbinc/db.in 1476 +DB_REP_NOBUFFER ../dbinc/db.in 426 +DB_REP_NOTPERM ../dbinc/db.in 1477 +DB_REP_PAGEDONE ../dbinc/db.in 1493 +DB_REP_PERMANENT ../dbinc/db.in 427 +DB_REP_REQUEST_GAP ../dbinc/rep.h 209 +DB_REP_REREQUEST ../dbinc/db.in 428 +DB_REP_STAT ../dbinc/db.in 166 +DB_REP_UNAVAIL ../dbinc/db.in 1478 DB_RETOK_DBCDEL ../dbinc/db_int.in /^#define DB_RETOK_DBCDEL(ret) ((ret) == 0 || (ret) / DB_RETOK_DBCGET ../dbinc/db_int.in /^#define DB_RETOK_DBCGET(ret) ((ret) == 0 || (ret) / DB_RETOK_DBCPUT ../dbinc/db_int.in /^#define DB_RETOK_DBCPUT(ret) ((ret) == 0 || (ret) / DB_RETOK_DBDEL ../dbinc/db_int.in /^#define DB_RETOK_DBDEL(ret) DB_RETOK_DBCDEL(ret)$/ DB_RETOK_DBGET ../dbinc/db_int.in /^#define DB_RETOK_DBGET(ret) DB_RETOK_DBCGET(ret)$/ DB_RETOK_DBPUT ../dbinc/db_int.in /^#define DB_RETOK_DBPUT(ret) ((ret) == 0 || (ret) =/ +DB_RETOK_EXISTS ../dbinc/db_int.in /^#define DB_RETOK_EXISTS(ret) DB_RETOK_DBCGET(ret)$/ DB_RETOK_LGGET ../dbinc/db_int.in /^#define DB_RETOK_LGGET(ret) ((ret) == 0 || (ret) =/ DB_RETOK_MPGET ../dbinc/db_int.in /^#define DB_RETOK_MPGET(ret) ((ret) == 0 || (ret) =/ DB_RETOK_REPPMSG ../dbinc/db_int.in /^#define DB_RETOK_REPPMSG(ret) ((ret) == 0 || \\$/ DB_RETOK_STD ../dbinc/db_int.in /^#define DB_RETOK_STD(ret) ((ret) == 0)$/ -DB_RETRY ../dbinc/os.h /^#define DB_RETRY 100$/ -DB_REVSPLITOFF ../dbinc/db.in /^#define DB_REVSPLITOFF 0x00200000 \/* Btree:/ -DB_RMW ../dbinc/db.in /^#define DB_RMW 0x40000000 \/* Acquire write lock / -DB_RPC2ND_CONCATDATAKEY ../dbinc/db_int.in /^#define DB_RPC2ND_CONCATDATAKEY 0x00400000 \/* cal/ -DB_RPC2ND_CONCATKEYDATA ../dbinc/db_int.in /^#define DB_RPC2ND_CONCATKEYDATA 0x00300000 \/* cal/ -DB_RPC2ND_CONSTANT ../dbinc/db_int.in /^#define DB_RPC2ND_CONSTANT 0x00700000 \/* callback/ -DB_RPC2ND_GETNAME ../dbinc/db_int.in /^#define DB_RPC2ND_GETNAME 0x00900000 \/* sj_getnam/ -DB_RPC2ND_GETZIP ../dbinc/db_int.in /^#define DB_RPC2ND_GETZIP 0x00800000 \/* sj_getzip / -DB_RPC2ND_MASK ../dbinc/db_int.in /^#define DB_RPC2ND_MASK 0x00f00000 \/* Reserved bi/ -DB_RPC2ND_NOOP ../dbinc/db_int.in /^#define DB_RPC2ND_NOOP 0x00200000 \/* callback_n(/ -DB_RPC2ND_REVERSECONCAT ../dbinc/db_int.in /^#define DB_RPC2ND_REVERSECONCAT 0x00500000 \/* cal/ -DB_RPC2ND_REVERSEDATA ../dbinc/db_int.in /^#define DB_RPC2ND_REVERSEDATA 0x00100000 \/* callb/ -DB_RPC2ND_TRUNCDATA ../dbinc/db_int.in /^#define DB_RPC2ND_TRUNCDATA 0x00600000 \/* callbac/ -DB_RPCCLIENT ../dbinc/db.in /^#define DB_RPCCLIENT 0x0000002 \/* An RPC cl/ -DB_RUNRECOVERY ../dbinc/db.in /^#define DB_RUNRECOVERY (-30975)\/* Panic return. / -DB_SALVAGE ../dbinc/db.in /^#define DB_SALVAGE 0x0000040 \/* Salvage wha/ -DB_SECONDARY_BAD ../dbinc/db.in /^#define DB_SECONDARY_BAD (-30974)\/* Secondary ind/ -DB_SEQUENCE ../dbinc/db.in /^struct __db_sequence; typedef struct __db_sequence/ -DB_SEQUENCE_OLDVER ../dbinc/db.in /^#define DB_SEQUENCE_OLDVER 1 \/* Oldest sequence/ -DB_SEQUENCE_STAT ../dbinc/db.in /^struct __db_seq_stat; typedef struct __db_seq_stat/ -DB_SEQUENCE_VERSION ../dbinc/db.in /^#define DB_SEQUENCE_VERSION 2 \/* Current sequenc/ -DB_SEQ_DEC ../dbinc/db.in /^#define DB_SEQ_DEC 0x00000001 \/* Decrement seque/ -DB_SEQ_INC ../dbinc/db.in /^#define DB_SEQ_INC 0x00000002 \/* Increment seque/ -DB_SEQ_RANGE_SET ../dbinc/db.in /^#define DB_SEQ_RANGE_SET 0x00000004 \/* Range set / -DB_SEQ_RECORD ../dbinc/db.in /^struct __db_seq_record; typedef struct __db_seq_re/ -DB_SEQ_WRAP ../dbinc/db.in /^#define DB_SEQ_WRAP 0x00000008 \/* Wrap sequence / -DB_SEQ_WRAPPED ../dbinc/db.in /^#define DB_SEQ_WRAPPED 0x00000010 \/* Just wrappe/ -DB_SERVER_DBFLAGS ../dbinc/db_server_int.h /^#define DB_SERVER_DBFLAGS (DB_NOMMAP | DB_RDONLY / -DB_SERVER_DBNOSHARE ../dbinc/db_server_int.h /^#define DB_SERVER_DBNOSHARE (DB_EXCL | DB_TRUNCAT/ -DB_SERVER_ENVFLAGS ../dbinc/db_server_int.h /^#define DB_SERVER_ENVFLAGS ( \\$/ -DB_SERVER_FLAGMASK ../dbinc/db_server_int.h /^#define DB_SERVER_FLAGMASK ( \\$/ -DB_SERVER_IDLETIMEOUT ../dbinc/db_server_int.h /^#define DB_SERVER_IDLETIMEOUT 86400 \/* 1 day *\/$/ -DB_SERVER_MAXTIMEOUT ../dbinc/db_server_int.h /^#define DB_SERVER_MAXTIMEOUT 1200 \/* 20 minutes */ -DB_SERVER_TIMEOUT ../dbinc/db_server_int.h /^#define DB_SERVER_TIMEOUT 300 \/* 5 minutes *\/$/ -DB_SET ../dbinc/db.in /^#define DB_SET 25 \/* c_get(), DB_LOGC->get() */ +DB_RETRY ../dbinc/os.h 17 +DB_REVSPLITOFF ../dbinc/db.in 383 +DB_RMW ../dbinc/db.in 1444 +DB_RPC2ND_CONCATDATAKEY ../dbinc/db_int.in 689 +DB_RPC2ND_CONCATKEYDATA ../dbinc/db_int.in 688 +DB_RPC2ND_CONSTANT ../dbinc/db_int.in 692 +DB_RPC2ND_GETNAME ../dbinc/db_int.in 694 +DB_RPC2ND_GETZIP ../dbinc/db_int.in 693 +DB_RPC2ND_MASK ../dbinc/db_int.in 684 +DB_RPC2ND_NOOP ../dbinc/db_int.in 687 +DB_RPC2ND_REVERSECONCAT ../dbinc/db_int.in 690 +DB_RPC2ND_REVERSEDATA ../dbinc/db_int.in 686 +DB_RPC2ND_TRUNCDATA ../dbinc/db_int.in 691 +DB_RPCCLIENT ../dbinc/db.in 269 +DB_RUNRECOVERY ../dbinc/db.in 1479 +DB_SALVAGE ../dbinc/db.in 414 +DB_SECONDARY_BAD ../dbinc/db.in 1480 +DB_SEQUENCE ../dbinc/db.in 173 +DB_SEQUENCE_OLDVER ../dbinc/db.in 1393 +DB_SEQUENCE_STAT ../dbinc/db.in 172 +DB_SEQUENCE_VERSION ../dbinc/db.in 1392 +DB_SEQ_DEC ../dbinc/db.in 1305 +DB_SEQ_INC ../dbinc/db.in 1306 +DB_SEQ_RANGE_SET ../dbinc/db.in 1307 +DB_SEQ_RECORD ../dbinc/db.in 171 +DB_SEQ_WRAP ../dbinc/db.in 1308 +DB_SEQ_WRAPPED ../dbinc/db.in 1309 +DB_SERVER_DBFLAGS ../dbinc/db_server_int.h 64 +DB_SERVER_DBNOSHARE ../dbinc/db_server_int.h 65 +DB_SERVER_ENVFLAGS ../dbinc/db_server_int.h 60 +DB_SERVER_FLAGMASK ../dbinc/db_server_int.h 31 +DB_SERVER_IDLETIMEOUT ../dbinc/db_server_int.h 18 +DB_SERVER_MAXTIMEOUT ../dbinc/db_server_int.h 17 +DB_SERVER_TIMEOUT ../dbinc/db_server_int.h 16 +DB_SET ../dbinc/db.in 1424 DB_SET_CALLBACK ../cxx/cxx_db.cpp /^#define DB_SET_CALLBACK(_cxxname, _name, _cxxargsp/ DB_SET_DBT ../dbinc/db_int.in /^#define DB_SET_DBT(dbt, d, s) do { \\$/ -DB_SET_LOCK_TIMEOUT ../dbinc/db.in /^#define DB_SET_LOCK_TIMEOUT 26 \/* set_timout() */ -DB_SET_RANGE ../dbinc/db.in /^#define DB_SET_RANGE 27 \/* c_get() *\/$/ -DB_SET_RECNO ../dbinc/db.in /^#define DB_SET_RECNO 28 \/* get(), c_get() *\/$/ +DB_SET_LOCK_TIMEOUT ../dbinc/db.in 496 +DB_SET_RANGE ../dbinc/db.in 1425 +DB_SET_RECNO ../dbinc/db.in 1426 DB_SET_TXN_LSNP ../dbinc/log.h /^#define DB_SET_TXN_LSNP(txn, blsnp, llsnp) do { / -DB_SET_TXN_NOW ../dbinc/db.in /^#define DB_SET_TXN_NOW 29 \/* set_timout() (inter/ -DB_SET_TXN_TIMEOUT ../dbinc/db.in /^#define DB_SET_TXN_TIMEOUT 30 \/* set_timout() *\// -DB_SNAPSHOT ../dbinc/db.in /^#define DB_SNAPSHOT 0x00400000 \/* Recno: sn/ -DB_STAT_ALL ../dbinc/db.in /^#define DB_STAT_ALL 0x0000002 \/* Print: Eve/ -DB_STAT_CLEAR ../dbinc/db.in /^#define DB_STAT_CLEAR 0x0000004 \/* Clear st/ -DB_STAT_LOCK_CONF ../dbinc/db.in /^#define DB_STAT_LOCK_CONF 0x0000008 \/* Print:/ -DB_STAT_LOCK_FLAGS ../lock/lock_stat.c /^#define DB_STAT_LOCK_FLAGS \\$/ -DB_STAT_LOCK_LOCKERS ../dbinc/db.in /^#define DB_STAT_LOCK_LOCKERS 0x0000010 \/* Print:/ -DB_STAT_LOCK_OBJECTS ../dbinc/db.in /^#define DB_STAT_LOCK_OBJECTS 0x0000020 \/* Print:/ -DB_STAT_LOCK_PARAMS ../dbinc/db.in /^#define DB_STAT_LOCK_PARAMS 0x0000040 \/* Print:/ -DB_STAT_MEMP_FLAGS ../mp/mp_stat.c /^#define DB_STAT_MEMP_FLAGS \\$/ -DB_STAT_MEMP_HASH ../dbinc/db.in /^#define DB_STAT_MEMP_HASH 0x0000080 \/* Print:/ -DB_STAT_NOERROR ../dbinc/db.in /^#define DB_STAT_NOERROR 0x0000100 \/* Intern/ -DB_STAT_SUBSYSTEM ../dbinc/db.in /^#define DB_STAT_SUBSYSTEM 0x0000200 \/* Print:/ -DB_SURPRISE_KID ../dbinc/db.in /^#define DB_SURPRISE_KID (-30892)\/* Child commit / -DB_SWAPBYTES ../dbinc/db.in /^#define DB_SWAPBYTES (-30891)\/* Database needs b/ -DB_SYSTEM_MEM ../dbinc/db.in /^#define DB_SYSTEM_MEM 0x1000000 \/* Use syst/ -DB_TEST_ELECTINIT ../dbinc/db.in /^#define DB_TEST_ELECTINIT 1 \/* after __rep_elect/ -DB_TEST_ELECTVOTE1 ../dbinc/db.in /^#define DB_TEST_ELECTVOTE1 2 \/* after sending VO/ -DB_TEST_POSTDESTROY ../dbinc/db.in /^#define DB_TEST_POSTDESTROY 3 \/* after destroy o/ -DB_TEST_POSTLOG ../dbinc/db.in /^#define DB_TEST_POSTLOG 4 \/* after logging all / -DB_TEST_POSTLOGMETA ../dbinc/db.in /^#define DB_TEST_POSTLOGMETA 5 \/* after logging m/ -DB_TEST_POSTOPEN ../dbinc/db.in /^#define DB_TEST_POSTOPEN 6 \/* after __os_open */ -DB_TEST_POSTSYNC ../dbinc/db.in /^#define DB_TEST_POSTSYNC 7 \/* after syncing the / -DB_TEST_PREDESTROY ../dbinc/db.in /^#define DB_TEST_PREDESTROY 8 \/* before destroy o/ -DB_TEST_PREOPEN ../dbinc/db.in /^#define DB_TEST_PREOPEN 9 \/* before __os_open */ +DB_SET_TXN_NOW ../dbinc/db.in 497 +DB_SET_TXN_TIMEOUT ../dbinc/db.in 498 +DB_SNAPSHOT ../dbinc/db.in 384 +DB_SPARE_FLAG ../dbinc/db.in 226 +DB_STAT_ALL ../dbinc/db.in 390 +DB_STAT_CLEAR ../dbinc/db.in 391 +DB_STAT_LOCK_CONF ../dbinc/db.in 392 +DB_STAT_LOCK_FLAGS ../lock/lock_stat.c 169 +DB_STAT_LOCK_LOCKERS ../dbinc/db.in 393 +DB_STAT_LOCK_OBJECTS ../dbinc/db.in 394 +DB_STAT_LOCK_PARAMS ../dbinc/db.in 395 +DB_STAT_MEMP_FLAGS ../mp/mp_stat.c 362 +DB_STAT_MEMP_HASH ../dbinc/db.in 396 +DB_STAT_NOERROR ../dbinc/db.in 397 +DB_STAT_SUBSYSTEM ../dbinc/db.in 398 +DB_SURPRISE_KID ../dbinc/db.in 1494 +DB_SWAPBYTES ../dbinc/db.in 1496 +DB_SYNC_ALLOC ../dbinc/mp.h 40 +DB_SYNC_CACHE ../dbinc/mp.h 41 +DB_SYNC_CHECKPOINT ../dbinc/mp.h 42 +DB_SYNC_FILE ../dbinc/mp.h 43 +DB_SYNC_INTERRUPT_OK ../dbinc/mp.h 44 +DB_SYNC_QUEUE_EXTENT ../dbinc/mp.h 45 +DB_SYNC_SUPPRESS_WRITE ../dbinc/mp.h 46 +DB_SYNC_TRICKLE ../dbinc/mp.h 47 +DB_SYSTEM_MEM ../dbinc/db.in 294 +DB_TEMP_DIRECTORY ../os/os_tmpdir.c /^#define DB_TEMP_DIRECTORY(n) { \\$/ +DB_TEST_ELECTINIT ../dbinc/db.in 2462 +DB_TEST_ELECTVOTE1 ../dbinc/db.in 2463 +DB_TEST_POSTDESTROY ../dbinc/db.in 2464 +DB_TEST_POSTLOG ../dbinc/db.in 2465 +DB_TEST_POSTLOGMETA ../dbinc/db.in 2466 +DB_TEST_POSTOPEN ../dbinc/db.in 2467 +DB_TEST_POSTSYNC ../dbinc/db.in 2468 +DB_TEST_PREDESTROY ../dbinc/db.in 2469 +DB_TEST_PREOPEN ../dbinc/db.in 2470 DB_TEST_RECOVERY ../dbinc/debug.h /^#define DB_TEST_RECOVERY(dbp, val, ret, name) do {/ -DB_TEST_RECOVERY_LABEL ../dbinc/debug.h /^#define DB_TEST_RECOVERY_LABEL db_tr_err:$/ -DB_TEST_RECYCLE ../dbinc/db.in /^#define DB_TEST_RECYCLE 10 \/* test rep and txn_/ -DB_TEST_SUBDB_LOCKS ../dbinc/db.in /^#define DB_TEST_SUBDB_LOCKS 11 \/* subdb locking / +DB_TEST_RECOVERY_LABEL ../dbinc/debug.h 264 +DB_TEST_RECYCLE ../dbinc/db.in 2471 +DB_TEST_SUBDB_LOCKS ../dbinc/db.in 2472 DB_TEST_SUBLOCKS ../dbinc/debug.h /^#define DB_TEST_SUBLOCKS(env, flags) do { \\$/ DB_TEST_WAIT ../dbinc/debug.h /^#define DB_TEST_WAIT(env, val) \\$/ -DB_THREAD ../dbinc/db.in /^#define DB_THREAD 0x0000080 \/* Applications/ -DB_THREADID_STRLEN ../dbinc/db.in /^#define DB_THREADID_STRLEN 128$/ -DB_THREAD_INFO ../dbinc/db_int.in /^} DB_THREAD_INFO;$/ -DB_THREAD_STATE ../dbinc/db_int.in /^} DB_THREAD_STATE;$/ -DB_TIMEOUT ../dbinc/db.in /^#define DB_TIMEOUT (-30890)\/* Timed out waiting / -DB_TIME_NOTGRANTED ../dbinc/db.in /^#define DB_TIME_NOTGRANTED 0x40000000\/* Return/ -DB_TRAIL ../env/env_open.c /^#define DB_TRAIL "BDBXXXXX"$/ -DB_TRUNCATE ../dbinc/db.in /^#define DB_TRUNCATE 0x0000100 \/* Discard ex/ -DB_TXN ../dbinc/db.in /^struct __db_txn; typedef struct __db_txn DB_TXN;$/ -DB_TXNHEAD ../dbinc/db_int.in /^struct __db_txnhead; typedef struct __db_txnhead D/ -DB_TXNLIST ../dbinc/db_int.in /^struct __db_txnlist; typedef struct __db_txnlist D/ +DB_THREAD ../dbinc/db.in 220 +DB_THREADID_STRLEN ../dbinc/db.in 463 +DB_THREAD_STATE ../dbinc/db_int.in 484 +DB_TIMEOUT ../dbinc/db.in 1497 +DB_TIMEOUT_TO_TIMESPEC ../dbinc/clock.h /^#define DB_TIMEOUT_TO_TIMESPEC(t, vvp) \\$/ +DB_TIMESPEC_TO_TIMEOUT ../dbinc/clock.h /^#define DB_TIMESPEC_TO_TIMEOUT(t, vvp) \\$/ +DB_TIME_NOTGRANTED ../dbinc/db.in 348 +DB_TRAIL ../env/env_name.c 145 +DB_TRUNCATE ../dbinc/db.in 221 +DB_TXN ../dbinc/db.in 174 +DB_TXNHEAD ../dbinc/db_int.in 701 +DB_TXNLIST ../dbinc/db_int.in 702 DB_TXNLIST_MASK ../dbinc/db_dispatch.h /^#define DB_TXNLIST_MASK(hp, n) (n % hp->nslots)$/ -DB_TXNLIST_MAX_PGNO ../db/db_dispatch.c /^#define DB_TXNLIST_MAX_PGNO 8 \/* A nice even num/ -DB_TXNLOGREC ../dbinc/txn.h /^struct __txn_logrec; typedef struct __txn_logrec D/ -DB_TXNMGR ../dbinc/db.in /^struct __db_txnmgr; typedef struct __db_txnmgr DB_/ -DB_TXNREGION ../dbinc/txn.h /^struct __db_txnregion; typedef struct __db_txnregi/ -DB_TXNVERSION ../dbinc/db.in /^#define DB_TXNVERSION 1$/ -DB_TXN_ACTIVE ../dbinc/db.in /^struct __db_txn_active; typedef struct __db_txn_ac/ -DB_TXN_CKP ../dbinc/db.in /^#define DB_TXN_CKP (-30889)\/* Encountered ckp re/ -DB_TXN_NOSYNC ../dbinc/db.in /^#define DB_TXN_NOSYNC 0x0000200 \/* Do not s/ -DB_TXN_NOT_DURABLE ../dbinc/db.in /^#define DB_TXN_NOT_DURABLE 0x0000400 \/* Do not/ -DB_TXN_NOWAIT ../dbinc/db.in /^#define DB_TXN_NOWAIT 0x0004000 \/* Do not w/ -DB_TXN_SNAPSHOT ../dbinc/db.in /^#define DB_TXN_SNAPSHOT 0x10000000\/* Snapsh/ -DB_TXN_STAT ../dbinc/db.in /^struct __db_txn_stat; typedef struct __db_txn_stat/ -DB_TXN_SYNC ../dbinc/db.in /^#define DB_TXN_SYNC 0x0008000 \/* Always syn/ -DB_TXN_WRITE_NOSYNC ../dbinc/db.in /^#define DB_TXN_WRITE_NOSYNC 0x0000800 \/* Write / +DB_TXNLIST_MAX_PGNO ../db/db_dispatch.c 1459 +DB_TXNLOGREC ../dbinc/txn.h 27 +DB_TXNMGR ../dbinc/db.in 177 +DB_TXNREGION ../dbinc/txn.h 26 +DB_TXNVERSION ../dbinc/db.in 940 +DB_TXN_ACTIVE ../dbinc/db.in 175 +DB_TXN_CKP ../dbinc/db.in 1498 +DB_TXN_NOSYNC ../dbinc/db.in 222 +DB_TXN_NOT_DURABLE ../dbinc/db.in 224 +DB_TXN_NOWAIT ../dbinc/db.in 223 +DB_TXN_SNAPSHOT ../dbinc/db.in 259 +DB_TXN_STAT ../dbinc/db.in 176 +DB_TXN_SYNC ../dbinc/db.in 316 +DB_TXN_WAIT ../dbinc/db.in 317 +DB_TXN_WRITE_NOSYNC ../dbinc/db.in 225 DB_UNDO ../dbinc/db.in /^#define DB_UNDO(op) ((op) == DB_TXN_ABORT || \\$/ -DB_UNREF ../dbinc/db.in /^#define DB_UNREF 0x0000080 \/* Report unrefe/ -DB_UPDATE_SECONDARY ../dbinc/db.in /^#define DB_UPDATE_SECONDARY 31 \/* c_get(), c_del(/ -DB_UPGRADE ../dbinc/db.in /^#define DB_UPGRADE 0x0000001 \/* Upgrading. / -DB_USERCOPY_GETDATA ../dbinc/db.in /^#define DB_USERCOPY_GETDATA 0x0001$/ -DB_USERCOPY_SETDATA ../dbinc/db.in /^#define DB_USERCOPY_SETDATA 0x0002$/ -DB_USE_ENVIRON ../dbinc/db.in /^#define DB_USE_ENVIRON 0x0001000 \/* Use the/ -DB_USE_ENVIRON_ROOT ../dbinc/db.in /^#define DB_USE_ENVIRON_ROOT 0x0002000 \/* Use th/ -DB_VERB_DEADLOCK ../dbinc/db.in /^#define DB_VERB_DEADLOCK 0x0001 \/* Deadlock detec/ -DB_VERB_RECOVERY ../dbinc/db.in /^#define DB_VERB_RECOVERY 0x0002 \/* Recovery infor/ -DB_VERB_REGISTER ../dbinc/db.in /^#define DB_VERB_REGISTER 0x0004 \/* Dump waits-for/ -DB_VERB_REPLICATION ../dbinc/db.in /^#define DB_VERB_REPLICATION 0x0008 \/* Replication/ -DB_VERB_WAITSFOR ../dbinc/db.in /^#define DB_VERB_WAITSFOR 0x0010 \/* Dump waits-for/ -DB_VERIFY ../dbinc/db.in /^#define DB_VERIFY 0x0000002 \/* Verifying. */ -DB_VERIFY_BAD ../dbinc/db.in /^#define DB_VERIFY_BAD (-30973)\/* Verify failed; / -DB_VERIFY_FATAL ../dbinc/db.in /^#define DB_VERIFY_FATAL (-30888)\/* DB->verify ca/ -DB_VERSION_MAJOR ../dbinc/db.in /^#define DB_VERSION_MAJOR @DB_VERSION_MAJOR@$/ -DB_VERSION_MINOR ../dbinc/db.in /^#define DB_VERSION_MINOR @DB_VERSION_MINOR@$/ -DB_VERSION_MISMATCH ../dbinc/db.in /^#define DB_VERSION_MISMATCH (-30972)\/* Environmen/ -DB_VERSION_PATCH ../dbinc/db.in /^#define DB_VERSION_PATCH @DB_VERSION_PATCH@$/ -DB_VERSION_STRING ../dbinc/db.in /^#define DB_VERSION_STRING @DB_VERSION_STRING@$/ -DB_WRITECURSOR ../dbinc/db.in /^#define DB_WRITECURSOR 32 \/* cursor() *\/$/ -DB_WRITELOCK ../dbinc/db.in /^#define DB_WRITELOCK 33 \/* cursor() (internal) */ -DB_WRITEOPEN ../dbinc/db.in /^#define DB_WRITEOPEN 0x0040000 \/* UNDOC: op/ -DB_XA_CREATE ../dbinc/db.in /^#define DB_XA_CREATE 0x0000002 \/* Open in a/ -DB_XIDDATASIZE ../dbinc/db.in /^#define DB_XIDDATASIZE 128$/ -DB_YIELDCPU ../dbinc/db.in /^#define DB_YIELDCPU 0x80000000\/* Yield the / -DB_debug_FLAG ../dbinc/db.in /^#define DB_debug_FLAG 0x80000000$/ -DB_user_BEGIN ../dbinc/db.in /^#define DB_user_BEGIN 10000$/ +DB_UNREF ../dbinc/db.in 415 +DB_UPDATE_SECONDARY ../dbinc/db.in 1427 +DB_UPGRADE ../dbinc/db.in 354 +DB_USERCOPY_GETDATA ../dbinc/db.in 2092 +DB_USERCOPY_SETDATA ../dbinc/db.in 2093 +DB_USE_ENVIRON ../dbinc/db.in 279 +DB_USE_ENVIRON_ROOT ../dbinc/db.in 280 +DB_VERB_DEADLOCK ../dbinc/db.in 2102 +DB_VERB_FILEOPS ../dbinc/db.in 2103 +DB_VERB_FILEOPS_ALL ../dbinc/db.in 2104 +DB_VERB_RECOVERY ../dbinc/db.in 2105 +DB_VERB_REGISTER ../dbinc/db.in 2106 +DB_VERB_REPLICATION ../dbinc/db.in 2107 +DB_VERB_WAITSFOR ../dbinc/db.in 2108 +DB_VERIFY ../dbinc/db.in 355 +DB_VERIFY_BAD ../dbinc/db.in 1481 +DB_VERIFY_FATAL ../dbinc/db.in 1499 +DB_VERSION_MAJOR ../dbinc/db.in 45 +DB_VERSION_MINOR ../dbinc/db.in 46 +DB_VERSION_MISMATCH ../dbinc/db.in 1482 +DB_VERSION_PATCH ../dbinc/db.in 47 +DB_VERSION_STRING ../dbinc/db.in 48 +DB_WRITECURSOR ../dbinc/db.in 1428 +DB_WRITELOCK ../dbinc/db.in 1429 +DB_WRITEOPEN ../dbinc/db.in 305 +DB_XA_CREATE ../dbinc/db.in 274 +DB_XIDDATASIZE ../dbinc/db.in 1080 +DB_YIELDCPU ../dbinc/db.in 349 +DB_debug_FLAG ../dbinc/db.in 682 +DB_user_BEGIN ../dbinc/db.in 681 DCHARHASH ../hash/hash_func.c /^#define DCHARHASH(h, c) ((h) = 0x63c63cd9*(h) + 0x/ -DD_INVALID_ID ../lock/lock_deadlock.c /^#define DD_INVALID_ID ((u_int32_t) -1)$/ +DD_INVALID_ID ../lock/lock_deadlock.c 364 DEBUG_LREAD ../dbinc/debug.h /^#define DEBUG_LREAD(C, T, O, K, A, F) LOG_OP(C, T,/ DEBUG_LWRITE ../dbinc/debug.h /^#define DEBUG_LWRITE(C, T, O, K, A, F) LOG_OP(C, T/ -DEFMINKEYPAGE ../dbinc/btree.h /^#define DEFMINKEYPAGE (2)$/ -DEF_MAX_TXNS ../dbinc/txn.h /^#define DEF_MAX_TXNS 100 \/* Default max transact/ -DELOVFL ../dbinc/hash.h /^#define DELOVFL 0x50$/ -DELPAIR ../dbinc/hash.h /^#define DELPAIR 0x30$/ -DIR_DECRYPT ../crypto/rijndael/rijndael-api-fst.h /^#define DIR_DECRYPT 1 \/* Are we de/ -DIR_ENCRYPT ../crypto/rijndael/rijndael-api-fst.h /^#define DIR_ENCRYPT 0 \/* Are we en/ +DEFMINKEYPAGE ../dbinc/btree.h 56 +DEF_MAX_TXNS ../dbinc/txn.h 37 +DELOVFL ../dbinc/hash.h 133 +DELPAIR ../dbinc/hash.h 131 +DIR_DECRYPT ../crypto/rijndael/rijndael-api-fst.h 48 +DIR_ENCRYPT ../crypto/rijndael/rijndael-api-fst.h 47 DISCARD_CUR ../btree/bt_cursor.c /^#define DISCARD_CUR(dbc, ret) do { \\$/ DONT_NEED_LOCKS ../qam/qam.c /^#define DONT_NEED_LOCKS(dbc) ((dbc)->txn == NULL |/ DO_PREPLIST ../tcl/tcl_txn.c /^#define DO_PREPLIST(count) \\$/ -DO_TRADE ../txn/txn_util.c /^#define DO_TRADE do { \\$/ +DO_TRADE ../txn/txn_util.c 217 DUP_SIZE ../dbinc/hash.h /^#define DUP_SIZE(len) ((len) + 2 * sizeof(db_indx_/ -Db ../cxx/cxx_db.cpp /^\/\/ If the DB handle is still open, we close it. / -DbDeadlockException ../cxx/cxx_except.cpp /^DbDeadlockException::~DbDeadlockException() throw(/ -DbEnv ../cxx/cxx_env.cpp /^\/\/ If the DB_ENV handle is still open, we close / +Db ../libdb_java/db_java_wrap.c 2333 +Db::Db ../cxx/cxx_db.cpp /^Db::Db(DbEnv *env, u_int32_t flags)$/ +Db::cleanup ../cxx/cxx_db.cpp /^void Db::cleanup()$/ +Db::error_policy ../cxx/cxx_db.cpp /^int Db::error_policy()$/ +Db::errx ../cxx/cxx_db.cpp /^void Db::errx(const char *format, ...)$/ +Db::get_app_private ../cxx/cxx_db.cpp /^void *Db::get_app_private() const$/ +Db::get_byteswapped ../cxx/cxx_db.cpp /^int Db::get_byteswapped(int *isswapped)$/ +Db::get_env ../cxx/cxx_db.cpp /^DbEnv *Db::get_env()$/ +Db::get_mpf ../cxx/cxx_db.cpp /^DbMpoolFile *Db::get_mpf()$/ +Db::initialize ../cxx/cxx_db.cpp /^int Db::initialize()$/ +Db::pget ../cxx/cxx_db.cpp /^int Db::pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Db/ +Db::set_app_private ../cxx/cxx_db.cpp /^void Db::set_app_private(void *value)$/ +Db::set_error_stream ../cxx/cxx_db.cpp /^void Db::set_error_stream(__DB_STD(ostream) *error/ +Db::set_message_stream ../cxx/cxx_db.cpp /^void Db::set_message_stream(__DB_STD(ostream) *mes/ +Db::set_msgcall ../cxx/cxx_db.cpp /^void Db::set_msgcall(void (*arg)(const DbEnv *, co/ +Db::verify ../cxx/cxx_db.cpp /^int Db::verify(const char *name, const char *subdb/ +Db::~Db ../cxx/cxx_db.cpp /^Db::~Db()$/ +DbDeadlockException::DbDeadlockException ../cxx/cxx_except.cpp /^DbDeadlockException::DbDeadlockException(const cha/ +DbDeadlockException::operator = ../cxx/cxx_except.cpp /^&DbDeadlockException::operator =(const DbDeadlockE/ +DbDeadlockException::~DbDeadlockException ../cxx/cxx_except.cpp /^DbDeadlockException::~DbDeadlockException() throw(/ +DbEnv ../libdb_java/db_java_wrap.c 2336 +DbEnv::DbEnv ../cxx/cxx_env.cpp /^DbEnv::DbEnv(u_int32_t flags)$/ +DbEnv::_app_dispatch_intercept ../cxx/cxx_env.cpp /^int DbEnv::_app_dispatch_intercept(DB_ENV *env, DB/ +DbEnv::_event_func_intercept ../cxx/cxx_env.cpp /^void DbEnv::_event_func_intercept($/ +DbEnv::_feedback_intercept ../cxx/cxx_env.cpp /^void DbEnv::_feedback_intercept(DB_ENV *env, int o/ +DbEnv::_isalive_intercept ../cxx/cxx_env.cpp /^int DbEnv::_isalive_intercept($/ +DbEnv::_paniccall_intercept ../cxx/cxx_env.cpp /^void DbEnv::_paniccall_intercept(DB_ENV *env, int / +DbEnv::_rep_send_intercept ../cxx/cxx_env.cpp /^int DbEnv::_rep_send_intercept(DB_ENV *env, const / +DbEnv::_stream_error_function ../cxx/cxx_env.cpp /^void DbEnv::_stream_error_function($/ +DbEnv::_stream_message_function ../cxx/cxx_env.cpp /^void DbEnv::_stream_message_function(const DB_ENV / +DbEnv::_thread_id_intercept ../cxx/cxx_env.cpp /^void DbEnv::_thread_id_intercept(DB_ENV *env,$/ +DbEnv::_thread_id_string_intercept ../cxx/cxx_env.cpp /^char *DbEnv::_thread_id_string_intercept(DB_ENV *e/ +DbEnv::cdsgroup_begin ../cxx/cxx_env.cpp /^int DbEnv::cdsgroup_begin(DbTxn **tid)$/ +DbEnv::cleanup ../cxx/cxx_env.cpp /^void DbEnv::cleanup()$/ +DbEnv::close ../cxx/cxx_env.cpp /^int DbEnv::close(u_int32_t flags)$/ +DbEnv::error_policy ../cxx/cxx_env.cpp /^int DbEnv::error_policy()$/ +DbEnv::errx ../cxx/cxx_env.cpp /^void DbEnv::errx(const char *format, ...)$/ +DbEnv::get_app_private ../cxx/cxx_env.cpp /^void *DbEnv::get_app_private() const$/ +DbEnv::remove ../cxx/cxx_env.cpp /^int DbEnv::remove(const char *db_home, u_int32_t f/ +DbEnv::runtime_error ../cxx/cxx_env.cpp /^void DbEnv::runtime_error(DbEnv *env,$/ +DbEnv::runtime_error_dbt ../cxx/cxx_env.cpp /^void DbEnv::runtime_error_dbt(DbEnv *env,$/ +DbEnv::runtime_error_lock_get ../cxx/cxx_env.cpp /^void DbEnv::runtime_error_lock_get(DbEnv *env,$/ +DbEnv::set_error_stream ../cxx/cxx_env.cpp /^void DbEnv::set_error_stream(__DB_STD(ostream) *st/ +DbEnv::set_event_notify ../cxx/cxx_env.cpp /^int DbEnv::set_event_notify(void (*arg)(DbEnv *, u/ +DbEnv::set_feedback ../cxx/cxx_env.cpp /^int DbEnv::set_feedback(void (*arg)(DbEnv *, int, / +DbEnv::set_isalive ../cxx/cxx_env.cpp /^int DbEnv::set_isalive$/ +DbEnv::set_message_stream ../cxx/cxx_env.cpp /^void DbEnv::set_message_stream(__DB_STD(ostream) */ +DbEnv::set_paniccall ../cxx/cxx_env.cpp /^int DbEnv::set_paniccall(void (*arg)(DbEnv *, int)/ +DbEnv::set_thread_id_string ../cxx/cxx_env.cpp /^int DbEnv::set_thread_id_string($/ +DbEnv::strerror ../cxx/cxx_env.cpp /^char *DbEnv::strerror(int error)$/ +DbEnv::txn_begin ../cxx/cxx_env.cpp /^int DbEnv::txn_begin(DbTxn *pid, DbTxn **tid, u_in/ +DbEnv::wrap_DB_ENV ../cxx/cxx_env.cpp /^DbEnv *DbEnv::wrap_DB_ENV(DB_ENV *dbenv)$/ +DbEnv::~DbEnv ../cxx/cxx_env.cpp /^DbEnv::~DbEnv()$/ DbEnv_cdsgroup_begin ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_TXN *DbEnv_cdsgroup_begin(struct DbE/ DbEnv_close ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_close(struct DbEnv *self/ DbEnv_dbremove ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_dbremove(struct DbEnv *s/ @@ -856,6 +924,7 @@ DbEnv_dbrename ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_dbrename DbEnv_err ../libdb_java/db_java_wrap.c /^SWIGINTERN void DbEnv_err(struct DbEnv *self,int e/ DbEnv_errx ../libdb_java/db_java_wrap.c /^SWIGINTERN void DbEnv_errx(struct DbEnv *self,char/ DbEnv_fileid_reset ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_fileid_reset(struct DbEn/ +DbEnv_get_cache_max ../libdb_java/db_java_wrap.c /^SWIGINTERN jlong DbEnv_get_cache_max(struct DbEnv / DbEnv_get_cachesize ../libdb_java/db_java_wrap.c /^SWIGINTERN jlong DbEnv_get_cachesize(struct DbEnv / DbEnv_get_cachesize_ncache ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_get_cachesize_ncache(struct D/ DbEnv_get_data_dirs ../libdb_java/db_java_wrap.c /^SWIGINTERN char const **DbEnv_get_data_dirs(struct/ @@ -874,7 +943,7 @@ DbEnv_get_lk_max_locks ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbEnv DbEnv_get_lk_max_objects ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbEnv_get_lk_max_objects(stru/ DbEnv_get_mp_max_openfd ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_get_mp_max_openfd(struct DbEn/ DbEnv_get_mp_max_write ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_get_mp_max_write(struct DbEnv/ -DbEnv_get_mp_max_write_sleep ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_get_mp_max_write_sleep(struct/ +DbEnv_get_mp_max_write_sleep ../libdb_java/db_java_wrap.c /^SWIGINTERN db_timeout_t DbEnv_get_mp_max_write_sle/ DbEnv_get_mp_mmapsize ../libdb_java/db_java_wrap.c /^SWIGINTERN size_t DbEnv_get_mp_mmapsize(struct DbE/ DbEnv_get_open_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbEnv_get_open_flags(struct D/ DbEnv_get_shm_key ../libdb_java/db_java_wrap.c /^SWIGINTERN long DbEnv_get_shm_key(struct DbEnv *se/ @@ -917,7 +986,7 @@ DbEnv_mutex_set_tas_spins ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbE DbEnv_mutex_stat ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_MUTEX_STAT *DbEnv_mutex_stat(struct / DbEnv_open ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_open(struct DbEnv *self,/ DbEnv_remove ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_remove(struct DbEnv *sel/ -DbEnv_rep_elect ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_rep_elect(struct DbEnv *self,/ +DbEnv_rep_elect ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_elect(struct DbEnv */ DbEnv_rep_flush ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_flush(struct DbEnv */ DbEnv_rep_get_config ../libdb_java/db_java_wrap.c /^SWIGINTERN int_bool DbEnv_rep_get_config(struct Db/ DbEnv_rep_get_limit ../libdb_java/db_java_wrap.c /^SWIGINTERN jlong DbEnv_rep_get_limit(struct DbEnv / @@ -926,6 +995,7 @@ DbEnv_rep_get_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_rep_g DbEnv_rep_get_timeout ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbEnv_rep_get_timeout(struct / DbEnv_rep_process_message ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbEnv_rep_process_message(struct Db/ DbEnv_rep_set_config ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_set_config(struct Db/ +DbEnv_rep_set_lease ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_set_lease(struct DbE/ DbEnv_rep_set_limit ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_set_limit(struct DbE/ DbEnv_rep_set_nsites ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_set_nsites(struct Db/ DbEnv_rep_set_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_rep_set_priority(struct / @@ -940,7 +1010,9 @@ DbEnv_repmgr_set_ack_policy ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t D DbEnv_repmgr_set_local_site ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_repmgr_set_local_site(st/ DbEnv_repmgr_site_list ../libdb_java/db_java_wrap.c /^SWIGINTERN struct __db_repmgr_sites DbEnv_repmgr_s/ DbEnv_repmgr_start ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_repmgr_start(struct DbEn/ +DbEnv_repmgr_stat ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_REPMGR_STAT *DbEnv_repmgr_stat(struc/ DbEnv_set_app_dispatch ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_set_app_dispatch(struct / +DbEnv_set_cache_max ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_set_cache_max(struct DbE/ DbEnv_set_cachesize ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_set_cachesize(struct DbE/ DbEnv_set_data_dir ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_set_data_dir(struct DbEn/ DbEnv_set_encrypt ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_set_encrypt(struct DbEnv/ @@ -977,24 +1049,63 @@ DbEnv_txn_begin ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_TXN *DbEnv_txn_begi DbEnv_txn_checkpoint ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbEnv_txn_checkpoint(struct Db/ DbEnv_txn_recover ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_PREPLIST *DbEnv_txn_recover(struct D/ DbEnv_txn_stat ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_TXN_STAT *DbEnv_txn_stat(struct DbEn/ -DbException ../cxx/cxx_except.cpp /^DbException::~DbException() throw()$/ -DbLock ../cxx/cxx_lock.cpp /^DbLock::DbLock()$/ -DbLockNotGrantedException ../cxx/cxx_except.cpp /^DbLockNotGrantedException::~DbLockNotGrantedExcept/ -DbLogc ../cxx/cxx_logc.cpp /^\/\/ It's private, and should never be called,$/ +DbException::DbException ../cxx/cxx_except.cpp /^DbException::DbException(int err)$/ +DbException::describe ../cxx/cxx_except.cpp /^void DbException::describe(const char *prefix, con/ +DbException::get_env ../cxx/cxx_except.cpp /^DbEnv *DbException::get_env() const$/ +DbException::get_errno ../cxx/cxx_except.cpp /^int DbException::get_errno() const$/ +DbException::operator = ../cxx/cxx_except.cpp /^DbException &DbException::operator = (const DbExce/ +DbException::set_env ../cxx/cxx_except.cpp /^void DbException::set_env(DbEnv *env)$/ +DbException::what ../cxx/cxx_except.cpp /^const char *DbException::what() const throw()$/ +DbException::~DbException ../cxx/cxx_except.cpp /^DbException::~DbException() throw()$/ +DbLock ../libdb_java/db_java_wrap.c 2337 +DbLock::DbLock ../cxx/cxx_lock.cpp /^DbLock::DbLock(DB_LOCK value)$/ +DbLock::operator = ../cxx/cxx_lock.cpp /^DbLock &DbLock::operator = (const DbLock &that)$/ +DbLockNotGrantedException::DbLockNotGrantedException ../cxx/cxx_except.cpp /^DbLockNotGrantedException::DbLockNotGrantedExcepti/ +DbLockNotGrantedException::get_index ../cxx/cxx_except.cpp /^int DbLockNotGrantedException::get_index() const$/ +DbLockNotGrantedException::get_lock ../cxx/cxx_except.cpp /^DbLock* DbLockNotGrantedException::get_lock() cons/ +DbLockNotGrantedException::get_mode ../cxx/cxx_except.cpp /^db_lockmode_t DbLockNotGrantedException::get_mode(/ +DbLockNotGrantedException::get_obj ../cxx/cxx_except.cpp /^const Dbt* DbLockNotGrantedException::get_obj() co/ +DbLockNotGrantedException::get_op ../cxx/cxx_except.cpp /^db_lockop_t DbLockNotGrantedException::get_op() co/ +DbLockNotGrantedException::operator = ../cxx/cxx_except.cpp /^&DbLockNotGrantedException::operator =(const DbLoc/ +DbLockNotGrantedException::~DbLockNotGrantedException ../cxx/cxx_except.cpp /^DbLockNotGrantedException::~DbLockNotGrantedExcept/ +DbLogc ../libdb_java/db_java_wrap.c 2338 +DbLogc::close ../cxx/cxx_logc.cpp /^int DbLogc::close(u_int32_t _flags)$/ +DbLogc::get ../cxx/cxx_logc.cpp /^int DbLogc::get(DbLsn *get_lsn, Dbt *data, u_int32/ +DbLogc::version ../cxx/cxx_logc.cpp /^int DbLogc::version(u_int32_t *versionp, u_int32_t/ +DbLogc::~DbLogc ../cxx/cxx_logc.cpp /^DbLogc::~DbLogc()$/ DbLogc_close ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbLogc_close(struct DbLogc *se/ DbLogc_get ../libdb_java/db_java_wrap.c /^SWIGINTERN int DbLogc_get(struct DbLogc *self,DB_L/ -DbLsn ../libdb_java/db_java_wrap.c /^#define DbLsn __db_lsn$/ -DbMemoryException ../cxx/cxx_except.cpp /^DbMemoryException::~DbMemoryException() throw()$/ -DbMpoolFile ../cxx/cxx_mpool.cpp /^DbMpoolFile::~DbMpoolFile()$/ +DbLogc_version ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbLogc_version(struct DbLogc / +DbLsn ../libdb_java/db_java_wrap.c 2339 +DbMemoryException::DbMemoryException ../cxx/cxx_except.cpp /^DbMemoryException::DbMemoryException(Dbt *dbt)$/ +DbMemoryException::get_dbt ../cxx/cxx_except.cpp /^Dbt *DbMemoryException::get_dbt() const$/ +DbMemoryException::operator = ../cxx/cxx_except.cpp /^&DbMemoryException::operator =(const DbMemoryExcep/ +DbMemoryException::~DbMemoryException ../cxx/cxx_except.cpp /^DbMemoryException::~DbMemoryException() throw()$/ +DbMpoolFile ../libdb_java/db_java_wrap.c 2340 +DbMpoolFile::DbMpoolFile ../cxx/cxx_mpool.cpp /^DbMpoolFile::DbMpoolFile()$/ +DbMpoolFile::close ../cxx/cxx_mpool.cpp /^int DbMpoolFile::close(u_int32_t flags)$/ +DbMpoolFile::~DbMpoolFile ../cxx/cxx_mpool.cpp /^DbMpoolFile::~DbMpoolFile()$/ DbMpoolFile_get_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t DbMpoolFile_get_flags(struct / DbMpoolFile_get_maxsize ../libdb_java/db_java_wrap.c /^SWIGINTERN jlong DbMpoolFile_get_maxsize(struct Db/ DbMpoolFile_get_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_CACHE_PRIORITY DbMpoolFile_get_prior/ DbMpoolFile_set_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbMpoolFile_set_flags(struct D/ DbMpoolFile_set_maxsize ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbMpoolFile_set_maxsize(struct/ DbMpoolFile_set_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbMpoolFile_set_priority(struc/ -DbRepHandleDeadException ../cxx/cxx_except.cpp /^DbRepHandleDeadException::~DbRepHandleDeadExceptio/ -DbRunRecoveryException ../cxx/cxx_except.cpp /^DbRunRecoveryException::~DbRunRecoveryException() / -DbSequence ../cxx/cxx_seq.cpp /^DbSequence::~DbSequence()$/ +DbMultipleDataIterator::next ../cxx/cxx_multi.cpp /^bool DbMultipleDataIterator::next(Dbt &data)$/ +DbMultipleIterator::DbMultipleIterator ../cxx/cxx_multi.cpp /^DbMultipleIterator::DbMultipleIterator(const Dbt &/ +DbMultipleKeyDataIterator::next ../cxx/cxx_multi.cpp /^bool DbMultipleKeyDataIterator::next(Dbt &key, Dbt/ +DbMultipleRecnoDataIterator::next ../cxx/cxx_multi.cpp /^bool DbMultipleRecnoDataIterator::next(db_recno_t / +DbRepHandleDeadException::DbRepHandleDeadException ../cxx/cxx_except.cpp /^DbRepHandleDeadException::DbRepHandleDeadException/ +DbRepHandleDeadException::operator = ../cxx/cxx_except.cpp /^&DbRepHandleDeadException::operator =(const DbRepH/ +DbRepHandleDeadException::~DbRepHandleDeadException ../cxx/cxx_except.cpp /^DbRepHandleDeadException::~DbRepHandleDeadExceptio/ +DbRunRecoveryException::DbRunRecoveryException ../cxx/cxx_except.cpp /^DbRunRecoveryException::DbRunRecoveryException(con/ +DbRunRecoveryException::operator = ../cxx/cxx_except.cpp /^&DbRunRecoveryException::operator =(const DbRunRec/ +DbRunRecoveryException::~DbRunRecoveryException ../cxx/cxx_except.cpp /^DbRunRecoveryException::~DbRunRecoveryException() / +DbSequence ../libdb_java/db_java_wrap.c 2341 +DbSequence::DbSequence ../cxx/cxx_seq.cpp /^DbSequence::DbSequence(Db *db, u_int32_t flags)$/ +DbSequence::get_key ../cxx/cxx_seq.cpp /^Dbt *DbSequence::get_key()$/ +DbSequence::wrap_DB_SEQUENCE ../cxx/cxx_seq.cpp /^DbSequence *DbSequence::wrap_DB_SEQUENCE(DB_SEQUEN/ +DbSequence::~DbSequence ../cxx/cxx_seq.cpp /^DbSequence::~DbSequence()$/ DbSequence_close ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbSequence_close(struct DbSequ/ DbSequence_get ../libdb_java/db_java_wrap.c /^SWIGINTERN db_seq_t DbSequence_get(struct DbSequen/ DbSequence_get_cachesize ../libdb_java/db_java_wrap.c /^SWIGINTERN int32_t DbSequence_get_cachesize(struct/ @@ -1010,7 +1121,9 @@ DbSequence_set_cachesize ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbSe DbSequence_set_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbSequence_set_flags(struct Db/ DbSequence_set_range ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbSequence_set_range(struct Db/ DbSequence_stat ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_SEQUENCE_STAT *DbSequence_stat(struc/ -DbTxn ../cxx/cxx_txn.cpp /^DbTxn::~DbTxn()$/ +DbTxn ../libdb_java/db_java_wrap.c 2342 +DbTxn::DbTxn ../cxx/cxx_txn.cpp /^DbTxn::DbTxn()$/ +DbTxn::~DbTxn ../cxx/cxx_txn.cpp /^DbTxn::~DbTxn()$/ DbTxn_abort ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbTxn_abort(struct DbTxn *self/ DbTxn_commit ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbTxn_commit(struct DbTxn *sel/ DbTxn_discard ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t DbTxn_discard(struct DbTxn *se/ @@ -1026,6 +1139,7 @@ Db_cursor ../libdb_java/db_java_wrap.c /^SWIGINTERN DBC *Db_cursor(struct Db *se Db_del ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_del(struct Db *self,DB_TXN *txni/ Db_err ../libdb_java/db_java_wrap.c /^SWIGINTERN void Db_err(struct Db *self,int error,c/ Db_errx ../libdb_java/db_java_wrap.c /^SWIGINTERN void Db_errx(struct Db *self,char const/ +Db_exists ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_exists(struct Db *self,DB_TXN *t/ Db_get ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_get(struct Db *self,DB_TXN *txni/ Db_get_bt_minkey ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_bt_minkey(struct Db *s/ Db_get_byteswapped ../libdb_java/db_java_wrap.c /^SWIGINTERN int_bool Db_get_byteswapped(struct Db */ @@ -1039,8 +1153,10 @@ Db_get_h_ffactor ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_h_ff Db_get_h_nelem ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_h_nelem(struct Db *sel/ Db_get_lorder ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_get_lorder(struct Db *self){$/ Db_get_mpf ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_MPOOLFILE *Db_get_mpf(struct Db *sel/ +Db_get_multiple ../libdb_java/db_java_wrap.c /^SWIGINTERN int_bool Db_get_multiple(struct Db *sel/ Db_get_open_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_open_flags(struct Db */ Db_get_pagesize ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_pagesize(struct Db *se/ +Db_get_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_CACHE_PRIORITY Db_get_priority(struc/ Db_get_q_extentsize ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_q_extentsize(struct Db/ Db_get_re_delim ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_get_re_delim(struct Db *self){$/ Db_get_re_len ../libdb_java/db_java_wrap.c /^SWIGINTERN u_int32_t Db_get_re_len(struct Db *self/ @@ -1064,11 +1180,13 @@ Db_set_dup_compare ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_dup Db_set_encrypt ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_encrypt(struct Db *self/ Db_set_feedback ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_feedback(struct Db *sel/ Db_set_flags ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_flags(struct Db *self,u/ +Db_set_h_compare ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_h_compare(struct Db *se/ Db_set_h_ffactor ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_h_ffactor(struct Db *se/ Db_set_h_hash ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_h_hash(struct Db *self,/ Db_set_h_nelem ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_h_nelem(struct Db *self/ Db_set_lorder ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_lorder(struct Db *self,/ Db_set_pagesize ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_pagesize(struct Db *sel/ +Db_set_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_priority(struct Db *sel/ Db_set_q_extentsize ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_q_extentsize(struct Db / Db_set_re_delim ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_re_delim(struct Db *sel/ Db_set_re_len ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_set_re_len(struct Db *self,/ @@ -1080,53 +1198,64 @@ Db_tcl_Init ../tcl/tcl_db_pkg.c /^Db_tcl_Init(interp)$/ Db_truncate ../libdb_java/db_java_wrap.c /^SWIGINTERN int Db_truncate(struct Db *self,DB_TXN / Db_upgrade ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Db_upgrade(struct Db *self,cha/ Db_verify ../libdb_java/db_java_wrap.c /^SWIGINTERN int_bool Db_verify(struct Db *self,char/ -Dbc ../cxx/cxx_dbc.cpp /^\/\/ It's private, and should never be called, but/ +Dbc ../libdb_java/db_java_wrap.c 2334 +Dbc::get ../cxx/cxx_dbc.cpp /^int Dbc::get(Dbt* key, Dbt *data, u_int32_t _flags/ +Dbc::pget ../cxx/cxx_dbc.cpp /^int Dbc::pget(Dbt* key, Dbt *pkey, Dbt *data, u_in/ +Dbc::~Dbc ../cxx/cxx_dbc.cpp /^Dbc::~Dbc()$/ Dbc_close ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Dbc_close(struct Dbc *self){$/ Dbc_count ../libdb_java/db_java_wrap.c /^SWIGINTERN db_recno_t Dbc_count(struct Dbc *self,u/ Dbc_del ../libdb_java/db_java_wrap.c /^SWIGINTERN int Dbc_del(struct Dbc *self,u_int32_t / Dbc_dup ../libdb_java/db_java_wrap.c /^SWIGINTERN DBC *Dbc_dup(struct Dbc *self,u_int32_t/ Dbc_get ../libdb_java/db_java_wrap.c /^SWIGINTERN int Dbc_get(struct Dbc *self,DBT *key,D/ +Dbc_get_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN DB_CACHE_PRIORITY Dbc_get_priority(stru/ Dbc_pget ../libdb_java/db_java_wrap.c /^SWIGINTERN int Dbc_pget(struct Dbc *self,DBT *key,/ Dbc_put ../libdb_java/db_java_wrap.c /^SWIGINTERN int Dbc_put(struct Dbc *self,DBT *key,D/ -Dbt ../cxx/cxx_dbt.cpp /^Dbt::Dbt()$/ +Dbc_set_priority ../libdb_java/db_java_wrap.c /^SWIGINTERN db_ret_t Dbc_set_priority(struct Dbc *s/ +Dbt ../libdb_java/db_java_wrap.c 2335 +Dbt::Dbt ../cxx/cxx_dbt.cpp /^Dbt::Dbt()$/ +Dbt::operator = ../cxx/cxx_dbt.cpp /^Dbt &Dbt::operator = (const Dbt &that)$/ +Dbt::~Dbt ../cxx/cxx_dbt.cpp /^Dbt::~Dbt()$/ EID_FROM_SITE ../dbinc/repmgr.h /^#define EID_FROM_SITE(s) ((int)((s) - (&db_rep->si/ ELECTION_MAJORITY ../dbinc/rep.h /^#define ELECTION_MAJORITY(n) (((n) \/ 2) + 1)$/ -ELECT_ELECTION ../dbinc/rep.h /^#define ELECT_ELECTION 1 \/* Call for an election./ -ELECT_FAILURE_ELECTION ../dbinc/rep.h /^#define ELECT_FAILURE_ELECTION 3 \/* Do election, / -ELECT_REPSTART ../dbinc/rep.h /^#define ELECT_REPSTART 2 \/* Call rep_start(CLIENT/ -EMSG ../clib/getopt.c /^#define EMSG ""$/ -ENTRY ../dbinc/db.in /^} ENTRY;$/ +ELECT_ELECTION ../dbinc/rep.h 509 +ELECT_FAILURE_ELECTION ../dbinc/rep.h 510 +ELECT_REPSTART ../dbinc/rep.h 512 +ELECT_SEEK_MASTER ../dbinc/rep.h 513 +EMSG ../clib/getopt.c 54 ENV_ENTER ../dbinc/db_int.in /^#define ENV_ENTER(dbenv, ip) do { \\$/ ENV_ILLEGAL_AFTER_OPEN ../dbinc/db_int.in /^#define ENV_ILLEGAL_AFTER_OPEN(dbenv, name) \\$/ -ENV_ILLEGAL_BEFORE_OPEN ../dbinc/db_int.in /^#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \\/ +ENV_ILLEGAL_BEFORE_OPEN ../dbinc/db_int.in /^#define ENV_ILLEGAL_BEFORE_OPEN(dbenv, name) \\$/ ENV_LEAVE ../dbinc/db_int.in /^#define ENV_LEAVE(dbenv, ip) do { \\$/ ENV_NOT_CONFIGURED ../dbinc/db_int.in /^#define ENV_NOT_CONFIGURED(dbenv, handle, i, flags/ ENV_REQUIRES_CONFIG ../dbinc/db_int.in /^#define ENV_REQUIRES_CONFIG(dbenv, handle, i, flag/ ENV_REQUIRES_CONFIG_XX ../dbinc/db_int.in /^#define ENV_REQUIRES_CONFIG_XX(dbenv, handle, i, f/ -EPG ../dbinc/btree.h /^struct __epg; typedef struct __epg EPG;$/ +EPG ../dbinc/btree.h 53 EPRINT ../dbinc/db_verify.h /^#define EPRINT(x) do { \\$/ -FALSE ../dbinc/db_int.in /^#define FALSE 0$/ +ERRSTR ../clib/strerror.c /^#define ERRSTR(v, s) do { \\$/ +FALSE ../dbinc/db_int.in 113 FAST_HASH ../lock/lock_util.c /^#define FAST_HASH(P) { \\$/ FHASH ../dbinc/mp.h /^#define FHASH(id, len) __ham_func5(NULL, id, (u_in/ -FILE_EXTEND_IO_SIZE ../env/env_file.c /^#define FILE_EXTEND_IO_SIZE (8 * 1024)$/ -FILE_WRITE_IO_SIZE ../env/env_file.c /^#define FILE_WRITE_IO_SIZE (64 * 1024)$/ +FILE_EXTEND_IO_SIZE ../env/env_file.c 39 +FILE_WRITE_IO_SIZE ../env/env_file.c 114 FIND_FIRST_DB_MATCH ../dbinc/db_am.h /^#define FIND_FIRST_DB_MATCH(dbenv, dbp, tdbp) do {/ +FIND_GENERATION ../db/db_dispatch.c /^#define FIND_GENERATION(hp, txnid, gen) do { \\$/ FLAG_CHECK ../dbinc/tcl_db.h /^#define FLAG_CHECK(flag) do { \\$/ FLAG_CHECK2 ../dbinc/tcl_db.h /^#define FLAG_CHECK2(flag, val) do { \\$/ -FLAG_CHECK2_STDARG ../tcl/tcl_dbcursor.c /^#define FLAG_CHECK2_STDARG \\$/ +FLAG_CHECK2_STDARG ../tcl/tcl_dbcursor.c 487 FLD_CLR ../dbinc/db_int.in /^#define FLD_CLR(fld, f) (fld) &= ~(f)$/ FLD_ISSET ../dbinc/db_int.in /^#define FLD_ISSET(fld, f) ((fld) & (f))$/ FLD_SET ../dbinc/db_int.in /^#define FLD_SET(fld, f) (fld) |= (f)$/ -FMAP_ENTRIES ../mp/mp_stat.c /^#define FMAP_ENTRIES 200 \/* Files we map. *\/$/ -FN ../dbinc/db_int.in /^} FN;$/ -FNAME ../dbinc/db.in /^struct __fname; typedef struct __fname FNAME;$/ +FMAP_ENTRIES ../mp/mp_stat.c 374 +FNAME ../dbinc/db.in 181 FNBUCKET ../dbinc/mp.h /^#define FNBUCKET(id, len) \\$/ -FREE_IF_CHANGED ../dbinc/db_server_int.h /^#define FREE_IF_CHANGED(dbenv, p, orig) do { \\/ +FREE_IF_CHANGED ../dbinc/db_server_int.h /^#define FREE_IF_CHANGED(dbenv, p, orig) do { \\$/ FREE_IF_NEEDED ../dbinc/db_int.in /^#define FREE_IF_NEEDED(dbenv, dbt) \\$/ +FREE_STRING ../dbinc/win_db.h /^#define FREE_STRING(dbenv, s) do { \\$/ +FROM_TSTRING ../dbinc/win_db.h /^#define FROM_TSTRING(dbenv, ts, s, ret) { \\$/ F_CLR ../dbinc/db_int.in /^#define F_CLR(p, f) (p)->flags &= ~(f)$/ F_ISSET ../dbinc/db_int.in /^#define F_ISSET(p, f) ((p)->flags & (f))$/ F_SET ../dbinc/db_int.in /^#define F_SET(p, f) (p)->flags |= (f)$/ -GCC_HASCLASSVISIBILITY ../libdb_java/db_java_wrap.c /^# define GCC_HASCLASSVISIBILITY$/ +GCC_HASCLASSVISIBILITY ../libdb_java/db_java_wrap.c 75 GETU32 ../crypto/rijndael/rijndael-alg-fst.c /^#define GETU32(p) SWAP(*((u32 *)(p)))$/ GET_BINTERNAL ../dbinc/db_page.h /^#define GET_BINTERNAL(dbp, pg, indx) \\$/ GET_BKEYDATA ../dbinc/db_page.h /^#define GET_BKEYDATA(dbp, pg, indx) \\$/ @@ -1138,86 +1267,79 @@ GET_PCOUNT ../lock/lock_list.c /^#define GET_PCOUNT(dp, count) do { \\$/ GET_PGNO ../lock/lock_list.c /^#define GET_PGNO(dp, pgno) do { \\$/ GET_RINTERNAL ../dbinc/db_page.h /^#define GET_RINTERNAL(dbp, pg, indx) \\$/ GET_SIZE ../lock/lock_list.c /^#define GET_SIZE(dp, size) do { \\$/ -GIGABYTE ../dbinc/db_int.in /^#define GIGABYTE 1073741824$/ +GIGABYTE ../dbinc/db_int.in 118 GLOB_CHAR ../tcl/tcl_internal.c /^#define GLOB_CHAR(c) ((c) == '*' || (c) == '?')$/ -GUARD_BYTE ../dbinc/debug.h /^#define GUARD_BYTE 0xdc$/ -HASH ../dbinc/hash.h /^} HASH;$/ -HASH4 ../hash/hash_func.c /^#define HASH4 HASH4b$/ -HASH4a ../hash/hash_func.c /^#define HASH4a h = (h << 5) - h + *k++;$/ -HASH4b ../hash/hash_func.c /^#define HASH4b h = (h << 5) + h + *k++;$/ -HASHC ../hash/hash_func.c /^#define HASHC n = *k++ + 65599 * n$/ -HASHHDR ../dbinc/db_upgrade.h /^} HASHHDR;$/ -HASHINFO ../dbinc/db_185.in /^} HASHINFO;$/ -HASHMAGIC ../dbinc/db_185.in /^#define HASHMAGIC 0x061561$/ -HASHVERSION ../dbinc/db_185.in /^#define HASHVERSION 2$/ -HASH_CURSOR ../dbinc/hash.h /^} HASH_CURSOR;$/ -HASH_UNUSED1 ../dbinc/hash.h /^#define HASH_UNUSED1 0x60$/ -HASH_UNUSED2 ../dbinc/hash.h /^#define HASH_UNUSED2 0x70$/ -HDR ../dbinc/log.h /^struct __hdr; typedef struct __hdr HDR;$/ -HDR_CRYPTO_SZ ../dbinc/log.h /^#define HDR_CRYPTO_SZ 12 + DB_MAC_KEY + DB_IV_BYTE/ -HDR_NORMAL_SZ ../dbinc/log.h /^#define HDR_NORMAL_SZ 12$/ -HKEYDATA ../dbinc/db_page.h /^} HKEYDATA;$/ +GUARD_BYTE ../dbinc/debug.h 28 +HAM_DEL_NO_CURSOR ../dbinc/hash.h 141 +HAM_DEL_NO_RECLAIM ../dbinc/hash.h 142 +HASH4 ../hash/hash_func.c 161 +HASH4a ../hash/hash_func.c 159 +HASH4b ../hash/hash_func.c 160 +HASHC ../hash/hash_func.c 108 +HASHMAGIC ../dbinc/db_185.in 141 +HASHVERSION ../dbinc/db_185.in 142 +HASH_SIZE ../common/db_shash.c /^#define HASH_SIZE(power, prime) { \\$/ +HASH_UNUSED1 ../dbinc/hash.h 134 +HASH_UNUSED2 ../dbinc/hash.h 135 +HDR ../dbinc/log.h 73 +HDR_CRYPTO_SZ ../dbinc/log.h 167 +HDR_NORMAL_SZ ../dbinc/log.h 166 HKEYDATA_DATA ../dbinc/db_page.h /^#define HKEYDATA_DATA(p) (((u_int8_t *)p) + SSZA(H/ HKEYDATA_PSIZE ../dbinc/db_page.h /^#define HKEYDATA_PSIZE(len) \\$/ HKEYDATA_SIZE ../dbinc/db_page.h /^#define HKEYDATA_SIZE(len) \\$/ -HMAC_BLOCK_SIZE ../hmac/hmac.c /^#define HMAC_BLOCK_SIZE 64$/ -HMAC_OUTPUT_SIZE ../hmac/hmac.c /^#define HMAC_OUTPUT_SIZE 20$/ -HMETA ../dbinc/db_page.h /^} HMETA33, HMETA;$/ -HMETA30 ../dbinc/db_upgrade.h /^} HMETA30;$/ -HMETA31 ../dbinc/db_upgrade.h /^} HMETA31;$/ -HOFFDUP ../dbinc/db_page.h /^} HOFFDUP;$/ +HMAC_BLOCK_SIZE ../hmac/hmac.c 22 +HMAC_OUTPUT_SIZE ../hmac/hmac.c 21 HOFFDUP_PGNO ../dbinc/db_page.h /^#define HOFFDUP_PGNO(p) (((u_int8_t *)p) + SSZ(HO/ -HOFFDUP_SIZE ../dbinc/db_page.h /^#define HOFFDUP_SIZE (sizeof(HOFFDUP))$/ -HOFFPAGE ../dbinc/db_page.h /^} HOFFPAGE;$/ +HOFFDUP_SIZE ../dbinc/db_page.h 514 HOFFPAGE_PGNO ../dbinc/db_page.h /^#define HOFFPAGE_PGNO(p) (((u_int8_t *)p) + SSZ(HO/ -HOFFPAGE_PSIZE ../dbinc/db_page.h /^#define HOFFPAGE_PSIZE (HOFFPAGE_SIZE + sizeof(db/ -HOFFPAGE_SIZE ../dbinc/db_page.h /^#define HOFFPAGE_SIZE (sizeof(HOFFPAGE))$/ +HOFFPAGE_PSIZE ../dbinc/db_page.h 498 +HOFFPAGE_SIZE ../dbinc/db_page.h 497 HOFFPAGE_TLEN ../dbinc/db_page.h /^#define HOFFPAGE_TLEN(p) (((u_int8_t *)p) + SSZ(HO/ HOFFSET ../dbinc/db_page.h /^#define HOFFSET(p) (((PAGE *)p)->hf_offset)$/ HPAGE_PTYPE ../dbinc/db_page.h /^#define HPAGE_PTYPE(p) (*(u_int8_t *)p)$/ HPAGE_TYPE ../dbinc/db_page.h /^#define HPAGE_TYPE(dbp, pg, indx) (*P_ENTRY(dbp, p/ -H_CONTINUE ../dbinc/hash.h /^#define H_CONTINUE 0x0001 \/* Join--search strict/ +H_CONTINUE ../dbinc/hash.h 84 H_DATAINDEX ../dbinc/db_page.h /^#define H_DATAINDEX(indx) ((indx) + 1)$/ -H_DELETED ../dbinc/hash.h /^#define H_DELETED 0x0002 \/* Cursor item is delet/ -H_DUPLICATE ../dbinc/db_page.h /^#define H_DUPLICATE 2 \/* Duplicate key\/data item/ -H_DUPONLY ../dbinc/hash.h /^#define H_DUPONLY 0x0004 \/* Dups only; do not ch/ -H_EXPAND ../dbinc/hash.h /^#define H_EXPAND 0x0008 \/* Table expanded. *\/$/ -H_ISDUP ../dbinc/hash.h /^#define H_ISDUP 0x0010 \/* Cursor is within dupl/ -H_KEYDATA ../dbinc/db_page.h /^#define H_KEYDATA 1 \/* Key\/data item. *\/$/ +H_DELETED ../dbinc/hash.h 85 +H_DUPLICATE ../dbinc/db_page.h 399 +H_DUPONLY ../dbinc/hash.h 86 +H_EXPAND ../dbinc/hash.h 87 +H_ISDUP ../dbinc/hash.h 88 +H_KEYDATA ../dbinc/db_page.h 398 H_KEYINDEX ../dbinc/db_page.h /^#define H_KEYINDEX(indx) (indx)$/ -H_NEXT_NODUP ../dbinc/hash.h /^#define H_NEXT_NODUP 0x0020 \/* Get next non-dup / -H_NOMORE ../dbinc/hash.h /^#define H_NOMORE 0x0040 \/* No more entries in bu/ +H_NEXT_NODUP ../dbinc/hash.h 89 +H_NOMORE ../dbinc/hash.h 90 H_NUMPAIRS ../dbinc/db_page.h /^#define H_NUMPAIRS(pg) (NUM_ENT(pg) \/ 2)$/ -H_OFFDUP ../dbinc/db_page.h /^#define H_OFFDUP 4 \/* Overflow page of duplicates/ -H_OFFPAGE ../dbinc/db_page.h /^#define H_OFFPAGE 3 \/* Overflow key\/data item. */ -H_OK ../dbinc/hash.h /^#define H_OK 0x0080 \/* Request succeeded. *\/$/ +H_OFFDUP ../dbinc/db_page.h 401 +H_OFFPAGE ../dbinc/db_page.h 400 +H_OK ../dbinc/hash.h 91 H_PAIRDATA ../dbinc/db_page.h /^#define H_PAIRDATA(dbp, pg, indx) P_ENTRY(dbp, pg,/ H_PAIRKEY ../dbinc/db_page.h /^#define H_PAIRKEY(dbp, pg, indx) P_ENTRY(dbp, pg, / H_PAIRSIZE ../dbinc/db_page.h /^#define H_PAIRSIZE(dbp, pg, psize, indx) \\$/ -ILLEGAL_SIZE ../env/db_salloc.c /^#define ILLEGAL_SIZE 1 \/* An illegal size. *\/$/ -INFOTYPE ../dbinc/tcl_db.h /^enum INFOTYPE {$/ -INITIAL_ALLOCATION ../repmgr/repmgr_windows.c /^#define INITIAL_ALLOCATION 5 \/* arbitrary size */ -INITIAL_DEAD_ALLOC ../lock/lock_deadlock.c /^#define INITIAL_DEAD_ALLOC 8$/ -INITIAL_SITES_ALLOCATION ../repmgr/repmgr_util.c /^#define INITIAL_SITES_ALLOCATION 10 \/* Arbitrary/ +INADDR_NONE ../clib/getaddrinfo.c 62 +INITIAL_ALLOCATION ../repmgr/repmgr_windows.c 224 +INITIAL_DEAD_ALLOC ../lock/lock_deadlock.c 769 +INITIAL_SITES_ALLOCATION ../repmgr/repmgr_util.c 142 INIT_LSN ../dbinc/db_int.in /^#define INIT_LSN(LSN) do { \\$/ -INPROGRESS ../dbinc/repmgr.h /^#define INPROGRESS WSAEWOULDBLOCK$/ +INPROGRESS ../dbinc/repmgr.h 328 INP_OFFSET ../db/db_vrfy.c /^#define INP_OFFSET(dbp, h, i) \\$/ -INT64_MAX ../dbinc/db_int.in /^#define INT64_MAX _I64_MAX$/ -INT64_MIN ../dbinc/db_int.in /^#define INT64_MIN _I64_MIN$/ -INVALID_LSNMSG ../tcl/tcl_internal.c /^#define INVALID_LSNMSG "Invalid LSN with %d parts./ -INVALID_ORDER ../dbinc/btree.h /^#define INVALID_ORDER 0$/ -INVALID_REGION_ID ../dbinc/region.h /^#define INVALID_REGION_ID 0 \/* Out-of-band region/ -INVALID_REGION_SEGID ../dbinc/region.h /^#define INVALID_REGION_SEGID -1 \/* Segment IDs ar/ -INVALID_ROFF ../dbinc/region.h /^#define INVALID_ROFF 0$/ -INVALID_SOCKET ../dbinc/repmgr.h /^#define INVALID_SOCKET -1$/ +INVALID_FILE_ATTRIBUTES ../dbinc/win_db.h 146 +INVALID_HANDLE_VALUE ../dbinc/win_db.h 142 +INVALID_LSNMSG ../tcl/tcl_internal.c 612 +INVALID_ORDER ../dbinc/btree.h 62 +INVALID_REGION_ID ../dbinc/region.h 120 +INVALID_REGION_SEGID ../dbinc/region.h 132 +INVALID_ROFF ../dbinc/region.h 142 +INVALID_SET_FILE_POINTER ../dbinc/win_db.h 150 +INVALID_SOCKET ../dbinc/repmgr.h 342 IN_ELECTION ../dbinc/rep.h /^#define IN_ELECTION(R) \\$/ IN_ELECTION_TALLY ../dbinc/rep.h /^#define IN_ELECTION_TALLY(R) \\$/ -IO_WAITER ../dbinc/mp.h /^#define IO_WAITER 0x001 \/* Thread is waiting on / +IO_WAITER ../dbinc/mp.h 335 ISBIG ../dbinc/hash.h /^#define ISBIG(I, N) (((N) > ((I)->hdr->dbmeta.page/ ISDOT ../clib/getcwd.c /^#define ISDOT(dp) \\$/ ISINTERNAL ../dbinc/btree.h /^#define ISINTERNAL(p) (TYPE(p) == P_IBTREE || TYPE/ ISLEAF ../dbinc/btree.h /^#define ISLEAF(p) (TYPE(p) == P_LBTREE || \\$/ -ISSET_MAP ../lock/lock_deadlock.c /^#define ISSET_MAP(M, N) ((M)[(N) \/ 32] & (1 << ((/ +ISSET_MAP ../lock/lock_deadlock.c /^#define ISSET_MAP(M, N) ((M)[(N) \/ 32] & (1 << ((N/ IS_BTREE_PAGE ../btree/bt_rec.c /^#define IS_BTREE_PAGE(pagep) \\$/ IS_CLIENT_PGRECOVER ../dbinc/rep.h /^#define IS_CLIENT_PGRECOVER(dbenv) \\$/ IS_CUR_DELETED ../btree/bt_cursor.c /^#define IS_CUR_DELETED(dbc) \\$/ @@ -1226,224 +1348,475 @@ IS_DB_AUTO_COMMIT ../dbinc/db_am.h /^#define IS_DB_AUTO_COMMIT(dbp, txn) \\$ IS_DELETED ../btree/bt_cursor.c /^#define IS_DELETED(dbp, page, indx) \\$/ IS_DIRTY ../dbinc/mp.h /^#define IS_DIRTY(p) \\$/ IS_DUPLICATE ../btree/bt_cursor.c /^#define IS_DUPLICATE(dbc, i1, i2) \\$/ -IS_ENV_AUTO_COMMIT ../dbinc/db_am.h /^#define IS_ENV_AUTO_COMMIT(dbenv, txn, flags) / +IS_ENV_AUTO_COMMIT ../dbinc/db_am.h /^#define IS_ENV_AUTO_COMMIT(dbenv, txn, flags) \\/ IS_ENV_REPLICATED ../dbinc/rep.h /^#define IS_ENV_REPLICATED(dbenv) \\$/ IS_HELP ../dbinc/tcl_db.h /^#define IS_HELP(s) \\$/ IS_INITIALIZED ../dbinc/db_int.in /^#define IS_INITIALIZED(dbc) ((dbc)->internal->pgno/ IS_INIT_LSN ../dbinc/db_int.in /^#define IS_INIT_LSN(LSN) ((LSN).file == 1 && (LSN)/ -IS_IN_RESTORE ../qam/qam_rec.c /^#define IS_IN_RESTORE(dbenv) \\$/ IS_MAX_LSN ../dbinc/db_int.in /^#define IS_MAX_LSN(LSN) \\$/ IS_NOT_LOGGED_LSN ../dbinc/db_int.in /^#define IS_NOT_LOGGED_LSN(LSN) \\$/ IS_PEER_POLICY ../dbinc/repmgr.h /^#define IS_PEER_POLICY(p) ((p) == DB_REPMGR_ACKS_A/ -IS_PHASE1_DONE ../rep/rep_elect.c /^#define IS_PHASE1_DONE(rep) \\$/ +IS_PHASE1_DONE ../rep/rep_elect.c /^#define IS_PHASE1_DONE(rep) \\$/ IS_REAL_TXN ../dbinc/db_int.in /^#define IS_REAL_TXN(txn) \\$/ IS_RECOVERING ../dbinc/db_int.in /^#define IS_RECOVERING(dbenv) \\$/ IS_REP_CLIENT ../dbinc/rep.h /^#define IS_REP_CLIENT(dbenv) \\$/ IS_REP_MASTER ../dbinc/rep.h /^#define IS_REP_MASTER(dbenv) \\$/ IS_SUBTRANSACTION ../dbinc/db_int.in /^#define IS_SUBTRANSACTION(txn) \\$/ +IS_USING_LEASES ../dbinc/rep.h /^#define IS_USING_LEASES(dbenv) \\$/ IS_VALID_EID ../dbinc/repmgr.h /^#define IS_VALID_EID(e) ((e) >= 0)$/ IS_VALID_PAGESIZE ../dbinc/db_int.in /^#define IS_VALID_PAGESIZE(x) \\$/ IS_VALID_PGNO ../dbinc/db_verify.h /^#define IS_VALID_PGNO(x) ((x) <= vdp->last_pgno)$/ IS_WRITELOCK ../dbinc/lock.h /^#define IS_WRITELOCK(m) \\$/ IS_ZERO_LSN ../dbinc/db_int.in /^#define IS_ZERO_LSN(LSN) ((LSN).file == 0 && (LSN)/ -I_HAVE_WON ../rep/rep_elect.c /^#define I_HAVE_WON(rep, winner) \\$/ +I_HAVE_WON ../rep/rep_elect.c /^#define I_HAVE_WON(rep, winner) \\$/ JAVADB_STAT_ACTIVE ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_ACTIVE(jenv, cl, jobj, statp, / JAVADB_STAT_INT ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_INT(jenv, jobj, fid, statp, na/ JAVADB_STAT_LONG ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_LONG(jenv, jobj, fid, statp, n/ JAVADB_STAT_LSN ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_LSN(jenv, jobj, fid, statp, na/ JAVADB_STAT_STRING ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_STRING(jenv, jobj, fid, statp,/ JAVADB_STAT_XID ../libdb_java/db_java_wrap.c /^#define JAVADB_STAT_XID(jenv, jobj, fid, statp, na/ -JDBENV ../libdb_java/db_java_wrap.c /^#define JDBENV (arg1 ? (jobject)DB_ENV_INTERNAL(ar/ -JOIN_CURSOR ../dbinc/db_join.h /^} JOIN_CURSOR;$/ -JOIN_RETRY ../dbinc/db_join.h /^#define JOIN_RETRY 0x01 \/* Error on primary get; / +JDBENV ../libdb_java/db_java_wrap.c 1124 +JOIN_RETRY ../dbinc/db_join.h 30 Java_com_sleepycat_db_internal_DbUtil_is_1big_1endian ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_DbUtil_is_1big_1end/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1cdsgroup_1begin ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1close0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1dbremove ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1dbrename ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1err ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1errx ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1fileid_1reset ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1cache_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1cachesize_1ncache ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1data_1dirs ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1encrypt_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1home ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lg_1bsize ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lg_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lg_1filemode ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lg_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lg_1regionmax ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lk_1conflicts ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lk_1detect ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lk_1max_1lockers ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lk_1max_1locks ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1lk_1max_1objects ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1mp_1max_1openfd ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1mp_1max_1write ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1mp_1max_1write_1sleep ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1mp_1mmapsize ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1open_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1shm_1key ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1timeout ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1tmp_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1tx_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1tx_1timestamp ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1verbose ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1version_1major ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1version_1minor ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1version_1patch ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1get_1version_1string ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1is_1bigendian ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1detect ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1get ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1id ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1id_1free ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1put ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lock_1vec ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1archive ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1compare ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1cursor ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1file ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1flush ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1print ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1put ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1log_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1lsn_1reset ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1memp_1fstat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1memp_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1memp_1trickle ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1get_1align ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1get_1increment ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1get_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1get_1tas_1spins ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1set_1align ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1set_1increment ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1set_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1set_1tas_1spins ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1mutex_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1open ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1remove0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1elect ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1flush ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1get_1config ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1get_1limit ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1get_1nsites ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1get_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1get_1timeout ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1process_1message ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1config ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1lease ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1limit ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1nsites ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1timeout ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1set_1transport ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1start ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1rep_1sync ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1add_1remote_1site ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1get_1ack_1policy ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1set_1ack_1policy ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1set_1local_1site ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1site_1list ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1start ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1repmgr_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1app_1dispatch ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1cache_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1data_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1encrypt ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1errcall ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1event_1notify ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1feedback ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1intermediate_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lg_1bsize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lg_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lg_1filemode ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lg_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lg_1regionmax ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lk_1conflicts ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lk_1detect ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lk_1max_1lockers ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lk_1max_1locks ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1lk_1max_1objects ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1mp_1max_1openfd ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1mp_1max_1write ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1mp_1mmapsize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1msgcall ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1paniccall ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1rep_1request ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1rpc_1server ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1shm_1key ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1timeout ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1tmp_1dir ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1tx_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1tx_1timestamp0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1set_1verbose ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1strerror ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1txn_1begin ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1txn_1checkpoint ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1txn_1recover ../libdb_java/db_java_wrap.c /^JNIEXPORT jobjectArray JNICALL Java_com_sleepycat_/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1txn_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbLogc_1close0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbLogc_1get ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbLogc_1version ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1get_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1get_1maxsize ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1get_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1set_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1set_1maxsize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbMpoolFile_1set_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1close0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1db ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1key ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1range_1max ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1get_1range_1min ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1initial_1value ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1open ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1remove0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1set_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1set_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1set_1range ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbSequence_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1abort0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1commit0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1discard0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1get_1name ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1id ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1prepare ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1set_1name ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_DbTxn_1set_1timeout ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1associate ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1close0 ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1compact ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1cursor ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1del ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1err ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1errx ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1exists ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1bt_1minkey ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1byteswapped ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1cachesize_1ncache ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1dbname ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1encrypt_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1filename ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1h_1ffactor ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1h_1nelem ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1lorder ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1mpf ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1multiple ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1open_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1pagesize ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1q_1extentsize ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1re_1delim ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1re_1len ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1re_1pad ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1re_1source ../libdb_java/db_java_wrap.c /^JNIEXPORT jstring JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1transactional ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1get_1type ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1join ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1key_1range ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1open ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1pget ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1put ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1remove0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1rename0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1append_1recno ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1bt_1compare ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1bt_1minkey ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1bt_1prefix ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1cachesize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1dup_1compare ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1encrypt ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1feedback ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1flags ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1h_1compare ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1h_1ffactor ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1h_1hash ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1h_1nelem ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1lorder ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1pagesize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1q_1extentsize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1re_1delim ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1re_1len ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1re_1pad ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1set_1re_1source ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1stat ../libdb_java/db_java_wrap.c /^JNIEXPORT jobject JNICALL Java_com_sleepycat_db_in/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1sync ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1truncate ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1upgrade ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Db_1verify0 ../libdb_java/db_java_wrap.c /^JNIEXPORT jboolean JNICALL Java_com_sleepycat_db_i/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1close0 ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1count ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1del ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1dup ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1get ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1get_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1pget ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1put ../libdb_java/db_java_wrap.c /^JNIEXPORT jint JNICALL Java_com_sleepycat_db_inter/ +Java_com_sleepycat_db_internal_db_1javaJNI_Dbc_1set_1priority ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ Java_com_sleepycat_db_internal_db_1javaJNI_deleteRef0 ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_db_1javaJNI_deleteR/ +Java_com_sleepycat_db_internal_db_1javaJNI_delete_1DbLock ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ Java_com_sleepycat_db_internal_db_1javaJNI_getDbEnv0 ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_db_1javaJNI_getDbEn/ Java_com_sleepycat_db_internal_db_1javaJNI_initDbEnvRef0 ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_db_1javaJNI_initDbE/ Java_com_sleepycat_db_internal_db_1javaJNI_initDbRef0 ../libdb_java/db_java_wrap.c /^Java_com_sleepycat_db_internal_db_1javaJNI_initDbR/ Java_com_sleepycat_db_internal_db_1javaJNI_initialize ../libdb_java/db_java_wrap.c /^JNIEXPORT void JNICALL Java_com_sleepycat_db_inter/ -LASTCKP_CMP ../dbinc/log.h /^#define LASTCKP_CMP 1$/ -LCK_ALWAYS ../dbinc/db_am.h /^#define LCK_ALWAYS 1 \/* Lock even for off page d/ -LCK_COUPLE ../dbinc/db_am.h /^#define LCK_COUPLE 2 \/* Lock Couple *\/$/ -LCK_COUPLE_ALWAYS ../dbinc/db_am.h /^#define LCK_COUPLE_ALWAYS 3 \/* Lock Couple even i/ -LCK_DOWNGRADE ../dbinc/db_am.h /^#define LCK_DOWNGRADE 4 \/* Downgrade the lock. (/ -LCK_ROLLBACK ../dbinc/db_am.h /^#define LCK_ROLLBACK 5 \/* Lock even if in rollba/ -LEAFLEVEL ../dbinc/db_page.h /^#define LEAFLEVEL 1$/ +Java_com_sleepycat_db_internal_db_1javaJNI_new_1Db ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_new_1DbEnv ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +Java_com_sleepycat_db_internal_db_1javaJNI_new_1DbSequence ../libdb_java/db_java_wrap.c /^JNIEXPORT jlong JNICALL Java_com_sleepycat_db_inte/ +LASTCKP_CMP ../dbinc/log.h 416 +LCK_ALWAYS ../dbinc/db_am.h 142 +LCK_COUPLE ../dbinc/db_am.h 143 +LCK_COUPLE_ALWAYS ../dbinc/db_am.h 144 +LCK_DOWNGRADE ../dbinc/db_am.h 145 +LCK_ROLLBACK ../dbinc/db_am.h 146 +LEAFLEVEL ../dbinc/db_page.h 242 +LEASE_REFRESH_TRIES ../dbinc/rep.h 566 LEN_HDATA ../dbinc/db_page.h /^#define LEN_HDATA(dbp, p, psize, indx) \\$/ LEN_HITEM ../dbinc/db_page.h /^#define LEN_HITEM(dbp, pg, pgsize, indx) \\$/ LEN_HKEY ../dbinc/db_page.h /^#define LEN_HKEY(dbp, p, psize, indx) \\$/ LEN_HKEYDATA ../dbinc/db_page.h /^#define LEN_HKEYDATA(dbp, pg, psize, indx) \\$/ LEVEL ../dbinc/db_page.h /^#define LEVEL(p) (((PAGE *)p)->level)$/ -LFNAME ../dbinc/log.h /^#define LFNAME "log.%010d" \/* Log file name temp/ -LFNAME_V1 ../dbinc/log.h /^#define LFNAME_V1 "log.%05d" \/* Log file name tem/ -LFPREFIX ../dbinc/log.h /^#define LFPREFIX "log." \/* Log file name prefix./ +LFNAME ../dbinc/log.h 78 +LFNAME_V1 ../dbinc/log.h 79 +LFPREFIX ../dbinc/log.h 77 LF_CLR ../dbinc/db_int.in /^#define LF_CLR(f) ((flags) &= ~(f))$/ LF_ISSET ../dbinc/db_int.in /^#define LF_ISSET(f) ((flags) & (f))$/ LF_SET ../dbinc/db_int.in /^#define LF_SET(f) ((flags) |= (f))$/ -LG_BASE_REGION_SIZE ../dbinc/log.h /^#define LG_BASE_REGION_SIZE (65000) \/* 64KB - 53/ -LG_BSIZE_DEFAULT ../dbinc/log.h /^#define LG_BSIZE_DEFAULT (32000) \/* 32 KB - 768B/ -LG_BSIZE_INMEM ../dbinc/log.h /^#define LG_BSIZE_INMEM (1 * MEGABYTE) \/* 1 MB. */ -LG_CURSOR_BUF_SIZE ../dbinc/log.h /^#define LG_CURSOR_BUF_SIZE (32000) \/* 32KB - 768/ -LG_MAX_DEFAULT ../dbinc/log.h /^#define LG_MAX_DEFAULT (10 * MEGABYTE) \/* 10 MB./ -LG_MAX_INMEM ../dbinc/log.h /^#define LG_MAX_INMEM (256 * 1024) \/* 256 KB. *\// +LG_BASE_REGION_SIZE ../dbinc/log.h 90 +LG_BSIZE_DEFAULT ../dbinc/log.h 91 +LG_BSIZE_INMEM ../dbinc/log.h 83 +LG_CURSOR_BUF_SIZE ../dbinc/log.h 92 +LG_MAX_DEFAULT ../dbinc/log.h 81 +LG_MAX_INMEM ../dbinc/log.h 82 LIST_EMPTY ../dbinc/queue.h /^#define LIST_EMPTY(head) ((head)->lh_first == NULL/ LIST_ENTRY ../dbinc/queue.h /^#define LIST_ENTRY(type) \\$/ LIST_FIRST ../dbinc/queue.h /^#define LIST_FIRST(head) ((head)->lh_first)$/ LIST_FOREACH ../dbinc/queue.h /^#define LIST_FOREACH(var, head, field) \\$/ LIST_HEAD ../dbinc/queue.h /^#define LIST_HEAD(name, type) \\$/ LIST_HEAD_INITIALIZER ../dbinc/queue.h /^#define LIST_HEAD_INITIALIZER(head) \\$/ -LIST_INCREMENT ../log/log_archive.c /^#define LIST_INCREMENT 64$/ +LIST_INCREMENT ../log/log_archive.c 179 LIST_INIT ../dbinc/queue.h /^#define LIST_INIT(head) do { \\$/ LIST_INSERT_AFTER ../dbinc/queue.h /^#define LIST_INSERT_AFTER(listelm, elm, field) do / LIST_INSERT_BEFORE ../dbinc/queue.h /^#define LIST_INSERT_BEFORE(listelm, elm, field) do/ LIST_INSERT_HEAD ../dbinc/queue.h /^#define LIST_INSERT_HEAD(head, elm, field) do { / LIST_NEXT ../dbinc/queue.h /^#define LIST_NEXT(elm, field) ((elm)->field.le_nex/ LIST_REMOVE ../dbinc/queue.h /^#define LIST_REMOVE(elm, field) do { \\$/ -LOAD_ACTUAL_MUTEX_CODE ../mutex/mut_tas.c /^#define LOAD_ACTUAL_MUTEX_CODE$/ -LOCKER_LOCK ../dbinc/lock.h /^#define LOCKER_LOCK(lt, reg, locker, ndx) \\$/ +LOAD_ACTUAL_MUTEX_CODE ../mutex/mut_pthread.c 16 +LOCKER_HASH ../dbinc/lock.h /^#define LOCKER_HASH(lt, reg, locker, ndx) \\$/ LOCKING_ON ../dbinc/db_int.in /^#define LOCKING_ON(dbenv) ((dbenv)->lk_handle != N/ LOCK_INIT ../dbinc/lock.h /^#define LOCK_INIT(lock) ((lock).off = LOCK_INVALI/ -LOCK_INVALID ../dbinc/lock.h /^#define LOCK_INVALID INVALID_ROFF$/ +LOCK_INVALID ../dbinc/lock.h 30 LOCK_ISSET ../dbinc/lock.h /^#define LOCK_ISSET(lock) ((lock).off != LOCK_INVAL/ +LOCK_LOCKERS ../dbinc/lock.h /^#define LOCK_LOCKERS(dbenv, region) \\$/ +LOCK_LOCKS ../dbinc/lock.h /^#define LOCK_LOCKS(dbenv, region) \\$/ LOCK_MUTEX ../dbinc/repmgr.h /^#define LOCK_MUTEX(m) do { \\$/ -LOCK_SET_TIME_INVALID ../dbinc/lock.h /^#define LOCK_SET_TIME_INVALID(time) ((time)->tv_se/ -LOCK_SET_TIME_MAX ../dbinc/lock.h /^#define LOCK_SET_TIME_MAX(time) ((time)->tv_sec =/ -LOCK_SYSTEM_LOCK ../dbinc/lock.h /^#define LOCK_SYSTEM_LOCK(dbenv) \\$/ -LOCK_SYSTEM_UNLOCK ../dbinc/lock.h /^#define LOCK_SYSTEM_UNLOCK(dbenv) \\$/ -LOCK_TIME_EQUAL ../dbinc/lock.h /^#define LOCK_TIME_EQUAL(t1, t2) \\$/ -LOCK_TIME_GREATER ../dbinc/lock.h /^#define LOCK_TIME_GREATER(t1, t2) \\$/ -LOCK_TIME_ISMAX ../dbinc/lock.h /^#define LOCK_TIME_ISMAX(time) ((time)->tv_sec == / -LOCK_TIME_ISVALID ../dbinc/lock.h /^#define LOCK_TIME_ISVALID(time) ((time)->tv_sec !/ +LOCK_OBJECTS ../dbinc/lock.h /^#define LOCK_OBJECTS(dbenv, region) \\$/ +LOCK_REGION_LOCK ../dbinc/lock.h /^#define LOCK_REGION_LOCK(dbenv) \\$/ +LOCK_REGION_UNLOCK ../dbinc/lock.h /^#define LOCK_REGION_UNLOCK(dbenv) \\$/ +LOCK_SYSTEM_LOCK ../dbinc/lock.h /^#define LOCK_SYSTEM_LOCK(dbenv)$/ +LOCK_SYSTEM_UNLOCK ../dbinc/lock.h /^#define LOCK_SYSTEM_UNLOCK(dbenv)$/ LOFFSET ../dbinc/db_page.h /^#define LOFFSET(dbp, pg) \\$/ -LOG ../dbinc/log.h /^struct __log; typedef struct __log LOG;$/ +LOG ../dbinc/log.h 74 LOGGING_ON ../dbinc/db_int.in /^#define LOGGING_ON(dbenv) ((dbenv)->lg_handle != N/ -LOGP ../dbinc/log.h /^struct __log_persist; typedef struct __log_persist/ +LOGP ../dbinc/log.h 75 LOG_COMPARE ../dbinc/db_int.in /^#define LOG_COMPARE(lsn0, lsn1) \\$/ +LOG_FLAGS ../txn/txn.c /^#define LOG_FLAGS(txn) \\$/ LOG_HDR_SUM ../dbinc/log.h /^#define LOG_HDR_SUM(crypto, hdr, sum) do { \\$/ LOG_OP ../dbinc/debug.h /^#define LOG_OP(C, T, O, K, A, F) { \\$/ LOG_SYSTEM_LOCK ../dbinc/log.h /^#define LOG_SYSTEM_LOCK(dbenv) \\$/ LOG_SYSTEM_UNLOCK ../dbinc/log.h /^#define LOG_SYSTEM_UNLOCK(dbenv) \\$/ -LOWER_MASK ../crypto/mersenne/mt19937db.c /^#define LOWER_MASK 0x7fffffff \/* least significan/ +LOWER_MASK ../crypto/mersenne/mt19937db.c 41 LSN ../dbinc/db_page.h /^#define LSN(p) (((PAGE *)p)->lsn)$/ -LSN_COLLECTION ../dbinc/rep.h /^} LSN_COLLECTION;$/ LSN_NOT_LOGGED ../dbinc/db_int.in /^#define LSN_NOT_LOGGED(LSN) do { \\$/ -M ../crypto/mersenne/mt19937db.c /^#define M 397$/ +M ../crypto/mersenne/mt19937db.c 38 MAKE_INMEM ../dbinc/fop.h /^#define MAKE_INMEM(D) do { \\$/ MAKE_STAT_LIST ../dbinc/tcl_db.h /^#define MAKE_STAT_LIST(s, v) do { \\$/ MAKE_STAT_LSN ../dbinc/tcl_db.h /^#define MAKE_STAT_LSN(s, lsn) do { \\$/ MAKE_STAT_STRLIST ../dbinc/tcl_db.h /^#define MAKE_STAT_STRLIST(s,s1) do { \\$/ MAKE_WSTAT_LIST ../dbinc/tcl_db.h /^#define MAKE_WSTAT_LIST(s, v) do { \\$/ -MAP_FAILED ../mutex/tm.c /^#define MAP_FAILED (void *)-1$/ -MAP_FILE ../mutex/tm.c /^#define MAP_FILE 0$/ +MAP_FAILED ../os/os_map.c 424 MASTER_ONLY ../rep/rep_record.c /^#define MASTER_ONLY(rep, rp) do { \\$/ MASTER_UPDATE ../rep/rep_record.c /^#define MASTER_UPDATE(dbenv, renv) do { \\$/ -MATRIX_A ../crypto/mersenne/mt19937db.c /^#define MATRIX_A 0x9908b0df \/* constant vector / -MAXARGS ../common/util_arg.c /^#define MAXARGS 25$/ -MAXBQUALSIZE ../dbinc/xa.h /^#define MAXBQUALSIZE 64 \/* maximum size in byte/ -MAXBTREELEVEL ../dbinc/db_page.h /^#define MAXBTREELEVEL 255$/ -MAXGTRIDSIZE ../dbinc/xa.h /^#define MAXGTRIDSIZE 64 \/* maximum size in byte/ -MAXHOSTNAMELEN ../dbinc/repmgr.h /^#define MAXHOSTNAMELEN 256$/ -MAXINFOSIZE ../dbinc/xa.h /^#define MAXINFOSIZE 256 \/* maximum size in bytes/ -MAXKB ../crypto/rijndael/rijndael-alg-fst.h /^#define MAXKB (256\/8)$/ -MAXKC ../crypto/rijndael/rijndael-alg-fst.h /^#define MAXKC (256\/32)$/ -MAXNR ../crypto/rijndael/rijndael-alg-fst.h /^#define MAXNR 14$/ -MAX_ID ../dbinc/tcl_db.h /^#define MAX_ID 8 \/* Maximum number of sub-id's w/ -MAX_IV_SIZE ../crypto/rijndael/rijndael-api-fst.h /^#define MAX_IV_SIZE 16 \/* # bytes ne/ -MAX_KEY_SIZE ../crypto/rijndael/rijndael-api-fst.h /^#define MAX_KEY_SIZE 64 \/* # of ASCII/ +MATRIX_A ../crypto/mersenne/mt19937db.c 39 +MAXARGS ../common/util_arg.c 29 +MAXBQUALSIZE ../dbinc/xa.h 25 +MAXBTREELEVEL ../dbinc/db_page.h 243 +MAXGTRIDSIZE ../dbinc/xa.h 24 +MAXHOSTNAMELEN ../dbinc/repmgr.h 43 +MAXINFOSIZE ../dbinc/xa.h 49 +MAXKB ../crypto/rijndael/rijndael-alg-fst.h 33 +MAXKC ../crypto/rijndael/rijndael-alg-fst.h 32 +MAXNR ../crypto/rijndael/rijndael-alg-fst.h 34 +MAX_ID ../dbinc/tcl_db.h 21 +MAX_INT_TO_HEX ../db/db.c 1196 +MAX_IV_SIZE ../crypto/rijndael/rijndael-api-fst.h 71 +MAX_KEY_SIZE ../crypto/rijndael/rijndael-api-fst.h 70 MAX_LSN ../dbinc/db_int.in /^#define MAX_LSN(LSN) do { \\$/ -MAX_LSN_TO_TEXT ../db/db.c /^#define MAX_LSN_TO_TEXT 17$/ -MAX_PAGE_NUMBER ../dbinc/db_185.in /^#define MAX_PAGE_NUMBER 0xffffffff \/* >= # of pag/ -MAX_PAGE_OFFSET ../dbinc/db_185.in /^#define MAX_PAGE_OFFSET 65535 \/* >= # of bytes i/ -MAX_PGNOS ../lock/lock_list.c /^#define MAX_PGNOS 0xffff$/ -MAX_REC_NUMBER ../dbinc/db_185.in /^#define MAX_REC_NUMBER 0xffffffff \/* >= # of reco/ -MAX_SITE_LOC_STRING ../dbinc/repmgr.h /^#define MAX_SITE_LOC_STRING (MAXHOSTNAMELEN+20)$/ -MEGABYTE ../dbinc/db_int.in /^#define MEGABYTE 1048576$/ -MEM_ALIGN ../repmgr/repmgr_sel.c /^#define MEM_ALIGN sizeof(double)$/ -MINFILL ../dbinc/hash.h /^#define MINFILL 4$/ -MODE_CBC ../crypto/rijndael/rijndael-api-fst.h /^#define MODE_CBC 2 \/* Are we ci/ -MODE_CFB1 ../crypto/rijndael/rijndael-api-fst.h /^#define MODE_CFB1 3 \/* Are we ci/ -MODE_ECB ../crypto/rijndael/rijndael-api-fst.h /^#define MODE_ECB 1 \/* Are we ci/ -MPFARRAY ../dbinc/qam.h /^} MPFARRAY;$/ +MAX_PAGE_NUMBER ../dbinc/db_185.in 82 +MAX_PAGE_OFFSET ../dbinc/db_185.in 84 +MAX_PGNOS ../lock/lock_list.c 45 +MAX_REC_NUMBER ../dbinc/db_185.in 86 +MAX_SITE_LOC_STRING ../dbinc/repmgr.h 47 +MEGABYTE ../dbinc/db_int.in 117 +MEM_ALIGN ../repmgr/repmgr_sel.c 508 +MINFILL ../dbinc/hash.h 110 +MODE_CBC ../crypto/rijndael/rijndael-api-fst.h 50 +MODE_CFB1 ../crypto/rijndael/rijndael-api-fst.h 51 +MODE_ECB ../crypto/rijndael/rijndael-api-fst.h 49 MPF_ILLEGAL_AFTER_OPEN ../dbinc/mp.h /^#define MPF_ILLEGAL_AFTER_OPEN(dbmfp, name) \\$/ -MPF_ILLEGAL_BEFORE_OPEN ../dbinc/mp.h /^#define MPF_ILLEGAL_BEFORE_OPEN(dbmfp, name) \\/ -MPOOL ../dbinc/mp.h /^struct __mpool; typedef struct __mpool MPOOL;$/ -MPOOLFILE ../dbinc/db.in /^struct __mpoolfile; typedef struct __mpoolfile MPO/ -MPOOL_BASE_DECREMENT ../dbinc/mp.h /^#define MPOOL_BASE_DECREMENT (UINT32_MAX - (UINT32/ -MPOOL_FILE_BUCKETS ../dbinc/mp.h /^#define MPOOL_FILE_BUCKETS 17$/ +MPF_ILLEGAL_BEFORE_OPEN ../dbinc/mp.h /^#define MPF_ILLEGAL_BEFORE_OPEN(dbmfp, name) \\$/ +MPOOL ../dbinc/mp.h 21 +MPOOLFILE ../dbinc/db.in 183 +MPOOL_BASE_DECREMENT ../dbinc/mp.h 344 +MPOOL_FILE_BUCKETS ../dbinc/mp.h 96 MPOOL_ON ../dbinc/db_int.in /^#define MPOOL_ON(dbenv) ((dbenv)->mp_handle != NU/ -MPOOL_PRI_DEFAULT ../dbinc/mp.h /^#define MPOOL_PRI_DEFAULT 0 \/* No adjustment -- s/ -MPOOL_PRI_DIRTY ../dbinc/mp.h /^#define MPOOL_PRI_DIRTY 10 \/* Dirty gets a 10% b/ -MPOOL_PRI_HIGH ../dbinc/mp.h /^#define MPOOL_PRI_HIGH 10 \/* With the dirty buff/ -MPOOL_PRI_LOW ../dbinc/mp.h /^#define MPOOL_PRI_LOW -2 \/* Low. *\/$/ -MPOOL_PRI_VERY_HIGH ../dbinc/mp.h /^#define MPOOL_PRI_VERY_HIGH 1 \/* Add number of bu/ -MPOOL_PRI_VERY_LOW ../dbinc/mp.h /^#define MPOOL_PRI_VERY_LOW -1 \/* Dead duck. Chec/ +MPOOL_PRI_DEFAULT ../dbinc/mp.h 352 +MPOOL_PRI_DIRTY ../dbinc/mp.h 354 +MPOOL_PRI_HIGH ../dbinc/mp.h 353 +MPOOL_PRI_LOW ../dbinc/mp.h 351 +MPOOL_PRI_VERY_HIGH ../dbinc/mp.h 355 +MPOOL_PRI_VERY_LOW ../dbinc/mp.h 350 MPOOL_REGION_LOCK ../dbinc/mp.h /^#define MPOOL_REGION_LOCK(dbenv, infop) \\$/ MPOOL_REGION_UNLOCK ../dbinc/mp.h /^#define MPOOL_REGION_UNLOCK(dbenv, infop) \\$/ MPOOL_SYSTEM_LOCK ../dbinc/mp.h /^#define MPOOL_SYSTEM_LOCK(dbenv) \\$/ MPOOL_SYSTEM_UNLOCK ../dbinc/mp.h /^#define MPOOL_SYSTEM_UNLOCK(dbenv) \\$/ -MP_CAN_MMAP ../dbinc/mp.h /^#define MP_CAN_MMAP 0x001 \/* If the file can be / -MP_DIRECT ../dbinc/mp.h /^#define MP_DIRECT 0x002 \/* No OS buffering. *\/$/ -MP_DURABLE_UNKNOWN ../dbinc/mp.h /^#define MP_DURABLE_UNKNOWN 0x004 \/* We don't care/ -MP_EXTENT ../dbinc/mp.h /^#define MP_EXTENT 0x008 \/* Extent file. *\/$/ -MP_FAKE_DEADFILE ../dbinc/mp.h /^#define MP_FAKE_DEADFILE 0x010 \/* Deadfile field:/ -MP_FAKE_FILEWRITTEN ../dbinc/mp.h /^#define MP_FAKE_FILEWRITTEN 0x020 \/* File_written/ -MP_FAKE_NB ../dbinc/mp.h /^#define MP_FAKE_NB 0x040 \/* No_backing_file fiel/ -MP_FAKE_UOC ../dbinc/mp.h /^#define MP_FAKE_UOC 0x080 \/* Unlink_on_close fie/ -MP_FILEID_SET ../dbinc/db.in /^#define MP_FILEID_SET 0x001 \/* Application suppl/ -MP_FLUSH ../dbinc/db.in /^#define MP_FLUSH 0x002 \/* Was opened to flush a / -MP_MULTIVERSION ../dbinc/db.in /^#define MP_MULTIVERSION 0x004 \/* Opened for mult/ -MP_NOT_DURABLE ../dbinc/mp.h /^#define MP_NOT_DURABLE 0x100 \/* File is not dura/ -MP_OPEN_CALLED ../dbinc/db.in /^#define MP_OPEN_CALLED 0x008 \/* File opened. *\// -MP_READONLY ../dbinc/db.in /^#define MP_READONLY 0x010 \/* File is readonly. */ -MP_TEMP ../dbinc/mp.h /^#define MP_TEMP 0x200 \/* Backing file is a temp/ -MP_TRUNC_RECOVER ../dbinc/mp.h /^#define MP_TRUNC_RECOVER 0x01$/ -MSG_SIZE ../dbinc/tcl_db.h /^#define MSG_SIZE 100 \/* Message size *\/$/ -MS_PER_SEC ../dbinc/db_int.in /^#define MS_PER_SEC 1000 \/* Milliseconds in a sec/ -MTX_APPLICATION ../dbinc/mutex.h /^#define MTX_APPLICATION 1$/ -MTX_DB_HANDLE ../dbinc/mutex.h /^#define MTX_DB_HANDLE 2$/ -MTX_ENV_DBLIST ../dbinc/mutex.h /^#define MTX_ENV_DBLIST 3$/ -MTX_ENV_REGION ../dbinc/mutex.h /^#define MTX_ENV_REGION 4$/ -MTX_LOCK_REGION ../dbinc/mutex.h /^#define MTX_LOCK_REGION 5$/ -MTX_LOGICAL_LOCK ../dbinc/mutex.h /^#define MTX_LOGICAL_LOCK 6$/ -MTX_LOG_FILENAME ../dbinc/mutex.h /^#define MTX_LOG_FILENAME 7$/ -MTX_LOG_FLUSH ../dbinc/mutex.h /^#define MTX_LOG_FLUSH 8$/ -MTX_LOG_HANDLE ../dbinc/mutex.h /^#define MTX_LOG_HANDLE 9$/ -MTX_LOG_REGION ../dbinc/mutex.h /^#define MTX_LOG_REGION 10$/ -MTX_MAX_ENTRY ../dbinc/mutex.h /^#define MTX_MAX_ENTRY 28$/ -MTX_MPOOLFILE_HANDLE ../dbinc/mutex.h /^#define MTX_MPOOLFILE_HANDLE 11$/ -MTX_MPOOL_FH ../dbinc/mutex.h /^#define MTX_MPOOL_FH 12$/ -MTX_MPOOL_FILE_BUCKET ../dbinc/mutex.h /^#define MTX_MPOOL_FILE_BUCKET 13$/ -MTX_MPOOL_HANDLE ../dbinc/mutex.h /^#define MTX_MPOOL_HANDLE 14$/ -MTX_MPOOL_HASH_BUCKET ../dbinc/mutex.h /^#define MTX_MPOOL_HASH_BUCKET 15$/ -MTX_MPOOL_IO ../dbinc/mutex.h /^#define MTX_MPOOL_IO 16$/ -MTX_MPOOL_REGION ../dbinc/mutex.h /^#define MTX_MPOOL_REGION 17$/ -MTX_MUTEX_REGION ../dbinc/mutex.h /^#define MTX_MUTEX_REGION 18$/ -MTX_MUTEX_TEST ../dbinc/mutex.h /^#define MTX_MUTEX_TEST 19$/ -MTX_REP_DATABASE ../dbinc/mutex.h /^#define MTX_REP_DATABASE 20$/ -MTX_REP_REGION ../dbinc/mutex.h /^#define MTX_REP_REGION 21$/ -MTX_SEQUENCE ../dbinc/mutex.h /^#define MTX_SEQUENCE 22$/ -MTX_TWISTER ../dbinc/mutex.h /^#define MTX_TWISTER 23$/ -MTX_TXN_ACTIVE ../dbinc/mutex.h /^#define MTX_TXN_ACTIVE 24$/ -MTX_TXN_CHKPT ../dbinc/mutex.h /^#define MTX_TXN_CHKPT 25$/ -MTX_TXN_COMMIT ../dbinc/mutex.h /^#define MTX_TXN_COMMIT 26$/ -MTX_TXN_MVCC ../dbinc/mutex.h /^#define MTX_TXN_MVCC 27$/ -MTX_TXN_REGION ../dbinc/mutex.h /^#define MTX_TXN_REGION 28$/ -MT_FILE ../mutex/tm.c /^#define MT_FILE "TESTDIR\/mutex.file"$/ -MT_FILE_QUIT ../mutex/tm.c /^#define MT_FILE_QUIT "TESTDIR\/mutex.file.quit"$/ +MP_BUCKET ../dbinc/mp.h /^#define MP_BUCKET(mf_offset, pgno, nbuckets, bucke/ +MP_CAN_MMAP ../dbinc/mp.h 459 +MP_DIRECT ../dbinc/mp.h 460 +MP_DURABLE_UNKNOWN ../dbinc/mp.h 461 +MP_EXTENT ../dbinc/mp.h 462 +MP_FAKE_DEADFILE ../dbinc/mp.h 463 +MP_FAKE_FILEWRITTEN ../dbinc/mp.h 464 +MP_FAKE_NB ../dbinc/mp.h 465 +MP_FAKE_UOC ../dbinc/mp.h 466 +MP_FILEID_SET ../dbinc/db.in 869 +MP_FLUSH ../dbinc/db.in 870 +MP_GET_BUCKET ../dbinc/mp.h /^#define MP_GET_BUCKET(dbmfp, pgno, infopp, hp, ret/ +MP_GET_REGION ../dbinc/mp.h /^#define MP_GET_REGION(dbmfp, pgno, infopp, ret) do/ +MP_HASH ../dbinc/mp.h /^#define MP_HASH(mf_offset, pgno) \\$/ +MP_HASH_BUCKET ../dbinc/mp.h /^#define MP_HASH_BUCKET(hash, nbuckets, mask, bucke/ +MP_MASK ../dbinc/mp.h /^#define MP_MASK(nbuckets, mask) do { \\$/ +MP_MULTIVERSION ../dbinc/db.in 871 +MP_NOT_DURABLE ../dbinc/mp.h 467 +MP_OPEN_CALLED ../dbinc/db.in 872 +MP_READONLY ../dbinc/db.in 873 +MP_TEMP ../dbinc/mp.h 468 +MP_TRUNC_RECOVER ../dbinc/mp.h 625 +MSG_SIZE ../dbinc/tcl_db.h 16 +MS_PER_NS ../dbinc/db_int.in 125 +MS_PER_SEC ../dbinc/db_int.in 126 +MTX_APPLICATION ../dbinc/mutex.h 26 +MTX_DB_HANDLE ../dbinc/mutex.h 27 +MTX_ENV_DBLIST ../dbinc/mutex.h 28 +MTX_ENV_HANDLE ../dbinc/mutex.h 29 +MTX_ENV_REGION ../dbinc/mutex.h 30 +MTX_LOCK_REGION ../dbinc/mutex.h 31 +MTX_LOGICAL_LOCK ../dbinc/mutex.h 32 +MTX_LOG_FILENAME ../dbinc/mutex.h 33 +MTX_LOG_FLUSH ../dbinc/mutex.h 34 +MTX_LOG_HANDLE ../dbinc/mutex.h 35 +MTX_LOG_REGION ../dbinc/mutex.h 36 +MTX_MAX_ENTRY ../dbinc/mutex.h 58 +MTX_MPOOLFILE_HANDLE ../dbinc/mutex.h 37 +MTX_MPOOL_FH ../dbinc/mutex.h 38 +MTX_MPOOL_FILE_BUCKET ../dbinc/mutex.h 39 +MTX_MPOOL_HANDLE ../dbinc/mutex.h 40 +MTX_MPOOL_HASH_BUCKET ../dbinc/mutex.h 41 +MTX_MPOOL_IO ../dbinc/mutex.h 42 +MTX_MPOOL_REGION ../dbinc/mutex.h 43 +MTX_MUTEX_REGION ../dbinc/mutex.h 44 +MTX_MUTEX_TEST ../dbinc/mutex.h 45 +MTX_REP_CKP ../dbinc/mutex.h 46 +MTX_REP_DATABASE ../dbinc/mutex.h 47 +MTX_REP_EVENT ../dbinc/mutex.h 48 +MTX_REP_REGION ../dbinc/mutex.h 49 +MTX_SEQUENCE ../dbinc/mutex.h 50 +MTX_TWISTER ../dbinc/mutex.h 51 +MTX_TXN_ACTIVE ../dbinc/mutex.h 52 +MTX_TXN_CHKPT ../dbinc/mutex.h 53 +MTX_TXN_COMMIT ../dbinc/mutex.h 54 +MTX_TXN_MVCC ../dbinc/mutex.h 55 +MTX_TXN_REGION ../dbinc/mutex.h 56 +MT_FILE ../mutex/test_mutex.c 60 +MT_FILE_QUIT ../mutex/test_mutex.c 61 MULTIVERSION ../dbinc/mp.h /^#define MULTIVERSION(dbp) ((dbp)->mpf->mfp->multiv/ MUTEXP_SET ../dbinc/mutex_int.h /^#define MUTEXP_SET(indx) \\$/ -MUTEX_ALIGN ../dbinc/mutex_int.h /^#define MUTEX_ALIGN 16$/ +MUTEX_ALIGN ../dbinc/mutex_int.h 118 MUTEX_DESTROY ../dbinc/mutex_int.h /^#define MUTEX_DESTROY(x) sema_destroy(x)$/ -MUTEX_FIELDS ../dbinc/mutex_int.h /^#define MUTEX_FIELDS \\$/ +MUTEX_FIELDS ../dbinc/mutex_int.h 22 MUTEX_INIT ../dbinc/mutex_int.h /^#define MUTEX_INIT(x) 0$/ -MUTEX_INVALID ../dbinc/mutex.h /^#define MUTEX_INVALID 0$/ +MUTEX_INVALID ../dbinc/mutex.h 21 MUTEX_LOCK ../dbinc/mutex.h /^#define MUTEX_LOCK(dbenv, mutex) do { \\$/ +MUTEX_MEMBAR ../dbinc/mutex_int.h /^#define MUTEX_MEMBAR() membar_enter();$/ MUTEX_ON ../dbinc/db_int.in /^#define MUTEX_ON(dbenv) ((dbenv)->mutex_handle !=/ -MUTEX_PAUSE ../dbinc/mutex_int.h /^#define MUTEX_PAUSE {__asm{_emit 0xf3}; __asm{_em/ +MUTEX_PAUSE ../dbinc/mutex_int.h 301 MUTEX_SET ../dbinc/mutex_int.h /^#define MUTEX_SET(x) (!_check_lock(x, 0, 1))$/ MUTEX_SYSTEM_LOCK ../dbinc/mutex_int.h /^#define MUTEX_SYSTEM_LOCK(dbenv) \\$/ MUTEX_SYSTEM_UNLOCK ../dbinc/mutex_int.h /^#define MUTEX_SYSTEM_UNLOCK(dbenv) \\$/ +MUTEX_THREAD_TEST ../mutex/test_mutex.c 14 MUTEX_UNLOCK ../dbinc/mutex.h /^#define MUTEX_UNLOCK(dbenv, mutex) do { \\$/ MUTEX_UNSET ../dbinc/mutex_int.h /^#define MUTEX_UNSET(x) _clear_lock(x, 0)$/ MVCC_BHALIGN ../dbinc/mp.h /^#define MVCC_BHALIGN(mfp, p) do { \\$/ @@ -1454,8 +1827,8 @@ MVCC_SKIP_CURADJ ../dbinc/mp.h /^#define MVCC_SKIP_CURADJ(dbc, pgno) \\$/ M_16_SWAP ../dbinc/db_swap.h /^#define M_16_SWAP(a) { \\$/ M_32_SWAP ../dbinc/db_swap.h /^#define M_32_SWAP(a) { \\$/ M_64_SWAP ../dbinc/db_swap.h /^#define M_64_SWAP(a) { \\$/ -Mtm ../mutex/tm.c /^main(argc, argv)$/ -N ../crypto/mersenne/mt19937db.c /^#define N 624$/ +Mtest_mutex ../mutex/test_mutex.c /^main(argc, argv)$/ +N ../crypto/mersenne/mt19937db.c 37 NAME_TO_DB ../dbinc/tcl_db.h /^#define NAME_TO_DB(name) (DB *)_NameToPtr((name))$/ NAME_TO_DBC ../dbinc/tcl_db.h /^#define NAME_TO_DBC(name) (DBC *)_NameToPtr((name)/ NAME_TO_ENV ../dbinc/tcl_db.h /^#define NAME_TO_ENV(name) (DB_ENV *)_NameToPtr((na/ @@ -1463,67 +1836,76 @@ NAME_TO_LOCK ../dbinc/tcl_db.h /^#define NAME_TO_LOCK(name) (DB_LOCK *)_NameToPt NAME_TO_MP ../dbinc/tcl_db.h /^#define NAME_TO_MP(name) (DB_MPOOLFILE *)_NameToPt/ NAME_TO_SEQUENCE ../dbinc/tcl_db.h /^#define NAME_TO_SEQUENCE(name) (DB_SEQUENCE *)_Nam/ NAME_TO_TXN ../dbinc/tcl_db.h /^#define NAME_TO_TXN(name) (DB_TXN *)_NameToPtr((na/ -NAMLEN ../clib/getcwd.c /^# define NAMLEN(dirent) strlen((dirent)->d_name)$/ -NBUCKET ../dbinc/mp.h /^#define NBUCKET(mc, mf_offset, pgno) \\$/ -NCACHE ../dbinc/mp.h /^#define NCACHE(mp, mf_offset, pgno) \\$/ -NCACHED ../dbinc/db_page.h /^#define NCACHED 32 \/* number of spare points *\// -NCACHED2X ../dbinc/db_upgrade.h /^#define NCACHED2X 32 \/* number of spare points */ -NCACHED30 ../dbinc/db_upgrade.h /^#define NCACHED30 32 \/* number of spare points */ -NDX_INVALID ../dbinc/hash.h /^#define NDX_INVALID 0xFFFF$/ +NAMLEN ../dbinc/db_int.in /^# define NAMLEN(dirent) strlen((dirent)->d_name)$/ +NCACHED ../dbinc/db_page.h 136 +NCACHED2X ../dbinc/db_upgrade.h 234 +NCACHED30 ../dbinc/db_upgrade.h 155 +NDX_INVALID ../dbinc/hash.h 114 NELEM ../libdb_java/db_java_wrap.c /^#define NELEM(x) (sizeof (x) \/ sizeof (x[0]))$/ NEXT_PGNO ../dbinc/db_page.h /^#define NEXT_PGNO(p) (((PAGE *)p)->next_pgno)$/ NOWAIT_FLAG ../dbinc/db_int.in /^#define NOWAIT_FLAG(txn) \\$/ +NREGION ../dbinc/mp.h /^#define NREGION(mp, bucket) \\$/ +NS_PER_MS ../dbinc/db_int.in 120 +NS_PER_SEC ../dbinc/db_int.in 122 +NS_PER_US ../dbinc/db_int.in 121 NUM_ENT ../dbinc/db_page.h /^#define NUM_ENT(p) (((PAGE *)p)->entries)$/ NewStringObj ../dbinc/tcl_db.h /^#define NewStringObj(a, b) \\$/ -OBJECT_LOCK ../dbinc/lock.h /^#define OBJECT_LOCK(lt, reg, obj, ndx) \\$/ +OBJECT_LOCK ../dbinc/lock.h /^#define OBJECT_LOCK(lt, reg, obj, ndx) do { \\$/ +OBJECT_LOCK_NDX ../dbinc/lock.h /^#define OBJECT_LOCK_NDX(lt, ndx) \\$/ +OBJECT_UNLOCK ../dbinc/lock.h /^#define OBJECT_UNLOCK(lt, ndx) \\$/ OBJ_LINKS_VALID ../dbinc/lock.h /^#define OBJ_LINKS_VALID(L) ((L)->links.stqe_prev !/ -OKFLAGS ../db/db_iface.c /^#define OKFLAGS \\$/ -OKFLAGS_CDB ../env/env_open.c /^#define OKFLAGS_CDB \\$/ -OK_CRYPTO_FLAGS ../env/env_method.c /^#define OK_CRYPTO_FLAGS (DB_ENCRYPT_AES)$/ -OK_FLAGS ../env/env_method.c /^#define OK_FLAGS \\$/ +OKFLAGS ../db/db_iface.c 1210 +OKFLAGS_CDB ../env/env_open.c 64 +OK_CRYPTO_FLAGS ../env/env_method.c 461 +OK_FLAGS ../env/env_method.c 638 +ON_ERROR_RETURN ../dbinc/cxx_int.h 55 +ON_ERROR_THROW ../dbinc/cxx_int.h 54 +ON_ERROR_UNKNOWN ../dbinc/cxx_int.h 56 OPCODE_OF ../dbinc/hash.h /^#define OPCODE_OF(N) (N & ~PAIR_MASK)$/ OR_MAP ../lock/lock_deadlock.c /^#define OR_MAP(D, S, N) { \\$/ -OS_BAD_PID ../mutex/tm.c /^#define OS_BAD_PID (os_pid_t)-1$/ -OS_VMPAGESIZE ../os/os_region.c /^#define OS_VMPAGESIZE (8 * 1024)$/ +OS_BAD_PID ../mutex/test_mutex.c 57 +OS_VMPAGESIZE ../os/os_region.c 32 OS_VMROUNDOFF ../os/os_region.c /^#define OS_VMROUNDOFF(i) { \\$/ -OUT_QUEUE_LIMIT ../repmgr/repmgr_net.c /^#define OUT_QUEUE_LIMIT 10 \/* arbitrary, for now / -OUT_Q_HEADER ../dbinc/repmgr.h /^typedef STAILQ_HEAD(__repmgr_out_q_head, __queued_/ -OVERFLOW_ERROR ../clib/snprintf.c /^#define OVERFLOW_ERROR "internal buffer overflow, / +OUT_QUEUE_LIMIT ../repmgr/repmgr_net.c 330 +OVERFLOW_ERROR ../clib/snprintf.c 112 OV_LEN ../dbinc/db_page.h /^#define OV_LEN(p) (((PAGE *)p)->hf_offset)$/ OV_REF ../dbinc/db_page.h /^#define OV_REF(p) (((PAGE *)p)->entries)$/ -OWNER_RW ../dbinc/os.h /^#define OWNER_RW "rw-------"$/ -O_ACCMODE ../os/os_oflags.c /^#define O_ACCMODE (O_RDONLY | O_RDWR | O_WRONLY)$/ -O_INDX ../dbinc/db_page.h /^#define O_INDX 1$/ -PAGE ../dbinc/db_page.h /^} PAGE;$/ -PAIR_DATAMASK ../dbinc/hash.h /^#define PAIR_DATAMASK 0x2$/ -PAIR_DUPMASK ../dbinc/hash.h /^#define PAIR_DUPMASK 0x4$/ +OWNER_RW ../dbinc/os.h 130 +O_ACCMODE ../os/os_oflags.c 73 +O_CREAT ../os/os_oflags.c 24 +O_INDX ../dbinc/db_page.h 603 +O_RDONLY ../os/os_oflags.c 30 +O_RDWR ../os/os_oflags.c 33 +O_TRUNC ../os/os_oflags.c 27 +O_WRONLY ../os/os_oflags.c 36 +PAIR_DATAMASK ../dbinc/hash.h 122 +PAIR_DUPMASK ../dbinc/hash.h 123 PAIR_ISDATABIG ../dbinc/hash.h /^#define PAIR_ISDATABIG(N) (N & PAIR_DATAMASK)$/ PAIR_ISDATADUP ../dbinc/hash.h /^#define PAIR_ISDATADUP(N) (N & PAIR_DUPMASK)$/ PAIR_ISKEYBIG ../dbinc/hash.h /^#define PAIR_ISKEYBIG(N) (N & PAIR_KEYMASK)$/ -PAIR_KEYMASK ../dbinc/hash.h /^#define PAIR_KEYMASK 0x1$/ -PAIR_MASK ../dbinc/hash.h /^#define PAIR_MASK 0xf$/ +PAIR_KEYMASK ../dbinc/hash.h 121 +PAIR_MASK ../dbinc/hash.h 124 PANIC_CHECK ../dbinc/region.h /^#define PANIC_CHECK(dbenv) \\$/ -PATH_DOT ../dbinc/db_int.in /^#define PATH_DOT "." \/* Current working directory/ -PATH_SEPARATOR ../dbinc/db_int.in /^#define PATH_SEPARATOR "@PATH_SEPARATOR@"$/ +PANIC_ISSET ../dbinc/region.h /^#define PANIC_ISSET(dbenv) \\$/ +PATH_DOT ../dbinc/db_int.in 348 +PATH_SEPARATOR ../dbinc/db_int.in 350 PGNO ../dbinc/db_page.h /^#define PGNO(p) (((PAGE *)p)->pgno)$/ -PGNO_BASE_MD ../dbinc/db_page.h /^#define PGNO_BASE_MD 0 \/* Base database: metadata/ -PGNO_INVALID ../dbinc/db_page.h /^#define PGNO_INVALID 0 \/* Invalid page number in / -PG_CHKSUM ../dbinc/db_page.h /^} PG_CHKSUM;$/ -PG_CRYPTO ../dbinc/db_page.h /^} PG_CRYPTO;$/ -PID_EMPTY ../env/env_register.c /^#define PID_EMPTY "X 0\\n" \// -PID_FMT ../env/env_register.c /^#define PID_FMT "%24lu\\n" \/* PID entry format/ +PGNO_BASE_MD ../dbinc/db_page.h 33 +PGNO_INVALID ../dbinc/db_page.h 32 +PID_EMPTY ../env/env_register.c 15 +PID_FMT ../env/env_register.c 16 PID_ISEMPTY ../env/env_register.c /^#define PID_ISEMPTY(p) (memcmp(p, PID_EMPTY, PID_L/ -PID_LEN ../env/env_register.c /^#define PID_LEN (25) \/* PID entry length *\/$/ +PID_LEN ../env/env_register.c 19 POWER_OF_TWO ../dbinc/db_int.in /^#define POWER_OF_TWO(x) (((x) & ((x) - 1)) == 0)$/ -PREPLISTSIZE ../rep/rep_method.c /^#define PREPLISTSIZE 50$/ +PREPLISTSIZE ../rep/rep_method.c 785 PREV_PGNO ../dbinc/db_page.h /^#define PREV_PGNO(p) (((PAGE *)p)->prev_pgno)$/ -PTHREAD_UNLOCK_ATTEMPTS ../mutex/mut_pthread.c /^#define PTHREAD_UNLOCK_ATTEMPTS 5$/ +PTHREAD_UNLOCK_ATTEMPTS ../mutex/mut_pthread.c 38 PTRACE ../btree/bt_compact.c /^#define PTRACE(dbc, location, p, start, f) do { / -PUTOVFL ../dbinc/hash.h /^#define PUTOVFL 0x40$/ -PUTPAIR ../dbinc/hash.h /^#define PUTPAIR 0x20$/ +PUTOVFL ../dbinc/hash.h 132 +PUTPAIR ../dbinc/hash.h 130 PUTU32 ../crypto/rijndael/rijndael-alg-fst.c /^#define PUTU32(ct, st) { *((u32 *)(ct)) = SWAP((st/ PUT_COUNT ../lock/lock_list.c /^#define PUT_COUNT(dp, count) do { u_int32_t *ip = / -PUT_HKEYDATA ../dbinc/db_page.h /^#define PUT_HKEYDATA(pe, kd, len, type) { \\$/ +PUT_HKEYDATA ../dbinc/db_page.h /^#define PUT_HKEYDATA(pe, kd, len, etype) { \\$/ PUT_PAGE ../db/db_upg_opd.c /^#define PUT_PAGE(dbp, fhp, pgno, page) { \\$/ PUT_PCOUNT ../lock/lock_list.c /^#define PUT_PCOUNT(dp, count) do { u_int16_t *ip =/ PUT_PGNO ../lock/lock_list.c /^#define PUT_PGNO(dp, pgno) do { db_pgno_t *ip = (d/ @@ -1534,34 +1916,34 @@ P_32_COPY ../dbinc/db_swap.h /^#define P_32_COPY(a, b) { \\$/ P_32_SWAP ../dbinc/db_swap.h /^#define P_32_SWAP(a) { \\$/ P_64_COPY ../dbinc/db_swap.h /^#define P_64_COPY(a, b) { \\$/ P_64_SWAP ../dbinc/db_swap.h /^#define P_64_SWAP(a) { \\$/ -P_BTREEMETA ../dbinc/db_page.h /^#define P_BTREEMETA 9 \/* Btree metadata page. *\// +P_BTREEMETA ../dbinc/db_page.h 45 P_CHKSUM ../dbinc/db_page.h /^#define P_CHKSUM(dbp, pg) \\$/ -P_DONTEXTEND ../dbinc/db_page.h /^#define P_DONTEXTEND 0x8000 \/* Don't allocate if / +P_DONTEXTEND ../dbinc/db_page.h 52 P_ENTRY ../dbinc/db_page.h /^#define P_ENTRY(dbp, pg, indx) ((u_int8_t *)pg + P/ P_FREESPACE ../dbinc/db_page.h /^#define P_FREESPACE(dbp, pg) (HOFFSET(pg) - LOFFSE/ -P_HASH ../dbinc/db_page.h /^#define P_HASH 2 \/* Hash. *\/$/ -P_HASHMETA ../dbinc/db_page.h /^#define P_HASHMETA 8 \/* Hash metadata page. *\/$/ -P_IBTREE ../dbinc/db_page.h /^#define P_IBTREE 3 \/* Btree internal. *\/$/ -P_INDX ../dbinc/db_page.h /^#define P_INDX 2$/ +P_HASH ../dbinc/db_page.h 49 +P_HASHMETA ../dbinc/db_page.h 44 +P_HASH_UNSORTED ../dbinc/db_page.h 38 +P_IBTREE ../dbinc/db_page.h 39 +P_INDX ../dbinc/db_page.h 604 P_INIT ../dbinc/db_page.h /^#define P_INIT(pg, pg_size, n, pg_prev, pg_next, b/ P_INP ../dbinc/db_page.h /^#define P_INP(dbp, pg) \\$/ -P_INVALID ../dbinc/db_page.h /^#define P_INVALID 0 \/* Invalid page type. *\/$/ -P_IRECNO ../dbinc/db_page.h /^#define P_IRECNO 4 \/* Recno internal. *\/$/ +P_INVALID ../dbinc/db_page.h 36 +P_IRECNO ../dbinc/db_page.h 40 P_IV ../dbinc/db_page.h /^#define P_IV(dbp, pg) \\$/ -P_LBTREE ../dbinc/db_page.h /^#define P_LBTREE 5 \/* Btree leaf. *\/$/ -P_LDUP ../dbinc/db_page.h /^#define P_LDUP 12 \/* Off-page duplicate leaf. */ -P_LRECNO ../dbinc/db_page.h /^#define P_LRECNO 6 \/* Recno leaf. *\/$/ +P_LBTREE ../dbinc/db_page.h 41 +P_LDUP ../dbinc/db_page.h 48 +P_LRECNO ../dbinc/db_page.h 42 P_MAXSPACE ../dbinc/db_page.h /^#define P_MAXSPACE(dbp, psize) ((psize) - P_OVERHE/ -P_OVERFLOW ../dbinc/db_page.h /^#define P_OVERFLOW 7 \/* Overflow. *\/$/ +P_OVERFLOW ../dbinc/db_page.h 43 P_OVERHEAD ../dbinc/db_page.h /^#define P_OVERHEAD(dbp) P_TO_UINT16(P_INP(dbp, 0))/ P_OVFLSPACE ../dbinc/db_page.h /^#define P_OVFLSPACE(dbp, psize, pg) (P_MAXSPACE(db/ -P_PAGETYPE_MAX ../dbinc/db_page.h /^#define P_PAGETYPE_MAX 13$/ -P_QAMDATA ../dbinc/db_page.h /^#define P_QAMDATA 11 \/* Queue data page. *\/$/ -P_QAMMETA ../dbinc/db_page.h /^#define P_QAMMETA 10 \/* Queue metadata page. *\/$/ +P_PAGETYPE_MAX ../dbinc/db_page.h 50 +P_QAMDATA ../dbinc/db_page.h 47 +P_QAMMETA ../dbinc/db_page.h 46 P_TO_UINT16 ../dbinc/db_int.in /^#define P_TO_UINT16(p) ((u_int16_t)(uintptr_t)(p))/ P_TO_UINT32 ../dbinc/db_int.in /^#define P_TO_UINT32(p) ((u_int32_t)(uintptr_t)(p))/ P_TO_ULONG ../dbinc/db_int.in /^#define P_TO_ULONG(p) ((u_long)(uintptr_t)(p))$/ -QAMDATA ../dbinc/qam.h /^} QAMDATA;$/ QAM_AFTER_CURRENT ../dbinc/qam.h /^#define QAM_AFTER_CURRENT(meta, recno) \\$/ QAM_BEFORE_FIRST ../dbinc/qam.h /^#define QAM_BEFORE_FIRST(meta, recno) \\$/ QAM_DIRTY ../qam/qam_rec.c /^#define QAM_DIRTY(dbp, pgno, pagep) \\$/ @@ -1573,216 +1955,214 @@ QAM_RECNO_EXTENT ../dbinc/qam.h /^#define QAM_RECNO_EXTENT(dbp, recno) \\$/ QAM_RECNO_INDEX ../dbinc/qam.h /^#define QAM_RECNO_INDEX(dbp, pgno, recno) \\$/ QAM_RECNO_PAGE ../dbinc/qam.h /^#define QAM_RECNO_PAGE(dbp, recno) \\$/ QAM_RECNO_PER_PAGE ../dbinc/qam.h /^#define QAM_RECNO_PER_PAGE(dbp) (((QUEUE*)(dbp)->q/ -QAM_SET ../dbinc/qam.h /^#define QAM_SET 0x02$/ -QAM_SETCUR ../dbinc/qam.h /^#define QAM_SETCUR 0x02$/ -QAM_SETFIRST ../dbinc/qam.h /^#define QAM_SETFIRST 0x01$/ -QAM_TRUNCATE ../dbinc/qam.h /^#define QAM_TRUNCATE 0x04$/ -QAM_VALID ../dbinc/qam.h /^#define QAM_VALID 0x01$/ -QDEBUG ../qam/qam.c /^#define QDEBUG$/ +QAM_SET ../dbinc/qam.h 22 +QAM_SETCUR ../dbinc/qam.h 145 +QAM_SETFIRST ../dbinc/qam.h 144 +QAM_TRUNCATE ../dbinc/qam.h 146 +QAM_VALID ../dbinc/qam.h 21 +QDEBUG ../qam/qam.c 644 QMD_TRACE_ELEM ../dbinc/queue.h /^#define QMD_TRACE_ELEM(elem) do { \\$/ QMD_TRACE_HEAD ../dbinc/queue.h /^#define QMD_TRACE_HEAD(head) do { \\$/ -QMETA ../dbinc/db_page.h /^} QMETA33, QMETA;$/ -QMETA30 ../dbinc/db_upgrade.h /^} QMETA30;$/ -QMETA31 ../dbinc/db_upgrade.h /^} QMETA31;$/ -QMETA32 ../dbinc/db_upgrade.h /^} QMETA32;$/ -QPAGE ../dbinc/db_page.h /^} QPAGE;$/ -QPAGE_CHKSUM ../dbinc/db_page.h /^#define QPAGE_CHKSUM 48$/ -QPAGE_NORMAL ../dbinc/db_page.h /^#define QPAGE_NORMAL 28$/ -QPAGE_SEC ../dbinc/db_page.h /^#define QPAGE_SEC 64$/ +QPAGE_CHKSUM ../dbinc/db_page.h 295 +QPAGE_NORMAL ../dbinc/db_page.h 294 +QPAGE_SEC ../dbinc/db_page.h 296 QPAGE_SZ ../dbinc/db_page.h /^#define QPAGE_SZ(dbp) \\$/ -QUEUE ../dbinc/qam.h /^struct __queue; typedef struct __queue QUEUE;$/ -QUEUED_OUTPUT ../dbinc/repmgr.h /^struct __queued_output; typedef struct __queued_ou/ -QUEUE_CURSOR ../dbinc/qam.h /^struct __qcursor; typedef struct __qcursor QUEUE_C/ -QUEUE_EXTENT ../dbinc/qam.h /^#define QUEUE_EXTENT "%s%c__dbq.%s.%d"$/ -QUEUE_EXTENT_HEAD ../dbinc/qam.h /^#define QUEUE_EXTENT_HEAD "__dbq.%s."$/ -QUEUE_EXTENT_PREFIX ../dbinc/qam.h /^#define QUEUE_EXTENT_PREFIX "__dbq."$/ -QUEUE_FILELIST ../dbinc/qam.h /^} QUEUE_FILELIST;$/ -QUEUE_MACRO_DEBUG ../dbinc/queue.h /^#define QUEUE_MACRO_DEBUG 0$/ -R0 ../hmac/sha1.c /^#define R0(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk0(i)+0/ -R1 ../hmac/sha1.c /^#define R1(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk(i)+0x/ -R2 ../hmac/sha1.c /^#define R2(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0x6ED9EB/ -R3 ../hmac/sha1.c /^#define R3(v,w,x,y,z,i) z+=(((w|x)&y)|(w&x))+blk(i/ -R4 ../hmac/sha1.c /^#define R4(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0xCA62C1/ -RECNO ../dbinc/btree.h /^struct __recno; typedef struct __recno RECNO;$/ -RECNOINFO ../dbinc/db_185.in /^} RECNOINFO;$/ -RECNO_OOB ../dbinc/db_int.in /^#define RECNO_OOB 0 \/* Illegal record number. */ -RECOVERING_LOG_SKIP ../rep/rep_record.c /^#define RECOVERING_LOG_SKIP do { \\$/ -RECOVERING_SKIP ../rep/rep_record.c /^#define RECOVERING_SKIP do { \\$/ -REC_CLOSE ../dbinc/db_am.h /^#define REC_CLOSE { \\$/ -REC_DIRTY ../dbinc/db_am.h /^#define REC_DIRTY(mpf, pagep) \\$/ +QUEUE ../dbinc/qam.h 26 +QUEUED_OUTPUT ../dbinc/repmgr.h 53 +QUEUE_CURSOR ../dbinc/qam.h 27 +QUEUE_EXTENT ../dbinc/qam.h 75 +QUEUE_EXTENT_HEAD ../dbinc/qam.h 76 +QUEUE_EXTENT_PREFIX ../dbinc/qam.h 77 +QUEUE_MACRO_DEBUG ../dbinc/queue.h 182 +R0 ../hmac/sha1.c /^#define R0(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk0(i)+0/ +R1 ../hmac/sha1.c /^#define R1(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk(i)+0x/ +R2 ../hmac/sha1.c /^#define R2(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0x6ED9EB/ +R3 ../hmac/sha1.c /^#define R3(v,w,x,y,z,i) z+=(((w|x)&y)|(w&x))+blk(i/ +R4 ../hmac/sha1.c /^#define R4(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0xCA62C1/ +RECNO ../dbinc/btree.h 54 +RECNO_OOB ../dbinc/db_int.in 128 +RECOVERING_LOG_SKIP ../rep/rep_record.c 107 +RECOVERING_SKIP ../rep/rep_record.c 91 +REC_CLOSE ../dbinc/db_am.h 75 +REC_DIRTY ../dbinc/db_am.h /^#define REC_DIRTY(mpf, priority, pagep) \\$/ REC_FGET ../dbinc/db_am.h /^#define REC_FGET(mpf, pgno, pagep, cont) \\$/ REC_INTRO ../dbinc/db_am.h /^#define REC_INTRO(func, inc_count, do_cursor) do {/ -REC_NOOP_CLOSE ../dbinc/db_am.h /^#define REC_NOOP_CLOSE \\$/ +REC_NOOP_CLOSE ../dbinc/db_am.h 93 REC_NOOP_INTRO ../dbinc/db_am.h /^#define REC_NOOP_INTRO(func) do { \\$/ REC_PRINT ../dbinc/db_am.h /^#define REC_PRINT(func) \\$/ -REGENV ../dbinc/region.h /^} REGENV;$/ -REGENV_REF ../dbinc/region.h /^} REGENV_REF;$/ -REGINFO ../dbinc/db_int.in /^struct __db_reginfo_t; typedef struct __db_reginfo/ -REGION ../dbinc/region.h /^} REGION;$/ -REGION_CREATE ../dbinc/region.h /^#define REGION_CREATE 0x01 \/* Caller created reg/ -REGION_CREATE_OK ../dbinc/region.h /^#define REGION_CREATE_OK 0x02 \/* Caller willing t/ -REGION_ID_ENV ../dbinc/region.h /^#define REGION_ID_ENV 1 \/* Primary environment I/ -REGION_JOIN_OK ../dbinc/region.h /^#define REGION_JOIN_OK 0x04 \/* Caller is looking/ -REGISTER_FILE ../env/env_register.c /^#define REGISTER_FILE "__db.register"$/ +REGINFO ../dbinc/db_int.in 700 +REGION_CREATE ../dbinc/region.h 249 +REGION_CREATE_OK ../dbinc/region.h 250 +REGION_ID_ENV ../dbinc/region.h 121 +REGION_JOIN_OK ../dbinc/region.h 251 +REGISTER_FILE ../env/env_register.c 13 REGISTRY_EXCL_LOCK ../env/env_register.c /^#define REGISTRY_EXCL_LOCK(dbenv, nowait) \\$/ REGISTRY_EXCL_UNLOCK ../env/env_register.c /^#define REGISTRY_EXCL_UNLOCK(dbenv) \\$/ REGISTRY_LOCK ../env/env_register.c /^#define REGISTRY_LOCK(dbenv, pos, nowait) \\$/ REGISTRY_UNLOCK ../env/env_register.c /^#define REGISTRY_UNLOCK(dbenv, pos) \\$/ -REP ../dbinc/rep.h /^} REP;$/ -REPCTL_ELECTABLE ../dbinc/rep.h /^#define REPCTL_ELECTABLE 0x01 \/* Upgraded client / -REPCTL_INIT ../dbinc/rep.h /^#define REPCTL_INIT 0x02 \/* Internal init messag/ -REPCTL_PERM ../dbinc/rep.h /^#define REPCTL_PERM DB_LOG_PERM_42_44$/ -REPCTL_RESEND ../dbinc/rep.h /^#define REPCTL_RESEND DB_LOG_RESEND_42_44$/ -REPDBNAME ../dbinc/rep.h /^#define REPDBNAME "__db.rep.db"$/ +REPCTL_ELECTABLE ../dbinc/rep.h 538 +REPCTL_FLUSH ../dbinc/rep.h 539 +REPCTL_GROUP_ESTD ../dbinc/rep.h 540 +REPCTL_INIT ../dbinc/rep.h 541 +REPCTL_LEASE ../dbinc/rep.h 542 +REPCTL_LOG_END ../dbinc/rep.h 547 +REPCTL_PERM ../dbinc/rep.h 548 +REPCTL_RESEND ../dbinc/rep.h 549 +REPDBNAME ../dbinc/rep.h 21 REPLICATION_WRAP ../dbinc/rep.h /^#define REPLICATION_WRAP(dbenv, func_call, ret) do/ -REPMGR_ACK ../dbinc/repmgr.h /^#define REPMGR_ACK 1 \/* Acknowledgement. *\/$/ -REPMGR_CONNECTION ../dbinc/repmgr.h /^struct __repmgr_connection;$/ -REPMGR_FLAT ../dbinc/repmgr.h /^} REPMGR_FLAT;$/ -REPMGR_HANDSHAKE ../dbinc/repmgr.h /^#define REPMGR_HANDSHAKE 2 \/* Connection establis/ -REPMGR_IOVECS ../dbinc/repmgr.h /^} REPMGR_IOVECS;$/ -REPMGR_MESSAGE ../dbinc/repmgr.h /^} REPMGR_MESSAGE;$/ -REPMGR_QUEUE ../dbinc/repmgr.h /^struct __repmgr_queue; typedef struct __repmgr_que/ -REPMGR_REP_MESSAGE ../dbinc/repmgr.h /^#define REPMGR_REP_MESSAGE 3 \/* Normal replicatio/ -REPMGR_RETRY ../dbinc/repmgr.h /^struct __repmgr_retry; typedef struct __repmgr_ret/ -REPMGR_RUNNABLE ../dbinc/repmgr.h /^struct __repmgr_runnable; typedef struct __repmgr_/ -REPMGR_SITE ../dbinc/repmgr.h /^struct __repmgr_site; typedef struct __repmgr_site/ +REPMGR_ACK ../dbinc/repmgr.h 20 +REPMGR_CONNECTION ../dbinc/repmgr.h 51 +REPMGR_HANDSHAKE ../dbinc/repmgr.h 21 +REPMGR_QUEUE ../dbinc/repmgr.h 52 +REPMGR_REP_MESSAGE ../dbinc/repmgr.h 22 +REPMGR_RETRY ../dbinc/repmgr.h 54 +REPMGR_RUNNABLE ../dbinc/repmgr.h 55 +REPMGR_SITE ../dbinc/repmgr.h 56 REPMGR_SYNC_INITED ../dbinc/repmgr.h /^#define REPMGR_SYNC_INITED(db_rep) (db_rep->waiter/ -REPPAGENAME ../dbinc/rep.h /^#define REPPAGENAME "__db.reppg.db"$/ -REP_ALIVE ../dbinc/rep.h /^#define REP_ALIVE 1 \/* I am alive message. *\/$/ -REP_ALIVE_REQ ../dbinc/rep.h /^#define REP_ALIVE_REQ 2 \/* Request for alive mess/ -REP_ALL_REQ ../dbinc/rep.h /^#define REP_ALL_REQ 3 \/* Request all log records / -REP_BULK ../dbinc/rep.h /^} REP_BULK;$/ -REP_BULK_LOG ../dbinc/rep.h /^#define REP_BULK_LOG 4 \/* Bulk transfer of log re/ -REP_BULK_PAGE ../dbinc/rep.h /^#define REP_BULK_PAGE 5 \/* Bulk transfer of pages/ -REP_CONTROL ../dbinc/rep.h /^} REP_CONTROL;$/ -REP_C_BULK ../dbinc/rep.h /^#define REP_C_BULK 0x00001 \/* Bulk transfer. */ -REP_C_DELAYCLIENT ../dbinc/rep.h /^#define REP_C_DELAYCLIENT 0x00002 \/* Delay clien/ -REP_C_NOAUTOINIT ../dbinc/rep.h /^#define REP_C_NOAUTOINIT 0x00004 \/* No auto init/ -REP_C_NOWAIT ../dbinc/rep.h /^#define REP_C_NOWAIT 0x00008 \/* Immediate error/ -REP_DUPMASTER ../dbinc/rep.h /^#define REP_DUPMASTER 6 \/* Duplicate master detec/ -REP_EGENNAME ../dbinc/rep.h /^#define REP_EGENNAME "__db.rep.egen"$/ -REP_FILE ../dbinc/rep.h /^#define REP_FILE 7 \/* Page of a database file. NO/ -REP_FILE_FAIL ../dbinc/rep.h /^#define REP_FILE_FAIL 8 \/* File requested does no/ -REP_FILE_REQ ../dbinc/rep.h /^#define REP_FILE_REQ 9 \/* Request for a database / -REP_F_CLIENT ../dbinc/rep.h /^#define REP_F_CLIENT 0x00001 \/* Client replica./ -REP_F_DELAY ../dbinc/rep.h /^#define REP_F_DELAY 0x00002 \/* Delaying client / -REP_F_EPHASE1 ../dbinc/rep.h /^#define REP_F_EPHASE1 0x00004 \/* In phase 1 of / -REP_F_EPHASE2 ../dbinc/rep.h /^#define REP_F_EPHASE2 0x00008 \/* In phase 2 of / -REP_F_MASTER ../dbinc/rep.h /^#define REP_F_MASTER 0x00010 \/* Master replica./ -REP_F_MASTERELECT ../dbinc/rep.h /^#define REP_F_MASTERELECT 0x00020 \/* Master elec/ -REP_F_NOARCHIVE ../dbinc/rep.h /^#define REP_F_NOARCHIVE 0x00040 \/* Rep blocks l/ -REP_F_READY ../dbinc/rep.h /^#define REP_F_READY 0x00080 \/* Wait for txn_cnt/ -REP_F_RECOVER_LOG ../dbinc/rep.h /^#define REP_F_RECOVER_LOG 0x00100 \/* In recovery/ -REP_F_RECOVER_MASK ../dbinc/rep.h /^#define REP_F_RECOVER_MASK \\$/ -REP_F_RECOVER_PAGE ../dbinc/rep.h /^#define REP_F_RECOVER_PAGE 0x00200 \/* In recover/ -REP_F_RECOVER_UPDATE ../dbinc/rep.h /^#define REP_F_RECOVER_UPDATE 0x00400 \/* In recov/ -REP_F_RECOVER_VERIFY ../dbinc/rep.h /^#define REP_F_RECOVER_VERIFY 0x00800 \/* In recov/ -REP_F_TALLY ../dbinc/rep.h /^#define REP_F_TALLY 0x01000 \/* Tallied vote bef/ -REP_GAP_FORCE ../dbinc/rep.h /^#define REP_GAP_FORCE 0x001 \/* Force a request f/ -REP_GAP_REREQUEST ../dbinc/rep.h /^#define REP_GAP_REREQUEST 0x002 \/* Gap request is/ -REP_INVALID ../dbinc/rep.h /^#define REP_INVALID 0 \/* Invalid message type. */ -REP_LOG ../dbinc/rep.h /^#define REP_LOG 10 \/* Log record. *\/$/ -REP_LOG_MORE ../dbinc/rep.h /^#define REP_LOG_MORE 11 \/* There are more log rec/ -REP_LOG_REQ ../dbinc/rep.h /^#define REP_LOG_REQ 12 \/* Request for a log recor/ -REP_MASTER_REQ ../dbinc/rep.h /^#define REP_MASTER_REQ 13 \/* Who is the master */ -REP_MAX_MSG ../dbinc/rep.h /^#define REP_MAX_MSG 29$/ +REPPAGENAME ../dbinc/rep.h 22 +REP_ALIVE ../dbinc/rep.h 28 +REP_ALIVE_REQ ../dbinc/rep.h 29 +REP_ALL_REQ ../dbinc/rep.h 30 +REP_BULK_LOG ../dbinc/rep.h 31 +REP_BULK_PAGE ../dbinc/rep.h 32 +REP_C_BULK ../dbinc/rep.h 287 +REP_C_DELAYCLIENT ../dbinc/rep.h 288 +REP_C_LEASE ../dbinc/rep.h 289 +REP_C_NOAUTOINIT ../dbinc/rep.h 290 +REP_C_NOWAIT ../dbinc/rep.h 291 +REP_DEFAULT_THROTTLE ../dbinc/rep.h 206 +REP_DUPMASTER ../dbinc/rep.h 33 +REP_EGENNAME ../dbinc/rep.h 135 +REP_EVENT_LOCK ../dbinc/rep.h /^#define REP_EVENT_LOCK(dbenv) \\$/ +REP_EVENT_UNLOCK ../dbinc/rep.h /^#define REP_EVENT_UNLOCK(dbenv) \\$/ +REP_FILE ../dbinc/rep.h 34 +REP_FILE_FAIL ../dbinc/rep.h 35 +REP_FILE_REQ ../dbinc/rep.h 36 +REP_F_CLIENT ../dbinc/rep.h 294 +REP_F_DELAY ../dbinc/rep.h 295 +REP_F_EGENUPDATE ../dbinc/rep.h 296 +REP_F_EPHASE0 ../dbinc/rep.h 297 +REP_F_EPHASE1 ../dbinc/rep.h 298 +REP_F_EPHASE2 ../dbinc/rep.h 299 +REP_F_GROUP_ESTD ../dbinc/rep.h 300 +REP_F_INREPELECT ../dbinc/rep.h 301 +REP_F_INTERNAL_INIT_MASK ../dbinc/rep.h 344 +REP_F_MASTER ../dbinc/rep.h 302 +REP_F_MASTERELECT ../dbinc/rep.h 303 +REP_F_NEWFILE ../dbinc/rep.h 304 +REP_F_NOARCHIVE ../dbinc/rep.h 305 +REP_F_READY_API ../dbinc/rep.h 306 +REP_F_READY_APPLY ../dbinc/rep.h 307 +REP_F_READY_MSG ../dbinc/rep.h 308 +REP_F_READY_OP ../dbinc/rep.h 309 +REP_F_RECOVER_LOG ../dbinc/rep.h 310 +REP_F_RECOVER_MASK ../dbinc/rep.h 328 +REP_F_RECOVER_PAGE ../dbinc/rep.h 311 +REP_F_RECOVER_UPDATE ../dbinc/rep.h 312 +REP_F_RECOVER_VERIFY ../dbinc/rep.h 313 +REP_F_SKIPPED_APPLY ../dbinc/rep.h 314 +REP_F_START_CALLED ../dbinc/rep.h 315 +REP_F_TALLY ../dbinc/rep.h 316 +REP_GAP_FORCE ../dbinc/rep.h 376 +REP_GAP_REREQUEST ../dbinc/rep.h 377 +REP_GENNAME ../dbinc/rep.h 136 +REP_INITNAME ../dbinc/rep.h 152 +REP_INVALID ../dbinc/rep.h 27 +REP_LEASE_GRANT ../dbinc/rep.h 37 +REP_LOG ../dbinc/rep.h 38 +REP_LOG_MORE ../dbinc/rep.h 39 +REP_LOG_REQ ../dbinc/rep.h 40 +REP_MASTER_REQ ../dbinc/rep.h 41 +REP_MAX_MSG ../dbinc/rep.h 72 REP_MSG_REQ ../dbinc/rep.h /^#define REP_MSG_REQ(rectype) \\$/ -REP_NEWCLIENT ../dbinc/rep.h /^#define REP_NEWCLIENT 14 \/* Announces the presenc/ -REP_NEWFILE ../dbinc/rep.h /^#define REP_NEWFILE 15 \/* Announce a log file cha/ -REP_NEWMASTER ../dbinc/rep.h /^#define REP_NEWMASTER 16 \/* Announces who the mas/ -REP_NEWSITE ../dbinc/rep.h /^#define REP_NEWSITE 17 \/* Announces that a site h/ -REP_OLD_VOTE_INFO ../dbinc/rep.h /^} REP_OLD_VOTE_INFO;$/ +REP_NEWCLIENT ../dbinc/rep.h 42 +REP_NEWFILE ../dbinc/rep.h 43 +REP_NEWMASTER ../dbinc/rep.h 44 +REP_NEWSITE ../dbinc/rep.h 45 REP_ON ../dbinc/db_int.in /^#define REP_ON(dbenv) \\$/ -REP_PAGE ../dbinc/rep.h /^#define REP_PAGE 18 \/* Database page. *\/$/ -REP_PAGE_FAIL ../dbinc/rep.h /^#define REP_PAGE_FAIL 19 \/* Requested page does n/ -REP_PAGE_MORE ../dbinc/rep.h /^#define REP_PAGE_MORE 20 \/* There are more pages / -REP_PAGE_REQ ../dbinc/rep.h /^#define REP_PAGE_REQ 21 \/* Request for a database/ +REP_PAGE ../dbinc/rep.h 51 +REP_PAGE_FAIL ../dbinc/rep.h 52 +REP_PAGE_MORE ../dbinc/rep.h 53 +REP_PAGE_REQ ../dbinc/rep.h 54 REP_PRINT_MESSAGE ../dbinc/rep.h /^#define REP_PRINT_MESSAGE(dbenv, eid, rp, str, fl)/ -REP_REREQUEST ../dbinc/rep.h /^#define REP_REREQUEST 22 \/* Force rerequest. *\/$/ +REP_REREQUEST ../dbinc/rep.h 55 +REP_START_SYNC ../dbinc/rep.h 56 REP_SYSTEM_LOCK ../dbinc/rep.h /^#define REP_SYSTEM_LOCK(dbenv) \\$/ REP_SYSTEM_UNLOCK ../dbinc/rep.h /^#define REP_SYSTEM_UNLOCK(dbenv) \\$/ -REP_THROTTLE ../dbinc/rep.h /^} REP_THROTTLE;$/ -REP_THROTTLE_ONLY ../dbinc/rep.h /^#define REP_THROTTLE_ONLY 0x0001 \/* Send _MORE me/ -REP_UPDATE ../dbinc/rep.h /^#define REP_UPDATE 23 \/* Environment hotcopy info/ -REP_UPDATE_REQ ../dbinc/rep.h /^#define REP_UPDATE_REQ 24 \/* Request for hotcopy / -REP_VERIFY ../dbinc/rep.h /^#define REP_VERIFY 25 \/* A log record for verific/ -REP_VERIFY_FAIL ../dbinc/rep.h /^#define REP_VERIFY_FAIL 26 \/* The client is outda/ -REP_VERIFY_REQ ../dbinc/rep.h /^#define REP_VERIFY_REQ 27 \/* Request for a log re/ -REP_VOTE1 ../dbinc/rep.h /^#define REP_VOTE1 28 \/* Send out your information/ -REP_VOTE2 ../dbinc/rep.h /^#define REP_VOTE2 29 \/* Send a "you are master" v/ -REP_VOTE_INFO ../dbinc/rep.h /^} REP_VOTE_INFO;$/ -REP_VTALLY ../dbinc/rep.h /^} REP_VTALLY;$/ +REP_THROTTLE_ONLY ../dbinc/rep.h 614 +REP_UPDATE ../dbinc/rep.h 57 +REP_UPDATE_REQ ../dbinc/rep.h 58 +REP_VERIFY ../dbinc/rep.h 59 +REP_VERIFY_FAIL ../dbinc/rep.h 60 +REP_VERIFY_REQ ../dbinc/rep.h 61 +REP_VOTE1 ../dbinc/rep.h 62 +REP_VOTE2 ../dbinc/rep.h 63 RESET_MPF ../fileops/fop_util.c /^#define RESET_MPF(D, F) do { \\$/ RESET_RET_MEM ../dbinc/db_int.in /^#define RESET_RET_MEM(dbc) \\$/ -RESTORE_START ../btree/bt_compact.c /^#define RESTORE_START \\$/ +RESTORE_START ../btree/bt_compact.c 56 RETRY_CHK ../dbinc/os.h /^#define RETRY_CHK(op, ret) do { \\$/ RETRY_CHK_EINTR_ONLY ../dbinc/os.h /^#define RETRY_CHK_EINTR_ONLY(op, ret) do { \\$/ -RETRY_Q_HEADER ../dbinc/repmgr.h /^typedef TAILQ_HEAD(__repmgr_retry_q, __repmgr_retr/ -RET_ERROR ../dbinc/db_185.in /^#define RET_ERROR -1 \/* Return values. *\/$/ +RET_ERROR ../dbinc/db_185.in 61 RET_SET ../mutex/mut_pthread.c /^#define RET_SET(f, ret) do { \\$/ RET_SIZE ../lock/lock_list.c /^#define RET_SIZE(size, count) ((size) + \\$/ -RET_SPECIAL ../dbinc/db_185.in /^#define RET_SPECIAL 1$/ -RET_SUCCESS ../dbinc/db_185.in /^#define RET_SUCCESS 0$/ +RET_SPECIAL ../dbinc/db_185.in 63 +RET_SUCCESS ../dbinc/db_185.in 62 RE_NREC ../dbinc/db_page.h /^#define RE_NREC(p) \\$/ RE_NREC_ADJ ../dbinc/db_page.h /^#define RE_NREC_ADJ(p, adj) \\$/ RE_NREC_SET ../dbinc/db_page.h /^#define RE_NREC_SET(p, num) \\$/ RINGBUF_LEN ../dbinc/log.h /^#define RINGBUF_LEN(lp, start, end) \\$/ -RINTERNAL ../dbinc/db_page.h /^} RINTERNAL;$/ -RINTERNAL_PSIZE ../dbinc/db_page.h /^#define RINTERNAL_PSIZE \\$/ -RINTERNAL_SIZE ../dbinc/db_page.h /^#define RINTERNAL_SIZE \\$/ -RLOCK ../log/log_get.c /^typedef enum { L_ALREADY, L_ACQUIRED, L_NONE } RLO/ -RMNAMESZ ../dbinc/xa.h /^#define RMNAMESZ 32 \/* length of resource manage/ +RINTERNAL_PSIZE ../dbinc/db_page.h 657 +RINTERNAL_SIZE ../dbinc/db_page.h 655 +RLOCK ../log/log_get.c 18 +RMNAMESZ ../dbinc/xa.h 47 RPC_ON ../dbinc/db_int.in /^#define RPC_ON(dbenv) ((dbenv)->cl_handle != NULL/ -RPRINT ../dbinc/rep.h /^#define RPRINT(e, x) do { \\$/ -RSMSG ../db185/db185.c /^#define RSMSG \\$/ +RPRINT ../dbinc/rep.h /^#define RPRINT(dbenv, x) do { \\$/ +RSMSG ../db185/db185.c 519 R_ADDR ../dbinc/region.h /^#define R_ADDR(reginfop, offset) \\$/ -R_CURSOR ../dbinc/db_185.in /^#define R_CURSOR 1 \/* del, put, seq *\/$/ -R_DUP ../dbinc/db_185.in /^#define R_DUP 0x01 \/* duplicate keys *\/$/ -R_FIRST ../dbinc/db_185.in /^#define R_FIRST 3 \/* seq *\/$/ -R_FIXEDLEN ../dbinc/db_185.in /^#define R_FIXEDLEN 0x01 \/* fixed-length records */ -R_IAFTER ../dbinc/db_185.in /^#define R_IAFTER 4 \/* put (RECNO) *\/$/ -R_IBEFORE ../dbinc/db_185.in /^#define R_IBEFORE 5 \/* put (RECNO) *\/$/ -R_LAST ../dbinc/db_185.in /^#define R_LAST 6 \/* seq (BTREE, RECNO) *\/$/ -R_NEXT ../dbinc/db_185.in /^#define R_NEXT 7 \/* seq *\/$/ -R_NOKEY ../dbinc/db_185.in /^#define R_NOKEY 0x02 \/* key not required *\/$/ -R_NOOVERWRITE ../dbinc/db_185.in /^#define R_NOOVERWRITE 8 \/* put *\/$/ +R_CURSOR ../dbinc/db_185.in 96 +R_DUP ../dbinc/db_185.in 128 +R_FIRST ../dbinc/db_185.in 98 +R_FIXEDLEN ../dbinc/db_185.in 157 +R_IAFTER ../dbinc/db_185.in 99 +R_IBEFORE ../dbinc/db_185.in 100 +R_LAST ../dbinc/db_185.in 101 +R_NEXT ../dbinc/db_185.in 102 +R_NOKEY ../dbinc/db_185.in 158 +R_NOOVERWRITE ../dbinc/db_185.in 103 R_OFFSET ../dbinc/region.h /^#define R_OFFSET(reginfop, p) \\$/ -R_PREV ../dbinc/db_185.in /^#define R_PREV 9 \/* seq (BTREE, RECNO) *\/$/ -R_RECNOSYNC ../dbinc/db_185.in /^#define R_RECNOSYNC 11 \/* sync (RECNO) *\/$/ -R_SETCURSOR ../dbinc/db_185.in /^#define R_SETCURSOR 10 \/* put (RECNO) *\/$/ -R_SNAPSHOT ../dbinc/db_185.in /^#define R_SNAPSHOT 0x04 \/* snapshot the input *\// -SALVAGE_HASH ../dbinc/db_verify.h /^#define SALVAGE_HASH 6$/ -SALVAGE_IGNORE ../dbinc/db_verify.h /^#define SALVAGE_IGNORE 1$/ -SALVAGE_INVALID ../dbinc/db_verify.h /^#define SALVAGE_INVALID 0$/ -SALVAGE_LBTREE ../dbinc/db_verify.h /^#define SALVAGE_LBTREE 5$/ -SALVAGE_LDUP ../dbinc/db_verify.h /^#define SALVAGE_LDUP 2$/ -SALVAGE_LRECNO ../dbinc/db_verify.h /^#define SALVAGE_LRECNO 7$/ -SALVAGE_LRECNODUP ../dbinc/db_verify.h /^#define SALVAGE_LRECNODUP 3$/ -SALVAGE_OVERFLOW ../dbinc/db_verify.h /^#define SALVAGE_OVERFLOW 4$/ -SALVAGE_PRINTABLE ../dbinc/db_verify.h /^#define SALVAGE_PRINTABLE 0x01 \/* Output printabl/ -SALVAGE_PRINTFOOTER ../dbinc/db_verify.h /^#define SALVAGE_PRINTFOOTER 0x04 \/* Print the unk/ -SALVAGE_PRINTHEADER ../dbinc/db_verify.h /^#define SALVAGE_PRINTHEADER 0x02 \/* Print the unk/ -SAVE_START ../btree/bt_compact.c /^#define SAVE_START \\$/ -SA_SKIPFIRSTKEY ../dbinc/db_verify.h /^#define SA_SKIPFIRSTKEY 0x00080000$/ -SELF_EID ../dbinc/repmgr.h /^#define SELF_EID INT_MAX$/ +R_PREV ../dbinc/db_185.in 104 +R_RECNOSYNC ../dbinc/db_185.in 106 +R_SETCURSOR ../dbinc/db_185.in 105 +R_SNAPSHOT ../dbinc/db_185.in 159 +SALVAGE_HASH ../dbinc/db_verify.h 106 +SALVAGE_IGNORE ../dbinc/db_verify.h 101 +SALVAGE_INVALID ../dbinc/db_verify.h 100 +SALVAGE_LBTREE ../dbinc/db_verify.h 105 +SALVAGE_LDUP ../dbinc/db_verify.h 102 +SALVAGE_LRECNO ../dbinc/db_verify.h 107 +SALVAGE_LRECNODUP ../dbinc/db_verify.h 103 +SALVAGE_OVERFLOW ../dbinc/db_verify.h 104 +SALVAGE_PRINTABLE ../dbinc/db_verify.h 133 +SALVAGE_PRINTFOOTER ../dbinc/db_verify.h 135 +SALVAGE_PRINTHEADER ../dbinc/db_verify.h 134 +SAVE_START ../btree/bt_compact.c 43 +SA_SKIPFIRSTKEY ../dbinc/db_verify.h 63 +SELF_EID ../dbinc/repmgr.h 307 SEQ_ILLEGAL_AFTER_OPEN ../sequence/sequence.c /^#define SEQ_ILLEGAL_AFTER_OPEN(seq, name) \\$/ SEQ_ILLEGAL_BEFORE_OPEN ../sequence/sequence.c /^#define SEQ_ILLEGAL_BEFORE_OPEN(seq, name) \\$/ SEQ_IS_OPEN ../sequence/sequence.c /^#define SEQ_IS_OPEN(seq) ((seq)->seq_key.data != N/ -SEQ_OPEN_FLAGS ../sequence/sequence.c /^#define SEQ_OPEN_FLAGS (DB_CREATE | DB_EXCL | DB_T/ -SEQ_SET_FLAGS ../sequence/sequence.c /^#define SEQ_SET_FLAGS (DB_SEQ_WRAP | DB_SEQ_INC | / +SEQ_OPEN_FLAGS ../sequence/sequence.c 167 +SEQ_SET_FLAGS ../sequence/sequence.c 426 SEQ_SWAP ../sequence/sequence.c /^#define SEQ_SWAP(rp) \\$/ SEQ_SWAP_IN ../sequence/sequence.c /^#define SEQ_SWAP_IN(seq) \\$/ SEQ_SWAP_OUT ../sequence/sequence.c /^#define SEQ_SWAP_OUT(seq) \\$/ -SET_LOG_FLAGS ../txn/txn.c /^#define SET_LOG_FLAGS(dbenv, txn, lflags) \\$/ -SET_MAP ../lock/lock_deadlock.c /^#define SET_MAP(M, B) ((M)[(B) \/ 32] |= (1 << ((B/ +SET_MAP ../lock/lock_deadlock.c /^#define SET_MAP(M, B) ((M)[(B) \/ 32] |= (1 << ((B)/ SET_RET_MEM ../dbinc/db_int.in /^#define SET_RET_MEM(dbc, owner) \\$/ -SHA1HANDSOFF ../hmac/sha1.c /^#define SHA1HANDSOFF$/ -SHA1_CTX ../dbinc/hmac.h /^} SHA1_CTX;$/ -SHALLOC_FRAGMENT ../env/db_salloc.c /^#define SHALLOC_FRAGMENT 32$/ -SHM_R ../os/os_map.c /^#define SHM_R 0400$/ -SHM_W ../os/os_map.c /^#define SHM_W 0200$/ -SHOBJECT_LOCK ../dbinc/lock.h /^#define SHOBJECT_LOCK(lt, reg, shobj, ndx) \\$/ -SH_CHAIN_ENTRY ../dbinc/shqueue.h /^#define SH_CHAIN_ENTRY \\$/ +SHA1HANDSOFF ../hmac/sha1.c 79 +SHALLOC_FRAGMENT ../env/env_alloc.c 216 +SHM_R ../os/os_map.c 460 +SHM_W ../os/os_map.c 463 +SH_CHAIN_ENTRY ../dbinc/shqueue.h 43 SH_CHAIN_HASNEXT ../dbinc/shqueue.h /^#define SH_CHAIN_HASNEXT(elm, field) ((elm)->field/ SH_CHAIN_HASPREV ../dbinc/shqueue.h /^#define SH_CHAIN_HASPREV(elm, field) ((elm)->field/ SH_CHAIN_INIT ../dbinc/shqueue.h /^#define SH_CHAIN_INIT(elm, field) \\$/ @@ -1794,10 +2174,9 @@ SH_CHAIN_PREV ../dbinc/shqueue.h /^#define SH_CHAIN_PREV(elm, field, type) (SH_C SH_CHAIN_PREVP ../dbinc/shqueue.h /^#define SH_CHAIN_PREVP(elm, field, type) \\$/ SH_CHAIN_REMOVE ../dbinc/shqueue.h /^#define SH_CHAIN_REMOVE(elm, field, type) do { / SH_CHAIN_SINGLETON ../dbinc/shqueue.h /^#define SH_CHAIN_SINGLETON(elm, field) \\$/ -SH_DBT ../dbinc/lock.h /^} SH_DBT;$/ SH_DBT_PTR ../dbinc/lock.h /^#define SH_DBT_PTR(p) ((void *)(((u_int8_t *)(p)) / SH_LIST_EMPTY ../dbinc/shqueue.h /^#define SH_LIST_EMPTY(head) \\$/ -SH_LIST_ENTRY ../dbinc/shqueue.h /^#define SH_LIST_ENTRY \\$/ +SH_LIST_ENTRY ../dbinc/shqueue.h 112 SH_LIST_FIRST ../dbinc/shqueue.h /^#define SH_LIST_FIRST(head, type) \\$/ SH_LIST_FIRSTP ../dbinc/shqueue.h /^#define SH_LIST_FIRSTP(head, type) \\$/ SH_LIST_FOREACH ../dbinc/shqueue.h /^#define SH_LIST_FOREACH(var, head, field, type) / @@ -1811,11 +2190,11 @@ SH_LIST_NEXT ../dbinc/shqueue.h /^#define SH_LIST_NEXT(elm, field, type) \\$ SH_LIST_NEXTP ../dbinc/shqueue.h /^#define SH_LIST_NEXTP(elm, field, type) \\$/ SH_LIST_NEXT_TO_PREV ../dbinc/shqueue.h /^#define SH_LIST_NEXT_TO_PREV(elm, field) \\$/ SH_LIST_PREV ../dbinc/shqueue.h /^#define SH_LIST_PREV(elm, field, type) \\$/ -SH_LIST_REMOVE ../dbinc/shqueue.h /^#define SH_LIST_REMOVE(elm, field, type) do { / +SH_LIST_REMOVE ../dbinc/shqueue.h /^#define SH_LIST_REMOVE(elm, field, type) do { \\/ SH_LIST_REMOVE_HEAD ../dbinc/shqueue.h /^#define SH_LIST_REMOVE_HEAD(head, field, type) do / SH_PTR_TO_OFF ../dbinc/shqueue.h /^#define SH_PTR_TO_OFF(src, dest) \\$/ SH_TAILQ_EMPTY ../dbinc/shqueue.h /^#define SH_TAILQ_EMPTY(head) \\$/ -SH_TAILQ_ENTRY ../dbinc/shqueue.h /^#define SH_TAILQ_ENTRY \\$/ +SH_TAILQ_ENTRY ../dbinc/shqueue.h 238 SH_TAILQ_FIRST ../dbinc/shqueue.h /^#define SH_TAILQ_FIRST(head, type) \\$/ SH_TAILQ_FIRSTP ../dbinc/shqueue.h /^#define SH_TAILQ_FIRSTP(head, type) \\$/ SH_TAILQ_FOREACH ../dbinc/shqueue.h /^#define SH_TAILQ_FOREACH(var, head, field, type) / @@ -1832,13 +2211,15 @@ SH_TAILQ_LASTP ../dbinc/shqueue.h /^#define SH_TAILQ_LASTP(head, field, type) SH_TAILQ_NEXT ../dbinc/shqueue.h /^#define SH_TAILQ_NEXT(elm, field, type) \\$/ SH_TAILQ_NEXTP ../dbinc/shqueue.h /^#define SH_TAILQ_NEXTP(elm, field, type) \\$/ SH_TAILQ_NEXT_TO_PREV ../dbinc/shqueue.h /^#define SH_TAILQ_NEXT_TO_PREV(elm, field) \\$/ -SH_TAILQ_PREV ../dbinc/shqueue.h /^#define SH_TAILQ_PREV(head, elm, field, type) / +SH_TAILQ_PREV ../dbinc/shqueue.h /^#define SH_TAILQ_PREV(head, elm, field, type) \\/ SH_TAILQ_PREVP ../dbinc/shqueue.h /^#define SH_TAILQ_PREVP(elm, field, type) \\$/ SH_TAILQ_REMOVE ../dbinc/shqueue.h /^#define SH_TAILQ_REMOVE(head, elm, field, type) do/ -SITE_CONNECTED ../dbinc/repmgr.h /^#define SITE_CONNECTED 2$/ +SITE_CONNECTED ../dbinc/repmgr.h 263 SITE_FROM_EID ../dbinc/repmgr.h /^#define SITE_FROM_EID(eid) (&db_rep->sites[eid])$/ -SITE_IDLE ../dbinc/repmgr.h /^#define SITE_IDLE 1 \/* Waiting til time to retry/ -SIZEOF_PAGE ../dbinc/db_page.h /^#define SIZEOF_PAGE 26$/ +SITE_IDLE ../dbinc/repmgr.h 262 +SITE_STRING_BUFFER ../dbinc/repmgr.h 48 +SIZEOF_PAGE ../dbinc/db_page.h 254 +SLEEPTIME ../rep/rep_elect.c /^#define SLEEPTIME(timeout) \\$/ SLIST_EMPTY ../dbinc/queue.h /^#define SLIST_EMPTY(head) ((head)->slh_first == NU/ SLIST_ENTRY ../dbinc/queue.h /^#define SLIST_ENTRY(type) \\$/ SLIST_FIRST ../dbinc/queue.h /^#define SLIST_FIRST(head) ((head)->slh_first)$/ @@ -1852,34 +2233,35 @@ SLIST_INSERT_HEAD ../dbinc/queue.h /^#define SLIST_INSERT_HEAD(head, elm, field) SLIST_NEXT ../dbinc/queue.h /^#define SLIST_NEXT(elm, field) ((elm)->field.sle_n/ SLIST_REMOVE ../dbinc/queue.h /^#define SLIST_REMOVE(head, elm, type, field) do { / SLIST_REMOVE_HEAD ../dbinc/queue.h /^#define SLIST_REMOVE_HEAD(head, field) do { \\$/ -SOCKET_ERROR ../dbinc/repmgr.h /^#define SOCKET_ERROR -1$/ +SOCKET_ERROR ../dbinc/repmgr.h 343 SORTED_SET ../db/db_join.c /^#define SORTED_SET(jc, n) ((jc)->j_curslist[(n)]/ -SPLITNEW ../dbinc/hash.h /^#define SPLITNEW 0x90$/ -SPLITOLD ../dbinc/hash.h /^#define SPLITOLD 0x80$/ -SPL_NRECS ../dbinc/btree.h /^#define SPL_NRECS 0x01 \/* Split tree has record / -SR_APPEND ../dbinc/btree.h /^#define SR_APPEND 0x00040 \/* Append to the tree./ -SR_DEL ../dbinc/btree.h /^#define SR_DEL 0x40000 \/* Get the tree to delet/ -SR_DELETE ../dbinc/btree.h /^#define SR_DELETE \\$/ -SR_DELNO ../dbinc/btree.h /^#define SR_DELNO 0x00080 \/* Don't return deleted/ -SR_DUPFIRST ../dbinc/btree.h /^#define SR_DUPFIRST 0x00100 \/* Return first dupl/ -SR_DUPLAST ../dbinc/btree.h /^#define SR_DUPLAST 0x00200 \/* Return last duplic/ -SR_EXACT ../dbinc/btree.h /^#define SR_EXACT 0x00400 \/* Exact items only. */ -SR_FIND ../dbinc/btree.h /^#define SR_FIND (SR_READ | SR_DUPFIRST | SR_DELNO/ -SR_FIND_WR ../dbinc/btree.h /^#define SR_FIND_WR (SR_WRITE | SR_DUPFIRST | SR_DE/ -SR_INSERT ../dbinc/btree.h /^#define SR_INSERT (SR_WRITE | SR_DUPLAST | SR_PAST/ -SR_KEYFIRST ../dbinc/btree.h /^#define SR_KEYFIRST (SR_WRITE | SR_DUPFIRST | SR_P/ -SR_KEYLAST ../dbinc/btree.h /^#define SR_KEYLAST (SR_WRITE | SR_DUPLAST | SR_PAS/ -SR_MAX ../dbinc/btree.h /^#define SR_MAX 0x08000 \/* Get the right most ke/ -SR_MIN ../dbinc/btree.h /^#define SR_MIN 0x10000 \/* Get the left most key/ -SR_NEXT ../dbinc/btree.h /^#define SR_NEXT 0x20000 \/* Get the page after t/ -SR_PARENT ../dbinc/btree.h /^#define SR_PARENT 0x00800 \/* Lock page pair. *\// -SR_PAST_EOF ../dbinc/btree.h /^#define SR_PAST_EOF 0x02000 \/* If doing insert s/ -SR_READ ../dbinc/btree.h /^#define SR_READ 0x00001 \/* Read locks. *\/$/ -SR_STACK ../dbinc/btree.h /^#define SR_STACK 0x01000 \/* Need a complete stac/ -SR_START ../dbinc/btree.h /^#define SR_START 0x80000 \/* Level to start stack/ -SR_STK_ONLY ../dbinc/btree.h /^#define SR_STK_ONLY 0x04000 \/* Just return info / -SR_WRITE ../dbinc/btree.h /^#define SR_WRITE 0x00002 \/* Write locks. *\/$/ -SR_WRPAIR ../dbinc/btree.h /^#define SR_WRPAIR (SR_WRITE | SR_DUPLAST | SR_PAST/ +SORTPAGE ../dbinc/hash.h 138 +SPLITNEW ../dbinc/hash.h 137 +SPLITOLD ../dbinc/hash.h 136 +SPL_NRECS ../dbinc/btree.h 72 +SR_APPEND ../dbinc/btree.h 107 +SR_DEL ../dbinc/btree.h 123 +SR_DELETE ../dbinc/btree.h 126 +SR_DELNO ../dbinc/btree.h 108 +SR_DUPFIRST ../dbinc/btree.h 109 +SR_DUPLAST ../dbinc/btree.h 110 +SR_EXACT ../dbinc/btree.h 111 +SR_FIND ../dbinc/btree.h 128 +SR_FIND_WR ../dbinc/btree.h 129 +SR_INSERT ../dbinc/btree.h 130 +SR_KEYFIRST ../dbinc/btree.h 131 +SR_KEYLAST ../dbinc/btree.h 132 +SR_MAX ../dbinc/btree.h 120 +SR_MIN ../dbinc/btree.h 121 +SR_NEXT ../dbinc/btree.h 122 +SR_PARENT ../dbinc/btree.h 112 +SR_PAST_EOF ../dbinc/btree.h 114 +SR_READ ../dbinc/btree.h 104 +SR_STACK ../dbinc/btree.h 113 +SR_START ../dbinc/btree.h 124 +SR_STK_ONLY ../dbinc/btree.h 119 +SR_WRITE ../dbinc/btree.h 105 +SR_WRPAIR ../dbinc/btree.h 133 SSZ ../dbinc/db_int.in /^#define SSZ(name, field) P_TO_UINT16(&(((name *)0/ SSZA ../dbinc/db_int.in /^#define SSZA(name, field) P_TO_UINT16(&(((name *)0/ STACK_TO_CURSOR ../btree/bt_recno.c /^#define STACK_TO_CURSOR(cp, ret) { \\$/ @@ -1897,8 +2279,9 @@ STAILQ_INSERT_TAIL ../dbinc/queue.h /^#define STAILQ_INSERT_TAIL(head, elm, fiel STAILQ_LAST ../dbinc/queue.h /^#define STAILQ_LAST(head, type, field) \\$/ STAILQ_NEXT ../dbinc/queue.h /^#define STAILQ_NEXT(elm, field) ((elm)->field.stqe/ STAILQ_REMOVE ../dbinc/queue.h /^#define STAILQ_REMOVE(head, elm, type, field) do {/ -STAILQ_REMOVE_HEAD ../dbinc/queue.h /^#define STAILQ_REMOVE_HEAD(head, field) do { \\/ +STAILQ_REMOVE_HEAD ../dbinc/queue.h /^#define STAILQ_REMOVE_HEAD(head, field) do { \\$/ STAILQ_REMOVE_HEAD_UNTIL ../dbinc/queue.h /^#define STAILQ_REMOVE_HEAD_UNTIL(head, elm, field)/ +STAT ../dbinc/db_int.in /^#define STAT(x) x$/ STAT_FMT ../dbinc/db_int.in /^#define STAT_FMT(msg, fmt, type, v) do { \\$/ STAT_HEX ../dbinc/db_int.in /^#define STAT_HEX(msg, v) \\$/ STAT_ISSET ../dbinc/db_int.in /^#define STAT_ISSET(msg, p) \\$/ @@ -1907,47 +2290,49 @@ STAT_LSN ../dbinc/db_int.in /^#define STAT_LSN(msg, lsnp) \\$/ STAT_POINTER ../dbinc/db_int.in /^#define STAT_POINTER(msg, v) \\$/ STAT_STRING ../dbinc/db_int.in /^#define STAT_STRING(msg, p) do { \\$/ STAT_ULONG ../dbinc/db_int.in /^#define STAT_ULONG(msg, v) \\$/ -STDERR_FILENO ../clib/snprintf.c /^#define STDERR_FILENO 2$/ +STDERR_FILENO ../clib/snprintf.c 114 STD_LOCKING ../dbinc/db_int.in /^#define STD_LOCKING(dbc) \\$/ -STK_CLRDBC ../dbinc/btree.h /^#define STK_CLRDBC 0x01 \/* Clear dbc->page refer/ -STK_NOLOCK ../dbinc/btree.h /^#define STK_NOLOCK 0x02 \/* Don't retain locks. */ -STK_PGONLY ../dbinc/btree.h /^#define STK_PGONLY 0x04$/ +STK_CLRDBC ../dbinc/btree.h 78 +STK_NOLOCK ../dbinc/btree.h 79 +STK_PGONLY ../dbinc/btree.h 80 STRIP_AUTO_COMMIT ../dbinc/db_am.h /^#define STRIP_AUTO_COMMIT(f) FLD_CLR((f), DB_AUTO_/ -ST_DUPOK ../dbinc/db_verify.h /^#define ST_DUPOK 0x00010000 \/* Duplicates are acc/ -ST_DUPSET ../dbinc/db_verify.h /^#define ST_DUPSET 0x00020000 \/* Subtree is in a d/ -ST_DUPSORT ../dbinc/db_verify.h /^#define ST_DUPSORT 0x00040000 \/* Duplicates are s/ -ST_IS_RECNO ../dbinc/db_verify.h /^#define ST_IS_RECNO 0x00080000 \/* Subtree is a re/ -ST_OVFL_LEAF ../dbinc/db_verify.h /^#define ST_OVFL_LEAF 0x00100000 \/* Overflow reffe/ -ST_RECNUM ../dbinc/db_verify.h /^#define ST_RECNUM 0x00200000 \/* Subtree has recor/ -ST_RELEN ../dbinc/db_verify.h /^#define ST_RELEN 0x00400000 \/* Subtree has fixed-/ -ST_TOPLEVEL ../dbinc/db_verify.h /^#define ST_TOPLEVEL 0x00800000 \/* Subtree == enti/ +ST_DUPOK ../dbinc/db_verify.h 49 +ST_DUPSET ../dbinc/db_verify.h 50 +ST_DUPSORT ../dbinc/db_verify.h 51 +ST_IS_RECNO ../dbinc/db_verify.h 52 +ST_OVFL_LEAF ../dbinc/db_verify.h 53 +ST_RECNUM ../dbinc/db_verify.h 54 +ST_RELEN ../dbinc/db_verify.h 55 +ST_TOPLEVEL ../dbinc/db_verify.h 56 SWAP ../crypto/rijndael/rijndael-alg-fst.c /^#define SWAP(x) (_lrotl(x, 8) & 0x00ff00ff | _lrot/ SWAP16 ../dbinc/db_swap.h /^#define SWAP16(p) { \\$/ SWAP32 ../dbinc/db_swap.h /^#define SWAP32(p) { \\$/ +SWAPINIT ../clib/qsort.c /^#define SWAPINIT(a, es) swaptype = ((char *)a - (c/ SWAP_IF_NEEDED ../dbinc/db_am.h /^#define SWAP_IF_NEEDED(sdbp, pkey) \\$/ -SWIGEXPORT ../libdb_java/db_java_wrap.c /^# define SWIGEXPORT$/ -SWIGINLINE ../libdb_java/db_java_wrap.c /^# define SWIGINLINE inline$/ -SWIGINTERN ../libdb_java/db_java_wrap.c /^# define SWIGINTERN static SWIGUNUSED$/ -SWIGINTERNINLINE ../libdb_java/db_java_wrap.c /^# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE$/ -SWIGSTDCALL ../libdb_java/db_java_wrap.c /^# define SWIGSTDCALL __stdcall$/ -SWIGTEMPLATEDISAMBIGUATOR ../libdb_java/db_java_wrap.c /^# define SWIGTEMPLATEDISAMBIGUATOR template$/ -SWIGUNUSED ../libdb_java/db_java_wrap.c /^# define SWIGUNUSED __attribute__ ((__unused__/ +SWIGEXPORT ../libdb_java/db_java_wrap.c 82 +SWIGINLINE ../libdb_java/db_java_wrap.c 33 +SWIGINTERN ../libdb_java/db_java_wrap.c 64 +SWIGINTERNINLINE ../libdb_java/db_java_wrap.c 69 +SWIGSTDCALL ../libdb_java/db_java_wrap.c 98 +SWIGTEMPLATEDISAMBIGUATOR ../libdb_java/db_java_wrap.c 21 +SWIGUNUSED ../libdb_java/db_java_wrap.c 43 SWIGUNUSEDPARM ../libdb_java/db_java_wrap.c /^# define SWIGUNUSEDPARM(p)$/ -SWIG_JavaExceptionCodes ../libdb_java/db_java_wrap.c /^} SWIG_JavaExceptionCodes;$/ -SWIG_JavaExceptions_t ../libdb_java/db_java_wrap.c /^} SWIG_JavaExceptions_t;$/ +SWIG_JavaExceptionCodes ../libdb_java/db_java_wrap.c 139 SWIG_JavaThrowException ../libdb_java/db_java_wrap.c /^static void SWIGUNUSED SWIG_JavaThrowException(JNI/ -SWIG_NOINCLUDE ../libdb_java/db_java_wrap.c /^#define SWIG_NOINCLUDE 1$/ +SWIG_NOINCLUDE ../libdb_java/db_java_wrap.c 188 SWIG_contract_assert ../libdb_java/db_java_wrap.c /^#define SWIG_contract_assert(nullreturn, expr, msg/ -S_IRGRP ../os/os_oflags.c /^#define S_IRGRP 0 \/* R for group *\/$/ -S_IROTH ../os/os_oflags.c /^#define S_IROTH 0 \/* R for other *\/$/ -S_IRUSR ../os/os_oflags.c /^#define S_IRUSR S_IREAD \/* R for owner *\/$/ +S_IREAD ../os/os_oflags.c 40 +S_IRGRP ../os/os_oflags.c 97 +S_IROTH ../os/os_oflags.c 106 +S_IRUSR ../os/os_oflags.c 88 S_ISDIR ../os/os_stat.c /^#define S_ISDIR(m) (_S_IFDIR & (m))$/ -S_IWGRP ../os/os_oflags.c /^#define S_IWGRP 0 \/* W for group *\/$/ -S_IWOTH ../os/os_oflags.c /^#define S_IWOTH 0 \/* W for other *\/$/ -S_IWUSR ../os/os_oflags.c /^#define S_IWUSR S_IWRITE \/* W for owner *\/$/ -S_IXGRP ../os/os_oflags.c /^#define S_IXGRP 0 \/* X for group *\/$/ -S_IXOTH ../os/os_oflags.c /^#define S_IXOTH 0 \/* X for other *\/$/ -S_IXUSR ../os/os_oflags.c /^#define S_IXUSR 0 \/* X for owner *\/$/ +S_IWGRP ../os/os_oflags.c 100 +S_IWOTH ../os/os_oflags.c 109 +S_IWRITE ../os/os_oflags.c 43 +S_IWUSR ../os/os_oflags.c 91 +S_IXGRP ../os/os_oflags.c 103 +S_IXOTH ../os/os_oflags.c 112 +S_IXUSR ../os/os_oflags.c 94 TAILQ_CONCAT ../dbinc/queue.h /^#define TAILQ_CONCAT(head1, head2, field) do { / TAILQ_EMPTY ../dbinc/queue.h /^#define TAILQ_EMPTY(head) ((head)->tqh_first == NU/ TAILQ_ENTRY ../dbinc/queue.h /^#define TAILQ_ENTRY(type) \\$/ @@ -1965,202 +2350,203 @@ TAILQ_LAST ../dbinc/queue.h /^#define TAILQ_LAST(head, headname) \\$/ TAILQ_NEXT ../dbinc/queue.h /^#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_n/ TAILQ_PREV ../dbinc/queue.h /^#define TAILQ_PREV(elm, headname, field) \\$/ TAILQ_REMOVE ../dbinc/queue.h /^#define TAILQ_REMOVE(head, elm, field) do { \\$/ -TCLDB_EVENTITEMS ../tcl/tcl_internal.c /^#define TCLDB_EVENTITEMS 2 \/* Event name and any / -TCLDB_MAXREPFLAGS ../tcl/tcl_db_pkg.c /^#define TCLDB_MAXREPFLAGS 32$/ -TCLDB_SENDEVENT ../tcl/tcl_internal.c /^#define TCLDB_SENDEVENT 2$/ -TCLDB_SENDITEMS ../tcl/tcl_db_pkg.c /^#define TCLDB_SENDITEMS 7$/ -TEMPERING_MASK_B ../crypto/mersenne/mt19937db.c /^#define TEMPERING_MASK_B 0x9d2c5680$/ -TEMPERING_MASK_C ../crypto/mersenne/mt19937db.c /^#define TEMPERING_MASK_C 0xefc60000$/ +TCLDB_EVENTITEMS ../tcl/tcl_internal.c 513 +TCLDB_MAXREPFLAGS ../tcl/tcl_db_pkg.c 3682 +TCLDB_SENDEVENT ../tcl/tcl_internal.c 514 +TCLDB_SENDITEMS ../tcl/tcl_db_pkg.c 3681 +TEMPERING_MASK_B ../crypto/mersenne/mt19937db.c 44 +TEMPERING_MASK_C ../crypto/mersenne/mt19937db.c 45 TEMPERING_SHIFT_L ../crypto/mersenne/mt19937db.c /^#define TEMPERING_SHIFT_L(y) (y >> 18)$/ TEMPERING_SHIFT_S ../crypto/mersenne/mt19937db.c /^#define TEMPERING_SHIFT_S(y) (y << 7)$/ TEMPERING_SHIFT_T ../crypto/mersenne/mt19937db.c /^#define TEMPERING_SHIFT_T(y) (y << 15)$/ TEMPERING_SHIFT_U ../crypto/mersenne/mt19937db.c /^#define TEMPERING_SHIFT_U(y) (y >> 11)$/ -TESTDIR ../mutex/tm.c /^#define TESTDIR "TESTDIR" \/* Working area *\/$/ -THREAD_INFO ../dbinc/db_int.in /^} THREAD_INFO;$/ -TIMESTAMP_CHECK ../rep/rep_util.c /^#define TIMESTAMP_CHECK(dbenv, ts, renv) do { / +TESTDIR ../mutex/test_mutex.c 59 +TIMESTAMP_CHECK ../rep/rep_util.c /^#define TIMESTAMP_CHECK(dbenv, ts, renv) do { \\/ TLOOP ../clib/memmove.c /^#define TLOOP(s) if (t) TLOOP1(s)$/ TLOOP1 ../clib/memmove.c /^#define TLOOP1(s) do { s; } while (--t)$/ -TM ../mutex/tm.c /^} TM;$/ -TMASYNC ../dbinc/xa.h /^#define TMASYNC 0x80000000L \/* perform routine a/ -TMENDRSCAN ../dbinc/xa.h /^#define TMENDRSCAN 0x00800000L \/* end a recovery / -TMER_INVAL ../dbinc/xa.h /^#define TMER_INVAL -2 \/* invalid arguments were / -TMER_PROTO ../dbinc/xa.h /^#define TMER_PROTO -3 \/* routine invoked in an i/ -TMER_TMERR ../dbinc/xa.h /^#define TMER_TMERR -1 \/* an error occurred in th/ -TMFAIL ../dbinc/xa.h /^#define TMFAIL 0x20000000L \/* dissociates caller/ -TMJOIN ../dbinc/xa.h /^#define TMJOIN 0x00200000L \/* caller is joining / -TMMIGRATE ../dbinc/xa.h /^#define TMMIGRATE 0x00100000L \/* caller intends t/ -TMMULTIPLE ../dbinc/xa.h /^#define TMMULTIPLE 0x00400000L \/* wait for any as/ -TMNOFLAGS ../dbinc/xa.h /^#define TMNOFLAGS 0x00000000L \/* no resource mana/ -TMNOMIGRATE ../dbinc/xa.h /^#define TMNOMIGRATE 0x00000002L \/* resource manag/ -TMNOWAIT ../dbinc/xa.h /^#define TMNOWAIT 0x10000000L \/* return if blockin/ -TMONEPHASE ../dbinc/xa.h /^#define TMONEPHASE 0x40000000L \/* caller is using/ -TMREGISTER ../dbinc/xa.h /^#define TMREGISTER 0x00000001L \/* resource manage/ -TMRESUME ../dbinc/xa.h /^#define TMRESUME 0x08000000L \/* caller is resumin/ -TMSTARTRSCAN ../dbinc/xa.h /^#define TMSTARTRSCAN 0x01000000L \/* start a recov/ -TMSUCCESS ../dbinc/xa.h /^#define TMSUCCESS 0x04000000L \/* dissociate calle/ -TMSUSPEND ../dbinc/xa.h /^#define TMSUSPEND 0x02000000L \/* caller is suspen/ -TMUSEASYNC ../dbinc/xa.h /^#define TMUSEASYNC 0x00000004L \/* resource manage/ -TM_JOIN ../dbinc/xa.h /^#define TM_JOIN 2 \/* caller is joining existing/ -TM_OK ../dbinc/xa.h /^#define TM_OK 0 \/* normal execution *\/$/ -TM_RESUME ../dbinc/xa.h /^#define TM_RESUME 1 \/* caller is resuming associ/ -TRACEBUF ../dbinc/queue.h /^#define TRACEBUF struct qm_trace trace;$/ +TMASYNC ../dbinc/xa.h 93 +TMENDRSCAN ../dbinc/xa.h 107 +TMER_INVAL ../dbinc/xa.h 125 +TMER_PROTO ../dbinc/xa.h 126 +TMER_TMERR ../dbinc/xa.h 123 +TMFAIL ../dbinc/xa.h 96 +TMJOIN ../dbinc/xa.h 110 +TMMIGRATE ../dbinc/xa.h 112 +TMMULTIPLE ../dbinc/xa.h 108 +TMNOFLAGS ../dbinc/xa.h 81 +TMNOMIGRATE ../dbinc/xa.h 85 +TMNOWAIT ../dbinc/xa.h 98 +TMONEPHASE ../dbinc/xa.h 94 +TMREGISTER ../dbinc/xa.h 83 +TMRESUME ../dbinc/xa.h 100 +TMSTARTRSCAN ../dbinc/xa.h 106 +TMSUCCESS ../dbinc/xa.h 102 +TMSUSPEND ../dbinc/xa.h 104 +TMUSEASYNC ../dbinc/xa.h 87 +TM_JOIN ../dbinc/xa.h 118 +TM_OK ../dbinc/xa.h 122 +TM_RESUME ../dbinc/xa.h 120 +TO_TSTRING ../dbinc/win_db.h /^#define TO_TSTRING(dbenv, s, ts, ret) do { \\$/ +TRACEBUF ../dbinc/queue.h 192 TRASHIT ../dbinc/queue.h /^#define TRASHIT(x) do {(x) = (void *)-1;} while (0/ -TRUE ../dbinc/db_int.in /^#define TRUE (!FALSE)$/ -TXN2JDBENV ../libdb_java/db_java_wrap.c /^#define TXN2JDBENV ((jobject)DB_ENV_INTERNAL(arg1-/ -TXN_ABORT ../dbinc/txn.h /^#define TXN_ABORT 3$/ -TXN_ABORTED ../dbinc/db.in /^#define TXN_ABORTED 1$/ -TXN_CDSGROUP ../dbinc/db.in /^#define TXN_CDSGROUP 0x0002 \/* CDS group handle./ -TXN_CHILDCOMMIT ../dbinc/db.in /^#define TXN_CHILDCOMMIT 0x0001 \/* Txn has commit/ -TXN_COMMIT ../dbinc/txn.h /^#define TXN_COMMIT 1$/ -TXN_COMMITTED ../dbinc/db.in /^#define TXN_COMMITTED 2$/ -TXN_COMPENSATE ../dbinc/db.in /^#define TXN_COMPENSATE 0x0004 \/* Compensating tr/ -TXN_DEADLOCK ../dbinc/db.in /^#define TXN_DEADLOCK 0x0008 \/* Txn has deadlocke/ -TXN_DETAIL ../dbinc/txn.h /^} TXN_DETAIL;$/ -TXN_DTL_COLLECTED ../dbinc/txn.h /^#define TXN_DTL_COLLECTED 0x1 \/* collected during/ -TXN_DTL_INMEMORY ../dbinc/txn.h /^#define TXN_DTL_INMEMORY 0x4 \/* uses in memory lo/ -TXN_DTL_RESTORED ../dbinc/txn.h /^#define TXN_DTL_RESTORED 0x2 \/* prepared txn rest/ -TXN_EVENT ../txn/txn_util.c /^typedef struct __txn_event TXN_EVENT;$/ -TXN_EVENT_T ../dbinc/txn.h /^} TXN_EVENT_T;$/ -TXN_EXPECTED ../dbinc/txn.h /^#define TXN_EXPECTED 5$/ -TXN_IGNORE ../dbinc/txn.h /^#define TXN_IGNORE 4$/ -TXN_INVALID ../dbinc/txn.h /^#define TXN_INVALID 0 \/* Invalid transaction ID./ -TXN_IN_RECOVERY ../dbinc/txn.h /^#define TXN_IN_RECOVERY 0x01 \/* environment is / -TXN_LOCKTIMEOUT ../dbinc/db.in /^#define TXN_LOCKTIMEOUT 0x0010 \/* Txn has a lock/ -TXN_MALLOC ../dbinc/db.in /^#define TXN_MALLOC 0x0020 \/* Structure allocated/ -TXN_MAXIMUM ../dbinc/txn.h /^#define TXN_MAXIMUM 0xffffffff \/* Maximum number / -TXN_MINIMUM ../dbinc/txn.h /^#define TXN_MINIMUM 0x80000000$/ -TXN_NOSYNC ../dbinc/db.in /^#define TXN_NOSYNC 0x0040 \/* Do not sync on prep/ -TXN_NOWAIT ../dbinc/db.in /^#define TXN_NOWAIT 0x0080 \/* Do not wait on lock/ -TXN_OK ../dbinc/txn.h /^#define TXN_OK 0$/ +TRUE ../dbinc/db_int.in 115 +TXN2JDBENV ../libdb_java/db_java_wrap.c 1127 +TXN_ABORT ../dbinc/txn.h 227 +TXN_ABORTED ../dbinc/db.in 1098 +TXN_CDSGROUP ../dbinc/db.in 1053 +TXN_CHILDCOMMIT ../dbinc/db.in 1052 +TXN_COMMIT ../dbinc/txn.h 225 +TXN_COMMITTED ../dbinc/db.in 1099 +TXN_COMPENSATE ../dbinc/db.in 1054 +TXN_DEADLOCK ../dbinc/db.in 1055 +TXN_DTL_COLLECTED ../dbinc/txn.h 71 +TXN_DTL_INMEMORY ../dbinc/txn.h 73 +TXN_DTL_RESTORED ../dbinc/txn.h 72 +TXN_EVENT ../txn/txn_util.c 19 +TXN_EVENT_T ../dbinc/txn.h 24 +TXN_EXPECTED ../dbinc/txn.h 229 +TXN_IGNORE ../dbinc/txn.h 228 +TXN_INVALID ../dbinc/txn.h 35 +TXN_IN_RECOVERY ../dbinc/txn.h 139 +TXN_LOCKTIMEOUT ../dbinc/db.in 1056 +TXN_MALLOC ../dbinc/db.in 1057 +TXN_MAXIMUM ../dbinc/txn.h 34 +TXN_MINIMUM ../dbinc/txn.h 33 +TXN_NOSYNC ../dbinc/db.in 1058 +TXN_NOWAIT ../dbinc/db.in 1059 +TXN_NSLOTS ../dbinc/txn.h 38 +TXN_OK ../dbinc/txn.h 224 TXN_ON ../dbinc/db_int.in /^#define TXN_ON(dbenv) ((dbenv)->tx_handle != NULL/ -TXN_PREPARE ../dbinc/txn.h /^#define TXN_PREPARE 2$/ -TXN_PREPARED ../dbinc/db.in /^#define TXN_PREPARED 3$/ -TXN_PRIVATE ../dbinc/db.in /^#define TXN_PRIVATE 0x0100 \/* Txn owned by curso/ -TXN_READ_COMMITTED ../dbinc/db.in /^#define TXN_READ_COMMITTED 0x0200 \/* Txn has degr/ -TXN_READ_UNCOMMITTED ../dbinc/db.in /^#define TXN_READ_UNCOMMITTED 0x0400 \/* Txn has de/ -TXN_RESTORED ../dbinc/db.in /^#define TXN_RESTORED 0x0800 \/* Txn has been rest/ -TXN_RUNNING ../dbinc/db.in /^#define TXN_RUNNING 4$/ -TXN_SNAPSHOT ../dbinc/db.in /^#define TXN_SNAPSHOT 0x1000 \/* Snapshot Isolatio/ -TXN_SYNC ../dbinc/db.in /^#define TXN_SYNC 0x2000 \/* Write and sync on pre/ -TXN_SYNC_FLAGS ../dbinc/db.in /^#define TXN_SYNC_FLAGS (TXN_SYNC | TXN_NOSYNC | TX/ +TXN_PREPARE ../dbinc/txn.h 226 +TXN_PREPARED ../dbinc/db.in 1100 +TXN_PRIVATE ../dbinc/db.in 1060 +TXN_READ_COMMITTED ../dbinc/db.in 1061 +TXN_READ_UNCOMMITTED ../dbinc/db.in 1062 +TXN_RESTORED ../dbinc/db.in 1063 +TXN_RUNNING ../dbinc/db.in 1101 +TXN_SNAPSHOT ../dbinc/db.in 1064 +TXN_SYNC ../dbinc/db.in 1065 +TXN_SYNC_FLAGS ../dbinc/db.in 1070 TXN_SYSTEM_LOCK ../dbinc/txn.h /^#define TXN_SYSTEM_LOCK(dbenv) \\$/ TXN_SYSTEM_UNLOCK ../dbinc/txn.h /^#define TXN_SYSTEM_UNLOCK(dbenv) \\$/ -TXN_UNEXPECTED ../dbinc/txn.h /^#define TXN_UNEXPECTED 6$/ -TXN_WRITE_NOSYNC ../dbinc/db.in /^#define TXN_WRITE_NOSYNC 0x4000 \/* Write only on / -TXN_XA_ABORTED ../dbinc/db.in /^#define TXN_XA_ABORTED 1$/ -TXN_XA_DEADLOCKED ../dbinc/db.in /^#define TXN_XA_DEADLOCKED 2$/ -TXN_XA_ENDED ../dbinc/db.in /^#define TXN_XA_ENDED 3$/ -TXN_XA_PREPARED ../dbinc/db.in /^#define TXN_XA_PREPARED 4$/ -TXN_XA_STARTED ../dbinc/db.in /^#define TXN_XA_STARTED 5$/ -TXN_XA_SUSPENDED ../dbinc/db.in /^#define TXN_XA_SUSPENDED 6$/ +TXN_UNEXPECTED ../dbinc/txn.h 230 +TXN_WRITE_NOSYNC ../dbinc/db.in 1066 +TXN_XA_ABORTED ../dbinc/db.in 1104 +TXN_XA_DEADLOCKED ../dbinc/db.in 1105 +TXN_XA_ENDED ../dbinc/db.in 1106 +TXN_XA_PREPARED ../dbinc/db.in 1107 +TXN_XA_STARTED ../dbinc/db.in 1108 +TXN_XA_SUSPENDED ../dbinc/db.in 1109 TYPE ../dbinc/db_page.h /^#define TYPE(p) (((PAGE *)p)->type)$/ T_RESTORED ../db/db_dispatch.c /^#define T_RESTORED(txn) ((txn) != NULL && F_/ -UINT16_MAX ../dbinc/db_int.in /^#define UINT16_MAX 65535 \/* Maximum 16-bit unsig/ UINT32_CMP ../lock/lock_list.c /^#define UINT32_CMP(A, B) ((A) == (B) ? 0 : ((A) > / -UINT32_MAX ../dbinc/db_int.in /^#define UINT32_MAX 4294967295U \/* Maximum 32-bit / -UINT64_MAX ../dbinc/db_int.in /^#define UINT64_MAX _UI64_MAX$/ UMRW_SET ../dbinc/debug.h /^#define UMRW_SET(v) (v) = 0$/ +UNLOCK_LOCKERS ../dbinc/lock.h /^#define UNLOCK_LOCKERS(dbenv, region) \\$/ +UNLOCK_LOCKS ../dbinc/lock.h /^#define UNLOCK_LOCKS(dbenv, region) \\$/ UNLOCK_MUTEX ../dbinc/repmgr.h /^#define UNLOCK_MUTEX(m) do { \\$/ -UPPER_MASK ../crypto/mersenne/mt19937db.c /^#define UPPER_MASK 0x80000000 \/* most significant/ -USEC_PER_MS ../dbinc/db_int.in /^#define USEC_PER_MS 1000 \/* Microseconds in a mi/ -VERIFY_FLAGS ../db/db_vrfy.c /^#define VERIFY_FLAGS \\$/ +UNLOCK_OBJECTS ../dbinc/lock.h /^#define UNLOCK_OBJECTS(dbenv, region) \\$/ +UPPER_MASK ../crypto/mersenne/mt19937db.c 40 +US_PER_MS ../dbinc/db_int.in 123 +US_PER_SEC ../dbinc/db_int.in 124 +VERIFY_FLAGS ../db/db_vrfy.c 57 VISIBLE_LSN ../dbinc/mp.h /^#define VISIBLE_LSN(dbenv, bhp) \\$/ -VM_PAGESIZE ../dbinc/mp.h /^#define VM_PAGESIZE 4096$/ -VRFY_CHILDINFO ../dbinc/db_int.in /^struct __vrfy_childinfo;typedef struct __vrfy_chil/ -VRFY_DBINFO ../dbinc/db_int.in /^struct __vrfy_dbinfo; typedef struct __vrfy_dbin/ -VRFY_DUPS_UNSORTED ../dbinc/db_verify.h /^#define VRFY_DUPS_UNSORTED 0x0001 \/* Have to flag/ -VRFY_HAS_CHKSUM ../dbinc/db_verify.h /^#define VRFY_HAS_CHKSUM 0x0002$/ -VRFY_HAS_DUPS ../dbinc/db_verify.h /^#define VRFY_HAS_DUPS 0x0004$/ -VRFY_HAS_DUPSORT ../dbinc/db_verify.h /^#define VRFY_HAS_DUPSORT 0x0008 \/* Has the flag s/ -VRFY_HAS_RECNUMS ../dbinc/db_verify.h /^#define VRFY_HAS_RECNUMS 0x0010$/ -VRFY_HAS_SUBDBS ../dbinc/db_verify.h /^#define VRFY_HAS_SUBDBS 0x0020$/ -VRFY_INCOMPLETE ../dbinc/db_verify.h /^#define VRFY_INCOMPLETE 0x0040 \/* Meta or item o/ -VRFY_IS_ALLZEROES ../dbinc/db_verify.h /^#define VRFY_IS_ALLZEROES 0x0080 \/* Hash page we / -VRFY_IS_FIXEDLEN ../dbinc/db_verify.h /^#define VRFY_IS_FIXEDLEN 0x0100$/ -VRFY_IS_RECNO ../dbinc/db_verify.h /^#define VRFY_IS_RECNO 0x0200$/ -VRFY_IS_RRECNO ../dbinc/db_verify.h /^#define VRFY_IS_RRECNO 0x0400$/ -VRFY_ITEM ../btree/bt_verify.c /^typedef enum { VRFY_ITEM_NOTSET=0, VRFY_ITEM_BEGIN/ -VRFY_LEAFCHAIN_BROKEN ../dbinc/db_verify.h /^#define VRFY_LEAFCHAIN_BROKEN 0x08 \/* Lost one or/ -VRFY_OVFL_LEAFSEEN ../dbinc/db_verify.h /^#define VRFY_OVFL_LEAFSEEN 0x0800$/ -VRFY_PAGEINFO ../dbinc/db_int.in /^struct __vrfy_pageinfo; typedef struct __vrfy_page/ -VRFY_QMETA_SET ../dbinc/db_verify.h /^#define VRFY_QMETA_SET 0x10 \/* We've seen a Q/ -V_DUPLICATE ../dbinc/db_verify.h /^#define V_DUPLICATE 1 \/* off-page dup metadata */ -V_OVERFLOW ../dbinc/db_verify.h /^#define V_OVERFLOW 2 \/* overflow page *\/$/ -V_RECNO ../dbinc/db_verify.h /^#define V_RECNO 3 \/* btree internal or leaf pag/ +VM_PAGESIZE ../dbinc/mp.h 567 +VRFY_CHILDINFO ../dbinc/db_int.in 703 +VRFY_DBINFO ../dbinc/db_int.in 704 +VRFY_DUPS_UNSORTED ../dbinc/db_verify.h 180 +VRFY_HAS_CHKSUM ../dbinc/db_verify.h 181 +VRFY_HAS_DUPS ../dbinc/db_verify.h 182 +VRFY_HAS_DUPSORT ../dbinc/db_verify.h 183 +VRFY_HAS_RECNUMS ../dbinc/db_verify.h 184 +VRFY_HAS_SUBDBS ../dbinc/db_verify.h 185 +VRFY_INCOMPLETE ../dbinc/db_verify.h 186 +VRFY_IS_ALLZEROES ../dbinc/db_verify.h 187 +VRFY_IS_FIXEDLEN ../dbinc/db_verify.h 188 +VRFY_IS_RECNO ../dbinc/db_verify.h 189 +VRFY_IS_RRECNO ../dbinc/db_verify.h 190 +VRFY_ITEM ../btree/bt_verify.c 490 +VRFY_LEAFCHAIN_BROKEN ../dbinc/db_verify.h 136 +VRFY_OVFL_LEAFSEEN ../dbinc/db_verify.h 191 +VRFY_PAGEINFO ../dbinc/db_int.in 705 +VRFY_QMETA_SET ../dbinc/db_verify.h 137 +V_DUPLICATE ../dbinc/db_verify.h 202 +V_OVERFLOW ../dbinc/db_verify.h 203 +V_RECNO ../dbinc/db_verify.h 204 WAITER_SLOT_IN_USE ../repmgr/repmgr_windows.c /^#define WAITER_SLOT_IN_USE(w) ((w)->lsnp != NULL)$/ -WOULDBLOCK ../dbinc/repmgr.h /^#define WOULDBLOCK WSAEWOULDBLOCK$/ -WRAPPED_CLASS ../dbinc/cxx_int.h /^\/\/$/ -XAER_ASYNC ../dbinc/xa.h /^#define XAER_ASYNC -2 \/* asynchronous operation / -XAER_DUPID ../dbinc/xa.h /^#define XAER_DUPID -8 \/* the XID already exists / -XAER_INVAL ../dbinc/xa.h /^#define XAER_INVAL -5 \/* invalid arguments were / -XAER_NOTA ../dbinc/xa.h /^#define XAER_NOTA -4 \/* the XID is not valid *\// -XAER_OUTSIDE ../dbinc/xa.h /^#define XAER_OUTSIDE -9 \/* resource manager doin/ -XAER_PROTO ../dbinc/xa.h /^#define XAER_PROTO -6 \/* routine invoked in an i/ -XAER_RMERR ../dbinc/xa.h /^#define XAER_RMERR -3 \/* a resource manager erro/ -XAER_RMFAIL ../dbinc/xa.h /^#define XAER_RMFAIL -7 \/* resource manager unava/ -XA_FLAGS ../xa/xa.c /^#define XA_FLAGS \\$/ -XA_HEURCOM ../dbinc/xa.h /^#define XA_HEURCOM 7 \/* the transaction branch h/ -XA_HEURHAZ ../dbinc/xa.h /^#define XA_HEURHAZ 8 \/* the transaction branch m/ -XA_HEURMIX ../dbinc/xa.h /^#define XA_HEURMIX 5 \/* the transaction branch h/ -XA_HEURRB ../dbinc/xa.h /^#define XA_HEURRB 6 \/* the transaction branch ha/ -XA_METHODS ../xa/xa_db.c /^} XA_METHODS;$/ -XA_NOMIGRATE ../dbinc/xa.h /^#define XA_NOMIGRATE 9 \/* resumption must occur / -XA_OK ../dbinc/xa.h /^#define XA_OK 0 \/* normal execution *\/$/ -XA_RBBASE ../dbinc/xa.h /^#define XA_RBBASE 100 \/* The inclusive lower bou/ -XA_RBCOMMFAIL ../dbinc/xa.h /^#define XA_RBCOMMFAIL XA_RBBASE+1 \/* The rollback/ -XA_RBDEADLOCK ../dbinc/xa.h /^#define XA_RBDEADLOCK XA_RBBASE+2 \/* A deadlock w/ -XA_RBEND ../dbinc/xa.h /^#define XA_RBEND XA_RBTRANSIENT \/* The inclusive / -XA_RBINTEGRITY ../dbinc/xa.h /^#define XA_RBINTEGRITY XA_RBBASE+3 \/* A condition/ -XA_RBOTHER ../dbinc/xa.h /^#define XA_RBOTHER XA_RBBASE+4 \/* The resource ma/ -XA_RBPROTO ../dbinc/xa.h /^#define XA_RBPROTO XA_RBBASE+5 \/* A protocol erro/ -XA_RBROLLBACK ../dbinc/xa.h /^#define XA_RBROLLBACK XA_RBBASE \/* The rollback w/ -XA_RBTIMEOUT ../dbinc/xa.h /^#define XA_RBTIMEOUT XA_RBBASE+6 \/* A transaction/ -XA_RBTRANSIENT ../dbinc/xa.h /^#define XA_RBTRANSIENT XA_RBBASE+7 \/* May retry t/ -XA_RDONLY ../dbinc/xa.h /^#define XA_RDONLY 3 \/* the transaction branch wa/ -XA_RETRY ../dbinc/xa.h /^#define XA_RETRY 4 \/* routine returned with no e/ -XID ../dbinc/xa.h /^typedef struct xid_t XID;$/ -XIDDATASIZE ../dbinc/xa.h /^#define XIDDATASIZE 128 \/* size in bytes *\/$/ +WIN32_LEAN_AND_MEAN ../dbinc/win_db.h 51 +WOULDBLOCK ../dbinc/repmgr.h 327 +WRAPPED_CLASS ../dbinc/cxx_int.h /^#define WRAPPED_CLASS(_WRAPPER_CLASS, _IMP_CLASS, / +XAER_ASYNC ../dbinc/xa.h 167 +XAER_DUPID ../dbinc/xa.h 176 +XAER_INVAL ../dbinc/xa.h 172 +XAER_NOTA ../dbinc/xa.h 171 +XAER_OUTSIDE ../dbinc/xa.h 177 +XAER_PROTO ../dbinc/xa.h 173 +XAER_RMERR ../dbinc/xa.h 169 +XAER_RMFAIL ../dbinc/xa.h 175 +XA_FLAGS ../xa/xa.c 163 +XA_HEURCOM ../dbinc/xa.h 155 +XA_HEURHAZ ../dbinc/xa.h 153 +XA_HEURMIX ../dbinc/xa.h 159 +XA_HEURRB ../dbinc/xa.h 157 +XA_NOMIGRATE ../dbinc/xa.h 151 +XA_OK ../dbinc/xa.h 166 +XA_RBBASE ../dbinc/xa.h 132 +XA_RBCOMMFAIL ../dbinc/xa.h 136 +XA_RBDEADLOCK ../dbinc/xa.h 138 +XA_RBEND ../dbinc/xa.h 149 +XA_RBINTEGRITY ../dbinc/xa.h 139 +XA_RBOTHER ../dbinc/xa.h 142 +XA_RBPROTO ../dbinc/xa.h 145 +XA_RBROLLBACK ../dbinc/xa.h 134 +XA_RBTIMEOUT ../dbinc/xa.h 147 +XA_RBTRANSIENT ../dbinc/xa.h 148 +XA_RDONLY ../dbinc/xa.h 164 +XA_RETRY ../dbinc/xa.h 162 +XID ../dbinc/xa.h 33 +XIDDATASIZE ../dbinc/xa.h 23 XID_FIELD_IS_SET ../txn/txn_stat.c /^#define XID_FIELD_IS_SET(p) \\$/ ZEROPG_ERR_PRINT ../dbinc/db_verify.h /^#define ZEROPG_ERR_PRINT(dbenv, pgno, str) do { / ZERO_LSN ../dbinc/db_int.in /^#define ZERO_LSN(LSN) do { \\$/ -ZF_LARGE_WRITE ../os/os_fzero.c /^#define ZF_LARGE_WRITE (64 * 1024)$/ -_CRT_SECURE_NO_DEPRECATE ../libdb_java/db_java_wrap.c /^# define _CRT_SECURE_NO_DEPRECATE$/ +ZF_LARGE_WRITE ../os/os_fzero.c 57 +_CRT_SECURE_NO_DEPRECATE ../dbinc/win_db.h 12 _CopyObjBytes ../tcl/tcl_internal.c /^_CopyObjBytes(interp, obj, newp, sizep, freep)$/ -_DB_185_H_ ../dbinc/db_185.in /^#define _DB_185_H_$/ -_DB_AM_H_ ../dbinc/db_am.h /^#define _DB_AM_H_$/ -_DB_BTREE_H_ ../dbinc/btree.h /^#define _DB_BTREE_H_$/ -_DB_CRYPTO_H_ ../dbinc/crypto.h /^#define _DB_CRYPTO_H_$/ -_DB_CXX_H_ ../dbinc/db_cxx.in /^#define _DB_CXX_H_$/ -_DB_CXX_INT_H_ ../dbinc/cxx_int.h /^#define _DB_CXX_INT_H_$/ -_DB_DEBUG_H_ ../dbinc/debug.h /^#define _DB_DEBUG_H_$/ -_DB_DISPATCH_H_ ../dbinc/db_dispatch.h /^#define _DB_DISPATCH_H_$/ -_DB_FOP_H_ ../dbinc/fop.h /^#define _DB_FOP_H_$/ -_DB_GLOBALS_H_ ../dbinc/globals.h /^#define _DB_GLOBALS_H_$/ -_DB_HASH_H_ ../dbinc/hash.h /^#define _DB_HASH_H_$/ -_DB_HMAC_H_ ../dbinc/hmac.h /^#define _DB_HMAC_H_$/ -_DB_H_ ../dbinc/db.in /^#define _DB_H_$/ -_DB_INT_H_ ../dbinc/db_int.in /^#define _DB_INT_H_$/ -_DB_JOIN_H_ ../dbinc/db_join.h /^#define _DB_JOIN_H_$/ -_DB_LOCK_H_ ../dbinc/lock.h /^#define _DB_LOCK_H_$/ -_DB_LOG_H_ ../dbinc/log.h /^#define _DB_LOG_H_$/ -_DB_MP_H_ ../dbinc/mp.h /^#define _DB_MP_H_$/ -_DB_MUTEX_H_ ../dbinc/mutex.h /^#define _DB_MUTEX_H_$/ -_DB_MUTEX_INT_H_ ../dbinc/mutex_int.h /^#define _DB_MUTEX_INT_H_$/ -_DB_OS_H_ ../dbinc/os.h /^#define _DB_OS_H_$/ -_DB_PAGE_H_ ../dbinc/db_page.h /^#define _DB_PAGE_H_$/ -_DB_QAM_H_ ../dbinc/qam.h /^#define _DB_QAM_H_$/ -_DB_QUEUE_H_ ../dbinc/queue.h /^#define _DB_QUEUE_H_$/ -_DB_REGION_H_ ../dbinc/region.h /^#define _DB_REGION_H_$/ -_DB_REPMGR_H_ ../dbinc/repmgr.h /^#define _DB_REPMGR_H_$/ -_DB_REP_H_ ../dbinc/rep.h /^#define _DB_REP_H_$/ -_DB_SERVER_INT_H_ ../dbinc/db_server_int.h /^#define _DB_SERVER_INT_H_$/ -_DB_SHQUEUE_H_ ../dbinc/shqueue.h /^#define _DB_SHQUEUE_H_$/ -_DB_SWAP_H_ ../dbinc/db_swap.h /^#define _DB_SWAP_H_$/ -_DB_TCL_DB_H_ ../dbinc/tcl_db.h /^#define _DB_TCL_DB_H_$/ -_DB_TXN_H_ ../dbinc/txn.h /^#define _DB_TXN_H_$/ -_DB_UPGRADE_H_ ../dbinc/db_upgrade.h /^#define _DB_UPGRADE_H_$/ -_DB_VERIFY_H_ ../dbinc/db_verify.h /^#define _DB_VERIFY_H_$/ -_DB_XA_H_ ../dbinc/xa.h /^#define _DB_XA_H_$/ +_DB_185_H_ ../dbinc/db_185.in 38 +_DB_AM_H_ ../dbinc/db_am.h 9 +_DB_BTREE_H_ ../dbinc/btree.h 44 +_DB_CLOCK_H_ ../dbinc/clock.h 41 +_DB_CRYPTO_H_ ../dbinc/crypto.h 10 +_DB_CXX_H_ ../dbinc/db_cxx.in 10 +_DB_CXX_INT_H_ ../dbinc/cxx_int.h 10 +_DB_DEBUG_H_ ../dbinc/debug.h 10 +_DB_DISPATCH_H_ ../dbinc/db_dispatch.h 38 +_DB_FOP_H_ ../dbinc/fop.h 10 +_DB_GLOBALS_H_ ../dbinc/globals.h 10 +_DB_HASH_H_ ../dbinc/hash.h 45 +_DB_HMAC_H_ ../dbinc/hmac.h 10 +_DB_H_ ../dbinc/db.in 21 +_DB_INT_H_ ../dbinc/db_int.in 10 +_DB_JOIN_H_ ../dbinc/db_join.h 10 +_DB_LOCK_H_ ../dbinc/lock.h 10 +_DB_LOG_H_ ../dbinc/log.h 10 +_DB_MP_H_ ../dbinc/mp.h 10 +_DB_MUTEX_H_ ../dbinc/mutex.h 10 +_DB_MUTEX_INT_H_ ../dbinc/mutex_int.h 10 +_DB_OS_H_ ../dbinc/os.h 10 +_DB_PAGE_H_ ../dbinc/db_page.h 10 +_DB_QAM_H_ ../dbinc/qam.h 10 +_DB_QUEUE_H_ ../dbinc/queue.h 38 +_DB_REGION_H_ ../dbinc/region.h 10 +_DB_REPMGR_H_ ../dbinc/repmgr.h 10 +_DB_REP_H_ ../dbinc/rep.h 10 +_DB_SERVER_INT_H_ ../dbinc/db_server_int.h 10 +_DB_SHQUEUE_H_ ../dbinc/shqueue.h 10 +_DB_SWAP_H_ ../dbinc/db_swap.h 38 +_DB_TCL_DB_H_ ../dbinc/tcl_db.h 10 +_DB_TXN_H_ ../dbinc/txn.h 10 +_DB_UPGRADE_H_ ../dbinc/db_upgrade.h 10 +_DB_VERIFY_H_ ../dbinc/db_verify.h 10 +_DB_XA_H_ ../dbinc/xa.h 14 _DbInfoDelete ../tcl/tcl_db.c /^_DbInfoDelete(interp, dbip)$/ _DeleteInfo ../tcl/tcl_internal.c /^_DeleteInfo(p)$/ _EnvInfoDelete ../tcl/tcl_env.c /^_EnvInfoDelete(interp, envip)$/ @@ -2188,24 +2574,26 @@ _SetListElemWideInt ../tcl/tcl_internal.c /^_SetListElemWideInt(interp, list, el _SetListRecnoElem ../tcl/tcl_internal.c /^_SetListRecnoElem(interp, list, elem1, elem2, e2si/ _SetMultiList ../tcl/tcl_internal.c /^_SetMultiList(interp, list, key, data, type, flag)/ _TxnInfoDelete ../tcl/tcl_txn.c /^_TxnInfoDelete(interp, txnip)$/ -__BIT_TYPES_DEFINED__ ../dbinc/db.in /^#define __BIT_TYPES_DEFINED__$/ -__DBC_INTERNAL ../dbinc/db_int.in /^#define __DBC_INTERNAL \\$/ +_WIN32_WINNT ../dbinc/win_db.h 19 +__BIT_TYPES_DEFINED__ ../dbinc/db.in 64 +__DBC_INTERNAL ../dbinc/db_int.in 536 __DB_STD ../dbinc/db_cxx.in /^#define __DB_STD(x) std::x$/ __ENV_LPUT ../dbinc/db_am.h /^#define __ENV_LPUT(dbenv, lock) \\$/ -__INCLUDE_NETWORKING ../clib/getaddrinfo.c /^#define __INCLUDE_NETWORKING 1$/ -__INCLUDE_SELECT_H ../os/os_sleep.c /^#define __INCLUDE_SELECT_H 1$/ +__INCLUDE_DIRECTORY ../os/os_dir.c 11 +__INCLUDE_NETWORKING ../clib/getaddrinfo.c 11 +__INCLUDE_SELECT_H ../os/os_sleep.c 11 __LPUT ../dbinc/db_am.h /^#define __LPUT(dbc, lock) \\$/ -__P ../dbinc/db_185.in /^#define __P(protos) protos \/* ANSI C prototypes / -__P_DUPLICATE ../dbinc/db_page.h /^#define __P_DUPLICATE 1 \/* Duplicate. DEPRECATED / -__RIJNDAEL_ALG_FST_H ../crypto/rijndael/rijndael-alg-fst.h /^#define __RIJNDAEL_ALG_FST_H$/ -__RIJNDAEL_API_FST_H ../crypto/rijndael/rijndael-api-fst.h /^#define __RIJNDAEL_API_FST_H$/ -__R_UNUSED ../dbinc/db_185.in /^#define __R_UNUSED 2 \/* UNUSED *\/$/ +__P ../dbinc/db_185.in /^#define __P(protos) protos \/* ANSI C prototypes */ +__P_DUPLICATE ../dbinc/db_page.h 37 +__RIJNDAEL_ALG_FST_H ../crypto/rijndael/rijndael-alg-fst.h 30 +__RIJNDAEL_API_FST_H ../crypto/rijndael/rijndael-api-fst.h 42 +__R_UNUSED ../dbinc/db_185.in 97 __SH_LIST_PREV_OFF ../dbinc/shqueue.h /^#define __SH_LIST_PREV_OFF(elm, field) \\$/ __SH_TAILQ_LAST_OFF ../dbinc/shqueue.h /^#define __SH_TAILQ_LAST_OFF(head) \\$/ __SH_TAILQ_PREV_OFF ../dbinc/shqueue.h /^#define __SH_TAILQ_PREV_OFF(elm, field) \\$/ +__STDC__ ../dbinc/win_db.h 104 __TLPUT ../dbinc/db_am.h /^#define __TLPUT(dbc, lock) \\$/ __absname ../log/log_archive.c /^__absname(dbenv, pref, name, newnamep)$/ -__ack_waiters_table ../repmgr/repmgr_windows.c /^struct __ack_waiters_table {$/ __aes_adj_size ../crypto/aes_method.c /^__aes_adj_size(len)$/ __aes_close ../crypto/aes_method.c /^__aes_close(dbenv, data)$/ __aes_decrypt ../crypto/aes_method.c /^__aes_decrypt(dbenv, aes_data, iv, cipher, cipher_/ @@ -2224,27 +2612,11 @@ __bam_adj_read ../btree/btree_auto.c /^__bam_adj_read(dbenv, recbuf, argpp)$/ __bam_adj_recover ../btree/bt_rec.c /^__bam_adj_recover(dbenv, dbtp, lsnp, op, info)$/ __bam_adjindx ../btree/bt_delete.c /^__bam_adjindx(dbc, h, indx, indx_copy, is_insert)$/ __bam_adjust ../btree/bt_rsearch.c /^__bam_adjust(dbc, adjust)$/ -__bam_broot ../btree/bt_split.c /^__bam_broot(dbc, rootp, lp, rp)$/ +__bam_broot ../btree/bt_split.c /^__bam_broot(dbc, rootp, split, lp, rp)$/ __bam_build ../btree/bt_put.c /^__bam_build(dbc, op, dbt, h, indx, nbytes)$/ __bam_bulk ../btree/bt_cursor.c /^__bam_bulk(dbc, data, flags)$/ __bam_bulk_duplicates ../btree/bt_cursor.c /^__bam_bulk_duplicates(dbc, pgno, dbuf, keyoff, off/ __bam_bulk_overflow ../btree/bt_cursor.c /^__bam_bulk_overflow(dbc, len, pgno, dp)$/ -__bam_c_close ../btree/bt_cursor.c /^__bam_c_close(dbc, root_pgno, rmroot)$/ -__bam_c_count ../btree/bt_cursor.c /^__bam_c_count(dbc, recnop)$/ -__bam_c_del ../btree/bt_cursor.c /^__bam_c_del(dbc)$/ -__bam_c_destroy ../btree/bt_cursor.c /^__bam_c_destroy(dbc)$/ -__bam_c_dup ../btree/bt_cursor.c /^__bam_c_dup(orig_dbc, new_dbc)$/ -__bam_c_get ../btree/bt_cursor.c /^__bam_c_get(dbc, key, data, flags, pgnop)$/ -__bam_c_getstack ../btree/bt_cursor.c /^__bam_c_getstack(dbc)$/ -__bam_c_init ../btree/bt_cursor.c /^__bam_c_init(dbc, dbtype)$/ -__bam_c_next ../btree/bt_cursor.c /^__bam_c_next(dbc, initial_move, deleted_okay)$/ -__bam_c_physdel ../btree/bt_cursor.c /^__bam_c_physdel(dbc)$/ -__bam_c_prev ../btree/bt_cursor.c /^__bam_c_prev(dbc)$/ -__bam_c_put ../btree/bt_cursor.c /^__bam_c_put(dbc, key, data, flags, pgnop)$/ -__bam_c_refresh ../btree/bt_cursor.c /^__bam_c_refresh(dbc)$/ -__bam_c_rget ../btree/bt_cursor.c /^__bam_c_rget(dbc, data)$/ -__bam_c_search ../btree/bt_cursor.c /^__bam_c_search(dbc, root_pgno, key, flags, exactp)/ -__bam_c_writelock ../btree/bt_cursor.c /^__bam_c_writelock(dbc)$/ __bam_ca_delete ../btree/bt_curadj.c /^__bam_ca_delete(dbp, pgno, indx, delete, countp)$/ __bam_ca_di ../btree/bt_curadj.c /^__bam_ca_di(my_dbc, pgno, indx, adjust)$/ __bam_ca_dup ../btree/bt_curadj.c /^__bam_ca_dup(my_dbc, first, fpgno, fi, tpgno, ti)$/ @@ -2317,7 +2689,7 @@ __bam_pgno_print ../btree/btree_autop.c /^__bam_pgno_print(dbenv, dbtp, lsnp, no __bam_pgno_read ../btree/btree_auto.c /^__bam_pgno_read(dbenv, recbuf, argpp)$/ __bam_pgno_recover ../btree/bt_rec.c /^__bam_pgno_recover(dbenv, dbtp, lsnp, op, info)$/ __bam_pgout ../btree/bt_conv.c /^__bam_pgout(dbenv, dummydbp, pg, pp, cookie)$/ -__bam_pinsert ../btree/bt_split.c /^__bam_pinsert(dbc, parent, lchild, rchild, flags)$/ +__bam_pinsert ../btree/bt_split.c /^__bam_pinsert(dbc, parent, split, lchild, rchild, / __bam_print_cursor ../btree/bt_stat.c /^__bam_print_cursor(dbc)$/ __bam_psplit ../btree/bt_split.c /^__bam_psplit(dbc, cp, lp, rp, splitret)$/ __bam_pupdate ../btree/bt_delete.c /^__bam_pupdate(dbc, lpg)$/ @@ -2385,14 +2757,26 @@ __bam_vrfy_meta ../btree/bt_verify.c /^__bam_vrfy_meta(dbp, vdp, meta, pgno, fla __bam_vrfy_structure ../btree/bt_verify.c /^__bam_vrfy_structure(dbp, vdp, meta_pgno, flags)$/ __bam_vrfy_subtree ../btree/bt_verify.c /^__bam_vrfy_subtree(dbp, vdp, pgno, l, r, flags, le/ __bam_vrfy_treeorder ../btree/bt_verify.c /^__bam_vrfy_treeorder(dbp, h, lp, rp, func, flags)$/ -__bh ../dbinc/mp.h /^struct __bh {$/ -__bh_frozen_a ../dbinc/mp.h /^struct __bh_frozen_a {$/ -__bh_frozen_p ../dbinc/mp.h /^struct __bh_frozen_p {$/ +__bamc_close ../btree/bt_cursor.c /^__bamc_close(dbc, root_pgno, rmroot)$/ +__bamc_count ../btree/bt_cursor.c /^__bamc_count(dbc, recnop)$/ +__bamc_del ../btree/bt_cursor.c /^__bamc_del(dbc)$/ +__bamc_destroy ../btree/bt_cursor.c /^__bamc_destroy(dbc)$/ +__bamc_dup ../btree/bt_cursor.c /^__bamc_dup(orig_dbc, new_dbc)$/ +__bamc_get ../btree/bt_cursor.c /^__bamc_get(dbc, key, data, flags, pgnop)$/ +__bamc_getstack ../btree/bt_cursor.c /^__bamc_getstack(dbc)$/ +__bamc_init ../btree/bt_cursor.c /^__bamc_init(dbc, dbtype)$/ +__bamc_next ../btree/bt_cursor.c /^__bamc_next(dbc, initial_move, deleted_okay)$/ +__bamc_physdel ../btree/bt_cursor.c /^__bamc_physdel(dbc)$/ +__bamc_prev ../btree/bt_cursor.c /^__bamc_prev(dbc)$/ +__bamc_put ../btree/bt_cursor.c /^__bamc_put(dbc, key, data, flags, pgnop)$/ +__bamc_refresh ../btree/bt_cursor.c /^__bamc_refresh(dbc)$/ +__bamc_rget ../btree/bt_cursor.c /^__bamc_rget(dbc, data)$/ +__bamc_search ../btree/bt_cursor.c /^__bamc_search(dbc, root_pgno, key, flags, exactp)$/ +__bamc_writelock ../btree/bt_cursor.c /^__bamc_writelock(dbc)$/ __bhcmp ../mp/mp_sync.c /^__bhcmp(p1, p2)$/ -__btree ../dbinc/btree.h /^struct __btree { \/* Btree access method. *\/$/ __build_data ../log/log_archive.c /^__build_data(dbenv, pref, listp)$/ __cdsgroup_abort ../db/db_cds.c /^static int __cdsgroup_abort(txn)$/ -__cdsgroup_begin ../db/db_cds.c /^int __cdsgroup_begin(dbenv, txnpp)$/ +__cdsgroup_begin ../db/db_cds.c /^__cdsgroup_begin(dbenv, txnpp)$/ __cdsgroup_commit ../db/db_cds.c /^static int __cdsgroup_commit(txn, flags)$/ __cdsgroup_discard ../db/db_cds.c /^static int __cdsgroup_discard(txn, flags)$/ __cdsgroup_id ../db/db_cds.c /^static u_int32_t __cdsgroup_id(txn)$/ @@ -2403,9 +2787,6 @@ __cdsgroup_set_timeout ../db/db_cds.c /^static int __cdsgroup_set_timeout(txn, t __cmpfunc ../log/log_archive.c /^__cmpfunc(p1, p2)$/ __config_parse ../env/env_config.c /^__config_parse(dbenv, s, lc)$/ __config_split ../env/env_config.c /^__config_split(input, argv)$/ -__cq_aq ../dbinc/db.in /^ struct __cq_aq {$/ -__cq_fq ../dbinc/db.in /^ struct __cq_fq {$/ -__cq_jq ../dbinc/db.in /^ struct __cq_jq {$/ __crdel_init_print ../db/crdel_autop.c /^__crdel_init_print(dbenv, dtabp, dtabsizep)$/ __crdel_init_recover ../db/crdel_auto.c /^__crdel_init_recover(dbenv, dtabp, dtabsizep)$/ __crdel_inmem_create_log ../db/crdel_auto.c /^__crdel_inmem_create_log(dbenv, txnp, ret_lsnp, fl/ @@ -2425,14 +2806,11 @@ __crdel_metasub_print ../db/crdel_autop.c /^__crdel_metasub_print(dbenv, dbtp, l __crdel_metasub_read ../db/crdel_auto.c /^__crdel_metasub_read(dbenv, recbuf, argpp)$/ __crdel_metasub_recover ../db/crdel_rec.c /^__crdel_metasub_recover(dbenv, dbtp, lsnp, op, inf/ __crypto_algsetup ../crypto/crypto.c /^__crypto_algsetup(dbenv, db_cipher, alg, do_init)$/ -__crypto_dbenv_close ../crypto/crypto.c /^__crypto_dbenv_close(dbenv)$/ __crypto_decrypt_meta ../crypto/crypto.c /^__crypto_decrypt_meta(dbenv, dbp, mbuf, do_metachk/ -__crypto_region_destroy ../crypto/crypto.c /^__crypto_region_destroy(dbenv)$/ +__crypto_env_close ../crypto/crypto.c /^__crypto_env_close(dbenv)$/ +__crypto_env_refresh ../crypto/crypto.c /^__crypto_env_refresh(dbenv)$/ __crypto_region_init ../crypto/crypto.c /^__crypto_region_init(dbenv)$/ __crypto_set_passwd ../crypto/crypto.c /^__crypto_set_passwd(dbenv_src, dbenv_dest)$/ -__cursor ../dbinc/btree.h /^struct __cursor {$/ -__data ../env/db_salloc.c /^struct __data {$/ -__db ../dbinc/db.in /^struct __db {$/ __db185_open ../db185/db185.c /^__db185_open(file, oflags, mode, type, openinfo)$/ __db_31_offdup ../db/db_upg_opd.c /^__db_31_offdup(dbp, real_name, fhp, sorted, pgnop)/ __db_SHA1Final ../hmac/sha1.c /^__db_SHA1Final(digest, context)$/ @@ -2446,9 +2824,8 @@ __db_addrem_log ../db/db_auto.c /^__db_addrem_log(dbp, txnp, ret_lsnp, flags,$/ __db_addrem_print ../db/db_autop.c /^__db_addrem_print(dbenv, dbtp, lsnp, notused2, not/ __db_addrem_read ../db/db_auto.c /^__db_addrem_read(dbenv, recbuf, argpp)$/ __db_addrem_recover ../db/db_rec.c /^__db_addrem_recover(dbenv, dbtp, lsnp, op, info)$/ -__db_allocinfo ../os/os_alloc.c /^union __db_allocinfo {$/ __db_append_primary ../db/db_am.c /^__db_append_primary(dbc, key, data)$/ -__db_appname ../env/env_open.c /^__db_appname(dbenv, appname, file, tmp_oflags, fhp/ +__db_appname ../env/env_name.c /^__db_appname(dbenv, appname, file, tmp_oflags, fhp/ __db_apprec ../env/env_recover.c /^__db_apprec(dbenv, max_lsn, trunclsn, update, flag/ __db_assert ../common/db_err.c /^__db_assert(dbenv, e, file, line)$/ __db_associate ../db/db_am.c /^__db_associate(dbp, txn, sdbp, callback, flags)$/ @@ -2463,45 +2840,17 @@ __db_big_recover ../db/db_rec.c /^__db_big_recover(dbenv, dbtp, lsnp, op, info)$ __db_blockDecrypt ../crypto/rijndael/rijndael-api-fst.c /^__db_blockDecrypt(cipher, key, input, inputLen, ou/ __db_blockEncrypt ../crypto/rijndael/rijndael-api-fst.c /^__db_blockEncrypt(cipher, key, input, inputLen, ou/ __db_bmeta ../db/db_pr.c /^__db_bmeta(dbp, h, flags)$/ -__db_bt_stat ../dbinc/db.in /^struct __db_bt_stat {$/ __db_build_bi ../db/db_upg_opd.c /^__db_build_bi(dbp, fhp, ipage, page, indx, nomemp)/ __db_build_ri ../db/db_upg_opd.c /^__db_build_ri(dbp, fhp, ipage, page, indx, nomemp)/ __db_buildpartial ../db/db_cam.c /^__db_buildpartial(dbp, oldrec, partial, newrec)$/ __db_byteorder ../common/db_byteorder.c /^__db_byteorder(dbenv, lorder)$/ __db_byteswap ../db/db_conv.c /^__db_byteswap(dbenv, dbp, pg, h, pagesize, pgin)$/ -__db_c_cleanup ../db/db_cam.c /^__db_c_cleanup(dbc, dbc_n, failed)$/ -__db_c_close ../db/db_cam.c /^__db_c_close(dbc)$/ -__db_c_close_pp ../db/db_iface.c /^__db_c_close_pp(dbc)$/ -__db_c_count ../db/db_cam.c /^__db_c_count(dbc, recnop)$/ -__db_c_count_pp ../db/db_iface.c /^__db_c_count_pp(dbc, recnop, flags)$/ -__db_c_del ../db/db_cam.c /^__db_c_del(dbc, flags)$/ -__db_c_del_arg ../db/db_iface.c /^__db_c_del_arg(dbc, flags)$/ -__db_c_del_oldskey ../db/db_cam.c /^__db_c_del_oldskey(sdbp, dbc_arg, skey, pkey, oldd/ -__db_c_del_pp ../db/db_iface.c /^__db_c_del_pp(dbc, flags)$/ -__db_c_del_primary ../db/db_cam.c /^__db_c_del_primary(dbc)$/ -__db_c_del_secondary ../db/db_cam.c /^__db_c_del_secondary(dbc)$/ -__db_c_destroy ../db/db_cam.c /^__db_c_destroy(dbc)$/ -__db_c_dup ../db/db_cam.c /^__db_c_dup(dbc_orig, dbcp, flags)$/ -__db_c_dup_pp ../db/db_iface.c /^__db_c_dup_pp(dbc, dbcp, flags)$/ -__db_c_get ../db/db_cam.c /^__db_c_get(dbc_arg, key, data, flags)$/ -__db_c_get_arg ../db/db_iface.c /^__db_c_get_arg(dbc, key, data, flags)$/ -__db_c_get_pp ../db/db_iface.c /^__db_c_get_pp(dbc, key, data, flags)$/ -__db_c_idup ../db/db_cam.c /^__db_c_idup(dbc_orig, dbcp, flags)$/ -__db_c_newopd ../db/db_cam.c /^__db_c_newopd(dbc_parent, root, oldopd, dbcp)$/ -__db_c_pget ../db/db_cam.c /^__db_c_pget(dbc, skey, pkey, data, flags)$/ -__db_c_pget_arg ../db/db_iface.c /^__db_c_pget_arg(dbc, pkey, flags)$/ -__db_c_pget_pp ../db/db_iface.c /^__db_c_pget_pp(dbc, skey, pkey, data, flags)$/ -__db_c_pget_recno ../db/db_cam.c /^__db_c_pget_recno(sdbc, pkey, data, flags)$/ -__db_c_put ../db/db_cam.c /^__db_c_put(dbc_arg, key, data, flags)$/ -__db_c_put_arg ../db/db_iface.c /^__db_c_put_arg(dbc, key, data, flags)$/ -__db_c_put_pp ../db/db_iface.c /^__db_c_put_pp(dbc, key, data, flags)$/ -__db_c_secondary_get_pp ../db/db_cam.c /^__db_c_secondary_get_pp(dbc, skey, data, flags)$/ __db_check_chksum ../hmac/hmac.c /^__db_check_chksum(dbenv, hdr, db_cipher, chksum, d/ __db_check_lsn ../common/db_err.c /^__db_check_lsn(dbenv, lsn, prev)$/ -__db_check_txn ../common/db_err.c /^__db_check_txn(dbp, txn, assoc_lid, read_op)$/ -__db_chk_meta ../db/db_open.c /^__db_chk_meta(dbenv, dbp, meta, do_metachk)$/ +__db_check_skeyset ../db/db_cam.c /^__db_check_skeyset(sdbp, skeyp)$/ +__db_check_txn ../common/db_err.c /^__db_check_txn(dbp, txn, assoc_locker, read_op)$/ +__db_chk_meta ../db/db_open.c /^__db_chk_meta(dbenv, dbp, meta, flags)$/ __db_chksum ../hmac/hmac.c /^__db_chksum(hdr, data, data_len, mac_key, store)$/ -__db_cipher ../dbinc/crypto.h /^struct __db_cipher {$/ __db_cipherInit ../crypto/rijndael/rijndael-api-fst.c /^__db_cipherInit(cipher, mode, IV)$/ __db_cipherUpdateRounds ../crypto/rijndael/rijndael-api-fst.c /^__db_cipherUpdateRounds(cipher, key, input, inputL/ __db_cksum_log ../db/db_auto.c /^__db_cksum_log(dbenv, txnp, ret_lsnp, flags)$/ @@ -2512,9 +2861,9 @@ __db_close ../db/db.c /^__db_close(dbp, txn, flags)$/ __db_close_int ../rpc_server/c/db_server_util.c /^__db_close_int(id, flags)$/ __db_close_pp ../db/db_iface.c /^__db_close_pp(dbp, flags)$/ __db_close_proc ../rpc_server/c/db_server_proc.c /^__db_close_proc(dbpcl_id, flags, replyp)$/ -__db_commit ../dbinc/log.h /^struct __db_commit {$/ -__db_compact ../dbinc/db.in /^struct __db_compact {$/ +__db_coff ../db/db_overflow.c /^__db_coff(dbp, txn, dbt, match, cmpfunc, cmpp)$/ __db_compact_pp ../db/db_iface.c /^__db_compact_pp(dbp, txn, start, stop, c_data, fla/ +__db_create_internal ../db/db_method.c /^__db_create_internal(dbpp, dbenv, flags)$/ __db_create_proc ../rpc_server/c/db_server_proc.c /^__db_create_proc(dbenvcl_id, flags, replyp)$/ __db_ctime ../clib/ctime.c /^__db_ctime(tod, time_buf)$/ __db_curinval ../db/db_iface.c /^__db_curinval(dbenv)$/ @@ -2524,55 +2873,57 @@ __db_cursor_check ../db/db_truncate.c /^__db_cursor_check(dbp)$/ __db_cursor_int ../db/db_am.c /^__db_cursor_int(dbp, txn, dbtype, root, is_opd, lo/ __db_cursor_pp ../db/db_iface.c /^__db_cursor_pp(dbp, txn, dbcp, flags)$/ __db_cursor_proc ../rpc_server/c/db_server_proc.c /^__db_cursor_proc(dbpcl_id, txnpcl_id, flags, reply/ -__db_db_associate_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_associate_4005__SVCSUFFIX__(msg, req)$/ -__db_db_close_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_close_4005__SVCSUFFIX__(msg, req)$/ -__db_db_create_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_create_4005__SVCSUFFIX__(msg, req)$/ -__db_db_cursor_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_cursor_4005__SVCSUFFIX__(msg, req)$/ -__db_db_del_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_del_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_bt_minkey_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_bt_minkey_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_dbname_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_dbname_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_encrypt_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_encrypt_flags_4005__SVCSUFFIX__(msg, r/ -__db_db_get_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_flags_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_h_ffactor_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_h_ffactor_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_h_nelem_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_h_nelem_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_lorder_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_lorder_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_open_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_open_flags_4005__SVCSUFFIX__(msg, req)/ -__db_db_get_pagesize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_pagesize_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_q_extentsize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_q_extentsize_4005__SVCSUFFIX__(msg, re/ -__db_db_get_re_delim_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_delim_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_re_len_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_len_4005__SVCSUFFIX__(msg, req)$/ -__db_db_get_re_pad_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_pad_4005__SVCSUFFIX__(msg, req)$/ -__db_db_join_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_join_4005__SVCSUFFIX__(msg, req)$/ -__db_db_key_range_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_key_range_4005__SVCSUFFIX__(msg, req)$/ -__db_db_open_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_open_4005__SVCSUFFIX__(msg, req)$/ -__db_db_pget_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_pget_4005__SVCSUFFIX__(msg, req)$/ -__db_db_put_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_put_4005__SVCSUFFIX__(msg, req)$/ -__db_db_remove_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_remove_4005__SVCSUFFIX__(msg, req)$/ -__db_db_rename_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_rename_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_bt_minkey_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_bt_minkey_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_encrypt_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_encrypt_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_flags_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_h_ffactor_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_h_ffactor_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_h_nelem_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_h_nelem_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_lorder_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_lorder_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_pagesize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_pagesize_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_q_extentsize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_q_extentsize_4005__SVCSUFFIX__(msg, re/ -__db_db_set_re_delim_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_delim_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_re_len_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_len_4005__SVCSUFFIX__(msg, req)$/ -__db_db_set_re_pad_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_pad_4005__SVCSUFFIX__(msg, req)$/ -__db_db_stat_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_stat_4005__SVCSUFFIX__(msg, req)$/ -__db_db_sync_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_sync_4005__SVCSUFFIX__(msg, req)$/ -__db_db_truncate_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_truncate_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_close_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_close_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_count_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_count_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_del_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_del_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_dup_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_dup_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_get_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_get_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_pget_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_pget_4005__SVCSUFFIX__(msg, req)$/ -__db_dbc_c_put_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_c_put_4005__SVCSUFFIX__(msg, req)$/ -__db_dbenv_mpool ../db/db.c /^__db_dbenv_mpool(dbp, fname, flags)$/ -__db_dbenv_setup ../db/db.c /^__db_dbenv_setup(dbp, txn, fname, dname, id, flags/ +__db_db_associate_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_associate_4006__SVCSUFFIX__(msg, req)$/ +__db_db_close_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_close_4006__SVCSUFFIX__(msg, req)$/ +__db_db_create_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_create_4006__SVCSUFFIX__(msg, req)$/ +__db_db_cursor_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_cursor_4006__SVCSUFFIX__(msg, req)$/ +__db_db_del_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_del_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_bt_minkey_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_bt_minkey_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_dbname_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_dbname_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_encrypt_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_encrypt_flags_4006__SVCSUFFIX__(msg, r/ +__db_db_get_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_flags_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_h_ffactor_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_h_ffactor_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_h_nelem_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_h_nelem_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_lorder_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_lorder_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_open_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_open_flags_4006__SVCSUFFIX__(msg, req)/ +__db_db_get_pagesize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_pagesize_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_priority_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_priority_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_q_extentsize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_q_extentsize_4006__SVCSUFFIX__(msg, re/ +__db_db_get_re_delim_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_delim_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_re_len_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_len_4006__SVCSUFFIX__(msg, req)$/ +__db_db_get_re_pad_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_get_re_pad_4006__SVCSUFFIX__(msg, req)$/ +__db_db_join_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_join_4006__SVCSUFFIX__(msg, req)$/ +__db_db_key_range_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_key_range_4006__SVCSUFFIX__(msg, req)$/ +__db_db_open_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_open_4006__SVCSUFFIX__(msg, req)$/ +__db_db_pget_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_pget_4006__SVCSUFFIX__(msg, req)$/ +__db_db_put_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_put_4006__SVCSUFFIX__(msg, req)$/ +__db_db_remove_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_remove_4006__SVCSUFFIX__(msg, req)$/ +__db_db_rename_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_rename_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_bt_minkey_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_bt_minkey_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_encrypt_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_encrypt_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_flags_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_h_ffactor_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_h_ffactor_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_h_nelem_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_h_nelem_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_lorder_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_lorder_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_pagesize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_pagesize_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_priority_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_priority_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_q_extentsize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_q_extentsize_4006__SVCSUFFIX__(msg, re/ +__db_db_set_re_delim_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_delim_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_re_len_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_len_4006__SVCSUFFIX__(msg, req)$/ +__db_db_set_re_pad_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_set_re_pad_4006__SVCSUFFIX__(msg, req)$/ +__db_db_stat_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_stat_4006__SVCSUFFIX__(msg, req)$/ +__db_db_sync_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_sync_4006__SVCSUFFIX__(msg, req)$/ +__db_db_truncate_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_db_truncate_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_close_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_close_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_count_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_count_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_del_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_del_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_dup_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_dup_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_get_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_get_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_get_priority_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_get_priority_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_pget_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_pget_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_put_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_put_4006__SVCSUFFIX__(msg, req)$/ +__db_dbc_set_priority_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_dbc_set_priority_4006__SVCSUFFIX__(msg, req)$/ __db_dbm_close ../dbm/dbm.c /^__db_dbm_close()$/ __db_dbm_delete ../dbm/dbm.c /^__db_dbm_delete(key)$/ __db_dbm_fetch ../dbm/dbm.c /^__db_dbm_fetch(key)$/ @@ -2580,21 +2931,18 @@ __db_dbm_firstkey ../dbm/dbm.c /^__db_dbm_firstkey()$/ __db_dbm_init ../dbm/dbm.c /^__db_dbm_init(file)$/ __db_dbm_nextkey ../dbm/dbm.c /^__db_dbm_nextkey(key)$/ __db_dbm_store ../dbm/dbm.c /^__db_dbm_store(key, dat)$/ -__db_dbt ../dbinc/db.in /^struct __db_dbt {$/ __db_dbtxn_remove ../db/db_remove.c /^__db_dbtxn_remove(dbp, txn, name, subdb)$/ __db_dbtype_to_string ../db/db_pr.c /^__db_dbtype_to_string(type)$/ __db_debug_log ../db/db_auto.c /^__db_debug_log(dbenv, txnp, ret_lsnp, flags,$/ __db_debug_print ../db/db_autop.c /^__db_debug_print(dbenv, dbtp, lsnp, notused2, notu/ __db_debug_read ../db/db_auto.c /^__db_debug_read(dbenv, recbuf, argpp)$/ __db_debug_recover ../db/db_rec.c /^__db_debug_recover(dbenv, dbtp, lsnp, op, info)$/ +__db_decrypt_pg ../db/db_conv.c /^__db_decrypt_pg (dbenv, dbp, pagep)$/ __db_del ../db/db_am.c /^__db_del(dbp, txn, key, flags)$/ __db_del_arg ../db/db_iface.c /^__db_del_arg(dbp, key, flags)$/ __db_del_pp ../db/db_iface.c /^__db_del_pp(dbp, txn, key, flags)$/ __db_del_proc ../rpc_server/c/db_server_proc.c /^__db_del_proc(dbpcl_id, txnpcl_id, keydlen, keydof/ __db_derive_mac ../hmac/hmac.c /^__db_derive_mac(passwd, plen, mac_key)$/ -__db_des_destroy ../env/env_region.c /^__db_des_destroy(dbenv, rp)$/ -__db_des_get ../env/env_region.c /^__db_des_get(dbenv, env_infop, infop, rpp)$/ -__db_difftime ../common/db_clock.c /^__db_difftime(ssec, esec, susec, eusec, secp, usec/ __db_disassociate ../db/db.c /^__db_disassociate(sdbp)$/ __db_dispatch ../db/db_dispatch.c /^__db_dispatch(dbenv, dtab, dtabsize, db, lsnp, red/ __db_ditem ../db/db_dup.c /^__db_ditem(dbc, pagep, indx, nbytes)$/ @@ -2607,37 +2955,34 @@ __db_dump ../db/db_pr.c /^__db_dump(dbp, subname, callback, handle, pflag, k/ __db_dump_pp ../db/db_pr.c /^__db_dump_pp(dbp, subname, callback, handle, pflag/ __db_dumptree ../db/db_pr.c /^__db_dumptree(dbp, txn, op, name)$/ __db_duperr ../db/db_cam.c /^__db_duperr(dbp, flags)$/ -__db_e_attach ../env/env_region.c /^__db_e_attach(dbenv, init_flagsp)$/ -__db_e_detach ../env/env_region.c /^__db_e_detach(dbenv, destroy)$/ -__db_e_golive ../env/env_region.c /^__db_e_golive(dbenv)$/ -__db_e_remfile ../env/env_region.c /^__db_e_remfile(dbenv)$/ -__db_e_remove ../env/env_region.c /^__db_e_remove(dbenv, flags)$/ -__db_env ../dbinc/db.in /^struct __db_env {$/ -__db_env_cdsgroup_begin_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_cdsgroup_begin_4005__SVCSUFFIX__(msg, req/ -__db_env_close_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_close_4005__SVCSUFFIX__(msg, req)$/ +__db_encrypt_and_checksum_pg ../db/db_conv.c /^__db_encrypt_and_checksum_pg (dbenv, dbp, pagep)$/ +__db_env_cdsgroup_begin_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_cdsgroup_begin_4006__SVCSUFFIX__(msg, req/ +__db_env_close_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_close_4006__SVCSUFFIX__(msg, req)$/ __db_env_config ../env/env_method.c /^__db_env_config(dbenv, i, flags)$/ -__db_env_create_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_create_4005__SVCSUFFIX__(msg, req)$/ -__db_env_dbremove_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_dbremove_4005__SVCSUFFIX__(msg, req)$/ -__db_env_dbrename_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_dbrename_4005__SVCSUFFIX__(msg, req)$/ +__db_env_create_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_create_4006__SVCSUFFIX__(msg, req)$/ +__db_env_dbremove_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_dbremove_4006__SVCSUFFIX__(msg, req)$/ +__db_env_dbrename_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_dbrename_4006__SVCSUFFIX__(msg, req)$/ __db_env_destroy ../env/env_method.c /^__db_env_destroy(dbenv)$/ -__db_env_get_cachesize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_cachesize_4005__SVCSUFFIX__(msg, req)/ -__db_env_get_encrypt_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_encrypt_flags_4005__SVCSUFFIX__(msg, / -__db_env_get_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_flags_4005__SVCSUFFIX__(msg, req)$/ -__db_env_get_home_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_home_4005__SVCSUFFIX__(msg, req)$/ -__db_env_get_open_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_open_flags_4005__SVCSUFFIX__(msg, req/ -__db_env_open_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_open_4005__SVCSUFFIX__(msg, req)$/ -__db_env_remove_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_remove_4005__SVCSUFFIX__(msg, req)$/ -__db_env_set_cachesize_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_cachesize_4005__SVCSUFFIX__(msg, req)/ -__db_env_set_encrypt_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_encrypt_4005__SVCSUFFIX__(msg, req)$/ -__db_env_set_flags_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_flags_4005__SVCSUFFIX__(msg, req)$/ -__db_env_txn_begin_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_txn_begin_4005__SVCSUFFIX__(msg, req)$/ -__db_env_txn_recover_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_txn_recover_4005__SVCSUFFIX__(msg, req)$/ -__db_err ../common/db_err.c /^__db_err(dbenv, error fmt, va_alist)$/ +__db_env_get_cachesize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_cachesize_4006__SVCSUFFIX__(msg, req)/ +__db_env_get_encrypt_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_encrypt_flags_4006__SVCSUFFIX__(msg, / +__db_env_get_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_flags_4006__SVCSUFFIX__(msg, req)$/ +__db_env_get_home_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_home_4006__SVCSUFFIX__(msg, req)$/ +__db_env_get_open_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_get_open_flags_4006__SVCSUFFIX__(msg, req/ +__db_env_mpool ../db/db.c /^__db_env_mpool(dbp, fname, flags)$/ +__db_env_open_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_open_4006__SVCSUFFIX__(msg, req)$/ +__db_env_remove_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_remove_4006__SVCSUFFIX__(msg, req)$/ +__db_env_set_cachesize_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_cachesize_4006__SVCSUFFIX__(msg, req)/ +__db_env_set_encrypt_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_encrypt_4006__SVCSUFFIX__(msg, req)$/ +__db_env_set_flags_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_set_flags_4006__SVCSUFFIX__(msg, req)$/ +__db_env_setup ../db/db.c /^__db_env_setup(dbp, txn, fname, dname, id, flags)$/ +__db_env_txn_begin_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_txn_begin_4006__SVCSUFFIX__(msg, req)$/ +__db_env_txn_recover_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_env_txn_recover_4006__SVCSUFFIX__(msg, req)$/ +__db_err ../common/db_err.c /^__db_err(const DB_ENV *dbenv, int error, const cha/ __db_errcall ../common/db_err.c /^__db_errcall(dbenv, error, error_set, fmt, ap)$/ __db_errfile ../common/db_err.c /^__db_errfile(dbenv, error, error_set, fmt, ap)$/ -__db_errx ../common/db_err.c /^__db_errx(dbenv, fmt, va_alist)$/ +__db_errx ../common/db_err.c /^__db_errx(const DB_ENV *dbenv, const char *fmt, ../ +__db_exists ../db/db_iface.c /^__db_exists(dbp, txn, key, flags)$/ __db_failed ../common/db_err.c /^__db_failed(dbenv, msg, pid, tid)$/ -__db_faultmem ../env/env_region.c /^__db_faultmem(dbenv, addr, size, created)$/ __db_fcchk ../common/db_err.c /^__db_fcchk(dbenv, name, flags, flag1, flag2)$/ __db_fchk ../common/db_err.c /^__db_fchk(dbenv, name, flags, ok_flags)$/ __db_fcntl_mutex_destroy ../mutex/mut_fcntl.c /^__db_fcntl_mutex_destroy(dbenv, mutex)$/ @@ -2649,7 +2994,6 @@ __db_ferr ../common/db_err.c /^__db_ferr(dbenv, name, iscombo)$/ __db_file_extend ../env/env_file.c /^__db_file_extend(dbenv, fhp, size)$/ __db_file_multi_write ../env/env_file.c /^__db_file_multi_write(dbenv, path)$/ __db_file_write ../env/env_file.c /^__db_file_write(dbenv, fhp, mbytes, bytes, pattern/ -__db_filestart ../dbinc/log.h /^struct __db_filestart {$/ __db_fnl ../common/db_err.c /^__db_fnl(dbenv, name)$/ __db_free ../db/db_meta.c /^__db_free(dbc, h)$/ __db_free_truncate ../db/db_meta.c /^__db_free_truncate(dbp, txn, flags, c_data, listp,/ @@ -2679,11 +3023,14 @@ __db_get_lorder ../db/db_method.c /^__db_get_lorder(dbp, db_lorderp)$/ __db_get_lorder_proc ../rpc_server/c/db_server_proc.c /^__db_get_lorder_proc(dbpcl_id, replyp)$/ __db_get_mpf ../db/db_method.c /^__db_get_mpf(dbp)$/ __db_get_msgfile ../db/db_method.c /^__db_get_msgfile(dbp, msgfilep)$/ +__db_get_multiple ../db/db_method.c /^__db_get_multiple(dbp)$/ __db_get_open_flags ../db/db_open.c /^__db_get_open_flags(dbp, flagsp)$/ __db_get_open_flags_proc ../rpc_server/c/db_server_proc.c /^__db_get_open_flags_proc(dbpcl_id, replyp)$/ __db_get_pagesize ../db/db_method.c /^__db_get_pagesize(dbp, db_pagesizep)$/ __db_get_pagesize_proc ../rpc_server/c/db_server_proc.c /^__db_get_pagesize_proc(dbpcl_id, replyp)$/ __db_get_pp ../db/db_iface.c /^__db_get_pp(dbp, txn, key, data, flags)$/ +__db_get_priority ../db/db_method.c /^__db_get_priority(dbp, priority)$/ +__db_get_priority_proc ../rpc_server/c/db_server_proc.c /^__db_get_priority_proc(dbpcl_id, replyp)$/ __db_get_proc ../rpc_server/c/db_server_proc.c /^__db_get_proc(dbpcl_id, txnpcl_id, keydlen, keydof/ __db_get_q_extentsize_proc ../rpc_server/c/db_server_proc.c /^__db_get_q_extentsize_proc(dbpcl_id, replyp)$/ __db_get_re_delim_proc ../rpc_server/c/db_server_proc.c /^__db_get_re_delim_proc(dbpcl_id, replyp)$/ @@ -2697,8 +3044,7 @@ __db_getlong ../common/db_getlong.c /^__db_getlong(dbenv, progname, p, min, max, __db_getulong ../common/db_getlong.c /^__db_getulong(dbenv, progname, p, min, max, storep/ __db_goff ../db/db_overflow.c /^__db_goff(dbp, txn, dbt, tlen, pgno, bpp, bpsz)$/ __db_guesspgsize ../db/db_vrfy.c /^__db_guesspgsize(dbenv, fhp)$/ -__db_h_stat ../dbinc/db.in /^struct __db_h_stat {$/ -__db_hashinit ../env/db_shash.c /^__db_hashinit(begin, nelements)$/ +__db_hashinit ../common/db_shash.c /^__db_hashinit(begin, nelements)$/ __db_hcreate ../hsearch/hsearch.c /^__db_hcreate(nel)$/ __db_hdestroy ../hsearch/hsearch.c /^__db_hdestroy()$/ __db_hmac ../hmac/hmac.c /^__db_hmac(k, data, data_len, mac)$/ @@ -2706,9 +3052,8 @@ __db_hmeta ../db/db_pr.c /^__db_hmeta(dbp, h, flags)$/ __db_hsearch ../hsearch/hsearch.c /^__db_hsearch(item, action)$/ __db_idcmp ../common/db_idspace.c /^__db_idcmp(a, b)$/ __db_idspace ../common/db_idspace.c /^__db_idspace(inuse, n, minp, maxp)$/ -__db_ilock ../dbinc/db.in /^struct __db_ilock {$/ -__db_infohead ../dbinc/tcl_db.h /^#define __db_infohead __dbtcl_global.g_infohead$/ -__db_init ../db/db_method.c /^__db_init(dbenv, dbp, flags)$/ +__db_infohead ../dbinc/tcl_db.h 130 +__db_init ../db/db_method.c /^__db_init(dbp, flags)$/ __db_init_meta ../db/db_meta.c /^__db_init_meta(dbp, p, pgno, pgtype)$/ __db_init_print ../db/db_autop.c /^__db_init_print(dbenv, dtabp, dtabsizep)$/ __db_init_recover ../db/db_auto.c /^__db_init_recover(dbenv, dtabp, dtabsizep)$/ @@ -2727,7 +3072,7 @@ __db_join_get ../db/db_join.c /^__db_join_get(dbc, key_arg, data_arg, flags)$/ __db_join_get_pp ../db/db_join.c /^__db_join_get_pp(dbc, key, data, flags)$/ __db_join_getnext ../db/db_join.c /^__db_join_getnext(dbc, key, data, exhausted, opmod/ __db_join_pp ../db/db_iface.c /^__db_join_pp(primary, curslist, dbcp, flags)$/ -__db_join_primget ../db/db_join.c /^__db_join_primget(dbp, txn, lockerid, key, data, f/ +__db_join_primget ../db/db_join.c /^__db_join_primget(dbp, txn, locker, key, data, fla/ __db_join_proc ../rpc_server/c/db_server_proc.c /^__db_join_proc(dbpcl_id, curs, curslen, flags, rep/ __db_join_put ../db/db_join.c /^__db_join_put(dbc, key, data, flags)$/ __db_key_range_pp ../db/db_iface.c /^__db_key_range_pp(dbp, txn, key, kr, flags)$/ @@ -2738,25 +3083,15 @@ __db_limbo_bucket ../db/db_dispatch.c /^__db_limbo_bucket(dbenv, txn, elp, state __db_limbo_fix ../db/db_dispatch.c /^__db_limbo_fix(dbp, ctxn, elp, lastp, meta, state)/ __db_limbo_move ../db/db_dispatch.c /^__db_limbo_move(dbenv, ptxn, txn, elp)$/ __db_limbo_prepare ../db/db_dispatch.c /^__db_limbo_prepare(dbp, txn, elp)$/ -__db_lk_conflicts ../libdb_java/db_java_wrap.c /^struct __db_lk_conflicts {$/ __db_loadme ../db/db_pr.c /^__db_loadme()$/ -__db_lock ../dbinc/lock.h /^struct __db_lock {$/ __db_lock_move ../db/db_dispatch.c /^__db_lock_move(dbenv, fileid, pgno, mode, ptxn, tx/ -__db_lock_stat ../dbinc/db.in /^struct __db_lock_stat {$/ -__db_lock_u ../dbinc/db.in /^struct __db_lock_u {$/ __db_lockmode_to_string ../db/db_pr.c /^__db_lockmode_to_string(mode)$/ -__db_lockreq ../dbinc/db.in /^struct __db_lockreq {$/ -__db_locktab ../dbinc/lock.h /^struct __db_locktab {$/ -__db_log ../dbinc/log.h /^struct __db_log {$/ __db_log2 ../common/db_log2.c /^__db_log2(num)$/ __db_log_corrupt ../env/env_recover.c /^__db_log_corrupt(dbenv, lsnp)$/ -__db_log_cursor ../dbinc/db.in /^struct __db_log_cursor {$/ __db_log_page ../db/db.c /^__db_log_page(dbp, txn, lsn, pgno, page)$/ -__db_log_stat ../dbinc/db.in /^struct __db_log_stat {$/ __db_lprint ../db/db_meta.c /^__db_lprint(dbc)$/ __db_lput ../db/db_meta.c /^__db_lput(dbc, lockp)$/ __db_lsgenrand ../crypto/mersenne/mt19937db.c /^__db_lsgenrand(seed_array, mt, mtip)$/ -__db_lsn ../dbinc/db.in /^struct __db_lsn {$/ __db_makeKey ../crypto/rijndael/rijndael-api-fst.c /^__db_makeKey(key, direction, keyLen, keyMaterial)$/ __db_makecopy ../db/db.c /^__db_makecopy(dbenv, src, dest)$/ __db_map_flags ../db/db_method.c /^__db_map_flags(dbp, inflagsp, outflagsp)$/ @@ -2766,25 +3101,17 @@ __db_master_open ../db/db.c /^__db_master_open(subdbp, txn, name, flags, mode, d __db_master_update ../db/db.c /^__db_master_update(mdbp, sdbp, txn, subdb, type, a/ __db_meta ../db/db_pr.c /^__db_meta(dbp, dbmeta, fn, flags)$/ __db_meta2pgset ../db/db_vrfy.c /^__db_meta2pgset(dbp, vdp, pgno, flags, pgset)$/ -__db_meta_setup ../db/db_open.c /^__db_meta_setup(dbenv, dbp, name, meta, oflags, do/ +__db_meta_setup ../db/db_open.c /^__db_meta_setup(dbenv, dbp, name, meta, oflags, fl/ __db_metaswap ../db/db_conv.c /^__db_metaswap(pg)$/ __db_mi_env ../env/env_method.c /^__db_mi_env(dbenv, name)$/ __db_mi_open ../env/env_method.c /^__db_mi_open(dbenv, name, after)$/ __db_mkpath ../common/mkpath.c /^__db_mkpath(dbenv, name)$/ __db_moff ../db/db_overflow.c /^__db_moff(dbp, txn, dbt, pgno, tlen, cmpfunc, cmpp/ -__db_mpool ../dbinc/mp.h /^struct __db_mpool {$/ -__db_mpool_fstat ../dbinc/db.in /^struct __db_mpool_fstat {$/ -__db_mpool_hash ../dbinc/mp.h /^struct __db_mpool_hash {$/ -__db_mpool_stat ../dbinc/db.in /^struct __db_mpool_stat {$/ -__db_mpoolfile ../dbinc/db.in /^struct __db_mpoolfile {$/ -__db_mpreg ../dbinc/mp.h /^struct __db_mpreg {$/ -__db_msg ../common/db_err.c /^__db_msg(dbenv, fmt, va_alist)$/ -__db_msgadd ../common/db_err.c /^__db_msgadd(dbenv, mbp, fmt, va_alist)$/ +__db_msg ../common/db_err.c /^__db_msg(const DB_ENV *dbenv, const char *fmt, .../ +__db_msgadd ../common/db_err.c /^__db_msgadd(DB_ENV *dbenv, DB_MSGBUF *mbp, const c/ +__db_msgadd_ap ../common/db_err.c /^__db_msgadd_ap(dbenv, mbp, fmt, ap)$/ __db_msgcall ../common/db_err.c /^__db_msgcall(dbenv, fmt, ap)$/ __db_msgfile ../common/db_err.c /^__db_msgfile(dbenv, fmt, ap)$/ -__db_mutex_stat ../dbinc/db.in /^struct __db_mutex_stat {$/ -__db_mutex_t ../dbinc/mutex_int.h /^struct __db_mutex_t { \/* Mutex. *\/$/ -__db_mutexmgr ../dbinc/mutex_int.h /^struct __db_mutexmgr {$/ __db_ndbm_clearerr ../dbm/dbm.c /^__db_ndbm_clearerr(dbm)$/ __db_ndbm_close ../dbm/dbm.c /^__db_ndbm_close(dbm)$/ __db_ndbm_delete ../dbm/dbm.c /^__db_ndbm_delete(dbm, key)$/ @@ -2804,7 +3131,6 @@ __db_noop_log ../db/db_auto.c /^__db_noop_log(dbp, txnp, ret_lsnp, flags, pgno, __db_noop_print ../db/db_autop.c /^__db_noop_print(dbenv, dbtp, lsnp, notused2, notus/ __db_noop_read ../db/db_auto.c /^__db_noop_read(dbenv, recbuf, argpp)$/ __db_noop_recover ../db/db_rec.c /^__db_noop_recover(dbenv, dbtp, lsnp, op, info)$/ -__db_norepmgr ../env/env_method.c /^__db_norepmgr(dbenv)$/ __db_not_txn_env ../common/db_err.c /^__db_not_txn_env(dbenv)$/ __db_oflags ../os/os_oflags.c /^__db_oflags(oflags)$/ __db_omode ../os/os_oflags.c /^__db_omode(perm)$/ @@ -2812,7 +3138,6 @@ __db_open ../db/db_open.c /^__db_open(dbp, txn, fname, dname, type, flags, mod/ __db_open_arg ../db/db_iface.c /^__db_open_arg(dbp, txn, fname, dname, type, flags)/ __db_open_pp ../db/db_iface.c /^__db_open_pp(dbp, txn, fname, dname, type, flags, / __db_open_proc ../rpc_server/c/db_server_proc.c /^__db_open_proc(dbpcl_id, txnpcl_id, name, subdb, t/ -__db_out_stream ../libdb_java/db_java_wrap.c /^struct __db_out_stream {$/ __db_ovref ../db/db_overflow.c /^__db_ovref(dbc, pgno)$/ __db_ovref_log ../db/db_auto.c /^__db_ovref_log(dbp, txnp, ret_lsnp, flags, pgno, a/ __db_ovref_print ../db/db_autop.c /^__db_ovref_print(dbenv, dbtp, lsnp, notused2, notu/ @@ -2824,7 +3149,6 @@ __db_page_pass ../db/db_upg.c /^__db_page_pass(dbp, real_name, flags, fl, fhp)$/ __db_pagetype_to_string ../db/db_pr.c /^__db_pagetype_to_string(type)$/ __db_panic ../common/db_err.c /^__db_panic(dbenv, errval)$/ __db_panic_msg ../common/db_err.c /^__db_panic_msg(dbenv)$/ -__db_panic_set ../common/db_err.c /^__db_panic_set(dbenv, on)$/ __db_partsize ../db/db_cam.c /^__db_partsize(nbytes, data)$/ __db_pg_alloc_42_print ../db/db_autop.c /^__db_pg_alloc_42_print(dbenv, dbtp, lsnp, notused2/ __db_pg_alloc_42_read ../db/db_auto.c /^__db_pg_alloc_42_read(dbenv, recbuf, argpp)$/ @@ -2865,7 +3189,7 @@ __db_pg_sort_log ../db/db_auto.c /^__db_pg_sort_log(dbp, txnp, ret_lsnp, flags, __db_pg_sort_print ../db/db_autop.c /^__db_pg_sort_print(dbenv, dbtp, lsnp, notused2, no/ __db_pg_sort_read ../db/db_auto.c /^__db_pg_sort_read(dbenv, recbuf, argpp)$/ __db_pg_sort_recover ../db/db_rec.c /^__db_pg_sort_recover(dbenv, dbtp, lsnp, op, info)$/ -__db_pg_truncate ../db/db_meta.c /^__db_pg_truncate(mpf, txn, list, c_data, nelemp, l/ +__db_pg_truncate ../db/db_meta.c /^__db_pg_truncate(dbp, txn, list, c_data, nelemp, l/ __db_pgerr ../common/db_err.c /^__db_pgerr(dbp, pgno, errval)$/ __db_pget ../db/db_iface.c /^__db_pget(dbp, txn, skey, pkey, data, flags)$/ __db_pget_arg ../db/db_iface.c /^__db_pget_arg(dbp, pkey, flags)$/ @@ -2881,16 +3205,15 @@ __db_pr ../db/db_pr.c /^__db_pr(dbenv, mbp, p, len)$/ __db_pr_callback ../db/db_pr.c /^__db_pr_callback(handle, str_arg)$/ __db_prdb ../db/db_pr.c /^__db_prdb(dbp, flags)$/ __db_prdbt ../db/db_pr.c /^__db_prdbt(dbtp, checkprint, prefix, handle, callb/ -__db_preplist ../dbinc/db.in /^struct __db_preplist {$/ __db_prflags ../db/db_pr.c /^__db_prflags(dbenv, mbp, flags, fn, prefix, suffix/ __db_prfooter ../db/db_pr.c /^__db_prfooter(handle, callback)$/ __db_prheader ../db/db_pr.c /^__db_prheader(dbp, subname, pflag, keyflag, handle/ __db_print_all ../db/db_stati.c /^__db_print_all(dbp, flags)$/ -__db_print_citem ../db/db_stati.c /^int __db_print_citem(dbc)$/ +__db_print_citem ../db/db_stati.c /^__db_print_citem(dbc)$/ __db_print_cursor ../db/db_stati.c /^__db_print_cursor(dbp)$/ __db_print_fh ../env/env_stat.c /^__db_print_fh(dbenv, tag, fh, flags)$/ __db_print_fileid ../env/env_stat.c /^__db_print_fileid(dbenv, id, suffix)$/ -__db_print_reginfo ../env/env_stat.c /^__db_print_reginfo(dbenv, infop, s)$/ +__db_print_reginfo ../env/env_stat.c /^__db_print_reginfo(dbenv, infop, s, flags)$/ __db_print_stats ../db/db_stati.c /^__db_print_stats(dbp, flags)$/ __db_prnpage ../db/db_pr.c /^__db_prnpage(dbp, txn, pgno)$/ __db_proff ../db/db_pr.c /^__db_proff(dbenv, mbp, vp)$/ @@ -2905,16 +3228,12 @@ __db_put ../db/db_am.c /^__db_put(dbp, txn, key, data, flags)$/ __db_put_arg ../db/db_iface.c /^__db_put_arg(dbp, key, data, flags)$/ __db_put_pp ../db/db_iface.c /^__db_put_pp(dbp, txn, key, data, flags)$/ __db_put_proc ../rpc_server/c/db_server_proc.c /^__db_put_proc(dbpcl_id, txnpcl_id, keydlen, keydof/ -__db_qam_stat ../dbinc/db.in /^struct __db_qam_stat {$/ __db_qmeta ../db/db_pr.c /^__db_qmeta(dbp, h, flags)$/ -__db_r_attach ../env/env_region.c /^__db_r_attach(dbenv, infop, size)$/ -__db_r_detach ../env/env_region.c /^__db_r_detach(dbenv, infop, destroy)$/ __db_rdonly ../common/db_err.c /^__db_rdonly(dbenv, name)$/ __db_rec_repl ../common/db_err.c /^__db_rec_repl(dbenv, data_size, data_dlen)$/ __db_rec_toobig ../common/db_err.c /^__db_rec_toobig(dbenv, data_len, fixed_rec_len)$/ __db_reclaim_callback ../db/db_reclaim.c /^__db_reclaim_callback(dbp, p, cookie, putp)$/ __db_refresh ../db/db.c /^__db_refresh(dbp, txn, flags, deferred_closep, reu/ -__db_reginfo_t ../dbinc/region.h /^struct __db_reginfo_t { \/* __db_r_attach IN para/ __db_relink_42_print ../db/db_autop.c /^__db_relink_42_print(dbenv, dbtp, lsnp, notused2, / __db_relink_42_read ../db/db_auto.c /^__db_relink_42_read(dbenv, recbuf, argpp)$/ __db_relink_42_recover ../db/db_rec.c /^__db_relink_42_recover(dbenv, dbtp, lsnp, op, info/ @@ -2926,11 +3245,7 @@ __db_rename ../db/db_rename.c /^__db_rename(dbp, txn, name, subdb, newname)$/ __db_rename_int ../db/db_rename.c /^__db_rename_int(dbp, txn, name, subdb, newname)$/ __db_rename_pp ../db/db_rename.c /^__db_rename_pp(dbp, name, subdb, newname, flags)$/ __db_rename_proc ../rpc_server/c/db_server_proc.c /^__db_rename_proc(dbpcl_id, name, subdb, newname, f/ -__db_rep ../dbinc/rep.h /^struct __db_rep {$/ __db_rep_enter ../rep/rep_util.c /^__db_rep_enter(dbp, checkgen, checklock, return_no/ -__db_rep_stat ../dbinc/db.in /^struct __db_rep_stat {$/ -__db_repmgr_site ../dbinc/db.in /^struct __db_repmgr_site {$/ -__db_repmgr_sites ../libdb_java/db_java_wrap.c /^struct __db_repmgr_sites {$/ __db_ret ../db/db_ret.c /^__db_ret(dbp, txn, h, indx, dbt, memp, memsize)$/ __db_retcopy ../db/db_ret.c /^__db_retcopy(dbenv, dbt, data, len, memp, memsize)/ __db_rijndaelDecrypt ../crypto/rijndael/rijndael-alg-fst.c /^__db_rijndaelDecrypt(rk, Nr, ct, pt)$/ @@ -2942,9 +3257,9 @@ __db_rijndaelKeySetupEnc ../crypto/rijndael/rijndael-alg-fst.c /^__db_rijndaelKe __db_rmid_to_env ../xa/xa_map.c /^__db_rmid_to_env(rmid, dbenvp)$/ __db_rpath ../os/os_rpath.c /^__db_rpath(path)$/ __db_s_count ../db/db_cam.c /^__db_s_count(pdbp)$/ -__db_s_done ../db/db_cam.c /^__db_s_done(sdbp)$/ +__db_s_done ../db/db_cam.c /^__db_s_done(sdbp, txn)$/ __db_s_first ../db/db_cam.c /^__db_s_first(pdbp, sdbpp)$/ -__db_s_next ../db/db_cam.c /^__db_s_next(sdbpp)$/ +__db_s_next ../db/db_cam.c /^__db_s_next(sdbpp, txn)$/ __db_safe_goff ../db/db_ovfl_vrfy.c /^__db_safe_goff(dbp, vdp, pgno, dbt, buf, flags)$/ __db_salvage ../db/db_vrfy.c /^__db_salvage(dbp, vdp, pgno, h, handle, callback, / __db_salvage_destroy ../db/db_vrfyutil.c /^__db_salvage_destroy(vdp)$/ @@ -2961,9 +3276,6 @@ __db_secondary_close ../db/db_am.c /^__db_secondary_close(sdbp, flags)$/ __db_secondary_close_pp ../db/db_iface.c /^__db_secondary_close_pp(dbp, flags)$/ __db_secondary_corrupt ../db/db_join.c /^__db_secondary_corrupt(dbp)$/ __db_secondary_get ../db/db_am.c /^__db_secondary_get(sdbp, txn, skey, data, flags)$/ -__db_seq_record ../dbinc/db.in /^struct __db_seq_record {$/ -__db_seq_stat ../dbinc/db.in /^struct __db_seq_stat {$/ -__db_sequence ../dbinc/db.in /^struct __db_sequence {$/ __db_set_alloc ../db/db_method.c /^__db_set_alloc(dbp, mal_func, real_func, free_func/ __db_set_append_recno ../db/db_method.c /^__db_set_append_recno(dbp, func)$/ __db_set_bt_minkey_proc ../rpc_server/c/db_server_proc.c /^__db_set_bt_minkey_proc(dbpcl_id, minkey, replyp)$/ @@ -2987,16 +3299,13 @@ __db_set_msgfile ../db/db_method.c /^__db_set_msgfile(dbp, msgfile)$/ __db_set_pagesize ../db/db_method.c /^__db_set_pagesize(dbp, db_pagesize)$/ __db_set_pagesize_proc ../rpc_server/c/db_server_proc.c /^__db_set_pagesize_proc(dbpcl_id, pagesize, replyp)/ __db_set_paniccall ../db/db_method.c /^__db_set_paniccall(dbp, paniccall)$/ +__db_set_priority ../db/db_method.c /^__db_set_priority(dbp, priority)$/ +__db_set_priority_proc ../rpc_server/c/db_server_proc.c /^__db_set_priority_proc(dbpcl_id, priority, replyp)/ __db_set_q_extentsize_proc ../rpc_server/c/db_server_proc.c /^__db_set_q_extentsize_proc(dbpcl_id, extentsize, r/ __db_set_re_delim_proc ../rpc_server/c/db_server_proc.c /^__db_set_re_delim_proc(dbpcl_id, delim, replyp)$/ __db_set_re_len_proc ../rpc_server/c/db_server_proc.c /^__db_set_re_len_proc(dbpcl_id, len, replyp)$/ __db_set_re_pad_proc ../rpc_server/c/db_server_proc.c /^__db_set_re_pad_proc(dbpcl_id, pad, replyp)$/ __db_sgenrand ../crypto/mersenne/mt19937db.c /^__db_sgenrand(seed, mt, mtip)$/ -__db_shalloc ../env/db_salloc.c /^__db_shalloc(infop, len, align, retp)$/ -__db_shalloc_free ../env/db_salloc.c /^__db_shalloc_free(infop, ptr)$/ -__db_shalloc_init ../env/db_salloc.c /^__db_shalloc_init(infop, size)$/ -__db_shalloc_size ../env/db_salloc.c /^__db_shalloc_size(len, align)$/ -__db_shalloc_sizeof ../env/db_salloc.c /^__db_shalloc_sizeof(ptr)$/ __db_space_err ../common/db_err.c /^__db_space_err(dbp)$/ __db_stat ../db/db_stati.c /^__db_stat(dbp, txn, spp, flags)$/ __db_stat_arg ../db/db_stati.c /^__db_stat_arg(dbp, flags)$/ @@ -3011,34 +3320,28 @@ __db_subdb_rename ../db/db_rename.c /^__db_subdb_rename(dbp, txn, name, subdb, n __db_sync ../db/db_am.c /^__db_sync(dbp)$/ __db_sync_pp ../db/db_iface.c /^__db_sync_pp(dbp, flags)$/ __db_sync_proc ../rpc_server/c/db_server_proc.c /^__db_sync_proc(dbpcl_id, flags, replyp)$/ -__db_syserr ../common/db_err.c /^__db_syserr(dbenv, error fmt, va_alist)$/ -__db_tablesize ../env/db_shash.c /^__db_tablesize(n_buckets)$/ +__db_syserr ../common/db_err.c /^__db_syserr(const DB_ENV *dbenv, int error, const / +__db_tablesize ../common/db_shash.c /^__db_tablesize(n_buckets)$/ __db_tas_mutex_destroy ../mutex/mut_tas.c /^__db_tas_mutex_destroy(dbenv, mutex)$/ __db_tas_mutex_init ../mutex/mut_tas.c /^__db_tas_mutex_init(dbenv, mutex, flags)$/ __db_tas_mutex_lock ../mutex/mut_tas.c /^__db_tas_mutex_lock(dbenv, mutex)$/ __db_tas_mutex_unlock ../mutex/mut_tas.c /^__db_tas_mutex_unlock(dbenv, mutex)$/ __db_testcopy ../db/db.c /^__db_testcopy(dbenv, dbp, name)$/ __db_testdocopy ../db/db.c /^__db_testdocopy(dbenv, name)$/ -__db_threadid ../env/env_failchk.c /^struct __db_threadid {$/ -__db_tmp_open ../env/env_open.c /^__db_tmp_open(dbenv, tmp_oflags, path, fhpp)$/ +__db_tmp_open ../env/env_name.c /^__db_tmp_open(dbenv, tmp_oflags, path, fhpp)$/ __db_traverse_big ../db/db_reclaim.c /^__db_traverse_big(dbp, pgno, txn, callback, cookie/ __db_truncate ../db/db_truncate.c /^__db_truncate(dbp, txn, countp)$/ __db_truncate_callback ../db/db_reclaim.c /^__db_truncate_callback(dbp, p, cookie, putp)$/ __db_truncate_freelist ../db/db_meta.c /^__db_truncate_freelist(dbc, meta, h, list, start, / __db_truncate_pp ../db/db_truncate.c /^__db_truncate_pp(dbp, txn, countp, flags)$/ __db_truncate_proc ../rpc_server/c/db_server_proc.c /^__db_truncate_proc(dbpcl_id, txnpcl_id, flags, rep/ -__db_txn ../dbinc/db.in /^struct __db_txn {$/ -__db_txn_abort_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_abort_4005__SVCSUFFIX__(msg, req)$/ -__db_txn_active ../dbinc/db.in /^struct __db_txn_active {$/ +__db_txn_abort_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_abort_4006__SVCSUFFIX__(msg, req)$/ __db_txn_auto_init ../db/db_iface.c /^__db_txn_auto_init(dbenv, txnidp)$/ __db_txn_auto_resolve ../db/db_iface.c /^__db_txn_auto_resolve(dbenv, txn, nosync, ret)$/ -__db_txn_commit_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_commit_4005__SVCSUFFIX__(msg, req)$/ -__db_txn_deadlock_err ../common/db_err.c /^__db_txn_deadlock_err(dbenv)$/ -__db_txn_discard_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_discard_4005__SVCSUFFIX__(msg, req)$/ -__db_txn_prepare_4005__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_prepare_4005__SVCSUFFIX__(msg, req)$/ -__db_txn_stat ../dbinc/db.in /^struct __db_txn_stat {$/ -__db_txnhead ../dbinc/db_dispatch.h /^struct __db_txnhead {$/ -__db_txnlist ../dbinc/db_dispatch.h /^struct __db_txnlist {$/ +__db_txn_commit_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_commit_4006__SVCSUFFIX__(msg, req)$/ +__db_txn_deadlock_err ../common/db_err.c /^__db_txn_deadlock_err(dbenv, txn)$/ +__db_txn_discard_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_discard_4006__SVCSUFFIX__(msg, req)$/ +__db_txn_prepare_4006__SVCSUFFIX__ ../rpc_server/c/gen_db_server.c /^__db_txn_prepare_4006__SVCSUFFIX__(msg, req)$/ __db_txnlist_add ../db/db_dispatch.c /^__db_txnlist_add(dbenv, hp, txnid, status, lsn)$/ __db_txnlist_ckp ../db/db_dispatch.c /^__db_txnlist_ckp(dbenv, hp, ckp_lsn)$/ __db_txnlist_end ../db/db_dispatch.c /^__db_txnlist_end(dbenv, hp)$/ @@ -3053,8 +3356,6 @@ __db_txnlist_pgnoadd ../db/db_dispatch.c /^__db_txnlist_pgnoadd(dbenv, hp, filei __db_txnlist_print ../db/db_dispatch.c /^__db_txnlist_print(hp)$/ __db_txnlist_remove ../db/db_dispatch.c /^__db_txnlist_remove(dbenv, hp, txnid)$/ __db_txnlist_update ../db/db_dispatch.c /^__db_txnlist_update(dbenv, hp, txnid, status, lsn,/ -__db_txnmgr ../dbinc/txn.h /^struct __db_txnmgr {$/ -__db_txnregion ../dbinc/txn.h /^struct __db_txnregion {$/ __db_unknown_error ../common/db_err.c /^__db_unknown_error(error)$/ __db_unknown_flag ../common/db_err.c /^__db_unknown_flag(dbenv, routine, flag)$/ __db_unknown_path ../common/db_err.c /^__db_unknown_path(dbenv, routine)$/ @@ -3122,17 +3423,46 @@ __db_xa_recover ../xa/xa.c /^__db_xa_recover(xids, count, rmid, flags)$/ __db_xa_rollback ../xa/xa.c /^__db_xa_rollback(xid, rmid, arg_flags)$/ __db_xa_start ../xa/xa.c /^__db_xa_start(xid, rmid, arg_flags)$/ __db_xid_to_txn ../xa/xa_map.c /^__db_xid_to_txn(dbenv, xid, offp)$/ -__dbc ../dbinc/db.in /^struct __dbc {$/ -__dbc_c_close_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_close_proc(dbccl_id, replyp)$/ -__dbc_c_count_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_count_proc(dbccl_id, flags, replyp)$/ -__dbc_c_del_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_del_proc(dbccl_id, flags, replyp)$/ -__dbc_c_dup_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_dup_proc(dbccl_id, flags, replyp)$/ -__dbc_c_get_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_get_proc(dbccl_id, keydlen, keydoff, keyul/ -__dbc_c_pget_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_pget_proc(dbccl_id, skeydlen, skeydoff, sk/ -__dbc_c_put_proc ../rpc_server/c/db_server_proc.c /^__dbc_c_put_proc(dbccl_id, keydlen, keydoff, keyul/ +__dbc_cleanup ../db/db_cam.c /^__dbc_cleanup(dbc, dbc_n, failed)$/ +__dbc_close ../db/db_cam.c /^__dbc_close(dbc)$/ __dbc_close_int ../rpc_server/c/db_server_util.c /^__dbc_close_int(dbc_ctp)$/ -__dbc_internal ../dbinc/db_int.in /^struct __dbc_internal {$/ +__dbc_close_pp ../db/db_iface.c /^__dbc_close_pp(dbc)$/ +__dbc_close_proc ../rpc_server/c/db_server_proc.c /^__dbc_close_proc(dbccl_id, replyp)$/ +__dbc_count ../db/db_cam.c /^__dbc_count(dbc, recnop)$/ +__dbc_count_pp ../db/db_iface.c /^__dbc_count_pp(dbc, recnop, flags)$/ +__dbc_count_proc ../rpc_server/c/db_server_proc.c /^__dbc_count_proc(dbccl_id, flags, replyp)$/ +__dbc_del ../db/db_cam.c /^__dbc_del(dbc, flags)$/ +__dbc_del_arg ../db/db_iface.c /^__dbc_del_arg(dbc, flags)$/ +__dbc_del_oldskey ../db/db_cam.c /^__dbc_del_oldskey(sdbp, dbc_arg, skey, pkey, oldda/ +__dbc_del_pp ../db/db_iface.c /^__dbc_del_pp(dbc, flags)$/ +__dbc_del_primary ../db/db_cam.c /^__dbc_del_primary(dbc)$/ +__dbc_del_proc ../rpc_server/c/db_server_proc.c /^__dbc_del_proc(dbccl_id, flags, replyp)$/ +__dbc_del_secondary ../db/db_cam.c /^__dbc_del_secondary(dbc)$/ +__dbc_destroy ../db/db_cam.c /^__dbc_destroy(dbc)$/ +__dbc_dup ../db/db_cam.c /^__dbc_dup(dbc_orig, dbcp, flags)$/ +__dbc_dup_pp ../db/db_iface.c /^__dbc_dup_pp(dbc, dbcp, flags)$/ +__dbc_dup_proc ../rpc_server/c/db_server_proc.c /^__dbc_dup_proc(dbccl_id, flags, replyp)$/ +__dbc_get ../db/db_cam.c /^__dbc_get(dbc_arg, key, data, flags)$/ +__dbc_get_arg ../db/db_iface.c /^__dbc_get_arg(dbc, key, data, flags)$/ +__dbc_get_pp ../db/db_iface.c /^__dbc_get_pp(dbc, key, data, flags)$/ +__dbc_get_priority ../db/db_am.c /^__dbc_get_priority(dbc, priority)$/ +__dbc_get_priority_proc ../rpc_server/c/db_server_proc.c /^__dbc_get_priority_proc(dbccl_id, replyp)$/ +__dbc_get_proc ../rpc_server/c/db_server_proc.c /^__dbc_get_proc(dbccl_id, keydlen, keydoff, keyulen/ +__dbc_idup ../db/db_cam.c /^__dbc_idup(dbc_orig, dbcp, flags)$/ __dbc_logging ../common/db_err.c /^__dbc_logging(dbc)$/ +__dbc_newopd ../db/db_cam.c /^__dbc_newopd(dbc_parent, root, oldopd, dbcp)$/ +__dbc_pget ../db/db_cam.c /^__dbc_pget(dbc, skey, pkey, data, flags)$/ +__dbc_pget_arg ../db/db_iface.c /^__dbc_pget_arg(dbc, pkey, flags)$/ +__dbc_pget_pp ../db/db_iface.c /^__dbc_pget_pp(dbc, skey, pkey, data, flags)$/ +__dbc_pget_proc ../rpc_server/c/db_server_proc.c /^__dbc_pget_proc(dbccl_id, skeydlen, skeydoff, skey/ +__dbc_pget_recno ../db/db_cam.c /^__dbc_pget_recno(sdbc, pkey, data, flags)$/ +__dbc_put ../db/db_cam.c /^__dbc_put(dbc_arg, key, data, flags)$/ +__dbc_put_arg ../db/db_iface.c /^__dbc_put_arg(dbc, key, data, flags)$/ +__dbc_put_pp ../db/db_iface.c /^__dbc_put_pp(dbc, key, data, flags)$/ +__dbc_put_proc ../rpc_server/c/db_server_proc.c /^__dbc_put_proc(dbccl_id, keydlen, keydoff, keyulen/ +__dbc_secondary_get_pp ../db/db_cam.c /^__dbc_secondary_get_pp(dbc, skey, data, flags)$/ +__dbc_set_priority ../db/db_am.c /^__dbc_set_priority(dbc, priority)$/ +__dbc_set_priority_proc ../rpc_server/c/db_server_proc.c /^__dbc_set_priority_proc(dbccl_id, priority, replyp/ __dbcl_c_destroy ../rpc_client/client.c /^__dbcl_c_destroy(dbc)$/ __dbcl_c_refresh ../rpc_client/client.c /^__dbcl_c_refresh(dbc)$/ __dbcl_c_setup ../rpc_client/client.c /^__dbcl_c_setup(cl_id, dbp, dbcp)$/ @@ -3154,6 +3484,7 @@ __dbcl_db_get_h_nelem ../rpc_client/gen_client.c /^__dbcl_db_get_h_nelem(dbp, ne __dbcl_db_get_lorder ../rpc_client/gen_client.c /^__dbcl_db_get_lorder(dbp, lorderp)$/ __dbcl_db_get_open_flags ../rpc_client/gen_client.c /^__dbcl_db_get_open_flags(dbp, flagsp)$/ __dbcl_db_get_pagesize ../rpc_client/gen_client.c /^__dbcl_db_get_pagesize(dbp, pagesizep)$/ +__dbcl_db_get_priority ../rpc_client/gen_client.c /^__dbcl_db_get_priority(dbp, priorityp)$/ __dbcl_db_get_q_extentsize ../rpc_client/gen_client.c /^__dbcl_db_get_q_extentsize(dbp, extentsizep)$/ __dbcl_db_get_re_delim ../rpc_client/gen_client.c /^__dbcl_db_get_re_delim(dbp, delimp)$/ __dbcl_db_get_re_len ../rpc_client/gen_client.c /^__dbcl_db_get_re_len(dbp, lenp)$/ @@ -3181,6 +3512,7 @@ __dbcl_db_set_h_ffactor ../rpc_client/gen_client.c /^__dbcl_db_set_h_ffactor(dbp __dbcl_db_set_h_nelem ../rpc_client/gen_client.c /^__dbcl_db_set_h_nelem(dbp, nelem)$/ __dbcl_db_set_lorder ../rpc_client/gen_client.c /^__dbcl_db_set_lorder(dbp, lorder)$/ __dbcl_db_set_pagesize ../rpc_client/gen_client.c /^__dbcl_db_set_pagesize(dbp, pagesize)$/ +__dbcl_db_set_priority ../rpc_client/gen_client.c /^__dbcl_db_set_priority(dbp, priority)$/ __dbcl_db_set_q_extentsize ../rpc_client/gen_client.c /^__dbcl_db_set_q_extentsize(dbp, extentsize)$/ __dbcl_db_set_re_delim ../rpc_client/gen_client.c /^__dbcl_db_set_re_delim(dbp, delim)$/ __dbcl_db_set_re_len ../rpc_client/gen_client.c /^__dbcl_db_set_re_len(dbp, len)$/ @@ -3190,20 +3522,22 @@ __dbcl_db_stat_ret ../rpc_client/gen_client_ret.c /^__dbcl_db_stat_ret(dbp, txnp __dbcl_db_sync ../rpc_client/gen_client.c /^__dbcl_db_sync(dbp, flags)$/ __dbcl_db_truncate ../rpc_client/gen_client.c /^__dbcl_db_truncate(dbp, txnp, countp, flags)$/ __dbcl_db_truncate_ret ../rpc_client/gen_client_ret.c /^__dbcl_db_truncate_ret(dbp, txnp, countp, flags, r/ -__dbcl_dbc_c_close ../rpc_client/gen_client.c /^__dbcl_dbc_c_close(dbc)$/ -__dbcl_dbc_c_close_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_close_ret(dbc, replyp)$/ -__dbcl_dbc_c_count ../rpc_client/gen_client.c /^__dbcl_dbc_c_count(dbc, countp, flags)$/ -__dbcl_dbc_c_count_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_count_ret(dbc, countp, flags, replyp)/ -__dbcl_dbc_c_del ../rpc_client/gen_client.c /^__dbcl_dbc_c_del(dbc, flags)$/ -__dbcl_dbc_c_dup ../rpc_client/gen_client.c /^__dbcl_dbc_c_dup(dbc, dbcp, flags)$/ -__dbcl_dbc_c_dup_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_dup_ret(dbc, dbcp, flags, replyp)$/ -__dbcl_dbc_c_get ../rpc_client/gen_client.c /^__dbcl_dbc_c_get(dbc, key, data, flags)$/ -__dbcl_dbc_c_get_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_get_ret(dbc, key, data, flags, replyp/ -__dbcl_dbc_c_pget ../rpc_client/gen_client.c /^__dbcl_dbc_c_pget(dbc, skey, pkey, data, flags)$/ -__dbcl_dbc_c_pget_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_pget_ret(dbc, skey, pkey, data, flags/ -__dbcl_dbc_c_put ../rpc_client/gen_client.c /^__dbcl_dbc_c_put(dbc, key, data, flags)$/ -__dbcl_dbc_c_put_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_c_put_ret(dbc, key, data, flags, replyp/ +__dbcl_dbc_close ../rpc_client/gen_client.c /^__dbcl_dbc_close(dbc)$/ +__dbcl_dbc_close_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_close_ret(dbc, replyp)$/ +__dbcl_dbc_count ../rpc_client/gen_client.c /^__dbcl_dbc_count(dbc, countp, flags)$/ +__dbcl_dbc_count_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_count_ret(dbc, countp, flags, replyp)$/ +__dbcl_dbc_del ../rpc_client/gen_client.c /^__dbcl_dbc_del(dbc, flags)$/ +__dbcl_dbc_dup ../rpc_client/gen_client.c /^__dbcl_dbc_dup(dbc, dbcp, flags)$/ +__dbcl_dbc_dup_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_dup_ret(dbc, dbcp, flags, replyp)$/ +__dbcl_dbc_get ../rpc_client/gen_client.c /^__dbcl_dbc_get(dbc, key, data, flags)$/ +__dbcl_dbc_get_priority ../rpc_client/gen_client.c /^__dbcl_dbc_get_priority(dbc, priorityp)$/ +__dbcl_dbc_get_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_get_ret(dbc, key, data, flags, replyp)$/ __dbcl_dbc_init ../rpc_client/gen_client.c /^__dbcl_dbc_init(dbc)$/ +__dbcl_dbc_pget ../rpc_client/gen_client.c /^__dbcl_dbc_pget(dbc, skey, pkey, data, flags)$/ +__dbcl_dbc_pget_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_pget_ret(dbc, skey, pkey, data, flags, / +__dbcl_dbc_put ../rpc_client/gen_client.c /^__dbcl_dbc_put(dbc, key, data, flags)$/ +__dbcl_dbc_put_ret ../rpc_client/gen_client_ret.c /^__dbcl_dbc_put_ret(dbc, key, data, flags, replyp)$/ +__dbcl_dbc_set_priority ../rpc_client/gen_client.c /^__dbcl_dbc_set_priority(dbc, priority)$/ __dbcl_dbclose_common ../rpc_client/client.c /^__dbcl_dbclose_common(dbp)$/ __dbcl_dbenv_illegal ../rpc_client/gen_client.c /^__dbcl_dbenv_illegal(dbenv)$/ __dbcl_dbenv_init ../rpc_client/gen_client.c /^__dbcl_dbenv_init(dbenv)$/ @@ -3254,8 +3588,9 @@ __dbclear_child ../rpc_server/c/db_server_util.c /^__dbclear_child(parent)$/ __dbclear_ctp ../rpc_server/c/db_server_util.c /^__dbclear_ctp(ctp)$/ __dbdel_ctp ../rpc_server/c/db_server_util.c /^__dbdel_ctp(parent)$/ __dbh_am_chk ../db/db_method.c /^__dbh_am_chk(dbp, flags)$/ -__dbh_err ../db/db_method.c /^__dbh_err(dbp, error, fmt, va_alist)$/ -__dbh_errx ../db/db_method.c /^__dbh_errx(dbp, fmt, va_alist)$/ +__dbh_err ../db/db_method.c /^__dbh_err(DB *dbp, int error, const char *fmt, .../ +__dbh_errx ../db/db_method.c /^__dbh_errx(DB *dbp, const char *fmt, ...)$/ +__dbj_am_compare ../libdb_java/db_java_wrap.c /^static int __dbj_am_compare(DB *db, const DBT *dbt/ __dbj_app_dispatch ../libdb_java/db_java_wrap.c /^static int __dbj_app_dispatch(DB_ENV *dbenv,$/ __dbj_append_recno ../libdb_java/db_java_wrap.c /^static int __dbj_append_recno(DB *db, DBT *dbt, db/ __dbj_bt_compare ../libdb_java/db_java_wrap.c /^static int __dbj_bt_compare(DB *db, const DBT *dbt/ @@ -3279,11 +3614,13 @@ __dbj_fill_mpool_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_mpo __dbj_fill_mutex_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_mutex_stat(JNIEnv *jnienv,$/ __dbj_fill_qam_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_qam_stat(JNIEnv *jnienv,$/ __dbj_fill_rep_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_rep_stat(JNIEnv *jnienv,$/ +__dbj_fill_repmgr_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_repmgr_stat(JNIEnv *jnienv,$/ __dbj_fill_seq_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_seq_stat(JNIEnv *jnienv,$/ __dbj_fill_txn_active ../libdb_java/java_stat_auto.c /^static int __dbj_fill_txn_active(JNIEnv *jnienv,$/ __dbj_fill_txn_stat ../libdb_java/java_stat_auto.c /^static int __dbj_fill_txn_stat(JNIEnv *jnienv,$/ __dbj_get_except ../libdb_java/db_java_wrap.c /^static jthrowable __dbj_get_except(JNIEnv *jenv,$/ __dbj_get_jnienv ../libdb_java/db_java_wrap.c /^static JNIEnv *__dbj_get_jnienv(void)$/ +__dbj_h_compare ../libdb_java/db_java_wrap.c /^static int __dbj_h_compare(DB *db, const DBT *dbt1/ __dbj_h_hash ../libdb_java/db_java_wrap.c /^static u_int32_t __dbj_h_hash(DB *db, const void */ __dbj_message ../libdb_java/db_java_wrap.c /^static void __dbj_message(const DB_ENV *dbenv, con/ __dbj_panic ../libdb_java/db_java_wrap.c /^static void __dbj_panic(DB_ENV *dbenv, int err)$/ @@ -3291,14 +3628,14 @@ __dbj_rep_transport ../libdb_java/db_java_wrap.c /^static int __dbj_rep_transpor __dbj_seckey_create ../libdb_java/db_java_wrap.c /^static int __dbj_seckey_create(DB *db,$/ __dbj_throw ../libdb_java/db_java_wrap.c /^static int __dbj_throw(JNIEnv *jenv,$/ __dbj_verify_callback ../libdb_java/db_java_wrap.c /^static int __dbj_verify_callback(void *handle, con/ -__dbj_verify_data ../libdb_java/db_java_wrap.c /^struct __dbj_verify_data {$/ __dbj_wrap_DB_LSN ../libdb_java/db_java_wrap.c /^static jobject __dbj_wrap_DB_LSN(JNIEnv *jenv, DB_/ -__dblist ../dbinc/db.in /^ struct __dblist {$/ __dbreg_add_dbentry ../dbreg/dbreg_util.c /^__dbreg_add_dbentry(dbenv, dblp, dbp, ndx)$/ __dbreg_assign_id ../dbreg/dbreg.c /^__dbreg_assign_id(dbp, id)$/ __dbreg_check_master ../dbreg/dbreg_util.c /^__dbreg_check_master(dbenv, uid, name)$/ -__dbreg_close_files ../dbreg/dbreg_util.c /^__dbreg_close_files(dbenv)$/ +__dbreg_close_file ../dbreg/dbreg_util.c /^__dbreg_close_file(dbenv, fnp)$/ +__dbreg_close_files ../dbreg/dbreg_util.c /^__dbreg_close_files(dbenv, do_restored)$/ __dbreg_close_id ../dbreg/dbreg.c /^__dbreg_close_id(dbp, txn, op)$/ +__dbreg_close_id_int ../dbreg/dbreg.c /^__dbreg_close_id_int(dbenv, fnp, op, locked)$/ __dbreg_do_open ../dbreg/dbreg_util.c /^__dbreg_do_open(dbenv,$/ __dbreg_fid_to_fname ../dbreg/dbreg_util.c /^__dbreg_fid_to_fname(dblp, fid, have_lock, fnamep)/ __dbreg_get_id ../dbreg/dbreg.c /^__dbreg_get_id(dbp, txn, idp)$/ @@ -3308,27 +3645,30 @@ __dbreg_id_to_db_int ../dbreg/dbreg_util.c /^__dbreg_id_to_db_int(dbenv, txn, db __dbreg_id_to_fname ../dbreg/dbreg_util.c /^__dbreg_id_to_fname(dblp, id, have_lock, fnamep)$/ __dbreg_init_print ../dbreg/dbreg_autop.c /^__dbreg_init_print(dbenv, dtabp, dtabsizep)$/ __dbreg_init_recover ../dbreg/dbreg_auto.c /^__dbreg_init_recover(dbenv, dtabp, dtabsizep)$/ -__dbreg_invalidate_files ../dbreg/dbreg_util.c /^__dbreg_invalidate_files(dbenv)$/ +__dbreg_invalidate_files ../dbreg/dbreg_util.c /^__dbreg_invalidate_files(dbenv, do_restored)$/ __dbreg_lazy_id ../dbreg/dbreg_util.c /^__dbreg_lazy_id(dbp)$/ __dbreg_log_close ../dbreg/dbreg.c /^__dbreg_log_close(dbenv, fnp, txn, op)$/ -__dbreg_log_files ../dbreg/dbreg_util.c /^__dbreg_log_files(dbenv)$/ +__dbreg_log_files ../dbreg/dbreg_util.c /^__dbreg_log_files(dbenv, opcode)$/ __dbreg_log_id ../dbreg/dbreg.c /^__dbreg_log_id(dbp, txn, id, needlock)$/ +__dbreg_mark_restored ../dbreg/dbreg_util.c /^__dbreg_mark_restored(dbenv)$/ __dbreg_new_id ../dbreg/dbreg.c /^__dbreg_new_id(dbp, txn)$/ __dbreg_open_file ../dbreg/dbreg_rec.c /^__dbreg_open_file(dbenv, txn, argp, info)$/ __dbreg_pluck_id ../dbreg/dbreg.c /^__dbreg_pluck_id(dbenv, id)$/ __dbreg_pop_id ../dbreg/dbreg.c /^__dbreg_pop_id(dbenv, id)$/ __dbreg_print_dblist ../dbreg/dbreg_stat.c /^__dbreg_print_dblist(dbenv, flags)$/ __dbreg_print_fname ../dbreg/dbreg_stat.c /^__dbreg_print_fname(dbenv, fnp)$/ -__dbreg_push_id ../dbreg/dbreg.c /^__dbreg_push_id(dbenv, dbp, id)$/ +__dbreg_push_id ../dbreg/dbreg.c /^__dbreg_push_id(dbenv, id)$/ __dbreg_register_log ../dbreg/dbreg_auto.c /^__dbreg_register_log(dbenv, txnp, ret_lsnp, flags,/ __dbreg_register_print ../dbreg/dbreg_autop.c /^__dbreg_register_print(dbenv, dbtp, lsnp, notused2/ __dbreg_register_read ../dbreg/dbreg_auto.c /^__dbreg_register_read(dbenv, recbuf, argpp)$/ __dbreg_register_recover ../dbreg/dbreg_rec.c /^__dbreg_register_recover(dbenv, dbtp, lsnp, op, in/ __dbreg_rem_dbentry ../dbreg/dbreg_util.c /^__dbreg_rem_dbentry(dblp, ndx)$/ __dbreg_revoke_id ../dbreg/dbreg.c /^__dbreg_revoke_id(dbp, have_lock, force_id)$/ +__dbreg_revoke_id_int ../dbreg/dbreg.c /^__dbreg_revoke_id_int(dbenv, fnp, have_lock, push,/ __dbreg_setup ../dbreg/dbreg.c /^__dbreg_setup(dbp, name, create_txnid)$/ __dbreg_stat_print ../dbreg/dbreg_stat.c /^__dbreg_stat_print(dbenv, flags)$/ __dbreg_teardown ../dbreg/dbreg.c /^__dbreg_teardown(dbp)$/ +__dbreg_teardown_int ../dbreg/dbreg.c /^__dbreg_teardown_int(dbenv, fnp)$/ __dbsrv_active ../rpc_server/c/db_server_util.c /^__dbsrv_active(ctp)$/ __dbsrv_settimeout ../rpc_server/c/db_server_util.c /^__dbsrv_settimeout(ctp, to)$/ __dbsrv_sharedb ../rpc_server/c/db_server_util.c /^__dbsrv_sharedb(db_ctp, name, subdb, type, flags)$/ @@ -3343,6 +3683,13 @@ __dd_debug ../lock/lock_deadlock.c /^__dd_debug(dbenv, idmap, bitmap, nlockers, __dd_find ../lock/lock_deadlock.c /^__dd_find(dbenv, bmp, idmap, nlockers, nalloc, dea/ __dd_isolder ../lock/lock_deadlock.c /^__dd_isolder(a, b, lock_max, txn_max)$/ __dd_verify ../lock/lock_deadlock.c /^__dd_verify(idmap, deadmap, tmpmap, origmap, nlock/ +__env_alloc ../env/env_alloc.c /^__env_alloc(infop, len, retp)$/ +__env_alloc_free ../env/env_alloc.c /^__env_alloc_free(infop, ptr)$/ +__env_alloc_init ../env/env_alloc.c /^__env_alloc_init(infop, size)$/ +__env_alloc_overhead ../env/env_alloc.c /^__env_alloc_overhead()$/ +__env_alloc_print ../env/env_alloc.c /^__env_alloc_print(infop, flags)$/ +__env_alloc_size ../env/env_alloc.c /^__env_alloc_size(len)$/ +__env_attach ../env/env_region.c /^__env_attach(dbenv, init_flagsp, create_ok, retry_/ __env_cdsgroup_begin_proc ../rpc_server/c/db_server_proc.c /^__env_cdsgroup_begin_proc(dbenvcl_id, replyp)$/ __env_close ../env/env_open.c /^__env_close(dbenv, rep_check)$/ __env_close_int ../rpc_server/c/db_server_util.c /^__env_close_int(id, flags, force)$/ @@ -3355,9 +3702,13 @@ __env_dbremove_pp ../db/db_remove.c /^__env_dbremove_pp(dbenv, txn, name, subdb, __env_dbremove_proc ../rpc_server/c/db_server_proc.c /^__env_dbremove_proc(dbenvcl_id, txnpcl_id, name, s/ __env_dbrename_pp ../db/db_rename.c /^__env_dbrename_pp(dbenv, txn, name, subdb, newname/ __env_dbrename_proc ../rpc_server/c/db_server_proc.c /^__env_dbrename_proc(dbenvcl_id, txnpcl_id, name, s/ -__env_err ../env/env_method.c /^__env_err(dbenv, error, fmt, va_alist)$/ -__env_errx ../env/env_method.c /^__env_errx(dbenv, fmt, va_alist)$/ +__env_des_destroy ../env/env_region.c /^__env_des_destroy(dbenv, rp)$/ +__env_des_get ../env/env_region.c /^__env_des_get(dbenv, env_infop, infop, rpp)$/ +__env_detach ../env/env_region.c /^__env_detach(dbenv, destroy)$/ +__env_err ../env/env_method.c /^__env_err(const DB_ENV *dbenv, int error, const ch/ +__env_errx ../env/env_method.c /^__env_errx(const DB_ENV *dbenv, const char *fmt, ./ __env_failchk_pp ../env/env_failchk.c /^__env_failchk_pp(dbenv, flags)$/ +__env_faultmem ../env/env_region.c /^__env_faultmem(dbenv, addr, size, created)$/ __env_fileid_reset ../db/db_setid.c /^__env_fileid_reset(dbenv, name, encrypted)$/ __env_fileid_reset_pp ../db/db_setid.c /^__env_fileid_reset_pp(dbenv, name, flags)$/ __env_get_cachesize_proc ../rpc_server/c/db_server_proc.c /^__env_get_cachesize_proc(dbenvcl_id, replyp)$/ @@ -3374,6 +3725,7 @@ __env_get_msgfile ../env/env_method.c /^__env_get_msgfile(dbenv, msgfilep)$/ __env_get_open_flags ../env/env_open.c /^__env_get_open_flags(dbenv, flagsp)$/ __env_get_open_flags_proc ../rpc_server/c/db_server_proc.c /^__env_get_open_flags_proc(dbenvcl_id, replyp)$/ __env_get_shm_key ../env/env_method.c /^__env_get_shm_key(dbenv, shm_keyp)$/ +__env_get_thread_count ../env/env_method.c /^__env_get_thread_count(dbenv, countp)$/ __env_get_tmp_dir ../env/env_method.c /^__env_get_tmp_dir(dbenv, dirp)$/ __env_get_verbose ../env/env_method.c /^__env_get_verbose(dbenv, which, onoffp)$/ __env_in_api ../env/env_failchk.c /^__env_in_api(dbenv)$/ @@ -3381,7 +3733,7 @@ __env_init ../env/env_method.c /^__env_init(dbenv)$/ __env_init_rec ../env/env_recover.c /^__env_init_rec(dbenv, version)$/ __env_init_rec_42 ../env/env_recover.c /^__env_init_rec_42(dbenv)$/ __env_init_rec_43 ../env/env_recover.c /^__env_init_rec_43(dbenv)$/ -__env_init_rec_45 ../env/env_recover.c /^__env_init_rec_45(dbenv)$/ +__env_init_rec_46 ../env/env_recover.c /^__env_init_rec_46(dbenv)$/ __env_lsn_reset ../db/db_setlsn.c /^__env_lsn_reset(dbenv, name, encrypted)$/ __env_lsn_reset_pp ../db/db_setlsn.c /^__env_lsn_reset_pp(dbenv, name, flags)$/ __env_map_flags ../env/env_method.c /^__env_map_flags(dbenv, inflagsp, outflagsp)$/ @@ -3389,12 +3741,19 @@ __env_open ../env/env_open.c /^__env_open(dbenv, db_home, flags, mode)$/ __env_open_pp ../env/env_open.c /^__env_open_pp(dbenv, db_home, flags, mode)$/ __env_open_proc ../rpc_server/c/db_server_proc.c /^__env_open_proc(dbenvcl_id, home, flags, mode, rep/ __env_openfiles ../env/env_recover.c /^__env_openfiles(dbenv, logc, txninfo,$/ +__env_panic_set ../env/env_region.c /^__env_panic_set(dbenv, on)$/ __env_print_all ../env/env_stat.c /^__env_print_all(dbenv, flags)$/ __env_print_stats ../env/env_stat.c /^__env_print_stats(dbenv, flags)$/ -__env_print_threads ../env/env_stat.c /^__env_print_threads(dbenv)$/ +__env_print_thread ../env/env_stat.c /^__env_print_thread(dbenv)$/ __env_read_db_config ../env/env_config.c /^__env_read_db_config(dbenv)$/ +__env_ref_decrement ../env/env_region.c /^__env_ref_decrement(dbenv)$/ +__env_ref_increment ../env/env_region.c /^__env_ref_increment(dbenv)$/ __env_refresh ../env/env_open.c /^__env_refresh(dbenv, orig_flags, rep_check)$/ +__env_region_attach ../env/env_region.c /^__env_region_attach(dbenv, infop, size)$/ +__env_region_detach ../env/env_region.c /^__env_region_detach(dbenv, infop, destroy)$/ __env_remove ../env/env_open.c /^__env_remove(dbenv, db_home, flags)$/ +__env_remove_env ../env/env_region.c /^__env_remove_env(dbenv)$/ +__env_remove_file ../env/env_region.c /^__env_remove_file(dbenv)$/ __env_remove_proc ../rpc_server/c/db_server_proc.c /^__env_remove_proc(dbenvcl_id, home, flags, replyp)/ __env_rep_enter ../rep/rep_util.c /^__env_rep_enter(dbenv, checklock)$/ __env_set_alloc ../env/env_method.c /^__env_set_alloc(dbenv, mal_func, real_func, free_f/ @@ -3426,17 +3785,17 @@ __env_set_verbose ../env/env_method.c /^__env_set_verbose(dbenv, which, on)$/ __env_stat_print ../env/env_stat.c /^__env_stat_print(dbenv, flags)$/ __env_stat_print_pp ../env/env_stat.c /^__env_stat_print_pp(dbenv, flags)$/ __env_thread_id_string ../env/env_failchk.c /^__env_thread_id_string(dbenv, pid, tid, buf)$/ -__env_thread_init ../env/env_failchk.c /^__env_thread_init(dbenv, created)$/ +__env_thread_init ../env/env_failchk.c /^__env_thread_init(dbenv, during_creation)$/ __env_thread_state_print ../env/env_stat.c /^__env_thread_state_print(state)$/ +__env_turn_off ../env/env_region.c /^__env_turn_off(dbenv, flags)$/ +__env_turn_on ../env/env_region.c /^__env_turn_on(dbenv)$/ __env_txn_begin_proc ../rpc_server/c/db_server_proc.c /^__env_txn_begin_proc(dbenvcl_id, parentcl_id, flag/ __env_txn_recover_proc ../rpc_server/c/db_server_proc.c /^__env_txn_recover_proc(dbenvcl_id, count, flags, r/ __envreg_add ../env/env_register.c /^__envreg_add(dbenv, need_recoveryp)$/ __envreg_register ../env/env_register.c /^__envreg_register(dbenv, need_recoveryp)$/ __envreg_unregister ../env/env_register.c /^__envreg_unregister(dbenv, recovery_failed)$/ __envreg_xunlock ../env/env_register.c /^__envreg_xunlock(dbenv)$/ -__epg ../dbinc/btree.h /^struct __epg {$/ -__fh_t ../dbinc/os.h /^struct __fh_t {$/ -__fname ../dbinc/log.h /^struct __fname {$/ +__file_handle_cleanup ../env/env_open.c /^__file_handle_cleanup(dbenv)$/ __fop_create ../fileops/fop_basic.c /^__fop_create(dbenv, txn, fhpp, name, appname, mode/ __fop_create_log ../fileops/fileops_auto.c /^__fop_create_log(dbenv, txnp, ret_lsnp, flags,$/ __fop_create_print ../fileops/fileops_autop.c /^__fop_create_print(dbenv, dbtp, lsnp, notused2, no/ @@ -3466,10 +3825,14 @@ __fop_remove_read ../fileops/fileops_auto.c /^__fop_remove_read(dbenv, recbuf, a __fop_remove_recover ../fileops/fop_rec.c /^__fop_remove_recover(dbenv, dbtp, lsnp, op, info)$/ __fop_remove_setup ../fileops/fop_util.c /^__fop_remove_setup(dbp, txn, name, flags)$/ __fop_rename ../fileops/fop_basic.c /^__fop_rename(dbenv, txn, oldname, newname, fid, ap/ +__fop_rename_int_log ../fileops/fileops_auto.c /^__fop_rename_int_log(dbenv, txnp, ret_lsnp, flags,/ __fop_rename_log ../fileops/fileops_auto.c /^__fop_rename_log(dbenv, txnp, ret_lsnp, flags,$/ +__fop_rename_noundo_log ../fileops/fileops_auto.c /^__fop_rename_noundo_log(dbenv, txnp, ret_lsnp, fla/ +__fop_rename_noundo_recover ../fileops/fop_rec.c /^__fop_rename_noundo_recover(dbenv, dbtp, lsnp, op,/ __fop_rename_print ../fileops/fileops_autop.c /^__fop_rename_print(dbenv, dbtp, lsnp, notused2, no/ __fop_rename_read ../fileops/fileops_auto.c /^__fop_rename_read(dbenv, recbuf, argpp)$/ __fop_rename_recover ../fileops/fop_rec.c /^__fop_rename_recover(dbenv, dbtp, lsnp, op, info)$/ +__fop_rename_recover_int ../fileops/fop_rec.c /^__fop_rename_recover_int(dbenv, dbtp, lsnp, op, in/ __fop_set_pgsize ../fileops/fop_util.c /^__fop_set_pgsize(dbp, fhp, name)$/ __fop_subdb_setup ../fileops/fop_util.c /^__fop_subdb_setup(dbp, txn, mname, name, mode, fla/ __fop_write ../fileops/fop_basic.c /^__fop_write(dbenv,$/ @@ -3481,35 +3844,25 @@ __ham_30_hashmeta ../hash/hash_upgrade.c /^__ham_30_hashmeta(dbp, real_name, obu __ham_30_sizefix ../hash/hash_upgrade.c /^__ham_30_sizefix(dbp, fhp, realname, metabuf)$/ __ham_31_hash ../hash/hash_upgrade.c /^__ham_31_hash(dbp, real_name, flags, fhp, h, dirty/ __ham_31_hashmeta ../hash/hash_upgrade.c /^__ham_31_hashmeta(dbp, real_name, flags, fhp, h, d/ +__ham_46_hash ../hash/hash_upgrade.c /^__ham_46_hash(dbp, real_name, flags, fhp, h, dirty/ +__ham_46_hashmeta ../hash/hash_upgrade.c /^__ham_46_hashmeta(dbp, real_name, flags, fhp, h, d/ __ham_add_dup ../hash/hash_dup.c /^__ham_add_dup(dbc, nval, flags, pgnop)$/ __ham_add_el ../hash/hash_page.c /^__ham_add_el(dbc, key, val, type)$/ __ham_add_ovflpage ../hash/hash_page.c /^__ham_add_ovflpage(dbc, pagep, release, pp)$/ __ham_alloc_pages ../hash/hash_rec.c /^__ham_alloc_pages(file_dbp, argp, lsnp)$/ __ham_alloc_pages_42 ../hash/hash_rec.c /^__ham_alloc_pages_42(dbp, argp, lsnp)$/ __ham_bulk ../hash/hash.c /^__ham_bulk(dbc, data, flags)$/ -__ham_c_chgpg ../hash/hash_dup.c /^__ham_c_chgpg(dbc, old_pgno, old_index, new_pgno, / -__ham_c_close ../hash/hash.c /^__ham_c_close(dbc, root_pgno, rmroot)$/ -__ham_c_count ../hash/hash.c /^__ham_c_count(dbc, recnop)$/ -__ham_c_del ../hash/hash.c /^__ham_c_del(dbc)$/ -__ham_c_delpg ../hash/hash_page.c /^__ham_c_delpg(dbc, old_pgno, new_pgno, num_ent, op/ -__ham_c_destroy ../hash/hash.c /^__ham_c_destroy(dbc)$/ -__ham_c_dup ../hash/hash.c /^__ham_c_dup(orig_dbc, new_dbc)$/ -__ham_c_get ../hash/hash.c /^__ham_c_get(dbc, key, data, flags, pgnop)$/ -__ham_c_init ../hash/hash.c /^__ham_c_init(dbc)$/ -__ham_c_put ../hash/hash.c /^__ham_c_put(dbc, key, data, flags, pgnop)$/ -__ham_c_update ../hash/hash.c /^__ham_c_update(dbc, len, add, is_dup)$/ -__ham_c_writelock ../hash/hash.c /^__ham_c_writelock(dbc)$/ __ham_call_hash ../hash/hash.c /^__ham_call_hash(dbc, k, len)$/ __ham_check_move ../hash/hash_dup.c /^__ham_check_move(dbc, add_len)$/ __ham_chgpg_log ../hash/hash_auto.c /^__ham_chgpg_log(dbp, txnp, ret_lsnp, flags, mode, / __ham_chgpg_print ../hash/hash_autop.c /^__ham_chgpg_print(dbenv, dbtp, lsnp, notused2, not/ __ham_chgpg_read ../hash/hash_auto.c /^__ham_chgpg_read(dbenv, recbuf, argpp)$/ __ham_chgpg_recover ../hash/hash_rec.c /^__ham_chgpg_recover(dbenv, dbtp, lsnp, op, info)$/ -__ham_copy_item ../hash/hash_page.c /^__ham_copy_item(dbp, src_page, src_ndx, dest_page)/ __ham_copypage_log ../hash/hash_auto.c /^__ham_copypage_log(dbp, txnp, ret_lsnp, flags, pgn/ __ham_copypage_print ../hash/hash_autop.c /^__ham_copypage_print(dbenv, dbtp, lsnp, notused2, / __ham_copypage_read ../hash/hash_auto.c /^__ham_copypage_read(dbenv, recbuf, argpp)$/ __ham_copypage_recover ../hash/hash_rec.c /^__ham_copypage_recover(dbenv, dbtp, lsnp, op, info/ +__ham_copypair ../hash/hash_page.c /^__ham_copypair(dbp, txn, src_page, src_ndx, dest_p/ __ham_curadj_log ../hash/hash_auto.c /^__ham_curadj_log(dbp, txnp, ret_lsnp, flags, pgno,/ __ham_curadj_print ../hash/hash_autop.c /^__ham_curadj_print(dbenv, dbtp, lsnp, notused2, no/ __ham_curadj_read ../hash/hash_auto.c /^__ham_curadj_read(dbenv, recbuf, argpp)$/ @@ -3517,7 +3870,7 @@ __ham_curadj_recover ../hash/hash_rec.c /^__ham_curadj_recover(dbenv, dbtp, lsnp __ham_db_close ../hash/hash_method.c /^__ham_db_close(dbp)$/ __ham_db_create ../hash/hash_method.c /^__ham_db_create(dbp)$/ __ham_dcursor ../hash/hash_dup.c /^__ham_dcursor(dbc, pgno, indx)$/ -__ham_del_pair ../hash/hash_page.c /^__ham_del_pair(dbc, reclaim_page)$/ +__ham_del_pair ../hash/hash_page.c /^__ham_del_pair(dbc, flags)$/ __ham_dirty_meta ../hash/hash_meta.c /^__ham_dirty_meta(dbc, flags)$/ __ham_dpair ../hash/hash_page.c /^__ham_dpair(dbp, p, indx)$/ __ham_dsearch ../hash/hash_dup.c /^__ham_dsearch(dbc, dbt, offp, cmpp, flags)$/ @@ -3534,6 +3887,9 @@ __ham_get_cpage ../hash/hash_page.c /^__ham_get_cpage(dbc, mode)$/ __ham_get_h_ffactor ../hash/hash_method.c /^__ham_get_h_ffactor(dbp, h_ffactorp)$/ __ham_get_h_nelem ../hash/hash_method.c /^__ham_get_h_nelem(dbp, h_nelemp)$/ __ham_get_meta ../hash/hash_meta.c /^__ham_get_meta(dbc)$/ +__ham_getindex ../hash/hash_page.c /^__ham_getindex(dbp, txn, p, key, key_type, match, / +__ham_getindex_sorted ../hash/hash_page.c /^__ham_getindex_sorted(dbp, txn, p, key, key_type, / +__ham_getindex_unsorted ../hash/hash_page.c /^__ham_getindex_unsorted(dbp, txn, p, key, match, i/ __ham_groupalloc_42_print ../hash/hash_autop.c /^__ham_groupalloc_42_print(dbenv, dbtp, lsnp, notus/ __ham_groupalloc_42_read ../hash/hash_auto.c /^__ham_groupalloc_42_read(dbenv, recbuf, argpp)$/ __ham_groupalloc_42_recover ../hash/hash_rec.c /^__ham_groupalloc_42_recover(dbenv, dbtp, lsnp, op,/ @@ -3549,6 +3905,7 @@ __ham_insdel_log ../hash/hash_auto.c /^__ham_insdel_log(dbp, txnp, ret_lsnp, fla __ham_insdel_print ../hash/hash_autop.c /^__ham_insdel_print(dbenv, dbtp, lsnp, notused2, no/ __ham_insdel_read ../hash/hash_auto.c /^__ham_insdel_read(dbenv, recbuf, argpp)$/ __ham_insdel_recover ../hash/hash_rec.c /^__ham_insdel_recover(dbenv, dbtp, lsnp, op, info)$/ +__ham_insertpair ../hash/hash_page.c /^__ham_insertpair(dbp, txn, p, indxp, key_dbt, data/ __ham_item ../hash/hash_page.c /^__ham_item(dbc, mode, pgnop)$/ __ham_item_first ../hash/hash_page.c /^__ham_item_first(dbc, mode, pgnop)$/ __ham_item_init ../hash/hash_page.c /^__ham_item_init(dbc)$/ @@ -3583,7 +3940,6 @@ __ham_overwrite ../hash/hash.c /^__ham_overwrite(dbc, nval, flags)$/ __ham_pgin ../hash/hash_conv.c /^__ham_pgin(dbenv, dummydbp, pg, pp, cookie)$/ __ham_pgout ../hash/hash_conv.c /^__ham_pgout(dbenv, dummydbp, pg, pp, cookie)$/ __ham_print_cursor ../hash/hash_stat.c /^__ham_print_cursor(dbc)$/ -__ham_putitem ../hash/hash_page.c /^__ham_putitem(dbp, p, dbt, type)$/ __ham_quick_delete ../hash/hash.c /^__ham_quick_delete(dbc)$/ __ham_reclaim ../hash/hash_reclaim.c /^__ham_reclaim(dbp, txn)$/ __ham_release_meta ../hash/hash_meta.c /^__ham_release_meta(dbc)$/ @@ -3592,11 +3948,13 @@ __ham_replace_print ../hash/hash_autop.c /^__ham_replace_print(dbenv, dbtp, lsnp __ham_replace_read ../hash/hash_auto.c /^__ham_replace_read(dbenv, recbuf, argpp)$/ __ham_replace_recover ../hash/hash_rec.c /^__ham_replace_recover(dbenv, dbtp, lsnp, op, info)/ __ham_replpair ../hash/hash_page.c /^__ham_replpair(dbc, dbt, make_dup)$/ -__ham_reputpair ../hash/hash_page.c /^__ham_reputpair(dbp, p, ndx, key, data)$/ __ham_salvage ../hash/hash_verify.c /^__ham_salvage(dbp, vdp, pgno, h, handle, callback,/ +__ham_set_h_compare ../hash/hash_method.c /^__ham_set_h_compare(dbp, func)$/ __ham_set_h_ffactor ../hash/hash_method.c /^__ham_set_h_ffactor(dbp, h_ffactor)$/ __ham_set_h_hash ../hash/hash_method.c /^__ham_set_h_hash(dbp, func)$/ __ham_set_h_nelem ../hash/hash_method.c /^__ham_set_h_nelem(dbp, h_nelem)$/ +__ham_sort_page ../hash/hash_page.c /^__ham_sort_page(dbp, txn, tmp_buf, page)$/ +__ham_sort_page_cursor ../hash/hash_page.c /^__ham_sort_page_cursor(dbc, page)$/ __ham_split_page ../hash/hash_page.c /^__ham_split_page(dbc, obucket, nbucket)$/ __ham_splitdata_log ../hash/hash_auto.c /^__ham_splitdata_log(dbp, txnp, ret_lsnp, flags, op/ __ham_splitdata_print ../hash/hash_autop.c /^__ham_splitdata_print(dbenv, dbtp, lsnp, notused2,/ @@ -3608,35 +3966,46 @@ __ham_stat_print ../hash/hash_stat.c /^__ham_stat_print(dbc, flags)$/ __ham_test ../hash/hash_func.c /^__ham_test(dbp, key, len)$/ __ham_traverse ../hash/hash_stat.c /^__ham_traverse(dbc, mode, callback, cookie, look_p/ __ham_truncate ../hash/hash_reclaim.c /^__ham_truncate(dbc, countp)$/ +__ham_verify_sorted_page ../hash/hash_page.c /^__ham_verify_sorted_page (dbp, txn, p)$/ __ham_vrfy ../hash/hash_verify.c /^__ham_vrfy(dbp, vdp, h, pgno, flags)$/ __ham_vrfy_bucket ../hash/hash_verify.c /^__ham_vrfy_bucket(dbp, vdp, m, bucket, flags)$/ __ham_vrfy_hashing ../hash/hash_verify.c /^__ham_vrfy_hashing(dbp, nentries, m, thisbucket, p/ __ham_vrfy_item ../hash/hash_verify.c /^__ham_vrfy_item(dbp, vdp, pgno, h, i, flags)$/ __ham_vrfy_meta ../hash/hash_verify.c /^__ham_vrfy_meta(dbp, vdp, m, pgno, flags)$/ __ham_vrfy_structure ../hash/hash_verify.c /^__ham_vrfy_structure(dbp, vdp, meta_pgno, flags)$/ -__hdr ../dbinc/log.h /^struct __hdr {$/ -__int64 ../libdb_java/db_java_wrap.c /^ typedef long long __int64;$/ -__key_range ../dbinc/db.in /^struct __key_range {$/ -__kids ../dbinc/db.in /^ struct __kids {$/ +__hamc_chgpg ../hash/hash_dup.c /^__hamc_chgpg(dbc, old_pgno, old_index, new_pgno, n/ +__hamc_close ../hash/hash.c /^__hamc_close(dbc, root_pgno, rmroot)$/ +__hamc_count ../hash/hash.c /^__hamc_count(dbc, recnop)$/ +__hamc_del ../hash/hash.c /^__hamc_del(dbc)$/ +__hamc_delpg ../hash/hash_page.c /^__hamc_delpg(dbc, old_pgno, new_pgno, num_ent, op,/ +__hamc_destroy ../hash/hash.c /^__hamc_destroy(dbc)$/ +__hamc_dup ../hash/hash.c /^__hamc_dup(orig_dbc, new_dbc)$/ +__hamc_get ../hash/hash.c /^__hamc_get(dbc, key, data, flags, pgnop)$/ +__hamc_init ../hash/hash.c /^__hamc_init(dbc)$/ +__hamc_put ../hash/hash.c /^__hamc_put(dbc, key, data, flags, pgnop)$/ +__hamc_update ../hash/hash.c /^__hamc_update(dbc, len, operation, is_dup)$/ +__hamc_writelock ../hash/hash.c /^__hamc_writelock(dbc)$/ +__int64 ../libdb_java/db_java_wrap.c 113 __lock_addfamilylocker ../lock/lock_id.c /^__lock_addfamilylocker(dbenv, pid, id)$/ -__lock_dbenv_create ../lock/lock_method.c /^__lock_dbenv_create(dbenv)$/ -__lock_dbenv_destroy ../lock/lock_method.c /^__lock_dbenv_destroy(dbenv)$/ -__lock_dbenv_refresh ../lock/lock_region.c /^__lock_dbenv_refresh(dbenv)$/ -__lock_detect ../lock/lock_deadlock.c /^__lock_detect(dbenv, atype, abortp)$/ -__lock_detect_pp ../lock/lock_deadlock.c /^__lock_detect_pp(dbenv, flags, atype, abortp)$/ +__lock_detect ../lock/lock_deadlock.c /^__lock_detect(dbenv, atype, rejectp)$/ +__lock_detect_pp ../lock/lock_deadlock.c /^__lock_detect_pp(dbenv, flags, atype, rejectp)$/ __lock_downgrade ../lock/lock.c /^__lock_downgrade(dbenv, lock, new_mode, flags)$/ __lock_dump_locker ../lock/lock_stat.c /^__lock_dump_locker(dbenv, mbp, lt, lip)$/ __lock_dump_object ../lock/lock_stat.c /^__lock_dump_object(lt, mbp, op)$/ -__lock_expired ../lock/lock_timer.c /^__lock_expired(dbenv, now, timevalp)$/ -__lock_expires ../lock/lock_timer.c /^__lock_expires(dbenv, timevalp, timeout)$/ +__lock_env_create ../lock/lock_method.c /^__lock_env_create(dbenv)$/ +__lock_env_destroy ../lock/lock_method.c /^__lock_env_destroy(dbenv)$/ +__lock_env_refresh ../lock/lock_region.c /^__lock_env_refresh(dbenv)$/ +__lock_expired ../lock/lock_timer.c /^__lock_expired(dbenv, now, timespecp)$/ +__lock_expires ../lock/lock_timer.c /^__lock_expires(dbenv, timespecp, timeout)$/ __lock_failchk ../lock/lock_failchk.c /^__lock_failchk(dbenv)$/ __lock_fix_list ../lock/lock_list.c /^__lock_fix_list(dbenv, list_dbt, nlocks)$/ -__lock_freefamilylocker ../lock/lock_id.c /^__lock_freefamilylocker(lt, locker)$/ -__lock_freelock ../lock/lock.c /^__lock_freelock(lt, lockp, locker, flags)$/ -__lock_freelocker ../lock/lock_id.c /^__lock_freelocker(lt, region, sh_locker, indx)$/ +__lock_freefamilylocker ../lock/lock_id.c /^__lock_freefamilylocker(lt, sh_locker)$/ +__lock_freelock ../lock/lock.c /^__lock_freelock(lt, lockp, sh_locker, flags)$/ +__lock_freelocker ../lock/lock_id.c /^__lock_freelocker(lt, region, sh_locker)$/ __lock_get ../lock/lock.c /^__lock_get(dbenv, locker, flags, obj, lock_mode, l/ +__lock_get_api ../lock/lock.c /^__lock_get_api(dbenv, locker, flags, obj, lock_mod/ __lock_get_env_timeout ../lock/lock_method.c /^__lock_get_env_timeout(dbenv, timeoutp, flag)$/ -__lock_get_internal ../lock/lock.c /^__lock_get_internal(lt, locker, flags, obj, lock_m/ +__lock_get_internal ../lock/lock.c /^__lock_get_internal(lt, sh_locker, flags, obj, loc/ __lock_get_list ../lock/lock_list.c /^__lock_get_list(dbenv, locker, flags, lock_mode, l/ __lock_get_lk_conflicts ../lock/lock_method.c /^__lock_get_lk_conflicts(dbenv, lk_conflictsp, lk_m/ __lock_get_lk_detect ../lock/lock_method.c /^__lock_get_lk_detect(dbenv, lk_detectp)$/ @@ -3644,23 +4013,24 @@ __lock_get_lk_max_lockers ../lock/lock_method.c /^__lock_get_lk_max_lockers(dben __lock_get_lk_max_locks ../lock/lock_method.c /^__lock_get_lk_max_locks(dbenv, lk_maxp)$/ __lock_get_lk_max_objects ../lock/lock_method.c /^__lock_get_lk_max_objects(dbenv, lk_maxp)$/ __lock_get_pp ../lock/lock.c /^__lock_get_pp(dbenv, locker, flags, obj, lock_mode/ -__lock_getlocker ../lock/lock_id.c /^__lock_getlocker(lt, locker, indx, create, retp)$/ +__lock_getlocker ../lock/lock_id.c /^__lock_getlocker(lt, locker, create, retp)$/ +__lock_getlocker_int ../lock/lock_id.c /^__lock_getlocker_int(lt, locker, create, retp)$/ __lock_getobj ../lock/lock.c /^__lock_getobj(lt, obj, ndx, create, retp)$/ __lock_id ../lock/lock_id.c /^__lock_id(dbenv, idp, lkp)$/ -__lock_id_free ../lock/lock_id.c /^__lock_id_free(dbenv, id)$/ +__lock_id_free ../lock/lock_id.c /^__lock_id_free(dbenv, sh_locker)$/ __lock_id_free_pp ../lock/lock_id.c /^__lock_id_free_pp(dbenv, id)$/ __lock_id_pp ../lock/lock_id.c /^__lock_id_pp(dbenv, idp)$/ __lock_id_set ../lock/lock_id.c /^__lock_id_set(dbenv, cur_id, max_id)$/ -__lock_inherit_locks ../lock/lock.c /^__lock_inherit_locks(lt, locker, flags)$/ +__lock_inherit_locks ../lock/lock.c /^__lock_inherit_locks(lt, sh_locker, flags)$/ __lock_inherit_timeout ../lock/lock_timer.c /^__lock_inherit_timeout(dbenv, parent, locker)$/ -__lock_is_parent ../lock/lock.c /^__lock_is_parent(lt, locker, sh_locker)$/ +__lock_is_parent ../lock/lock.c /^__lock_is_parent(lt, l_off, sh_locker)$/ __lock_lhash ../lock/lock_util.c /^__lock_lhash(lock_obj)$/ __lock_list_print ../lock/lock_list.c /^__lock_list_print(dbenv, list)$/ __lock_locker_hash ../dbinc/lock.h /^#define __lock_locker_hash(locker) (locker)$/ __lock_locker_is_parent ../lock/lock.c /^__lock_locker_is_parent(dbenv, locker, child, retp/ __lock_nomem ../lock/lock_util.c /^__lock_nomem(dbenv, res)$/ __lock_ohash ../lock/lock_util.c /^__lock_ohash(dbt)$/ -__lock_open ../lock/lock_region.c /^__lock_open(dbenv)$/ +__lock_open ../lock/lock_region.c /^__lock_open(dbenv, create_ok)$/ __lock_print_all ../lock/lock_stat.c /^__lock_print_all(dbenv, flags)$/ __lock_print_header ../lock/lock_stat.c /^__lock_print_header(dbenv)$/ __lock_print_stats ../lock/lock_stat.c /^__lock_print_stats(dbenv, flags)$/ @@ -3680,46 +4050,32 @@ __lock_set_lk_detect ../lock/lock_method.c /^__lock_set_lk_detect(dbenv, lk_dete __lock_set_lk_max_lockers ../lock/lock_method.c /^__lock_set_lk_max_lockers(dbenv, lk_max)$/ __lock_set_lk_max_locks ../lock/lock_method.c /^__lock_set_lk_max_locks(dbenv, lk_max)$/ __lock_set_lk_max_objects ../lock/lock_method.c /^__lock_set_lk_max_objects(dbenv, lk_max)$/ -__lock_set_thread_id ../lock/lock_id.c /^__lock_set_thread_id(lref, pid, tid)$/ +__lock_set_thread_id ../lock/lock_id.c /^__lock_set_thread_id(lref_arg, pid, tid)$/ __lock_set_timeout ../lock/lock_timer.c /^__lock_set_timeout(dbenv, locker, timeout, op)$/ -__lock_set_timeout_internal ../lock/lock_timer.c /^__lock_set_timeout_internal(dbenv, locker, timeout/ +__lock_set_timeout_internal ../lock/lock_timer.c /^__lock_set_timeout_internal(dbenv, sh_locker, time/ __lock_sort_cmp ../lock/lock_list.c /^__lock_sort_cmp(a, b)$/ __lock_stat ../lock/lock_stat.c /^__lock_stat(dbenv, statp, flags)$/ __lock_stat_pp ../lock/lock_stat.c /^__lock_stat_pp(dbenv, statp, flags)$/ __lock_stat_print ../lock/lock_stat.c /^__lock_stat_print(dbenv, flags)$/ __lock_stat_print_pp ../lock/lock_stat.c /^__lock_stat_print_pp(dbenv, flags)$/ __lock_trade ../lock/lock.c /^__lock_trade(dbenv, lock, new_locker)$/ -__lock_vec ../lock/lock.c /^__lock_vec(dbenv, locker, flags, list, nlist, elis/ -__lock_vec_pp ../lock/lock.c /^__lock_vec_pp(dbenv, locker, flags, list, nlist, e/ -__log ../dbinc/log.h /^struct __log {$/ +__lock_vec ../lock/lock.c /^__lock_vec(dbenv, sh_locker, flags, list, nlist, e/ +__lock_vec_api ../lock/lock.c /^__lock_vec_api(dbenv, lid, flags, list, nlist, eli/ +__lock_vec_pp ../lock/lock.c /^__lock_vec_pp(dbenv, lid, flags, list, nlist, elis/ __log_archive ../log/log_archive.c /^__log_archive(dbenv, listp, flags)$/ __log_archive_pp ../log/log_archive.c /^__log_archive_pp(dbenv, listp, flags)$/ __log_autoremove ../log/log_archive.c /^__log_autoremove(dbenv)$/ __log_backup ../env/env_recover.c /^__log_backup(dbenv, logc, max_lsn, start_lsn, cmp)/ -__log_c_close ../log/log_get.c /^__log_c_close(logc)$/ -__log_c_close_pp ../log/log_get.c /^__log_c_close_pp(logc, flags)$/ -__log_c_get ../log/log_get.c /^__log_c_get(logc, alsn, dbt, flags)$/ -__log_c_get_int ../log/log_get.c /^__log_c_get_int(logc, alsn, dbt, flags)$/ -__log_c_get_pp ../log/log_get.c /^__log_c_get_pp(logc, alsn, dbt, flags)$/ -__log_c_hdrchk ../log/log_get.c /^__log_c_hdrchk(logc, lsn, hdr, eofp)$/ -__log_c_incursor ../log/log_get.c /^__log_c_incursor(logc, lsn, hdr, pp)$/ -__log_c_inregion ../log/log_get.c /^__log_c_inregion(logc, lsn, rlockp, last_lsn, hdr,/ -__log_c_io ../log/log_get.c /^__log_c_io(logc, fnum, offset, p, nrp, eofp)$/ -__log_c_ondisk ../log/log_get.c /^__log_c_ondisk(logc, lsn, last_lsn, flags, hdr, pp/ -__log_c_set_maxrec ../log/log_get.c /^__log_c_set_maxrec(logc, np)$/ -__log_c_shortread ../log/log_get.c /^__log_c_shortread(logc, lsn, check_silent)$/ -__log_c_version ../log/log_get.c /^__log_c_version(logc, versionp)$/ -__log_c_version_pp ../log/log_get.c /^__log_c_version_pp(logc, versionp, flags)$/ __log_check_page_lsn ../log/log_compare.c /^__log_check_page_lsn(dbenv, dbp, lsnp)$/ __log_check_sizes ../log/log_method.c /^__log_check_sizes(dbenv, lg_max, lg_bsize)$/ __log_current_lsn ../log/log_put.c /^__log_current_lsn(dbenv, lsnp, mbytesp, bytesp)$/ __log_cursor ../log/log_get.c /^__log_cursor(dbenv, logcp)$/ __log_cursor_pp ../log/log_get.c /^__log_cursor_pp(dbenv, logcp, flags)$/ -__log_dbenv_create ../log/log_method.c /^__log_dbenv_create(dbenv)$/ -__log_dbenv_destroy ../log/log_method.c /^__log_dbenv_destroy(dbenv)$/ -__log_dbenv_refresh ../log/log.c /^__log_dbenv_refresh(dbenv)$/ __log_earliest ../env/env_recover.c /^__log_earliest(dbenv, logc, lowtime, lowlsn)$/ __log_encrypt_record ../log/log_put.c /^__log_encrypt_record(dbenv, dbt, hdr, orig)$/ +__log_env_create ../log/log_method.c /^__log_env_create(dbenv)$/ +__log_env_destroy ../log/log_method.c /^__log_env_destroy(dbenv)$/ +__log_env_refresh ../log/log.c /^__log_env_refresh(dbenv)$/ __log_file ../log/log_put.c /^__log_file(dbenv, lsn, namep, len)$/ __log_file_pp ../log/log_put.c /^__log_file_pp(dbenv, lsn, namep, len)$/ __log_fill ../log/log_put.c /^__log_fill(dblp, lsn, addr, len)$/ @@ -3747,12 +4103,11 @@ __log_is_outdated ../log/log.c /^__log_is_outdated(dbenv, fnum, outdatedp)$/ __log_name ../log/log_put.c /^__log_name(dblp, filenumber, namep, fhpp, flags)$/ __log_newfh ../log/log_put.c /^__log_newfh(dblp, create)$/ __log_newfile ../log/log_put.c /^__log_newfile(dblp, lsnp, logfile, version)$/ -__log_open ../log/log.c /^__log_open(dbenv)$/ -__log_persist ../dbinc/log.h /^struct __log_persist {$/ +__log_open ../log/log.c /^__log_open(dbenv, create_ok)$/ __log_print_all ../log/log_stat.c /^__log_print_all(dbenv, flags)$/ __log_print_stats ../log/log_stat.c /^__log_print_stats(dbenv, flags)$/ -__log_printf ../log/log_debug.c /^__log_printf(dbenv, txnid, fmt, va_alist)$/ -__log_printf_capi ../log/log_debug.c /^__log_printf_capi(dbenv, txnid, fmt, va_alist)$/ +__log_printf ../log/log_debug.c /^__log_printf(DB_ENV *dbenv, DB_TXN *txnid, const c/ +__log_printf_capi ../log/log_debug.c /^__log_printf_capi(DB_ENV *dbenv, DB_TXN *txnid, co/ __log_printf_int ../log/log_debug.c /^__log_printf_int(dbenv, txnid, fmt, ap)$/ __log_printf_pp ../log/log_debug.c /^__log_printf_pp(dbenv, txnid, fmt, ap)$/ __log_put ../log/log_put.c /^__log_put(dbenv, lsnp, udbt, flags)$/ @@ -3762,7 +4117,7 @@ __log_putr ../log/log_put.c /^__log_putr(dblp, lsn, dbt, prev, h)$/ __log_recover ../log/log.c /^__log_recover(dblp)$/ __log_region_mutex_count ../log/log.c /^__log_region_mutex_count(dbenv)$/ __log_region_size ../log/log.c /^__log_region_size(dbenv)$/ -__log_rep_put ../log/log_put.c /^__log_rep_put(dbenv, lsnp, rec)$/ +__log_rep_put ../log/log_put.c /^__log_rep_put(dbenv, lsnp, rec, flags)$/ __log_rep_split ../log/log_get.c /^__log_rep_split(dbenv, rp, rec, ret_lsnp, last_lsn/ __log_set_flags ../log/log_method.c /^__log_set_flags(dbenv, flags, on)$/ __log_set_lg_bsize ../log/log_method.c /^__log_set_lg_bsize(dbenv, lg_bsize)$/ @@ -3778,25 +4133,41 @@ __log_stat_print_pp ../log/log_stat.c /^__log_stat_print_pp(dbenv, flags)$/ __log_valid ../log/log.c /^__log_valid(dblp, number, set_persist, fhpp, flags/ __log_vtruncate ../log/log.c /^__log_vtruncate(dbenv, lsn, ckplsn, trunclsn)$/ __log_write ../log/log_put.c /^__log_write(dblp, addr, len)$/ -__log_zero ../log/log.c /^__log_zero(dbenv, from_lsn, to_lsn)$/ +__log_zero ../log/log.c /^__log_zero(dbenv, from_lsn)$/ +__logc_close ../log/log_get.c /^__logc_close(logc)$/ +__logc_close_pp ../log/log_get.c /^__logc_close_pp(logc, flags)$/ +__logc_get ../log/log_get.c /^__logc_get(logc, alsn, dbt, flags)$/ +__logc_get_int ../log/log_get.c /^__logc_get_int(logc, alsn, dbt, flags)$/ +__logc_get_pp ../log/log_get.c /^__logc_get_pp(logc, alsn, dbt, flags)$/ +__logc_hdrchk ../log/log_get.c /^__logc_hdrchk(logc, lsn, hdr, eofp)$/ +__logc_incursor ../log/log_get.c /^__logc_incursor(logc, lsn, hdr, pp)$/ +__logc_inregion ../log/log_get.c /^__logc_inregion(logc, lsn, rlockp, last_lsn, hdr, / +__logc_io ../log/log_get.c /^__logc_io(logc, fnum, offset, p, nrp, eofp)$/ +__logc_ondisk ../log/log_get.c /^__logc_ondisk(logc, lsn, last_lsn, flags, hdr, pp,/ +__logc_set_maxrec ../log/log_get.c /^__logc_set_maxrec(logc, np)$/ +__logc_shortread ../log/log_get.c /^__logc_shortread(logc, lsn, check_silent)$/ +__logc_version ../log/log_get.c /^__logc_version(logc, versionp)$/ +__logc_version_pp ../log/log_get.c /^__logc_version_pp(logc, versionp, flags)$/ __lsn_diff ../env/env_recover.c /^__lsn_diff(low, high, current, max, is_forward)$/ +__memp_add_bucket ../mp/mp_resize.c /^__memp_add_bucket(dbmp)$/ +__memp_add_region ../mp/mp_resize.c /^__memp_add_region(dbmp)$/ __memp_alloc ../mp/mp_alloc.c /^__memp_alloc(dbmp, infop, mfp, len, offsetp, retp)/ __memp_alloc_freelist ../mp/mp_method.c /^__memp_alloc_freelist(dbmfp, nelems, listp)$/ __memp_bad_buffer ../mp/mp_alloc.c /^__memp_bad_buffer(dbenv, hp)$/ __memp_bh_freeze ../mp/mp_mvcc.c /^__memp_bh_freeze(dbmp, infop, hp, bhp, need_frozen/ __memp_bh_priority ../mp/mp_mvcc.c /^__memp_bh_priority(bhp)$/ -__memp_bh_settxn ../mp/mp_mvcc.c /^int __memp_bh_settxn(dbmp, mfp, bhp, vtd)$/ +__memp_bh_settxn ../mp/mp_mvcc.c /^__memp_bh_settxn(dbmp, mfp, bhp, vtd)$/ __memp_bh_thaw ../mp/mp_mvcc.c /^__memp_bh_thaw(dbmp, infop, hp, frozen_bhp, alloc_/ -__memp_bhfree ../mp/mp_bh.c /^__memp_bhfree(dbmp, hp, bhp, flags)$/ +__memp_bhfree ../mp/mp_bh.c /^__memp_bhfree(dbmp, infop, hp, bhp, flags)$/ __memp_bhwrite ../mp/mp_bh.c /^__memp_bhwrite(dbmp, hp, mfp, bhp, open_extents)$/ __memp_bucket_reorder ../mp/mp_mvcc.c /^__memp_bucket_reorder(dbenv, hp, bhp)$/ __memp_check_order ../mp/mp_alloc.c /^__memp_check_order(dbenv, hp)$/ -__memp_close_flush_files ../mp/mp_sync.c /^__memp_close_flush_files(dbenv, dbmp, dosync)$/ +__memp_close_flush_files ../mp/mp_sync.c /^__memp_close_flush_files(dbenv, dosync)$/ __memp_count_files ../mp/mp_stat.c /^__memp_count_files(dbenv, mfp, argp, countp, flags/ -__memp_dbenv_create ../mp/mp_method.c /^__memp_dbenv_create(dbenv)$/ -__memp_dbenv_destroy ../mp/mp_method.c /^__memp_dbenv_destroy(dbenv)$/ -__memp_dbenv_refresh ../mp/mp_region.c /^__memp_dbenv_refresh(dbenv)$/ -__memp_dirty ../mp/mp_fset.c /^__memp_dirty(dbmfp, addrp, txn, flags)$/ +__memp_dirty ../mp/mp_fset.c /^__memp_dirty(dbmfp, addrp, txn, priority, flags)$/ +__memp_env_create ../mp/mp_method.c /^__memp_env_create(dbenv)$/ +__memp_env_destroy ../mp/mp_method.c /^__memp_env_destroy(dbenv)$/ +__memp_env_refresh ../mp/mp_region.c /^__memp_env_refresh(dbenv)$/ __memp_extend_freelist ../mp/mp_method.c /^__memp_extend_freelist(dbmfp, count, listp)$/ __memp_fclose ../mp/mp_fopen.c /^__memp_fclose(dbmfp, flags)$/ __memp_fclose_pp ../mp/mp_fopen.c /^__memp_fclose_pp(dbmfp, flags)$/ @@ -3809,22 +4180,24 @@ __memp_fn ../mp/mp_fmethod.c /^__memp_fn(dbmfp)$/ __memp_fns ../mp/mp_fmethod.c /^__memp_fns(dbmp, mfp)$/ __memp_fopen ../mp/mp_fopen.c /^__memp_fopen(dbmfp, mfp, path, flags, mode, pgsize/ __memp_fopen_pp ../mp/mp_fopen.c /^__memp_fopen_pp(dbmfp, path, flags, mode, pagesize/ -__memp_fput ../mp/mp_fput.c /^__memp_fput(dbmfp, pgaddr, flags)$/ -__memp_fput_pp ../mp/mp_fput.c /^__memp_fput_pp(dbmfp, pgaddr, flags)$/ +__memp_fput ../mp/mp_fput.c /^__memp_fput(dbmfp, pgaddr, priority)$/ +__memp_fput_pp ../mp/mp_fput.c /^__memp_fput_pp(dbmfp, pgaddr, priority, flags)$/ __memp_free ../mp/mp_alloc.c /^__memp_free(infop, mfp, buf)$/ __memp_free_freelist ../mp/mp_method.c /^__memp_free_freelist(dbmfp)$/ -__memp_fset ../mp/mp_fset.c /^__memp_fset(dbmfp, pgaddr, flags)$/ -__memp_fset_pp ../mp/mp_fset.c /^__memp_fset_pp(dbmfp, pgaddr, flags)$/ __memp_fsync ../mp/mp_sync.c /^__memp_fsync(dbmfp)$/ __memp_fsync_pp ../mp/mp_sync.c /^__memp_fsync_pp(dbmfp)$/ __memp_ftruncate ../mp/mp_method.c /^__memp_ftruncate(dbmfp, pgno, flags)$/ +__memp_get_bucket ../mp/mp_resize.c /^__memp_get_bucket(dbmfp, pgno, infopp, hpp)$/ +__memp_get_cache_max ../mp/mp_resize.c /^__memp_get_cache_max(dbenv, max_gbytesp, max_bytes/ __memp_get_cachesize ../mp/mp_method.c /^__memp_get_cachesize(dbenv, gbytesp, bytesp, ncach/ __memp_get_clear_len ../mp/mp_fmethod.c /^__memp_get_clear_len(dbmfp, clear_lenp)$/ +__memp_get_config ../mp/mp_method.c /^__memp_get_config(dbenv, which, onp)$/ __memp_get_fileid ../mp/mp_fmethod.c /^__memp_get_fileid(dbmfp, fileid)$/ __memp_get_files ../mp/mp_stat.c /^__memp_get_files(dbenv, mfp, argp, countp, flags)$/ __memp_get_flags ../mp/mp_fmethod.c /^__memp_get_flags(dbmfp, flagsp)$/ __memp_get_freelist ../mp/mp_method.c /^__memp_get_freelist(dbmfp, nelemp, listp)$/ __memp_get_ftype ../mp/mp_fmethod.c /^__memp_get_ftype(dbmfp, ftypep)$/ +__memp_get_last_pgno ../mp/mp_fmethod.c /^__memp_get_last_pgno(dbmfp, pgnoaddr)$/ __memp_get_lsn_offset ../mp/mp_fmethod.c /^__memp_get_lsn_offset(dbmfp, lsn_offsetp)$/ __memp_get_maxsize ../mp/mp_fmethod.c /^__memp_get_maxsize(dbmfp, gbytesp, bytesp)$/ __memp_get_mp_max_openfd ../mp/mp_method.c /^__memp_get_mp_max_openfd(dbenv, maxopenfdp)$/ @@ -3835,12 +4208,15 @@ __memp_get_priority ../mp/mp_fmethod.c /^__memp_get_priority(dbmfp, priorityp)$/ __memp_init ../mp/mp_region.c /^__memp_init(dbenv, dbmp, reginfo_off, htab_buckets/ __memp_init_config ../mp/mp_region.c /^__memp_init_config(dbenv, mp)$/ __memp_inmemlist ../mp/mp_fopen.c /^__memp_inmemlist(dbenv, namesp, cntp)$/ -__memp_last_pgno ../mp/mp_fmethod.c /^__memp_last_pgno(dbmfp, pgnoaddr)$/ +__memp_map_regions ../mp/mp_resize.c /^__memp_map_regions(dbmp)$/ +__memp_max_regions ../mp/mp_region.c /^__memp_max_regions(dbenv)$/ +__memp_merge_buckets ../mp/mp_resize.c /^__memp_merge_buckets(dbmp, new_nbuckets, old_bucke/ __memp_mf_discard ../mp/mp_fopen.c /^__memp_mf_discard(dbmp, mfp)$/ -__memp_mf_sync ../mp/mp_sync.c /^__memp_mf_sync(dbmp, mfp, region_locked)$/ -__memp_mfp_alloc ../mp/mp_fopen.c /^__memp_mfp_alloc(dbmp, dbmfp, path, pagesize, flag/ +__memp_mf_sync ../mp/mp_sync.c /^__memp_mf_sync(dbmp, mfp, locked)$/ +__memp_mpf_alloc ../mp/mp_fopen.c /^__memp_mpf_alloc(dbmp, dbmfp, path, pagesize, flag/ +__memp_mpf_find ../mp/mp_fopen.c /^__memp_mpf_find(dbenv, dbmfp, hp, path, flags, mfp/ __memp_nameop ../mp/mp_method.c /^__memp_nameop(dbenv, fileid, newname, fullold, ful/ -__memp_open ../mp/mp_region.c /^__memp_open(dbenv)$/ +__memp_open ../mp/mp_region.c /^__memp_open(dbenv, create_ok)$/ __memp_pg ../mp/mp_bh.c /^__memp_pg(dbmfp, bhp, is_pgin)$/ __memp_pgread ../mp/mp_bh.c /^__memp_pgread(dbmfp, hp, bhp, can_create)$/ __memp_pgwrite ../mp/mp_bh.c /^__memp_pgwrite(dbenv, dbmfp, hp, bhp)$/ @@ -3853,9 +4229,14 @@ __memp_region_mutex_count ../mp/mp_region.c /^__memp_region_mutex_count(dbenv)$/ __memp_region_size ../mp/mp_region.c /^__memp_region_size(dbenv, reg_sizep, htab_bucketsp/ __memp_register ../mp/mp_register.c /^__memp_register(dbenv, ftype, pgin, pgout)$/ __memp_register_pp ../mp/mp_register.c /^__memp_register_pp(dbenv, ftype, pgin, pgout)$/ +__memp_remove_bucket ../mp/mp_resize.c /^__memp_remove_bucket(dbmp)$/ +__memp_remove_region ../mp/mp_resize.c /^__memp_remove_region(dbmp)$/ __memp_reset_lru ../mp/mp_fput.c /^__memp_reset_lru(dbenv, infop)$/ +__memp_resize ../mp/mp_resize.c /^__memp_resize(dbmp, gbytes, bytes)$/ +__memp_set_cache_max ../mp/mp_resize.c /^__memp_set_cache_max(dbenv, max_gbytes, max_bytes)/ __memp_set_cachesize ../mp/mp_method.c /^__memp_set_cachesize(dbenv, gbytes, bytes, arg_nca/ __memp_set_clear_len ../mp/mp_fmethod.c /^__memp_set_clear_len(dbmfp, clear_len)$/ +__memp_set_config ../mp/mp_method.c /^__memp_set_config(dbenv, which, on)$/ __memp_set_fileid ../mp/mp_fmethod.c /^__memp_set_fileid(dbmfp, fileid)$/ __memp_set_flags ../mp/mp_fmethod.c /^__memp_set_flags(dbmfp, flags, onoff)$/ __memp_set_ftype ../mp/mp_fmethod.c /^__memp_set_ftype(dbmfp, ftype)$/ @@ -3873,25 +4254,24 @@ __memp_stat_pp ../mp/mp_stat.c /^__memp_stat_pp(dbenv, gspp, fspp, flags)$/ __memp_stat_print ../mp/mp_stat.c /^__memp_stat_print(dbenv, flags)$/ __memp_stat_print_pp ../mp/mp_stat.c /^__memp_stat_print_pp(dbenv, flags)$/ __memp_stat_wait ../mp/mp_stat.c /^__memp_stat_wait(dbenv, reginfo, mp, mstat, flags)/ -__memp_sync ../mp/mp_sync.c /^__memp_sync(dbenv, lsnp)$/ +__memp_sync ../mp/mp_sync.c /^__memp_sync(dbenv, flags, lsnp)$/ __memp_sync_file ../mp/mp_sync.c /^__memp_sync_file(dbenv, mfp, argp, countp, flags)$/ -__memp_sync_files ../mp/mp_sync.c /^int __memp_sync_files(dbenv, dbmp)$/ -__memp_sync_int ../mp/mp_sync.c /^__memp_sync_int(dbenv, dbmfp, trickle_max, op, wro/ +__memp_sync_files ../mp/mp_sync.c /^__memp_sync_files(dbenv)$/ +__memp_sync_int ../mp/mp_sync.c /^__memp_sync_int(dbenv, dbmfp, trickle_max, flags, / __memp_sync_pp ../mp/mp_sync.c /^__memp_sync_pp(dbenv, lsnp)$/ __memp_trickle ../mp/mp_trickle.c /^__memp_trickle(dbenv, pct, nwrotep)$/ __memp_trickle_pp ../mp/mp_trickle.c /^__memp_trickle_pp(dbenv, pct, nwrotep)$/ __memp_walk_files ../mp/mp_sync.c /^__memp_walk_files(dbenv, mp, func, arg, countp, fl/ __mp_xxx_fh ../mp/mp_sync.c /^__mp_xxx_fh(dbmfp, fhp)$/ __mpe_fsync ../os/os_fsync.c /^__mpe_fsync(fd)$/ -__mpool ../dbinc/mp.h /^struct __mpool {$/ -__mpoolfile ../dbinc/mp.h /^struct __mpoolfile {$/ __mut_failchk ../mutex/mut_failchk.c /^__mut_failchk(dbenv)$/ +__mutex_align_size ../mutex/mut_region.c /^__mutex_align_size(dbenv)$/ __mutex_alloc ../mutex/mut_alloc.c /^__mutex_alloc(dbenv, alloc_id, flags, indxp)$/ __mutex_alloc_int ../mutex/mut_alloc.c /^__mutex_alloc_int(dbenv, locksys, alloc_id, flags,/ __mutex_alloc_pp ../mutex/mut_method.c /^__mutex_alloc_pp(dbenv, flags, indxp)$/ __mutex_clear ../mutex/mut_stat.c /^__mutex_clear(dbenv, mutex)$/ -__mutex_dbenv_refresh ../mutex/mut_region.c /^__mutex_dbenv_refresh(dbenv)$/ __mutex_destroy ../dbinc/mutex.h /^#define __mutex_destroy(a, b) __db_pthread_mutex_/ +__mutex_env_refresh ../mutex/mut_region.c /^__mutex_env_refresh(dbenv)$/ __mutex_free ../mutex/mut_alloc.c /^__mutex_free(dbenv, indxp)$/ __mutex_free_int ../mutex/mut_alloc.c /^__mutex_free_int(dbenv, locksys, indxp)$/ __mutex_free_pp ../mutex/mut_method.c /^__mutex_free_pp(dbenv, indx)$/ @@ -3902,7 +4282,7 @@ __mutex_get_tas_spins ../mutex/mut_method.c /^__mutex_get_tas_spins(dbenv, tas_s __mutex_init ../dbinc/mutex.h /^#define __mutex_init(a, b, c) __db_pthread_mutex_/ __mutex_lock ../dbinc/mutex.h /^#define __mutex_lock(a, b) __db_pthread_mutex_loc/ __mutex_lock_pp ../mutex/mut_method.c /^__mutex_lock_pp(dbenv, indx)$/ -__mutex_open ../mutex/mut_region.c /^__mutex_open(dbenv)$/ +__mutex_open ../mutex/mut_region.c /^__mutex_open(dbenv, create_ok)$/ __mutex_print_all ../mutex/mut_stat.c /^__mutex_print_all(dbenv, flags)$/ __mutex_print_debug_single ../mutex/mut_stat.c /^__mutex_print_debug_single(dbenv, tag, mutex, flag/ __mutex_print_debug_stats ../mutex/mut_stat.c /^__mutex_print_debug_stats(dbenv, mbp, mutex, flags/ @@ -3918,15 +4298,17 @@ __mutex_set_max ../mutex/mut_method.c /^__mutex_set_max(dbenv, max)$/ __mutex_set_tas_spins ../mutex/mut_method.c /^__mutex_set_tas_spins(dbenv, tas_spins)$/ __mutex_set_wait_info ../mutex/mut_stat.c /^__mutex_set_wait_info(dbenv, mutex, waitp, nowaitp/ __mutex_stat ../mutex/mut_stat.c /^__mutex_stat(dbenv, statp, flags)$/ +__mutex_stat_pp ../mutex/mut_stat.c /^__mutex_stat_pp(dbenv, statp, flags)$/ __mutex_stat_print ../mutex/mut_stat.c /^__mutex_stat_print(dbenv, flags)$/ +__mutex_stat_print_pp ../mutex/mut_stat.c /^__mutex_stat_print_pp(dbenv, flags)$/ __mutex_unlock ../dbinc/mutex.h /^#define __mutex_unlock(a, b) __db_pthread_mutex_u/ __mutex_unlock_pp ../mutex/mut_method.c /^__mutex_unlock_pp(dbenv, indx)$/ __no_system_mem ../os/os_map.c /^__no_system_mem(dbenv)$/ __op_rep_enter ../rep/rep_util.c /^__op_rep_enter(dbenv)$/ __op_rep_exit ../rep/rep_util.c /^__op_rep_exit(dbenv)$/ +__os_abort ../os/os_abort.c /^__os_abort()$/ __os_abspath ../os/os_abs.c /^__os_abspath(path)$/ __os_calloc ../os/os_alloc.c /^__os_calloc(dbenv, num, size, storep)$/ -__os_clock ../os/os_clock.c /^__os_clock(dbenv, secsp, usecsp)$/ __os_closehandle ../os/os_handle.c /^__os_closehandle(dbenv, fhp)$/ __os_dirfree ../os/os_dir.c /^__os_dirfree(dbenv, names, cnt)$/ __os_dirlist ../os/os_dir.c /^__os_dirlist(dbenv, dir, namesp, cntp)$/ @@ -3941,6 +4323,7 @@ __os_get_errno_ret_zero ../os/os_errno.c /^__os_get_errno_ret_zero()$/ __os_get_neterr ../os/os_errno.c /^__os_get_neterr()$/ __os_get_syserr ../os/os_errno.c /^__os_get_syserr()$/ __os_getenv ../os/os_getenv.c /^__os_getenv(dbenv, name, bpp, buflen)$/ +__os_gettime ../os/os_clock.c /^__os_gettime(dbenv, tp)$/ __os_guard ../os/os_alloc.c /^__os_guard(dbenv)$/ __os_id ../os/os_pid.c /^__os_id(dbenv, pidp, tidp)$/ __os_io ../os/os_rw.c /^__os_io(dbenv, op, fhp, pgno, pgsize, relative, io/ @@ -3950,13 +4333,13 @@ __os_malloc ../os/os_alloc.c /^__os_malloc(dbenv, size, storep)$/ __os_map ../os/os_map.c /^__os_map(dbenv, path, fhp, len, is_region, is_rdon/ __os_mapfile ../os/os_map.c /^__os_mapfile(dbenv, path, fhp, len, is_rdonly, add/ __os_mkdir ../os/os_mkdir.c /^__os_mkdir(dbenv, name, mode)$/ -__os_open ../os/os_open.c /^__os_open(dbenv, name, flags, mode, fhpp)$/ -__os_open_extend ../os/os_open.c /^__os_open_extend(dbenv, name, page_size, flags, mo/ +__os_open ../os/os_open.c /^__os_open(dbenv, name, page_size, flags, mode, fhp/ __os_openhandle ../os/os_handle.c /^__os_openhandle(dbenv, name, flags, mode, fhpp)$/ __os_physwrite ../os/os_rw.c /^__os_physwrite(dbenv, fhp, addr, len, nwp)$/ __os_posix_err ../os/os_errno.c /^__os_posix_err(error)$/ __os_pstat_getdynamic ../os/os_spin.c /^__os_pstat_getdynamic()$/ -__os_qnx_region_open ../os/os_open.c /^__os_qnx_region_open(dbenv, name, oflags, mode, fh/ +__os_qnx_region_open ../os_qnx/os_qnx_open.c /^__os_qnx_region_open(dbenv, name, oflags, mode, fh/ +__os_qnx_shmname ../os_qnx/os_qnx_open.c /^__os_qnx_shmname(dbenv, name, newnamep)$/ __os_r_attach ../os/os_region.c /^__os_r_attach(dbenv, infop, rp)$/ __os_r_detach ../os/os_region.c /^__os_r_detach(dbenv, infop, destroy)$/ __os_r_sysattach ../os/os_map.c /^__os_r_sysattach(dbenv, infop, rp)$/ @@ -3964,10 +4347,9 @@ __os_r_sysdetach ../os/os_map.c /^__os_r_sysdetach(dbenv, infop, destroy)$/ __os_read ../os/os_rw.c /^__os_read(dbenv, fhp, addr, len, nrp)$/ __os_realloc ../os/os_alloc.c /^__os_realloc(dbenv, size, storep)$/ __os_region_unlink ../os/os_unlink.c /^__os_region_unlink(dbenv, path)$/ -__os_rename ../os/os_rename.c /^__os_rename(dbenv, old, new, silent)$/ +__os_rename ../os/os_rename.c /^__os_rename(dbenv, oldname, newname, silent)$/ __os_seek ../os/os_seek.c /^__os_seek(dbenv, fhp, pgno, pgsize, relative)$/ __os_set_errno ../os/os_errno.c /^__os_set_errno(evalue)$/ -__os_shmname ../os/os_open.c /^__os_shmname(dbenv, name, newnamep)$/ __os_sleep ../os/os_sleep.c /^__os_sleep(dbenv, secs, usecs)$/ __os_spin ../os/os_spin.c /^__os_spin(dbenv)$/ __os_strdup ../os/os_alloc.c /^__os_strdup(dbenv, str, storep)$/ @@ -3996,13 +4378,6 @@ __qam_add_read ../qam/qam_auto.c /^__qam_add_read(dbenv, recbuf, argpp)$/ __qam_add_recover ../qam/qam_rec.c /^__qam_add_recover(dbenv, dbtp, lsnp, op, info)$/ __qam_append ../qam/qam.c /^__qam_append(dbc, key, data)$/ __qam_bulk ../qam/qam.c /^__qam_bulk(dbc, data, flags)$/ -__qam_c_close ../qam/qam.c /^__qam_c_close(dbc, root_pgno, rmroot)$/ -__qam_c_del ../qam/qam.c /^__qam_c_del(dbc)$/ -__qam_c_destroy ../qam/qam.c /^__qam_c_destroy(dbc)$/ -__qam_c_dup ../qam/qam.c /^__qam_c_dup(orig_dbc, new_dbc)$/ -__qam_c_get ../qam/qam.c /^__qam_c_get(dbc, key, data, flags, pgnop)$/ -__qam_c_init ../qam/qam.c /^__qam_c_init(dbc)$/ -__qam_c_put ../qam/qam.c /^__qam_c_put(dbc, key, data, flags, pgnop)$/ __qam_consume ../qam/qam.c /^__qam_consume(dbc, meta, first)$/ __qam_db_close ../qam/qam_method.c /^__qam_db_close(dbp, flags)$/ __qam_db_create ../qam/qam_method.c /^__qam_db_create(dbp)$/ @@ -4015,13 +4390,13 @@ __qam_delext_log ../qam/qam_auto.c /^__qam_delext_log(dbp, txnp, ret_lsnp, flags __qam_delext_print ../qam/qam_autop.c /^__qam_delext_print(dbenv, dbtp, lsnp, notused2, no/ __qam_delext_read ../qam/qam_auto.c /^__qam_delext_read(dbenv, recbuf, argpp)$/ __qam_delext_recover ../qam/qam_rec.c /^__qam_delext_recover(dbenv, dbtp, lsnp, op, info)$/ -__qam_dirty ../dbinc/qam.h /^#define __qam_dirty(dbp, pgno, pagep, lsnp, flags)/ +__qam_dirty ../dbinc/qam.h /^#define __qam_dirty(dbp, pgno, pagep, lsnp, priori/ __qam_exid ../qam/qam_files.c /^__qam_exid(dbp, fidp, exnum)$/ __qam_extent_names ../qam/qam_files.c /^__qam_extent_names(dbenv, name, namelistp)$/ __qam_fclose ../qam/qam_files.c /^__qam_fclose(dbp, pgnoaddr)$/ __qam_fget ../dbinc/qam.h /^#define __qam_fget(dbp, pgnoaddr, lsnp, flags, add/ -__qam_fprobe ../qam/qam_files.c /^__qam_fprobe(dbp, pgno, txn, addrp, mode, flags)$/ -__qam_fput ../dbinc/qam.h /^#define __qam_fput(dbp, pgno, addrp, flags) \\$/ +__qam_fprobe ../qam/qam_files.c /^__qam_fprobe(dbp, pgno, txn, addrp, mode, priority/ +__qam_fput ../dbinc/qam.h /^#define __qam_fput(dbp, pgno, addrp, priority) \\$/ __qam_fremove ../qam/qam_files.c /^__qam_fremove(dbp, pgnoaddr)$/ __qam_gen_filelist ../qam/qam_files.c /^__qam_gen_filelist(dbp, filelistp)$/ __qam_get_extentsize ../qam/qam_method.c /^__qam_get_extentsize(dbp, q_extentsizep)$/ @@ -4040,7 +4415,7 @@ __qam_mvptr_log ../qam/qam_auto.c /^__qam_mvptr_log(dbp, txnp, ret_lsnp, flags,$ __qam_mvptr_print ../qam/qam_autop.c /^__qam_mvptr_print(dbenv, dbtp, lsnp, notused2, not/ __qam_mvptr_read ../qam/qam_auto.c /^__qam_mvptr_read(dbenv, recbuf, argpp)$/ __qam_mvptr_recover ../qam/qam_rec.c /^__qam_mvptr_recover(dbenv, dbtp, lsnp, op, info)$/ -__qam_nameop ../qam/qam_files.c /^int __qam_nameop(dbp, txn, newname, op)$/ +__qam_nameop ../qam/qam_files.c /^__qam_nameop(dbp, txn, newname, op)$/ __qam_new_file ../qam/qam_open.c /^__qam_new_file(dbp, txn, fhp, name)$/ __qam_open ../qam/qam_open.c /^__qam_open(dbp, txn, name, base_pgno, mode, flags)/ __qam_pgin_out ../qam/qam_conv.c /^__qam_pgin_out(dbenv, pg, pp, cookie)$/ @@ -4062,16 +4437,16 @@ __qam_vrfy_data ../qam/qam_verify.c /^__qam_vrfy_data(dbp, vdp, h, pgno, flags)$ __qam_vrfy_meta ../qam/qam_verify.c /^__qam_vrfy_meta(dbp, vdp, meta, pgno, flags)$/ __qam_vrfy_structure ../qam/qam_verify.c /^__qam_vrfy_structure(dbp, vdp, flags)$/ __qam_vrfy_walkqueue ../qam/qam_verify.c /^__qam_vrfy_walkqueue(dbp, vdp, handle, callback, f/ -__qcursor ../dbinc/qam.h /^struct __qcursor {$/ -__qmpf ../dbinc/qam.h /^ struct __qmpf {$/ -__queue ../dbinc/qam.h /^struct __queue {$/ +__qamc_close ../qam/qam.c /^__qamc_close(dbc, root_pgno, rmroot)$/ +__qamc_del ../qam/qam.c /^__qamc_del(dbc)$/ +__qamc_destroy ../qam/qam.c /^__qamc_destroy(dbc)$/ +__qamc_dup ../qam/qam.c /^__qamc_dup(orig_dbc, new_dbc)$/ +__qamc_get ../qam/qam.c /^__qamc_get(dbc, key, data, flags, pgnop)$/ +__qamc_init ../qam/qam.c /^__qamc_init(dbc)$/ +__qamc_put ../qam/qam.c /^__qamc_put(dbc, key, data, flags, pgnop)$/ __queue_pageinfo ../qam/qam_method.c /^__queue_pageinfo(dbp, firstp, lastp, emptyp, prpag/ -__queued_output ../dbinc/repmgr.h /^struct __queued_output {$/ __ram_add ../btree/bt_recno.c /^__ram_add(dbc, recnop, data, flags, bi_flags)$/ __ram_append ../btree/bt_recno.c /^__ram_append(dbc, key, data)$/ -__ram_c_del ../btree/bt_recno.c /^__ram_c_del(dbc)$/ -__ram_c_get ../btree/bt_recno.c /^__ram_c_get(dbc, key, data, flags, pgnop)$/ -__ram_c_put ../btree/bt_recno.c /^__ram_c_put(dbc, key, data, flags, pgnop)$/ __ram_ca ../btree/bt_recno.c /^__ram_ca(dbc_arg, op, foundp)$/ __ram_ca_delete ../btree/bt_curadj.c /^__ram_ca_delete(dbp, root_pgno, foundp)$/ __ram_get_re_delim ../btree/bt_method.c /^__ram_get_re_delim(dbp, re_delimp)$/ @@ -4093,6 +4468,9 @@ __ram_update ../btree/bt_recno.c /^__ram_update(dbc, recno, can_create)$/ __ram_vrfy_inp ../btree/bt_verify.c /^__ram_vrfy_inp(dbp, vdp, h, pgno, nentriesp, flags/ __ram_vrfy_leaf ../btree/bt_verify.c /^__ram_vrfy_leaf(dbp, vdp, h, pgno, flags)$/ __ram_writeback ../btree/bt_recno.c /^__ram_writeback(dbp)$/ +__ramc_del ../btree/bt_recno.c /^__ramc_del(dbc)$/ +__ramc_get ../btree/bt_recno.c /^__ramc_get(dbc, key, data, flags, pgnop)$/ +__ramc_put ../btree/bt_recno.c /^__ramc_put(dbc, key, data, flags, pgnop)$/ __reg_type ../env/env_stat.c /^__reg_type(t)$/ __rep_abort_prepared ../rep/rep_method.c /^__rep_abort_prepared(dbenv)$/ __rep_allreq ../rep/rep_log.c /^__rep_allreq(dbenv, rp, eid)$/ @@ -4107,31 +4485,37 @@ __rep_check_doreq ../rep/rep_record.c /^__rep_check_doreq(dbenv, rep)$/ __rep_check_uid ../rep/rep_backup.c /^__rep_check_uid(dbenv, fp, endfp, uid)$/ __rep_chk_newfile ../rep/rep_log.c /^__rep_chk_newfile(dbenv, logc, rep, rp, eid)$/ __rep_client_dbinit ../rep/rep_method.c /^__rep_client_dbinit(dbenv, startup, which)$/ -__rep_close ../rep/rep_region.c /^__rep_close(dbenv)$/ -__rep_closefiles ../rep/rep_region.c /^__rep_closefiles(dbenv)$/ +__rep_closefiles ../rep/rep_region.c /^__rep_closefiles(dbenv, do_restored)$/ __rep_cmp_vote ../rep/rep_elect.c /^__rep_cmp_vote(dbenv, rep, eid, lsnp, priority, ge/ __rep_collect_txn ../rep/rep_record.c /^__rep_collect_txn(dbenv, lsnp, lc)$/ __rep_config_map ../rep/rep_method.c /^__rep_config_map(dbenv, inflagsp, outflagsp)$/ __rep_conv_vers ../rep/rep_method.c /^__rep_conv_vers(dbenv, log_ver)$/ -__rep_dbenv_create ../rep/rep_method.c /^__rep_dbenv_create(dbenv)$/ -__rep_dbenv_destroy ../rep/rep_method.c /^__rep_dbenv_destroy(dbenv)$/ -__rep_dbenv_refresh ../rep/rep_region.c /^__rep_dbenv_refresh(dbenv)$/ __rep_do_ckp ../rep/rep_record.c /^__rep_do_ckp(dbenv, rec, rp)$/ __rep_dorecovery ../rep/rep_verify.c /^__rep_dorecovery(dbenv, lsnp, trunclsnp)$/ __rep_egen_init ../rep/rep_region.c /^__rep_egen_init(dbenv, rep)$/ -__rep_elect ../rep/rep_elect.c /^__rep_elect(dbenv, given_nsites, nvotes, eidp, fla/ +__rep_elect ../rep/rep_elect.c /^__rep_elect(dbenv, given_nsites, nvotes, flags)$/ __rep_elect_done ../rep/rep_util.c /^__rep_elect_done(dbenv, rep)$/ -__rep_elect_init ../rep/rep_elect.c /^__rep_elect_init(dbenv, lsnp, nsites, nvotes, begi/ -__rep_elect_master ../rep/rep_elect.c /^__rep_elect_master(dbenv, rep, eidp)$/ +__rep_elect_init ../rep/rep_elect.c /^__rep_elect_init(dbenv, nsites, nvotes, beginp, ot/ +__rep_elect_master ../rep/rep_elect.c /^__rep_elect_master(dbenv, rep)$/ +__rep_env_close ../rep/rep_region.c /^__rep_env_close(dbenv)$/ +__rep_env_create ../rep/rep_method.c /^__rep_env_create(dbenv)$/ +__rep_env_destroy ../rep/rep_method.c /^__rep_env_destroy(dbenv)$/ +__rep_env_refresh ../rep/rep_region.c /^__rep_env_refresh(dbenv)$/ __rep_filedone ../rep/rep_backup.c /^__rep_filedone(dbenv, eid, rep, msgfp, type)$/ __rep_fileinfo_buf ../rep/rep_auto.c /^__rep_fileinfo_buf(buf, max, lenp,$/ __rep_fileinfo_read ../rep/rep_auto.c /^__rep_fileinfo_read(dbenv, recbuf, nextp, argpp)$/ __rep_find_dbs ../rep/rep_backup.c /^__rep_find_dbs(dbenv, fp, fileszp, filelenp, filec/ +__rep_find_entry ../rep/rep_lease.c /^__rep_find_entry(dbenv, rep, eid, lep)$/ __rep_finfo_alloc ../rep/rep_backup.c /^__rep_finfo_alloc(dbenv, rfpsrc, rfpp)$/ +__rep_fire_elected ../rep/rep_elect.c /^__rep_fire_elected(dbenv, rep, egen)$/ +__rep_fire_event ../rep/rep_util.c /^__rep_fire_event(dbenv, event, info)$/ +__rep_fire_newmaster ../rep/rep_record.c /^__rep_fire_newmaster(dbenv, gen, master)$/ +__rep_fire_startupdone ../rep/rep_record.c /^__rep_fire_startupdone(dbenv, gen, master)$/ __rep_flush ../rep/rep_method.c /^__rep_flush(dbenv)$/ +__rep_gen_init ../rep/rep_region.c /^__rep_gen_init(dbenv, rep)$/ __rep_get_config ../rep/rep_method.c /^__rep_get_config(dbenv, which, onp)$/ +__rep_get_file_list ../rep/rep_backup.c /^__rep_get_file_list(dbenv, fhp, dbt)$/ __rep_get_fileinfo ../rep/rep_backup.c /^__rep_get_fileinfo(dbenv, file, subdb, rfp, uid, f/ -__rep_get_gen ../rep/rep_util.c /^__rep_get_gen(dbenv, genp)$/ __rep_get_limit ../rep/rep_method.c /^__rep_get_limit(dbenv, gbytesp, bytesp)$/ __rep_get_nsites ../rep/rep_method.c /^__rep_get_nsites(dbenv, n)$/ __rep_get_priority ../rep/rep_method.c /^__rep_get_priority(dbenv, priority)$/ @@ -4140,11 +4524,20 @@ __rep_get_timeout ../rep/rep_method.c /^__rep_get_timeout(dbenv, which, timeout) __rep_getnext ../rep/rep_record.c /^__rep_getnext(dbenv)$/ __rep_grow_sites ../rep/rep_util.c /^__rep_grow_sites(dbenv, nsites)$/ __rep_init_cleanup ../rep/rep_backup.c /^__rep_init_cleanup(dbenv, rep, force)$/ +__rep_islease_granted ../rep/rep_lease.c /^__rep_islease_granted(dbenv)$/ +__rep_lease_check ../rep/rep_lease.c /^__rep_lease_check(dbenv, refresh)$/ +__rep_lease_expire ../rep/rep_lease.c /^__rep_lease_expire(dbenv, locked)$/ +__rep_lease_grant ../rep/rep_lease.c /^__rep_lease_grant(dbenv, rp, rec, eid)$/ +__rep_lease_refresh ../rep/rep_lease.c /^__rep_lease_refresh(dbenv)$/ +__rep_lease_table_alloc ../rep/rep_lease.c /^__rep_lease_table_alloc(dbenv, nsites)$/ +__rep_lease_waittime ../rep/rep_lease.c /^__rep_lease_waittime(dbenv)$/ __rep_lockout_api ../rep/rep_util.c /^__rep_lockout_api(dbenv, rep)$/ +__rep_lockout_apply ../rep/rep_util.c /^__rep_lockout_apply(dbenv, rep, apply_th)$/ +__rep_lockout_int ../rep/rep_util.c /^__rep_lockout_int(dbenv, rep, fieldp, field_val, m/ __rep_lockout_msg ../rep/rep_util.c /^__rep_lockout_msg(dbenv, rep, msg_th)$/ __rep_log ../rep/rep_log.c /^__rep_log(dbenv, rp, rec, savetime, ret_lsnp)$/ __rep_log_backup ../rep/rep_verify.c /^__rep_log_backup(dbenv, rep, logc, lsn)$/ -__rep_log_setup ../rep/rep_backup.c /^__rep_log_setup(dbenv, rep)$/ +__rep_log_setup ../rep/rep_backup.c /^__rep_log_setup(dbenv, rep, file, version, lsnp)$/ __rep_loggap_req ../rep/rep_log.c /^__rep_loggap_req(dbenv, rep, lsnp, gapflags)$/ __rep_logready ../rep/rep_log.c /^__rep_logready(dbenv, rep, savetime, last_lsnp)$/ __rep_logreq ../rep/rep_log.c /^__rep_logreq(dbenv, rp, rec, eid)$/ @@ -4153,8 +4546,9 @@ __rep_mpf_open ../rep/rep_backup.c /^__rep_mpf_open(dbenv, mpfp, rfp, flags)$/ __rep_msg_from_old ../rep/rep_util.c /^__rep_msg_from_old(version, rectype)$/ __rep_msg_to_old ../rep/rep_util.c /^__rep_msg_to_old(version, rectype)$/ __rep_new_master ../rep/rep_util.c /^__rep_new_master(dbenv, cntrl, eid)$/ -__rep_newfile ../rep/rep_record.c /^__rep_newfile(dbenv, rc, rec, lsnp)$/ -__rep_newmaster_empty ../rep/rep_util.c /^__rep_newmaster_empty(dbenv, lsnp, cntrl, eid)$/ +__rep_newfile ../rep/rep_record.c /^__rep_newfile(dbenv, rc, rec)$/ +__rep_newmaster_empty ../rep/rep_util.c /^__rep_newmaster_empty(dbenv, eid)$/ +__rep_nextfile ../rep/rep_backup.c /^__rep_nextfile(dbenv, eid, rep)$/ __rep_noarchive ../rep/rep_util.c /^__rep_noarchive(dbenv)$/ __rep_open ../rep/rep_region.c /^__rep_open(dbenv)$/ __rep_page ../rep/rep_backup.c /^__rep_page(dbenv, eid, rp, rec)$/ @@ -4164,25 +4558,31 @@ __rep_page_req ../rep/rep_backup.c /^__rep_page_req(dbenv, eid, rec)$/ __rep_page_sendpages ../rep/rep_backup.c /^__rep_page_sendpages(dbenv, eid, msgfp, mpf, dbp)$/ __rep_pggap_req ../rep/rep_backup.c /^__rep_pggap_req(dbenv, rep, reqfp, gapflags)$/ __rep_preclose ../rep/rep_region.c /^__rep_preclose(dbenv)$/ +__rep_print ../rep/rep_util.c /^__rep_print(DB_ENV *dbenv, const char *fmt, ...)$/ __rep_print_all ../rep/rep_stat.c /^__rep_print_all(dbenv, flags)$/ __rep_print_logmsg ../rep/rep_util.c /^__rep_print_logmsg(dbenv, logdbt, lsnp)$/ __rep_print_message ../rep/rep_util.c /^__rep_print_message(dbenv, eid, rp, str, flags)$/ __rep_print_stats ../rep/rep_stat.c /^__rep_print_stats(dbenv, flags)$/ -__rep_process_message ../rep/rep_record.c /^__rep_process_message(dbenv, control, rec, eidp, r/ -__rep_process_rec ../rep/rep_record.c /^__rep_process_rec(dbenv, rp, rec, typep, ret_lsnp)/ +__rep_process_message ../rep/rep_record.c /^__rep_process_message(dbenv, control, rec, eid, re/ +__rep_process_rec ../rep/rep_record.c /^__rep_process_rec(dbenv, rp, rec, ret_tsp, ret_lsn/ __rep_process_txn ../rep/rep_record.c /^__rep_process_txn(dbenv, rec)$/ __rep_queue_filedone ../rep/rep_backup.c /^__rep_queue_filedone(dbenv, rep, rfp)$/ -__rep_region_destroy ../rep/rep_region.c /^__rep_region_destroy(dbenv)$/ __rep_remfirst ../rep/rep_record.c /^__rep_remfirst(dbenv, cntrl, rec)$/ -__rep_remove_dbs ../rep/rep_backup.c /^__rep_remove_dbs(dbenv)$/ +__rep_remove_all ../rep/rep_backup.c /^__rep_remove_all(dbenv, rec)$/ +__rep_remove_by_list ../rep/rep_backup.c /^__rep_remove_by_list(dbenv, filelist, count)$/ +__rep_remove_by_prefix ../rep/rep_backup.c /^__rep_remove_by_prefix(dbenv, dir, prefix, pref_le/ +__rep_remove_file ../rep/rep_backup.c /^__rep_remove_file(dbenv, uid, name, type, flags)$/ +__rep_remove_init_file ../rep/rep_backup.c /^__rep_remove_init_file(dbenv)$/ __rep_remove_logs ../rep/rep_backup.c /^__rep_remove_logs(dbenv)$/ __rep_resend_req ../rep/rep_record.c /^__rep_resend_req(dbenv, rereq)$/ +__rep_reset_init ../rep/rep_backup.c /^__rep_reset_init(dbenv)$/ __rep_restore_prepared ../rep/rep_method.c /^__rep_restore_prepared(dbenv)$/ __rep_send_bulk ../rep/rep_util.c /^__rep_send_bulk(dbenv, bulkp, ctlflags)$/ __rep_send_message ../rep/rep_util.c /^__rep_send_message(dbenv, eid, rtype, lsnp, dbt, c/ -__rep_send_throttle ../rep/rep_util.c /^__rep_send_throttle(dbenv, eid, repth, flags)$/ +__rep_send_throttle ../rep/rep_util.c /^__rep_send_throttle(dbenv, eid, repth, flags, ctlf/ __rep_send_vote ../rep/rep_util.c /^__rep_send_vote(dbenv, lsnp, nsites, nvotes, pri, / __rep_set_config ../rep/rep_method.c /^__rep_set_config(dbenv, which, on)$/ +__rep_set_lease ../rep/rep_method.c /^__rep_set_lease(dbenv, clock_scale_factor, flags)$/ __rep_set_limit ../rep/rep_method.c /^__rep_set_limit(dbenv, gbytes, bytes)$/ __rep_set_nsites ../rep/rep_method.c /^__rep_set_nsites(dbenv, n)$/ __rep_set_priority ../rep/rep_method.c /^__rep_set_priority(dbenv, priority)$/ @@ -4198,6 +4598,7 @@ __rep_stat_print_pp ../rep/rep_stat.c /^__rep_stat_print_pp(dbenv, flags)$/ __rep_sync ../rep/rep_method.c /^__rep_sync(dbenv, flags)$/ __rep_tally ../rep/rep_elect.c /^__rep_tally(dbenv, rep, eid, countp, egen, vtoff)$/ __rep_update_buf ../rep/rep_auto.c /^__rep_update_buf(buf, max, lenp,$/ +__rep_update_grant ../rep/rep_lease.c /^__rep_update_grant(dbenv, ts)$/ __rep_update_read ../rep/rep_auto.c /^__rep_update_read(dbenv, recbuf, nextp, argpp)$/ __rep_update_req ../rep/rep_backup.c /^__rep_update_req(dbenv, eid)$/ __rep_update_setup ../rep/rep_backup.c /^__rep_update_setup(dbenv, eid, rp, rec)$/ @@ -4205,11 +4606,12 @@ __rep_verify ../rep/rep_verify.c /^__rep_verify(dbenv, rp, rec, eid, savetime)$/ __rep_verify_fail ../rep/rep_verify.c /^__rep_verify_fail(dbenv, rp, eid)$/ __rep_verify_match ../rep/rep_verify.c /^__rep_verify_match(dbenv, reclsnp, savetime)$/ __rep_verify_req ../rep/rep_verify.c /^__rep_verify_req(dbenv, rp, eid)$/ -__rep_vote1 ../rep/rep_elect.c /^__rep_vote1(dbenv, rp, rec, eidp)$/ -__rep_vote2 ../rep/rep_elect.c /^__rep_vote2(dbenv, rec, eidp)$/ -__rep_wait ../rep/rep_elect.c /^__rep_wait(dbenv, timeout, eidp, flags)$/ +__rep_vote1 ../rep/rep_elect.c /^__rep_vote1(dbenv, rp, rec, eid)$/ +__rep_vote2 ../rep/rep_elect.c /^__rep_vote2(dbenv, rec, eid)$/ +__rep_wait ../rep/rep_elect.c /^__rep_wait(dbenv, timeoutp, eidp, full_elect, flag/ __rep_walk_dir ../rep/rep_backup.c /^__rep_walk_dir(dbenv, dir, fp, origfp, fileszp, fi/ __rep_write_egen ../rep/rep_region.c /^__rep_write_egen(dbenv, egen)$/ +__rep_write_gen ../rep/rep_region.c /^__rep_write_gen(dbenv, gen)$/ __rep_write_page ../rep/rep_backup.c /^__rep_write_page(dbenv, rep, msgfp)$/ __repmgr_accept ../repmgr/repmgr_sel.c /^__repmgr_accept(dbenv)$/ __repmgr_add_buffer ../repmgr/repmgr_util.c /^__repmgr_add_buffer(v, address, length)$/ @@ -4228,11 +4630,10 @@ __repmgr_close_sync ../repmgr/repmgr_posix.c /^__repmgr_close_sync(dbenv)$/ __repmgr_compute_wait_deadline ../repmgr/repmgr_posix.c /^__repmgr_compute_wait_deadline(dbenv, result, wait/ __repmgr_connect ../repmgr/repmgr_sel.c /^__repmgr_connect(dbenv, socket_result, site)$/ __repmgr_connect_site ../repmgr/repmgr_sel.c /^__repmgr_connect_site(dbenv, eid)$/ -__repmgr_connection ../dbinc/repmgr.h /^struct __repmgr_connection {$/ -__repmgr_dbenv_create ../repmgr/repmgr_method.c /^__repmgr_dbenv_create(dbenv, db_rep)$/ -__repmgr_dbenv_destroy ../repmgr/repmgr_method.c /^__repmgr_dbenv_destroy(dbenv, db_rep)$/ __repmgr_elect_main ../repmgr/repmgr_elect.c /^__repmgr_elect_main(dbenv)$/ __repmgr_elect_thread ../repmgr/repmgr_elect.c /^__repmgr_elect_thread(args)$/ +__repmgr_env_create ../repmgr/repmgr_method.c /^__repmgr_env_create(dbenv, db_rep)$/ +__repmgr_env_destroy ../repmgr/repmgr_method.c /^__repmgr_env_destroy(dbenv, db_rep)$/ __repmgr_find_site ../repmgr/repmgr_net.c /^__repmgr_find_site(dbenv, host, port)$/ __repmgr_first_try_connections ../repmgr/repmgr_sel.c /^__repmgr_first_try_connections(dbenv)$/ __repmgr_format_eid_loc ../repmgr/repmgr_util.c /^__repmgr_format_eid_loc(db_rep, eid, buffer)$/ @@ -4240,6 +4641,7 @@ __repmgr_format_site_loc ../repmgr/repmgr_util.c /^__repmgr_format_site_loc(site __repmgr_get_ack_policy ../repmgr/repmgr_method.c /^__repmgr_get_ack_policy(dbenv, policy)$/ __repmgr_get_nsites ../repmgr/repmgr_util.c /^__repmgr_get_nsites(db_rep)$/ __repmgr_getaddr ../repmgr/repmgr_net.c /^__repmgr_getaddr(dbenv, host, port, flags, result)/ +__repmgr_handle_event ../repmgr/repmgr_msg.c /^__repmgr_handle_event(dbenv, event, info)$/ __repmgr_init_election ../repmgr/repmgr_elect.c /^__repmgr_init_election(dbenv, initial_operation)$/ __repmgr_init_sync ../repmgr/repmgr_posix.c /^__repmgr_init_sync(dbenv, db_rep)$/ __repmgr_iovec_init ../repmgr/repmgr_util.c /^__repmgr_iovec_init(v)$/ @@ -4256,7 +4658,9 @@ __repmgr_new_connection ../repmgr/repmgr_util.c /^__repmgr_new_connection(dbenv, __repmgr_new_site ../repmgr/repmgr_util.c /^__repmgr_new_site(dbenv, sitep, addr, state)$/ __repmgr_pack_netaddr ../repmgr/repmgr_net.c /^__repmgr_pack_netaddr(dbenv, host, port, list, add/ __repmgr_prepare_my_addr ../repmgr/repmgr_util.c /^__repmgr_prepare_my_addr(dbenv, dbt)$/ -__repmgr_print_stats ../repmgr/repmgr_stat.c /^__repmgr_print_stats(dbenv)$/ +__repmgr_print_all ../repmgr/repmgr_stat.c /^__repmgr_print_all(dbenv, flags)$/ +__repmgr_print_sites ../repmgr/repmgr_stat.c /^__repmgr_print_sites(dbenv)$/ +__repmgr_print_stats ../repmgr/repmgr_stat.c /^__repmgr_print_stats(dbenv, flags)$/ __repmgr_queue_create ../repmgr/repmgr_queue.c /^__repmgr_queue_create(dbenv, db_rep)$/ __repmgr_queue_destroy ../repmgr/repmgr_queue.c /^__repmgr_queue_destroy(dbenv)$/ __repmgr_queue_get ../repmgr/repmgr_queue.c /^__repmgr_queue_get(dbenv, msgp)$/ @@ -4264,10 +4668,9 @@ __repmgr_queue_put ../repmgr/repmgr_queue.c /^__repmgr_queue_put(dbenv, msg)$/ __repmgr_queue_size ../repmgr/repmgr_queue.c /^__repmgr_queue_size(dbenv)$/ __repmgr_read_from_site ../repmgr/repmgr_sel.c /^__repmgr_read_from_site(dbenv, conn)$/ __repmgr_readv ../repmgr/repmgr_posix.c /^__repmgr_readv(fd, iovec, buf_count, byte_count_p)/ +__repmgr_repstart ../repmgr/repmgr_util.c /^__repmgr_repstart(dbenv, flags)$/ __repmgr_reset_for_reading ../repmgr/repmgr_util.c /^__repmgr_reset_for_reading(con)$/ -__repmgr_retry ../dbinc/repmgr.h /^struct __repmgr_retry {$/ __repmgr_retry_connections ../repmgr/repmgr_sel.c /^__repmgr_retry_connections(dbenv)$/ -__repmgr_runnable ../dbinc/repmgr.h /^struct __repmgr_runnable {$/ __repmgr_schedule_connection_attempt ../repmgr/repmgr_util.c /^__repmgr_schedule_connection_attempt(dbenv, eid, i/ __repmgr_select_loop ../repmgr/repmgr_posix.c /^__repmgr_select_loop(dbenv)$/ __repmgr_select_thread ../repmgr/repmgr_sel.c /^__repmgr_select_thread(args)$/ @@ -4278,18 +4681,21 @@ __repmgr_send_internal ../repmgr/repmgr_net.c /^__repmgr_send_internal(dbenv, co __repmgr_send_one ../repmgr/repmgr_net.c /^__repmgr_send_one(dbenv, conn, msg_type, control, / __repmgr_set_ack_policy ../repmgr/repmgr_method.c /^__repmgr_set_ack_policy(dbenv, policy)$/ __repmgr_set_local_site ../repmgr/repmgr_method.c /^__repmgr_set_local_site(dbenv, host, port, flags)$/ -__repmgr_set_nonblocking ../repmgr/repmgr_posix.c /^int __repmgr_set_nonblocking(fd)$/ +__repmgr_set_nonblocking ../repmgr/repmgr_posix.c /^__repmgr_set_nonblocking(fd)$/ __repmgr_signal ../repmgr/repmgr_posix.c /^__repmgr_signal(v)$/ -__repmgr_site ../dbinc/repmgr.h /^struct __repmgr_site {$/ __repmgr_site_list ../repmgr/repmgr_stat.c /^__repmgr_site_list(dbenv, countp, listp)$/ __repmgr_start ../repmgr/repmgr_method.c /^__repmgr_start(dbenv, nthreads, flags)$/ __repmgr_stash_generation ../repmgr/repmgr_msg.c /^__repmgr_stash_generation(dbenv)$/ +__repmgr_stat ../repmgr/repmgr_stat.c /^__repmgr_stat(dbenv, statp, flags)$/ +__repmgr_stat_pp ../repmgr/repmgr_stat.c /^__repmgr_stat_pp(dbenv, statp, flags)$/ +__repmgr_stat_print ../repmgr/repmgr_stat.c /^__repmgr_stat_print(dbenv, flags)$/ +__repmgr_stat_print_pp ../repmgr/repmgr_stat.c /^__repmgr_stat_print_pp(dbenv, flags)$/ __repmgr_stop_threads ../repmgr/repmgr_method.c /^__repmgr_stop_threads(dbenv)$/ __repmgr_thread_failure ../repmgr/repmgr_util.c /^__repmgr_thread_failure(dbenv, why)$/ __repmgr_thread_join ../repmgr/repmgr_posix.c /^__repmgr_thread_join(thread)$/ __repmgr_thread_start ../repmgr/repmgr_posix.c /^__repmgr_thread_start(dbenv, runnable)$/ -__repmgr_timeval_cmp ../repmgr/repmgr_util.c /^__repmgr_timeval_cmp(a, b)$/ -__repmgr_timeval_diff_current ../repmgr/repmgr_posix.c /^__repmgr_timeval_diff_current(dbenv, when, result)/ +__repmgr_timespec_diff_now ../repmgr/repmgr_util.c /^__repmgr_timespec_diff_now(dbenv, when, result)$/ +__repmgr_try_one ../repmgr/repmgr_sel.c /^__repmgr_try_one(dbenv, eid)$/ __repmgr_unlock_mutex ../repmgr/repmgr_posix.c /^__repmgr_unlock_mutex(mutex)$/ __repmgr_update_consumed ../repmgr/repmgr_util.c /^__repmgr_update_consumed(v, byte_count)$/ __repmgr_wake_main_thread ../repmgr/repmgr_posix.c /^__repmgr_wake_main_thread(dbenv)$/ @@ -4321,9 +4727,9 @@ __txn_abort ../txn/txn.c /^__txn_abort(txn)$/ __txn_abort_pp ../txn/txn.c /^__txn_abort_pp(txn)$/ __txn_abort_proc ../rpc_server/c/db_server_proc.c /^__txn_abort_proc(txnpcl_id, replyp)$/ __txn_activekids ../txn/txn.c /^__txn_activekids(dbenv, rectype, txn)$/ -__txn_add_buffer ../txn/txn_region.c /^int __txn_add_buffer(dbenv, td)$/ +__txn_add_buffer ../txn/txn_region.c /^__txn_add_buffer(dbenv, td)$/ __txn_begin ../txn/txn.c /^__txn_begin(dbenv, parent, txnpp, flags)$/ -__txn_begin_int ../txn/txn.c /^__txn_begin_int(txn, internal)$/ +__txn_begin_int ../txn/txn.c /^__txn_begin_int(txn)$/ __txn_begin_pp ../txn/txn.c /^__txn_begin_pp(dbenv, parent, txnpp, flags)$/ __txn_checkpoint ../txn/txn_chkpt.c /^__txn_checkpoint(dbenv, kbytes, minutes, flags)$/ __txn_checkpoint_pp ../txn/txn_chkpt.c /^__txn_checkpoint_pp(dbenv, kbytes, minutes, flags)/ @@ -4345,16 +4751,16 @@ __txn_commit_proc ../rpc_server/c/db_server_proc.c /^__txn_commit_proc(txnpcl_id __txn_compare ../txn/txn_stat.c /^__txn_compare(a1, b1)$/ __txn_compensate_begin ../txn/txn.c /^__txn_compensate_begin(dbenv, txnpp)$/ __txn_continue ../txn/txn.c /^__txn_continue(env, txn, td)$/ -__txn_dbenv_create ../txn/txn_method.c /^__txn_dbenv_create(dbenv)$/ -__txn_dbenv_destroy ../txn/txn_method.c /^__txn_dbenv_destroy(dbenv)$/ -__txn_dbenv_refresh ../txn/txn_region.c /^__txn_dbenv_refresh(dbenv)$/ __txn_discard ../txn/txn.c /^__txn_discard(txn, flags)$/ __txn_discard_int ../txn/txn.c /^__txn_discard_int(txn, flags)$/ __txn_discard_proc ../rpc_server/c/db_server_proc.c /^__txn_discard_proc(txnpcl_id, flags, replyp)$/ __txn_dispatch_undo ../txn/txn.c /^__txn_dispatch_undo(dbenv, txn, rdbt, key_lsn, txn/ __txn_doevents ../txn/txn_util.c /^__txn_doevents(dbenv, txn, opcode, preprocess)$/ +__txn_dref_fname ../txn/txn_util.c /^__txn_dref_fname(dbenv, txn)$/ __txn_end ../txn/txn.c /^__txn_end(txn, is_commit)$/ -__txn_event ../txn/txn_util.c /^struct __txn_event {$/ +__txn_env_create ../txn/txn_method.c /^__txn_env_create(dbenv)$/ +__txn_env_destroy ../txn/txn_method.c /^__txn_env_destroy(dbenv)$/ +__txn_env_refresh ../txn/txn_region.c /^__txn_env_refresh(dbenv)$/ __txn_failchk ../txn/txn_failchk.c /^__txn_failchk(dbenv)$/ __txn_findlastckp ../txn/txn_region.c /^__txn_findlastckp(dbenv, lsnp, max_lsn)$/ __txn_force_abort ../txn/txn.c /^__txn_force_abort(dbenv, buffer)$/ @@ -4372,16 +4778,16 @@ __txn_init_print ../txn/txn_autop.c /^__txn_init_print(dbenv, dtabp, dtabsizep)$ __txn_init_recover ../txn/txn_auto.c /^__txn_init_recover(dbenv, dtabp, dtabsizep)$/ __txn_isvalid ../txn/txn.c /^__txn_isvalid(txn, op)$/ __txn_lockevent ../txn/txn_util.c /^__txn_lockevent(dbenv, txn, dbp, lock, locker)$/ -__txn_logrec ../dbinc/txn.h /^struct __txn_logrec {$/ __txn_map_gid ../txn/txn_recover.c /^__txn_map_gid(dbenv, gid, tdp, offp)$/ __txn_oldest_reader ../txn/txn_region.c /^__txn_oldest_reader(dbenv, lsnp)$/ -__txn_open ../txn/txn_region.c /^__txn_open(dbenv)$/ +__txn_open ../txn/txn_region.c /^__txn_open(dbenv, create_ok)$/ __txn_openfiles ../txn/txn_recover.c /^__txn_openfiles(dbenv, min, force)$/ __txn_preclose ../txn/txn.c /^__txn_preclose(dbenv)$/ __txn_prepare ../txn/txn.c /^__txn_prepare(txn, gid)$/ __txn_prepare_proc ../rpc_server/c/db_server_proc.c /^__txn_prepare_proc(txnpcl_id, gid, replyp)$/ __txn_print_all ../txn/txn_stat.c /^__txn_print_all(dbenv, flags)$/ __txn_print_stats ../txn/txn_stat.c /^__txn_print_stats(dbenv, flags)$/ +__txn_record_fname ../txn/txn_util.c /^__txn_record_fname(dbenv, txn, fname)$/ __txn_recover ../txn/txn_recover.c /^__txn_recover(dbenv, preplist, count, retp, flags)/ __txn_recover_pp ../txn/txn_recover.c /^__txn_recover_pp(dbenv, preplist, count, retp, fla/ __txn_recycle_id ../txn/txn.c /^__txn_recycle_id(dbenv)$/ @@ -4389,6 +4795,7 @@ __txn_recycle_log ../txn/txn_auto.c /^__txn_recycle_log(dbenv, txnp, ret_lsnp, f __txn_recycle_print ../txn/txn_autop.c /^__txn_recycle_print(dbenv, dbtp, lsnp, notused2, n/ __txn_recycle_read ../txn/txn_auto.c /^__txn_recycle_read(dbenv, recbuf, argpp)$/ __txn_recycle_recover ../txn/txn_rec.c /^__txn_recycle_recover(dbenv, dbtp, lsnp, op, info)/ +__txn_region_mutex_count ../txn/txn_region.c /^__txn_region_mutex_count(dbenv)$/ __txn_region_size ../txn/txn_region.c /^__txn_region_size(dbenv)$/ __txn_regop_42_print ../txn/txn_autop.c /^__txn_regop_42_print(dbenv, dbtp, lsnp, notused2, / __txn_regop_42_read ../txn/txn_auto.c /^__txn_regop_42_read(dbenv, recbuf, argpp)$/ @@ -4399,7 +4806,7 @@ __txn_regop_read ../txn/txn_auto.c /^__txn_regop_read(dbenv, recbuf, argpp)$/ __txn_regop_recover ../txn/txn_rec.c /^__txn_regop_recover(dbenv, dbtp, lsnp, op, info)$/ __txn_remevent ../txn/txn_util.c /^__txn_remevent(dbenv, txn, name, fileid, inmem)$/ __txn_remlock ../txn/txn_util.c /^__txn_remlock(dbenv, txn, lock, locker)$/ -__txn_remove_buffer ../txn/txn_region.c /^int __txn_remove_buffer(dbenv, td, hash_mtx)$/ +__txn_remove_buffer ../txn/txn_region.c /^__txn_remove_buffer(dbenv, td, hash_mtx)$/ __txn_remrem ../txn/txn_util.c /^__txn_remrem(dbenv, txn, name)$/ __txn_reset ../txn/txn.c /^__txn_reset(dbenv)$/ __txn_restore_txn ../txn/txn_rec.c /^__txn_restore_txn(dbenv, lsnp, argp)$/ @@ -4422,9 +4829,6 @@ __txn_xa_regop_read ../txn/txn_auto.c /^__txn_xa_regop_read(dbenv, recbuf, argpp __txn_xa_regop_recover ../txn/txn_rec.c /^__txn_xa_regop_recover(dbenv, dbtp, lsnp, op, info/ __ua_memcpy ../os/os_alloc.c /^__ua_memcpy(dst, src, len)$/ __usermem ../log/log_archive.c /^__usermem(dbenv, listp)$/ -__vrfy_childinfo ../dbinc/db_verify.h /^struct __vrfy_childinfo {$/ -__vrfy_dbinfo ../dbinc/db_verify.h /^struct __vrfy_dbinfo {$/ -__vrfy_pageinfo ../dbinc/db_verify.h /^struct __vrfy_pageinfo {$/ __vx_fsync ../os/os_fsync.c /^__vx_fsync(fd)$/ __xa_close ../xa/xa_db.c /^__xa_close(dbp, flags)$/ __xa_cursor ../xa/xa_db.c /^__xa_cursor(dbp, txn, dbcp, flags)$/ @@ -4436,35 +4840,22 @@ __xa_put ../xa/xa_db.c /^__xa_put(dbp, txn, key, data, flags)$/ __xa_put_txn ../xa/xa.c /^__xa_put_txn(dbenv, txnp)$/ __xa_set_txn ../xa/xa_db.c /^__xa_set_txn(dbp, txnpp, no_xa_txn)$/ __xa_truncate ../xa/xa_db.c /^__xa_truncate(dbp, txn, countp, flags)$/ -__xa_txn ../dbinc/db.in /^ struct __xa_txn { \/* XA Active Transactions. *\// -_app_dispatch_intercept ../cxx/cxx_env.cpp /^int DbEnv::_app_dispatch_intercept(DB_ENV *env, DB/ _app_dispatch_intercept_c ../cxx/cxx_env.cpp /^int _app_dispatch_intercept_c(DB_ENV *env, DBT *db/ _debug_check ../tcl/tcl_internal.c /^_debug_check()$/ -_event_func_intercept ../cxx/cxx_env.cpp /^void DbEnv::_event_func_intercept($/ _event_func_intercept_c ../cxx/cxx_env.cpp /^void _event_func_intercept_c(DB_ENV *env, u_int32_/ -_exported ../dbinc/db_cxx.in /^# define _exported __declspec(dllexport) / -_feedback_intercept ../cxx/cxx_env.cpp /^void DbEnv::_feedback_intercept(DB_ENV *env, int o/ +_exported ../dbinc/db_cxx.in 131 _feedback_intercept_c ../cxx/cxx_env.cpp /^void _feedback_intercept_c(DB_ENV *env, int opcode/ -_isalive_intercept ../cxx/cxx_env.cpp /^int DbEnv::_isalive_intercept($/ _isalive_intercept_c ../cxx/cxx_env.cpp /^int _isalive_intercept_c($/ -_paniccall_intercept ../cxx/cxx_env.cpp /^void DbEnv::_paniccall_intercept(DB_ENV *env, int / _paniccall_intercept_c ../cxx/cxx_env.cpp /^void _paniccall_intercept_c(DB_ENV *env, int errva/ -_rep_send_intercept ../cxx/cxx_env.cpp /^int DbEnv::_rep_send_intercept(DB_ENV *env, const / _rep_send_intercept_c ../cxx/cxx_env.cpp /^int _rep_send_intercept_c(DB_ENV *env, const DBT */ -_stream_error_function ../cxx/cxx_env.cpp /^void DbEnv::_stream_error_function($/ _stream_error_function_c ../cxx/cxx_env.cpp /^void _stream_error_function_c(const DB_ENV *env,$/ -_stream_message_function ../cxx/cxx_env.cpp /^void DbEnv::_stream_message_function(const DB_ENV / _stream_message_function_c ../cxx/cxx_env.cpp /^void _stream_message_function_c(const DB_ENV *env,/ -_thread_id_intercept ../cxx/cxx_env.cpp /^void DbEnv::_thread_id_intercept(DB_ENV *env,$/ _thread_id_intercept_c ../cxx/cxx_env.cpp /^void _thread_id_intercept_c(DB_ENV *env, pid_t *pi/ -_thread_id_string_intercept ../cxx/cxx_env.cpp /^char *DbEnv::_thread_id_string_intercept(DB_ENV *e/ _thread_id_string_intercept_c ../cxx/cxx_env.cpp /^char *_thread_id_string_intercept_c(DB_ENV *env, p/ -abort ../clib/abort.c /^abort()$/ ack_message ../repmgr/repmgr_msg.c /^ack_message(dbenv, generation, lsn)$/ add_home ../rpc_server/c/db_server_util.c /^add_home(home)$/ add_passwd ../rpc_server/c/db_server_util.c /^add_passwd(passwd)$/ allocate_wait_slot ../repmgr/repmgr_windows.c /^allocate_wait_slot(dbenv, resultp)$/ -archopts ../tcl/tcl_log.c /^ enum archopts {$/ atoi ../clib/atoi.c /^atoi(str)$/ atol ../clib/atol.c /^atol(str)$/ bdb_DbOpen ../tcl/tcl_db_pkg.c /^bdb_DbOpen(interp, objc, objv, ip, dbp)$/ @@ -4482,41 +4873,27 @@ bdb_NdbmOpen ../tcl/tcl_compat.c /^bdb_NdbmOpen(interp, objc, objv, dbpp)$/ bdb_RandCommand ../tcl/tcl_util.c /^bdb_RandCommand(interp, objc, objv)$/ bdb_SeqOpen ../tcl/tcl_db_pkg.c /^bdb_SeqOpen(interp, objc, objv, ip, seqp)$/ bdb_Version ../tcl/tcl_db_pkg.c /^bdb_Version(interp, objc, objv)$/ -bdbenvopen ../tcl/tcl_db_pkg.c /^ enum bdbenvopen {$/ -bdbmv ../tcl/tcl_db_pkg.c /^ enum bdbmv {$/ -bdbopen ../tcl/tcl_db_pkg.c /^ enum bdbopen {$/ -bdbrem ../tcl/tcl_db_pkg.c /^ enum bdbrem {$/ -bdbupg ../tcl/tcl_db_pkg.c /^ enum bdbupg {$/ -bdbver ../tcl/tcl_db_pkg.c /^ enum bdbver {$/ -bdbvrfy ../tcl/tcl_db_pkg.c /^ enum bdbvrfy {$/ berkdb_Cmd ../tcl/tcl_db_pkg.c /^berkdb_Cmd(notused, interp, objc, objv)$/ -berkdbcmds ../tcl/tcl_db_pkg.c /^ enum berkdbcmds {$/ -blk ../hmac/sha1.c /^#define blk(i) (block->l[i&15] = rol(block->l[(i+1/ -blk0 ../hmac/sha1.c /^#define blk0(i) is_bigendian ? block->l[i] : \\$/ -ca_recno_arg ../dbinc/btree.h /^} ca_recno_arg;$/ -cdsgroup_begin ../cxx/cxx_env.cpp /^int DbEnv::cdsgroup_begin(DbTxn **tid)$/ -cipherInstance ../crypto/rijndael/rijndael-api-fst.h /^} cipherInstance;$/ -cleanup ../cxx/cxx_db.cpp /^\/\/ private method to cleanup after destructor or/ -close ../cxx/cxx_env.cpp /^int DbEnv::close(u_int32_t flags)$/ +blk ../hmac/sha1.c /^#define blk(i) (block->l[i&15] = rol(block->l[(i+1/ +blk0 ../hmac/sha1.c /^#define blk0(i) is_bigendian ? block->l[i] : \\$/ +bt_compare_fcn_type ../dbinc/db_cxx.in 158 +bt_prefix_fcn_type ../dbinc/db_cxx.in 160 +ca_recno_arg ../dbinc/btree.h 88 closesocket ../dbinc/repmgr.h /^#define closesocket(fd) close(fd)$/ -commitopt ../tcl/tcl_txn.c /^ enum commitopt {$/ -cond_var_t ../dbinc/repmgr.h /^typedef HANDLE cond_var_t;$/ -confonoff ../tcl/tcl_rep.c /^ enum confonoff {$/ -confwhich ../tcl/tcl_rep.c /^ enum confwhich {$/ -const ../dbinc/db_185.in /^#define const$/ -ct_anyp ../dbinc/db_server_int.h /^#define ct_anyp handle_u.anyp$/ -ct_dbc ../dbinc/db_server_int.h /^#define ct_dbc handle_u.dbc$/ -ct_dbdata ../dbinc/db_server_int.h /^typedef struct ct_dbdata ct_dbdata;$/ -ct_dbdp ../dbinc/db_server_int.h /^#define ct_dbdp private_u.dbdp$/ -ct_dbp ../dbinc/db_server_int.h /^#define ct_dbp handle_u.dbp$/ -ct_entry ../dbinc/db_server_int.h /^typedef struct ct_entry ct_entry;$/ -ct_envdata ../dbinc/db_server_int.h /^typedef struct ct_envdata ct_envdata;$/ -ct_envdp ../dbinc/db_server_int.h /^#define ct_envdp private_u.envdp$/ -ct_envp ../dbinc/db_server_int.h /^#define ct_envp handle_u.envp$/ -ct_txnp ../dbinc/db_server_int.h /^#define ct_txnp handle_u.txnp$/ -data ../dbinc/tcl_db.h /^ union data {$/ -data2 ../dbinc/tcl_db.h /^ union data2 {$/ -datum ../dbinc/db.in /^} datum;$/ +cond_var_t ../dbinc/repmgr.h 28 +const ../dbinc/db_185.in 57 +ct_anyp ../dbinc/db_server_int.h 129 +ct_dbc ../dbinc/db_server_int.h 128 +ct_dbdata ../dbinc/db_server_int.h 68 +ct_dbdp ../dbinc/db_server_int.h 132 +ct_dbp ../dbinc/db_server_int.h 127 +ct_entry ../dbinc/db_server_int.h 92 +ct_envdata ../dbinc/db_server_int.h 67 +ct_envdp ../dbinc/db_server_int.h 131 +ct_envp ../dbinc/db_server_int.h 125 +ct_txnp ../dbinc/db_server_int.h 126 +data_off ../mutex/test_mutex.c /^data_off(addr, fhp)$/ +data_on ../mutex/test_mutex.c /^data_on(gm_addrp, tm_addrp, lm_addrp, fhpp, init)$/ db185_close ../db185/db185.c /^db185_close(db185p)$/ db185_compare ../db185/db185.c /^db185_compare(dbp, a, b)$/ db185_del ../db185/db185.c /^db185_del(db185p, key185, flags)$/ @@ -4528,7 +4905,7 @@ db185_put ../db185/db185.c /^db185_put(db185p, key185, data185, flags)$/ db185_seq ../db185/db185.c /^db185_seq(db185p, key185, data185, flags)$/ db185_sync ../db185/db185.c /^db185_sync(db185p, flags)$/ db_Cmd ../tcl/tcl_db.c /^db_Cmd(clientData, interp, objc, objv)$/ -db_ca_mode ../dbinc/btree.h /^} db_ca_mode;$/ +db_ca_mode ../dbinc/btree.h 326 db_create ../db/db_method.c /^db_create(dbpp, dbenv, flags)$/ db_env_create ../env/env_method.c /^db_env_create(dbenvpp, flags)$/ db_env_set_func_close ../os/os_method.c /^db_env_set_func_close(func_close)$/ @@ -4553,41 +4930,29 @@ db_env_set_func_unlink ../os/os_method.c /^db_env_set_func_unlink(func_unlink)$/ db_env_set_func_unmap ../os/os_method.c /^db_env_set_func_unmap(func_unmap)$/ db_env_set_func_write ../os/os_method.c /^db_env_set_func_write(func_write)$/ db_env_set_func_yield ../os/os_method.c /^db_env_set_func_yield(func_yield)$/ -db_error_set_t ../dbinc/debug.h /^} db_error_set_t;$/ -db_ham_mode ../dbinc/hash.h /^} db_ham_mode;$/ -db_indx_t ../dbinc/db.in /^typedef u_int16_t db_indx_t; \/* Page offset type./ -db_iovec_t ../dbinc/repmgr.h /^typedef WSABUF db_iovec_t;$/ -db_limbo_state ../dbinc/db_dispatch.h /^} db_limbo_state;$/ -db_lockmode_t ../dbinc/db.in /^} db_lockmode_t;$/ -db_lockop_t ../dbinc/db.in /^} db_lockop_t;$/ -db_mutex_t ../dbinc/db.in /^typedef u_int32_t db_mutex_t;$/ -db_pgno_t ../dbinc/db.in /^typedef u_int32_t db_pgno_t; \/* Page number type./ -db_recno_t ../dbinc/db.in /^typedef u_int32_t db_recno_t; \/* Record number ty/ -db_recops ../dbinc/db.in /^} db_recops;$/ -db_ret_t ../libdb_java/db_java_wrap.c /^typedef int db_ret_t;$/ +db_error_set_t ../dbinc/debug.h 73 +db_free_fcn_type ../dbinc/db_cxx.in 156 +db_ham_curadj ../dbinc/hash.h 149 +db_ham_mode ../dbinc/hash.h 158 +db_indx_t ../dbinc/db.in 117 +db_iovec_t ../dbinc/repmgr.h 29 +db_limbo_state ../dbinc/db_dispatch.h 111 +db_lockmode_t ../dbinc/db.in 518 +db_lockop_t ../dbinc/db.in 535 +db_malloc_fcn_type ../dbinc/db_cxx.in 152 +db_mutex_t ../dbinc/db.in 433 +db_pgno_t ../dbinc/db.in 116 +db_realloc_fcn_type ../dbinc/db_cxx.in 154 +db_recno_t ../dbinc/db.in 120 +db_recops ../dbinc/db.in 951 +db_ret_t ../libdb_java/db_java_wrap.c 2315 db_sequence_create ../sequence/sequence.c /^db_sequence_create(seqp, dbp, flags)$/ -db_status_t ../dbinc/db.in /^}db_status_t;$/ +db_status_t ../dbinc/db.in 549 db_strerror ../common/db_err.c /^db_strerror(error)$/ -db_sync_op ../dbinc/mp.h /^} db_sync_op;$/ -db_timeout_t ../dbinc/db.in /^typedef u_int32_t db_timeout_t; \/* Type of a time/ -db_timeval_t ../dbinc/lock.h /^} db_timeval_t;$/ -db_trunc_param ../dbinc/db_am.h /^} db_trunc_param;$/ -db_txnlist_type ../dbinc/db_dispatch.h /^} db_txnlist_type;$/ +db_timeout_t ../dbinc/db.in 123 +db_txnlist_type ../dbinc/db_dispatch.h 54 db_version ../env/env_open.c /^db_version(majverp, minverp, patchp)$/ -dbaopts ../tcl/tcl_db.c /^ enum dbaopts {$/ dbc_Cmd ../tcl/tcl_dbcursor.c /^dbc_Cmd(clientData, interp, objc, objv)$/ -dbccmds ../tcl/tcl_dbcursor.c /^ enum dbccmds {$/ -dbcdupopts ../tcl/tcl_dbcursor.c /^ enum dbcdupopts {$/ -dbcgetopts ../tcl/tcl_dbcursor.c /^ enum dbcgetopts {$/ -dbclose ../tcl/tcl_db.c /^ enum dbclose {$/ -dbcmds ../tcl/tcl_db.c /^ enum dbcmds {$/ -dbcuropts ../tcl/tcl_db.c /^ enum dbcuropts {$/ -dbcutopts ../tcl/tcl_dbcursor.c /^ enum dbcutopts {$/ -dbdelopts ../tcl/tcl_db.c /^ enum dbdelopts {$/ -dbgetjopts ../tcl/tcl_db.c /^ enum dbgetjopts {$/ -dbgetopts ../tcl/tcl_db.c /^ enum dbgetopts {$/ -dbjopts ../tcl/tcl_db.c /^ enum dbjopts {$/ -dbkeyropts ../tcl/tcl_db.c /^ enum dbkeyropts {$/ dbm_clearerr ../dbinc/db.in /^#define dbm_clearerr(a) __db_ndbm_clearerr@DB_VER/ dbm_close ../dbinc/db.in /^#define dbm_close(a) __db_ndbm_close@DB_VERSION_U/ dbm_delete ../dbinc/db.in /^#define dbm_delete(a, b) __db_ndbm_delete@DB_VERSI/ @@ -4600,23 +4965,17 @@ dbm_open ../dbinc/db.in /^#define dbm_open(a, b, c) __db_ndbm_open@DB_VERSIO/ dbm_pagfno ../dbinc/db.in /^#define dbm_pagfno(a) __db_ndbm_pagfno@DB_VERSION/ dbm_rdonly ../dbinc/db.in /^#define dbm_rdonly(a) __db_ndbm_rdonly@DB_VERSION/ dbm_store ../dbinc/db.in /^#define dbm_store(a, b, c, d) \\$/ -dbmclose ../dbinc/db.in /^#define dbmclose __db_dbm_close@DB_VERSION_UNIQUE_/ -dbmcmds ../tcl/tcl_compat.c /^ enum dbmcmds {$/ +dbmclose ../dbinc/db.in 2568 dbminit ../dbinc/db.in /^#define dbminit(a) __db_dbm_init@DB_VERSION_UNIQUE/ -dbopen ../dbinc/db_185.in /^#define dbopen __db185_open@DB_VERSION_UNIQUE_NAME/ -dbputapp ../tcl/tcl_db.c /^ enum dbputapp { DBPUT_APPEND0 };$/ -dbputopts ../tcl/tcl_db.c /^ enum dbputopts {$/ -dbstatopts ../tcl/tcl_db.c /^ enum dbstatopts {$/ -dbt_ ../cxx/cxx_except.cpp /^, dbt_(dbt)$/ +dbopen ../dbinc/db_185.in 170 delete ../dbinc/db.in /^#define delete(a) __db_dbm_delete@DB_VERSION_UNIQU/ delete_DbLock ../libdb_java/db_java_wrap.c /^SWIGINTERN void delete_DbLock(struct DbLock *self)/ -describe ../cxx/cxx_except.cpp /^void DbException::describe(const char *prefix, con/ -dirent ../clib/getcwd.c /^# define dirent direct$/ -dirfd ../clib/getcwd.c /^#define dirfd(dirp) ((dirp)->dd_fd)$/ +dirent ../dbinc/db_int.in 79 +dirfd ../clib/getcwd.c /^#define dirfd(dirp) ((dirp)->dd_fd)$/ dispatch_phase_completion ../repmgr/repmgr_sel.c /^dispatch_phase_completion(dbenv, conn)$/ -dupString ../cxx/cxx_except.cpp /^\/\/ Note: would not be needed if we can inherit f/ +dupString ../cxx/cxx_except.cpp /^static char *dupString(const char *s)$/ +dup_compare_fcn_type ../dbinc/db_cxx.in 162 enqueue_msg ../repmgr/repmgr_net.c /^enqueue_msg(dbenv, conn, msg, offset)$/ -env_ ../cxx/cxx_except.cpp /^, env_(0)$/ env_Cmd ../tcl/tcl_env.c /^env_Cmd(clientData, interp, objc, objv)$/ env_DbRemove ../tcl/tcl_env.c /^env_DbRemove(interp, objc, objv, dbenv)$/ env_DbRename ../tcl/tcl_env.c /^env_DbRename(interp, objc, objv, dbenv)$/ @@ -4626,225 +4985,162 @@ env_GetOpenFlag ../tcl/tcl_env.c /^env_GetOpenFlag(interp, objc, objv, dbenv)$/ env_GetTimeout ../tcl/tcl_env.c /^env_GetTimeout(interp, objc, objv, dbenv)$/ env_GetVerbose ../tcl/tcl_env.c /^env_GetVerbose(interp, objc, objv, dbenv)$/ env_recover ../rpc_server/c/db_server_util.c /^env_recover(progname)$/ -envcmds ../tcl/tcl_env.c /^ enum envcmds {$/ -envdbmv ../tcl/tcl_env.c /^ enum envdbmv {$/ -envdbrem ../tcl/tcl_env.c /^ enum envdbrem {$/ -envopen ../tcl/tcl_db_pkg.c /^ enum envopen {$/ -envremopts ../tcl/tcl_env.c /^ enum envremopts {$/ -envtestat ../tcl/tcl_env.c /^ enum envtestat {$/ -envtestcmd ../tcl/tcl_env.c /^ enum envtestcmd {$/ -error_policy ../cxx/cxx_db.cpp /^\/\/ Return a tristate value corresponding to whet/ -errx ../cxx/cxx_db.cpp /^void Db::errx(const char *format, ...)$/ fetch ../dbinc/db.in /^#define fetch(a) __db_dbm_fetch@DB_VERSION_UNIQUE_/ finish_connecting ../repmgr/repmgr_posix.c /^finish_connecting(dbenv, conn)$/ -firstkey ../dbinc/db.in /^#define firstkey __db_dbm_firstkey@DB_VERSION_UNIQ/ +firstkey ../dbinc/db.in 2573 flatten ../repmgr/repmgr_net.c /^flatten(dbenv, msg)$/ -fprintf ../clib/printf.c /^fprintf(fp, fmt, va_alist)$/ +fprintf ../clib/printf.c /^fprintf(FILE *fp, const char *fmt, ...)$/ free_wait_slot ../repmgr/repmgr_windows.c /^free_wait_slot(dbenv, slot)$/ -fsync ../os/os_fsync.c /^#define fsync(fd) __vx_fsync(fd)$/ -get ../cxx/cxx_dbc.cpp /^int Dbc::get(Dbt* key, Dbt *data, u_int32_t _flags/ -get_app_private ../cxx/cxx_env.cpp /^void *DbEnv::get_app_private() const$/ -get_byteswapped ../cxx/cxx_db.cpp /^int Db::get_byteswapped(int *isswapped)$/ -get_dbt ../cxx/cxx_except.cpp /^Dbt *DbMemoryException::get_dbt() const$/ -get_env ../cxx/cxx_db.cpp /^DbEnv *Db::get_env()$/ -get_errno ../cxx/cxx_except.cpp /^int DbException::get_errno() const$/ -get_error_stream ../cxx/cxx_env.cpp /^__DB_STD(ostream) *DbEnv::get_error_stream()$/ +fsync ../dbinc/win_db.h 68 get_fullhome ../rpc_server/c/db_server_util.c /^get_fullhome(name)$/ get_handle ../mutex/mut_win32.c /^static __inline int get_handle(dbenv, mutexp, even/ -get_index ../cxx/cxx_except.cpp /^int DbLockNotGrantedException::get_index() const$/ -get_key ../cxx/cxx_seq.cpp /^Dbt *DbSequence::get_key()$/ -get_lock ../cxx/cxx_except.cpp /^DbLock* DbLockNotGrantedException::get_lock() cons/ -get_message_stream ../cxx/cxx_env.cpp /^__DB_STD(ostream) *DbEnv::get_message_stream()$/ -get_mode ../cxx/cxx_except.cpp /^db_lockmode_t DbLockNotGrantedException::get_mode(/ -get_mpf ../cxx/cxx_db.cpp /^DbMpoolFile *Db::get_mpf()$/ -get_obj ../cxx/cxx_except.cpp /^const Dbt* DbLockNotGrantedException::get_obj() co/ -get_op ../cxx/cxx_except.cpp /^db_lockop_t DbLockNotGrantedException::get_op() co/ get_tableent ../rpc_server/c/db_server_util.c /^get_tableent(id)$/ -getcwd ../clib/getcwd.c /^getcwd(pt, size)$/ +getcwd ../dbinc/win_db.h /^#define getcwd(buf, size) _getcwd(buf, size)$/ getopt ../clib/getopt.c /^getopt(nargc, nargv, ostr)$/ -h_hash_callback_ ../cxx/cxx_db.cpp /^, h_hash_callback_(0)$/ +getpid ../dbinc/win_db.h 73 +h_compare_fcn_type ../dbinc/db_cxx.in 164 +h_errno ../dbinc/win_db.h 79 +h_hash_fcn_type ../dbinc/db_cxx.in 166 handle_completion ../repmgr/repmgr_windows.c /^handle_completion(dbenv, conn)$/ handle_newsite ../repmgr/repmgr_msg.c /^handle_newsite(dbenv, rec)$/ -hcmds ../tcl/tcl_compat.c /^ enum hcmds {$/ hcreate ../dbinc/db.in /^#define hcreate(a) __db_hcreate@DB_VERSION_UNIQUE_/ -hdestroy ../dbinc/db.in /^#define hdestroy __db_hdestroy@DB_VERSION_UNIQUE_N/ -header ../repmgr/repmgr_queue.c /^};$/ -home_entry ../dbinc/db_server_int.h /^typedef struct home_entry home_entry;$/ +hdestroy ../dbinc/db.in 2590 +home_entry ../dbinc/db_server_int.h 43 hsearch ../dbinc/db.in /^#define hsearch(a, b) __db_hsearch@DB_VERSION_UNIQ/ -i_anyp ../dbinc/tcl_db.h /^#define i_anyp un.anyp$/ -i_cdata ../dbinc/tcl_db.h /^#define i_cdata und2.c_data$/ -i_data ../dbinc/tcl_db.h /^#define i_data und.anydata$/ -i_data2 ../dbinc/tcl_db.h /^#define i_data2 und2.anydata$/ -i_dbcp ../dbinc/tcl_db.h /^#define i_dbcp un.dbcp$/ -i_dbdbcid ../dbinc/tcl_db.h /^#define i_dbdbcid i_otherid[0]$/ -i_dbp ../dbinc/tcl_db.h /^#define i_dbp un.dbp$/ -i_envlockid ../dbinc/tcl_db.h /^#define i_envlockid i_otherid[2]$/ -i_envlogcid ../dbinc/tcl_db.h /^#define i_envlogcid i_otherid[3]$/ -i_envmpid ../dbinc/tcl_db.h /^#define i_envmpid i_otherid[1]$/ -i_envp ../dbinc/tcl_db.h /^#define i_envp un.envp$/ -i_envtxnid ../dbinc/tcl_db.h /^#define i_envtxnid i_otherid[0]$/ -i_lock ../dbinc/tcl_db.h /^#define i_lock un.lock$/ -i_locker ../dbinc/tcl_db.h /^#define i_locker und.lockid$/ -i_logc ../dbinc/tcl_db.h /^#define i_logc un.logc$/ -i_mp ../dbinc/tcl_db.h /^#define i_mp un.mp$/ -i_mppgid ../dbinc/tcl_db.h /^#define i_mppgid i_otherid[0]$/ -i_pagep ../dbinc/tcl_db.h /^#define i_pagep un.anyp$/ -i_pgno ../dbinc/tcl_db.h /^#define i_pgno und.pgno$/ -i_pgsz ../dbinc/tcl_db.h /^#define i_pgsz und2.pagesz$/ -i_txnp ../dbinc/tcl_db.h /^#define i_txnp un.txnp$/ -idwhich ../tcl/tcl_env.c /^ enum idwhich {$/ -imp_ ../cxx/cxx_mpool.cpp /^: imp_(0)$/ -index_ ../cxx/cxx_except.cpp /^, index_(index)$/ -indx_t ../dbinc/db_185.in /^typedef u_int16_t indx_t;$/ -infop ../dbinc/tcl_db.h /^ union infop {$/ -initialize ../cxx/cxx_db.cpp /^\/\/ private method to initialize during construct/ -int ../db/db_upg.c /^static int (* const func_31_list[P_PAGETYPE_MAX])$/ -int_bool ../libdb_java/db_java_wrap.c /^typedef int int_bool;$/ -iov_base ../dbinc/repmgr.h /^#define iov_base buf$/ -iov_len ../dbinc/repmgr.h /^#define iov_len len$/ +i_anyp ../dbinc/tcl_db.h 99 +i_cdata ../dbinc/tcl_db.h 114 +i_data ../dbinc/tcl_db.h 109 +i_data2 ../dbinc/tcl_db.h 112 +i_dbcp ../dbinc/tcl_db.h 103 +i_dbdbcid ../dbinc/tcl_db.h 123 +i_dbp ../dbinc/tcl_db.h 102 +i_envlockid ../dbinc/tcl_db.h 118 +i_envlogcid ../dbinc/tcl_db.h 119 +i_envmpid ../dbinc/tcl_db.h 117 +i_envp ../dbinc/tcl_db.h 101 +i_envtxnid ../dbinc/tcl_db.h 116 +i_lock ../dbinc/tcl_db.h 106 +i_locker ../dbinc/tcl_db.h 111 +i_logc ../dbinc/tcl_db.h 107 +i_mp ../dbinc/tcl_db.h 105 +i_mppgid ../dbinc/tcl_db.h 121 +i_pagep ../dbinc/tcl_db.h 100 +i_pgno ../dbinc/tcl_db.h 110 +i_pgsz ../dbinc/tcl_db.h 113 +i_txnp ../dbinc/tcl_db.h 104 +indx_t ../dbinc/db_185.in 85 +int_bool ../libdb_java/db_java_wrap.c 2316 +iov_base ../dbinc/repmgr.h 335 +iov_len ../dbinc/repmgr.h 334 isalpha ../clib/isalpha.c /^isalpha(c)$/ isdigit ../clib/isdigit.c /^isdigit(c)$/ isprint ../clib/isprint.c /^isprint(c)$/ isspace ../clib/isspace.c /^isspace(c)$/ -keyInstance ../crypto/rijndael/rijndael-api-fst.h /^} keyInstance;$/ -ldopts ../tcl/tcl_lock.c /^ enum ldopts {$/ -lgopts ../tcl/tcl_lock.c /^ enum lgopts {$/ -linfo_t ../dbinc/rep.h /^} linfo_t;$/ -lkcmds ../tcl/tcl_lock.c /^ enum lkcmds {$/ -lkmode ../tcl/tcl_lock.c /^ enum lkmode {$/ -lkops ../tcl/tcl_lock.c /^ enum lkops {$/ -lock_ ../cxx/cxx_lock.cpp /^: lock_(value)$/ +item ../hsearch/hsearch.c /^ ENTRY item;$/ lock_Cmd ../tcl/tcl_lock.c /^lock_Cmd(clientData, interp, objc, objv)$/ -locker_info ../lock/lock_deadlock.c /^} locker_info;$/ -locker_start ../mutex/tm.c /^locker_start(id)$/ -locker_wait ../mutex/tm.c /^locker_wait()$/ +locker_start ../mutex/test_mutex.c /^locker_start(id)$/ +locker_wait ../mutex/test_mutex.c /^locker_wait()$/ log_compare ../log/log_compare.c /^log_compare(lsn0, lsn1)$/ logc_Cmd ../tcl/tcl_log.c /^logc_Cmd(clientData, interp, objc, objv)$/ -logccmds ../tcl/tcl_log.c /^ enum logccmds {$/ -logcgetopts ../tcl/tcl_log.c /^ enum logcgetopts {$/ -logfile_validity ../dbinc/log.h /^} logfile_validity;$/ -logputopts ../tcl/tcl_log.c /^ enum logputopts {$/ -lsnwhich ../tcl/tcl_env.c /^ enum lsnwhich {$/ -lvopts ../tcl/tcl_lock.c /^ enum lvopts {$/ -map_file ../mutex/tm.c /^map_file(gm_addrp, tm_addrp, lm_addrp, fhpp)$/ +logfile_validity ../dbinc/log.h 428 memcmp ../clib/memcmp.c /^memcmp(s1, s2, n)$/ +memcpy ../clib/memmove.c /^memcpy(dst0, src0, length)$/ message_loop ../repmgr/repmgr_msg.c /^message_loop(dbenv)$/ -mgr_mutex_t ../dbinc/repmgr.h /^typedef HANDLE mgr_mutex_t;$/ +mgr_mutex_t ../dbinc/repmgr.h 27 +min ../clib/qsort.c /^#define min(a, b) (a) < (b) ? a : b$/ mp_Cmd ../tcl/tcl_mp.c /^mp_Cmd(clientData, interp, objc, objv)$/ -mpcmds ../tcl/tcl_mp.c /^ enum mpcmds {$/ -mpget ../tcl/tcl_mp.c /^ enum mpget {$/ -mpopts ../tcl/tcl_mp.c /^ enum mpopts {$/ -mu_action ../dbinc/db_int.in /^typedef enum { MU_REMOVE, MU_RENAME, MU_OPEN } mu_/ -ndbcmds ../tcl/tcl_compat.c /^ enum ndbcmds {$/ +mu_action ../dbinc/db_int.in 552 ndbm_Cmd ../tcl/tcl_compat.c /^ndbm_Cmd(clientData, interp, objc, objv)$/ -ndbopen ../tcl/tcl_compat.c /^ enum ndbopen {$/ -net_errno ../dbinc/repmgr.h /^#define net_errno WSAGetLastError()$/ +net_errno ../dbinc/repmgr.h 330 new_Db ../libdb_java/db_java_wrap.c /^SWIGINTERN struct Db *new_Db(DB_ENV *dbenv,u_int32/ new_DbEnv ../libdb_java/db_java_wrap.c /^SWIGINTERN struct DbEnv *new_DbEnv(u_int32_t flags/ new_DbSequence ../libdb_java/db_java_wrap.c /^SWIGINTERN struct DbSequence *new_DbSequence(DB *d/ new_ct_ent ../rpc_server/c/db_server_util.c /^new_ct_ent(errp)$/ -next ../cxx/cxx_multi.cpp /^bool DbMultipleDataIterator::next(Dbt &data)$/ nextkey ../dbinc/db.in /^#define nextkey(a) __db_dbm_nextkey@DB_VERSION_UNI/ notify_handshake ../repmgr/repmgr_sel.c /^notify_handshake(dbenv, conn)$/ -op_is_remove ../mp/mp_method.c /^#define op_is_remove (newname == NULL)$/ -os_pid_t ../mutex/tm.c /^typedef HANDLE os_pid_t;$/ -os_spawn ../mutex/tm.c /^os_spawn(path, argv)$/ -os_thread_create ../mutex/tm.c /^#define os_thread_create(thrp, attr, func, arg) / -os_thread_join ../mutex/tm.c /^#define os_thread_join(thr, statusp) \\$/ -os_thread_self ../mutex/tm.c /^#define os_thread_self() GetCurrentThreadId()$/ -os_thread_t ../mutex/tm.c /^typedef HANDLE os_thread_t;$/ -os_wait ../mutex/tm.c /^os_wait(procs, nprocs)$/ -p_ ../cxx/cxx_multi.cpp /^ p_((u_int32_t*)(data_ + dbt.get_ulen() - sizeof/ +op_is_remove ../mp/mp_method.c 438 +os_pid_t ../mutex/test_mutex.c 18 +os_spawn ../mutex/test_mutex.c /^os_spawn(path, argv)$/ +os_thread_create ../mutex/test_mutex.c /^#define os_thread_create(thrp, attr, func, arg) / +os_thread_join ../mutex/test_mutex.c /^#define os_thread_join(thr, statusp) \\$/ +os_thread_self ../mutex/test_mutex.c /^#define os_thread_self() GetCurrentThreadId()$/ +os_thread_t ../mutex/test_mutex.c 19 +os_wait ../mutex/test_mutex.c /^os_wait(procs, n)$/ pg_Cmd ../tcl/tcl_mp.c /^pg_Cmd(clientData, interp, objc, objv)$/ -pgcmds ../tcl/tcl_mp.c /^ enum pgcmds {$/ -pgcookie ../dbinc/db_cxx.in /^ (DB_ENV *dbenv, db_pgno_t pgno, void *pgaddr, DB/ -pget ../cxx/cxx_db.cpp /^int Db::pget(DbTxn *txnid, Dbt *key, Dbt *pkey, Db/ -pglist ../dbinc/db_page.h /^struct pglist {$/ -pgno_t ../dbinc/db_185.in /^#define pgno_t db_pgno_t$/ -pgopt ../tcl/tcl_mp.c /^ enum pgopt {$/ -phase_t ../dbinc/repmgr.h /^} phase_t;$/ -printf ../clib/printf.c /^printf(fmt, va_alist)$/ +pgin_fcn_type ../dbinc/db_cxx.in 168 +pgno_t ../dbinc/db_185.in 79 +pgout_fcn_type ../dbinc/db_cxx.in 170 +phase_t ../dbinc/repmgr.h 154 +printf ../clib/printf.c /^printf(const char *fmt, ...)$/ process_message ../repmgr/repmgr_msg.c /^process_message(dbenv, control, rec, eid)$/ pthread_cond_destroy ../mutex/mut_pthread.c /^#define pthread_cond_destroy(x) 0$/ -pthread_cond_signal ../mutex/mut_pthread.c /^#define pthread_cond_signal _lwp_cond_signal$/ -pthread_cond_wait ../mutex/mut_pthread.c /^#define pthread_cond_wait _lwp_cond_wait$/ +pthread_cond_signal ../mutex/mut_pthread.c 21 +pthread_cond_wait ../mutex/mut_pthread.c 22 pthread_mutex_destroy ../mutex/mut_pthread.c /^#define pthread_mutex_destroy(x) 0$/ -pthread_mutex_lock ../mutex/mut_pthread.c /^#define pthread_mutex_lock _lwp_mutex_lock$/ -pthread_mutex_trylock ../mutex/mut_pthread.c /^#define pthread_mutex_trylock _lwp_mutex_trylock$/ -pthread_mutex_unlock ../mutex/mut_pthread.c /^#define pthread_mutex_unlock _lwp_mutex_unlock$/ -qam_name_op ../dbinc/qam.h /^} qam_name_op;$/ -qam_probe_mode ../dbinc/qam.h /^} qam_probe_mode;$/ -qm_trace ../dbinc/queue.h /^struct qm_trace {$/ +pthread_mutex_lock ../mutex/mut_pthread.c 24 +pthread_mutex_trylock ../mutex/mut_pthread.c 25 +pthread_mutex_unlock ../mutex/mut_pthread.c 26 +qam_name_op ../dbinc/qam.h 162 +qam_probe_mode ../dbinc/qam.h 153 +qsort ../clib/qsort.c /^qsort(a, n, es, cmp)$/ raise ../clib/raise.c /^raise(s)$/ -rand ../clib/rand.c /^int rand(void) \/* RAND_MAX assumed to be 32767 */ -rcmds ../tcl/tcl_util.c /^ enum rcmds {$/ -recno_t ../dbinc/db_185.in /^typedef u_int32_t recno_t;$/ +rand ../clib/rand.c /^int rand(void) \/* RAND_MAX assumed to be 32767 *\/$/ +recno_t ../dbinc/db_185.in 87 record_ack ../repmgr/repmgr_sel.c /^record_ack(dbenv, site, ack)$/ -reg_type_t ../dbinc/region.h /^ REGION_TYPE_TXN } reg_type_t;$/ -remove ../cxx/cxx_env.cpp /^int DbEnv::remove(const char *db_home, u_int32_t f/ -rep_send_callback_ ../cxx/cxx_env.cpp /^, rep_send_callback_(0)$/ -repdb_t ../dbinc/rep.h /^} repdb_t;$/ -repmgr_netaddr_t ../dbinc/repmgr.h /^} repmgr_netaddr_t;$/ -repmgr_timeval_t ../dbinc/repmgr.h /^} repmgr_timeval_t;$/ -rmgr ../tcl/tcl_rep.c /^ enum rmgr {$/ -roff_t ../dbinc/db.in /^typedef uintptr_t roff_t;$/ -rol ../hmac/sha1.c /^#define rol(value, bits) (((value) << (bits)) | ((/ -run_lthread ../mutex/tm.c /^run_lthread(arg)$/ -run_wthread ../mutex/tm.c /^run_wthread(arg)$/ -runtime_error ../cxx/cxx_env.cpp /^\/\/ Report an error associated with the DbEnv.$/ -runtime_error_dbt ../cxx/cxx_env.cpp /^\/\/ Like DbEnv::runtime_error, but issue a DbMemo/ -runtime_error_lock_get ../cxx/cxx_env.cpp /^\/\/ Like DbEnv::runtime_error, but issue a DbLock/ -select_timeout_t ../dbinc/repmgr.h /^typedef DWORD select_timeout_t;$/ -sending_msg ../repmgr/repmgr_net.c /^struct sending_msg {$/ +reg_type_t ../dbinc/region.h 130 +repdb_t ../dbinc/rep.h 160 +retval ../hsearch/hsearch.c /^static ENTRY retval;$/ +roff_t ../dbinc/db.in 132 +rol ../hmac/sha1.c /^#define rol(value, bits) (((value) << (bits)) | ((/ +run_lthread ../mutex/test_mutex.c /^run_lthread(arg)$/ +run_wthread ../mutex/test_mutex.c /^run_wthread(arg)$/ seq_Cmd ../tcl/tcl_seq.c /^seq_Cmd(clientData, interp, objc, objv)$/ -seqcmds ../tcl/tcl_seq.c /^ enum seqcmds {$/ -seqgetopts ../tcl/tcl_seq.c /^ enum seqgetopts {$/ -seqopen ../tcl/tcl_db_pkg.c /^ enum seqopen {$/ -set_env ../cxx/cxx_except.cpp /^void DbException::set_env(DbEnv *env)$/ -set_error_stream ../cxx/cxx_env.cpp /^void DbEnv::set_error_stream(__DB_STD(ostream) *st/ -set_event_notify ../cxx/cxx_env.cpp /^int DbEnv::set_event_notify(void (*arg)(DbEnv *, u/ -set_feedback ../cxx/cxx_env.cpp /^int DbEnv::set_feedback(void (*arg)(DbEnv *, int, / -set_message_stream ../cxx/cxx_env.cpp /^void DbEnv::set_message_stream(__DB_STD(ostream) */ -set_paniccall ../cxx/cxx_env.cpp /^int DbEnv::set_paniccall(void (*arg)(DbEnv *, int)/ set_signal ../common/util_sig.c /^set_signal(s, is_dflt)$/ -set_thread_id_string ../cxx/cxx_env.cpp /^int DbEnv::set_thread_id_string($/ setup_sending_msg ../repmgr/repmgr_net.c /^setup_sending_msg(msg, type, control, rec)$/ -sfonoff ../tcl/tcl_env.c /^ enum sfonoff {$/ -sfwhich ../tcl/tcl_env.c /^ enum sfwhich {$/ signal_handler ../common/util_sig.c /^signal_handler(signo)$/ -size_t ../dbinc/db_cxx.in /^ (size_t);$/ -snprintf ../clib/snprintf.c /^snprintf(str, n, fmt, va_alist)$/ -socket_t ../dbinc/repmgr.h /^typedef SOCKET socket_t;$/ -socklen_t ../dbinc/repmgr.h /^typedef int socklen_t;$/ -sockopt_t ../dbinc/repmgr.h /^typedef char * sockopt_t;$/ -spawn_proc ../mutex/tm.c /^spawn_proc(id, tmpath, typearg)$/ +snprintf ../dbinc/win_db.h 74 +socket_t ../dbinc/repmgr.h 25 +socklen_t ../dbinc/repmgr.h 331 +sockopt_t ../dbinc/repmgr.h 332 +spawn_proc ../mutex/test_mutex.c /^spawn_proc(id, tmpath, typearg)$/ sprintf_overflow ../clib/snprintf.c /^sprintf_overflow()$/ sprintf_retcharpnt ../clib/snprintf.c /^sprintf_retcharpnt()$/ srand ../clib/rand.c /^void srand(unsigned int seed)$/ -srchacts ../tcl/tcl_compat.c /^ enum srchacts {$/ start_election_thread ../repmgr/repmgr_elect.c /^start_election_thread(dbenv)$/ -stflag ../tcl/tcl_compat.c /^ enum stflag {$/ store ../dbinc/db.in /^#define store(a, b) __db_dbm_store@DB_VERSION_UNIQ/ -strcasecmp ../clib/strcasecmp.c /^strcasecmp(s1, s2)$/ +strcasecmp ../dbinc/win_db.h 75 strcat ../clib/strcat.c /^strcat(char *s, const char *append)$/ strchr ../clib/strchr.c /^char *strchr(const char *p, int ch)$/ strdup ../clib/strdup.c /^strdup(str)$/ strerror ../clib/strerror.c /^strerror(num)$/ -strncasecmp ../clib/strcasecmp.c /^strncasecmp(s1, s2, n)$/ +strncasecmp ../dbinc/win_db.h 76 strncat ../clib/strncat.c /^strncat(char *dst, const char *src, size_t n)$/ strncmp ../clib/strncmp.c /^strncmp(s1, s2, n)$/ strrchr ../clib/strrchr.c /^char *strrchr(const char *p, int ch)$/ strsep ../clib/strsep.c /^strsep(stringp, delim)$/ strtol ../clib/strtol.c /^strtol(nptr, endptr, base)$/ strtoul ../clib/strtoul.c /^strtoul(nptr, endptr, base)$/ +swap ../clib/qsort.c /^#define swap(a, b) \\$/ +swapcode ../clib/qsort.c /^#define swapcode(TYPE, parmi, parmj, n) { \\$/ +swapfunc ../clib/qsort.c /^swapfunc(a, b, n, swaptype)$/ tcl_CDSGroup ../tcl/tcl_txn.c /^tcl_CDSGroup(interp, objc, objv, envp, envip)$/ +tcl_CompactStat ../tcl/tcl_db.c /^tcl_CompactStat(interp, ip)$/ tcl_DbAssociate ../tcl/tcl_db.c /^tcl_DbAssociate(interp, objc, objv, dbp)$/ tcl_DbClose ../tcl/tcl_db.c /^tcl_DbClose(interp, objc, objv, dbp, dbip)$/ +tcl_DbCompact ../tcl/tcl_db.c /^tcl_DbCompact(interp, objc, objv, dbp)$/ +tcl_DbCompactStat ../tcl/tcl_db.c /^tcl_DbCompactStat(interp, objc, objv, dbp)$/ +tcl_DbCount ../tcl/tcl_db.c /^tcl_DbCount(interp, objc, objv, dbp)$/ tcl_DbCursor ../tcl/tcl_db.c /^tcl_DbCursor(interp, objc, objv, dbp, dbcp)$/ tcl_DbDelete ../tcl/tcl_db.c /^tcl_DbDelete(interp, objc, objv, dbp)$/ tcl_DbGet ../tcl/tcl_db.c /^tcl_DbGet(interp, objc, objv, dbp, ispget)$/ +tcl_DbGetFlags ../tcl/tcl_db.c /^tcl_DbGetFlags(interp, objc, objv, dbp)$/ +tcl_DbGetOpenFlags ../tcl/tcl_db.c /^tcl_DbGetOpenFlags(interp, objc, objv, dbp)$/ +tcl_DbGetjoin ../tcl/tcl_db.c /^tcl_DbGetjoin(interp, objc, objv, dbp)$/ +tcl_DbJoin ../tcl/tcl_db.c /^tcl_DbJoin(interp, objc, objv, dbp, dbcp)$/ +tcl_DbKeyRange ../tcl/tcl_db.c /^tcl_DbKeyRange(interp, objc, objv, dbp)$/ tcl_DbPut ../tcl/tcl_db.c /^tcl_DbPut(interp, objc, objv, dbp)$/ tcl_DbStat ../tcl/tcl_db.c /^tcl_DbStat(interp, objc, objv, dbp)$/ +tcl_DbTruncate ../tcl/tcl_db.c /^tcl_DbTruncate(interp, objc, objv, dbp)$/ tcl_DbcDup ../tcl/tcl_dbcursor.c /^tcl_DbcDup(interp, objc, objv, dbc)$/ tcl_DbcGet ../tcl/tcl_dbcursor.c /^tcl_DbcGet(interp, objc, objv, dbc, ispget)$/ tcl_DbcPut ../tcl/tcl_dbcursor.c /^tcl_DbcPut(interp, objc, objv, dbc)$/ @@ -4877,15 +5173,18 @@ tcl_MpGet ../tcl/tcl_mp.c /^tcl_MpGet(interp, objc, objv, mp, mpip)$/ tcl_MpStat ../tcl/tcl_mp.c /^tcl_MpStat(interp, objc, objv, envp)$/ tcl_MpSync ../tcl/tcl_mp.c /^tcl_MpSync(interp, objc, objv, envp)$/ tcl_MpTrickle ../tcl/tcl_mp.c /^tcl_MpTrickle(interp, objc, objv, envp)$/ -tcl_Pg ../tcl/tcl_mp.c /^tcl_Pg(interp, objc, objv, page, mp, pgip, putop)$/ +tcl_Pg ../tcl/tcl_mp.c /^tcl_Pg(interp, objc, objv, page, mp, pgip)$/ tcl_PgInit ../tcl/tcl_mp.c /^tcl_PgInit(interp, objc, objv, page, pgip)$/ tcl_PgIsset ../tcl/tcl_mp.c /^tcl_PgIsset(interp, objc, objv, page, pgip)$/ tcl_RepConfig ../tcl/tcl_rep.c /^tcl_RepConfig(interp, dbenv, list)$/ tcl_RepElect ../tcl/tcl_rep.c /^tcl_RepElect(interp, objc, objv, dbenv)$/ tcl_RepFlush ../tcl/tcl_rep.c /^tcl_RepFlush(interp, objc, objv, dbenv)$/ tcl_RepGetConfig ../tcl/tcl_rep.c /^tcl_RepGetConfig(interp, dbenv, which)$/ +tcl_RepLease ../tcl/tcl_rep.c /^tcl_RepLease(interp, objc, objv, dbenv)$/ tcl_RepLimit ../tcl/tcl_rep.c /^tcl_RepLimit(interp, objc, objv, dbenv)$/ tcl_RepMgr ../tcl/tcl_rep.c /^tcl_RepMgr(interp, objc, objv, dbenv)$/ +tcl_RepMgrStat ../tcl/tcl_rep.c /^tcl_RepMgrStat(interp, objc, objv, dbenv)$/ +tcl_RepNoarchiveTimeout ../tcl/tcl_rep.c /^tcl_RepNoarchiveTimeout(interp, dbenv)$/ tcl_RepProcessMessage ../tcl/tcl_rep.c /^tcl_RepProcessMessage(interp, objc, objv, dbenv)$/ tcl_RepRequest ../tcl/tcl_rep.c /^tcl_RepRequest(interp, objc, objv, dbenv)$/ tcl_RepStart ../tcl/tcl_rep.c /^tcl_RepStart(interp, objc, objv, dbenv)$/ @@ -4911,41 +5210,32 @@ tcl_db_realloc ../tcl/tcl_db_pkg.c /^tcl_db_realloc(ptr, size)$/ tcl_dup_compare ../tcl/tcl_db_pkg.c /^tcl_dup_compare(dbp, dbta, dbtb)$/ tcl_h_hash ../tcl/tcl_db_pkg.c /^tcl_h_hash(dbp, buf, len)$/ tcl_rep_send ../tcl/tcl_db_pkg.c /^tcl_rep_send(dbenv, control, rec, lsnp, eid, flags/ -tclrpstrt ../tcl/tcl_rep.c /^ enum tclrpstrt {$/ -thread_id_t ../dbinc/repmgr.h /^typedef HANDLE thread_id_t;$/ -threadsync_timeout_t ../dbinc/repmgr.h /^typedef DWORD threadsync_timeout_t;$/ -tm_env_close ../mutex/tm.c /^tm_env_close()$/ -tm_env_init ../mutex/tm.c /^tm_env_init()$/ -tm_file_init ../mutex/tm.c /^tm_file_init()$/ -tm_mutex_destroy ../mutex/tm.c /^tm_mutex_destroy()$/ -tm_mutex_init ../mutex/tm.c /^tm_mutex_init()$/ -tm_mutex_stats ../mutex/tm.c /^tm_mutex_stats()$/ -tsl_t ../dbinc/mutex_int.h /^typedef int tsl_t;$/ +tcl_second_call ../tcl/tcl_db.c /^tcl_second_call(dbp, pkey, data, skey)$/ +thread_id_t ../dbinc/repmgr.h 26 +threadsync_timeout_t ../dbinc/repmgr.h 337 +timespecadd ../dbinc/clock.h /^#define timespecadd(vvp, uvp) \\$/ +timespecclear ../dbinc/clock.h /^#define timespecclear(tvp) ((tvp)->tv_sec = (tvp)-/ +timespeccmp ../dbinc/clock.h /^#define timespeccmp(tvp, uvp, cmp) \\$/ +timespecisset ../dbinc/clock.h /^#define timespecisset(tvp) ((tvp)->tv_sec || (tvp)/ +timespecsub ../dbinc/clock.h /^#define timespecsub(vvp, uvp) \\$/ +tm_env_close ../mutex/test_mutex.c /^tm_env_close()$/ +tm_env_init ../mutex/test_mutex.c /^tm_env_init()$/ +tm_mutex_destroy ../mutex/test_mutex.c /^tm_mutex_destroy()$/ +tm_mutex_init ../mutex/test_mutex.c /^tm_mutex_init()$/ +tm_mutex_stats ../mutex/test_mutex.c /^tm_mutex_stats()$/ +tsl_t ../dbinc/mutex_int.h 79 txn_Cmd ../tcl/tcl_txn.c /^txn_Cmd(clientData, interp, objc, objv)$/ -txn_begin ../cxx/cxx_env.cpp /^int DbEnv::txn_begin(DbTxn *pid, DbTxn **tid, u_in/ -txnckpopts ../tcl/tcl_txn.c /^ enum txnckpopts {$/ -txncmds ../tcl/tcl_txn.c /^ enum txncmds {$/ -txnop_t ../txn/txn.c /^} txnop_t;$/ -txnopts ../tcl/tcl_txn.c /^ enum txnopts {$/ -u16 ../crypto/rijndael/rijndael-alg-fst.h /^typedef u_int16_t u16;$/ -u32 ../crypto/rijndael/rijndael-alg-fst.h /^typedef u_int32_t u32;$/ -u8 ../crypto/rijndael/rijndael-alg-fst.h /^typedef u_int8_t u8;$/ -u_int32_t ../dbinc/db_cxx.in /^ (DB *, const void *, u_int32_t);$/ -unmap_file ../mutex/tm.c /^unmap_file(addr, fhp)$/ -usage ../mutex/tm.c /^usage()$/ -verbonoff ../tcl/tcl_env.c /^ enum verbonoff {$/ -verbwhich ../tcl/tcl_env.c /^ enum verbwhich {$/ +txnop_t ../txn/txn.c 67 +u16 ../crypto/rijndael/rijndael-alg-fst.h 37 +u32 ../crypto/rijndael/rijndael-alg-fst.h 38 +u8 ../crypto/rijndael/rijndael-alg-fst.h 36 +usage ../mutex/test_mutex.c /^usage()$/ +vecswap ../clib/qsort.c /^#define vecswap(a, b, n) if ((n) > 0) swapfunc(a,/ version_check ../rpc_server/c/db_server_util.c /^version_check()$/ vfprintf ../clib/printf.c /^vfprintf(fp, fmt, ap)$/ -void ../dbinc/db_cxx.in /^ (void *);$/ -vsnprintf ../clib/snprintf.c /^vsnprintf(str, n, fmt, ap)$/ -wakeup_start ../mutex/tm.c /^wakeup_start(id)$/ -wakeup_wait ../mutex/tm.c /^wakeup_wait()$/ -what ../cxx/cxx_except.cpp /^const char *DbException::what() const throw()$/ -wmask ../clib/memmove.c /^#define wmask (wsize - 1)$/ -word ../clib/memmove.c /^typedef int word; \/* "word" used for optimal cop/ -wrap_DB_ENV ../cxx/cxx_env.cpp /^\/\/ static method$/ -wrap_DB_SEQUENCE ../cxx/cxx_seq.cpp /^\/\/ static method$/ -wsize ../clib/memmove.c /^#define wsize sizeof(word)$/ -xa_switch_t ../dbinc/xa.h /^struct xa_switch_t {$/ -xid_t ../dbinc/xa.h /^struct xid_t {$/ +vsnprintf ../dbinc/win_db.h 77 +wakeup_start ../mutex/test_mutex.c /^wakeup_start(id)$/ +wakeup_wait ../mutex/test_mutex.c /^wakeup_wait()$/ +wmask ../clib/memmove.c 50 +word ../clib/memmove.c 45 +wsize ../clib/memmove.c 48 diff --git a/db/dist/template/db_server_proc b/db/dist/template/db_server_proc index 04ada6b5d..83be08647 100644 --- a/db/dist/template/db_server_proc +++ b/db/dist/template/db_server_proc @@ -1,7 +1,7 @@ #include "db_config.h" #include "db_int.h" -#ifndef NO_SYSTEM_INCLUDES +#ifdef HAVE_SYSTEM_INCLUDE_FILES #include #endif #include "db_server.h" @@ -810,6 +810,28 @@ __db_get_pagesize_proc(dbpcl_id, replyp) return; } +/* BEGIN __db_get_priority_proc */ +void +__db_get_priority_proc(dbpcl_id, replyp) + unsigned int dbpcl_id; + __db_get_priority_reply *replyp; +/* END __db_get_priority_proc */ +{ + int ret; + DB * dbp; + ct_entry *dbp_ctp; + + ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB); + dbp = (DB *)dbp_ctp->ct_anyp; + + /* + * XXX Code goes here + */ + + replyp->status = ret; + return; +} + /* BEGIN __db_get_q_extentsize_proc */ void __db_get_q_extentsize_proc(dbpcl_id, replyp) @@ -1304,6 +1326,29 @@ __db_set_pagesize_proc(dbpcl_id, pagesize, replyp) return; } +/* BEGIN __db_set_priority_proc */ +void +__db_set_priority_proc(dbpcl_id, priority, replyp) + unsigned int dbpcl_id; + u_int32_t priority; + __db_set_priority_reply *replyp; +/* END __db_set_priority_proc */ +{ + int ret; + DB * dbp; + ct_entry *dbp_ctp; + + ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB); + dbp = (DB *)dbp_ctp->ct_anyp; + + /* + * XXX Code goes here + */ + + replyp->status = ret; + return; +} + /* BEGIN __db_set_q_extentsize_proc */ void __db_set_q_extentsize_proc(dbpcl_id, extentsize, replyp) @@ -1478,12 +1523,12 @@ __db_truncate_proc(dbpcl_id, txnpcl_id, return; } -/* BEGIN __dbc_c_close_proc */ +/* BEGIN __dbc_close_proc */ void -__dbc_c_close_proc(dbccl_id, replyp) +__dbc_close_proc(dbccl_id, replyp) unsigned int dbccl_id; - __dbc_c_close_reply *replyp; -/* END __dbc_c_close_proc */ + __dbc_close_reply *replyp; +/* END __dbc_close_proc */ { int ret; DBC * dbc; @@ -1500,13 +1545,13 @@ __dbc_c_close_proc(dbccl_id, replyp) return; } -/* BEGIN __dbc_c_count_proc */ +/* BEGIN __dbc_count_proc */ void -__dbc_c_count_proc(dbccl_id, flags, replyp) +__dbc_count_proc(dbccl_id, flags, replyp) unsigned int dbccl_id; u_int32_t flags; - __dbc_c_count_reply *replyp; -/* END __dbc_c_count_proc */ + __dbc_count_reply *replyp; +/* END __dbc_count_proc */ { int ret; DBC * dbc; @@ -1523,13 +1568,13 @@ __dbc_c_count_proc(dbccl_id, flags, replyp) return; } -/* BEGIN __dbc_c_del_proc */ +/* BEGIN __dbc_del_proc */ void -__dbc_c_del_proc(dbccl_id, flags, replyp) +__dbc_del_proc(dbccl_id, flags, replyp) unsigned int dbccl_id; u_int32_t flags; - __dbc_c_del_reply *replyp; -/* END __dbc_c_del_proc */ + __dbc_del_reply *replyp; +/* END __dbc_del_proc */ { int ret; DBC * dbc; @@ -1546,13 +1591,13 @@ __dbc_c_del_proc(dbccl_id, flags, replyp) return; } -/* BEGIN __dbc_c_dup_proc */ +/* BEGIN __dbc_dup_proc */ void -__dbc_c_dup_proc(dbccl_id, flags, replyp) +__dbc_dup_proc(dbccl_id, flags, replyp) unsigned int dbccl_id; u_int32_t flags; - __dbc_c_dup_reply *replyp; -/* END __dbc_c_dup_proc */ + __dbc_dup_reply *replyp; +/* END __dbc_dup_proc */ { int ret; DBC * dbc; @@ -1569,9 +1614,9 @@ __dbc_c_dup_proc(dbccl_id, flags, replyp) return; } -/* BEGIN __dbc_c_get_proc */ +/* BEGIN __dbc_get_proc */ void -__dbc_c_get_proc(dbccl_id, keydlen, keydoff, +__dbc_get_proc(dbccl_id, keydlen, keydoff, keyulen, keyflags, keydata, keysize, datadlen, datadoff, dataulen, dataflags, datadata, datasize, flags, replyp, freep) @@ -1589,9 +1634,9 @@ __dbc_c_get_proc(dbccl_id, keydlen, keydoff, void *datadata; u_int32_t datasize; u_int32_t flags; - __dbc_c_get_reply *replyp; + __dbc_get_reply *replyp; int * freep; -/* END __dbc_c_get_proc */ +/* END __dbc_get_proc */ { int ret; DBC * dbc; @@ -1608,9 +1653,31 @@ __dbc_c_get_proc(dbccl_id, keydlen, keydoff, return; } -/* BEGIN __dbc_c_pget_proc */ +/* BEGIN __dbc_get_priority_proc */ void -__dbc_c_pget_proc(dbccl_id, skeydlen, skeydoff, +__dbc_get_priority_proc(dbccl_id, replyp) + unsigned int dbccl_id; + __dbc_get_priority_reply *replyp; +/* END __dbc_get_priority_proc */ +{ + int ret; + DBC * dbc; + ct_entry *dbc_ctp; + + ACTIVATE_CTP(dbc_ctp, dbccl_id, CT_CURSOR); + dbc = (DBC *)dbc_ctp->ct_anyp; + + /* + * XXX Code goes here + */ + + replyp->status = ret; + return; +} + +/* BEGIN __dbc_pget_proc */ +void +__dbc_pget_proc(dbccl_id, skeydlen, skeydoff, skeyulen, skeyflags, skeydata, skeysize, pkeydlen, pkeydoff, pkeyulen, pkeyflags, pkeydata, pkeysize, datadlen, datadoff, @@ -1636,9 +1703,9 @@ __dbc_c_pget_proc(dbccl_id, skeydlen, skeydoff, void *datadata; u_int32_t datasize; u_int32_t flags; - __dbc_c_pget_reply *replyp; + __dbc_pget_reply *replyp; int * freep; -/* END __dbc_c_pget_proc */ +/* END __dbc_pget_proc */ { int ret; DBC * dbc; @@ -1655,9 +1722,9 @@ __dbc_c_pget_proc(dbccl_id, skeydlen, skeydoff, return; } -/* BEGIN __dbc_c_put_proc */ +/* BEGIN __dbc_put_proc */ void -__dbc_c_put_proc(dbccl_id, keydlen, keydoff, +__dbc_put_proc(dbccl_id, keydlen, keydoff, keyulen, keyflags, keydata, keysize, datadlen, datadoff, dataulen, dataflags, datadata, datasize, flags, replyp, freep) @@ -1675,9 +1742,32 @@ __dbc_c_put_proc(dbccl_id, keydlen, keydoff, void *datadata; u_int32_t datasize; u_int32_t flags; - __dbc_c_put_reply *replyp; + __dbc_put_reply *replyp; int * freep; -/* END __dbc_c_put_proc */ +/* END __dbc_put_proc */ +{ + int ret; + DBC * dbc; + ct_entry *dbc_ctp; + + ACTIVATE_CTP(dbc_ctp, dbccl_id, CT_CURSOR); + dbc = (DBC *)dbc_ctp->ct_anyp; + + /* + * XXX Code goes here + */ + + replyp->status = ret; + return; +} + +/* BEGIN __dbc_set_priority_proc */ +void +__dbc_set_priority_proc(dbccl_id, priority, replyp) + unsigned int dbccl_id; + u_int32_t priority; + __dbc_set_priority_reply *replyp; +/* END __dbc_set_priority_proc */ { int ret; DBC * dbc; diff --git a/db/dist/template/gen_client_ret b/db/dist/template/gen_client_ret index 8d679a749..3460a2ed3 100644 --- a/db/dist/template/gen_client_ret +++ b/db/dist/template/gen_client_ret @@ -522,12 +522,12 @@ __dbcl_db_truncate_ret(dbp, txnp, countp, flags, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_close_ret __P((DBC *, __dbc_c_close_reply *)); + * PUBLIC: int __dbcl_dbc_close_ret __P((DBC *, __dbc_close_reply *)); */ int -__dbcl_dbc_c_close_ret(dbc, replyp) +__dbcl_dbc_close_ret(dbc, replyp) DBC * dbc; - __dbc_c_close_reply *replyp; + __dbc_close_reply *replyp; { int ret; @@ -542,15 +542,15 @@ __dbcl_dbc_c_close_ret(dbc, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_count_ret __P((DBC *, db_recno_t *, u_int32_t, - * PUBLIC: __dbc_c_count_reply *)); + * PUBLIC: int __dbcl_dbc_count_ret __P((DBC *, db_recno_t *, u_int32_t, + * PUBLIC: __dbc_count_reply *)); */ int -__dbcl_dbc_c_count_ret(dbc, countp, flags, replyp) +__dbcl_dbc_count_ret(dbc, countp, flags, replyp) DBC * dbc; db_recno_t * countp; u_int32_t flags; - __dbc_c_count_reply *replyp; + __dbc_count_reply *replyp; { int ret; db_recno_t dupcount; @@ -567,15 +567,15 @@ __dbcl_dbc_c_count_ret(dbc, countp, flags, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_dup_ret __P((DBC *, DBC **, u_int32_t, - * PUBLIC: __dbc_c_dup_reply *)); + * PUBLIC: int __dbcl_dbc_dup_ret __P((DBC *, DBC **, u_int32_t, + * PUBLIC: __dbc_dup_reply *)); */ int -__dbcl_dbc_c_dup_ret(dbc, dbcp, flags, replyp) +__dbcl_dbc_dup_ret(dbc, dbcp, flags, replyp) DBC * dbc; DBC ** dbcp; u_int32_t flags; - __dbc_c_dup_reply *replyp; + __dbc_dup_reply *replyp; { int ret; long dbcid; @@ -592,16 +592,16 @@ __dbcl_dbc_c_dup_ret(dbc, dbcp, flags, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_get_ret __P((DBC *, DBT *, DBT *, u_int32_t, - * PUBLIC: __dbc_c_get_reply *)); + * PUBLIC: int __dbcl_dbc_get_ret __P((DBC *, DBT *, DBT *, u_int32_t, + * PUBLIC: __dbc_get_reply *)); */ int -__dbcl_dbc_c_get_ret(dbc, key, data, flags, replyp) +__dbcl_dbc_get_ret(dbc, key, data, flags, replyp) DBC * dbc; DBT * key; DBT * data; u_int32_t flags; - __dbc_c_get_reply *replyp; + __dbc_get_reply *replyp; { int ret; /* DBT key; */ @@ -620,17 +620,17 @@ __dbcl_dbc_c_get_ret(dbc, key, data, flags, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_pget_ret __P((DBC *, DBT *, DBT *, DBT *, u_int32_t, - * PUBLIC: __dbc_c_pget_reply *)); + * PUBLIC: int __dbcl_dbc_pget_ret __P((DBC *, DBT *, DBT *, DBT *, u_int32_t, + * PUBLIC: __dbc_pget_reply *)); */ int -__dbcl_dbc_c_pget_ret(dbc, skey, pkey, data, flags, replyp) +__dbcl_dbc_pget_ret(dbc, skey, pkey, data, flags, replyp) DBC * dbc; DBT * skey; DBT * pkey; DBT * data; u_int32_t flags; - __dbc_c_pget_reply *replyp; + __dbc_pget_reply *replyp; { int ret; /* DBT skey; */ @@ -651,16 +651,16 @@ __dbcl_dbc_c_pget_ret(dbc, skey, pkey, data, flags, replyp) } /* - * PUBLIC: int __dbcl_dbc_c_put_ret __P((DBC *, DBT *, DBT *, u_int32_t, - * PUBLIC: __dbc_c_put_reply *)); + * PUBLIC: int __dbcl_dbc_put_ret __P((DBC *, DBT *, DBT *, u_int32_t, + * PUBLIC: __dbc_put_reply *)); */ int -__dbcl_dbc_c_put_ret(dbc, key, data, flags, replyp) +__dbcl_dbc_put_ret(dbc, key, data, flags, replyp) DBC * dbc; DBT * key; DBT * data; u_int32_t flags; - __dbc_c_put_reply *replyp; + __dbc_put_reply *replyp; { int ret; /* DBT key; */ diff --git a/db/dist/template/rec_ctemp b/db/dist/template/rec_ctemp index 2951189c5..2fbee2e74 100644 --- a/db/dist/template/rec_ctemp +++ b/db/dist/template/rec_ctemp @@ -13,15 +13,15 @@ PREF_FUNC_recover(dbenv, dbtp, lsnp, op, info) db_recops op; void *info; { - PREF_FUNC_args *argp; + PREF_DUP_args *argp; DB *file_dbp; DBC *dbc; DB_MPOOLFILE *mpf; PAGE *pagep; int cmp_n, cmp_p, modified, ret; - REC_PRINT(PREF_FUNC_print); - REC_INTRO(PREF_FUNC_read, 1); + REC_PRINT(PREF_DUP_print); + REC_INTRO(PREF_DUP_read, 1); if ((ret = mpf->get(mpf, &argp->pgno, 0, &pagep)) != 0) if (DB_REDO(op)) { diff --git a/db/dist/template/rec_fileops b/db/dist/template/rec_fileops index 492208635..97e548018 100644 --- a/db/dist/template/rec_fileops +++ b/db/dist/template/rec_fileops @@ -206,15 +206,15 @@ __fop_rename_recover(dbenv, dbtp, lsnp, op, info) db_recops op; void *info; { - __fop_rename_args *argp; + __fop_rename_noundo_args *argp; DB *file_dbp; DBC *dbc; DB_MPOOLFILE *mpf; PAGE *pagep; int cmp_n, cmp_p, modified, ret; - REC_PRINT(__fop_rename_print); - REC_INTRO(__fop_rename_read, 1); + REC_PRINT(__fop_rename_noundo_print); + REC_INTRO(__fop_rename_noundo_read, 1); if ((ret = mpf->get(mpf, &argp->pgno, 0, &pagep)) != 0) if (DB_REDO(op)) { diff --git a/db/dist/template/rec_log b/db/dist/template/rec_log deleted file mode 100644 index 1ce40b378..000000000 --- a/db/dist/template/rec_log +++ /dev/null @@ -1,137 +0,0 @@ -#include "db_config.h" - -#ifndef NO_SYSTEM_INCLUDES -#include - -#include -#endif - -#include "db_int.h" -#include "db_page.h" -#include "log.h" -#include "log.h" - -/* - * __log_register1_recover -- - * Recovery function for register1. - * - * PUBLIC: int __log_register1_recover - * PUBLIC: __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); - */ -int -__log_register1_recover(dbenv, dbtp, lsnp, op, info) - DB_ENV *dbenv; - DBT *dbtp; - DB_LSN *lsnp; - db_recops op; - void *info; -{ - __log_register1_args *argp; - DB *file_dbp; - DBC *dbc; - DB_MPOOLFILE *mpf; - PAGE *pagep; - int cmp_n, cmp_p, modified, ret; - - REC_PRINT(__log_register1_print); - REC_INTRO(__log_register1_read); - - if ((ret = memp_fget(mpf, &argp->pgno, 0, &pagep)) != 0) - if (DB_REDO(op)) { - if ((ret = memp_fget(mpf, - &argp->pgno, DB_MPOOL_CREATE, &pagep)) != 0) - goto out; - } else { - *lsnp = argp->prev_lsn; - ret = 0; - goto out; - } - - modified = 0; - cmp_n = log_compare(lsnp, &LSN(pagep)); - - /* - * Use this when there is something like "pagelsn" in the argp - * structure. Sometimes, you might need to compare meta-data - * lsn's instead. - * - * cmp_p = log_compare(&LSN(pagep), argp->pagelsn); - */ - if (cmp_p == 0 && DB_REDO(op)) { - /* Need to redo update described. */ - modified = 1; - } else if (cmp_n == 0 && !DB_REDO(op)) { - /* Need to undo update described. */ - modified = 1; - } - if (ret = memp_fput(mpf, pagep, modified ? DB_MPOOL_DIRTY : 0)) - goto out; - - *lsnp = argp->prev_lsn; - ret = 0; - -out: REC_CLOSE; -} - -/* - * __log_register_recover -- - * Recovery function for register. - * - * PUBLIC: int __log_register_recover - * PUBLIC: __P((DB_ENV *, DBT *, DB_LSN *, db_recops, void *)); - */ -int -__log_register_recover(dbenv, dbtp, lsnp, op, info) - DB_ENV *dbenv; - DBT *dbtp; - DB_LSN *lsnp; - db_recops op; - void *info; -{ - __log_register_args *argp; - DB *file_dbp; - DBC *dbc; - DB_MPOOLFILE *mpf; - PAGE *pagep; - int cmp_n, cmp_p, modified, ret; - - REC_PRINT(__log_register_print); - REC_INTRO(__log_register_read); - - if ((ret = memp_fget(mpf, &argp->pgno, 0, &pagep)) != 0) - if (DB_REDO(op)) { - if ((ret = memp_fget(mpf, - &argp->pgno, DB_MPOOL_CREATE, &pagep)) != 0) - goto out; - } else { - *lsnp = argp->prev_lsn; - ret = 0; - goto out; - } - - modified = 0; - cmp_n = log_compare(lsnp, &LSN(pagep)); - - /* - * Use this when there is something like "pagelsn" in the argp - * structure. Sometimes, you might need to compare meta-data - * lsn's instead. - * - * cmp_p = log_compare(&LSN(pagep), argp->pagelsn); - */ - if (cmp_p == 0 && DB_REDO(op)) { - /* Need to redo update described. */ - modified = 1; - } else if (cmp_n == 0 && !DB_REDO(op)) { - /* Need to undo update described. */ - modified = 1; - } - if (ret = memp_fput(mpf, pagep, modified ? DB_MPOOL_DIRTY : 0)) - goto out; - - *lsnp = argp->prev_lsn; - ret = 0; - -out: REC_CLOSE; -} - diff --git a/db/dist/vx_config.in b/db/dist/vx_config.in index 2f9b7d1a0..eda74cd5c 100644 --- a/db/dist/vx_config.in +++ b/db/dist/vx_config.in @@ -43,6 +43,12 @@ /* Define to 1 if you have the `atol' function. */ #define HAVE_ATOL 1 +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + /* Define to 1 if you have the `clock_gettime' function. */ #define HAVE_CLOCK_GETTIME 1 @@ -71,6 +77,9 @@ /* Define to 1 if you have the `fchmod' function. */ /* #undef HAVE_FCHMOD */ +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + /* Define to 1 if you have the `fcntl' function. */ /* #undef HAVE_FCNTL */ @@ -80,12 +89,27 @@ /* Define to 1 if you have the `fdatasync' function. */ /* #undef HAVE_FDATASYNC */ +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #define HAVE_FILESYSTEM_NOTZERO 1 +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + /* Define to 1 if you have the `getaddrinfo' function. */ /* #undef HAVE_GETADDRINFO */ @@ -110,6 +134,9 @@ /* Define to 1 if building Hash access method. */ #define HAVE_HASH 1 +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_INTTYPES_H */ @@ -125,6 +152,9 @@ /* Define to 1 if you have the `isspace' function. */ #define HAVE_ISSPACE 1 +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + /* Define to 1 if you have the `memcmp' function. */ #define HAVE_MEMCMP 1 @@ -177,6 +207,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ /* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ /* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ @@ -221,6 +254,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ /* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + /* Define to 1 if mutexes hold system resources. */ #define HAVE_MUTEX_SYSTEM_RESOURCES 1 @@ -248,10 +284,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ /* #undef HAVE_MUTEX_WIN32_GCC */ -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -281,6 +319,9 @@ /* Define to 1 if building on QNX. */ /* #undef HAVE_QNX */ +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + /* Define to 1 if building Queue access method. */ #define HAVE_QUEUE 1 @@ -299,6 +340,9 @@ /* Define to 1 if building RPC client/server. */ /* #undef HAVE_RPC */ +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + /* Define to 1 if you have the `sched_yield' function. */ #define HAVE_SCHED_YIELD 1 @@ -377,13 +421,13 @@ /* Define to 1 if you have the `sysconf' function. */ /* #undef HAVE_SYSCONF */ +/* Define to 1 if port includes files in the Berkeley DB source code. */ +#define HAVE_SYSTEM_INCLUDE_FILES 1 + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_FCNTL_H */ - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ @@ -391,6 +435,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SELECT_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_STAT_H */ @@ -400,12 +447,18 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_TYPES_H */ +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if unlink of file with open file descriptors will fail. */ #define HAVE_UNLINK_WITH_OPEN_FAILURE 1 +/* Define to 1 if port includes historic database upgrade support. */ +#define HAVE_UPGRADE_SUPPORT 1 + /* Define to 1 if building access method verification support. */ #define HAVE_VERIFY 1 @@ -436,6 +489,42 @@ /* Define to the version of this package. */ #define PACKAGE_VERSION "__EDIT_DB_VERSION__" +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ + /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ @@ -457,5 +546,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ -#include "clib_port.h" -#include "vxWorks.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/dist/vx_setup/LICENSE.TXT b/db/dist/vx_setup/LICENSE.TXT index 7a7fe62bc..c219109c8 100644 --- a/db/dist/vx_setup/LICENSE.TXT +++ b/db/dist/vx_setup/LICENSE.TXT @@ -1,3 +1,2 @@ -Copyright (c) 1996-2006 - * Oracle Corporation. All rights reserved. +Copyright (c) 1996,2007 Oracle. All rights reserved. See the file LICENSE for redistribution information. diff --git a/db/dist/vx_setup/README.in b/db/dist/vx_setup/README.in index c8cefacad..1b5312a09 100644 --- a/db/dist/vx_setup/README.in +++ b/db/dist/vx_setup/README.in @@ -1,7 +1,5 @@ -README.TXT: Oracle Corporation Berkeley DB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@ Release v@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ +README.TXT: Oracle Berkeley DB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@ Release v@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ Information on known problems, changes introduced with the current revision of the CD-ROM, and other product bulletins -can be obtained from the Oracle Corporation web site: - - http://www.sleepycat.com/ +can be obtained from the Oracle web site. diff --git a/db/dist/vx_setup/vx_setup.in b/db/dist/vx_setup/vx_setup.in index 24fbabc86..c1fc8dfc4 100644 --- a/db/dist/vx_setup/vx_setup.in +++ b/db/dist/vx_setup/vx_setup.in @@ -1,8 +1,8 @@ -Oracle Corporation BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ +Oracle BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ db@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ demo-db@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ BerkeleyDB.@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ @DB_SETUP_DIR@ -Oracle Corporation BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ +Oracle BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ db@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ @DB_SETUP_DIR@/filelist.all BerkeleyDB.@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@-Demo @@ -10,4 +10,4 @@ BerkeleyDB.@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@-Demo BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ Demo program demo-db@DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ @DB_SETUP_DIR@/filelist.demo -Oracle Corporation BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ +Oracle BerkeleyDB @DB_VERSION_MAJOR@.@DB_VERSION_MINOR@.@DB_VERSION_PATCH@ diff --git a/db/dist/win_config.in b/db/dist/win_config.in index 809b73b8e..07706fccc 100644 --- a/db/dist/win_config.in +++ b/db/dist/win_config.in @@ -35,6 +35,12 @@ /* Define to 1 if you have the `atol' function. */ #define HAVE_ATOL 1 +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + /* Define to 1 if you have the `clock_gettime' function. */ /* #undef HAVE_CLOCK_GETTIME */ @@ -65,6 +71,9 @@ /* Define to 1 if you have the `fchmod' function. */ /* #undef HAVE_FCHMOD */ +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + /* Define to 1 if you have the `fcntl' function. */ /* #undef HAVE_FCNTL */ @@ -74,12 +83,27 @@ /* Define to 1 if you have the `fdatasync' function. */ /* #undef HAVE_FDATASYNC */ +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + /* Define to 1 if allocated filesystem blocks are not zeroed. */ #define HAVE_FILESYSTEM_NOTZERO 1 +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + /* Define to 1 if you have the `getaddrinfo' function. */ /* #undef HAVE_GETADDRINFO */ @@ -110,6 +134,9 @@ #define HAVE_HASH 1 #endif +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_INTTYPES_H */ @@ -122,6 +149,9 @@ /* Define to 1 if you have the `isprint' function. */ #define HAVE_ISPRINT 1 +/* Define to 1 if you have the `localtime' function. */ +#define HAVE_LOCALTIME 1 + /* Define to 1 if you have the `isspace' function. */ #define HAVE_ISSPACE 1 @@ -177,6 +207,9 @@ /* Define to 1 to use the msem_XXX mutexes on HP-UX. */ /* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + /* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ /* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ @@ -221,6 +254,9 @@ /* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ /* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + /* Define to 1 if mutexes hold system resources. */ /* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ @@ -248,10 +284,12 @@ /* Define to 1 to use the GCC compiler and Windows mutexes. */ /* #undef HAVE_MUTEX_WIN32_GCC */ -/* Define to 1 to use the GCC compiler and amd64 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ -/* Define to 1 to use the GCC compiler and x86 assembly language mutexes. */ +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ /* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ /* Define to 1 if you have the header file, and it defines `DIR'. */ @@ -281,6 +319,9 @@ /* Define to 1 if building on QNX. */ /* #undef HAVE_QNX */ +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + /* Define to 1 if building Queue access method. */ #ifndef HAVE_SMALLBUILD #define HAVE_QUEUE 1 @@ -305,6 +346,9 @@ /* Define to 1 if building RPC client/server. */ /* #undef HAVE_RPC */ +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + /* Define to 1 if you have the `sched_yield' function. */ /* #undef HAVE_SCHED_YIELD */ @@ -336,7 +380,7 @@ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strcasecmp' function. */ -/* #undef HAVE_STRCASECMP */ +#define HAVE_STRCASECMP 1 /* Define to 1 if you have the `strcat' function. */ #define HAVE_STRCAT 1 @@ -383,13 +427,13 @@ /* Define to 1 if you have the `sysconf' function. */ /* #undef HAVE_SYSCONF */ +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FCNTL_H 1 - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ @@ -397,6 +441,9 @@ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_SELECT_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 @@ -406,12 +453,18 @@ /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + /* Define to 1 if you have the header file. */ /* #undef HAVE_UNISTD_H */ /* Define to 1 if unlink of file with open file descriptors will fail. */ /* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ +/* Define to 1 if port includes historic database upgrade support. */ +#define HAVE_UPGRADE_SUPPORT 1 + /* Define to 1 if building access method verification support. */ #ifndef HAVE_SMALLBUILD #define HAVE_VERIFY 1 @@ -444,6 +497,42 @@ /* Define to the version of this package. */ #define PACKAGE_VERSION "__EDIT_DB_VERSION__" +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ + /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ @@ -465,14 +554,11 @@ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ -#include "clib_port.h" -#include "win_db.h" +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline __inline +#endif -/* - * Microsoft's compiler _doesn't_ define __STDC__ unless you invoke it with - * arguments turning OFF all vendor extensions. Even more unfortunately, if - * we do that, it fails to parse windows.h!!!!! So, we define __STDC__ here, - * after windows.h comes in. Note: the compiler knows we've defined it, and - * starts enforcing strict ANSI compliance from this point on. - */ -#define __STDC__ 1 +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/dist/win_db.in b/db/dist/win_db.in deleted file mode 100644 index 7e0e6f15b..000000000 --- a/db/dist/win_db.in +++ /dev/null @@ -1,143 +0,0 @@ -/*- - * $Id: win_db.in,v 12.19 2006/06/19 15:56:39 bostic Exp $ - * - * The following provides the information necessary to build Berkeley - * DB on native Windows, and other Windows environments such as MinGW. - */ - -/* - * Avoid warnings with Visual Studio 8. - */ -#define _CRT_SECURE_NO_DEPRECATE 1 - -/* - * Windows NT 4.0 and later required for the replication manager. - */ -#ifdef HAVE_REPLICATION_THREADS -#define _WIN32_WINNT 0x0400 -#endif - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * To build Tcl interface libraries, the include path must be configured to - * use the directory containing , usually the include directory in - * the Tcl distribution. - */ -#ifdef DB_TCL_SUPPORT -#include -#endif - -#define WIN32_LEAN_AND_MEAN -#include -#include - -#ifdef HAVE_GETADDRINFO -/* - * Need explicit includes for IPv6 support on Windows. Both are necessary to - * ensure that pre WinXP versions have an implementation of the getaddrinfo API. - */ -#include -#include -#endif - -/* - * All of the necessary includes have been included, ignore the #includes - * in the Berkeley DB source files. - */ -#define NO_SYSTEM_INCLUDES - -/* - * Microsoft's C runtime library has fsync, getcwd, getpid, snprintf and - * vsnprintf, but under different names. - */ -#define fsync _commit -#define getcwd(buf, size) _getcwd(buf, size) -#define getpid _getpid -#define snprintf _snprintf -#define vsnprintf _vsnprintf - -#define h_errno WSAGetLastError() - -/* - * Windows defines off_t to long (i.e., 32 bits). We need to pass 64-bit - * file offsets, so we declare our own. - */ -#define off_t __db_off_t -typedef __int64 off_t; - -/* - * Win32 does not have getopt. - * - * The externs are here (instead of using db_config.h and clib_port.h), - * because Berkeley DB example programs use getopt and they can't #include - * those files. - */ -#if defined(__cplusplus) -extern "C" { -#endif -extern int getopt(int, char * const *, const char *); -#if defined(__cplusplus) -} -#endif - -#ifdef _UNICODE -#define TO_TSTRING(dbenv, s, ts, ret) do { \ - int __len = (int)strlen(s) + 1; \ - ts = NULL; \ - if ((ret = __os_malloc((dbenv), \ - __len * sizeof(_TCHAR), &(ts))) == 0 && \ - MultiByteToWideChar(CP_UTF8, 0, \ - (s), -1, (ts), __len) == 0) \ - ret = __os_posix_err(__os_get_syserr()); \ - } while (0) - -#define FROM_TSTRING(dbenv, ts, s, ret) { \ - int __len = WideCharToMultiByte(CP_UTF8, 0, ts, -1, \ - NULL, 0, NULL, NULL); \ - s = NULL; \ - if ((ret = __os_malloc((dbenv), __len, &(s))) == 0 && \ - WideCharToMultiByte(CP_UTF8, 0, \ - (ts), -1, (s), __len, NULL, NULL) == 0) \ - ret = __os_posix_err(__os_get_syserr()); \ - } while (0) - -#define FREE_STRING(dbenv, s) do { \ - if ((s) != NULL) { \ - __os_free((dbenv), (s)); \ - (s) = NULL; \ - } \ - } while (0) - -#else -#define TO_TSTRING(dbenv, s, ts, ret) (ret) = 0, (ts) = (_TCHAR *)(s) -#define FROM_TSTRING(dbenv, ts, s, ret) (ret) = 0, (s) = (char *)(ts) -#define FREE_STRING(dbenv, ts) -#endif - -#ifndef INVALID_HANDLE_VALUE -#define INVALID_HANDLE_VALUE ((HANDLE)-1) -#endif - -#ifndef INVALID_FILE_ATTRIBUTES -#define INVALID_FILE_ATTRIBUTES ((DWORD)-1) -#endif - -#ifndef INVALID_SET_FILE_POINTER -#define INVALID_SET_FILE_POINTER ((DWORD)-1) -#endif diff --git a/db/dist/win_exports.in b/db/dist/win_exports.in index e1d3023d7..80d1f8a89 100644 --- a/db/dist/win_exports.in +++ b/db/dist/win_exports.in @@ -1,4 +1,4 @@ -# $Id: win_exports.in,v 12.20 2006/08/10 08:21:51 alexg Exp $ +# $Id: win_exports.in,v 12.26 2007/06/29 14:11:26 alexg Exp $ # Standard interfaces. db_create @@ -39,8 +39,8 @@ __db_ndbm_rdonly __db_ndbm_store __db_panic - __db_r_attach - __db_r_detach + __db_win32_mutex_lock + __db_win32_mutex_unlock __ham_func2 __ham_func3 __ham_func4 @@ -52,6 +52,7 @@ __os_dirfree __os_dirlist __os_free + __os_fsync __os_get_syserr __os_getenv __os_ioinfo @@ -62,6 +63,7 @@ __os_posix_err __os_read __os_realloc + __os_rename __os_strdup __os_umalloc __os_unlink @@ -84,6 +86,7 @@ __bam_root_read __bam_rsplit_read __bam_split_read + __config_split __crdel_inmem_create_read __crdel_inmem_remove_read __crdel_inmem_rename_read @@ -155,9 +158,9 @@ __log_stat_pp __mutex_set_wait_info __os_abspath - __os_clock __os_exists __os_get_errno + __os_gettime __os_id __os_mapfile __os_seek diff --git a/db/dist/wince_config.in b/db/dist/wince_config.in new file mode 100644 index 000000000..91c043dc6 --- /dev/null +++ b/db/dist/wince_config.in @@ -0,0 +1,560 @@ +/* Define to 1 if you want to build a version for running the test suite. */ +/* #undef CONFIG_TEST */ + +/* We use DB_WIN32 much as one would use _WIN32 -- to specify that we're using + an operating system environment that supports Win32 calls and semantics. We + don't use _WIN32 because Cygwin/GCC also defines _WIN32, even though + Cygwin/GCC closely emulates the Unix environment. */ +#define DB_WIN32 1 + +/* Define to 1 if you want a debugging version. */ +#if defined(_DEBUG) +#if !defined(DEBUG) +#define DEBUG 1 +#endif +#endif + +/* Define to 1 if you want a version that logs read operations. */ +/* #undef DEBUG_ROP */ + +/* Define to 1 if you want a version that logs write operations. */ +/* #undef DEBUG_WOP */ + +/* Define to 1 if you want a version with run-time diagnostic checking. */ +/* #undef DIAGNOSTIC */ + +/* Define to 1 if 64-bit types are available. */ +#define HAVE_64BIT_TYPES 1 + +/* Define to 1 if you have the `abort' function. */ +/* #undef HAVE_ABORT */ + +/* Define to 1 if you have the `atoi' function. */ +#define HAVE_ATOI 1 + +/* Define to 1 if you have the `atol' function. */ +#define HAVE_ATOL 1 + +/* Define to 1 if building BREW. */ +/* #undef HAVE_BREW */ + +/* Define to 1 if building on BREW (SDK2). */ +/* #undef HAVE_BREW_SDK2 */ + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if Berkeley DB release includes strong cryptography. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_CRYPTO 1 +#endif + +/* Define to 1 if you have the `ctime_r' function. */ +/* #undef HAVE_CTIME_R */ + +/* Define to 1 if ctime_r takes a buffer length as a third argument. */ +/* #undef HAVE_CTIME_R_3ARG */ + +/* Define to 1 if you have the `directio' function. */ +/* #undef HAVE_DIRECTIO */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_DIRENT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have EXIT_SUCCESS/EXIT_FAILURE #defines. */ +#define HAVE_EXIT_SUCCESS 1 + +/* Define to 1 if you have the `fchmod' function. */ +/* #undef HAVE_FCHMOD */ + +/* Define to 1 if you have the `fclose' function. */ +#define HAVE_FCLOSE 1 + +/* Define to 1 if you have the `fcntl' function. */ +/* #undef HAVE_FCNTL */ + +/* Define to 1 if fcntl/F_SETFD denies child access to file descriptors. */ +/* #undef HAVE_FCNTL_F_SETFD */ + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `fgetc' function. */ +#define HAVE_FGETC 1 + +/* Define to 1 if you have the `fgets' function. */ +#define HAVE_FGETS 1 + +/* Define to 1 if allocated filesystem blocks are not zeroed. */ +#define HAVE_FILESYSTEM_NOTZERO 1 + +/* Define to 1 to build Berkeley DB with a fine-grained lock manager. */ +/* #undef HAVE_FINE_GRAINED_LOCK_MANAGER */ + +/* Define to 1 if you have the `fopen' function. */ +#define HAVE_FOPEN 1 + +/* Define to 1 if you have the `ftruncate' function. */ +/* #undef HAVE_FTRUNCATE */ + +/* Define to 1 if you have the `fwrite' function. */ +#define HAVE_FWRITE 1 + +/* Define to 1 if you have the `getaddrinfo' function. */ +/* #undef HAVE_GETADDRINFO */ + +/* Define to 1 if you have the `getcwd' function. */ +/* #undef HAVE_GETCWD */ + +/* Define to 1 if you have the `getenv' function. */ +/* #undef HAVE_GETENV */ + +/* Define to 1 if you have the `getopt' function. */ +/* + * Windows does not have the getopt function, but as Berkeley DB example + * programs require getopt, we handle it outside of this configuration. + */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the `getrusage' function. */ +/* #undef HAVE_GETRUSAGE */ + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define to 1 if building Hash access method. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_HASH 1 +#endif + +/* Define to 1 if you have the `hstrerror' function. */ +/* #undef HAVE_HSTRERROR */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define to 1 if you have the `isalpha' function. */ +#define HAVE_ISALPHA 1 + +/* Define to 1 if you have the `isdigit' function. */ +#define HAVE_ISDIGIT 1 + +/* Define to 1 if you have the `isprint' function. */ +#define HAVE_ISPRINT 1 + +/* Define to 1 if you have the `localtime' function. */ +/* #undef HAVE_LOCALTIME */ + +/* Define to 1 if you have the `isspace' function. */ +#define HAVE_ISSPACE 1 + +/* Define to 1 if you have the `memcmp' function. */ +#define HAVE_MEMCMP 1 + +/* Define to 1 if you have the `memcpy' function. */ +#define HAVE_MEMCPY 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mlock' function. */ +/* #undef HAVE_MLOCK */ + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `mprotect' function. */ +/* #undef HAVE_MPROTECT */ + +/* Define to 1 if you have the `munlock' function. */ +/* #undef HAVE_MUNLOCK */ + +/* Define to 1 if you have the `munmap' function. */ +/* #undef HAVE_MUNMAP */ + +/* Define to 1 to use the GCC compiler and 68K assembly language mutexes. */ +/* #undef HAVE_MUTEX_68K_GCC_ASSEMBLY */ + +/* Define to 1 to use the AIX _check_lock mutexes. */ +/* #undef HAVE_MUTEX_AIX_CHECK_LOCK */ + +/* Define to 1 to use the GCC compiler and Alpha assembly language mutexes. */ +/* #undef HAVE_MUTEX_ALPHA_GCC_ASSEMBLY */ + +/* 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 Apple/Darwin _spin_lock_try mutexes. */ +/* #undef HAVE_MUTEX_DARWIN_SPIN_LOCK_TRY */ + +/* Define to 1 to use the UNIX fcntl system call mutexes. */ +/* #undef HAVE_MUTEX_FCNTL */ + +/* Define to 1 to use the GCC compiler and PaRisc assembly language mutexes. + */ +/* #undef HAVE_MUTEX_HPPA_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on HP-UX. */ +/* #undef HAVE_MUTEX_HPPA_MSEM_INIT */ + +/* Define to 1 to use test-and-set mutexes with blocking mutexes. */ +/* #undef HAVE_MUTEX_HYBRID */ + +/* Define to 1 to use the GCC compiler and IA64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_IA64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and MIPS assembly language mutexes. */ +/* #undef HAVE_MUTEX_MIPS_GCC_ASSEMBLY */ + +/* Define to 1 to use the msem_XXX mutexes on systems other than HP-UX. */ +/* #undef HAVE_MUTEX_MSEM_INIT */ + +/* Define to 1 to use the GCC compiler and PowerPC assembly language mutexes. + */ +/* #undef HAVE_MUTEX_PPC_GCC_ASSEMBLY */ + +/* Define to 1 to use POSIX 1003.1 pthread_XXX mutexes. */ +/* #undef HAVE_MUTEX_PTHREADS */ + +/* Define to 1 to use Reliant UNIX initspin mutexes. */ +/* #undef HAVE_MUTEX_RELIANTUNIX_INITSPIN */ + +/* Define to 1 to use the IBM C compiler and S/390 assembly language mutexes. + */ +/* #undef HAVE_MUTEX_S390_CC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and S/390 assembly language mutexes. */ +/* #undef HAVE_MUTEX_S390_GCC_ASSEMBLY */ + +/* Define to 1 to use the SCO compiler and x86 assembly language mutexes. */ +/* #undef HAVE_MUTEX_SCO_X86_CC_ASSEMBLY */ + +/* Define to 1 to use the obsolete POSIX 1003.1 sema_XXX mutexes. */ +/* #undef HAVE_MUTEX_SEMA_INIT */ + +/* Define to 1 to use the SGI XXX_lock mutexes. */ +/* #undef HAVE_MUTEX_SGI_INIT_LOCK */ + +/* Define to 1 to use the Solaris _lock_XXX mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LOCK_TRY */ + +/* Define to 1 to use the Solaris lwp threads mutexes. */ +/* #undef HAVE_MUTEX_SOLARIS_LWP */ + +/* Define to 1 to use the GCC compiler and Sparc assembly language mutexes. */ +/* #undef HAVE_MUTEX_SPARC_GCC_ASSEMBLY */ + +/* Define to 1 if the Berkeley DB library should support mutexes. */ +#define HAVE_MUTEX_SUPPORT 1 + +/* Define to 1 if mutexes hold system resources. */ +/* #undef HAVE_MUTEX_SYSTEM_RESOURCES */ + +/* Define to 1 to configure mutexes intra-process only. */ +/* #undef HAVE_MUTEX_THREAD_ONLY */ + +/* Define to 1 to use the CC compiler and Tru64 assembly language mutexes. */ +/* #undef HAVE_MUTEX_TRU64_CC_ASSEMBLY */ + +/* Define to 1 to use the UNIX International mutexes. */ +/* #undef HAVE_MUTEX_UI_THREADS */ + +/* Define to 1 to use the UTS compiler and assembly language mutexes. */ +/* #undef HAVE_MUTEX_UTS_CC_ASSEMBLY */ + +/* Define to 1 to use VMS mutexes. */ +/* #undef HAVE_MUTEX_VMS */ + +/* Define to 1 to use VxWorks mutexes. */ +/* #undef HAVE_MUTEX_VXWORKS */ + +/* Define to 1 to use the MSVC compiler and Windows mutexes. */ +#define HAVE_MUTEX_WIN32 1 + +/* Define to 1 to use the GCC compiler and Windows mutexes. */ +/* #undef HAVE_MUTEX_WIN32_GCC */ + +/* Define to 1 to use the GCC compiler and 64-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_64_GCC_ASSEMBLY */ + +/* Define to 1 to use the GCC compiler and 32-bit x86 assembly language + mutexes. */ +/* #undef HAVE_MUTEX_X86_GCC_ASSEMBLY */ + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the O_DIRECT flag. */ +/* #undef HAVE_O_DIRECT */ + +/* Define to 1 if you have the `pread' function. */ +/* #undef HAVE_PREAD */ + +/* Define to 1 if you have the `printf' function. */ +#define HAVE_PRINTF 1 + +/* Define to 1 if you have the `pstat_getdynamic' function. */ +/* #undef HAVE_PSTAT_GETDYNAMIC */ + +/* Define to 1 to configure Berkeley DB for POSIX pthread API. */ +/* #undef HAVE_PTHREAD_API */ + +/* Define to 1 if you have the `pthread_yield' function. */ +/* #undef HAVE_PTHREAD_YIELD */ + +/* Define to 1 if you have the `pwrite' function. */ +/* #undef HAVE_PWRITE */ + +/* Define to 1 if building on QNX. */ +/* #undef HAVE_QNX */ + +/* Define to 1 if you have the `qsort' function. */ +#define HAVE_QSORT 1 + +/* Define to 1 if building Queue access method. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_QUEUE 1 +#endif + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rand' function. */ +#define HAVE_RAND 1 + +/* Define to 1 if building replication support. */ +/* #undef HAVE_REPLICATION */ + +/* Define to 1 if building the Berkeley DB replication framework. */ +/* #undef HAVE_REPLICATION_THREADS */ + +/* Define to 1 if building RPC client/server. */ +/* #undef HAVE_RPC */ + +/* Define to 1 if building on S60. */ +/* #undef HAVE_S60 */ + +/* Define to 1 if you have the `sched_yield' function. */ +/* #undef HAVE_SCHED_YIELD */ + +/* Define to 1 if you have the `select' function. */ +/* #undef HAVE_SELECT */ + +/* Define to 1 if you have the `shmget' function. */ +/* #undef HAVE_SHMGET */ + +/* Define to 1 if you have the `sigaction' function. */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if thread identifier type db_threadid_t is integral. */ +#define HAVE_SIMPLE_THREAD_TYPE 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `stat' function. */ +#define HAVE_STAT 1 + +/* Define to 1 if building statistics support. */ +#define HAVE_STATISTICS 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + +/* Define to 1 if you have the `strcat' function. */ +#define HAVE_STRCAT 1 + +/* Define to 1 if you have the `strchr' function. */ +#define HAVE_STRCHR 1 + +/* Define to 1 if you have the `strdup' function. */ +/* #undef HAVE_STRDUP */ + +/* Define to 1 if you have the `strerror' function. */ +/* #undef HAVE_STRERROR */ + +/* Define to 1 if you have the `strftime' function. */ +/* #undef HAVE_STRFTIME */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strncat' function. */ +#define HAVE_STRNCAT 1 + +/* Define to 1 if you have the `strncmp' function. */ +#define HAVE_STRNCMP 1 + +/* Define to 1 if you have the `strrchr' function. */ +#define HAVE_STRRCHR 1 + +/* Define to 1 if you have the `strsep' function. */ +/* #undef HAVE_STRSEP */ + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ + +/* Define to 1 if you have the `sysconf' function. */ +/* #undef HAVE_SYSCONF */ + +/* Define to 1 if port includes files in the Berkeley DB source code. */ +/* #undef HAVE_SYSTEM_INCLUDE_FILES */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SELECT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_TIME_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `time' function. */ +/* #undef HAVE_TIME */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if unlink of file with open file descriptors will fail. */ +/* #undef HAVE_UNLINK_WITH_OPEN_FAILURE */ + +/* Define to 1 if port includes historic database upgrade support. */ +/* #undef HAVE_UPGRADE_SUPPORT */ + +/* Define to 1 if building access method verification support. */ +#ifndef HAVE_SMALLBUILD +#define HAVE_VERIFY 1 +#endif + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if building VxWorks. */ +/* #undef HAVE_VXWORKS */ + +/* Define to 1 if you have the `yield' function. */ +/* #undef HAVE_YIELD */ + +/* Define to 1 if you have the `_fstati64' function. */ +#define HAVE__FSTATI64 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "Oracle Technology Network Berkeley DB forum" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "Berkeley DB" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "Berkeley DB __EDIT_DB_VERSION__" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "db-__EDIT_DB_VERSION__" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "__EDIT_DB_VERSION__" + +/* The size of a `char', as computed by sizeof. */ +/* #undef SIZEOF_CHAR */ + +/* The size of a `char *', as computed by sizeof. */ +/* #undef SIZEOF_CHAR_P */ + +/* The size of a `int', as computed by sizeof. */ +/* #undef SIZEOF_INT */ + +/* The size of a `long', as computed by sizeof. */ +/* #undef SIZEOF_LONG */ + +/* The size of a `long long', as computed by sizeof. */ +/* #undef SIZEOF_LONG_LONG */ + +/* The size of a `short', as computed by sizeof. */ +/* #undef SIZEOF_SHORT */ + +/* The size of a `size_t', as computed by sizeof. */ +/* #undef SIZEOF_SIZE_T */ + +/* The size of a `unsigned char', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_CHAR */ + +/* The size of a `unsigned int', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_INT */ + +/* The size of a `unsigned long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG */ + +/* The size of a `unsigned long long', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_LONG_LONG */ + +/* The size of a `unsigned short', as computed by sizeof. */ +/* #undef SIZEOF_UNSIGNED_SHORT */ + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both and . */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define to 1 to mask harmless uninitialized memory read/writes. */ +/* #undef UMRW */ + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline __inline +#endif + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ diff --git a/db/dist/winmsi/files.in b/db/dist/winmsi/files.in index 82bcbcdd2..03f163c0a 100644 --- a/db/dist/winmsi/files.in +++ b/db/dist/winmsi/files.in @@ -1,4 +1,4 @@ -# $Id: files.in,v 1.10 2006/09/14 15:50:50 mjc Exp $ +# $Id: files.in,v 1.11 2007/02/16 04:50:44 alexg Exp $ # Lists files needed to install particular # features in Windows. Feature names must be # listed in features.in . @@ -49,6 +49,7 @@ CoreTools build_windows/Release/db_archive.exe /bin/ db_arc~1.exe CoreTools build_windows/Release/db_checkpoint.exe /bin/ db_che~1.exe CoreTools build_windows/Release/db_deadlock.exe /bin/ db_dea~1.exe CoreTools build_windows/Release/db_dump.exe /bin/ db_dump.exe +CoreTools build_windows/Release/db_hotbackup.exe /bin/ db_hot~1.exe CoreTools build_windows/Release/db_load.exe /bin/ db_load.exe CoreTools build_windows/Release/db_printlog.exe /bin/ db_pri~1.exe CoreTools build_windows/Release/db_recover.exe /bin/ db_rec~1.exe diff --git a/db/docs/.cvsignore b/db/docs/.cvsignore new file mode 100644 index 000000000..c248967cb --- /dev/null +++ b/db/docs/.cvsignore @@ -0,0 +1,9 @@ +api_c +api_cxx +api_tcl +images +index.html +java +license +ref +utility diff --git a/db/docs/api_c/api_core.html b/db/docs/api_c/api_core.html index a9049d318..9a143f320 100644 --- a/db/docs/api_c/api_core.html +++ b/db/docs/api_c/api_core.html @@ -1,15 +1,14 @@ - - + -Berkeley DB: Berkeley DB: C Handle Methods (version 4.5.20) +Berkeley DB: Berkeley DB: C Handle Methods (version 4.6.18) -

Berkeley DB: C Handle Methods (version 4.5.20)

+

Berkeley DB: C Handle Methods (version 4.6.18)

@@ -19,6 +18,7 @@ + @@ -45,11 +45,13 @@ + + @@ -60,12 +62,13 @@ - - - - - - + + + + + + + @@ -113,6 +116,7 @@ + @@ -123,8 +127,10 @@ + + @@ -177,7 +183,6 @@ - @@ -211,6 +216,6 @@
C Handle MethodsDescription
db_createCreate a database handle
DB->cursorCreate a cursor
DB->delDelete items from a database
DB->err, DB->errxError message
DB->existsReturn if an item appears in a database
DB->fdReturn a file descriptor from a database
DB->get, DB->pgetGet items from a database
DB->get_byteswappedReturn if the underlying database is in host order
DB->set_errpfxSet error message prefix
DB->set_feedbackSet feedback callback
DB->set_flagsGeneral database configuration
DB->set_h_compareSet a Hash comparison function
DB->set_h_ffactorSet the Hash table density
DB->set_h_hashSet a hashing function
DB->set_h_nelemSet the Hash table size
DB->set_lorderSet the database byte order
DB->set_pagesizeSet the underlying database page size
DB->set_prioritySet cache page priority
DB->set_q_extentsizeSet Queue database extent size
DB->set_re_delimSet the variable-length record delimiter
DB->set_re_lenSet the fixed-length record length
DB->truncateEmpty a database
DB->upgradeUpgrade a database
DB->verifyVerify/salvage a database
DBcursor->c_closeClose a cursor
DBcursor->c_countReturn count of duplicates
DBcursor->c_delDelete by cursor
DBcursor->c_dupDuplicate a cursor
DBcursor->c_get, DBcursor->c_pgetRetrieve by cursor
DBcursor->c_putStore by cursor
DBcursor->closeClose a cursor
DBcursor->countReturn count of duplicates
DBcursor->delDelete by cursor
DBcursor->dupDuplicate a cursor
DBcursor->get, DBcursor->pgetRetrieve by cursor
DBcursor->putStore by cursor
DBcursor->set_prioritySet the cursor's cache priority
db_env_createCreate an environment handle
DB_ENV->cdsgroup_beginGet a locker ID in Berkeley DB Concurrent Data Store
DB_ENV->rep_set_limitLimit data sent in response to a single message
DB_ENV->rep_set_nsitesConfigure replication group site count
DB_ENV->rep_set_priorityConfigure replication site priority
DB_ENV->rep_set_requestConfigure replication client retransmission requests
DB_ENV->rep_set_timeoutConfigure replication timeouts
DB_ENV->rep_set_transportConfigure replication transport callback
DB_ENV->rep_startConfigure an environment for replication
DB_ENV->repmgr_set_local_siteSpecify the replication manager's local site
DB_ENV->repmgr_site_listList the sites and their status
DB_ENV->repmgr_startStart the replication manager
DB_ENV->repmgr_statReplication manager statistics
DB_ENV->set_allocSet local space allocation functions
DB_ENV->set_app_dispatchConfigure application recovery
DB_ENV->set_cache_maxSet the maximum cache size
DB_ENV->set_cachesizeSet the environment cache size
DB_ENV->set_data_dirSet the environment data directory
DB_ENV->set_encryptSet the environment cryptographic key
DB_MPOOLFILE->getGet page from a file in a memory pool
DB_MPOOLFILE->openOpen a file in a memory pool
DB_MPOOLFILE->putReturn a page to a memory pool
DB_MPOOLFILE->setSet memory pool page attributes
DB_MPOOLFILE->set_clear_lenSet file page bytes to be cleared
DB_MPOOLFILE->set_fileidSet file unique identifier
DB_MPOOLFILE->set_flagsGeneral memory pool file configuration
db_versionReturn version information
log_compareCompare two Log Sequence Numbers
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/c_pindex.html b/db/docs/api_c/c_pindex.html index fe5a3539d..1bd7ff71e 100644 --- a/db/docs/api_c/c_pindex.html +++ b/db/docs/api_c/c_pindex.html @@ -25,6 +25,7 @@ Configuring Berkeley DB  --enable-debug_wop Configuring Berkeley DB  --enable-diagnostic Configuring Berkeley DB  --enable-dump185 +Configuring Berkeley DB  --enable-fine_grained_lock_manager Configuring Berkeley DB  --enable-java Configuring Berkeley DB  --enable-posixmutexes Configuring Berkeley DB  --enable-pthread_api @@ -56,13 +57,17 @@ turn off system  buffering for database files turn off system  buffering for log files turn off system  buffering for log files + building for BREW  building for QNX + building for S60  building for UNIX  building for UNIX FAQ  building for VxWorks  building for VxWorks AE  building for VxWorks FAQ  building for Windows + building for Windows CE + building for Windows CE FAQ  building for Windows FAQ  bulk retrieval selecting a  byte order @@ -80,6 +85,7 @@  Concurrent Data Store database environment  configuration  configuring Berkeley DB for UNIX systems + configuring the fine-grained lock manager  copying databases salvaging  corrupted databases  counting data items for a key @@ -92,7 +98,7 @@  cursor stability database  cursors DBT  data -DBcursor->c_put  DB_AFTER +DBcursor->put  DB_AFTER DB->verify  DB_AGGRESSIVE DB->put  DB_APPEND DB_ENV->log_archive  DB_ARCH_ABS @@ -103,7 +109,7 @@ DB_ENV->dbremove  DB_AUTO_COMMIT DB_ENV->dbrename  DB_AUTO_COMMIT DB_ENV->set_flags  DB_AUTO_COMMIT -DBcursor->c_put  DB_BEFORE +DBcursor->put  DB_BEFORE DB->open  DB_BTREE  DB_BUFFER_SMALL DB_ENV->set_flags  DB_CDB_ALLDB @@ -116,18 +122,21 @@ DB_ENV->open  DB_CREATE DB_MPOOLFILE->open  DB_CREATE DB_SEQUENCE->open  DB_CREATE -DBcursor->c_get  DB_CURRENT -DBcursor->c_put  DB_CURRENT +DBcursor->get  DB_CURRENT +DBcursor->put  DB_CURRENT DB_LOGC->get  DB_CURRENTDB_DBT_APPMALLOC +DB->associate  DB_DBT_APPMALLOC +DBT  DB_DBT_APPMALLOC DBT  DB_DBT_MALLOC +DB->associate  DB_DBT_MULTIPLE +DBT  DB_DBT_MULTIPLE DBT  DB_DBT_PARTIAL DBT  DB_DBT_REALLOC DBT  DB_DBT_USERMEM DB_MPOOLFILE->open  DB_DIRECT DB_ENV->set_flags  DB_DIRECT_DB DB_ENV->set_flags  DB_DIRECT_LOGDB_DONOTINDEX +DB->associate  DB_DONOTINDEX DB_ENV->set_flags  DB_DSYNC_DB DB_ENV->set_flags  DB_DSYNC_LOG DB->set_flags  DB_DUP @@ -139,14 +148,16 @@ DB_ENV->set_encrypt  DB_ENCRYPT_AES DB_ENV->set_event_notify  DB_EVENT_PANIC DB_ENV->set_event_notify  DB_EVENT_REP_CLIENT +DB_ENV->set_event_notify  DB_EVENT_REP_ELECTED DB_ENV->set_event_notify  DB_EVENT_REP_MASTER DB_ENV->set_event_notify  DB_EVENT_REP_NEWMASTER +DB_ENV->set_event_notify  DB_EVENT_REP_PERM_FAILED DB_ENV->set_event_notify  DB_EVENT_REP_STARTUPDONE DB_ENV->set_event_notify  DB_EVENT_WRITE_FAILED DB->open  DB_EXCL DB_SEQUENCE->open  DB_EXCL DB->stat  DB_FAST_STAT -DBcursor->c_get  DB_FIRST +DBcursor->get  DB_FIRST DB_LOGC->get  DB_FIRST DB_ENV->txn_recover  DB_FIRST DB_ENV->log_put  DB_FLUSH @@ -155,9 +166,9 @@ DB->compact  DB_FREELIST_ONLY DB->compact  DB_FREE_SPACE DB->get  DB_GET_BOTH -DBcursor->c_get  DB_GET_BOTH -DBcursor->c_get  DB_GET_BOTH_RANGE -DBcursor->c_get  DB_GET_RECNO +DBcursor->get  DB_GET_BOTH +DBcursor->get  DB_GET_BOTH_RANGE +DBcursor->get  DB_GET_RECNO DB->open  DB_HASH File naming  DB_HOME File naming  db_home @@ -170,13 +181,13 @@ DB_ENV->open  DB_INIT_TXN DB->set_flags  DB_INORDER DB->join  DB_JOIN_ITEM -DBcursor->c_get  DB_JOIN_ITEM +DBcursor->get  DB_JOIN_ITEM DB->join  DB_JOIN_NOSORT Error returns to applications  DB_KEYEMPTY Error returns to applications  DB_KEYEXIST -DBcursor->c_put  DB_KEYFIRST -DBcursor->c_put  DB_KEYLAST -DBcursor->c_get  DB_LAST +DBcursor->put  DB_KEYFIRST +DBcursor->put  DB_KEYLAST +DBcursor->get  DB_LAST DB_LOGC->get  DB_LAST DB_ENV->open  DB_LOCKDOWN DB_ENV->txn_begin  DB_LOCK_DEADLOCK @@ -219,17 +230,15 @@ DB_ENV->set_flags  DB_LOG_INMEMORY DB_MPOOLFILE->get  DB_MPOOL_CREATE DB_MPOOLFILE->get  DB_MPOOL_DIRTY -DB_MPOOLFILE->put  DB_MPOOL_DISCARD -DB_MPOOLFILE->set  DB_MPOOL_DISCARD DB_MPOOLFILE->get  DB_MPOOL_EDIT DB_MPOOLFILE->get  DB_MPOOL_LAST DB_MPOOLFILE->get  DB_MPOOL_NEW DB_MPOOLFILE->set_flags  DB_MPOOL_NOFILE DB_MPOOLFILE->set_flags  DB_MPOOL_UNLINK DB->get  DB_MULTIPLE -DBcursor->c_get  DB_MULTIPLE +DBcursor->get  DB_MULTIPLE DBT  DB_MULTIPLE_INIT -DBcursor->c_get  DB_MULTIPLE_KEY +DBcursor->get  DB_MULTIPLE_KEY DBT  DB_MULTIPLE_KEY_NEXT DBT  DB_MULTIPLE_NEXT DBT  DB_MULTIPLE_RECNO_NEXT @@ -239,13 +248,13 @@ DB_ENV->set_isalive  DB_MUTEX_PROCESS_ONLY DB_ENV->mutex_alloc  DB_MUTEX_PROCESS_ONLY DB_ENV->mutex_alloc  DB_MUTEX_SELF_BLOCK -DBcursor->c_get  DB_NEXT +DBcursor->get  DB_NEXT DB_LOGC->get  DB_NEXT DB_ENV->txn_recover  DB_NEXT -DBcursor->c_get  DB_NEXT_DUP -DBcursor->c_get  DB_NEXT_NODUP +DBcursor->get  DB_NEXT_DUP +DBcursor->get  DB_NEXT_NODUP DB->put  DB_NODUPDATA -DBcursor->c_put  DB_NODUPDATA +DBcursor->put  DB_NODUPDATA DB_ENV->set_flags  DB_NOLOCKING DB->open  DB_NOMMAP DB_ENV->set_flags  DB_NOMMAP @@ -267,30 +276,49 @@ DB_ENV->set_flags  DB_OVERWRITE  DB_PAGE_NOTFOUND DB_ENV->set_flags  DB_PANIC_ENVIRONMENT -DBcursor->c_dup  DB_POSITION -DBcursor->c_get  DB_PREV +DBcursor->dup  DB_POSITION +DBcursor->get  DB_PREV DB_LOGC->get  DB_PREV -DBcursor->c_get  DB_PREV_NODUP +DBcursor->get  DB_PREV_DUP +DBcursor->get  DB_PREV_NODUP DB->verify  DB_PRINTABLE +DB->set_priority  DB_PRIORITY_DEFAULT +DBcursor->set_priority  DB_PRIORITY_DEFAULT +DB_MPOOLFILE->put  DB_PRIORITY_DEFAULT DB_MPOOLFILE->set_priority  DB_PRIORITY_DEFAULT +DB->set_priority  DB_PRIORITY_HIGH +DBcursor->set_priority  DB_PRIORITY_HIGH +DB_MPOOLFILE->put  DB_PRIORITY_HIGH DB_MPOOLFILE->set_priority  DB_PRIORITY_HIGH +DB->set_priority  DB_PRIORITY_LOW +DBcursor->set_priority  DB_PRIORITY_LOW +DB_MPOOLFILE->put  DB_PRIORITY_LOW DB_MPOOLFILE->set_priority  DB_PRIORITY_LOW +DB_MPOOLFILE->put  DB_PRIORITY_UNCHANGED +DB->set_priority  DB_PRIORITY_VERY_HIGH +DBcursor->set_priority  DB_PRIORITY_VERY_HIGH +DB_MPOOLFILE->put  DB_PRIORITY_VERY_HIGH DB_MPOOLFILE->set_priority  DB_PRIORITY_VERY_HIGH +DB->set_priority  DB_PRIORITY_VERY_LOW +DBcursor->set_priority  DB_PRIORITY_VERY_LOW +DB_MPOOLFILE->put  DB_PRIORITY_VERY_LOW DB_MPOOLFILE->set_priority  DB_PRIORITY_VERY_LOW DB_ENV->open  DB_PRIVATE DB->open  DB_QUEUE DB->open  DB_RDONLY DB_MPOOLFILE->open  DB_RDONLY DB->cursor  DB_READ_COMMITTED +DB->exists  DB_READ_COMMITTED DB->get  DB_READ_COMMITTED DB->stat  DB_READ_COMMITTED DB_ENV->txn_begin  DB_READ_COMMITTED DB->cursor  DB_READ_UNCOMMITTED +DB->exists  DB_READ_UNCOMMITTED DB->get  DB_READ_UNCOMMITTED DB->join  DB_READ_UNCOMMITTED DB->open  DB_READ_UNCOMMITTED DB->stat  DB_READ_UNCOMMITTED -DBcursor->c_get  DB_READ_UNCOMMITTED +DBcursor->get  DB_READ_UNCOMMITTED DB_ENV->txn_begin  DB_READ_UNCOMMITTED DB->open  DB_RECNO DB->set_flags  DB_RECNUM @@ -311,6 +339,7 @@ DB_ENV->repmgr_add_remote_site  DB_REPMGR_PEER DB_ENV->rep_set_timeout  DB_REP_ACK_TIMEOUT DB_ENV->rep_set_transport  DB_REP_ANYWHERE +DB_ENV->rep_set_timeout  DB_REP_CHECKPOINT_DELAY DB_ENV->rep_start  DB_REP_CLIENT DB_ENV->repmgr_start  DB_REP_CLIENT DB_ENV->rep_set_config  DB_REP_CONF_BULK @@ -322,7 +351,7 @@ DB_ENV->repmgr_start  DB_REP_ELECTION DB_ENV->rep_set_timeout  DB_REP_ELECTION_RETRY DB_ENV->rep_set_timeout  DB_REP_ELECTION_TIMEOUT -DB_ENV->repmgr_start  DB_REP_FULL_ELECTION +DB_ENV->rep_set_timeout  DB_REP_FULL_ELECTION_TIMEOUT  DB_REP_HANDLE_DEAD DB_ENV->rep_process_message  DB_REP_HOLDELECTION DB_ENV->rep_process_message  DB_REP_IGNORE @@ -331,7 +360,6 @@  DB_REP_LOCKOUT DB_ENV->rep_start  DB_REP_MASTER DB_ENV->repmgr_start  DB_REP_MASTER -DB_ENV->rep_process_message  DB_REP_NEWMASTER DB_ENV->rep_process_message  DB_REP_NEWSITE DB_ENV->rep_set_transport  DB_REP_NOBUFFER DB_ENV->rep_process_message  DB_REP_NOTPERM @@ -339,22 +367,23 @@ DB_ENV->rep_set_transport  DB_REP_REREQUEST  DB_REP_UNAVAIL DB->set_flags  DB_REVSPLITOFF +DB->exists  DB_RMW DB->get  DB_RMW DB->join  DB_RMW -DBcursor->c_get  DB_RMW +DBcursor->get  DB_RMW db_env_create  DB_RPCCLIENT Error returns to applications  DB_RUNRECOVERY DB->verify  DB_SALVAGE DB_SEQUENCE->set_flags  DB_SEQ_DEC DB_SEQUENCE->set_flags  DB_SEQ_INC DB_SEQUENCE->set_flags  DB_SEQ_WRAP -DBcursor->c_get  DB_SET +DBcursor->get  DB_SET DB_LOGC->get  DB_SET DB_ENV->set_timeout  DB_SET_LOCK_TIMEOUT DB_TXN->set_timeout  DB_SET_LOCK_TIMEOUT -DBcursor->c_get  DB_SET_RANGE +DBcursor->get  DB_SET_RANGE DB->get  DB_SET_RECNO -DBcursor->c_get  DB_SET_RECNO +DBcursor->get  DB_SET_RECNO DB_ENV->set_timeout  DB_SET_TXN_TIMEOUT DB_TXN->set_timeout  DB_SET_TXN_TIMEOUT DB->set_flags  DB_SNAPSHOT @@ -365,14 +394,15 @@ DB_ENV->memp_stat  DB_STAT_ALL DB_ENV->mutex_stat  DB_STAT_ALL DB_ENV->rep_stat  DB_STAT_ALL +DB_ENV->repmgr_stat  DB_STAT_ALL DB_ENV->txn_stat  DB_STAT_ALL -DB->stat  DB_STAT_CLEAR DB_ENV->stat_print  DB_STAT_CLEAR DB_ENV->lock_stat  DB_STAT_CLEAR DB_ENV->log_stat  DB_STAT_CLEAR DB_ENV->memp_stat  DB_STAT_CLEAR DB_ENV->mutex_stat  DB_STAT_CLEAR DB_ENV->rep_stat  DB_STAT_CLEAR +DB_ENV->repmgr_stat  DB_STAT_CLEAR DB_SEQUENCE->stat  DB_STAT_CLEAR DB_ENV->txn_stat  DB_STAT_CLEAR DB_ENV->lock_stat  DB_STAT_LOCK_CONF @@ -397,6 +427,7 @@ DB_ENV->txn_begin  DB_TXN_NOSYNC DB_TXN->commit  DB_TXN_NOSYNC DB->set_flags  DB_TXN_NOT_DURABLE +DB_ENV->set_flags  DB_TXN_NOWAIT DB_ENV->txn_begin  DB_TXN_NOWAIT DB_ENV->set_app_dispatch  DB_TXN_PRINT DB->cursor  DB_TXN_SNAPSHOT @@ -404,7 +435,9 @@ DB_ENV->txn_begin  DB_TXN_SNAPSHOT DB_ENV->txn_begin  DB_TXN_SYNC DB_TXN->commit  DB_TXN_SYNC +DB_ENV->txn_begin  DB_TXN_WAIT DB_ENV->set_flags  DB_TXN_WRITE_NOSYNC +DB_ENV->txn_begin  DB_TXN_WRITE_NOSYNC DB->open  DB_UNKNOWN DB->set_feedback  DB_UPGRADE DB_ENV->open  DB_USE_ENVIRON @@ -412,6 +445,8 @@ DB_ENV->open  DB_USE_ENVIRON_ROOT DB_ENV->remove  DB_USE_ENVIRON_ROOT DB_ENV->set_verbose  DB_VERB_DEADLOCK +DB_ENV->set_verbose  DB_VERB_FILEOPS +DB_ENV->set_verbose  DB_VERB_FILEOPS_ALL DB_ENV->set_verbose  DB_VERB_RECOVERY DB_ENV->set_verbose  DB_VERB_REGISTER DB_ENV->set_verbose  DB_VERB_REPLICATION @@ -425,7 +460,6 @@ DB_ENV->set_flags  DB_YIELDCPU  deadlocks introduction to  debuggingdebugging applications  degree 1 isolation  degree 2 isolation  degrees of isolation @@ -468,7 +502,7 @@ remote  filesystems page  fill factor  Flash memory configurations -configuring a small memory  footprint library +configuring a small memory  footprint library Berkeley DB  free-threaded handles  FreeBSD specifying a database  hash @@ -559,7 +593,7 @@  retrieving records with a cursor turn off  reverse splits in Btree databases  RPC client -configuring a  RPC client/server +configuring a  RPC client/server introduction to  rpc client/server  RPC FAQ  RPC server @@ -587,11 +621,11 @@  SunOS loading Berkeley DB with  Tcl using Berkeley DB with  Tcl -configuring the  Tcl API +configuring the  Tcl API  Tcl API programming notes  Tcl FAQ  temporary files -configuring the  test suite +configuring the  test suite running the  test suite running the  test suite under UNIX running the  test suite under Windows @@ -640,11 +674,14 @@  Upgrading to release 4.3  Upgrading to release 4.4  Upgrading to release 4.5 + Upgrading to release 4.6  utilities database  verification building for  VxWorks FAQ  VxWorks notes running the test suite under  Windows +building for  Windows CE FAQ + Windows CE notes building for  Windows FAQ  Windows notes  XA FAQ @@ -652,6 +689,6 @@  __db.001 -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_associate.html b/db/docs/api_c/db_associate.html index 80e629979..7520486be 100644 --- a/db/docs/api_c/db_associate.html +++ b/db/docs/api_c/db_associate.html @@ -1,6 +1,5 @@ - - - + + @@ -44,8 +43,9 @@ and 0 on success.

Parameters

-
callback
The callback parameter is a callback function that creates a -secondary key from a given primary key and data pair. +
callback
The callback parameter is a callback function that creates the +set of secondary keys corresponding to a given primary key and data +pair.

The callback parameter may be NULL if both the primary and secondary database handles were opened with the DB_RDONLY flag.

The callback takes four arguments:

@@ -56,21 +56,41 @@ database handles were opened with the item.
result
The result parameter is a zeroed DBT in which the callback function should fill in data and size fields that describe -the secondary key. +the secondary key or keys.
- -

If the callback function needs to allocate memory for the data -field rather than simply pointing into the primary key or datum, the -flags field of the returned DBT should be set to -DB_DBT_APPMALLOC, which indicates that Berkeley DB should free the -memory when it is done with it.

- -

If any key/data pair in the primary yields a null secondary key and +

The callback optionally returns some special values:

+
+
DB_DBT_APPMALLOC
If the callback function needs to allocate memory for the result +data field (rather than simply pointing into the primary key or datum), +DB_DBT_APPMALLOC should be set in the flags field of the +result DBT, which indicates that Berkeley DB should free the +memory when it is done with it. +
DB_DBT_MULTIPLE
To return multiple secondary keys, DB_DBT_MULTIPLE should be set +in the flags field of the result DBT, which +indicates Berkeley DB should treat the size field as the number of +secondary keys (zero or more), and the data field as a pointer +to an array of that number of DBTs describing the set of +secondary keys. +

When multiple secondary keys are returned, keys may not be repeated. +In other words, there must be no repeated record numbers in the array +for Recno and Queue databases, and keys must not compare equally using +the secondary database's comparison function for Btree and Hash +databases. If keys are repeated, operations may fail and the secondary +may become inconsistent with the primary.

+

The DB_DBT_APPMALLOC flag may be set for any DBT in the +array of returned DBT's to indicate that Berkeley DB should free the +memory referenced by that particular DBT's data field when it +is done with it.

+

The DB_DBT_APPMALLOC flag may be combined with +DB_DBT_MULTIPLE in the result DBT's flag +field to indicate that Berkeley DB should free the array once it is done with +all of the returned keys.

+
DB_DONOTINDEX
If any key/data pair in the primary yields a null secondary key and should be left out of the secondary index, the callback function may optionally return DB_DONOTINDEX. Otherwise, the callback function should return 0 in case of success or an error outside of the Berkeley DB name space in case of failure; the error code will be returned -from the Berkeley DB call that initiated the callback.

+from the Berkeley DB call that initiated the callback.

If the callback function returns DB_DONOTINDEX for any key/data pairs in the primary database, the secondary index will not contain any reference to those key/data pairs, and such operations as cursor @@ -78,6 +98,10 @@ iterations and range queries will reflect only the corresponding subset of the database. If this is not desirable, the application should ensure that the callback function is well-defined for all possible values and never returns DB_DONOTINDEX.

+

Returning DB_DONOTINDEX is equivalent to setting +DB_DBT_MULTIPLE on the result DBT and setting +the size field to zero.

+

Berkeley DB is not re-entrant. Callback functions should not attempt to make library calls (for example, to release locks or close open handles). Re-entering Berkeley DB is not guaranteed to work correctly, and the results @@ -124,15 +148,16 @@ with the DB_THREAD flag it is saf of control after the DB->associate method has returned. Note also that either secondary keys must be unique or the secondary database must be configured with support for duplicate data items. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DB->associate method @@ -157,6 +182,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_class.html b/db/docs/api_c/db_class.html index 04c525b81..7293c84cf 100644 --- a/db/docs/api_c/db_class.html +++ b/db/docs/api_c/db_class.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ DB

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_close.html b/db/docs/api_c/db_close.html index b510ee19c..edd2acd2c 100644 --- a/db/docs/api_c/db_close.html +++ b/db/docs/api_c/db_close.html @@ -1,6 +1,5 @@ - - + @@ -88,6 +87,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_compact.html b/db/docs/api_c/db_compact.html index 05fcb7609..10e3630c3 100644 --- a/db/docs/api_c/db_compact.html +++ b/db/docs/api_c/db_compact.html @@ -1,6 +1,5 @@ - - + @@ -135,6 +134,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_cursor.html b/db/docs/api_c/db_cursor.html index ee39e73c2..72d142dda 100644 --- a/db/docs/api_c/db_cursor.html +++ b/db/docs/api_c/db_cursor.html @@ -1,6 +1,5 @@ - - - + + @@ -42,18 +41,18 @@ a pointer to the allocated cursor is copied.

flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one or more of the following values:
-
DB_READ_COMMITTED
This cursor will have degree 2 isolation. This ensures the stability -of the current data item read by this cursor but permits data read by -this cursor to be modified or deleted prior to the commit of the +
DB_READ_COMMITTED
Configure a transactional cursor to have degree 2 isolation. This ensures +the stability of the current data item read by this cursor but permits data +read by this cursor to be modified or deleted prior to the commit of the transaction for this cursor. -
DB_READ_UNCOMMITTED
This cursor will have degree 1 isolation. Read operations performed by -the cursor may return modified but not yet committed data. Silently -ignored if the DB_READ_UNCOMMITTED flag was not specified when -the underlying database was opened. +
DB_READ_UNCOMMITTED
Configure a transactional cursor to have degree 1 isolation. Read +operations performed by the cursor may return modified but not yet +committed data. Silently ignored if the DB_READ_UNCOMMITTED +flag was not specified when the underlying database was opened.
DB_WRITECURSOR
Specify that the cursor will be used to update the database. The underlying database environment must have been opened using the DB_INIT_CDB flag. -
DB_TXN_SNAPSHOT
Specify that the cursor operate with read-only +
DB_TXN_SNAPSHOT
Configure a transactional cursor to operate with read-only snapshot isolation. For databases with the DB_MULTIVERSION flag set, data values will be read as they are when the cursor is opened, without taking read locks. This @@ -92,6 +91,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_del.html b/db/docs/api_c/db_del.html index df370a156..9cdb07d70 100644 --- a/db/docs/api_c/db_del.html +++ b/db/docs/api_c/db_del.html @@ -1,6 +1,5 @@ - - + @@ -46,15 +45,16 @@ and 0 on success.

flags
The flags parameter is currently unused, and must be set to 0.
key
The key DBT operated on. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DB->del method @@ -89,6 +89,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_err.html b/db/docs/api_c/db_err.html index 660034861..ad9010a1a 100644 --- a/db/docs/api_c/db_err.html +++ b/db/docs/api_c/db_err.html @@ -1,7 +1,6 @@ - - + @@ -79,6 +78,6 @@ string.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_exists.html b/db/docs/api_c/db_exists.html new file mode 100644 index 000000000..3907c90e1 --- /dev/null +++ b/db/docs/api_c/db_exists.html @@ -0,0 +1,81 @@ + + + + + +Berkeley DB: DB->exists + + + + + + + +
+

DB->exists

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB->exists(DB *db, DB_TXN *txnid, DBT *key, u_int32_t flags); +

+
+

Description: DB->exists

+

The DB->exists method returns if the specified key appears in the +database.

+

The DB->exists method will return DB_NOTFOUND if the specified key is not in the database. +The DB->exists method will return DB_KEYEMPTY if the database is a Queue or Recno database and +the specified key exists, but was never explicitly created by the +application or was later deleted. +Unless otherwise specified, the DB->exists method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or +one of the following values: +In addition, the following flags may be set by +bitwise inclusively OR'ing them into the flags parameter: +
+
DB_READ_COMMITTED
Configure a transactional read operation to have degree 2 isolation (the +read is not repeatable). +
DB_READ_UNCOMMITTED
Configure a transactional read operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the +DB_READ_UNCOMMITTED flag was not specified when the underlying +database was opened. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock. +

Because the DB->exists method will not hold locks across +Berkeley DB calls in non-transactional operations, the DB_RMW flag to +the DB->exists call is meaningful only in the presence of +transactions.

+
+
key
The key DBT operated on. +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +
+
+

Class

+DB +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/db_fd.html b/db/docs/api_c/db_fd.html index 4a16f872c..ad4589e98 100644 --- a/db/docs/api_c/db_fd.html +++ b/db/docs/api_c/db_fd.html @@ -1,6 +1,5 @@ - - + @@ -53,6 +52,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_get.html b/db/docs/api_c/db_get.html index ff73c65d6..448211a6a 100644 --- a/db/docs/api_c/db_get.html +++ b/db/docs/api_c/db_get.html @@ -1,6 +1,5 @@ - - - + + @@ -39,7 +38,7 @@ are returned in the structure to which data refers.

first data item for the designated key. Duplicates are sorted by insert order, except where this order has been overridden by cursor operations. Retrieval of duplicates requires the use of cursor operations. -See DBcursor->c_get for details.

+See DBcursor->get for details.

When called on a database that has been made into a secondary index using the DB->associate method, the DB->get and DB->pget methods return the key from the secondary index and the data @@ -121,17 +120,18 @@ into secondary indices using the DB->ass

See DB_MULTIPLE_INIT for more information.

-
DB_READ_COMMITTED
Perform the get operation with degree 2 isolation. The read is not -repeatable. -
DB_READ_UNCOMMITTED
Perform the get operation with degree 1 isolation, reading modified but -not yet committed data. Silently ignored if the +
DB_READ_COMMITTED
Configure a transactional get operation to have degree 2 isolation (the +read is not repeatable). +
DB_READ_UNCOMMITTED
Configure a transactional get operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened. -
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.

Because the DB->get method will not hold locks across Berkeley DB calls in non-transactional operations, the DB_RMW flag to the DB->get call is meaningful only in the presence of @@ -139,15 +139,16 @@ transactions.

key
The key DBT operated on.
pkey
The pkey parameter is the return key from the primary database. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DB->get method @@ -191,6 +192,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_get_byteswapped.html b/db/docs/api_c/db_get_byteswapped.html index 73dae3fb3..1a616dae2 100644 --- a/db/docs/api_c/db_get_byteswapped.html +++ b/db/docs/api_c/db_get_byteswapped.html @@ -1,6 +1,5 @@ - - + @@ -63,6 +62,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_get_mpf.html b/db/docs/api_c/db_get_mpf.html index bf2a64f0e..84378293d 100644 --- a/db/docs/api_c/db_get_mpf.html +++ b/db/docs/api_c/db_get_mpf.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_get_type.html b/db/docs/api_c/db_get_type.html index 8860df9f6..83358633a 100644 --- a/db/docs/api_c/db_get_type.html +++ b/db/docs/api_c/db_get_type.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_getenv.html b/db/docs/api_c/db_getenv.html index 68c891326..ed3398ff4 100644 --- a/db/docs/api_c/db_getenv.html +++ b/db/docs/api_c/db_getenv.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_join.html b/db/docs/api_c/db_join.html index f39fef408..a0bd26f6e 100644 --- a/db/docs/api_c/db_join.html +++ b/db/docs/api_c/db_join.html @@ -1,6 +1,5 @@ - - - + + @@ -34,10 +33,10 @@ information on how to organize your data to use this functionality, see Equality join.

The DB->join method method is called using the DB handle of the primary database.

-

The join cursor supports only the DBcursor->c_get and dbc_close +

The join cursor supports only the DBcursor->get and dbc_close cursor functions:

-
DBcursor->c_get
Iterates over the values associated with the keys to which each item in +
DBcursor->get
Iterates over the values associated with the keys to which each item in curslist was initialized. Any data value that appears in all items specified by the curslist parameter is then used as a key into the primary, and the key/data pair found in the @@ -52,16 +51,18 @@ The data parameter is left unchanged. In addition, the following flag may be set by bitwise inclusively OR'ing it into the flags parameter:
-
DB_READ_UNCOMMITTED
Read modified but not yet committed data. Silently ignored if the +
DB_READ_UNCOMMITTED
Configure a transactional join operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened. -
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.
-
DBcursor->c_close
Close the returned cursor and release all resources. (Closing the cursors +
DBcursor->close
Close the returned cursor and release all resources. (Closing the cursors in curslist is the responsibility of the caller.)

The DB->join method @@ -73,7 +74,7 @@ and 0 on success.

curslist
The curslist parameter contains a NULL terminated array of cursors. Each cursor must have been initialized to refer to the key on which the underlying database should be joined. Typically, this initialization is done -by a DBcursor->c_get call with the DB_SET flag specified. Once the +by a DBcursor->get call with the DB_SET flag specified. Once the cursors have been passed as part of a curslist, they should not be accessed or modified until the newly created join cursor has been closed, or else inconsistent results may be returned. @@ -114,7 +115,7 @@ unrolled a committed transaction.
DB_SECONDARY_BAD
A secondary index references a nonexistent primary key.
-
EINVAL
If cursor methods other than DBcursor->c_get or DBcursor->c_close were +
EINVAL
If cursor methods other than DBcursor->get or DBcursor->close were called; or if an invalid flag value or parameter was specified.
@@ -127,6 +128,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_key_range.html b/db/docs/api_c/db_key_range.html index 5391d5dba..7c688809c 100644 --- a/db/docs/api_c/db_key_range.html +++ b/db/docs/api_c/db_key_range.html @@ -1,6 +1,5 @@ - - + @@ -58,15 +57,17 @@ contains three elements of type double: less, equal, and field less is 0.05, 5% of the keys in the database are less than the key parameter. The value for equal will be zero if there is no matching key, and will be non-zero otherwise. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. The DB->key_range method does not retain the locks it acquires for the +the operation will be implicitly transaction protected. +The DB->key_range method does not retain the locks it acquires for the life of the transaction, so estimates may not be repeatable.
flags
The flags parameter is currently unused, and must be set to 0. @@ -97,6 +98,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_list.html b/db/docs/api_c/db_list.html index 6b651793d..a0d105e2f 100644 --- a/db/docs/api_c/db_list.html +++ b/db/docs/api_c/db_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Databases and Related Methods

- + @@ -20,6 +19,7 @@ + @@ -30,6 +30,7 @@ + @@ -58,12 +59,13 @@ +
Database OperationsDescription
db_createCreate a database handle
DB->cursorCreate a cursor
DB->delDelete items from a database
DB->err, DB->errxError message
DB->existsReturn if an item appears in a database
DB->fdReturn a file descriptor from a database
DB->get, DB->pgetGet items from a database
DB->get_byteswappedReturn if the underlying database is in host order
DB->putStore items into a database
DB->removeRemove a database
DB->renameRename a database
DB->set_prioritySet cache page priority
DB->stat, DB->stat_printDatabase statistics
DB->syncFlush a database to stable storage
DB->truncateEmpty a database
DB->set_re_padSet the fixed-length record pad byte
DB->set_re_sourceSet the backing Recno text file
Hash Configuration
DB->set_h_compareSet a Hash comparison function
DB->set_h_ffactorSet the Hash table density
DB->set_h_hashSet a hashing function
DB->set_h_nelemSet the Hash table size
Queue Configuration
DB->set_q_extentsizeSet Queue database extent size
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_lsn.html b/db/docs/api_c/db_lsn.html deleted file mode 100644 index 1fc62e5e6..000000000 --- a/db/docs/api_c/db_lsn.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - -Berkeley DB: DB_LSN - - - - - - - -
-

DB_LSN

-
-APIRef -
-


- -

-#include <db.h>
-

-

Description

-

A DB_LSN is a log sequence number, which indicates a -unique position in the log. The DB_LSN structure is completely -opaque, and no application should ever need to look inside. -DB_LSN structures are used by the logging and memory pool -subsystems. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/db_open.html b/db/docs/api_c/db_open.html index de5dfca30..744b0e875 100644 --- a/db/docs/api_c/db_open.html +++ b/db/docs/api_c/db_open.html @@ -1,6 +1,5 @@ - - - + + @@ -30,6 +29,9 @@ int DB->get_dbname(DB *db, const char **filenamep, const char **dbnamep);

int +DB->get_multiple(DB *db); +

+int DB->get_open_flags(DB *db, u_int32_t *flagsp);

int @@ -108,11 +110,11 @@ not supported by the queue format.

DB_RDONLY
Open the database for reading only. Any attempt to modify items in the database will fail, regardless of the actual permissions of any underlying files. -
DB_READ_UNCOMMITTED
Support read operations with degree 1 isolation. Read operations on the -database may request the return of modified but not yet committed data. -This flag must be specified on all DB handles used to perform -dirty reads or database updates, otherwise requests for dirty reads may -not be honored and the read may block. +
DB_READ_UNCOMMITTED
Support transactional read operations with degree 1 isolation. Read +operations on the database may request the return of modified but not +yet committed data. This flag must be specified on all DB +handles used to perform dirty reads or database updates, otherwise +requests for dirty reads may not be honored and the read may block.
DB_THREAD
Cause the DB handle returned by DB->open to be free-threaded; that is, concurrently usable by multiple threads in the address space. @@ -134,14 +136,16 @@ defaults, and is not further specified by Berkeley DB. System shared memory segments created by the database open are created with mode mode, unmodified by the process' umask value. If mode is 0, the database open will use a default mode of readable and writable by both owner and group.

-
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. Note that transactionally protected operations on a DB handle +the operation will be implicitly transaction protected. +Note that transactionally protected operations on a DB handle requires the DB handle itself be transactionally protected during its open. Also note that the transaction must be committed before the handle is closed; see Berkeley DB @@ -206,8 +210,8 @@ unrolled a committed transaction.
DB_REP_LOCKOUT
The operation was blocked by client/master synchronization.
-

Description: DB->get_database

-

The DB->get_database method returns the current filename and database +

Description: DB->get_dbname

+

The DB->get_dbname method returns the current filename and database name.

Parameters

@@ -216,13 +220,23 @@ a pointer to the current filename is copied.
dbnamep
The dbnamep parameter references memory into which a pointer to the current database name is copied.
-

The DB->get_database method may be called at any time during the life of the +

The DB->get_dbname method may be called at any time during the life of the application.

-

The DB->get_database method +

The DB->get_dbname method returns a non-zero error value on failure and 0 on success.


+

Description: DB->get_multiple

+

The DB->get_multiple method returns non-zero if the DB handle +references a physical file supporting multiple databases.

+

In this case, the DB handle is a handle on a database whose key +values are the names of the databases stored in the physical file and +whose data values are opaque objects. No keys or data values may be +modified or stored using the database handle.

+

The DB->get_multiple method may not be called before the DB->open method has been +called.

+

Description: DB->get_open_flags

The DB->get_open_flags method returns the current open method flags.

The DB->get_open_flags method may not be called before the DB->open method has been @@ -251,6 +265,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_put.html b/db/docs/api_c/db_put.html index 58f46cb3c..78c2b5ad7 100644 --- a/db/docs/api_c/db_put.html +++ b/db/docs/api_c/db_put.html @@ -1,6 +1,5 @@ - - + @@ -73,15 +72,16 @@ database.

data
The data DBT operated on.
key
The key DBT operated on. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected. @@ -122,6 +122,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_remove.html b/db/docs/api_c/db_remove.html index eb033b406..dc922bd77 100644 --- a/db/docs/api_c/db_remove.html +++ b/db/docs/api_c/db_remove.html @@ -1,7 +1,6 @@ - - + @@ -88,6 +87,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_rename.html b/db/docs/api_c/db_rename.html index cfc89c30b..11594d557 100644 --- a/db/docs/api_c/db_rename.html +++ b/db/docs/api_c/db_rename.html @@ -1,7 +1,6 @@ - - + @@ -91,6 +90,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_alloc.html b/db/docs/api_c/db_set_alloc.html index dd2ec4d7e..757535270 100644 --- a/db/docs/api_c/db_set_alloc.html +++ b/db/docs/api_c/db_set_alloc.html @@ -1,7 +1,6 @@ - - + @@ -83,6 +82,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_append_recno.html b/db/docs/api_c/db_set_append_recno.html index f20531277..2068b22fe 100644 --- a/db/docs/api_c/db_set_append_recno.html +++ b/db/docs/api_c/db_set_append_recno.html @@ -1,6 +1,5 @@ - - + @@ -80,6 +79,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_bt_compare.html b/db/docs/api_c/db_set_bt_compare.html index fb2cb6f70..624c06702 100644 --- a/db/docs/api_c/db_set_bt_compare.html +++ b/db/docs/api_c/db_set_bt_compare.html @@ -1,6 +1,5 @@ - - - + + @@ -86,6 +85,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_bt_minkey.html b/db/docs/api_c/db_set_bt_minkey.html index 4ee6ce699..9dbe66985 100644 --- a/db/docs/api_c/db_set_bt_minkey.html +++ b/db/docs/api_c/db_set_bt_minkey.html @@ -1,6 +1,5 @@ - - + @@ -85,6 +84,6 @@ leaf page in bt_minkeyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_bt_prefix.html b/db/docs/api_c/db_set_bt_prefix.html index 3f0bbecfe..597c29a14 100644 --- a/db/docs/api_c/db_set_bt_prefix.html +++ b/db/docs/api_c/db_set_bt_prefix.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_cachesize.html b/db/docs/api_c/db_set_cachesize.html index 91efa1707..7c535fb9d 100644 --- a/db/docs/api_c/db_set_cachesize.html +++ b/db/docs/api_c/db_set_cachesize.html @@ -1,7 +1,6 @@ - - - + + @@ -51,8 +50,9 @@ allocated contiguously on some architectures. For example, some releases of Solaris limit the amount of memory that may be allocated contiguously by a process. If ncache is 0 or 1, the cache will be allocated contiguously in memory. If it is greater than 1, the cache -will be broken up into ncache equally sized, separate pieces of -memory.

+will be split across ncache separate regions, where the +region size is equal to the initial cache size divided by +ncache.

Because databases opened within Berkeley DB environments use the cache specified to the environment, it is an error to attempt to set a cache in a database created within an environment.

@@ -73,10 +73,8 @@ and 0 on success. may fail and return one of the following non-zero errors:

EINVAL
If the specified cache size was impossibly small; -called in a database environment; the method was called after -DB->open -was called; or if an +DB->open was called; or if an invalid flag value or parameter was specified.

@@ -107,6 +105,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_dup_compare.html b/db/docs/api_c/db_set_dup_compare.html index cabcf2e99..97f5114d6 100644 --- a/db/docs/api_c/db_set_dup_compare.html +++ b/db/docs/api_c/db_set_dup_compare.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_encrypt.html b/db/docs/api_c/db_set_encrypt.html index 022dfbcee..b5a2688df 100644 --- a/db/docs/api_c/db_set_encrypt.html +++ b/db/docs/api_c/db_set_encrypt.html @@ -1,7 +1,6 @@ - - + @@ -89,6 +88,6 @@ encryption flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_errcall.html b/db/docs/api_c/db_set_errcall.html index 8220992de..f7b50b2f3 100644 --- a/db/docs/api_c/db_set_errcall.html +++ b/db/docs/api_c/db_set_errcall.html @@ -1,7 +1,6 @@ - - + @@ -78,6 +77,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_errfile.html b/db/docs/api_c/db_set_errfile.html index 6b9edd696..3ba910549 100644 --- a/db/docs/api_c/db_set_errfile.html +++ b/db/docs/api_c/db_set_errfile.html @@ -1,7 +1,6 @@ - - - + + @@ -32,9 +31,9 @@ DB->get_errfile(DB *db, FILE **errfilep);


Description: DB->set_errfile

When an error occurs in the Berkeley DB library, a Berkeley DB error or an error -return value is returned by the interface. In some cases, however, -the errno value may be insufficient to completely describe -the cause of the error especially during initial application debugging. +return value is returned by the interface. In some cases, however, the +return value may be insufficient to completely describe the cause of the +error especially during initial application debugging.

The DB_ENV->set_errfile and DB->set_errfile methods are used to enhance the mechanism for reporting error messages to the application by setting a C library FILE * to be used for displaying additional Berkeley DB @@ -44,7 +43,18 @@ an additional error message to the specified file reference.

(":") (if a prefix string was previously specified using DB->set_errpfx or DB_ENV->set_errpfx), an error string, and a trailing <newline> character.

-

Setting errfile to NULL unconfigures the interface.

+

The default configuration when applications first create DB or +DB_ENV handles is as if the DB_ENV->set_errfile or +DB->set_errfile methods were called with the standard error output +(stderr) specified as the FILE * argument. Applications wanting no +output at all can turn off this default configuration by calling the +DB_ENV->set_errfile or DB->set_errfile methods with NULL as the +FILE * argument. Additionally, explicitly configuring the error output +channel using any of the DB_ENV->set_errfile, +DB->set_errfile, DB_ENV->set_errcall, +DB->set_errcall, DbEnv::set_error_stream or +Db::set_error_stream methods will also turn off this default output +for the application.

This error logging enhancement does not slow performance or significantly increase application size, and may be run during normal operation as well as during application debugging.

@@ -84,6 +94,6 @@ FILE * in errfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_errpfx.html b/db/docs/api_c/db_set_errpfx.html index b7b9668ab..7effb6041 100644 --- a/db/docs/api_c/db_set_errpfx.html +++ b/db/docs/api_c/db_set_errpfx.html @@ -1,7 +1,6 @@ - - + @@ -73,6 +72,6 @@ error prefix in errpfxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_feedback.html b/db/docs/api_c/db_set_feedback.html index fad31a2ef..141b6fced 100644 --- a/db/docs/api_c/db_set_feedback.html +++ b/db/docs/api_c/db_set_feedback.html @@ -1,7 +1,6 @@ - - + @@ -72,6 +71,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_flags.html b/db/docs/api_c/db_set_flags.html index e686d824f..ffc5952b7 100644 --- a/db/docs/api_c/db_set_flags.html +++ b/db/docs/api_c/db_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -130,7 +129,7 @@ will be returned.

DB_RECNUM
Support retrieval from the Btree using record numbers. For more information, see the DB_SET_RECNO flag to the DB->get -and DBcursor->c_get methods. +and DBcursor->get methods.

Logical record numbers in Btree databases are mutable in the face of record insertion or deletion. See the DB_RENUMBER flag in the Recno access method information for further discussion.

@@ -229,7 +228,7 @@ refer to the new record number 4, if any such record exists, after the deletion. If a cursor was positioned after record number 4 before the deletion, it will be shifted downward one logical record, continuing to refer to the same record as it did before. -

Using the DB->put or DBcursor->c_put interfaces to create new +

Using the DB->put or DBcursor->put interfaces to create new records will cause the creation of multiple records if the record number is more than one greater than the largest record currently in the database. For example, creating record 28, when record 25 was previously @@ -292,6 +291,6 @@ current flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_h_compare.html b/db/docs/api_c/db_set_h_compare.html new file mode 100644 index 000000000..f4d93068d --- /dev/null +++ b/db/docs/api_c/db_set_h_compare.html @@ -0,0 +1,86 @@ + + + + + +Berkeley DB: DB->set_h_compare + + + + + + + +
+

DB->set_h_compare

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB->set_h_compare(DB *db, + int (*compare_fcn)(DB *db, const DBT *dbt1, const DBT *dbt2)); +

+
+

Description: DB->set_h_compare

+

Set the Hash key comparison function. The comparison function is called +whenever it is necessary to compare a key specified by the application +with a key currently stored in the database.

+

If no comparison function is specified, a byte-by-byte comparison is +performed.

+

The DB->set_h_compare method configures operations performed using the specified +DB handle, not all operations performed on the underlying +database.

+

The DB->set_h_compare method may not be called after the DB->open method is called. +If the database already exists when +DB->open is called, the information specified to DB->set_h_compare must +be the same as that historically used to create the database or +corruption can occur.

+

The DB->set_h_compare method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
compare_fcn
The compare_fcn function is the application-specified Hash +comparison function. The comparison function takes three parameters: +
+
db
The db parameter is the enclosing database handle. +
dbt1
The dbt1 parameter is the DBT representing the +application supplied key. +
dbt2
The dbt2 parameter is the DBT representing the +current database's key. +
+

The compare_fcn function must return an integer value less +than, equal to, or greater than zero if the first key parameter is +considered to be respectively less than, equal to, or greater than the +second key parameter. The comparison function must correctly handle any +key values used by the application (possibly including zero-length +keys). The data and size fields of the DBT are +the only fields that may be used for the purposes of this comparison, +and no particular alignment of the memory to which by the data +field refers may be assumed.

+
+

Errors

+

The DB->set_h_compare method +may fail and return one of the following non-zero errors:

+
+
EINVAL
If the method was called after DB->open was called; or if an +invalid flag value or parameter was specified. +
+
+

Class

+DB +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/db_set_h_ffactor.html b/db/docs/api_c/db_set_h_ffactor.html index e3df5935d..5136410f0 100644 --- a/db/docs/api_c/db_set_h_ffactor.html +++ b/db/docs/api_c/db_set_h_ffactor.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ hash table density in h_ffactorp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_h_hash.html b/db/docs/api_c/db_set_h_hash.html index 870eb2a4a..bb3295377 100644 --- a/db/docs/api_c/db_set_h_hash.html +++ b/db/docs/api_c/db_set_h_hash.html @@ -1,6 +1,5 @@ - - + @@ -70,6 +69,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_h_nelem.html b/db/docs/api_c/db_set_h_nelem.html index 84f4f8935..bad0fb1ce 100644 --- a/db/docs/api_c/db_set_h_nelem.html +++ b/db/docs/api_c/db_set_h_nelem.html @@ -1,6 +1,5 @@ - - + @@ -82,6 +81,6 @@ estimate of the final size of the hash table in h_nelemp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_lorder.html b/db/docs/api_c/db_set_lorder.html index 8bb2cda36..b8f8cf0f1 100644 --- a/db/docs/api_c/db_set_lorder.html +++ b/db/docs/api_c/db_set_lorder.html @@ -1,6 +1,5 @@ - - + @@ -87,6 +86,6 @@ database byte order in lorderp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_malloc.html b/db/docs/api_c/db_set_malloc.html deleted file mode 100644 index 2d13196a3..000000000 --- a/db/docs/api_c/db_set_malloc.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Berkeley DB: DB->set_malloc - - - - - - - -
-

DB->set_malloc

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DB->set_malloc(DB *db, void *(*db_malloc)(size_t size)); -

-

Description

-

Set the allocation function used by the DB methods to allocate -memory in which to return key/data items to the application. -

The DB_DBT_MALLOC flag, when specified in the DBT object, -will cause the DB methods to allocate and re-allocate memory which -then becomes the responsibility of the calling application. See DBT -for more information. -

On systems where there may be multiple library versions of malloc (notably -Windows NT), specifying the DB_DBT_MALLOC flag will fail because -the DB library will allocate memory from a different heap than -the application will use to free it. To avoid this problem, the -DB->set_malloc function can be used to pass Berkeley DB a reference to the -application's allocation routine, in which case it will be used to -allocate the memory returned when the DB_DBT_MALLOC flag is set. -

The function specified must match the calling conventions of the -ANSI C X3.159-1989 (ANSI C) library routine of the same name. -

The DB->set_malloc interface may only be used to configure Berkeley DB before -the DB->open interface is called. -

The DB->set_malloc function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

See Also

-db_create, -DB->close, -DB->cursor, -DB->del, -DB->err, -DB->fd, -DB->get, -DB->get_byteswapped, -DB->get_type, -DB->join, -DB->key_range, -DB->open, -DB->put, -DB->remove, -DB->set_bt_compare, -DB->set_bt_minkey, -DB->set_bt_prefix, -DB->set_cachesize, -DB->set_dup_compare, -DB->set_errcall, -DB->set_errfile, -DB->set_errpfx, -DB->set_flags, -DB->set_h_ffactor, -DB->set_h_hash, -DB->set_h_nelem, -DB->set_lorder, -DB->set_malloc, -DB->set_pagesize, -DB->set_paniccall, -DB->set_q_extentsize, -DB->set_realloc, -DB->set_re_delim, -DB->set_re_len, -DB->set_re_pad, -DB->set_re_source, -DB->stat, -DB->sync, -DB->upgrade -and -DB->verify. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/db_set_msgcall.html b/db/docs/api_c/db_set_msgcall.html index bcb76b949..998172ff8 100644 --- a/db/docs/api_c/db_set_msgcall.html +++ b/db/docs/api_c/db_set_msgcall.html @@ -1,7 +1,6 @@ - - + @@ -71,6 +70,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_msgfile.html b/db/docs/api_c/db_set_msgfile.html index 096b0338b..e23bdf97a 100644 --- a/db/docs/api_c/db_set_msgfile.html +++ b/db/docs/api_c/db_set_msgfile.html @@ -1,7 +1,6 @@ - - + @@ -79,6 +78,6 @@ FILE * in msgfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_pagesize.html b/db/docs/api_c/db_set_pagesize.html index 86ed71290..d70014493 100644 --- a/db/docs/api_c/db_set_pagesize.html +++ b/db/docs/api_c/db_set_pagesize.html @@ -1,6 +1,5 @@ - - + @@ -86,6 +85,6 @@ page size in pagesizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_paniccall.html b/db/docs/api_c/db_set_paniccall.html deleted file mode 100644 index f02526cf1..000000000 --- a/db/docs/api_c/db_set_paniccall.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - -Berkeley DB: DB->set_paniccall - - - - - - - -
-

DB->set_paniccall

-
-API -Ref
-


- -

-#include <db.h>
-

-int -DB->set_paniccall(DB *db, - void (*db_panic_fcn)(DB_ENV *dbenv, int errval)); -

-
-

Description: DB->set_paniccall

-

Errors can occur in the Berkeley DB library where the only solution is to shut -down the application and run recovery (for example, if Berkeley DB is unable -to allocate heap memory). In such cases, the Berkeley DB methods will -return DB_RUNRECOVERY. -It is often easier to simply exit the application when such errors occur -rather than gracefully return up the stack. The DB->set_paniccall method -specifies a function to be called when -DB_RUNRECOVERY is about to be returned -from a Berkeley DB method.

-

For DB handles opened inside of Berkeley DB environments, calling the -DB->set_paniccall method affects the entire environment and is equivalent to calling -the DB_ENV->set_paniccall method.

-

The DB->set_paniccall method may be called at any time during the life of the -application.

-

The DB->set_paniccall method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
db_panic_fcn
The db_panic_fcn parameter is the application-specified function -called in the case of a database environment panic. The function takes -two arguments: -
-
dbenv
The dbenv parameter is the enclosing database environment handle. -
errval
The errval parameter is the error value that would have been -returned to the caller if DB_RUNRECOVERY were not going to be -returned instead. -
-
-
-

Class

-DB -

See Also

-Databases and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_c/db_set_priority.html b/db/docs/api_c/db_set_priority.html new file mode 100644 index 000000000..127c7adfe --- /dev/null +++ b/db/docs/api_c/db_set_priority.html @@ -0,0 +1,88 @@ + + + + + +Berkeley DB: DB->set_priority + + + + + + + +
+

DB->set_priority

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB->set_priority(DB *db, DB_CACHE_PRIORITY priority); +

+int +DB->get_priority(DB *db, DB_CACHE_PRIORITY *priorityp); +

+
+

Description: DB->set_priority

+ +

Set the cache priority for pages referenced by the +DB +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The DB->set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

+

The DB->set_priority method may be called at any time during the life of the +application.

+

The DB->set_priority method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
priority
The priority parameter must be set to one of the following +values: +
+
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded. +
+
+
+

Description: DB->get_priority

+

The DB->get_priority method returns the cache priority for pages referenced by the +DB +handle.

+

The DB->get_priority method may be called at any time during the life of the +application.

+

The DB->get_priority method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
priorityp
The DB->get_priority method returns a reference to the +cache priority for pages referenced by the +DB +handle in priorityp. +
+
+

Class

+DB +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/db_set_q_extentsize.html b/db/docs/api_c/db_set_q_extentsize.html index 76cb6d4e5..c9423d0bf 100644 --- a/db/docs/api_c/db_set_q_extentsize.html +++ b/db/docs/api_c/db_set_q_extentsize.html @@ -1,6 +1,5 @@ - - + @@ -82,6 +81,6 @@ number of pages in an extent in extentsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_re_delim.html b/db/docs/api_c/db_set_re_delim.html index 1a29e54ae..1221bc454 100644 --- a/db/docs/api_c/db_set_re_delim.html +++ b/db/docs/api_c/db_set_re_delim.html @@ -1,6 +1,5 @@ - - + @@ -82,6 +81,6 @@ delimiting byte in delimp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_re_len.html b/db/docs/api_c/db_set_re_len.html index e6b2b5e3d..7ebd790d0 100644 --- a/db/docs/api_c/db_set_re_len.html +++ b/db/docs/api_c/db_set_re_len.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ record length in re_lenp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_re_pad.html b/db/docs/api_c/db_set_re_pad.html index de79cd924..e253de843 100644 --- a/db/docs/api_c/db_set_re_pad.html +++ b/db/docs/api_c/db_set_re_pad.html @@ -1,6 +1,5 @@ - - + @@ -80,6 +79,6 @@ pad character in re_padp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_re_source.html b/db/docs/api_c/db_set_re_source.html index 40e4ed195..5aef3159e 100644 --- a/db/docs/api_c/db_set_re_source.html +++ b/db/docs/api_c/db_set_re_source.html @@ -1,6 +1,5 @@ - - + @@ -113,6 +112,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_set_realloc.html b/db/docs/api_c/db_set_realloc.html deleted file mode 100644 index b3d8a05f7..000000000 --- a/db/docs/api_c/db_set_realloc.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - -Berkeley DB: DB->set_realloc - - - - - - - -
-

DB->set_realloc

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DB->set_realloc(DB *db, - void *(*db_realloc_fcn)(void *ptr, size_t size)); -

-

Description

-

Set the realloc function used by the DB methods to allocate memory -in which to return key/data items to the application. -

The DB_DBT_REALLOC flag, when specified in the DBT object, -will cause the DB methods to allocate and re-allocate memory which -then becomes the responsibility of the calling application. See DBT -for more information. -

On systems where there may be multiple library versions of realloc (notably -Windows NT), specifying the DB_DBT_REALLOC flag will fail because -the DB library will allocate memory from a different heap than -the application will use to free it. To avoid this problem, the -DB->set_realloc function can be used to pass Berkeley DB a reference to the -application's allocation routine, in which case it will be used to -allocate the memory returned when the DB_DBT_REALLOC flag is set. -

The function specified must match the calling conventions of the -ANSI C X3.159-1989 (ANSI C) library routine of the same name. -

The DB->set_realloc interface may only be used to configure Berkeley DB before -the DB->open interface is called. -

The DB->set_realloc function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

See Also

-db_create, -DB->close, -DB->cursor, -DB->del, -DB->err, -DB->fd, -DB->get, -DB->get_byteswapped, -DB->get_type, -DB->join, -DB->key_range, -DB->open, -DB->put, -DB->remove, -DB->set_bt_compare, -DB->set_bt_minkey, -DB->set_bt_prefix, -DB->set_cachesize, -DB->set_dup_compare, -DB->set_errcall, -DB->set_errfile, -DB->set_errpfx, -DB->set_flags, -DB->set_h_ffactor, -DB->set_h_hash, -DB->set_h_nelem, -DB->set_lorder, -DB->set_malloc, -DB->set_pagesize, -DB->set_paniccall, -DB->set_q_extentsize, -DB->set_realloc, -DB->set_re_delim, -DB->set_re_len, -DB->set_re_pad, -DB->set_re_source, -DB->stat, -DB->sync, -DB->upgrade -and -DB->verify. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/db_stat.html b/db/docs/api_c/db_stat.html index f8a6eb7be..053259af2 100644 --- a/db/docs/api_c/db_stat.html +++ b/db/docs/api_c/db_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -43,24 +42,24 @@ one of the following values: Among other things, this flag makes it possible for applications to request key and record counts without incurring the performance penalty of traversing the entire database. -

DB_READ_COMMITTED
Database items read during this operation will have degree 2 isolation. -This ensures the stability of the data items read during the stat -operation but permits that data to be modified or deleted by other +
DB_READ_COMMITTED
Database items read during a transactional call will have degree 2 +isolation. This ensures the stability of the data items read during the +stat operation but permits that data to be modified or deleted by other transactions prior to the commit of the specified transaction. -
DB_READ_UNCOMMITTED
Database items read during this operation will have degree 1 isolation, -including modified but not yet committed data. Silently ignored if the -DB_READ_UNCOMMITTED flag was not specified when the underlying -database was opened. - -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
DB_READ_UNCOMMITTED
Database items read during a transactional call will have degree 1 +isolation, including modified but not yet committed data. Silently +ignored if the DB_READ_UNCOMMITTED flag was not specified when +the underlying database was opened. +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Statistical structures are stored in allocated memory. If application-specific allocation routines have been declared (see DB_ENV->set_alloc for more @@ -78,6 +77,8 @@ database, the information returned by DB->stat may be out-of-date.

If the database was not opened read-only and the DB_FAST_STAT flag was not specified, the cached key and record numbers will be updated after the statistical information has been gathered.

+

The DB->stat method may not be called before the DB->open method has been +called.

The DB->stat method returns a non-zero error value on failure and 0 on success. @@ -98,8 +99,10 @@ DB_FAST_STAT is set. was specified the count will be the last saved value unless it has never been calculated, in which case it will be 0. Returned if DB_FAST_STAT is set. -

u_int32_t hash_pagesize;
The underlying Hash database page (and bucket) size, in bytes. -Returned if DB_FAST_STAT is set. +
u_int32_t hash_pagecnt;
The number of pages in the database. Returned if DB_FAST_STAT +is set. +
u_int32_t hash_pagesize;
The underlying database page (and bucket) size, in bytes. Returned if +DB_FAST_STAT is set.
u_int32_t hash_ffactor;
The desired fill factor (number of items per bucket) specified at database-creation time. Returned if DB_FAST_STAT is set.
u_int32_t hash_buckets;
The number of hash buckets. Returned if DB_FAST_STAT is set. @@ -146,8 +149,10 @@ DB_FAST_STAT flag is specified the count will be exact but will include deleted and implicitly created records; if the DB_FAST_STAT flag is not specified, the count will be exact and will not include deleted or implicitly created records.

-

Returned if DB_FAST_STAT is set.

-
u_int32_t bt_pagesize;
Underlying database page size, in bytes. Returned if +

u_int32_t bt_pagecnt;
The number of pages in the database. Returned if DB_FAST_STAT +is set. +Returned if DB_FAST_STAT is set.

+
u_int32_t bt_pagesize;
The underlying database page size, in bytes. Returned if DB_FAST_STAT is set.
u_int32_t bt_minkey;
The minimum keys per page. Returned if DB_FAST_STAT is set.
u_int32_t bt_re_len;
The length of fixed-length records. Returned if DB_FAST_STAT @@ -232,7 +237,6 @@ Among other things, this flag makes it possible for applications to request key and record counts without incurring the performance penalty of traversing the entire database.
DB_STAT_ALL
Display all available information. -
DB_STAT_CLEAR
Reset statistics after displaying their values.
@@ -244,6 +248,6 @@ of traversing the entire database.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_sync.html b/db/docs/api_c/db_sync.html index b64570e42..9d54213ae 100644 --- a/db/docs/api_c/db_sync.html +++ b/db/docs/api_c/db_sync.html @@ -1,6 +1,5 @@ - - + @@ -69,6 +68,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_truncate.html b/db/docs/api_c/db_truncate.html index 04bf1e286..06d698392 100644 --- a/db/docs/api_c/db_truncate.html +++ b/db/docs/api_c/db_truncate.html @@ -1,6 +1,5 @@ - - + @@ -46,15 +45,16 @@ and 0 on success.

countp
The countp parameter references memory into which the number of records discarded from the database is copied.
flags
The flags parameter is currently unused, and must be set to 0. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DB->truncate method @@ -78,6 +78,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_upgrade.html b/db/docs/api_c/db_upgrade.html index d51ef8c65..b0f812b80 100644 --- a/db/docs/api_c/db_upgrade.html +++ b/db/docs/api_c/db_upgrade.html @@ -1,6 +1,5 @@ - - + @@ -100,6 +99,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/db_verify.html b/db/docs/api_c/db_verify.html index c4c3244d2..aa0e6f061 100644 --- a/db/docs/api_c/db_verify.html +++ b/db/docs/api_c/db_verify.html @@ -1,6 +1,5 @@ - - + @@ -143,6 +142,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_class.html b/db/docs/api_c/dbc_class.html index e1489da31..b3cdaae32 100644 --- a/db/docs/api_c/dbc_class.html +++ b/db/docs/api_c/dbc_class.html @@ -1,6 +1,5 @@ - - + @@ -32,12 +31,12 @@ threads, but only serially, that is, the application must serialize access to the DBC handle.

If the cursor is to be used to perform operations on behalf of a transaction, the cursor must be opened and closed within the context of -that single transaction. Once DBcursor->c_close has been called, the +that single transaction. Once DBcursor->close has been called, the handle may not be accessed again, regardless of the method's return.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_close.html b/db/docs/api_c/dbc_close.html index 016e23623..4be4d9e7e 100644 --- a/db/docs/api_c/dbc_close.html +++ b/db/docs/api_c/dbc_close.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_close +Berkeley DB: DBcursor->close
-

DBcursor->c_close

+

DBcursor->close

API @@ -23,24 +22,24 @@ #include <db.h>

int -DBcursor->c_close(DBC *DBcursor); +DBcursor->close(DBC *DBcursor);


-

Description: DBcursor->c_close

-

The DBcursor->c_close method discards the cursor.

-

It is possible for the DBcursor->c_close method to return +

Description: DBcursor->close

+

The DBcursor->close method discards the cursor.

+

It is possible for the DBcursor->close method to return DB_LOCK_DEADLOCK, signaling that any enclosing transaction should be aborted. If the application is already intending to abort the transaction, this error should be ignored, and the application should proceed.

-

After DBcursor->c_close has been called, regardless of its return, the +

After DBcursor->close has been called, regardless of its return, the cursor handle may not be used again.

-

The DBcursor->c_close method +

The DBcursor->close method returns a non-zero error value on failure and 0 on success.

Errors

-

The DBcursor->c_close method +

The DBcursor->close method may fail and return one of the following non-zero errors:

DB_LOCK_DEADLOCK
A transactional database environment operation was selected to resolve @@ -61,6 +60,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_count.html b/db/docs/api_c/dbc_count.html index 42eac1b51..51abb3ecb 100644 --- a/db/docs/api_c/dbc_count.html +++ b/db/docs/api_c/dbc_count.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_count +Berkeley DB: DBcursor->count
-

DBcursor->c_count

+

DBcursor->count

API @@ -23,13 +22,13 @@ #include <db.h>

int -DBcursor->c_count(DBC *DBcursor, db_recno_t *countp, u_int32_t flags); +DBcursor->count(DBC *DBcursor, db_recno_t *countp, u_int32_t flags);


-

Description: DBcursor->c_count

-

The DBcursor->c_count method returns a count of the number of data items for +

Description: DBcursor->count

+

The DBcursor->count method returns a count of the number of data items for the key to which the cursor refers.

-

The DBcursor->c_count method +

The DBcursor->count method returns a non-zero error value on failure and 0 on success.

@@ -40,7 +39,7 @@ and 0 on success.
flags
The flags parameter is currently unused, and must be set to 0.

Errors

-

The DBcursor->c_count method +

The DBcursor->count method may fail and return one of the following non-zero errors:

DB_REP_HANDLE_DEAD
The database handle has been invalidated because a replication election @@ -60,6 +59,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_del.html b/db/docs/api_c/dbc_del.html index 9a8b6de92..ad7a5978a 100644 --- a/db/docs/api_c/dbc_del.html +++ b/db/docs/api_c/dbc_del.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_del +Berkeley DB: DBcursor->del
-

DBcursor->c_del

+

DBcursor->del

API @@ -23,11 +22,11 @@ #include <db.h>

int -DBcursor->c_del(DBC *DBcursor, u_int32_t flags); +DBcursor->del(DBC *DBcursor, u_int32_t flags);


-

Description: DBcursor->c_del

-

The DBcursor->c_del method deletes the key/data pair to which the cursor +

Description: DBcursor->del

+

The DBcursor->del method deletes the key/data pair to which the cursor refers.

When called on a cursor opened on a database that has been made into a secondary index using the DB->associate method, the DB->del method @@ -36,8 +35,8 @@ indices.

The cursor position is unchanged after a delete, and subsequent calls to cursor functions expecting the cursor to refer to an existing key will fail.

-

The DBcursor->c_del method will return DB_KEYEMPTY if the element has already been deleted. -Unless otherwise specified, the DBcursor->c_del method +

The DBcursor->del method will return DB_KEYEMPTY if the element has already been deleted. +Unless otherwise specified, the DBcursor->del method returns a non-zero error value on failure and 0 on success.

@@ -46,7 +45,7 @@ and 0 on success.
flags
The flags parameter is currently unused, and must be set to 0.

Errors

-

The DBcursor->c_del method +

The DBcursor->del method may fail and return one of the following non-zero errors:

DB_LOCK_DEADLOCK
A transactional database environment operation was selected to resolve @@ -82,6 +81,6 @@ specified to DB_ENV->open.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_dup.html b/db/docs/api_c/dbc_dup.html index 0f670831a..b0ccf1e55 100644 --- a/db/docs/api_c/dbc_dup.html +++ b/db/docs/api_c/dbc_dup.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_dup +Berkeley DB: DBcursor->dup
-

DBcursor->c_dup

+

DBcursor->dup

API @@ -23,15 +22,15 @@ #include <db.h>

int -DBcursor->c_dup(DBC *DBcursor, DBC **cursorp, u_int32_t flags); +DBcursor->dup(DBC *DBcursor, DBC **cursorp, u_int32_t flags);


-

Description: DBcursor->c_dup

-

The DBcursor->c_dup method creates a new cursor that uses the same transaction +

Description: DBcursor->dup

+

The DBcursor->dup method creates a new cursor that uses the same transaction and locker ID as the original cursor. This is useful when an application is using locking and requires two or more cursors in the same thread of control.

-

The DBcursor->c_dup method +

The DBcursor->dup method returns a non-zero error value on failure and 0 on success.

@@ -49,7 +48,7 @@ using DB->cursor.

Errors

-

The DBcursor->c_dup method +

The DBcursor->dup method may fail and return one of the following non-zero errors:

DB_REP_HANDLE_DEAD
The database handle has been invalidated because a replication election @@ -69,6 +68,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_get.html b/db/docs/api_c/dbc_get.html index 7fec70baa..dc445ae43 100644 --- a/db/docs/api_c/dbc_get.html +++ b/db/docs/api_c/dbc_get.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_get +Berkeley DB: DBcursor->get
-

DBcursor->c_get

+

DBcursor->get

API @@ -23,37 +22,37 @@ #include <db.h>

int -DBcursor->c_get(DBC *DBcursor, +DBcursor->get(DBC *DBcursor, DBT *key, DBT *data, u_int32_t flags);

int -DBcursor->c_pget(DBC *DBcursor, +DBcursor->pget(DBC *DBcursor, DBT *key, DBT *pkey, DBT *data, u_int32_t flags);


-

Description: DBcursor->c_get

-

The DBcursor->c_get method retrieves key/data pairs from the database. The +

Description: DBcursor->get

+

The DBcursor->get method retrieves key/data pairs from the database. The address and length of the key are returned in the object to which key refers (except for the case of the DB_SET flag, in which the key object is unchanged), and the address and length of the data are returned in the object to which data refers.

When called on a cursor opened on a database that has been made into a -secondary index using the DB->associate method, the DBcursor->c_get -and DBcursor->c_pget methods return the key from the secondary index and the -data item from the primary database. In addition, the DBcursor->c_pget method +secondary index using the DB->associate method, the DBcursor->get +and DBcursor->pget methods return the key from the secondary index and the +data item from the primary database. In addition, the DBcursor->pget method returns the key from the primary database. In databases that are not -secondary indices, the DBcursor->c_pget method will always fail.

+secondary indices, the DBcursor->pget method will always fail.

Modifications to the database during a sequential scan will be reflected in the scan; that is, records inserted behind a cursor will not be returned while records inserted in front of a cursor will be returned.

In Queue and Recno databases, missing entries (that is, entries that were never explicitly created or that were created and then deleted) will be skipped during a sequential scan.

-

Unless otherwise specified, the DBcursor->c_get method +

Unless otherwise specified, the DBcursor->get method returns a non-zero error value on failure and 0 on success.

-

If DBcursor->c_get fails for any reason, the state of the cursor will be +

If DBcursor->get fails for any reason, the state of the cursor will be unchanged.

Parameters

@@ -61,24 +60,24 @@ unchanged.

flags
The flags parameter must be set to one of the following values:
DB_CURRENT
Return the key/data pair to which the cursor refers. -

The DBcursor->c_get method will return DB_KEYEMPTY if DB_CURRENT is set and the cursor key/data pair was deleted. +

The DBcursor->get method will return DB_KEYEMPTY if DB_CURRENT is set and the cursor key/data pair was deleted.

DB_FIRST
The cursor is set to refer to the first key/data pair of the database, and that pair is returned. If the first key has duplicate values, the first data item in the set of duplicates is returned. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_FIRST flag will ignore any keys that exist but were never explicitly created by the application, or were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_FIRST is set and the database is empty. +

The DBcursor->get method will return DB_NOTFOUND if DB_FIRST is set and the database is empty.

DB_GET_BOTH
The DB_GET_BOTH flag is identical to the DB_SET flag, except that both the key and the data parameters must be matched by the key and data item in the database. -

When used with the DBcursor->c_pget method version of this method on a +

When used with the DBcursor->pget method version of this method on a secondary index handle, both the secondary and primary keys must be matched by the secondary and primary key item in the database. It is -an error to use the DB_GET_BOTH flag with the DBcursor->c_get +an error to use the DB_GET_BOTH flag with the DBcursor->get version of this method and a cursor that has been opened on a secondary index handle.

DB_GET_BOTH_RANGE
The DB_GET_BOTH_RANGE flag is identical to the DB_GET_BOTH @@ -94,9 +93,9 @@ will be returned in data, as described in DB_RECNUM flag.

When called on a cursor opened on a database that has been made into a -secondary index, the DBcursor->c_get and DBcursor->c_pget methods return the +secondary index, the DBcursor->get and DBcursor->pget methods return the record number of the primary database in data. In addition, the -DBcursor->c_pget method returns the record number of the secondary index in +DBcursor->pget method returns the record number of the secondary index in pkey. If either underlying database is not of type Btree or is not created with the DB_RECNUM flag, the out-of-band record number of 0 is returned.

@@ -108,68 +107,74 @@ been returned from the DB->join method.DB_LAST
The cursor is set to refer to the last key/data pair of the database, and that pair is returned. If the last key has duplicate values, the last data item in the set of duplicates is returned. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_LAST flag will ignore any keys that exist but were never explicitly created by the application, or were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_LAST is set and the database is empty. +

The DBcursor->get method will return DB_NOTFOUND if DB_LAST is set and the database is empty.

DB_NEXT
If the cursor is not yet initialized, DB_NEXT is identical to DB_FIRST. Otherwise, the cursor is moved to the next key/data pair of the database, and that pair is returned. In the presence of duplicate key values, the value of the key may not change. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_NEXT flag will skip any keys that exist but were never explicitly created by the application, or those that were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_NEXT is set and the cursor is already on the last record +

The DBcursor->get method will return DB_NOTFOUND if DB_NEXT is set and the cursor is already on the last record in the database.

DB_NEXT_DUP
If the next key/data pair of the database is a duplicate data record for the current key/data pair, the cursor is moved to the next key/data pair of the database, and that pair is returned. -

The DBcursor->c_get method will return DB_NOTFOUND if DB_NEXT_DUP is set and the next key/data pair of the +

The DBcursor->get method will return DB_NOTFOUND if DB_NEXT_DUP is set and the next key/data pair of the database is not a duplicate data record for the current key/data pair.

DB_NEXT_NODUP
If the cursor is not yet initialized, DB_NEXT_NODUP is identical to DB_FIRST. Otherwise, the cursor is moved to the next non-duplicate key of the database, and that key/data pair is returned. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_NEXT_NODUP flag will ignore any keys that exist but were never explicitly created by the application, or those that were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_NEXT_NODUP is set and no non-duplicate key/data pairs +

The DBcursor->get method will return DB_NOTFOUND if DB_NEXT_NODUP is set and no non-duplicate key/data pairs occur after the cursor position in the database.

DB_PREV
If the cursor is not yet initialized, DB_PREV is identical to DB_LAST. Otherwise, the cursor is moved to the previous key/data pair of the database, and that pair is returned. In the presence of duplicate key values, the value of the key may not change. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_PREV flag will skip any keys that exist but were never explicitly created by the application, or those that were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_PREV is set and the cursor is already on the first record +

The DBcursor->get method will return DB_NOTFOUND if DB_PREV is set and the cursor is already on the first record in the database.

+
DB_PREV_DUP
If the previous key/data pair of the database is a duplicate data record +for the current key/data pair, the cursor is moved to the previous key/data +pair of the database, and that pair is returned. +

The DBcursor->get method will return DB_NOTFOUND if DB_PREV_DUP is set and the previous key/data pair of the +database is not a duplicate data record for the current key/data pair. +

DB_PREV_NODUP
If the cursor is not yet initialized, DB_PREV_NODUP is identical to DB_LAST. Otherwise, the cursor is moved to the previous non-duplicate key of the database, and that key/data pair is returned. -

If the database is a Queue or Recno database, DBcursor->c_get using the +

If the database is a Queue or Recno database, DBcursor->get using the DB_PREV_NODUP flag will ignore any keys that exist but were never explicitly created by the application, or those that were created and later deleted.

-

The DBcursor->c_get method will return DB_NOTFOUND if DB_PREV_NODUP is set and no non-duplicate key/data pairs +

The DBcursor->get method will return DB_NOTFOUND if DB_PREV_NODUP is set and no non-duplicate key/data pairs occur before the cursor position in the database.

DB_SET
Move the cursor to the specified key/data pair of the database, and return the datum associated with the given key. -

The DBcursor->c_get method will return DB_NOTFOUND if DB_SET is set and +

The DBcursor->get method will return DB_NOTFOUND if DB_SET is set and no matching keys are found. -The DBcursor->c_get method will return DB_KEYEMPTY if DB_SET is set and the database is a +The DBcursor->get method will return DB_KEYEMPTY if DB_SET is set and the database is a Queue or Recno database, and the specified key exists, but was never explicitly created by the application or was later deleted. -In the presence of duplicate key values, DBcursor->c_get will return the +In the presence of duplicate key values, DBcursor->get will return the first data item for the given key.

DB_SET_RANGE
The DB_SET_RANGE flag is identical to the DB_SET flag, @@ -190,9 +195,10 @@ flag.

In addition, the following flags may be set by bitwise inclusively OR'ing them into the flags parameter:
-
DB_READ_UNCOMMITTED
Read modified but not yet committed data. Silently ignored if the -DB_READ_UNCOMMITTED flag was not specified when the underlying -database was opened. +
DB_READ_UNCOMMITTED
Database items read during a transactional call will have degree 1 +isolation, including modified but not yet committed data. Silently +ignored if the DB_READ_UNCOMMITTED flag was not specified when +the underlying database was opened.
DB_MULTIPLE
Return multiple data items in the data parameter.

In the case of Btree or Hash databases, duplicate data items for the current key, starting at the current cursor position, are entered into @@ -262,17 +268,18 @@ DB_NEXT_NODUP, DB_SET, DB_SET_RANGE, and DB_SET_RECNO options. The DB_MULTIPLE_KEY flag may not be used when accessing databases made into secondary indices using the DB->associate method.

-
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.
key
The key DBT operated on.
pkey
The secondary index key DBT operated on.

Errors

-

The DBcursor->c_get method +

The DBcursor->get method may fail and return one of the following non-zero errors:

DB_BUFFER_SMALL
The requested item could not be returned due to undersized buffer. @@ -292,9 +299,9 @@ unrolled a committed transaction.
DB_SECONDARY_BAD
A secondary index references a nonexistent primary key.
-
EINVAL
If the DB_CURRENT or DB_NEXT_DUP flags were specified and -the cursor has not been initialized; -the DBcursor->c_pget method was called with a cursor that does not refer to a +
EINVAL
If the DB_CURRENT, DB_NEXT_DUP or DB_PREV_DUP flags +were specified and the cursor has not been initialized; +the DBcursor->pget method was called with a cursor that does not refer to a secondary index; or if an invalid flag value or parameter was specified.
@@ -307,6 +314,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_list.html b/db/docs/api_c/dbc_list.html index 0f40200ae..ffcff7aa5 100644 --- a/db/docs/api_c/dbc_list.html +++ b/db/docs/api_c/dbc_list.html @@ -1,6 +1,5 @@ - - + @@ -10,17 +9,18 @@

Berkeley DB: Database Cursors and Related Methods

- + - - - - - - + + + + + + +
Database Cursors and Related MethodsDescription
DB->cursorCreate a cursor
DBcursor->c_closeClose a cursor
DBcursor->c_countReturn count of duplicates
DBcursor->c_delDelete by cursor
DBcursor->c_dupDuplicate a cursor
DBcursor->c_get, DBcursor->c_pgetRetrieve by cursor
DBcursor->c_putStore by cursor
DBcursor->closeClose a cursor
DBcursor->countReturn count of duplicates
DBcursor->delDelete by cursor
DBcursor->dupDuplicate a cursor
DBcursor->get, DBcursor->pgetRetrieve by cursor
DBcursor->putStore by cursor
DBcursor->set_prioritySet the cursor's cache priority
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_put.html b/db/docs/api_c/dbc_put.html index d10555ed2..0b8e5ec6a 100644 --- a/db/docs/api_c/dbc_put.html +++ b/db/docs/api_c/dbc_put.html @@ -1,17 +1,16 @@ - - - + + -Berkeley DB: DBcursor->c_put +Berkeley DB: DBcursor->put
-

DBcursor->c_put

+

DBcursor->put

API @@ -23,17 +22,17 @@ #include <db.h>

int -DBcursor->c_put(DBC *DBcursor, DBT *key, DBT *data, u_int32_t flags); +DBcursor->put(DBC *DBcursor, DBT *key, DBT *data, u_int32_t flags);


-

Description: DBcursor->c_put

-

The DBcursor->c_put method stores key/data pairs into the database.

-

Unless otherwise specified, the DBcursor->c_put method +

Description: DBcursor->put

+

The DBcursor->put method stores key/data pairs into the database.

+

Unless otherwise specified, the DBcursor->put method returns a non-zero error value on failure and 0 on success.

-

If DBcursor->c_put fails for any reason, the state of the cursor will be -unchanged. If DBcursor->c_put succeeds and an item is inserted into the +

If DBcursor->put fails for any reason, the state of the cursor will be +unchanged. If DBcursor->put succeeds and an item is inserted into the database, the cursor is always positioned to refer to the newly inserted item.

Parameters

@@ -45,8 +44,8 @@ item.

element as a duplicate element of the key to which the cursor refers. The new element appears immediately after the current cursor position. It is an error to specify DB_AFTER if the underlying Btree or -Hash database does not support duplicate data items. The key -parameter is ignored. +Hash database is not configured for unsorted duplicate data items. The +key parameter is ignored.

In the case of the Recno access method, it is an error to specify DB_AFTER if the underlying Recno database was not created with the DB_RENUMBER flag. If the DB_RENUMBER flag was @@ -56,15 +55,15 @@ in the structure to which the key parameter refers. The initial value of the key parameter is ignored. See DB->open for more information.

The DB_AFTER flag may not be specified to the Queue access method.

-

The DBcursor->c_put method will return DB_NOTFOUND if the current cursor record has already been deleted and the +

The DBcursor->put method will return DB_NOTFOUND if the current cursor record has already been deleted and the underlying access method is Hash.

DB_BEFORE
In the case of the Btree and Hash access methods, insert the data element as a duplicate element of the key to which the cursor refers. The new element appears immediately before the current cursor position. -It is an error to specify DB_BEFORE if the underlying Btree or -Hash database does not support duplicate data items. The key -parameter is ignored. +It is an error to specify DB_AFTER if the underlying Btree or +Hash database is not configured for unsorted duplicate data items. The +key parameter is ignored.

In the case of the Recno access method, it is an error to specify DB_BEFORE if the underlying Recno database was not created with the DB_RENUMBER flag. If the DB_RENUMBER flag was @@ -74,33 +73,27 @@ returned in the structure to which the key parameter refers. The initial value of the key parameter is ignored. See DB->open for more information.

The DB_BEFORE flag may not be specified to the Queue access method.

-

The DBcursor->c_put method will return DB_NOTFOUND if the current cursor record has already been deleted and the underlying +

The DBcursor->put method will return DB_NOTFOUND if the current cursor record has already been deleted and the underlying access method is Hash.

DB_CURRENT
Overwrite the data of the key/data pair to which the cursor refers with the specified data item. The key parameter is ignored. -

The DBcursor->c_put method will return DB_NOTFOUND if the current cursor record has already been deleted. +

The DBcursor->put method will return DB_NOTFOUND if the current cursor record has already been deleted.

-
DB_KEYFIRST
In the case of the Btree and Hash access methods, insert the specified -key/data pair into the database. +
DB_KEYFIRST
Insert the specified key/data pair into the database.

If the underlying database supports duplicate data items, and if the key already exists in the database and a duplicate sort function has been specified, the inserted data item is added in its sorted location. If the key already exists in the database and no duplicate sort function has been specified, the inserted data item is added as the first of the data items for that key.

-

The DB_KEYFIRST flag may not be specified to the Queue or Recno -access methods.

-
DB_KEYLAST
In the case of the Btree and Hash access methods, insert the specified -key/data pair into the database. +
DB_KEYLAST
Insert the specified key/data pair into the database.

If the underlying database supports duplicate data items, and if the key already exists in the database and a duplicate sort function has been specified, the inserted data item is added in its sorted location. If the key already exists in the database, and no duplicate sort function has been specified, the inserted data item is added as the last of the data items for that key.

-

The DB_KEYLAST flag may not be specified to the Queue or Recno -access methods.

DB_NODUPDATA
In the case of the Btree and Hash access methods, insert the specified key/data pair into the database, unless a key/data pair comparing equally to it already exists in the database. If a matching key/data @@ -113,7 +106,7 @@ access methods.

key
The key DBT operated on.

Errors

-

The DBcursor->c_put method +

The DBcursor->put method may fail and return one of the following non-zero errors:

DB_LOCK_DEADLOCK
A transactional database environment operation was selected to resolve @@ -157,6 +150,6 @@ specified to DB_ENV->open.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbc_set_priority.html b/db/docs/api_c/dbc_set_priority.html new file mode 100644 index 000000000..40678f2a2 --- /dev/null +++ b/db/docs/api_c/dbc_set_priority.html @@ -0,0 +1,87 @@ + + + + + +Berkeley DB: DBcursor->set_priority + + + + + + + +
+

DBcursor->set_priority

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DbCursor->set_priority(DBC *DbCursor, DB_CACHE_PRIORITY priority); +

+int +DbCursor->get_priority(DBC *DbCursor, DB_CACHE_PRIORITY *priorityp); +

+
+

Description: DBcursor->set_priority

+

Set the cache priority for pages referenced by the +DBC +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The DBcursor->set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

+

The DBcursor->set_priority method may be called at any time during the life of the +application.

+

The DBcursor->set_priority method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
priority
The priority parameter must be set to one of the following +values: +
+
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded. +
+
+
+

Description: DBcursor->get_priority

+

The DBcursor->get_priority method returns the cache priority for pages referenced by the +DBC +handle.

+

The DBcursor->get_priority method may be called at any time during the life of the +application.

+

The DBcursor->get_priority method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
priorityp
The DBcursor->get_priority method returns a reference to the +cache priority for pages referenced by the +DBC +handle in priorityp. +
+
+

Class

+DBC +

See Also

+Database Cursors and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/dbm.html b/db/docs/api_c/dbm.html index e4eb56fb8..6970c6f88 100644 --- a/db/docs/api_c/dbm.html +++ b/db/docs/api_c/dbm.html @@ -1,6 +1,5 @@ - - + @@ -217,6 +216,6 @@ specified for other Berkeley DB and C library or system functions.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbt.html b/db/docs/api_c/dbt.html deleted file mode 100644 index a0c3e76db..000000000 --- a/db/docs/api_c/dbt.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - -Berkeley DB: DBT - - - - - - -

Key/Data Pairs

-

Storage and retrieval for the Berkeley DB access methods are based on key/data -pairs. Both key and data items are represented by the DBT data structure. -(The name DBT is a mnemonic for data base thang, and was used -because no one could think of a reasonable name that wasn't already in -use somewhere else.) Key and data byte strings may reference strings of -zero length up to strings of essentially unlimited length. See -Database limits for more -information. -

typedef struct {
-	void *data;
-	u_int32_t size;
-	u_int32_t ulen;
-	u_int32_t dlen;
-	u_int32_t doff;
-	u_int32_t flags;
-} DBT;
-

In order to ensure compatibility with future releases of Berkeley DB, all fields -of the DBT structure that are not explicitly set should be initialized to -0 before the first time the structure is used. Do this by declaring the -structure external or static, or by calling the C library routine -bzero(3) or memset(3). -

By default, the flags structure element is expected to be 0. In -this default case, when the application is providing Berkeley DB a key or data -item to store into the database, Berkeley DB expects the data structure -element to point to a byte string of size bytes. When returning -a key/data item to the application, Berkeley DB will store into the data -structure element a pointer to a byte string of size bytes, and -the memory referenced by the pointer will be allocated and managed by Berkeley DB. -

The elements of the DBT structure are defined as follows: -

-

void *data;
A pointer to a byte string. -

u_int32_t size;
The length of data, in bytes. -

u_int32_t ulen;
The size of the user's buffer (referenced by data), in bytes. -This location is not written by the Berkeley DB functions. -

Note that applications can determine the length of a record by setting -the ulen field to 0 and checking the return value in the -size field. See the DB_DBT_USERMEM flag for more information. -

u_int32_t dlen;
The length of the partial record being read or written by the application, -in bytes. See the DB_DBT_PARTIAL flag for more information. -

u_int32_t doff;
The offset of the partial record being read or written by the application, -in bytes. See the DB_DBT_PARTIAL flag for more information. -

u_int32_t flags;
-

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or more -of the following values. -

-

DB_DBT_MALLOC
When this flag is set Berkeley DB will allocate memory for the returned key -or data item (using malloc(3), or the user-specified malloc -function) and return a pointer to it in the data field of the -key or data DBT structure. As any allocated memory becomes the -responsibility of the calling application, the caller must be able to -determine if memory was allocated. -

It is an error to specify more than one of DB_DBT_MALLOC, -DB_DBT_REALLOC and DB_DBT_USERMEM. -

DB_DBT_REALLOC
When this flag is set Berkeley DB will allocate memory for the returned key -or data item (using realloc(3), or the user-specified realloc -function) and return a pointer to it in the data field of the -key or data DBT structure. As any allocated memory becomes the -responsibility of the calling application, the caller must be able to -determine if memory was allocated. -

The difference between DB_DBT_MALLOC and DB_DBT_REALLOC -is that the latter will call realloc(3) instead of -malloc(3), so the allocated memory will be grown as necessary -instead of the application doing repeated free/malloc calls. -

It is an error to specify more than one of DB_DBT_MALLOC, -DB_DBT_REALLOC and DB_DBT_USERMEM. -

DB_DBT_USERMEM
The data field of the key or data structure must reference -memory that is at least ulen bytes in length. If the length of -the requested item is less than or equal to that number of bytes, the -item is copied into the memory referenced by the data field. -Otherwise, the size field is set to the length needed for the -requested item, and the error ENOMEM is returned. -

It is an error to specify more than one of DB_DBT_MALLOC, -DB_DBT_REALLOC and DB_DBT_USERMEM. -

DB_DBT_PARTIAL
Do partial retrieval or storage of an item. If the calling application -is doing a get, the dlen bytes starting doff bytes from -the beginning of the retrieved data record are returned as if they -comprised the entire record. If any or all of the specified bytes do -not exist in the record, the get is successful and the existing bytes -or nul bytes are returned. -

For example, if the data portion of a retrieved record was 100 bytes, -and a partial retrieval was done using a DBT having a dlen -field of 20 and a doff field of 85, the get call would succeed, -the data field would reference the last 15 bytes of the record, -and the size field would be set to 15. -

If the calling application is doing a put, the dlen bytes -starting doff bytes from the beginning of the specified key's -data record are replaced by the data specified by the data -and size structure elements. -If dlen is smaller than size, the record will grow, -and if dlen is larger than size, the record will shrink. -If the specified bytes do not exist, the record will be extended using -nul bytes as necessary, and the put call will succeed. -

It is an error to attempt a partial put using the DB->put function -in a database that supports duplicate records. -Partial puts in databases supporting duplicate records must be done -using a DBcursor->c_put function. -

It is an error to attempt a partial put with differing dlen and -size values in Queue or Recno databases with fixed-length records. -

For example, if the data portion of a retrieved record was 100 bytes, -and a partial put was done using a DBT having a dlen field of 20, -a doff field of 85, and a size field of 30, the resulting -record would be 115 bytes in length, where the last 30 bytes would be -those specified by the put call. -

-
- -

Retrieved key/data permanence

-

When using the non-cursor Berkeley DB calls to retrieve key/data items (e.g., -DB->get), the memory referenced by the pointer stored into the -Dbt is only valid until the next call to Berkeley DB using the Db -handle returned by DB->open. (This includes any use of -the returned Db handle, including by another thread of control -within the process. For this reason, when multiple threads are using the -returned Db handle concurrently, one of the DB_DBT_MALLOC, -DB_DBT_REALLOC or DB_DBT_USERMEM flags must be specified -with any non-cursor Dbt used for key or data retrieval.) -

When using the cursor Berkeley DB calls to retrieve key/data items (e.g., -DBcursor->c_get), the memory referenced by the pointer into the -Dbt is only valid until the next call to Berkeley DB using the -DBC handle returned by DB->cursor. - -

Data alignment

-

The Berkeley DB access methods provide no guarantees about key/data byte string -alignment, and applications are responsible for arranging any necessary -alignment. The DB_DBT_MALLOC, DB_DBT_REALLOC and -DB_DBT_USERMEM flags may be used to store returned items in memory -of arbitrary alignment. - -

Logical Record Numbers

-

In all cases for the Queue and Recno access methods, and when calling the -DB->get and DBcursor->c_get functions with the -DB_SET_RECNO flag specified, the data field of the key -must be a pointer to a memory location of type db_recno_t, as -typedef'd in the #include <db.h> include file. This type is a 32-bit -unsigned type, (which limits the number of logical records in a Queue or -Recno database, and the maximum logical record which may be directly -retrieved from a Btree database, to 4,294,967,296). The size -field of the key should be the size of that type, i.e., in the C -programming language, sizeof(db_recno_t). -

Logical record numbers are 1-based, not 0-based, i.e., the first record -in the database is record number 1. - -

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/dbt_bulk.html b/db/docs/api_c/dbt_bulk.html index 2141977d1..8815cc0f9 100644 --- a/db/docs/api_c/dbt_bulk.html +++ b/db/docs/api_c/dbt_bulk.html @@ -1,6 +1,5 @@ - - - + + @@ -21,7 +20,7 @@

If either of the DB_MULTIPLE or DB_MULTIPLE_KEY flags -were specified to the DB->get or DBcursor->c_get methods, the data +were specified to the DB->get or DBcursor->get methods, the data DBT returned by those interfaces will refer to a buffer that is filled with data. Access to that data is through the following macros:

@@ -30,11 +29,11 @@ macros:

Initialize the retrieval. The pointer parameter is a variable to be initialized. The data parameter is a DBT structure returned from a successful call to DB->get or -DBcursor->c_get for which one of the DB_MULTIPLE or +DBcursor->get for which one of the DB_MULTIPLE or DB_MULTIPLE_KEY flags was specified.

DB_MULTIPLE_NEXT
DB_MULTIPLE_NEXT(void *pointer, DBT *data, void *retdata, size_t retdlen);

The data parameter is a DBT structure returned from a -successful call to DB->get or DBcursor->c_get for which the +successful call to DB->get or DBcursor->get for which the DB_MULTIPLE flag was specified. The pointer and data parameters must have been previously initialized by a call to DB_MULTIPLE_INIT. The retdata parameter is set to @@ -47,7 +46,7 @@ elements in the returned set.

DB_MULTIPLE_KEY_NEXT
DB_MULTIPLE_KEY_NEXT(void *pointer, DBT *data,
 	void *retkey, size_t retklen, void *retdata, size_t retdlen);

The data parameter is a DBT structure returned from a -successful call to DBcursor->c_get with the Btree or Hash access methods +successful call to DBcursor->get with the Btree or Hash access methods for which the DB_MULTIPLE_KEY flag was specified. The pointer and data parameters must have been previously initialized by a call to DB_MULTIPLE_INIT. The retkey @@ -61,7 +60,7 @@ pairs in the returned set.

DB_MULTIPLE_RECNO_NEXT
DB_MULTIPLE_RECNO_NEXT(void *pointer, DBT *data,
 	db_recno_t recno, void * retdata, size_t retdlen);

The data parameter is a DBT structure returned from a -successful call to DBcursor->c_get with the Queue or Recno access +successful call to DBcursor->get with the Queue or Recno access methods for which the DB_MULTIPLE_KEY flag was specified. The pointer and data parameters must have been previously initialized by a call to DB_MULTIPLE_INIT. The recno @@ -72,10 +71,12 @@ the length, in bytes, of that data element. Deleted records are not included in the results. The pointer parameter is set to NULL if there are no more key/data pairs in the returned set.

+

These macros may be called multiple times, but DB_MULTIPLE_INIT +must be called before each new access of the data.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbt_class.html b/db/docs/api_c/dbt_class.html index 75518917c..c65ee3fc2 100644 --- a/db/docs/api_c/dbt_class.html +++ b/db/docs/api_c/dbt_class.html @@ -1,7 +1,6 @@ - - - + + @@ -118,7 +117,7 @@ the put call will succeed.

It is an error to attempt a partial put using the DB->put function in a database that supports duplicate records. Partial puts in databases supporting duplicate records must be done -using a DBcursor->c_put function.

+using a DBcursor->put function.

It is an error to attempt a partial put with differing dlen and size values in Queue or Recno databases with fixed-length records.

For example, if the data portion of a retrieved record was 100 bytes, @@ -126,12 +125,28 @@ and a partial put was done using a DBT having a dlen field of 20, a doff field of 85, and a size field of 30, the resulting record would be 115 bytes in length, where the last 30 bytes would be those specified by the put call.

+
DB_DBT_APPMALLOC
After an application-supplied callback routine passed to either +DB->associate or DB->set_append_recno is executed, the +data field of a DBT may refer to memory allocated with +malloc(3) or realloc(3). In that case, the +callback sets the DB_DBT_APPMALLOC flag in the DBT so +that Berkeley DB will call free(3) to deallocate the memory when it +is no longer required. +
DB_DBT_MULTIPLE
Set in a secondary key creation callback routine passed to +DB->associate to indicate that multiple secondary keys should be +associated with the given primary key/data pair. If set, the +size field indicates the number of secondary keys and the +data field refers to an array of that number of DBT +structures. +

The DB_DBT_APPMALLOC flag may be set on any of the DBT +structures to indicate that their data field needs to be +freed.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/dbt_package.html b/db/docs/api_c/dbt_package.html index 031fb49bf..a846b692d 100644 --- a/db/docs/api_c/dbt_package.html +++ b/db/docs/api_c/dbt_package.html @@ -1,6 +1,5 @@ - - + @@ -18,6 +17,6 @@

DB_MULTIPLE_KEY_NEXTNext bulk get retrieval
DB_MULTIPLE_RECNO_NEXTNext bulk get retrieval
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_cdsgroup_begin.html b/db/docs/api_c/env_cdsgroup_begin.html index 3e961b135..4706684f9 100644 --- a/db/docs/api_c/env_cdsgroup_begin.html +++ b/db/docs/api_c/env_cdsgroup_begin.html @@ -1,6 +1,5 @@ - - + @@ -55,6 +54,6 @@ may fail and return one of the following non-zero errors:


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_class.html b/db/docs/api_c/env_class.html index 91e112c9c..0e2347ca9 100644 --- a/db/docs/api_c/env_class.html +++ b/db/docs/api_c/env_class.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ DB_ENV

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_close.html b/db/docs/api_c/env_close.html index 5fe2f2a9a..52f6da440 100644 --- a/db/docs/api_c/env_close.html +++ b/db/docs/api_c/env_close.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_dbremove.html b/db/docs/api_c/env_dbremove.html index 1ac2676d0..0f48df629 100644 --- a/db/docs/api_c/env_dbremove.html +++ b/db/docs/api_c/env_dbremove.html @@ -1,6 +1,5 @@ - - + @@ -57,14 +56,15 @@ the following value: changes made by the operation will be recoverable. If the call fails, the operation will have made no changes.

-
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Environment Variables

The @@ -98,6 +98,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_dbrename.html b/db/docs/api_c/env_dbrename.html index 4c8177b10..758cc9984 100644 --- a/db/docs/api_c/env_dbrename.html +++ b/db/docs/api_c/env_dbrename.html @@ -1,6 +1,5 @@ - - + @@ -60,14 +59,15 @@ changes made by the operation will be recoverable. If the call fails, the operation will have made no changes.

newname
The newname parameter is the new name of the database or file. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Environment Variables

The @@ -101,6 +101,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_err.html b/db/docs/api_c/env_err.html index 463f61269..cc3a749de 100644 --- a/db/docs/api_c/env_err.html +++ b/db/docs/api_c/env_err.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ string.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_event_notify.html b/db/docs/api_c/env_event_notify.html index c5471d823..2a97518b5 100644 --- a/db/docs/api_c/env_event_notify.html +++ b/db/docs/api_c/env_event_notify.html @@ -1,6 +1,5 @@ - - - + + @@ -57,28 +56,41 @@ rather than gracefully return up the stack. environment has failed. All threads of control in the database environment should exit the environment, and recovery should be run.

DB_EVENT_REP_CLIENT
The local site is now a replication client. +
DB_EVENT_REP_ELECTED
The local replication site has just won an election. An application using +the Base replication API should arrange for a call to the DB_ENV->rep_start method +after receiving this event, to reconfigure the local environment as a +replication master. +

Replication Manager applications may safely ignore this event. The +Replication Manager calls DB_ENV->rep_start automatically on behalf of +the application when appropriate (resulting in firing of the +DB_EVENT_REP_MASTER event).

DB_EVENT_REP_MASTER
The local site is now the master site of its replication group. It is the application's responsibility to begin acting as the master environment.
DB_EVENT_REP_NEWMASTER
The replication group of which this site is a member has just established a new master; the local site is not the new master. The event_info parameter points to an integer containing the environment ID of the new master. -

The DB_EVENT_REP_NEWMASTER event is provided only to applications using -the replication manager support.

+
DB_EVENT_REP_PERM_FAILED
The replication manager did not receive enough acknowledgements (based on +the acknowledgement policy configured with DB_ENV->repmgr_set_ack_policy) +to ensure a transaction's durability within the replication group. The +transaction will be flushed to the master's local disk storage for +durability. +

The DB_EVENT_REP_PERM_FAILED event is provided only to applications +configured for the replication manager.

DB_EVENT_REP_STARTUPDONE
The client has completed startup synchronization and is now processing live log records received from the master.
DB_EVENT_WRITE_FAILED
A Berkeley DB write to stable storage failed. -

Berkeley DB is not re-entrant. Callback functions should not attempt to make -library calls (for example, to release locks or close open handles). -Re-entering Berkeley DB is not guaranteed to work correctly, and the results -are undefined.

event_info
The event_info parameter may reference memory which contains additional information describing an event. By default, event_info is NULL; specific events may pass non-NULL values, in which case the event will also describe the memory's structure. +

Berkeley DB is not re-entrant. Callback functions should not attempt to make +library calls (for example, to release locks or close open handles). +Re-entering Berkeley DB is not guaranteed to work correctly, and the results +are undefined.


Class

DB_ENV @@ -88,6 +100,6 @@ in which case the event will also describe the memory's structure.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_failchk.html b/db/docs/api_c/env_failchk.html index f1a8d8ba7..e0e3c28c7 100644 --- a/db/docs/api_c/env_failchk.html +++ b/db/docs/api_c/env_failchk.html @@ -1,6 +1,5 @@ - - - + + @@ -23,7 +22,7 @@ #include <db.h>

int -DB_ENV->dbenv_failchk(DB_ENV *dbenv, u_int32_t flags); +DB_ENV->failchk(DB_ENV *dbenv, u_int32_t flags);


Description: DB_ENV->failchk

@@ -87,6 +86,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_fileid_reset.html b/db/docs/api_c/env_fileid_reset.html index 4d463aedd..88de4f5ee 100644 --- a/db/docs/api_c/env_fileid_reset.html +++ b/db/docs/api_c/env_fileid_reset.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_list.html b/db/docs/api_c/env_list.html index e6ec0358c..a00d26bc7 100644 --- a/db/docs/api_c/env_list.html +++ b/db/docs/api_c/env_list.html @@ -1,6 +1,5 @@ - - + @@ -52,6 +51,6 @@

DB_ENV->set_tmp_dirSet the environment temporary file directory
DB_ENV->set_verboseSet verbose messages
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_lsn_reset.html b/db/docs/api_c/env_lsn_reset.html index 9ba115c25..08fd594e6 100644 --- a/db/docs/api_c/env_lsn_reset.html +++ b/db/docs/api_c/env_lsn_reset.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_open.html b/db/docs/api_c/env_open.html index 9d09bd8ab..0df8a0415 100644 --- a/db/docs/api_c/env_open.html +++ b/db/docs/api_c/env_open.html @@ -1,6 +1,5 @@ - - + @@ -270,6 +269,6 @@ open method flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_remove.html b/db/docs/api_c/env_remove.html index fbfcf3b27..ba63095c5 100644 --- a/db/docs/api_c/env_remove.html +++ b/db/docs/api_c/env_remove.html @@ -1,6 +1,5 @@ - - - + + @@ -102,10 +101,7 @@ example, users with a user-ID of 0 on UNIX systems).

The DB_ENV->remove method may fail and return one of the following non-zero errors:

-
EBUSY
The shared memory region was in use and the force flag was not set. -
-
-
ENOENT
The file or directory does not exist. +
EBUSY
The shared memory region was in use and the force flag was not set.

Class

@@ -116,6 +112,6 @@ may fail and return one of the following non-zero errors:


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_alloc.html b/db/docs/api_c/env_set_alloc.html index 41d20f753..20c1fe8ac 100644 --- a/db/docs/api_c/env_set_alloc.html +++ b/db/docs/api_c/env_set_alloc.html @@ -1,6 +1,5 @@ - - + @@ -90,6 +89,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_app_dispatch.html b/db/docs/api_c/env_set_app_dispatch.html index 1643eaac1..bcb77f071 100644 --- a/db/docs/api_c/env_set_app_dispatch.html +++ b/db/docs/api_c/env_set_app_dispatch.html @@ -1,6 +1,5 @@ - - + @@ -97,6 +96,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_cache_max.html b/db/docs/api_c/env_set_cache_max.html new file mode 100644 index 000000000..e048733d0 --- /dev/null +++ b/db/docs/api_c/env_set_cache_max.html @@ -0,0 +1,91 @@ + + + + + +Berkeley DB: DB_ENV->set_cache_max + + + + + + + +
+

DB_ENV->set_cache_max

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB_ENV->set_cache_max(DB_ENV *dbenv, u_int32_t gbytes, u_int32_t bytes); +

+int +DB_ENV->get_cache_max(DB_ENV *dbenv, u_int32_t *gbytesp, u_int32_t *bytesp); +

+
+

Description: DB_ENV->set_cache_max

+

The DB_ENV->set_cache_max method sets the maximum cache size, in bytes. +The specified size is rounded to the nearest multiple of the cache +region size, which is the initial cache size divided by the number of +regions specified to the DB_ENV->set_cachesize method. If no value is +specified, it defaults to the initial cache size.

+

The database environment's maximum cache size may also be configured using the +environment's DB_CONFIG file. The syntax of the entry in that +file is a single line with the string "set_cache_max", one or more whitespace +characters, and the size in bytes. +Because the DB_CONFIG file is read when the database +environment is opened, it will silently overrule configuration done +before that time.

+

The DB_ENV->set_cache_max method configures a database environment, not only operations +performed using the specified DB_ENV handle.

+

The DB_ENV->set_cache_max method may be called at any time during the life of the +application.

+

The DB_ENV->set_cache_max method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
mp_mmapsize
The mp_mmapsize parameter is the maximum file size, in bytes, +for a file to be mapped into the process address space. +
+

Errors

+

The DB_ENV->set_cache_max method +may fail and return one of the following non-zero errors:

+
+
EINVAL
If the method was called after DB_ENV->open was called; or if an +invalid flag value or parameter was specified. +
+
+

Description: DB_ENV->get_cache_max

+

The DB_ENV->get_cache_max method returns the maximum size of the cache.

+

The DB_ENV->get_cache_max method may be called at any time during the life of the +application.

+

The DB_ENV->get_cache_max method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
bytesp
The bytesp parameter references memory into which + the additional bytes of memory in the cache is copied. +
gbytesp
The gbytesp parameter references memory into which + the gigabytes of memory in the cache is copied. +
+
+

Class

+DB_ENV +

See Also

+Database Environments and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/env_set_cachesize.html b/db/docs/api_c/env_set_cachesize.html index 60093c69a..d3565d050 100644 --- a/db/docs/api_c/env_set_cachesize.html +++ b/db/docs/api_c/env_set_cachesize.html @@ -1,6 +1,5 @@ - - - + + @@ -50,26 +49,29 @@ allocated contiguously on some architectures. For example, some releases of Solaris limit the amount of memory that may be allocated contiguously by a process. If ncache is 0 or 1, the cache will be allocated contiguously in memory. If it is greater than 1, the cache -will be broken up into ncache equally sized, separate pieces of -memory.

-

The database environment's cache size may also be configured using the +will be split across ncache separate regions, where the +region size is equal to the initial cache size divided by +ncache.

+

The memory pool may be resized by calling DB_ENV->set_cachesize +after the environment is open. The supplied size will be rounded to +the nearest multiple of the region size and may not be larger than the +maximum size configured with DB_ENV->set_cache_max. The +ncache parameter is ignored when resizing the cache.

+

The database environment's initial cache size may also be configured using the environment's DB_CONFIG file. The syntax of the entry in that file is a single line with the string "set_cachesize", one or more whitespace -characters, and the cache size specified in three parts: the gigabytes of cache, the -additional bytes of cache, and the number of caches, also separated by -whitespace characters. For example, "set_cachesize 2 524288000 3" would -create a 2.5GB logical cache, split between three physical caches. +characters, and the initial cache size specified in three parts: the gigabytes of +cache, the additional bytes of cache, and the number of caches, also +separated by whitespace characters. For example, "set_cachesize 2 +524288000 3" would create a 2.5GB logical cache, split between three +physical caches. Because the DB_CONFIG file is read when the database environment is opened, it will silently overrule configuration done before that time.

The DB_ENV->set_cachesize method configures a database environment, not only operations performed using the specified DB_ENV handle.

-

The DB_ENV->set_cachesize method may not be called after the DB_ENV->open method is -called. -If the database environment already exists when -DB_ENV->open is called, the information specified to DB_ENV->set_cachesize -will be ignored. -

+

The DB_ENV->set_cachesize method may be called at any time during the life of the +application.

The DB_ENV->set_cachesize method returns a non-zero error value on failure and 0 on success. @@ -85,9 +87,7 @@ and 0 on success. may fail and return one of the following non-zero errors:

EINVAL
If the specified cache size was impossibly small; -the method was called after -DB_ENV->open -was called; or if an +; or if an invalid flag value or parameter was specified.

@@ -118,6 +118,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_data_dir.html b/db/docs/api_c/env_set_data_dir.html index 3de0dc2cd..321ecbbbf 100644 --- a/db/docs/api_c/env_set_data_dir.html +++ b/db/docs/api_c/env_set_data_dir.html @@ -1,6 +1,5 @@ - - + @@ -97,6 +96,6 @@ NULL-terminated array of directories in dirpp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_encrypt.html b/db/docs/api_c/env_set_encrypt.html index ff7e63170..384cff35b 100644 --- a/db/docs/api_c/env_set_encrypt.html +++ b/db/docs/api_c/env_set_encrypt.html @@ -1,6 +1,5 @@ - - + @@ -92,6 +91,6 @@ encryption flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_errcall.html b/db/docs/api_c/env_set_errcall.html index 776359f91..2c2397ef9 100644 --- a/db/docs/api_c/env_set_errcall.html +++ b/db/docs/api_c/env_set_errcall.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_errfile.html b/db/docs/api_c/env_set_errfile.html index 4336b62de..ec5ec2a41 100644 --- a/db/docs/api_c/env_set_errfile.html +++ b/db/docs/api_c/env_set_errfile.html @@ -1,6 +1,5 @@ - - - + + @@ -31,9 +30,9 @@ DB_ENV->get_errfile(DB_ENV *dbenv, FILE **errfilep);


Description: DB_ENV->set_errfile

When an error occurs in the Berkeley DB library, a Berkeley DB error or an error -return value is returned by the interface. In some cases, however, -the errno value may be insufficient to completely describe -the cause of the error especially during initial application debugging. +return value is returned by the interface. In some cases, however, the +return value may be insufficient to completely describe the cause of the +error especially during initial application debugging.

The DB_ENV->set_errfile and DB->set_errfile methods are used to enhance the mechanism for reporting error messages to the application by setting a C library FILE * to be used for displaying additional Berkeley DB @@ -43,7 +42,18 @@ an additional error message to the specified file reference.

(":") (if a prefix string was previously specified using DB->set_errpfx or DB_ENV->set_errpfx), an error string, and a trailing <newline> character.

-

Setting errfile to NULL unconfigures the interface.

+

The default configuration when applications first create DB or +DB_ENV handles is as if the DB_ENV->set_errfile or +DB->set_errfile methods were called with the standard error output +(stderr) specified as the FILE * argument. Applications wanting no +output at all can turn off this default configuration by calling the +DB_ENV->set_errfile or DB->set_errfile methods with NULL as the +FILE * argument. Additionally, explicitly configuring the error output +channel using any of the DB_ENV->set_errfile, +DB->set_errfile, DB_ENV->set_errcall, +DB->set_errcall, DbEnv::set_error_stream or +Db::set_error_stream methods will also turn off this default output +for the application.

This error logging enhancement does not slow performance or significantly increase application size, and may be run during normal operation as well as during application debugging.

@@ -80,6 +90,6 @@ FILE * in errfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_errpfx.html b/db/docs/api_c/env_set_errpfx.html index 8da220984..e915c6448 100644 --- a/db/docs/api_c/env_set_errpfx.html +++ b/db/docs/api_c/env_set_errpfx.html @@ -1,6 +1,5 @@ - - + @@ -70,6 +69,6 @@ error prefix in errpfxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_feedback.html b/db/docs/api_c/env_set_feedback.html index 5ae94d5c6..96f6a9a4b 100644 --- a/db/docs/api_c/env_set_feedback.html +++ b/db/docs/api_c/env_set_feedback.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_flags.html b/db/docs/api_c/env_set_flags.html index c18435a1a..a21da3ac7 100644 --- a/db/docs/api_c/env_set_flags.html +++ b/db/docs/api_c/env_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -137,8 +136,12 @@ file.

the life of the application.

DB_LOG_AUTOREMOVE
If set, Berkeley DB will automatically remove log files that are no longer -needed. Automatic log file removal is likely to make catastrophic -recovery impossible. +needed. +

Automatic log file removal is likely to make catastrophic recovery +impossible.

+

Replication applications will rarely want to configure automatic log +file removal as it increases the likelihood a master will be unable to +satisfy a client's request for a recent log record.

Calling DB_ENV->set_flags with the DB_LOG_AUTOREMOVE flag affects the database environment, including all threads of control accessing the database environment.

@@ -165,16 +168,6 @@ database environment, including all threads of control accessing the database environment.

The DB_LOG_INMEMORY flag may be used to configure Berkeley DB only before the DB_ENV->open method is called.

- -
DB_NOLOCKING
If set, Berkeley DB will grant all requested mutual exclusion mutexes and -database locks without regard for their actual availability. This -functionality should never be used for purposes other than debugging. -

Calling DB_ENV->set_flags with the DB_NOLOCKING flag only affects -the specified DB_ENV handle (and any other Berkeley DB handles opened -within the scope of that handle). -

-

The DB_NOLOCKING flag may be used to configure Berkeley DB at any time during -the life of the application.

DB_MULTIVERSION
If set, all databases in the environment will be opened as if DB_MULTIVERSION is passed to DB->open. This flag will be ignored for queue databases for which DB_MULTIVERSION is not @@ -188,6 +181,16 @@ or the flag should be specified in the DB_CONFIG configuration file.

The DB_MULTIVERSION flag may be used to configure Berkeley DB at any time during the life of the application.

+ +
DB_NOLOCKING
If set, Berkeley DB will grant all requested mutual exclusion mutexes and +database locks without regard for their actual availability. This +functionality should never be used for purposes other than debugging. +

Calling DB_ENV->set_flags with the DB_NOLOCKING flag only affects +the specified DB_ENV handle (and any other Berkeley DB handles opened +within the scope of that handle). +

+

The DB_NOLOCKING flag may be used to configure Berkeley DB at any time during +the life of the application.

DB_NOMMAP
If set, Berkeley DB will copy read-only database files into the local cache instead of potentially mapping them into process memory (see the @@ -229,14 +232,12 @@ the life of the application.

DB_PANIC_ENVIRONMENT
If set, Berkeley DB will set the panic state for the database environment. (Database environments in a panic state normally refuse all attempts to call Berkeley DB functions, returning DB_RUNRECOVERY.) This flag may -not be specified using the environment's DB_CONFIG file. This -flag may be used to configure Berkeley DB only after the DB_ENV->open method -is called. +not be specified using the environment's DB_CONFIG file.

Calling DB_ENV->set_flags with the DB_PANIC_ENVIRONMENT flag affects the database environment, including all threads of control accessing the database environment.

-

The DB_PANIC_ENVIRONMENT flag may be used to configure Berkeley DB at any time during -the life of the application.

+

The DB_PANIC_ENVIRONMENT flag may be used to configure Berkeley DB only after the +DB_ENV->open method is called.

DB_REGION_INIT
In some applications, the expense of page-faulting the underlying shared memory regions can affect performance. (For example, if the page-fault @@ -281,13 +282,26 @@ may be undone during recovery. The number of transactions at risk is governed by how many log updates can fit into the log buffer, how often the operating system flushes dirty buffers to disk, and how often the log is checkpointed. -

Calling DB_ENV->set_flags with the DB_TXN_NOSYNC flag only affects +

Calling DB_ENV->set_flags with the DB_TXN_NOSYNC flag only affects the specified DB_ENV handle (and any other Berkeley DB handles opened within the scope of that handle). For consistent behavior across the environment, all DB_ENV -handles opened in the environment must either set the DB_TXN_NOSYNC flag +handles opened in the environment must either set the DB_TXN_NOSYNC flag or the flag should be specified in the DB_CONFIG configuration -file.

The DB_TXN_NOSYNC flag may be used to configure Berkeley DB at any time during +file.

The DB_TXN_NOSYNC flag may be used to configure Berkeley DB at any time during +the life of the application.

+
DB_TXN_NOWAIT
If set and a lock is unavailable for any Berkeley DB operation performed in +the context of a transaction, cause the operation to +return DB_LOCK_DEADLOCK (or DB_LOCK_NOTGRANTED if +configured using the DB_TIME_NOTGRANTED flag). +

Calling DB_ENV->set_flags with the DB_TXN_NOWAIT flag only affects +the specified DB_ENV handle (and any other Berkeley DB handles opened +within the scope of that handle). +For consistent behavior across the environment, all DB_ENV +handles opened in the environment must either set the DB_TXN_NOWAIT flag +or the flag should be specified in the DB_CONFIG configuration +file.

+

The DB_TXN_NOWAIT flag may be used to configure Berkeley DB at any time during the life of the application.

DB_TXN_SNAPSHOT
If set, all transactions in the environment will be started as if DB_TXN_SNAPSHOT were passed to DB_ENV->txn_begin, and all @@ -368,6 +382,6 @@ configuration flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_isalive.html b/db/docs/api_c/env_set_isalive.html index 72e5ea44a..d024ce7fc 100644 --- a/db/docs/api_c/env_set_isalive.html +++ b/db/docs/api_c/env_set_isalive.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lg_bsize.html b/db/docs/api_c/env_set_lg_bsize.html index 39d0d3bc6..1eaa8f40a 100644 --- a/db/docs/api_c/env_set_lg_bsize.html +++ b/db/docs/api_c/env_set_lg_bsize.html @@ -1,6 +1,5 @@ - - + @@ -104,6 +103,6 @@ size of the log buffer, in bytes in lg_bsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lg_dir.html b/db/docs/api_c/env_set_lg_dir.html index 03113b545..c592fa3f4 100644 --- a/db/docs/api_c/env_set_lg_dir.html +++ b/db/docs/api_c/env_set_lg_dir.html @@ -1,6 +1,5 @@ - - + @@ -95,6 +94,6 @@ log directory in dirp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lg_max.html b/db/docs/api_c/env_set_lg_max.html index aff55f831..aa8c1299f 100644 --- a/db/docs/api_c/env_set_lg_max.html +++ b/db/docs/api_c/env_set_lg_max.html @@ -1,6 +1,5 @@ - - + @@ -104,6 +103,6 @@ maximum log file size in lg_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lg_mode.html b/db/docs/api_c/env_set_lg_mode.html index 63b54011e..85d33cfb7 100644 --- a/db/docs/api_c/env_set_lg_mode.html +++ b/db/docs/api_c/env_set_lg_mode.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ log file mode in lg_modep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lg_regionmax.html b/db/docs/api_c/env_set_lg_regionmax.html index be05ff5b0..d71075192 100644 --- a/db/docs/api_c/env_set_lg_regionmax.html +++ b/db/docs/api_c/env_set_lg_regionmax.html @@ -1,6 +1,5 @@ - - + @@ -90,6 +89,6 @@ size of the underlying logging subsystem region in lg_regionmaxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lk_conflicts.html b/db/docs/api_c/env_set_lk_conflicts.html index 9bc2658ec..3f60c1fa2 100644 --- a/db/docs/api_c/env_set_lk_conflicts.html +++ b/db/docs/api_c/env_set_lk_conflicts.html @@ -1,6 +1,5 @@ - - + @@ -93,6 +92,6 @@ a pointer to the current conflicts array is copied.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lk_detect.html b/db/docs/api_c/env_set_lk_detect.html index 4eb1375ca..9743cb7ac 100644 --- a/db/docs/api_c/env_set_lk_detect.html +++ b/db/docs/api_c/env_set_lk_detect.html @@ -1,6 +1,5 @@ - - + @@ -100,6 +99,6 @@ deadlock detector configuration in lk_detectp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lk_max.html b/db/docs/api_c/env_set_lk_max.html deleted file mode 100644 index 1e9832b59..000000000 --- a/db/docs/api_c/env_set_lk_max.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - -Berkeley DB: DBENV->set_lk_max - - - - - - - -
-

DBENV->set_lk_max

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DBENV->set_lk_max(DB_ENV *dbenv, u_int32_t max); -

-

Description

-

The DBENV->set_lk_max function interface has been deprecated in favor of -the DBENV->set_lk_max_locks, DBENV->set_lk_max_lockers, -and DBENV->set_lk_max_objects functions. Please update your applications. -

Set each of the maximum number of locks, lockers and lock objects -supported by the Berkeley DB lock subsystem to max. This value is -used by DBENV->open to estimate how much space to allocate for -various lock-table data structures. For specific information on -configuring the size of the lock subsystem, see -Configuring locking: sizing the -system. -

The DBENV->set_lk_max interface may only be used to configure Berkeley DB before -the DBENV->open interface is called. -

The DBENV->set_lk_max function returns a non-zero error value on failure and 0 on success. -

The database environment's maximum number of locks may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_lk_max", one or more whitespace characters, -and the number of locks. Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DBENV->open was called. -

-

See Also

-DBENV->set_lk_conflicts, -DBENV->set_lk_detect, -DBENV->set_lk_max_locks, -DBENV->set_lk_max_lockers, -DBENV->set_lk_max_objects, -DBENV->set_lk_max, -lock_detect, -lock_get, -lock_id, -lock_put, -lock_stat -and -lock_vec. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_lk_max_lockers.html b/db/docs/api_c/env_set_lk_max_lockers.html index 454faee43..244090764 100644 --- a/db/docs/api_c/env_set_lk_max_lockers.html +++ b/db/docs/api_c/env_set_lk_max_lockers.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ maximum number of lockers in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lk_max_locks.html b/db/docs/api_c/env_set_lk_max_locks.html index 89278f8ad..35b3313b0 100644 --- a/db/docs/api_c/env_set_lk_max_locks.html +++ b/db/docs/api_c/env_set_lk_max_locks.html @@ -1,6 +1,5 @@ - - + @@ -90,6 +89,6 @@ maximum number of locks in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_lk_max_objects.html b/db/docs/api_c/env_set_lk_max_objects.html index 81985ea97..aba66e615 100644 --- a/db/docs/api_c/env_set_lk_max_objects.html +++ b/db/docs/api_c/env_set_lk_max_objects.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ maximum number of locked objects in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_mp_mmapsize.html b/db/docs/api_c/env_set_mp_mmapsize.html index 754b9b1f6..bc007953f 100644 --- a/db/docs/api_c/env_set_mp_mmapsize.html +++ b/db/docs/api_c/env_set_mp_mmapsize.html @@ -1,6 +1,5 @@ - - + @@ -91,6 +90,6 @@ maximum file map size in mp_mmapsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_msgcall.html b/db/docs/api_c/env_set_msgcall.html index 0eaa2494b..69068a2a4 100644 --- a/db/docs/api_c/env_set_msgcall.html +++ b/db/docs/api_c/env_set_msgcall.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_msgfile.html b/db/docs/api_c/env_set_msgfile.html index 27d6dcfdb..135a780ac 100644 --- a/db/docs/api_c/env_set_msgfile.html +++ b/db/docs/api_c/env_set_msgfile.html @@ -1,6 +1,5 @@ - - + @@ -75,6 +74,6 @@ FILE * in msgfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_mutexlocks.html b/db/docs/api_c/env_set_mutexlocks.html deleted file mode 100644 index a5fa2aa34..000000000 --- a/db/docs/api_c/env_set_mutexlocks.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Berkeley DB: DBENV->set_mutexlocks - - - - - - - -
-

DBENV->set_mutexlocks

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DBENV->set_mutexlocks(DB_ENV *dbenv, int do_lock); -

-

Description

-

Toggle mutex locks. Setting do_lock to a zero value causes -Berkeley DB to grant all requested mutual exclusion mutexes without regard -for their availability. -

This functionality should never be used for any other purpose than -debugging. -

The DBENV->set_mutexlocks interface may be used to configure Berkeley DB at any time -during the life of the application. -

The DBENV->set_mutexlocks function returns a non-zero error value on failure and 0 on success. -

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_pageyield.html b/db/docs/api_c/env_set_pageyield.html deleted file mode 100644 index 953724085..000000000 --- a/db/docs/api_c/env_set_pageyield.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - -Berkeley DB: db_env_set_pageyield - - - - - - - -
-

db_env_set_pageyield

-
-APIRef -
-


- -

-#include <db.h>
-

-int -db_env_set_pageyield(int pageyield); -

-

Description

-

Yield the processor whenever requesting a page from the cache. Setting -pageyield to a non-zero value causes Berkeley DB to yield the processor -any time a thread requests a page from the cache. -

The db_env_set_pageyield interface affects the entire application, not a single -database or database environment. -

While the db_env_set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create functions. -

This functionality should never be used for any other purpose than stress -testing. -

The db_env_set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application. -

The db_env_set_pageyield function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_paniccall.html b/db/docs/api_c/env_set_paniccall.html deleted file mode 100644 index 3c27dd866..000000000 --- a/db/docs/api_c/env_set_paniccall.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - -Berkeley DB: DB_ENV->set_paniccall - - - - - - - -
-

DB_ENV->set_paniccall

-
-API -Ref
-


- -

-#include <db.h>
-

-int -DB_ENV->set_paniccall(DB_ENV *dbenv, - void (*db_panic_fcn)(DB_ENV *dbenv, int errval)); -

-
-

Description: DB_ENV->set_paniccall

-

Errors can occur in the Berkeley DB library where the only solution is to shut -down the application and run recovery (for example, if Berkeley DB is unable -to allocate heap memory). In such cases, the Berkeley DB methods will -return DB_RUNRECOVERY. -It is often easier to simply exit the application when such errors occur -rather than gracefully return up the stack. The DB_ENV->set_paniccall method -specifies a function to be called when -DB_RUNRECOVERY is about to be returned -from a Berkeley DB method.

-

The DB_ENV->set_paniccall method may be called at any time during the life of the -application.

-

The DB_ENV->set_paniccall method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
db_panic_fcn
The db_panic_fcn parameter is the application-specified function -called in the case of a database environment panic. The function takes -two arguments: -
-
dbenv
The dbenv parameter is the enclosing database environment handle. -
errval
The errval parameter is the error value that would have been -returned to the caller if DB_RUNRECOVERY were not going to be -returned instead. -
-
-
-

Class

-DB_ENV -

See Also

-Database Environments and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_c/env_set_panicstate.html b/db/docs/api_c/env_set_panicstate.html deleted file mode 100644 index 6168ad9af..000000000 --- a/db/docs/api_c/env_set_panicstate.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - -Berkeley DB: db_env_set_panicstate - - - - - - - -
-

db_env_set_panicstate

-
-APIRef -
-


- -

-#include <db.h>
-

-int -db_env_set_panicstate(int panic); -

-

Description

-

Toggle the Berkeley DB panic state. Setting panic to a non-zero value -causes Berkeley DB to refuse attempts to call Berkeley DB functions with the -DB_RUNRECOVERY error return. -

The db_env_set_panicstate interface affects the entire application, not a single -database or database environment. -

While the db_env_set_panicstate interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create functions. -

The db_env_set_panicstate function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_rec_init.html b/db/docs/api_c/env_set_rec_init.html deleted file mode 100644 index 056ec9b71..000000000 --- a/db/docs/api_c/env_set_rec_init.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - -Berkeley DB: DBENV->set_recovery_init - - - - - - - -
-

DBENV->set_recovery_init

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DBENV->set_recovery_init(DB_ENV *, - int (*db_recovery_init_fcn)(DB_ENV *)); -

-

Description

-

Applications installing application-specific recovery functions need -to be called before Berkeley DB performs recovery so they may add their recovery -functions to Berkeley DB's. -

The DBENV->set_recovery_init function supports this functionality. The -db_recovery_init_fcn function must be declared with one -argument, a reference to the enclosing Berkeley DB environment. This -function will be called after the DBENV->open has been called, -but before recovery is started. -

If the db_recovery_init_fcn function returns a non-zero value, -no recovery will be performed and DBENV->open will return the same -value to its caller. -

The DBENV->set_recovery_init interface may only be used to configure Berkeley DB before -the DBENV->open interface is called. -

The DBENV->set_recovery_init function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DBENV->open was called. -

-

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_region_init.html b/db/docs/api_c/env_set_region_init.html deleted file mode 100644 index 3c83680ad..000000000 --- a/db/docs/api_c/env_set_region_init.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - -Berkeley DB: db_env_set_region_init - - - - - - - -
-

db_env_set_region_init

-
-APIRef -
-


- -

-#include <db.h>
-

-int -db_env_set_region_init(int region_init); -

-

Description

-

Page-fault shared regions into memory when initially creating or joining -a Berkeley DB environment. In some applications, the expense of page-faulting -the shared memory regions can affect performance, e.g., when the -page-fault occurs while holding a lock, other lock requests can convoy -and overall throughput may decrease. Setting region_init to a -non-zero value specifies that shared regions be read or written, as -appropriate, when the region is joined by the application. This forces -the underlying virtual memory and file systems to instantiate both the -necessary memory and the necessary disk space. This can also avoid -out-of-disk space failures later on. -

The db_env_set_region_init interface affects the entire application, not a single -database or database environment. -

While the db_env_set_region_init interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create functions. -

The db_env_set_region_init function returns a non-zero error value on failure and 0 on success. -

The database environment's initial behavior with respect to shared memory regions may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_region_init", one or more whitespace characters, -and the string "1". Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_rpc_server.html b/db/docs/api_c/env_set_rpc_server.html index 4ad810599..cfe8f9b91 100644 --- a/db/docs/api_c/env_set_rpc_server.html +++ b/db/docs/api_c/env_set_rpc_server.html @@ -1,6 +1,5 @@ - - + @@ -82,6 +81,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_server.html b/db/docs/api_c/env_set_server.html deleted file mode 100644 index 586887bfc..000000000 --- a/db/docs/api_c/env_set_server.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - -Berkeley DB: DBENV->set_server - - - - - - - -
-

DBENV->set_server

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DBENV->set_server(DB_ENV *dbenv, char *host, - long cl_timeout, long sv_timeout, u_int32_t flags); -

-

Description

-

Connects to the DB server on the indicated hostname and sets up a channel -for communication. -

The cl_timeout argument specifies the number of seconds the client -should wait for results to come back from the server. Once the timeout -has expired on any communication with the server, DB_NOSERVER will -be returned. If this value is zero, a default timeout is used. -

The sv_timeout argument specifies the number of seconds the server -should allow a client connection to remain idle before assuming that -client is gone. Once that timeout has been reached, the server releases -all resources associated with that client connection. Subsequent attempts -by that client to communicate with the server result in -DB_NOSERVER_ID indicating that an invalid identifier has been -given to the server. This value can be considered a hint to the server. -The server may alter this value based on its own policies or allowed -values. If this value is zero, a default timeout is used. -

The flags parameter is currently unused, and must be set to 0. -

When the DBENV->set_server function has been called, any subsequent calls -to Berkeley DB library interfaces may return either DB_NOSERVER or -DB_NOSERVER_ID. -

The DBENV->set_server function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

dbenv_set_server -

-

See Also

-DBENV->close, -db_env_create, -DBENV->open, -DBENV->remove, -DBENV->err, -db_strerror, -db_version, -DBENV->set_cachesize, -DBENV->set_errcall, -DBENV->set_errfile, -DBENV->set_errpfx, -DBENV->set_flags, -DBENV->set_mutexlocks, -DBENV->set_paniccall, -and -DBENV->set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_shm_key.html b/db/docs/api_c/env_set_shm_key.html index cfb852b3a..5b979931a 100644 --- a/db/docs/api_c/env_set_shm_key.html +++ b/db/docs/api_c/env_set_shm_key.html @@ -1,6 +1,5 @@ - - + @@ -107,6 +106,6 @@ base segment ID in shm_keyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_tas_spins.html b/db/docs/api_c/env_set_tas_spins.html deleted file mode 100644 index bbbb7adbb..000000000 --- a/db/docs/api_c/env_set_tas_spins.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - -Berkeley DB: DB_ENV->set_tas_spins - - - - - - - -
-

DB_ENV->set_tas_spins

-
-API -Ref
-


- -

-#include <db.h>
-

-int -DB_ENV->set_tas_spins(DB_ENV *dbenv, u_int32_t tas_spins); -

-int -DB_ENV->get_tas_spins(DB_ENV *dbenv, u_int32_t *tas_spinsp); -

-
-

Description: DB_ENV->set_tas_spins

-

Specify that test-and-set mutexes should spin tas_spins times -without blocking. The value defaults to 1 on uniprocessor systems and -to 50 times the number of processors on multiprocessor systems.

-

The database environment's test-and-set spin count may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_tas_spins", one or more whitespace characters, -and the number of spins. -Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time.

-

The DB_ENV->set_tas_spins method configures operations performed using the specified -DB_ENV handle, not all operations performed on the underlying -database environment.

-

The DB_ENV->set_tas_spins method may be called at any time during the life of the -application.

-

The DB_ENV->set_tas_spins method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
tas_spins
The tas_spins parameter is the number of spins test-and-set -mutexes should execute before blocking. -
-

Errors

-

The DB_ENV->set_tas_spins method -may fail and return one of the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Description: DB_ENV->get_tas_spins

-

The DB_ENV->get_tas_spins method returns the test-and-set spin count.

-

The DB_ENV->get_tas_spins method may be called at any time during the life of the -application.

-

The DB_ENV->get_tas_spins method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
tas_spinsp
The DB_ENV->get_tas_spins method returns the -test-and-set spin count in tas_spinsp. -
-
-

Class

-DB_ENV -

See Also

-Database Environments and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_c/env_set_thread_count.html b/db/docs/api_c/env_set_thread_count.html index 2f612f208..c7d326087 100644 --- a/db/docs/api_c/env_set_thread_count.html +++ b/db/docs/api_c/env_set_thread_count.html @@ -1,6 +1,5 @@ - - - + + @@ -36,6 +35,18 @@ database environment if the DB_ENV->failc DB_ENV->set_thread_count method does not set the maximum number of threads but is used to determine memory sizing and the thread control block reclamation policy.

+

If a process has not configured an is_alive function from the +DB_ENV->set_isalive method, and then attempts to join a database +environment configured for failure checking with the +DB_ENV->failchk, DB_ENV->set_thread_id, +DB_ENV->set_isalive and DB_ENV->set_thread_count methods, the +program may be unable to allocate a thread control block and fail to +join the environment. +This is true of the standalone Berkeley DB utility programs. +To avoid problems when using the standalone Berkeley DB utility programs with +environments configured for failure checking, incorporate the utility's +functionality directly in the application, or call the +DB_ENV->failchk method before running the utility.

The database environment's thread count may also be configured using the environment's DB_CONFIG file. The syntax of the entry in that file is a single line with the string "set_thread_count", one or more whitespace @@ -88,6 +99,6 @@ thread count in countp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_thread_id.html b/db/docs/api_c/env_set_thread_id.html index 61f897353..c7770ac67 100644 --- a/db/docs/api_c/env_set_thread_id.html +++ b/db/docs/api_c/env_set_thread_id.html @@ -1,6 +1,5 @@ - - + @@ -118,6 +117,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_thread_id_string.html b/db/docs/api_c/env_set_thread_id_string.html index 568b00e4f..87da829ba 100644 --- a/db/docs/api_c/env_set_thread_id_string.html +++ b/db/docs/api_c/env_set_thread_id_string.html @@ -1,6 +1,5 @@ - - + @@ -80,6 +79,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_timeout.html b/db/docs/api_c/env_set_timeout.html index c3e12e905..9ecd96fa1 100644 --- a/db/docs/api_c/env_set_timeout.html +++ b/db/docs/api_c/env_set_timeout.html @@ -1,6 +1,5 @@ - - + @@ -113,6 +112,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_tmp_dir.html b/db/docs/api_c/env_set_tmp_dir.html index 967624864..49fe9bfd2 100644 --- a/db/docs/api_c/env_set_tmp_dir.html +++ b/db/docs/api_c/env_set_tmp_dir.html @@ -1,6 +1,5 @@ - - + @@ -113,6 +112,6 @@ database environment temporary file directory in dirp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_tx_max.html b/db/docs/api_c/env_set_tx_max.html index fd39bbc44..4b778d03f 100644 --- a/db/docs/api_c/env_set_tx_max.html +++ b/db/docs/api_c/env_set_tx_max.html @@ -1,6 +1,5 @@ - - + @@ -98,6 +97,6 @@ number of active transactions in tx_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_tx_recover.html b/db/docs/api_c/env_set_tx_recover.html deleted file mode 100644 index 9295537b5..000000000 --- a/db/docs/api_c/env_set_tx_recover.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - -Berkeley DB: DBENV->set_tx_recover - - - - - - - -
-

DBENV->set_tx_recover

-
-APIRef -
-


- -

-#include <db.h>
-

-int -DBENV->set_tx_recover(DB_ENV *dbenv, - int (*tx_recover)(DB_ENV *dbenv, - DBT *log_rec, DB_LSN *lsn, db_recops op)); -

-

Description

-

Set the application's function to be called during transaction abort -and recovery. This function must return 0 on success and either -errno or a value outside of the Berkeley DB error name space on -failure. It takes four arguments: -

-

dbenv
A Berkeley DB environment. -

log_rec
A log record. -

lsn
A log sequence number. -

op
One of the following values: -

-

DB_TXN_BACKWARD_ROLL
The log is being read backward to determine which transactions have been -committed and to abort those operations that were not, undo the operation -described by the log record. -

DB_TXN_FORWARD_ROLL
The log is being played forward, redo the operation described by the log -record. -

DB_TXN_ABORT
The log is being read backwards during a transaction abort, undo the -operation described by the log record. -
-
-

The DBENV->set_tx_recover interface may only be used to configure Berkeley DB before -the DBENV->open interface is called. -

The DBENV->set_tx_recover function returns a non-zero error value on failure and 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DBENV->open was called. -

-

See Also

-DBENV->set_tx_max, -DBENV->set_tx_recover, -DBENV->set_tx_timestamp, -txn_abort, -txn_begin, -txn_checkpoint, -txn_commit, -txn_id, -txn_prepare -and -txn_stat. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/env_set_tx_timestamp.html b/db/docs/api_c/env_set_tx_timestamp.html index 837f955a6..73117ff21 100644 --- a/db/docs/api_c/env_set_tx_timestamp.html +++ b/db/docs/api_c/env_set_tx_timestamp.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ recovery timestamp in timestampp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_set_verbose.html b/db/docs/api_c/env_set_verbose.html index aa19c4685..cdef6124a 100644 --- a/db/docs/api_c/env_set_verbose.html +++ b/db/docs/api_c/env_set_verbose.html @@ -1,6 +1,5 @@ - - - + + @@ -59,14 +58,14 @@ messages are output.

which
The which parameter must be set to one of the following values:
DB_VERB_DEADLOCK
Display additional information when doing deadlock detection. +
DB_VERB_FILEOPS
Display additional information when performing filesystem operations +such as open, close or rename. May not be available on all platforms. +
DB_VERB_FILEOPS_ALL
Display additional information when performing all filesystem operations, +including read and write. May not be available on all platforms.
DB_VERB_RECOVERY
Display additional information when performing recovery.
DB_VERB_REGISTER
Display additional information concerning support for the DB_REGISTER flag to the DB_ENV->open method. -
DB_VERB_REPLICATION
Display additional information when processing replication messages. -

To get complete replication logging when debugging replication -applications, you must also configure and build the Berkeley DB library with -the --enable-diagnostic -configuration option as well as call the DB_ENV->set_verbose method.

+
DB_VERB_REPLICATION
Display detailed information when processing replication messages.
DB_VERB_WAITSFOR
Display the waits-for table when doing deadlock detection.
@@ -104,6 +103,6 @@ otherwise on.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_stat.html b/db/docs/api_c/env_stat.html index 2992517bc..a6d5b429b 100644 --- a/db/docs/api_c/env_stat.html +++ b/db/docs/api_c/env_stat.html @@ -1,6 +1,5 @@ - - + @@ -58,6 +57,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_strerror.html b/db/docs/api_c/env_strerror.html index d2cf5f209..4f3e0e8f6 100644 --- a/db/docs/api_c/env_strerror.html +++ b/db/docs/api_c/env_strerror.html @@ -1,6 +1,5 @@ - - + @@ -50,6 +49,6 @@ string is wanted.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/env_version.html b/db/docs/api_c/env_version.html index 8f75e50aa..077213650 100644 --- a/db/docs/api_c/env_version.html +++ b/db/docs/api_c/env_version.html @@ -1,6 +1,5 @@ - - + @@ -47,6 +46,6 @@ is copied to the memory to which it refers.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/frame.html b/db/docs/api_c/frame.html index 3f1a25891..5b7cfc5bf 100644 --- a/db/docs/api_c/frame.html +++ b/db/docs/api_c/frame.html @@ -1,8 +1,8 @@ - + -Berkeley DB API (Version: 4.5.20) +Berkeley DB API (Version: 4.6.18) @@ -10,9 +10,9 @@ Berkeley DB API (Version: 4.5.20) +title="Berkeley DB API (Version: 4.6.18)"> <meta http-equiv="refresh" content="0;url=api_index.html"> diff --git a/db/docs/api_c/hsearch.html b/db/docs/api_c/hsearch.html index 58a2d0c59..a20a2f89f 100644 --- a/db/docs/api_c/hsearch.html +++ b/db/docs/api_c/hsearch.html @@ -1,6 +1,5 @@ - - + @@ -97,6 +96,6 @@ system functions.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_class.html b/db/docs/api_c/lock_class.html index d4bb8753c..83ba7be24 100644 --- a/db/docs/api_c/lock_class.html +++ b/db/docs/api_c/lock_class.html @@ -1,6 +1,5 @@ - - + @@ -38,6 +37,6 @@ for a single lock, and has no methods of its own.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_detect.html b/db/docs/api_c/lock_detect.html index d19857f6c..bc254870c 100644 --- a/db/docs/api_c/lock_detect.html +++ b/db/docs/api_c/lock_detect.html @@ -1,6 +1,5 @@ - - - + + @@ -24,7 +23,7 @@

int DB_ENV->lock_detect(DB_ENV *env, - u_int32_t flags, u_int32_t atype, int *aborted); + u_int32_t flags, u_int32_t atype, int *rejected);


Description: DB_ENV->lock_detect

@@ -40,7 +39,7 @@ and 0 on success.

Parameters

-
aborted
If the aborted parameter is non-NULL, the memory location to +
rejected
If the rejected parameter is non-NULL, the memory location to which it refers will be set to the number of lock requests that were rejected.
atype
The atype parameter specifies which lock request(s) to reject. @@ -77,6 +76,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_get.html b/db/docs/api_c/lock_get.html index 45b2a12e3..f7989be17 100644 --- a/db/docs/api_c/lock_get.html +++ b/db/docs/api_c/lock_get.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_id.html b/db/docs/api_c/lock_id.html index 721d4a384..70eee4a8b 100644 --- a/db/docs/api_c/lock_id.html +++ b/db/docs/api_c/lock_id.html @@ -1,6 +1,5 @@ - - + @@ -50,6 +49,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_id_free.html b/db/docs/api_c/lock_id_free.html index 5d66f5196..4feed938f 100644 --- a/db/docs/api_c/lock_id_free.html +++ b/db/docs/api_c/lock_id_free.html @@ -1,6 +1,5 @@ - - + @@ -53,6 +52,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_list.html b/db/docs/api_c/lock_list.html index fd6a3f08f..a00e2a94a 100644 --- a/db/docs/api_c/lock_list.html +++ b/db/docs/api_c/lock_list.html @@ -1,6 +1,5 @@ - - + @@ -32,6 +31,6 @@

DB_ENV->set_lk_max_objectsSet maximum number of lock objects
DB_ENV->set_timeoutSet lock and transaction timeout
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_put.html b/db/docs/api_c/lock_put.html index f7c699029..63259f489 100644 --- a/db/docs/api_c/lock_put.html +++ b/db/docs/api_c/lock_put.html @@ -1,6 +1,5 @@ - - + @@ -52,6 +51,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_stat.html b/db/docs/api_c/lock_stat.html index c3cd8b55a..332efadc9 100644 --- a/db/docs/api_c/lock_stat.html +++ b/db/docs/api_c/lock_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -70,12 +69,27 @@ for which the thread of control did not wait.

u_int32_t st_ntxntimeouts;
The number of transactions that have timed out. This value is also a component of st_ndeadlocks, the total number of deadlocks detected. +
u_int32_t st_objs_wait;
The number of requests to allocate or deallocate an object +for which the thread of control waited. +
u_int32_t st_objs_nowait;
The number of requests to allocate or deallocate an object +for which the thread of control did not wait. +
u_int32_t st_lockers_wait;
The number of requests to allocate or deallocate a locker +for which the thread of control waited. +
u_int32_t st_lockers_nowait;
The number of requests to allocate or deallocate a locker +for which the thread of control did not wait. +
u_int32_t st_locks_wait;
The number of requests to allocate or deallocate a lock structure +for which the thread of control waited. +
u_int32_t st_locks_nowait;
The number of requests to allocate or deallocate a lock structure +for which the thread of control did not wait. +
u_int32_t st_hash_len;
Maximum length of a lock hash bucket.
roff_t st_regsize;
The size of the lock region, in bytes.
u_int32_t st_region_wait;
The number of times that a thread of control was forced to wait before obtaining the lock region mutex.
u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the lock region mutex without waiting.
+

The DB_ENV->lock_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->lock_stat method returns a non-zero error value on failure and 0 on success. @@ -99,8 +113,12 @@ invalid flag value or parameter was specified.


Description: DB_ENV->lock_stat_print

-

The DB_ENV->lock_stat_print method prints diagnostic information to the output -channel described by the DB_ENV->set_msgfile method.

+

The DB_ENV->lock_stat_print method displays the +locking subsystem statistical information, as described for the DB_ENV->lock_stat method. +The information is printed to a specified output channel (see the +DB_ENV->set_msgfile method for more information), or passed to an +application callback function (see the DB_ENV->set_msgcall method for +more information).

The DB_ENV->lock_stat_print method may not be called before the DB_ENV->open method has been called.

The DB_ENV->lock_stat_print method @@ -109,10 +127,11 @@ and 0 on success.

Parameters

-
flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more -of the following values: +
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values:
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values.
DB_STAT_LOCK_CONF
Display the lock conflict matrix.
DB_STAT_LOCK_LOCKERS
Display the lockers within hash chains.
DB_STAT_LOCK_OBJECTS
Display the lock objects within hash chains. @@ -128,6 +147,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lock_vec.html b/db/docs/api_c/lock_vec.html index 7265f4075..b05f865a7 100644 --- a/db/docs/api_c/lock_vec.html +++ b/db/docs/api_c/lock_vec.html @@ -1,6 +1,5 @@ - - + @@ -153,6 +152,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_archive.html b/db/docs/api_c/log_archive.html index f98246de1..5815301c1 100644 --- a/db/docs/api_c/log_archive.html +++ b/db/docs/api_c/log_archive.html @@ -1,6 +1,5 @@ - - + @@ -109,6 +108,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_compare.html b/db/docs/api_c/log_compare.html index 7f870cfcc..c7585dff4 100644 --- a/db/docs/api_c/log_compare.html +++ b/db/docs/api_c/log_compare.html @@ -1,6 +1,5 @@ - - + @@ -49,6 +48,6 @@ to be compared.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_cursor.html b/db/docs/api_c/log_cursor.html index a80fa59ab..337a74b46 100644 --- a/db/docs/api_c/log_cursor.html +++ b/db/docs/api_c/log_cursor.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_file.html b/db/docs/api_c/log_file.html index f2ca9743a..07fe8b49d 100644 --- a/db/docs/api_c/log_file.html +++ b/db/docs/api_c/log_file.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_flush.html b/db/docs/api_c/log_flush.html index 6d93c820a..20196e62c 100644 --- a/db/docs/api_c/log_flush.html +++ b/db/docs/api_c/log_flush.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_get.html b/db/docs/api_c/log_get.html deleted file mode 100644 index 05761e1ea..000000000 --- a/db/docs/api_c/log_get.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -Berkeley DB: log_get - - - - - - - -
-

log_get

-
-APIRef -
-


- -

-#include <db.h>
-

-int -log_get(DB_ENV *env, DB_LSN *lsn, DBT *data, u_int32_t flags); -

-

Description

-

The log_get function implements a cursor inside of the log, -retrieving records from the log according to the lsn and -flags arguments. -

The data field of the data structure is set to the record -retrieved and the size field indicates the number of bytes in the record. -See DBT for a description of other fields in the data -structure. When multiple threads are using the returned log handle -concurrently, one of the DB_DBT_MALLOC, DB_DBT_REALLOC or -DB_DBT_USERMEM flags must be specified for any DBT used -for data retrieval. -

The flags argument must be set to exactly one of the following values: -

-

DB_CHECKPOINT
The last record written with the DB_CHECKPOINT flag specified to the -log_put function is returned in the data argument. The -lsn argument is overwritten with the DB_LSN of the record -returned. If no record has been previously written with the DB_CHECKPOINT -flag specified, the first record in the log is returned. -

If the log is empty, the log_get function will return DB_NOTFOUND. -

DB_FIRST
The first record from any of the log files found in the log directory -is returned in the data argument. -The lsn argument is overwritten with the DB_LSN of the -record returned. -

If the log is empty, the log_get function will return DB_NOTFOUND. -

DB_LAST
The last record in the log is returned in the data argument. -The lsn argument is overwritten with the DB_LSN of the -record returned. -

If the log is empty, the log_get function will return DB_NOTFOUND. -

DB_NEXT
The current log position is advanced to the next record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DB_LSN of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, log_get will return the first record in the log. -If the last log record has already been returned or the log is empty, the -log_get function will return DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -log_get with the DB_NEXT flag set will return EINVAL. -

DB_PREV
The current log position is moved to the previous record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DB_LSN of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, -log_get will return the last record in the log. -If the first log record has already been returned or the log is empty, the -log_get function will return DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -log_get with the DB_PREV flag set will return EINVAL. -

DB_CURRENT
Return the log record currently referenced by the log. -

If the log pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, or if the log was opened with the DB_THREAD flag set, -log_get will return EINVAL. -

DB_SET
Retrieve the record specified by the lsn argument. If the -specified DB_LSN is invalid (e.g., does not appear in the log) -log_get will return EINVAL. -
-

Otherwise, the log_get function returns a non-zero error value on failure and 0 on success. -

Errors

-

The log_get function may fail and return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The DB_FIRST flag was specified and no log files were found. -

-

The log_get function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. -If a catastrophic error has occurred, the log_get function may fail and return -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

See Also

-DBENV->set_lg_bsize, -DBENV->set_lg_max, -log_archive, -log_compare, -log_file, -log_flush, -log_get, -log_put, -log_register, -log_stat -and -log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/log_list.html b/db/docs/api_c/log_list.html index 1e4fdf309..7f9e69e77 100644 --- a/db/docs/api_c/log_list.html +++ b/db/docs/api_c/log_list.html @@ -1,6 +1,5 @@ - - + @@ -33,6 +32,6 @@

DB_ENV->set_lg_maxSet log file size
DB_ENV->set_lg_regionmaxSet logging region size
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_printf.html b/db/docs/api_c/log_printf.html index c0264c6d0..2ebaf9a37 100644 --- a/db/docs/api_c/log_printf.html +++ b/db/docs/api_c/log_printf.html @@ -1,6 +1,5 @@ - - + @@ -64,6 +63,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_put.html b/db/docs/api_c/log_put.html index 91241c6e9..aaffab66f 100644 --- a/db/docs/api_c/log_put.html +++ b/db/docs/api_c/log_put.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_register.html b/db/docs/api_c/log_register.html deleted file mode 100644 index e993feabe..000000000 --- a/db/docs/api_c/log_register.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - -Berkeley DB: log_register - - - - - - - -
-

log_register

-
-APIRef -
-


- -

-#include <db.h>
-

-int -log_register(DB_ENV *env, DB *dbp, const char *name); -

-

Description

-

The log_register function registers a file name with the specified Berkeley DB -environment's log manager. The log manager records all file name mappings -at each checkpoint so that a recovery process can identify the file to -which a record in the log refers. -

The dbp argument should be a reference to the DB structure being -registered. The name argument should be a file name appropriate -for opening the file in the environment, during recovery. -

The log_register function returns a non-zero error value on failure and 0 on success. -

Errors

-

The log_register function may fail and return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The log_register function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. -If a catastrophic error has occurred, the log_register function may fail and return -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

See Also

-DBENV->set_lg_bsize, -DBENV->set_lg_max, -log_archive, -log_compare, -log_file, -log_flush, -log_get, -log_put, -log_register, -log_stat -and -log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/log_stat.html b/db/docs/api_c/log_stat.html index 05a01cd17..d4df55f1f 100644 --- a/db/docs/api_c/log_stat.html +++ b/db/docs/api_c/log_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -72,6 +71,8 @@ obtaining the log region mutex.

u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the log region mutex without waiting.
+

The DB_ENV->log_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->log_stat method returns a non-zero error value on failure and 0 on success. @@ -125,6 +126,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/log_unregister.html b/db/docs/api_c/log_unregister.html deleted file mode 100644 index cfc1e6f2e..000000000 --- a/db/docs/api_c/log_unregister.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Berkeley DB: log_unregister - - - - - - - -
-

log_unregister

-
-APIRef -
-


- -

-#include <db.h>
-

-int -log_unregister(DB_ENV *env, DB *dbp); -

-

Description

-

The log_unregister function function unregisters the file represented by -the dbp parameter from the Berkeley DB environment's log manager. -

The log_unregister function returns a non-zero error value on failure and 0 on success. -

Errors

-

The log_unregister function may fail and return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The log_unregister function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. -If a catastrophic error has occurred, the log_unregister function may fail and return -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

See Also

-DBENV->set_lg_bsize, -DBENV->set_lg_max, -log_archive, -log_compare, -log_file, -log_flush, -log_get, -log_put, -log_register, -log_stat -and -log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_c/logc_class.html b/db/docs/api_c/logc_class.html index 67c981f9a..0803c0269 100644 --- a/db/docs/api_c/logc_class.html +++ b/db/docs/api_c/logc_class.html @@ -1,6 +1,5 @@ - - + @@ -40,6 +39,6 @@ return.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/logc_close.html b/db/docs/api_c/logc_close.html index 4484867bd..9d70a8f3e 100644 --- a/db/docs/api_c/logc_close.html +++ b/db/docs/api_c/logc_close.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/logc_get.html b/db/docs/api_c/logc_get.html index 887dba5c6..386d234fc 100644 --- a/db/docs/api_c/logc_get.html +++ b/db/docs/api_c/logc_get.html @@ -1,6 +1,5 @@ - - + @@ -103,6 +102,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/lsn_class.html b/db/docs/api_c/lsn_class.html index 96c4e9106..edf40401a 100644 --- a/db/docs/api_c/lsn_class.html +++ b/db/docs/api_c/lsn_class.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ the other specifies an offset in the log file.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fclose.html b/db/docs/api_c/memp_fclose.html index 7be4e8279..4131203df 100644 --- a/db/docs/api_c/memp_fclose.html +++ b/db/docs/api_c/memp_fclose.html @@ -1,6 +1,5 @@ - - + @@ -52,6 +51,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fcreate.html b/db/docs/api_c/memp_fcreate.html index 2d846db77..95411147c 100644 --- a/db/docs/api_c/memp_fcreate.html +++ b/db/docs/api_c/memp_fcreate.html @@ -1,6 +1,5 @@ - - + @@ -48,6 +47,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fget.html b/db/docs/api_c/memp_fget.html index fa8e931b6..b2f9b8053 100644 --- a/db/docs/api_c/memp_fget.html +++ b/db/docs/api_c/memp_fget.html @@ -1,6 +1,5 @@ - - + @@ -121,6 +120,6 @@ been modified since the transaction began.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fopen.html b/db/docs/api_c/memp_fopen.html index f4a8d8ff0..277a6ebd4 100644 --- a/db/docs/api_c/memp_fopen.html +++ b/db/docs/api_c/memp_fopen.html @@ -1,6 +1,5 @@ - - + @@ -101,6 +100,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fput.html b/db/docs/api_c/memp_fput.html index f2ffc9bfe..1702f5ad7 100644 --- a/db/docs/api_c/memp_fput.html +++ b/db/docs/api_c/memp_fput.html @@ -1,6 +1,5 @@ - - - + + @@ -23,33 +22,39 @@ #include <db.h>

int -DB_MPOOLFILE->put(DB_MPOOLFILE *mpf, void *pgaddr, u_int32_t flags); +DB_MPOOLFILE->put(DB_MPOOLFILE *mpf, + void *pgaddr, DB_CACHE_PRIORITY priority, u_int32_t flags);


Description: DB_MPOOLFILE->put

-

The DB_MPOOLFILE->put method returns a page to the cache.

+

The DB_MPOOLFILE->put method returns a reference to a page in the cache, +setting the priority of the page as specified by the priority +parameter.

The DB_MPOOLFILE->put method returns a non-zero error value on failure and 0 on success.

Parameters

-
pgaddr
The pgaddr parameter is the address of the page to be -returned to the cache. The pgaddr parameter must be an -address previously returned by DB_MPOOLFILE->get. -
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one -or more of the following values: +
flags
The flags parameter is currently unused, and must be set to 0. +
pgaddr
The pgaddr parameter is the address of the page to be returned +to the cache. The pgaddr parameter must be a value previously +returned by the DB_MPOOLFILE->get method. +
priority
Set the page's priority as follows:
-
DB_MPOOL_DISCARD
The page is unlikely to be useful in the near future, and should be -discarded before other pages in the pool. +
DB_PRIORITY_UNCHANGED
The priority is unchanged. +
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded.

Errors

The DB_MPOOLFILE->put method may fail and return one of the following non-zero errors:

-
EINVAL
If the pgaddr parameter does not refer to a page returned by -DB_MPOOLFILE->get; or if an +
EINVAL
An invalid flag value or parameter was specified.

@@ -61,6 +66,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_fset.html b/db/docs/api_c/memp_fset.html deleted file mode 100644 index 651236d34..000000000 --- a/db/docs/api_c/memp_fset.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -Berkeley DB: DB_MPOOLFILE->set - - - - - - - -
-

DB_MPOOLFILE->set

-
-API -Ref
-


- -

-#include <db.h>
-

-int -DB_MPOOLFILE->set(DB_MPOOLFILE *mpf, void *pgaddr, u_int32_t flags); -

-
-

Description: DB_MPOOLFILE->set

-

The DB_MPOOLFILE->set method sets the attributes of a cache page.

-

The DB_MPOOLFILE->set method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
pgaddr
The pgaddr parameter is the address of the page for which -attributes are to be set. he pgaddr parameter must be an -address previously returned by DB_MPOOLFILE->get. -
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one -or more of the following values: -
-
DB_MPOOL_DISCARD
The page is unlikely to be useful in the near future, and should be -discarded before other pages in the pool. -
-
-

Errors

-

The DB_MPOOLFILE->set method -may fail and return one of the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Class

-DB_ENV, DB_MPOOLFILE -

See Also

-Memory Pools and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. - - diff --git a/db/docs/api_c/memp_fsync.html b/db/docs/api_c/memp_fsync.html index a36f62551..7fd434cc6 100644 --- a/db/docs/api_c/memp_fsync.html +++ b/db/docs/api_c/memp_fsync.html @@ -1,6 +1,5 @@ - - - + + @@ -27,10 +26,9 @@ DB_MPOOLFILE->sync(DB_MPOOLFILE *mpf);


Description: DB_MPOOLFILE->sync

-

The DB_MPOOLFILE->sync method writes all pages associated with the -DB_MPOOLFILE, which were marked as modified using -DB_MPOOLFILE->put or DB_MPOOLFILE->set, back to the source file. If any -of the modified pages are pinned (that is, currently in use), +

The DB_MPOOLFILE->sync method writes all modified pages associated with the +DB_MPOOLFILE back to the source file. If any of the modified +pages are pinned (that is, currently in use), DB_MPOOLFILE->sync will ignore them.

The DB_MPOOLFILE->sync method returns a non-zero error value on failure @@ -45,6 +43,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_list.html b/db/docs/api_c/memp_list.html index 3fd62b851..d311ab29e 100644 --- a/db/docs/api_c/memp_list.html +++ b/db/docs/api_c/memp_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Memory Pools and Related Methods

- + @@ -21,6 +20,7 @@ + @@ -31,7 +31,6 @@ - @@ -43,6 +42,6 @@
Memory Pools and Related MethodsDescription
DB->get_mpfReturn DB's underlying DB_MPOOLFILE handle
Memory Pool Configuration
DB_ENV->memp_registerRegister input/output functions for a file in a memory pool
DB_ENV->set_cachesizeSet the environment cache size
DB_ENV->set_cache_maxSet the maximum cache size
DB_ENV->set_mp_max_openfdSet the maximum number of open file descriptors
DB_ENV->set_mp_max_writeSet the maximum number of sequential disk writes
DB_ENV->set_mp_mmapsizeSet maximum mapped-in database file size
DB_MPOOLFILE->getGet page from a file in a memory pool
DB_MPOOLFILE->openOpen a file in a memory pool
DB_MPOOLFILE->putReturn a page to a memory pool
DB_MPOOLFILE->setSet memory pool page attributes
DB_MPOOLFILE->syncFlush pages from a file in a memory pool
Memory Pool File Configuration
DB_MPOOLFILE->set_clear_lenSet file page bytes to be cleared
DB_MPOOLFILE->set_pgcookieSet file cookie for pgin/pgout
DB_MPOOLFILE->set_prioritySet memory pool file priority
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_maxwrite.html b/db/docs/api_c/memp_maxwrite.html index d074fe342..79c75e5f9 100644 --- a/db/docs/api_c/memp_maxwrite.html +++ b/db/docs/api_c/memp_maxwrite.html @@ -1,6 +1,5 @@ - - - + + @@ -23,10 +22,10 @@ #include <db.h>

int -DB_ENV->set_mp_max_write(DB_ENV *env, int maxwrite, int maxwrite_sleep); +DB_ENV->set_mp_max_write(DB_ENV *env, int maxwrite, db_timeout_t maxwrite_sleep);

int -DB_ENV->get_mp_max_write(DB_ENV *env, int *maxwritep, int *maxwrite_sleepp); +DB_ENV->get_mp_max_write(DB_ENV *env, int *maxwritep, db_timeout_t *maxwrite_sleepp);


Description: DB_ENV->set_mp_max_write

@@ -43,7 +42,9 @@ and 0 on success. library when flushing dirty pages from the cache, or 0 if there is no limitation on the number of sequential write operations.
maxwrite_sleep
The number of microseconds the thread of control should pause before -scheduling further write operations. +scheduling further write operations. It must be specified as an +unsigned 32-bit number of microseconds, limiting the maximum pause to +roughly 71 minutes.

Errors

The DB_ENV->set_mp_max_write method @@ -78,6 +79,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_openfd.html b/db/docs/api_c/memp_openfd.html index 3f38d9239..e4481af38 100644 --- a/db/docs/api_c/memp_openfd.html +++ b/db/docs/api_c/memp_openfd.html @@ -1,6 +1,5 @@ - - + @@ -72,6 +71,6 @@ maximum number of file descriptors open in maxopenfdp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_register.html b/db/docs/api_c/memp_register.html index 661cb7079..8eddf91ba 100644 --- a/db/docs/api_c/memp_register.html +++ b/db/docs/api_c/memp_register.html @@ -1,6 +1,5 @@ - - + @@ -76,6 +75,6 @@ the Berkeley DB library).


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_clear_len.html b/db/docs/api_c/memp_set_clear_len.html index 9e377a0bd..d95f8515a 100644 --- a/db/docs/api_c/memp_set_clear_len.html +++ b/db/docs/api_c/memp_set_clear_len.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ bytes to be cleared in lenp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_fileid.html b/db/docs/api_c/memp_set_fileid.html index eae255654..80aee0e92 100644 --- a/db/docs/api_c/memp_set_fileid.html +++ b/db/docs/api_c/memp_set_fileid.html @@ -1,6 +1,5 @@ - - + @@ -88,6 +87,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_flags.html b/db/docs/api_c/memp_set_flags.html index 5b2c1801a..c69f16004 100644 --- a/db/docs/api_c/memp_set_flags.html +++ b/db/docs/api_c/memp_set_flags.html @@ -1,6 +1,5 @@ - - - + + @@ -43,9 +42,10 @@ and 0 on success.

flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more of the following values:
-
DB_MPOOL_NOFILE
If set, no backing temporary file will be opened for in-memory -databases, even if they expand to fill the entire cache. Attempts to -create new file pages after the cache has been filled will fail. +
DB_MPOOL_NOFILE
If set, no backing temporary file will be opened for the specified +in-memory database, even if it expands to fill the entire cache. +Attempts to create new database pages after the cache has been filled +will fail.

The DB_MPOOL_NOFILE flag configures a file in the memory pool, not only operations performed using the specified DB_MPOOLFILE handle.

The DB_MPOOL_NOFILE flag may be used to configure Berkeley DB at any time during @@ -83,6 +83,6 @@ flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_ftype.html b/db/docs/api_c/memp_set_ftype.html index 8065afada..ec0533220 100644 --- a/db/docs/api_c/memp_set_ftype.html +++ b/db/docs/api_c/memp_set_ftype.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ file type in ftypep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_lsn_offset.html b/db/docs/api_c/memp_set_lsn_offset.html index 68fdc863b..dca6ba9c3 100644 --- a/db/docs/api_c/memp_set_lsn_offset.html +++ b/db/docs/api_c/memp_set_lsn_offset.html @@ -1,6 +1,5 @@ - - + @@ -75,6 +74,6 @@ log sequence number byte offset in lsn_offsetp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_maxsize.html b/db/docs/api_c/memp_set_maxsize.html index 2c87a30d6..63f8553a6 100644 --- a/db/docs/api_c/memp_set_maxsize.html +++ b/db/docs/api_c/memp_set_maxsize.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_pgcookie.html b/db/docs/api_c/memp_set_pgcookie.html index 78ac56582..e28f17056 100644 --- a/db/docs/api_c/memp_set_pgcookie.html +++ b/db/docs/api_c/memp_set_pgcookie.html @@ -1,6 +1,5 @@ - - + @@ -75,6 +74,6 @@ byte string in dbt.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_set_priority.html b/db/docs/api_c/memp_set_priority.html index 99fc01d11..efa48eecd 100644 --- a/db/docs/api_c/memp_set_priority.html +++ b/db/docs/api_c/memp_set_priority.html @@ -1,6 +1,5 @@ - - - + + @@ -30,15 +29,18 @@ DB_MPOOLFILE->get_priority(DB_MPOOLFILE *mpf, DB_CACHE_PRIORITY *priorityp);


Description: DB_MPOOLFILE->set_priority

-

Set the cache priority for pages from the specified file. The priority -of a page biases the replacement algorithm to be more or less likely to -discard a page when space is needed in the buffer pool. The bias is -temporary, and pages will eventually be discarded if they are not -referenced again. The DB_MPOOLFILE->set_priority method is only advisory, and -does not guarantee pages will be treated in a specific way.

+ +

Set the cache priority for pages referenced by the +DB_MPOOLFILE +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The DB_MPOOLFILE->set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

To set the priority for the pages belonging to a particular database, -call the DB_MPOOLFILE->set_priority method using the DB_MPOOLFILE -handle stored in the mpf field of the DB handle.

+call the DB_MPOOLFILE->set_priority method using the DB_MPOOLFILE handle +returned by the DB->get_mpf method.

The DB_MPOOLFILE->set_priority method configures a file in the memory pool, not only operations performed using the specified DB_MPOOLFILE handle.

The DB_MPOOLFILE->set_priority method may be called at any time during the life of the @@ -61,7 +63,7 @@ values:


Description: DB_MPOOLFILE->get_priority

-

The DB_MPOOLFILE->get_priority method returns the cache priority.

+

The DB_MPOOLFILE->get_priority method returns the cache priority for the file referenced by the DB_MPOOLFILE handle.

The DB_MPOOLFILE->get_priority method may be called at any time during the life of the application.

The DB_MPOOLFILE->get_priority method @@ -70,18 +72,18 @@ and 0 on success.

Parameters

-
priorityp
The DB_MPOOLFILE->get_priority method returns the -cache priority in priorityp. +
priorityp
The DB_MPOOLFILE->get_priority method returns a reference to the +cache priority for the file referenced by the DB_MPOOLFILE handle in priorityp.

Class

-DB +DB_ENV, DB_MPOOLFILE

See Also

-Databases and Related Methods +Memory Pools and Related Methods

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_stat.html b/db/docs/api_c/memp_stat.html index 776872db0..b87b955c1 100644 --- a/db/docs/api_c/memp_stat.html +++ b/db/docs/api_c/memp_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -51,11 +50,13 @@ The following DB_MPOOL_STAT fields will be filled in:

size_t st_gbytes;
Gigabytes of cache (total cache size is st_gbytes + st_bytes).
size_t st_bytes;
Bytes of cache (total cache size is st_gbytes + st_bytes).
u_int32_t st_ncache;
Number of caches. +
u_int32_t st_max_ncache;
Maximum number of caches, as configured with the +DB_ENV->set_cache_max method.
roff_t st_regsize;
Individual cache size, in bytes.
size_t st_mmapsize;
Maximum memory-mapped file size.
int st_maxopenfd;
Maximum open file descriptors.
int st_maxwrite;
Maximum sequential buffer writes. -
int st_maxwrite_sleep;
Sleep after writing maximum sequential buffers. +
db_timeout_t st_maxwrite_sleep;
Microseconds to pause after writing maximum sequential buffers.
u_int32_t st_map;
Requested pages mapped into the process' address space (there is no available information about whether or not this request caused disk I/O, although examining the application page fault rate may be helpful). @@ -97,11 +98,6 @@ region mutex without waiting.
u_int32_t st_alloc_max_pages;
Maximum number of pages checked during an allocation.
u_int32_t st_io_wait;
Number of operations blocked waiting for I/O to complete. -The flags parameter must be set to 0 or -the following value: -
-
DB_STAT_CLEAR
Reset statistics after returning their values. -

If fsp is non-NULL, a pointer to a NULL-terminated variable length array of statistics for individual files, in the cache mp, is copied into the memory location to which it refers. If @@ -120,6 +116,8 @@ the cache; that is, each element of the array:

u_int32_t st_page_in;
Pages read into the cache.
u_int32_t st_page_out;
Pages written from the cache to the backing file. +

The DB_ENV->memp_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->memp_stat method returns a non-zero error value on failure and 0 on success. @@ -145,8 +143,12 @@ invalid flag value or parameter was specified.


Description: DB_ENV->memp_stat_print

-

The DB_ENV->memp_stat_print method prints diagnostic information to the output -channel described by the DB_ENV->set_msgfile method.

+

The DB_ENV->memp_stat_print method displays the +memory pool subsystem statistical information, as described for the DB_ENV->memp_stat method. +The information is printed to a specified output channel (see the +DB_ENV->set_msgfile method for more information), or passed to an +application callback function (see the DB_ENV->set_msgcall method for +more information).

The DB_ENV->memp_stat_print method may not be called before the DB_ENV->open method has been called.

The DB_ENV->memp_stat_print method @@ -155,10 +157,11 @@ and 0 on success.

Parameters

-
flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more -of the following values: +
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values:
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values.
DB_STAT_MEMP_HASH
Display the buffers with hash chains.
@@ -171,6 +174,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_sync.html b/db/docs/api_c/memp_sync.html index 39cfe91a9..b6efb60d6 100644 --- a/db/docs/api_c/memp_sync.html +++ b/db/docs/api_c/memp_sync.html @@ -1,6 +1,5 @@ - - - + + @@ -33,11 +32,6 @@ backing files.

example, pages that are currently in use by another thread of control) are waited for and written to disk as soon as it is possible to do so.

-

To support the DB_ENV->memp_sync functionality, it is necessary that the -pool functions know the location of the log sequence number on the page -for each file type. This location should be specified when the file is -opened using the DB_MPOOLFILE->set_lsn_offset method. It is not required that -the log sequence number be aligned on the page in any way.

The DB_ENV->memp_sync method returns a non-zero error value on failure and 0 on success. @@ -60,6 +54,6 @@ NULL, all modified pages in the pool are written to disk.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/memp_trickle.html b/db/docs/api_c/memp_trickle.html index e2c0bb5ea..feb8d9ba5 100644 --- a/db/docs/api_c/memp_trickle.html +++ b/db/docs/api_c/memp_trickle.html @@ -1,6 +1,5 @@ - - + @@ -61,6 +60,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mempfile_class.html b/db/docs/api_c/mempfile_class.html index 4361cb352..434de5753 100644 --- a/db/docs/api_c/mempfile_class.html +++ b/db/docs/api_c/mempfile_class.html @@ -1,6 +1,5 @@ - - + @@ -53,6 +52,6 @@ method's return.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_alloc.html b/db/docs/api_c/mutex_alloc.html index 344b85f23..e7fa906d2 100644 --- a/db/docs/api_c/mutex_alloc.html +++ b/db/docs/api_c/mutex_alloc.html @@ -1,6 +1,5 @@ - - + @@ -69,6 +68,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_free.html b/db/docs/api_c/mutex_free.html index 6bcdcfb8d..aa0155fbb 100644 --- a/db/docs/api_c/mutex_free.html +++ b/db/docs/api_c/mutex_free.html @@ -1,6 +1,5 @@ - - + @@ -55,6 +54,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_list.html b/db/docs/api_c/mutex_list.html index 520925f4f..2cf3341a6 100644 --- a/db/docs/api_c/mutex_list.html +++ b/db/docs/api_c/mutex_list.html @@ -1,6 +1,5 @@ - - + @@ -24,6 +23,6 @@

DB_ENV->mutex_set_maxConfigure total number of mutexes
DB_ENV->mutex_set_tas_spinsConfigure test-and-set mutex spin count
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_lock.html b/db/docs/api_c/mutex_lock.html index 2f3481780..19d60beb5 100644 --- a/db/docs/api_c/mutex_lock.html +++ b/db/docs/api_c/mutex_lock.html @@ -1,6 +1,5 @@ - - + @@ -57,6 +56,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_set_align.html b/db/docs/api_c/mutex_set_align.html index b258971dd..2de15ceb5 100644 --- a/db/docs/api_c/mutex_set_align.html +++ b/db/docs/api_c/mutex_set_align.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ mutex alignment, in bytes in alignp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_set_max.html b/db/docs/api_c/mutex_set_max.html index dc5d3dd24..ff0953e3e 100644 --- a/db/docs/api_c/mutex_set_max.html +++ b/db/docs/api_c/mutex_set_max.html @@ -1,6 +1,5 @@ - - + @@ -153,6 +152,6 @@ number of additional mutexes to allocate in incrementp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_set_tas_spins.html b/db/docs/api_c/mutex_set_tas_spins.html index 5df720c79..0dfb6acdc 100644 --- a/db/docs/api_c/mutex_set_tas_spins.html +++ b/db/docs/api_c/mutex_set_tas_spins.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ test-and-set spin count in tas_spinsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_stat.html b/db/docs/api_c/mutex_stat.html index a60fcdce6..5b6f7b50d 100644 --- a/db/docs/api_c/mutex_stat.html +++ b/db/docs/api_c/mutex_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -55,6 +54,8 @@ obtaining the mutex region mutex.

u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the mutex region mutex without waiting.
+

The DB_ENV->mutex_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->mutex_stat method returns a non-zero error value on failure and 0 on success. @@ -108,6 +109,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/mutex_unlock.html b/db/docs/api_c/mutex_unlock.html index 5b3f85179..0b7d2fa21 100644 --- a/db/docs/api_c/mutex_unlock.html +++ b/db/docs/api_c/mutex_unlock.html @@ -1,6 +1,5 @@ - - + @@ -56,6 +55,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/object.html b/db/docs/api_c/object.html index 1aff307b0..cbedf8449 100644 --- a/db/docs/api_c/object.html +++ b/db/docs/api_c/object.html @@ -1,4 +1,4 @@ - + Berkeley DB API diff --git a/db/docs/api_c/pindex.src b/db/docs/api_c/pindex.src index 9df00c048..dbfc9cb64 100644 --- a/db/docs/api_c/pindex.src +++ b/db/docs/api_c/pindex.src @@ -1,32 +1,38 @@ -__APIREL__/api_c/db_associate.html__OCT__2 @DB_DBT_APPMALLOC -__APIREL__/api_c/db_associate.html__OCT__3 @DB_DONOTINDEX +__APIREL__/api_c/db_associate.html__OCT__DB_DBT_APPMALLOC DB-__GT__associate@DB_DBT_APPMALLOC +__APIREL__/api_c/db_associate.html__OCT__DB_DBT_MULTIPLE DB-__GT__associate@DB_DBT_MULTIPLE +__APIREL__/api_c/db_associate.html__OCT__DB_DONOTINDEX DB-__GT__associate@DB_DONOTINDEX __APIREL__/api_c/db_associate.html__OCT__DB_CREATE DB-__GT__associate@DB_CREATE -__APIREL__/api_c/db_associate.html__OCT__DB_AUTO_COMMIT DB-__GT__associate@DB_AUTO_COMMIT +__APIREL__/api_c/db_associate.html__OCT__DB_IMMUTABLE_KEY DB-__GT__associate@DB_IMMUTABLE_KEY __APIREL__/api_c/db_class.html__OCT__DB_XA_CREATE db_create@DB_XA_CREATE __APIREL__/api_c/db_close.html__OCT__DB_NOSYNC DB-__GT__close@DB_NOSYNC -__APIREL__/api_c/db_cursor.html__OCT__DB_DEGREE_2 DB-__GT__cursor@DB_DEGREE_2 -__APIREL__/api_c/db_cursor.html__OCT__DB_DIRTY_READ DB-__GT__cursor@DB_DIRTY_READ +__APIREL__/api_c/db_compact.html__OCT__DB_FREELIST_ONLY DB-__GT__compact@DB_FREELIST_ONLY +__APIREL__/api_c/db_compact.html__OCT__DB_FREE_SPACE DB-__GT__compact@DB_FREE_SPACE +__APIREL__/api_c/db_cursor.html__OCT__DB_READ_COMMITTED DB-__GT__cursor@DB_READ_COMMITTED +__APIREL__/api_c/db_cursor.html__OCT__DB_READ_UNCOMMITTED DB-__GT__cursor@DB_READ_UNCOMMITTED __APIREL__/api_c/db_cursor.html__OCT__DB_WRITECURSOR DB-__GT__cursor@DB_WRITECURSOR -__APIREL__/api_c/db_del.html__OCT__DB_AUTO_COMMIT DB-__GT__del@DB_AUTO_COMMIT +__APIREL__/api_c/db_cursor.html__OCT__DB_TXN_SNAPSHOT DB-__GT__cursor@DB_TXN_SNAPSHOT +__APIREL__/api_c/db_exists.html__OCT__DB_READ_COMMITTED DB-__GT__exists@DB_READ_COMMITTED +__APIREL__/api_c/db_exists.html__OCT__DB_READ_UNCOMMITTED DB-__GT__exists@DB_READ_UNCOMMITTED +__APIREL__/api_c/db_exists.html__OCT__DB_RMW DB-__GT__exists@DB_RMW __APIREL__/api_c/db_get.html__OCT__DB_CONSUME DB-__GT__get@DB_CONSUME __APIREL__/api_c/db_get.html__OCT__DB_CONSUME_WAIT DB-__GT__get@DB_CONSUME_WAIT __APIREL__/api_c/db_get.html__OCT__DB_GET_BOTH DB-__GT__get@DB_GET_BOTH __APIREL__/api_c/db_get.html__OCT__DB_SET_RECNO DB-__GT__get@DB_SET_RECNO -__APIREL__/api_c/db_get.html__OCT__DB_AUTO_COMMIT DB-__GT__get@DB_AUTO_COMMIT -__APIREL__/api_c/db_get.html__OCT__DB_DEGREE_2 DB-__GT__get@DB_DEGREE_2 -__APIREL__/api_c/db_get.html__OCT__DB_DIRTY_READ DB-__GT__get@DB_DIRTY_READ __APIREL__/api_c/db_get.html__OCT__DB_MULTIPLE DB-__GT__get@DB_MULTIPLE +__APIREL__/api_c/db_get.html__OCT__DB_READ_COMMITTED DB-__GT__get@DB_READ_COMMITTED +__APIREL__/api_c/db_get.html__OCT__DB_READ_UNCOMMITTED DB-__GT__get@DB_READ_UNCOMMITTED __APIREL__/api_c/db_get.html__OCT__DB_RMW DB-__GT__get@DB_RMW __APIREL__/api_c/db_join.html__OCT__DB_JOIN_ITEM DB-__GT__join@DB_JOIN_ITEM -__APIREL__/api_c/db_join.html__OCT__DB_DIRTY_READ DB-__GT__join@DB_DIRTY_READ +__APIREL__/api_c/db_join.html__OCT__DB_READ_UNCOMMITTED DB-__GT__join@DB_READ_UNCOMMITTED __APIREL__/api_c/db_join.html__OCT__DB_RMW DB-__GT__join@DB_RMW __APIREL__/api_c/db_join.html__OCT__DB_JOIN_NOSORT DB-__GT__join@DB_JOIN_NOSORT __APIREL__/api_c/db_open.html__OCT__DB_AUTO_COMMIT DB-__GT__open@DB_AUTO_COMMIT __APIREL__/api_c/db_open.html__OCT__DB_CREATE DB-__GT__open@DB_CREATE -__APIREL__/api_c/db_open.html__OCT__DB_DIRTY_READ DB-__GT__open@DB_DIRTY_READ __APIREL__/api_c/db_open.html__OCT__DB_EXCL DB-__GT__open@DB_EXCL +__APIREL__/api_c/db_open.html__OCT__DB_MULTIVERSION DB-__GT__open@DB_MULTIVERSION __APIREL__/api_c/db_open.html__OCT__DB_NOMMAP DB-__GT__open@DB_NOMMAP __APIREL__/api_c/db_open.html__OCT__DB_RDONLY DB-__GT__open@DB_RDONLY +__APIREL__/api_c/db_open.html__OCT__DB_READ_UNCOMMITTED DB-__GT__open@DB_READ_UNCOMMITTED __APIREL__/api_c/db_open.html__OCT__DB_THREAD DB-__GT__open@DB_THREAD __APIREL__/api_c/db_open.html__OCT__DB_TRUNCATE DB-__GT__open@DB_TRUNCATE __APIREL__/api_c/db_open.html__OCT__DB_BTREE DB-__GT__open@DB_BTREE @@ -37,7 +43,8 @@ __APIREL__/api_c/db_open.html__OCT__DB_UNKNOWN DB-__GT__open@DB_UNKNOWN __APIREL__/api_c/db_put.html__OCT__DB_APPEND DB-__GT__put@DB_APPEND __APIREL__/api_c/db_put.html__OCT__DB_NODUPDATA DB-__GT__put@DB_NODUPDATA __APIREL__/api_c/db_put.html__OCT__DB_NOOVERWRITE DB-__GT__put@DB_NOOVERWRITE -__APIREL__/api_c/db_put.html__OCT__DB_AUTO_COMMIT DB-__GT__put@DB_AUTO_COMMIT +__APIREL__/api_c/db_put.html__OCT__2 @DB_REP_HANDLE_DEAD +__APIREL__/api_c/db_put.html__OCT__3 @DB_REP_LOCKOUT __APIREL__/api_c/db_set_encrypt.html__OCT__DB_ENCRYPT_AES DB-__GT__set_encrypt@DB_ENCRYPT_AES __APIREL__/api_c/db_set_feedback.html__OCT__DB_UPGRADE DB-__GT__set_feedback@DB_UPGRADE __APIREL__/api_c/db_set_feedback.html__OCT__DB_VERIFY DB-__GT__set_feedback@DB_VERIFY @@ -64,11 +71,16 @@ __APIREL__/api_c/db_set_flags.html__OCT__11 @renumbering records in Recno databa __APIREL__/api_c/db_set_flags.html__OCT__DB_RENUMBER DB-__GT__set_flags@DB_RENUMBER __APIREL__/api_c/db_set_flags.html__OCT__12 pre-loading @text files into Recno databases __APIREL__/api_c/db_set_flags.html__OCT__DB_SNAPSHOT DB-__GT__set_flags@DB_SNAPSHOT -__APIREL__/api_c/db_stat.html__OCT__DB_DEGREE_2 DB-__GT__stat@DB_DEGREE_2 -__APIREL__/api_c/db_stat.html__OCT__DB_DIRTY_READ DB-__GT__stat@DB_DIRTY_READ +__APIREL__/api_c/db_set_priority.html__OCT__DB_PRIORITY_VERY_LOW DB-__GT__set_priority@DB_PRIORITY_VERY_LOW +__APIREL__/api_c/db_set_priority.html__OCT__DB_PRIORITY_LOW DB-__GT__set_priority@DB_PRIORITY_LOW +__APIREL__/api_c/db_set_priority.html__OCT__DB_PRIORITY_DEFAULT DB-__GT__set_priority@DB_PRIORITY_DEFAULT +__APIREL__/api_c/db_set_priority.html__OCT__DB_PRIORITY_HIGH DB-__GT__set_priority@DB_PRIORITY_HIGH +__APIREL__/api_c/db_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH DB-__GT__set_priority@DB_PRIORITY_VERY_HIGH +__APIREL__/api_c/db_stat.html__OCT__DB_FAST_STAT DB-__GT__stat@DB_FAST_STAT +__APIREL__/api_c/db_stat.html__OCT__DB_READ_COMMITTED DB-__GT__stat@DB_READ_COMMITTED +__APIREL__/api_c/db_stat.html__OCT__DB_READ_UNCOMMITTED DB-__GT__stat@DB_READ_UNCOMMITTED __APIREL__/api_c/db_stat.html__OCT__DB_FAST_STAT DB-__GT__stat@DB_FAST_STAT __APIREL__/api_c/db_stat.html__OCT__DB_STAT_ALL DB-__GT__stat@DB_STAT_ALL -__APIREL__/api_c/db_truncate.html__OCT__DB_AUTO_COMMIT DB-__GT__truncate@DB_AUTO_COMMIT __APIREL__/api_c/db_upgrade.html__OCT__DB_DUPSORT DB-__GT__upgrade@DB_DUPSORT __APIREL__/api_c/db_upgrade.html__OCT__DB_OLD_VERSION DB-__GT__upgrade@DB_OLD_VERSION __APIREL__/api_c/db_verify.html__OCT__2 @DB_VERIFY_BAD @@ -88,41 +100,56 @@ __APIREL__/api_c/dbt_class.html__OCT__DB_DBT_REALLOC DBT@DB_DBT_REALLOC __APIREL__/api_c/dbt_class.html__OCT__3 @DB_BUFFER_SMALL __APIREL__/api_c/dbt_class.html__OCT__DB_DBT_USERMEM DBT@DB_DBT_USERMEM __APIREL__/api_c/dbt_class.html__OCT__DB_DBT_PARTIAL DBT@DB_DBT_PARTIAL +__APIREL__/api_c/dbt_class.html__OCT__DB_DBT_APPMALLOC DBT@DB_DBT_APPMALLOC +__APIREL__/api_c/dbt_class.html__OCT__DB_DBT_MULTIPLE DBT@DB_DBT_MULTIPLE __APIREL__/api_c/dbt_bulk.html__OCT__2 @bulk retrieval __APIREL__/api_c/dbt_bulk.html__OCT__DB_MULTIPLE_INIT DBT@DB_MULTIPLE_INIT __APIREL__/api_c/dbt_bulk.html__OCT__DB_MULTIPLE_NEXT DBT@DB_MULTIPLE_NEXT __APIREL__/api_c/dbt_bulk.html__OCT__DB_MULTIPLE_KEY_NEXT DBT@DB_MULTIPLE_KEY_NEXT __APIREL__/api_c/dbt_bulk.html__OCT__DB_MULTIPLE_RECNO_NEXT DBT@DB_MULTIPLE_RECNO_NEXT -__APIREL__/api_c/dbc_dup.html__OCT__DB_POSITION DBcursor-__GT__c_dup@DB_POSITION -__APIREL__/api_c/dbc_get.html__OCT__DB_CURRENT DBcursor-__GT__c_get@DB_CURRENT -__APIREL__/api_c/dbc_get.html__OCT__DB_FIRST DBcursor-__GT__c_get@DB_FIRST -__APIREL__/api_c/dbc_get.html__OCT__DB_GET_BOTH DBcursor-__GT__c_get@DB_GET_BOTH -__APIREL__/api_c/dbc_get.html__OCT__DB_GET_BOTH_RANGE DBcursor-__GT__c_get@DB_GET_BOTH_RANGE -__APIREL__/api_c/dbc_get.html__OCT__DB_GET_RECNO DBcursor-__GT__c_get@DB_GET_RECNO -__APIREL__/api_c/dbc_get.html__OCT__DB_JOIN_ITEM DBcursor-__GT__c_get@DB_JOIN_ITEM -__APIREL__/api_c/dbc_get.html__OCT__DB_LAST DBcursor-__GT__c_get@DB_LAST -__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT DBcursor-__GT__c_get@DB_NEXT -__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT_DUP DBcursor-__GT__c_get@DB_NEXT_DUP -__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT_NODUP DBcursor-__GT__c_get@DB_NEXT_NODUP -__APIREL__/api_c/dbc_get.html__OCT__DB_PREV DBcursor-__GT__c_get@DB_PREV -__APIREL__/api_c/dbc_get.html__OCT__DB_PREV_NODUP DBcursor-__GT__c_get@DB_PREV_NODUP -__APIREL__/api_c/dbc_get.html__OCT__DB_SET DBcursor-__GT__c_get@DB_SET -__APIREL__/api_c/dbc_get.html__OCT__DB_SET_RANGE DBcursor-__GT__c_get@DB_SET_RANGE -__APIREL__/api_c/dbc_get.html__OCT__DB_SET_RECNO DBcursor-__GT__c_get@DB_SET_RECNO -__APIREL__/api_c/dbc_get.html__OCT__DB_DIRTY_READ DBcursor-__GT__c_get@DB_DIRTY_READ -__APIREL__/api_c/dbc_get.html__OCT__DB_MULTIPLE DBcursor-__GT__c_get@DB_MULTIPLE -__APIREL__/api_c/dbc_get.html__OCT__DB_MULTIPLE_KEY DBcursor-__GT__c_get@DB_MULTIPLE_KEY -__APIREL__/api_c/dbc_get.html__OCT__DB_RMW DBcursor-__GT__c_get@DB_RMW -__APIREL__/api_c/dbc_put.html__OCT__DB_AFTER DBcursor-__GT__c_put@DB_AFTER -__APIREL__/api_c/dbc_put.html__OCT__DB_BEFORE DBcursor-__GT__c_put@DB_BEFORE -__APIREL__/api_c/dbc_put.html__OCT__DB_CURRENT DBcursor-__GT__c_put@DB_CURRENT -__APIREL__/api_c/dbc_put.html__OCT__DB_KEYFIRST DBcursor-__GT__c_put@DB_KEYFIRST -__APIREL__/api_c/dbc_put.html__OCT__DB_KEYLAST DBcursor-__GT__c_put@DB_KEYLAST -__APIREL__/api_c/dbc_put.html__OCT__DB_NODUPDATA DBcursor-__GT__c_put@DB_NODUPDATA +__APIREL__/api_c/dbc_dup.html__OCT__DB_POSITION DBcursor-__GT__dup@DB_POSITION +__APIREL__/api_c/dbc_get.html__OCT__DB_CURRENT DBcursor-__GT__get@DB_CURRENT +__APIREL__/api_c/dbc_get.html__OCT__DB_FIRST DBcursor-__GT__get@DB_FIRST +__APIREL__/api_c/dbc_get.html__OCT__DB_GET_BOTH DBcursor-__GT__get@DB_GET_BOTH +__APIREL__/api_c/dbc_get.html__OCT__DB_GET_BOTH_RANGE DBcursor-__GT__get@DB_GET_BOTH_RANGE +__APIREL__/api_c/dbc_get.html__OCT__DB_GET_RECNO DBcursor-__GT__get@DB_GET_RECNO +__APIREL__/api_c/dbc_get.html__OCT__DB_JOIN_ITEM DBcursor-__GT__get@DB_JOIN_ITEM +__APIREL__/api_c/dbc_get.html__OCT__DB_LAST DBcursor-__GT__get@DB_LAST +__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT DBcursor-__GT__get@DB_NEXT +__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT_DUP DBcursor-__GT__get@DB_NEXT_DUP +__APIREL__/api_c/dbc_get.html__OCT__DB_NEXT_NODUP DBcursor-__GT__get@DB_NEXT_NODUP +__APIREL__/api_c/dbc_get.html__OCT__DB_PREV DBcursor-__GT__get@DB_PREV +__APIREL__/api_c/dbc_get.html__OCT__DB_PREV_DUP DBcursor-__GT__get@DB_PREV_DUP +__APIREL__/api_c/dbc_get.html__OCT__DB_PREV_NODUP DBcursor-__GT__get@DB_PREV_NODUP +__APIREL__/api_c/dbc_get.html__OCT__DB_SET DBcursor-__GT__get@DB_SET +__APIREL__/api_c/dbc_get.html__OCT__DB_SET_RANGE DBcursor-__GT__get@DB_SET_RANGE +__APIREL__/api_c/dbc_get.html__OCT__DB_SET_RECNO DBcursor-__GT__get@DB_SET_RECNO +__APIREL__/api_c/dbc_get.html__OCT__DB_READ_UNCOMMITTED DBcursor-__GT__get@DB_READ_UNCOMMITTED +__APIREL__/api_c/dbc_get.html__OCT__DB_MULTIPLE DBcursor-__GT__get@DB_MULTIPLE +__APIREL__/api_c/dbc_get.html__OCT__DB_MULTIPLE_KEY DBcursor-__GT__get@DB_MULTIPLE_KEY +__APIREL__/api_c/dbc_get.html__OCT__DB_RMW DBcursor-__GT__get@DB_RMW +__APIREL__/api_c/dbc_put.html__OCT__DB_AFTER DBcursor-__GT__put@DB_AFTER +__APIREL__/api_c/dbc_put.html__OCT__DB_BEFORE DBcursor-__GT__put@DB_BEFORE +__APIREL__/api_c/dbc_put.html__OCT__DB_CURRENT DBcursor-__GT__put@DB_CURRENT +__APIREL__/api_c/dbc_put.html__OCT__DB_KEYFIRST DBcursor-__GT__put@DB_KEYFIRST +__APIREL__/api_c/dbc_put.html__OCT__DB_KEYLAST DBcursor-__GT__put@DB_KEYLAST +__APIREL__/api_c/dbc_put.html__OCT__DB_NODUPDATA DBcursor-__GT__put@DB_NODUPDATA +__APIREL__/api_c/dbc_set_priority.html__OCT__DB_PRIORITY_VERY_LOW DBcursor-__GT__set_priority@DB_PRIORITY_VERY_LOW +__APIREL__/api_c/dbc_set_priority.html__OCT__DB_PRIORITY_LOW DBcursor-__GT__set_priority@DB_PRIORITY_LOW +__APIREL__/api_c/dbc_set_priority.html__OCT__DB_PRIORITY_DEFAULT DBcursor-__GT__set_priority@DB_PRIORITY_DEFAULT +__APIREL__/api_c/dbc_set_priority.html__OCT__DB_PRIORITY_HIGH DBcursor-__GT__set_priority@DB_PRIORITY_HIGH +__APIREL__/api_c/dbc_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH DBcursor-__GT__set_priority@DB_PRIORITY_VERY_HIGH __APIREL__/api_c/env_class.html__OCT__DB_RPCCLIENT db_env_create@DB_RPCCLIENT __APIREL__/api_c/env_dbremove.html__OCT__DB_AUTO_COMMIT DB_ENV-__GT__dbremove@DB_AUTO_COMMIT __APIREL__/api_c/env_dbrename.html__OCT__DB_AUTO_COMMIT DB_ENV-__GT__dbrename@DB_AUTO_COMMIT -__APIREL__/api_c/env_open.html__OCT__DB_JOINENV DB_ENV-__GT__open@DB_JOINENV +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_PANIC DB_ENV-__GT__set_event_notify@DB_EVENT_PANIC +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_CLIENT DB_ENV-__GT__set_event_notify@DB_EVENT_REP_CLIENT +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_ELECTED DB_ENV-__GT__set_event_notify@DB_EVENT_REP_ELECTED +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_MASTER DB_ENV-__GT__set_event_notify@DB_EVENT_REP_MASTER +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_NEWMASTER DB_ENV-__GT__set_event_notify@DB_EVENT_REP_NEWMASTER +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_PERM_FAILED DB_ENV-__GT__set_event_notify@DB_EVENT_REP_PERM_FAILED +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_REP_STARTUPDONE DB_ENV-__GT__set_event_notify@DB_EVENT_REP_STARTUPDONE +__APIREL__/api_c/env_event_notify.html__OCT__DB_EVENT_WRITE_FAILED DB_ENV-__GT__set_event_notify@DB_EVENT_WRITE_FAILED __APIREL__/api_c/env_open.html__OCT__DB_INIT_CDB DB_ENV-__GT__open@DB_INIT_CDB __APIREL__/api_c/env_open.html__OCT__DB_INIT_LOCK DB_ENV-__GT__open@DB_INIT_LOCK __APIREL__/api_c/env_open.html__OCT__DB_INIT_LOG DB_ENV-__GT__open@DB_INIT_LOG @@ -137,6 +164,7 @@ __APIREL__/api_c/env_open.html__OCT__DB_USE_ENVIRON_ROOT DB_ENV-__GT__open@DB_US __APIREL__/api_c/env_open.html__OCT__DB_CREATE DB_ENV-__GT__open@DB_CREATE __APIREL__/api_c/env_open.html__OCT__DB_LOCKDOWN DB_ENV-__GT__open@DB_LOCKDOWN __APIREL__/api_c/env_open.html__OCT__DB_PRIVATE DB_ENV-__GT__open@DB_PRIVATE +__APIREL__/api_c/env_open.html__OCT__DB_REGISTER DB_ENV-__GT__open@DB_REGISTER __APIREL__/api_c/env_open.html__OCT__DB_SYSTEM_MEM DB_ENV-__GT__open@DB_SYSTEM_MEM __APIREL__/api_c/env_open.html__OCT__DB_THREAD DB_ENV-__GT__open@DB_THREAD __APIREL__/api_c/env_open.html__OCT__3 @DB_VERSION_MISMATCH @@ -158,46 +186,57 @@ __APIREL__/api_c/env_set_flags.html__OCT__3 turn off system @buffering for datab __APIREL__/api_c/env_set_flags.html__OCT__DB_DIRECT_DB DB_ENV-__GT__set_flags@DB_DIRECT_DB __APIREL__/api_c/env_set_flags.html__OCT__4 turn off system @buffering for log files __APIREL__/api_c/env_set_flags.html__OCT__DB_DIRECT_LOG DB_ENV-__GT__set_flags@DB_DIRECT_LOG -__APIREL__/api_c/env_set_flags.html__OCT__5 turn off system @buffering for log files +__APIREL__/api_c/env_set_flags.html__OCT__5 turn off system @buffering for database files +__APIREL__/api_c/env_set_flags.html__OCT__DB_DSYNC_DB DB_ENV-__GT__set_flags@DB_DSYNC_DB +__APIREL__/api_c/env_set_flags.html__OCT__6 turn off system @buffering for log files __APIREL__/api_c/env_set_flags.html__OCT__DB_DSYNC_LOG DB_ENV-__GT__set_flags@DB_DSYNC_LOG -__APIREL__/api_c/env_set_flags.html__OCT__6 automatic @log file removal +__APIREL__/api_c/env_set_flags.html__OCT__7 automatic @log file removal __APIREL__/api_c/env_set_flags.html__OCT__DB_LOG_AUTOREMOVE DB_ENV-__GT__set_flags@DB_LOG_AUTOREMOVE -__APIREL__/api_c/env_set_flags.html__OCT__7 in memory @logs +__APIREL__/api_c/env_set_flags.html__OCT__8 in memory @logs __APIREL__/api_c/env_set_flags.html__OCT__DB_LOG_INMEMORY DB_ENV-__GT__set_flags@DB_LOG_INMEMORY __APIREL__/api_c/env_set_flags.html__OCT__DB_LOG_BUFFER_FULL DB_ENV-__GT__set_flags@DB_LOG_BUFFER_FULL -__APIREL__/api_c/env_set_flags.html__OCT__8 ignore @locking +__APIREL__/api_c/env_set_flags.html__OCT__DB_MULTIVERSION DB_ENV-__GT__set_flags@DB_MULTIVERSION +__APIREL__/api_c/env_set_flags.html__OCT__9 ignore @locking __APIREL__/api_c/env_set_flags.html__OCT__DB_NOLOCKING DB_ENV-__GT__set_flags@DB_NOLOCKING -__APIREL__/api_c/env_set_flags.html__OCT__9 turn off database file @memory mapping +__APIREL__/api_c/env_set_flags.html__OCT__10 turn off database file @memory mapping __APIREL__/api_c/env_set_flags.html__OCT__DB_NOMMAP DB_ENV-__GT__set_flags@DB_NOMMAP -__APIREL__/api_c/env_set_flags.html__OCT__10 ignore database environment @panic +__APIREL__/api_c/env_set_flags.html__OCT__11 ignore database environment @panic __APIREL__/api_c/env_set_flags.html__OCT__DB_NOPANIC DB_ENV-__GT__set_flags@DB_NOPANIC __APIREL__/api_c/env_set_flags.html__OCT__DB_OVERWRITE DB_ENV-__GT__set_flags@DB_OVERWRITE -__APIREL__/api_c/env_set_flags.html__OCT__11 turn off access to a database @environment +__APIREL__/api_c/env_set_flags.html__OCT__12 turn off access to a database @environment __APIREL__/api_c/env_set_flags.html__OCT__DB_PANIC_ENVIRONMENT DB_ENV-__GT__set_flags@DB_PANIC_ENVIRONMENT -__APIREL__/api_c/env_set_flags.html__OCT__12 fault database @environment in during open +__APIREL__/api_c/env_set_flags.html__OCT__13 fault database @environment in during open __APIREL__/api_c/env_set_flags.html__OCT__DB_REGION_INIT DB_ENV-__GT__set_flags@DB_REGION_INIT __APIREL__/api_c/env_set_flags.html__OCT__DB_TIME_NOTGRANTED DB_ENV-__GT__set_flags@DB_TIME_NOTGRANTED -__APIREL__/api_c/env_set_flags.html__OCT__13 turn off synchronous @transaction commit -__APIREL__/api_c/env_set_flags.html__OCT__DB_TXN_NOSYNC DB_ENV-__GT__set_flags@DB_TXN_NOSYNC __APIREL__/api_c/env_set_flags.html__OCT__14 turn off synchronous @transaction commit +__APIREL__/api_c/env_set_flags.html__OCT__DB_TXN_NOSYNC DB_ENV-__GT__set_flags@DB_TXN_NOSYNC +__APIREL__/api_c/env_set_flags.html__OCT__DB_TXN_NOWAIT DB_ENV-__GT__set_flags@DB_TXN_NOWAIT +__APIREL__/api_c/env_set_flags.html__OCT__DB_TXN_SNAPSHOT DB_ENV-__GT__set_flags@DB_TXN_SNAPSHOT +__APIREL__/api_c/env_set_flags.html__OCT__15 turn off synchronous @transaction commit __APIREL__/api_c/env_set_flags.html__OCT__DB_TXN_WRITE_NOSYNC DB_ENV-__GT__set_flags@DB_TXN_WRITE_NOSYNC -__APIREL__/api_c/env_set_flags.html__OCT__15 configure for @stress testing +__APIREL__/api_c/env_set_flags.html__OCT__16 configure for @stress testing __APIREL__/api_c/env_set_flags.html__OCT__DB_YIELDCPU DB_ENV-__GT__set_flags@DB_YIELDCPU +__APIREL__/api_c/env_set_isalive.html__OCT__DB_MUTEX_PROCESS_ONLY DB_ENV-__GT__set_isalive@DB_MUTEX_PROCESS_ONLY __APIREL__/api_c/env_set_rpc_server.html__OCT__DB_NOSERVER DB_ENV-__GT__set_rpc_server@DB_NOSERVER __APIREL__/api_c/env_set_rpc_server.html__OCT__DB_NOSERVER_ID DB_ENV-__GT__set_rpc_server@DB_NOSERVER_ID __APIREL__/api_c/env_set_rpc_server.html__OCT__DB_NOSERVER_HOME DB_ENV-__GT__set_rpc_server@DB_NOSERVER_HOME __APIREL__/api_c/env_set_rpc_server.html__OCT__2 @DB_NOSERVER __APIREL__/api_c/env_set_rpc_server.html__OCT__3 @DB_NOSERVER_ID +__APIREL__/api_c/env_set_thread_id_string.html__OCT__2 @DB_NOSERVER __APIREL__/api_c/env_set_timeout.html__OCT__DB_SET_LOCK_TIMEOUT DB_ENV-__GT__set_timeout@DB_SET_LOCK_TIMEOUT __APIREL__/api_c/env_set_timeout.html__OCT__DB_SET_TXN_TIMEOUT DB_ENV-__GT__set_timeout@DB_SET_TXN_TIMEOUT __APIREL__/api_c/env_set_timeout.html__OCT__DB_SET_LOCK_TIMEOUT DB_ENV-__GT__set_timeout@DB_SET_LOCK_TIMEOUT __APIREL__/api_c/env_set_timeout.html__OCT__DB_SET_TXN_TIMEOUT DB_ENV-__GT__set_timeout@DB_SET_TXN_TIMEOUT __APIREL__/api_c/env_set_tmp_dir.html__OCT__2 @temporary files __APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_DEADLOCK DB_ENV-__GT__set_verbose@DB_VERB_DEADLOCK +__APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_FILEOPS DB_ENV-__GT__set_verbose@DB_VERB_FILEOPS +__APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_FILEOPS_ALL DB_ENV-__GT__set_verbose@DB_VERB_FILEOPS_ALL __APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_RECOVERY DB_ENV-__GT__set_verbose@DB_VERB_RECOVERY +__APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_REGISTER DB_ENV-__GT__set_verbose@DB_VERB_REGISTER __APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_REPLICATION DB_ENV-__GT__set_verbose@DB_VERB_REPLICATION __APIREL__/api_c/env_set_verbose.html__OCT__DB_VERB_WAITSFOR DB_ENV-__GT__set_verbose@DB_VERB_WAITSFOR __APIREL__/api_c/env_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__stat_print@DB_STAT_ALL +__APIREL__/api_c/env_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__stat_print@DB_STAT_CLEAR __APIREL__/api_c/env_stat.html__OCT__DB_STAT_SUBSYSTEM DB_ENV-__GT__stat_print@DB_STAT_SUBSYSTEM __APIREL__/api_c/env_set_lk_detect.html__OCT__DB_LOCK_DEFAULT DB_ENV-__GT__set_lk_detect@DB_LOCK_DEFAULT __APIREL__/api_c/env_set_lk_detect.html__OCT__DB_LOCK_EXPIRE DB_ENV-__GT__set_lk_detect@DB_LOCK_EXPIRE @@ -220,6 +259,7 @@ __APIREL__/api_c/lock_detect.html__OCT__DB_LOCK_YOUNGEST DB_ENV-__GT__lock_detec __APIREL__/api_c/lock_get.html__OCT__DB_LOCK_NOWAIT DB_ENV-__GT__lock_get@DB_LOCK_NOWAIT __APIREL__/api_c/lock_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__lock_stat@DB_STAT_CLEAR __APIREL__/api_c/lock_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__lock_stat@DB_STAT_ALL +__APIREL__/api_c/lock_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__lock_stat@DB_STAT_CLEAR __APIREL__/api_c/lock_stat.html__OCT__DB_STAT_LOCK_CONF DB_ENV-__GT__lock_stat@DB_STAT_LOCK_CONF __APIREL__/api_c/lock_stat.html__OCT__DB_STAT_LOCK_LOCKERS DB_ENV-__GT__lock_stat@DB_STAT_LOCK_LOCKERS __APIREL__/api_c/lock_stat.html__OCT__DB_STAT_LOCK_OBJECTS DB_ENV-__GT__lock_stat@DB_STAT_LOCK_OBJECTS @@ -247,6 +287,7 @@ __APIREL__/api_c/log_archive.html__OCT__DB_ARCH_REMOVE DB_ENV-__GT__log_archive@ __APIREL__/api_c/log_put.html__OCT__DB_FLUSH DB_ENV-__GT__log_put@DB_FLUSH __APIREL__/api_c/log_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__log_stat@DB_STAT_CLEAR __APIREL__/api_c/log_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__log_stat@DB_STAT_ALL +__APIREL__/api_c/log_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__log_stat@DB_STAT_CLEAR __APIREL__/api_c/logc_get.html__OCT__DB_CURRENT DB_LOGC-__GT__get@DB_CURRENT __APIREL__/api_c/logc_get.html__OCT__DB_FIRST DB_LOGC-__GT__get@DB_FIRST __APIREL__/api_c/logc_get.html__OCT__DB_LAST DB_LOGC-__GT__get@DB_LAST @@ -255,20 +296,23 @@ __APIREL__/api_c/logc_get.html__OCT__DB_PREV DB_LOGC-__GT__get@DB_PREV __APIREL__/api_c/logc_get.html__OCT__DB_SET DB_LOGC-__GT__get@DB_SET __APIREL__/api_c/memp_fget.html__OCT__2 @DB_PAGE_NOTFOUND __APIREL__/api_c/memp_fget.html__OCT__DB_MPOOL_CREATE DB_MPOOLFILE-__GT__get@DB_MPOOL_CREATE +__APIREL__/api_c/memp_fget.html__OCT__DB_MPOOL_DIRTY DB_MPOOLFILE-__GT__get@DB_MPOOL_DIRTY +__APIREL__/api_c/memp_fget.html__OCT__DB_MPOOL_EDIT DB_MPOOLFILE-__GT__get@DB_MPOOL_EDIT __APIREL__/api_c/memp_fget.html__OCT__DB_MPOOL_LAST DB_MPOOLFILE-__GT__get@DB_MPOOL_LAST __APIREL__/api_c/memp_fget.html__OCT__DB_MPOOL_NEW DB_MPOOLFILE-__GT__get@DB_MPOOL_NEW __APIREL__/api_c/memp_fopen.html__OCT__DB_CREATE DB_MPOOLFILE-__GT__open@DB_CREATE __APIREL__/api_c/memp_fopen.html__OCT__2 turn off system @buffering __APIREL__/api_c/memp_fopen.html__OCT__DB_DIRECT DB_MPOOLFILE-__GT__open@DB_DIRECT +__APIREL__/api_c/memp_fopen.html__OCT__DB_MULTIVERSION DB_MPOOLFILE-__GT__open@DB_MULTIVERSION __APIREL__/api_c/memp_fopen.html__OCT__DB_NOMMAP DB_MPOOLFILE-__GT__open@DB_NOMMAP __APIREL__/api_c/memp_fopen.html__OCT__DB_ODDFILESIZE DB_MPOOLFILE-__GT__open@DB_ODDFILESIZE __APIREL__/api_c/memp_fopen.html__OCT__DB_RDONLY DB_MPOOLFILE-__GT__open@DB_RDONLY -__APIREL__/api_c/memp_fput.html__OCT__DB_MPOOL_CLEAN DB_MPOOLFILE-__GT__put@DB_MPOOL_CLEAN -__APIREL__/api_c/memp_fput.html__OCT__DB_MPOOL_DIRTY DB_MPOOLFILE-__GT__put@DB_MPOOL_DIRTY -__APIREL__/api_c/memp_fput.html__OCT__DB_MPOOL_DISCARD DB_MPOOLFILE-__GT__put@DB_MPOOL_DISCARD -__APIREL__/api_c/memp_fset.html__OCT__DB_MPOOL_CLEAN DB_MPOOLFILE-__GT__set@DB_MPOOL_CLEAN -__APIREL__/api_c/memp_fset.html__OCT__DB_MPOOL_DIRTY DB_MPOOLFILE-__GT__set@DB_MPOOL_DIRTY -__APIREL__/api_c/memp_fset.html__OCT__DB_MPOOL_DISCARD DB_MPOOLFILE-__GT__set@DB_MPOOL_DISCARD +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_UNCHANGED DB_MPOOLFILE-__GT__put@DB_PRIORITY_UNCHANGED +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_VERY_LOW DB_MPOOLFILE-__GT__put@DB_PRIORITY_VERY_LOW +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_LOW DB_MPOOLFILE-__GT__put@DB_PRIORITY_LOW +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_DEFAULT DB_MPOOLFILE-__GT__put@DB_PRIORITY_DEFAULT +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_HIGH DB_MPOOLFILE-__GT__put@DB_PRIORITY_HIGH +__APIREL__/api_c/memp_fput.html__OCT__DB_PRIORITY_VERY_HIGH DB_MPOOLFILE-__GT__put@DB_PRIORITY_VERY_HIGH __APIREL__/api_c/memp_set_flags.html__OCT__DB_MPOOL_NOFILE DB_MPOOLFILE-__GT__set_flags@DB_MPOOL_NOFILE __APIREL__/api_c/memp_set_flags.html__OCT__DB_MPOOL_UNLINK DB_MPOOLFILE-__GT__set_flags@DB_MPOOL_UNLINK __APIREL__/api_c/memp_set_priority.html__OCT__DB_PRIORITY_VERY_LOW DB_MPOOLFILE-__GT__set_priority@DB_PRIORITY_VERY_LOW @@ -277,42 +321,77 @@ __APIREL__/api_c/memp_set_priority.html__OCT__DB_PRIORITY_DEFAULT DB_MPOOLFILE-_ __APIREL__/api_c/memp_set_priority.html__OCT__DB_PRIORITY_HIGH DB_MPOOLFILE-__GT__set_priority@DB_PRIORITY_HIGH __APIREL__/api_c/memp_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH DB_MPOOLFILE-__GT__set_priority@DB_PRIORITY_VERY_HIGH __APIREL__/api_c/memp_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__memp_stat@DB_STAT_CLEAR -__APIREL__/api_c/memp_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__memp_stat@DB_STAT_CLEAR __APIREL__/api_c/memp_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__memp_stat@DB_STAT_ALL +__APIREL__/api_c/memp_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__memp_stat@DB_STAT_CLEAR __APIREL__/api_c/memp_stat.html__OCT__DB_STAT_MEMP_HASH DB_ENV-__GT__memp_stat@DB_STAT_MEMP_HASH +__APIREL__/api_c/mutex_alloc.html__OCT__DB_MUTEX_PROCESS_ONLY DB_ENV-__GT__mutex_alloc@DB_MUTEX_PROCESS_ONLY +__APIREL__/api_c/mutex_alloc.html__OCT__DB_MUTEX_SELF_BLOCK DB_ENV-__GT__mutex_alloc@DB_MUTEX_SELF_BLOCK +__APIREL__/api_c/mutex_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__mutex_stat@DB_STAT_CLEAR +__APIREL__/api_c/mutex_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__mutex_stat@DB_STAT_ALL +__APIREL__/api_c/mutex_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__mutex_stat@DB_STAT_CLEAR +__APIREL__/api_c/rep_config.html__OCT__DB_REP_CONF_BULK DB_ENV-__GT__rep_set_config@DB_REP_CONF_BULK +__APIREL__/api_c/rep_config.html__OCT__DB_REP_CONF_DELAYCLIENT DB_ENV-__GT__rep_set_config@DB_REP_CONF_DELAYCLIENT +__APIREL__/api_c/rep_config.html__OCT__DB_REP_CONF_NOAUTOINIT DB_ENV-__GT__rep_set_config@DB_REP_CONF_NOAUTOINIT +__APIREL__/api_c/rep_config.html__OCT__DB_REP_CONF_NOWAIT DB_ENV-__GT__rep_set_config@DB_REP_CONF_NOWAIT __APIREL__/api_c/rep_elect.html__OCT__2 @DB_REP_UNAVAIL __APIREL__/api_c/rep_message.html__OCT__DB_REP_DUPMASTER DB_ENV-__GT__rep_process_message@DB_REP_DUPMASTER __APIREL__/api_c/rep_message.html__OCT__DB_REP_HOLDELECTION DB_ENV-__GT__rep_process_message@DB_REP_HOLDELECTION +__APIREL__/api_c/rep_message.html__OCT__DB_REP_IGNORE DB_ENV-__GT__rep_process_message@DB_REP_IGNORE __APIREL__/api_c/rep_message.html__OCT__DB_REP_ISPERM DB_ENV-__GT__rep_process_message@DB_REP_ISPERM -__APIREL__/api_c/rep_message.html__OCT__DB_REP_NEWMASTER DB_ENV-__GT__rep_process_message@DB_REP_NEWMASTER +__APIREL__/api_c/rep_message.html__OCT__DB_REP_JOIN_FAILURE DB_ENV-__GT__rep_process_message@DB_REP_JOIN_FAILURE __APIREL__/api_c/rep_message.html__OCT__DB_REP_NEWSITE DB_ENV-__GT__rep_process_message@DB_REP_NEWSITE __APIREL__/api_c/rep_message.html__OCT__DB_REP_NOTPERM DB_ENV-__GT__rep_process_message@DB_REP_NOTPERM -__APIREL__/api_c/rep_message.html__OCT__DB_REP_STARTUPDONE DB_ENV-__GT__rep_process_message@DB_REP_STARTUPDONE __APIREL__/api_c/rep_start.html__OCT__DB_REP_CLIENT DB_ENV-__GT__rep_start@DB_REP_CLIENT __APIREL__/api_c/rep_start.html__OCT__DB_REP_MASTER DB_ENV-__GT__rep_start@DB_REP_MASTER __APIREL__/api_c/rep_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__rep_stat@DB_STAT_CLEAR __APIREL__/api_c/rep_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__rep_stat@DB_STAT_ALL +__APIREL__/api_c/rep_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__rep_stat@DB_STAT_CLEAR +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_ACK_TIMEOUT DB_ENV-__GT__rep_set_timeout@DB_REP_ACK_TIMEOUT +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_CHECKPOINT_DELAY DB_ENV-__GT__rep_set_timeout@DB_REP_CHECKPOINT_DELAY +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_CONNECTION_RETRY DB_ENV-__GT__rep_set_timeout@DB_REP_CONNECTION_RETRY +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_ELECTION_TIMEOUT DB_ENV-__GT__rep_set_timeout@DB_REP_ELECTION_TIMEOUT +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_ELECTION_RETRY DB_ENV-__GT__rep_set_timeout@DB_REP_ELECTION_RETRY +__APIREL__/api_c/rep_timeout.html__OCT__DB_REP_FULL_ELECTION_TIMEOUT DB_ENV-__GT__rep_set_timeout@DB_REP_FULL_ELECTION_TIMEOUT __APIREL__/api_c/rep_transport.html__OCT__2 @DB_EID_BROADCAST -__APIREL__/api_c/rep_transport.html__OCT__DB_REP_NOBUFFER DB_ENV-__GT__set_rep_transport@DB_REP_NOBUFFER -__APIREL__/api_c/rep_transport.html__OCT__DB_REP_PERMANENT DB_ENV-__GT__set_rep_transport@DB_REP_PERMANENT -__APIREL__/api_c/seq_get.html__OCT__DB_AUTO_COMMIT DB_SEQUENCE-__GT__get@DB_AUTO_COMMIT +__APIREL__/api_c/rep_transport.html__OCT__DB_REP_ANYWHERE DB_ENV-__GT__rep_set_transport@DB_REP_ANYWHERE +__APIREL__/api_c/rep_transport.html__OCT__DB_REP_NOBUFFER DB_ENV-__GT__rep_set_transport@DB_REP_NOBUFFER +__APIREL__/api_c/rep_transport.html__OCT__DB_REP_PERMANENT DB_ENV-__GT__rep_set_transport@DB_REP_PERMANENT +__APIREL__/api_c/rep_transport.html__OCT__DB_REP_REREQUEST DB_ENV-__GT__rep_set_transport@DB_REP_REREQUEST +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_ALL DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_ALL +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_ALL_PEERS DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_ALL_PEERS +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_NONE DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_NONE +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_ONE DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_ONE +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_ONE_PEER DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_ONE_PEER +__APIREL__/api_c/repmgr_ack_policy.html__OCT__DB_REPMGR_ACKS_QUORUM DB_ENV-__GT__repmgr_set_ack_policy@DB_REPMGR_ACKS_QUORUM +__APIREL__/api_c/repmgr_remote_site.html__OCT__DB_REPMGR_PEER DB_ENV-__GT__repmgr_add_remote_site@DB_REPMGR_PEER +__APIREL__/api_c/repmgr_site_list.html__OCT__DB_REPMGR_CONNECTED DB_ENV-__GT__repmgr_site_list@DB_REPMGR_CONNECTED +__APIREL__/api_c/repmgr_site_list.html__OCT__DB_REPMGR_DISCONNECTED DB_ENV-__GT__repmgr_site_list@DB_REPMGR_DISCONNECTED +__APIREL__/api_c/repmgr_start.html__OCT__DB_REP_MASTER DB_ENV-__GT__repmgr_start@DB_REP_MASTER +__APIREL__/api_c/repmgr_start.html__OCT__DB_REP_CLIENT DB_ENV-__GT__repmgr_start@DB_REP_CLIENT +__APIREL__/api_c/repmgr_start.html__OCT__DB_REP_ELECTION DB_ENV-__GT__repmgr_start@DB_REP_ELECTION +__APIREL__/api_c/repmgr_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__repmgr_stat@DB_STAT_CLEAR +__APIREL__/api_c/repmgr_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__repmgr_stat@DB_STAT_ALL +__APIREL__/api_c/repmgr_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__repmgr_stat@DB_STAT_CLEAR __APIREL__/api_c/seq_get.html__OCT__DB_TXN_NOSYNC DB_SEQUENCE-__GT__get@DB_TXN_NOSYNC -__APIREL__/api_c/seq_open.html__OCT__DB_AUTO_COMMIT DB_SEQUENCE-__GT__open@DB_AUTO_COMMIT __APIREL__/api_c/seq_open.html__OCT__DB_CREATE DB_SEQUENCE-__GT__open@DB_CREATE __APIREL__/api_c/seq_open.html__OCT__DB_EXCL DB_SEQUENCE-__GT__open@DB_EXCL __APIREL__/api_c/seq_open.html__OCT__DB_THREAD DB_SEQUENCE-__GT__open@DB_THREAD +__APIREL__/api_c/seq_open.html__OCT__DB_THREAD DB_SEQUENCE-__GT__open@DB_THREAD +__APIREL__/api_c/seq_remove.html__OCT__DB_TXN_NOSYNC DB_SEQUENCE-__GT__remove@DB_TXN_NOSYNC __APIREL__/api_c/seq_set_flags.html__OCT__DB_SEQ_DEC DB_SEQUENCE-__GT__set_flags@DB_SEQ_DEC __APIREL__/api_c/seq_set_flags.html__OCT__DB_SEQ_INC DB_SEQUENCE-__GT__set_flags@DB_SEQ_INC __APIREL__/api_c/seq_set_flags.html__OCT__DB_SEQ_WRAP DB_SEQUENCE-__GT__set_flags@DB_SEQ_WRAP __APIREL__/api_c/seq_stat.html__OCT__DB_STAT_CLEAR DB_SEQUENCE-__GT__stat@DB_STAT_CLEAR __APIREL__/api_c/seq_stat.html__OCT__DB_STAT_CLEAR DB_SEQUENCE-__GT__stat@DB_STAT_CLEAR -__APIREL__/api_c/seq_remove.html__OCT__DB_AUTO_COMMIT DB_SEQUENCE-__GT__remove@DB_AUTO_COMMIT -__APIREL__/api_c/seq_remove.html__OCT__DB_TXN_NOSYNC DB_SEQUENCE-__GT__remove@DB_TXN_NOSYNC -__APIREL__/api_c/txn_begin.html__OCT__DB_DEGREE_2 DB_ENV-__GT__txn_begin@DB_DEGREE_2 -__APIREL__/api_c/txn_begin.html__OCT__DB_DIRTY_READ DB_ENV-__GT__txn_begin@DB_DIRTY_READ +__APIREL__/api_c/txn_begin.html__OCT__DB_READ_COMMITTED DB_ENV-__GT__txn_begin@DB_READ_COMMITTED +__APIREL__/api_c/txn_begin.html__OCT__DB_READ_UNCOMMITTED DB_ENV-__GT__txn_begin@DB_READ_UNCOMMITTED __APIREL__/api_c/txn_begin.html__OCT__DB_TXN_NOSYNC DB_ENV-__GT__txn_begin@DB_TXN_NOSYNC __APIREL__/api_c/txn_begin.html__OCT__DB_TXN_NOWAIT DB_ENV-__GT__txn_begin@DB_TXN_NOWAIT +__APIREL__/api_c/txn_begin.html__OCT__DB_TXN_SNAPSHOT DB_ENV-__GT__txn_begin@DB_TXN_SNAPSHOT +__APIREL__/api_c/txn_begin.html__OCT__DB_LOCK_DEADLOCK DB_ENV-__GT__txn_begin@DB_LOCK_DEADLOCK __APIREL__/api_c/txn_begin.html__OCT__DB_TXN_SYNC DB_ENV-__GT__txn_begin@DB_TXN_SYNC +__APIREL__/api_c/txn_begin.html__OCT__DB_TXN_WAIT DB_ENV-__GT__txn_begin@DB_TXN_WAIT +__APIREL__/api_c/txn_begin.html__OCT__DB_TXN_WRITE_NOSYNC DB_ENV-__GT__txn_begin@DB_TXN_WRITE_NOSYNC __APIREL__/api_c/txn_checkpoint.html__OCT__DB_FORCE DB_ENV-__GT__txn_checkpoint@DB_FORCE __APIREL__/api_c/txn_commit.html__OCT__DB_TXN_NOSYNC DB_TXN-__GT__commit@DB_TXN_NOSYNC __APIREL__/api_c/txn_commit.html__OCT__DB_TXN_SYNC DB_TXN-__GT__commit@DB_TXN_SYNC @@ -323,6 +402,7 @@ __APIREL__/api_c/txn_set_timeout.html__OCT__DB_SET_LOCK_TIMEOUT DB_TXN-__GT__set __APIREL__/api_c/txn_set_timeout.html__OCT__DB_SET_TXN_TIMEOUT DB_TXN-__GT__set_timeout@DB_SET_TXN_TIMEOUT __APIREL__/api_c/txn_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__txn_stat@DB_STAT_CLEAR __APIREL__/api_c/txn_stat.html__OCT__DB_STAT_ALL DB_ENV-__GT__txn_stat@DB_STAT_ALL +__APIREL__/api_c/txn_stat.html__OCT__DB_STAT_CLEAR DB_ENV-__GT__txn_stat@DB_STAT_CLEAR __APIREL__/ref/am/close.html__OCT__2 @closing a database __APIREL__/ref/am/count.html__OCT__2 @counting data items for a key __APIREL__/ref/am/curclose.html__OCT__2 @closing a cursor @@ -375,9 +455,7 @@ __APIREL__/ref/am_misc/dbsizes.html__OCT__2 database @limits __APIREL__/ref/am_misc/diskspace.html__OCT__2 @disk space requirements __APIREL__/ref/am_misc/error.html__OCT__2 @error handling __APIREL__/ref/am_misc/faq.html__OCT__2 @access method FAQ -__APIREL__/ref/am_misc/faq.html__OCT__3 database @compaction -__APIREL__/ref/am_misc/faq.html__OCT__4 returning pages to the @filesystem -__APIREL__/ref/am_misc/faq.html__OCT__5 @double buffering +__APIREL__/ref/am_misc/faq.html__OCT__3 @double buffering __APIREL__/ref/am_misc/get_bulk.html__OCT__2 @retrieving records in bulk __APIREL__/ref/am_misc/partial.html__OCT__2 @partial record storage and retrieval __APIREL__/ref/am_misc/perm.html__OCT__2 retrieved key/data @permanence @@ -390,6 +468,8 @@ __APIREL__/ref/am_misc/tune.html__OCT__2 @access method tuning __APIREL__/ref/am_misc/tune.html__OCT__3 access method @tuning __APIREL__/ref/arch/apis.html__OCT__2 programmatic @APIs __APIREL__/ref/arch/utilities.html__OCT__2 @utilities +__APIREL__/ref/build_brew/intro.html__OCT__2 @building for BREW +__APIREL__/ref/build_s60/intro.html__OCT__2 @building for S60 __APIREL__/ref/build_unix/aix.html__OCT__2 @AIX __APIREL__/ref/build_unix/conf.html__OCT__2 @configuring Berkeley DB for UNIX systems __APIREL__/ref/build_unix/conf.html__OCT__3 configuring Berkeley DB for @UNIX systems @@ -411,20 +491,21 @@ __APIREL__/ref/build_unix/conf.html__OCT__9 building a utility to dump Berkeley __APIREL__/ref/build_unix/conf.html__OCT__--enable-dump185 Configuring Berkeley DB@--enable-dump185 __APIREL__/ref/build_unix/conf.html__OCT__10 configuring the @Java API __APIREL__/ref/build_unix/conf.html__OCT__--enable-java Configuring Berkeley DB@--enable-java +__APIREL__/ref/build_unix/conf.html__OCT__11 @configuring the fine-grained lock manager +__APIREL__/ref/build_unix/conf.html__OCT__--enable-fine_grained_lock_manager Configuring Berkeley DB@--enable-fine_grained_lock_manager __APIREL__/ref/build_unix/conf.html__OCT__--enable-posixmutexes Configuring Berkeley DB@--enable-posixmutexes -__APIREL__/ref/build_unix/conf.html__OCT__11 configuring a @RPC client/server +__APIREL__/ref/build_unix/conf.html__OCT__--enable-pthread_api Configuring Berkeley DB@--enable-pthread_api +__APIREL__/ref/build_unix/conf.html__OCT__12 configuring a @RPC client/server __APIREL__/ref/build_unix/conf.html__OCT__--enable-rpc Configuring Berkeley DB@--enable-rpc -__APIREL__/ref/build_unix/conf.html__OCT__12 configuring a small memory @footprint library +__APIREL__/ref/build_unix/conf.html__OCT__13 configuring a small memory @footprint library __APIREL__/ref/build_unix/conf.html__OCT__--enable-smallbuild Configuring Berkeley DB@--enable-smallbuild -__APIREL__/ref/build_unix/conf.html__OCT__13 configuring the @Tcl API +__APIREL__/ref/build_unix/conf.html__OCT__14 configuring the @Tcl API __APIREL__/ref/build_unix/conf.html__OCT__--enable-tcl Configuring Berkeley DB@--enable-tcl -__APIREL__/ref/build_unix/conf.html__OCT__14 configuring the @test suite +__APIREL__/ref/build_unix/conf.html__OCT__15 configuring the @test suite __APIREL__/ref/build_unix/conf.html__OCT__--enable-test Configuring Berkeley DB@--enable-test __APIREL__/ref/build_unix/conf.html__OCT__--enable-uimutexes Configuring Berkeley DB@--enable-uimutexes __APIREL__/ref/build_unix/conf.html__OCT__--enable-umrw Configuring Berkeley DB@--enable-umrw __APIREL__/ref/build_unix/conf.html__OCT__--with-mutex=MUTEX Configuring Berkeley DB@--with-mutex=MUTEX -__APIREL__/ref/build_unix/conf.html__OCT__--with-mutexalign=ALIGNMENT Configuring Berkeley DB@--with-mutexalign=ALIGNMENT -__APIREL__/ref/build_unix/conf.html__OCT__--with-rpm=ARCHIVE Configuring Berkeley DB@--with-rpm=ARCHIVE __APIREL__/ref/build_unix/conf.html__OCT__--with-tcl=DIR Configuring Berkeley DB@--with-tcl=DIR __APIREL__/ref/build_unix/conf.html__OCT__--with-uniquename=NAME Configuring Berkeley DB@--with-uniquename=NAME __APIREL__/ref/build_unix/flags.html__OCT__2 changing @compile or load options @@ -443,6 +524,7 @@ __APIREL__/ref/build_unix/notes.html__OCT__2 @building for UNIX FAQ __APIREL__/ref/build_unix/notes.html__OCT__3 building for @UNIX FAQ __APIREL__/ref/build_unix/osf1.html__OCT__2 @OSF/1 __APIREL__/ref/build_unix/qnx.html__OCT__2 @QNX +__APIREL__/ref/build_unix/qnx.html__OCT__--disable-shared QNX@--disable-shared __APIREL__/ref/build_unix/sco.html__OCT__2 @SCO __APIREL__/ref/build_unix/shlib.html__OCT__2 @shared libraries __APIREL__/ref/build_unix/small.html__OCT__--disable-cryptography Building a small memory footprint library@--disable-cryptography @@ -464,14 +546,16 @@ __APIREL__/ref/build_vxworks/notes.html__OCT__2 @VxWorks notes __APIREL__/ref/build_win/faq.html__OCT__2 @building for Windows FAQ __APIREL__/ref/build_win/faq.html__OCT__3 building for @Windows FAQ __APIREL__/ref/build_win/faq.html__OCT__4 configuring for @MinGW -__APIREL__/ref/build_win/intro.html__OCT__2 @building for Win32 +__APIREL__/ref/build_win/intro.html__OCT__2 @building for Windows __APIREL__/ref/build_win/notes.html__OCT__2 @Windows notes __APIREL__/ref/build_win/test.html__OCT__2 running the @test suite under Windows __APIREL__/ref/build_win/test.html__OCT__3 running the test suite under @Windows -__APIREL__/ref/build_win/unicode.html__OCT__2 @Unicode +__APIREL__/ref/build_wince/faq.html__OCT__2 @building for Windows CE FAQ +__APIREL__/ref/build_wince/faq.html__OCT__3 building for @Windows CE FAQ +__APIREL__/ref/build_wince/intro.html__OCT__2 @building for Windows CE +__APIREL__/ref/build_wince/notes.html__OCT__2 @Windows CE notes __APIREL__/ref/cam/intro.html__OCT__2 @Concurrent Data Store __APIREL__/ref/debug/intro.html__OCT__2 introduction to @debugging -__APIREL__/ref/debug/common.html__OCT__2 @debugging applications __APIREL__/ref/distrib/layout.html__OCT__2 @source code layout __APIREL__/ref/dumpload/text.html__OCT__2 loading @text into databases __APIREL__/ref/dumpload/utility.html__OCT__2 dumping/loading @text to/from databases @@ -494,7 +578,7 @@ __APIREL__/ref/ext/perl.html__OCT__2 @Perl __APIREL__/ref/ext/php.html__OCT__2 @PHP __APIREL__/ref/install/file.html__OCT__2 @/etc/magic __APIREL__/ref/install/file.html__OCT__3 @file utility -__APIREL__/ref/intro/products.html__OCT__2 Sleepycat Software's Berkeley DB @products +__APIREL__/ref/intro/products.html__OCT__2 Berkeley DB @products __APIREL__/ref/java/compat.html__OCT__2 @Java compatibility __APIREL__/ref/java/conf.html__OCT__2 @Java configuration __APIREL__/ref/java/faq.html__OCT__2 Java @FAQ @@ -522,6 +606,8 @@ __APIREL__/ref/mp/intro.html__OCT__4 introduction to the @buffer pool subsystem __APIREL__/ref/mp/config.html__OCT__2 @memory pool configuration __APIREL__/ref/program/appsignals.html__OCT__2 @signal handling __APIREL__/ref/program/compatible.html__OCT__2 @interface compatibility +__APIREL__/ref/program/copy.html__OCT__2 @copying databases +__APIREL__/ref/program/copy.html__OCT__3 @moving databases __APIREL__/ref/program/environ.html__OCT__2 @environment variables __APIREL__/ref/program/errorret.html__OCT__2 @error returns __APIREL__/ref/program/errorret.html__OCT__3 @error name space @@ -535,6 +621,7 @@ __APIREL__/ref/program/errorret.html__OCT__DB_RUNRECOVERY Error returns to appli __APIREL__/ref/program/faq.html__OCT__2 task/thread @priority __APIREL__/ref/program/mt.html__OCT__2 building @threaded applications __APIREL__/ref/program/namespace.html__OCT__2 Berkeley DB library @name spaces +__APIREL__/ref/program/ram.html__OCT__2 @Flash memory configurations __APIREL__/ref/program/scope.html__OCT__2 Berkeley DB handle @scope __APIREL__/ref/program/scope.html__OCT__3 Berkeley DB @free-threaded handles __APIREL__/ref/rep/intro.html__OCT__2 introduction to @replication @@ -561,13 +648,18 @@ __APIREL__/ref/transapp/hotfail.html__OCT__2 hot @failover __APIREL__/ref/transapp/intro.html__OCT__2 @Transactional Data Store __APIREL__/ref/transapp/logfile.html__OCT__2 @log file removal __APIREL__/ref/transapp/nested.html__OCT__2 nested @transactions -__APIREL__/ref/transapp/read.html__OCT__2 @repeatable read -__APIREL__/ref/transapp/read.html__OCT__3 @cursor stability -__APIREL__/ref/transapp/read.html__OCT__4 cursor @stability -__APIREL__/ref/transapp/read.html__OCT__5 @degree 2 isolation -__APIREL__/ref/transapp/read.html__OCT__6 degree 2 @isolation -__APIREL__/ref/transapp/read.html__OCT__7 dirty @reads -__APIREL__/ref/transapp/read.html__OCT__8 @dirty reads +__APIREL__/ref/transapp/read.html__OCT__2 @repeatable reads +__APIREL__/ref/transapp/read.html__OCT__3 cursor @stability +__APIREL__/ref/transapp/read.html__OCT__4 @cursor stability +__APIREL__/ref/transapp/read.html__OCT__5 degree 2 @isolation +__APIREL__/ref/transapp/read.html__OCT__6 @degree 2 isolation +__APIREL__/ref/transapp/read.html__OCT__7 degree 1 @isolation +__APIREL__/ref/transapp/read.html__OCT__8 @degree 1 isolation +__APIREL__/ref/transapp/read.html__OCT__9 dirty @reads +__APIREL__/ref/transapp/read.html__OCT__10 @dirty reads +__APIREL__/ref/transapp/read.html__OCT__11 @snapshot isolation +__APIREL__/ref/transapp/read.html__OCT__12 @multiversion concurrency control +__APIREL__/ref/transapp/read.html__OCT__13 @MVCC __APIREL__/ref/transapp/reclimit.html__OCT__2 Berkeley DB @recoverability __APIREL__/ref/transapp/recovery.html__OCT__2 recovery in @transaction protected applications __APIREL__/ref/transapp/throughput.html__OCT__2 @transaction throughput @@ -585,6 +677,9 @@ __APIREL__/ref/upgrade.4.0/toc.html__OCT__2 @Upgrading to release 4.0 __APIREL__/ref/upgrade.4.1/toc.html__OCT__2 @Upgrading to release 4.1 __APIREL__/ref/upgrade.4.2/toc.html__OCT__2 @Upgrading to release 4.2 __APIREL__/ref/upgrade.4.3/toc.html__OCT__2 @Upgrading to release 4.3 +__APIREL__/ref/upgrade.4.4/toc.html__OCT__2 @Upgrading to release 4.4 +__APIREL__/ref/upgrade.4.5/toc.html__OCT__2 @Upgrading to release 4.5 +__APIREL__/ref/upgrade.4.6/toc.html__OCT__2 @Upgrading to release 4.6 __APIREL__/ref/xa/build.html__OCT__2 @Transaction Manager __APIREL__/ref/xa/intro.html__OCT__2 @Distributed Transactions __APIREL__/ref/xa/intro.html__OCT__3 @Resource Manager diff --git a/db/docs/api_c/rep_config.html b/db/docs/api_c/rep_config.html index d6cd0aca5..b44ed4aa5 100644 --- a/db/docs/api_c/rep_config.html +++ b/db/docs/api_c/rep_config.html @@ -1,6 +1,5 @@ - - - + + @@ -61,8 +60,6 @@ single network transfer (defaults to off). unsynchronized until the application calls the DB_ENV->rep_sync method.

DB_REP_CONF_NOAUTOINIT
The replication master will not automatically re-initialize outdated clients (defaults to off). -

The DB_REP_CONF_NOAUTOINIT flag is not supported by Replication -Manager.

DB_REP_CONF_NOWAIT
Berkeley DB method calls that would normally block while clients are in recovery will return errors immediately (defaults to off). @@ -101,6 +98,6 @@ otherwise on.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_elect.html b/db/docs/api_c/rep_elect.html index d8dcf255a..2f2b5a1dc 100644 --- a/db/docs/api_c/rep_elect.html +++ b/db/docs/api_c/rep_elect.html @@ -1,6 +1,5 @@ - - - + + @@ -24,7 +23,7 @@

int DB_ENV->rep_elect(DB_ENV *env, - int nsites, int nvotes, int *envid, u_int32_t flags); + int nsites, int nvotes, u_int32_t flags);


Description: DB_ENV->rep_elect

@@ -35,19 +34,19 @@ applications. It should only be called by applications implementing their own network transport layer, explicitly holding replication group elections and handling replication messages outside of the replication manager framework.

-

If the election is successful, the new master's ID may be the ID of the -previous master, or the ID of the current replication site. The +

If the election is successful, Berkeley DB will notify the application of +the results of the election by means of either the +DB_EVENT_REP_ELECTED or DB_EVENT_REP_NEWMASTER events +(see DB_ENV->set_event_notify method for more information). The application is responsible for adjusting its relationship to the other -database environments in the replication group, including directing all -database updates to the newly selected master, in accordance with the -results of this election.

+database environments in the replication group, including directing +all database updates to the newly selected master, in accordance with +the results of the election.

The thread of control that calls the DB_ENV->rep_elect method must not be the thread of control that processes incoming messages; processing the incoming messages is necessary to successfully complete an election.

Parameters

-
envid
The envid parameter references memory into which - the newly elected master's ID is copied.
nsites
The nsites parameter specifies the number of replication sites expected to participate in the election. Once the current site has election information from that many sites, it will short-circuit the @@ -92,7 +91,10 @@ sites all restarting at the same time, it makes more sense to set known missing site. Furthermore, in order to ensure the best choice from among sites that may take longer to boot than the local site, setting nvotes also to this same total number of sites will -guarantee that every site in the group is considered. (See the +guarantee that every site in the group is considered. Alternatively, +using the special timeout for full elections allows full participation +on restart but allows election of a master if one site does not +reboot and rejoin the group in a reasonable amount of time. (See the Elections section in the Berkeley DB Reference Guide for more information.)

Setting nsites to lower values can increase the speed of an @@ -116,6 +118,6 @@ complete the election in the election timeout period (see

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_limit.html b/db/docs/api_c/rep_limit.html index 68d01cb67..d895d7f03 100644 --- a/db/docs/api_c/rep_limit.html +++ b/db/docs/api_c/rep_limit.html @@ -1,6 +1,5 @@ - - - + + @@ -34,6 +33,10 @@ DB_ENV->rep_get_limit(DB_ENV *dbenv, u_int32_t *gbytesp, u_int32_t *bytesp); that will be transmitted from a site in response to a single message processed by the DB_ENV->rep_process_message method. The limit is not a hard limit, and the record that exceeds the limit is the last record to be sent.

+

Record transmission throttling is turned on by default with a limit of +10MB.

+

If the values passed to the DB_ENV->rep_set_limit method are both zero, then +the transmission limit is turned off.

The DB_ENV->rep_set_limit method configures a database environment, not only operations performed using the specified DB_ENV handle.

The DB_ENV->rep_set_limit method may be called at any time during the life of the @@ -73,6 +76,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_list.html b/db/docs/api_c/rep_list.html index 95c4f8bff..60fec036b 100644 --- a/db/docs/api_c/rep_list.html +++ b/db/docs/api_c/rep_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Replication and Related Methods

- + @@ -18,6 +17,7 @@ + @@ -30,9 +30,10 @@ +
Replication Manager MethodsDescription
DB_ENV->repmgr_add_remote_siteSpecify the replication manager's remote sites
DB_ENV->repmgr_set_local_siteSpecify the replication manager's local site
DB_ENV->repmgr_site_listList the sites and their status
DB_ENV->repmgr_startStart the replication manager
DB_ENV->repmgr_statReplication manager statistics
Base Replication API
DB_ENV->rep_electHold a replication election
DB_ENV->rep_process_messageProcess a replication message
DB_ENV->rep_set_limitLimit data sent in response to a single message
DB_ENV->rep_set_nsitesConfigure replication group site count
DB_ENV->rep_set_priorityConfigure replication site priority
DB_ENV->rep_set_requestConfigure replication client retransmission requests
DB_ENV->rep_set_timeoutConfigure replication timeouts
DB_ENV->rep_set_transportConfigure replication transport callback
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_message.html b/db/docs/api_c/rep_message.html index 66f7c15dc..441df7705 100644 --- a/db/docs/api_c/rep_message.html +++ b/db/docs/api_c/rep_message.html @@ -1,6 +1,5 @@ - - - + + @@ -24,7 +23,7 @@

int DB_ENV->rep_process_message(DB_ENV *env, - DBT *control, DBT *rec, int *envid, DB_LSN *ret_lsnp) + DBT *control, DBT *rec, int envid, DB_LSN *ret_lsnp)


Description: DB_ENV->rep_process_message

@@ -70,13 +69,6 @@ with the new master (possibly because the client has been configured with the DB_REP_CONF_NOAUTOINIT flag to turn-off automatic internal initialization).

-
DB_REP_NEWMASTER
-

The DB_ENV->rep_process_message method will return DB_REP_NEWMASTER if a new master has been chosen. -The envid parameter contains the environment ID of the new -master. If the recipient of this error return has been made master, it -is the application's responsibility to begin acting as the master -environment. -

DB_REP_NEWSITE

The DB_ENV->rep_process_message method will return DB_REP_NEWSITE if the system received contact information from a new environment. The rec parameter contains the opaque data specified in the @@ -124,6 +116,6 @@ cases the value of ret_lsnp is undefined.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_nsites.html b/db/docs/api_c/rep_nsites.html index f6845b926..038b74047 100644 --- a/db/docs/api_c/rep_nsites.html +++ b/db/docs/api_c/rep_nsites.html @@ -1,6 +1,5 @@ - - + @@ -72,6 +71,6 @@ total number of sites in the replication group in nsitesp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_priority.html b/db/docs/api_c/rep_priority.html index aa87e9125..40da94492 100644 --- a/db/docs/api_c/rep_priority.html +++ b/db/docs/api_c/rep_priority.html @@ -1,6 +1,5 @@ - - + @@ -70,6 +69,6 @@ database environment priority in priorityp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_request.html b/db/docs/api_c/rep_request.html new file mode 100644 index 000000000..cf2634256 --- /dev/null +++ b/db/docs/api_c/rep_request.html @@ -0,0 +1,93 @@ + + + + + +Berkeley DB: DB_ENV->rep_set_request + + + + + + + +
+

DB_ENV->rep_set_request

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB_ENV->rep_set_request(DB_ENV *env, u_int32_t min, u_int32_t max); +

+int +DB_ENV->rep_get_request(DB_ENV *env, u_int32_t *minp, u_int32_t *maxp); +

+
+

Description: DB_ENV->rep_set_request

+

The DB_ENV->rep_set_request method sets the minimum and maximum number of +missing log records that a client waits before requesting +retransmission. Specifically, if a log record is missing, Berkeley DB will +wait for min more records to arrive before requesting +retransmission of the missing record. Berkeley DB will wait double that +amount before requesting the same missing record again, and so on, up +to a maximum wait of max records.

+

By default the minimum is 4 and the maximum is 128, and applications +rarely need to use values other than the defaults.

+

The DB_ENV->rep_set_request method configures a database environment, not only operations +performed using the specified DB_ENV handle.

+

The DB_ENV->rep_set_request method may be called at any time during the life of the +application.

+

The DB_ENV->rep_set_request method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
max
The maximum number of missing log records a client waits before +requesting retransmission. +
min
The minimum number of missing log records a client waits before +requesting retransmission. +
+

Errors

+

The DB_ENV->rep_set_request method +may fail and return one of the following non-zero errors:

+
+
EINVAL
An +invalid flag value or parameter was specified. +
+
+

Description: DB_ENV->rep_get_request

+

The DB_ENV->rep_get_request method returns the minimum and maximum number of +missing log records a client waits before requesting retransmission.

+

The DB_ENV->rep_get_request method may be called at any time during the life of the +application.

+

The DB_ENV->rep_get_request method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
maxp
The maxp parameter references memory into which + the maximum number of missing log records a client will wait before requesting +retransmission is copied. +
minp
The minp parameter references memory into which + the minimum number of missing log records a client will wait before requesting +retransmission is copied. +
+
+

Class

+DB_ENV +

See Also

+Replication and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/rep_start.html b/db/docs/api_c/rep_start.html index b13ac31c7..6d8257fcd 100644 --- a/db/docs/api_c/rep_start.html +++ b/db/docs/api_c/rep_start.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_stat.html b/db/docs/api_c/rep_stat.html index 5c38ed2ae..0a0fa3c23 100644 --- a/db/docs/api_c/rep_stat.html +++ b/db/docs/api_c/rep_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -87,7 +86,7 @@ time is st_election_sec plus st_election_usec).

u_int32_t st_log_queued_max;
The maximum number of log records ever queued at once.
u_int32_t st_log_queued_total;
The total number of log records queued.
u_int32_t st_log_records;
The number of log records received and appended to the log. -
u_int32_t st_log_requested;
The number of log records missed and requested. +
u_int32_t st_log_requested;
The number of times log records were missed and requested.
u_int32_t st_master;
The current master environment ID.
u_int32_t st_master_changes;
The number of times the master has changed.
u_int32_t st_msgs_badgen;
The number of messages received with a bad generation number. @@ -107,6 +106,9 @@ to a single call to DB_ENV->rep_process_m
u_int32_t st_pg_duplicated;
The number of duplicate pages received.
u_int32_t st_pg_records;
The number of pages received and stored.
u_int32_t st_pg_requested;
The number of pages missed and requested from the master. +
u_int32_t st_startsync_delayed;
The number of times the client had to delay the start of a +cache flush operation (initiated by the master for an impending +checkpoint) because it was missing some previous log record(s).
u_int32_t st_startup_complete;
The client site has completed its startup procedures and is now handling live records from the master.
u_int32_t st_status;
The current replication mode. Set to DB_REP_MASTER if the @@ -119,6 +121,8 @@ being waited for, or 0 if no log records are currently missing.
u_int32_t st_waiting_pg;
The page number of the first page we have after missing pages being waited for, or 0 if no pages are currently missing.
+

The DB_ENV->rep_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->rep_stat method returns a non-zero error value on failure and 0 on success. @@ -172,6 +176,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_sync.html b/db/docs/api_c/rep_sync.html index e0d55abf5..6cc629c18 100644 --- a/db/docs/api_c/rep_sync.html +++ b/db/docs/api_c/rep_sync.html @@ -1,6 +1,5 @@ - - - + + @@ -35,9 +34,8 @@ application must synchronize explicitly (otherwise the client will remain out-of-date and will ignore all database changes forwarded from the replication group master). The DB_ENV->rep_sync method may be called any time after the client application learns that the new master has been -established, either by receiving a DB_EVENT_REP_NEWMASTER event -notification, or from a DB_REP_NEWMASTER return code from -DB_ENV->rep_process_message.

+established (by receiving a DB_EVENT_REP_NEWMASTER event +notification).

The DB_ENV->rep_sync method may not be called before the DB_ENV->open method has been called.

The DB_ENV->rep_sync method @@ -57,6 +55,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_timeout.html b/db/docs/api_c/rep_timeout.html index c535cbff6..37ed03c99 100644 --- a/db/docs/api_c/rep_timeout.html +++ b/db/docs/api_c/rep_timeout.html @@ -1,6 +1,5 @@ - - - + + @@ -48,12 +47,22 @@ and 0 on success. function waits to collect enough acknowledgments from replication group clients, before giving up and returning a failure indication. The default wait time is 1 second. -

DB_REP_ELECTION_TIMEOUT
The timeout period for an election. The default timeout is 2 seconds. -
DB_REP_ELECTION_RETRY
Configure the amount of time the replication manager will wait before -retrying a failed election. The default wait time is 10 seconds. +
DB_REP_CHECKPOINT_DELAY
Configure the amount of time the replication manager will delay between +completing a checkpoint and writing a checkpoint record into the log. +This delay allows clients to complete their own checkpoints before the +master requires completion of them. The default is 30 seconds.
DB_REP_CONNECTION_RETRY
Configure the amount of time the replication manager will wait before trying to re-establish a connection to another site after a communication failure. The default wait time is 30 seconds. +
DB_REP_ELECTION_TIMEOUT
The timeout period for an election. The default timeout is 2 seconds. +
DB_REP_ELECTION_RETRY
Configure the amount of time the replication manager will wait before +retrying a failed election. The default wait time is 10 seconds. +
DB_REP_FULL_ELECTION_TIMEOUT
An optional configuration timeout period to wait for full election +participation the first time the replication group finds a master. +By default this option is turned off and normal election +timeouts are used. +(See the Elections +section in the Berkeley DB Reference Guide for more information.)
timeout
The timeout parameter is the timeout value. It must be specified as an unsigned 32-bit number of microseconds, limiting the maximum timeout @@ -92,6 +101,6 @@ is being returned.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/rep_transport.html b/db/docs/api_c/rep_transport.html index f6addcbd8..bce0b224d 100644 --- a/db/docs/api_c/rep_transport.html +++ b/db/docs/api_c/rep_transport.html @@ -1,6 +1,5 @@ - - + @@ -120,6 +119,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_ack_policy.html b/db/docs/api_c/repmgr_ack_policy.html index b5688f6e8..7c6987557 100644 --- a/db/docs/api_c/repmgr_ack_policy.html +++ b/db/docs/api_c/repmgr_ack_policy.html @@ -1,6 +1,5 @@ - - + @@ -95,6 +94,6 @@ replication manager's client acknowledgment policy in ack_policyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_local_site.html b/db/docs/api_c/repmgr_local_site.html index 86ddf2f31..9f4732b09 100644 --- a/db/docs/api_c/repmgr_local_site.html +++ b/db/docs/api_c/repmgr_local_site.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_remote_site.html b/db/docs/api_c/repmgr_remote_site.html index 7562086a2..65697b290 100644 --- a/db/docs/api_c/repmgr_remote_site.html +++ b/db/docs/api_c/repmgr_remote_site.html @@ -1,6 +1,5 @@ - - + @@ -63,6 +62,6 @@ peer, and the last specified peer is used.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_site_list.html b/db/docs/api_c/repmgr_site_list.html index 654e798f6..02f1c05ba 100644 --- a/db/docs/api_c/repmgr_site_list.html +++ b/db/docs/api_c/repmgr_site_list.html @@ -1,6 +1,5 @@ - - + @@ -72,6 +71,6 @@ referenced by listp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_start.html b/db/docs/api_c/repmgr_start.html index f9dc53205..a6589c611 100644 --- a/db/docs/api_c/repmgr_start.html +++ b/db/docs/api_c/repmgr_start.html @@ -1,6 +1,5 @@ - - - + + @@ -71,11 +70,6 @@ only one site at a time should ever be started with the DB_REP_MASTER flag specified.

DB_REP_CLIENT
Start as a client site, and do not call for an election.
DB_REP_ELECTION
Start as a client, and call for an election if no master is found. -
DB_REP_FULL_ELECTION
Start as a client, and call for an election if no master is found. -

The DB_REP_FULL_ELECTION flag configures a single special -election on startup, where a master will only be confirmed if all -members of the replication group vote. Subsequent elections will revert -to only requiring a simple majority to elect a new master.

nthreads
Specify the number of threads of control created and dedicated to processing replication messages. In addition to these message processing threads, @@ -91,6 +85,6 @@ control.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/repmgr_stat.html b/db/docs/api_c/repmgr_stat.html new file mode 100644 index 000000000..c35dc69be --- /dev/null +++ b/db/docs/api_c/repmgr_stat.html @@ -0,0 +1,116 @@ + + + + + +Berkeley DB: DB_ENV->repmgr_stat + + + + + + + +
+

DB_ENV->repmgr_stat

+
+API +Ref
+


+ +

+#include <db.h>
+

+int +DB_ENV->repmgr_stat(DB_ENV *env, DB_REPMGR_STAT **statp, u_int32_t flags); +

+int +DB_ENV->repmgr_stat_print(DB_ENV *env, u_int32_t flags); +

+
+

Description: DB_ENV->repmgr_stat

+

The DB_ENV->repmgr_stat method returns the replication manager statistics.

+

The DB_ENV->repmgr_stat method creates a statistical structure of type +DB_REPMGR_STAT and copies a pointer to it into a user-specified memory +location.

+

Statistical structures are stored in allocated memory. If application-specific allocation +routines have been declared (see DB_ENV->set_alloc for more +information), they are used to allocate the memory; otherwise, the +standard C library malloc(3) is used. The caller is +responsible for deallocating the memory. To deallocate the memory, free +the memory reference; references inside the returned memory need not be +individually freed.

+

The following DB_REPMGR_STAT fields will be filled in:

+
+
u_int32_t st_perm_failed;
The number of times a message critical for maintaining database +integrity (for example, a transaction commit), originating at this site, +did not receive sufficient acknowledgement from clients, according to +the configured acknowledgement policy and acknowledgement timeout. +
u_int32_t st_msgs_queued;
The number of outgoing messages which could not be transmitted +immediately, due to a full network buffer, and had to be queued for +later delivery. +
u_int32_t st_msgs_dropped;
The number of outgoing messages that were completely dropped, because +the outgoing message queue was full. (Berkeley DB replication is tolerant of +dropped messages, and will automatically request retransmission of any +missing messages as needed.) +
u_int32_t st_connection_drop;
The number of times an existing TCP/IP connection failed. +
u_int32_t st_connect_fail;
The number of times an attempt to open a new TCP/IP connection failed. +
+

The DB_ENV->repmgr_stat method may not be called before the DB_ENV->open method has +been called.

+

The DB_ENV->repmgr_stat method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or +the following value: +
+
DB_STAT_CLEAR
Reset statistics after returning their values. +
+
statp
The statp parameter references memory into which +a pointer to the allocated statistics structure is copied. +
+

Errors

+

The DB_ENV->repmgr_stat method +may fail and return one of the following non-zero errors:

+
+
EINVAL
An +invalid flag value or parameter was specified. +
+
+

Description: DB_ENV->repmgr_stat_print

+

The DB_ENV->repmgr_stat_print method displays the +replication manager statistical information, as described for the DB_ENV->repmgr_stat method. +The information is printed to a specified output channel (see the +DB_ENV->set_msgfile method for more information), or passed to an +application callback function (see the DB_ENV->set_msgcall method for +more information).

+

The DB_ENV->repmgr_stat_print method may not be called before the DB_ENV->open method has +been called.

+

The DB_ENV->repmgr_stat_print method +returns a non-zero error value on failure +and 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values: +
+
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values. +
+
+
+

Class

+DB_ENV +

See Also

+Replication and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_c/seq_class.html b/db/docs/api_c/seq_class.html index bdc006c49..8759ffe57 100644 --- a/db/docs/api_c/seq_class.html +++ b/db/docs/api_c/seq_class.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ DB_SEQUENCE

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_close.html b/db/docs/api_c/seq_close.html index 160b1c437..044f2eac5 100644 --- a/db/docs/api_c/seq_close.html +++ b/db/docs/api_c/seq_close.html @@ -1,6 +1,5 @@ - - + @@ -55,6 +54,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_get.html b/db/docs/api_c/seq_get.html index 01e63be09..6a75b2b58 100644 --- a/db/docs/api_c/seq_get.html +++ b/db/docs/api_c/seq_get.html @@ -1,6 +1,5 @@ - - + @@ -57,15 +56,17 @@ do not synchronously flush the log when the transaction commits.

retp
retp points to the memory to hold the return value from the sequence. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. No txnid handle may be specified if the sequence handle was +the operation will be implicitly transaction protected. +No txnid handle may be specified if the sequence handle was opened with a non-zero cache size.

If the underlying database handle was opened in a transaction, calling DB_SEQUENCE->get may result in changes to the sequence object; these @@ -87,6 +88,6 @@ stored in their own database.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_init_value.html b/db/docs/api_c/seq_init_value.html deleted file mode 100644 index e04ee4ac4..000000000 --- a/db/docs/api_c/seq_init_value.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - - -Berkeley DB: DB_SEQUENCE->init_value - - - - - - - -
-

DB_SEQUENCE->init_value

-
-API -Ref
-


- -

-#include <db.h>
-

-int -DB_SEQUENCE->init_value(DB_SEQUENCE *seq, db_seq_t value); -

-
-

Description: DB_SEQUENCE->init_value

-

Set the initial value for a sequence. This call is only effective when -the sequence is being created.

-

The DB_SEQUENCE->init_value method may not be called after the DB_SEQUENCE->open -method is called.

-

The DB_SEQUENCE->init_value method -returns a non-zero error value on failure -and 0 on success. -

-

Parameters

-
-
value
The initial value to set. -
-

Errors

-

The DB_SEQUENCE->init_value method -may fail and return one of the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Class

-DB_SEQUENCE -

See Also

-Sequences and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_c/seq_initial_value.html b/db/docs/api_c/seq_initial_value.html index f5a8f89f0..078ad52db 100644 --- a/db/docs/api_c/seq_initial_value.html +++ b/db/docs/api_c/seq_initial_value.html @@ -1,6 +1,5 @@ - - + @@ -55,6 +54,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_list.html b/db/docs/api_c/seq_list.html index 881d578cc..de88b25a2 100644 --- a/db/docs/api_c/seq_list.html +++ b/db/docs/api_c/seq_list.html @@ -1,6 +1,5 @@ - - + @@ -27,6 +26,6 @@

DB_SEQUENCE->set_flagsSet the flags for a sequence
DB_SEQUENCE->set_rangeSet the range for a sequence
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_open.html b/db/docs/api_c/seq_open.html index 72acbfa9b..007fb7cbd 100644 --- a/db/docs/api_c/seq_open.html +++ b/db/docs/api_c/seq_open.html @@ -1,6 +1,5 @@ - - + @@ -56,15 +55,17 @@ single address space. Note that if multiple threads create multiple sequences using the same database handle that handle must have been opened specifying DB_THREAD. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. Transactionally protected operations on a DB_SEQUENCE handle +the operation will be implicitly transaction protected. +Transactionally protected operations on a DB_SEQUENCE handle require the DB_SEQUENCE handle itself be transactionally protected during its open if the open creates the sequence. @@ -105,6 +106,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_remove.html b/db/docs/api_c/seq_remove.html index 91c36093d..478d71fe8 100644 --- a/db/docs/api_c/seq_remove.html +++ b/db/docs/api_c/seq_remove.html @@ -1,6 +1,5 @@ - - + @@ -45,15 +44,16 @@ or more of the following values: argument is NULL but the operation occurs to a transactional database), do not synchronously flush the log when the transaction commits. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DB_ENV->cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DB_ENV->txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DB_ENV->cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DB_SEQUENCE->remove method @@ -71,6 +71,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_set_cachesize.html b/db/docs/api_c/seq_set_cachesize.html index 020f65088..b38f734d4 100644 --- a/db/docs/api_c/seq_set_cachesize.html +++ b/db/docs/api_c/seq_set_cachesize.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ current cache size in sizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_set_flags.html b/db/docs/api_c/seq_set_flags.html index 8384d7242..c16b12c38 100644 --- a/db/docs/api_c/seq_set_flags.html +++ b/db/docs/api_c/seq_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -84,6 +83,6 @@ current flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_set_range.html b/db/docs/api_c/seq_set_range.html index af814e2d5..56e959332 100644 --- a/db/docs/api_c/seq_set_range.html +++ b/db/docs/api_c/seq_set_range.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/seq_stat.html b/db/docs/api_c/seq_stat.html index 907b15a8f..89ebeed33 100644 --- a/db/docs/api_c/seq_stat.html +++ b/db/docs/api_c/seq_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -69,7 +68,9 @@ of the following values:

DB_STAT_CLEAR
Reset statistics after printing their values. -

The DB_SEQUENCE->stat_print method +

The DB_SEQUENCE->stat method may not be called before the DB_SEQUENCE->open method has +been called.

+

The DB_SEQUENCE->stat method returns a non-zero error value on failure and 0 on success.

@@ -94,6 +95,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_close.html b/db/docs/api_c/set_func_close.html index 41151bd0f..698e583a3 100644 --- a/db/docs/api_c/set_func_close.html +++ b/db/docs/api_c/set_func_close.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_dirfree.html b/db/docs/api_c/set_func_dirfree.html index 8bcc7af23..5cb6d3de9 100644 --- a/db/docs/api_c/set_func_dirfree.html +++ b/db/docs/api_c/set_func_dirfree.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ function.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_dirlist.html b/db/docs/api_c/set_func_dirlist.html index 96e939272..f84212724 100644 --- a/db/docs/api_c/set_func_dirlist.html +++ b/db/docs/api_c/set_func_dirlist.html @@ -1,6 +1,5 @@ - - + @@ -58,6 +57,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_exists.html b/db/docs/api_c/set_func_exists.html index 3712b85f7..47fa88253 100644 --- a/db/docs/api_c/set_func_exists.html +++ b/db/docs/api_c/set_func_exists.html @@ -1,6 +1,5 @@ - - + @@ -56,6 +55,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_free.html b/db/docs/api_c/set_func_free.html index ec8a6923c..d4ebbf0ab 100644 --- a/db/docs/api_c/set_func_free.html +++ b/db/docs/api_c/set_func_free.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_fsync.html b/db/docs/api_c/set_func_fsync.html index bfed92e75..e569d4903 100644 --- a/db/docs/api_c/set_func_fsync.html +++ b/db/docs/api_c/set_func_fsync.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_ftruncate.html b/db/docs/api_c/set_func_ftruncate.html index 491cabef0..77339819f 100644 --- a/db/docs/api_c/set_func_ftruncate.html +++ b/db/docs/api_c/set_func_ftruncate.html @@ -1,6 +1,5 @@ - - + @@ -53,6 +52,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_ioinfo.html b/db/docs/api_c/set_func_ioinfo.html index cadf0ee3e..82ebfd161 100644 --- a/db/docs/api_c/set_func_ioinfo.html +++ b/db/docs/api_c/set_func_ioinfo.html @@ -1,6 +1,5 @@ - - + @@ -64,6 +63,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_malloc.html b/db/docs/api_c/set_func_malloc.html index ac150fb79..794cfe18f 100644 --- a/db/docs/api_c/set_func_malloc.html +++ b/db/docs/api_c/set_func_malloc.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_map.html b/db/docs/api_c/set_func_map.html index 6f264d66d..b2ae16c07 100644 --- a/db/docs/api_c/set_func_map.html +++ b/db/docs/api_c/set_func_map.html @@ -1,6 +1,5 @@ - - + @@ -68,6 +67,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_open.html b/db/docs/api_c/set_func_open.html index d669b5dde..d41359517 100644 --- a/db/docs/api_c/set_func_open.html +++ b/db/docs/api_c/set_func_open.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_pread.html b/db/docs/api_c/set_func_pread.html index 903c54f00..45b51f162 100644 --- a/db/docs/api_c/set_func_pread.html +++ b/db/docs/api_c/set_func_pread.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_pwrite.html b/db/docs/api_c/set_func_pwrite.html index d62fdcf83..6f6ef3a57 100644 --- a/db/docs/api_c/set_func_pwrite.html +++ b/db/docs/api_c/set_func_pwrite.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_read.html b/db/docs/api_c/set_func_read.html index 336a98fc8..921b4a409 100644 --- a/db/docs/api_c/set_func_read.html +++ b/db/docs/api_c/set_func_read.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_realloc.html b/db/docs/api_c/set_func_realloc.html index 8bac96017..9a35193ed 100644 --- a/db/docs/api_c/set_func_realloc.html +++ b/db/docs/api_c/set_func_realloc.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_rename.html b/db/docs/api_c/set_func_rename.html index c417ccfc0..0db74b720 100644 --- a/db/docs/api_c/set_func_rename.html +++ b/db/docs/api_c/set_func_rename.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_seek.html b/db/docs/api_c/set_func_seek.html index d2be1904d..dee6a382a 100644 --- a/db/docs/api_c/set_func_seek.html +++ b/db/docs/api_c/set_func_seek.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_sleep.html b/db/docs/api_c/set_func_sleep.html index ece4db13a..ad718fa12 100644 --- a/db/docs/api_c/set_func_sleep.html +++ b/db/docs/api_c/set_func_sleep.html @@ -1,6 +1,5 @@ - - - + + @@ -42,8 +41,8 @@ and 0 on success.

Parameters

-
func_sleep
The func_sleep parameter is the function which seeks to a specific -location in a file. +
func_sleep
The func_sleep parameter is the function which suspends execution +of a thread of control.

The seconds and microseconds parameters specify the amount of time to wait until the suspending thread of control should run again.

The seconds and microseconds parameters may not be @@ -58,6 +57,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_unlink.html b/db/docs/api_c/set_func_unlink.html index 5b67ed106..19c060c62 100644 --- a/db/docs/api_c/set_func_unlink.html +++ b/db/docs/api_c/set_func_unlink.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_unmap.html b/db/docs/api_c/set_func_unmap.html index dd2ec61a8..a3b48166b 100644 --- a/db/docs/api_c/set_func_unmap.html +++ b/db/docs/api_c/set_func_unmap.html @@ -1,6 +1,5 @@ - - + @@ -57,6 +56,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_write.html b/db/docs/api_c/set_func_write.html index 78d876db1..c06fefeec 100644 --- a/db/docs/api_c/set_func_write.html +++ b/db/docs/api_c/set_func_write.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ to the standard interface specification.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/set_func_yield.html b/db/docs/api_c/set_func_yield.html index 3ac4f40ff..7a2c0e9c5 100644 --- a/db/docs/api_c/set_func_yield.html +++ b/db/docs/api_c/set_func_yield.html @@ -1,6 +1,5 @@ - - + @@ -65,6 +64,6 @@ failure and 0 on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_abort.html b/db/docs/api_c/txn_abort.html index 9000506bf..66067a097 100644 --- a/db/docs/api_c/txn_abort.html +++ b/db/docs/api_c/txn_abort.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ and 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_begin.html b/db/docs/api_c/txn_begin.html index b910a55f4..4223fbfec 100644 --- a/db/docs/api_c/txn_begin.html +++ b/db/docs/api_c/txn_begin.html @@ -1,6 +1,5 @@ - - - + + @@ -59,7 +58,7 @@ previously read by this transaction may be deleted or modified by other transactions before this transaction completes.

DB_READ_UNCOMMITTED
This transaction will have degree 1 isolation. Read operations performed by the transaction may read modified but not yet committed -data. Silently ignored if the DB_READ_UNCOMMITTED flag was not +data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened.
DB_TXN_NOSYNC
Do not synchronously flush the log when this transaction commits or prepares. This means the transaction will exhibit the ACI (atomicity, @@ -67,12 +66,16 @@ consistency, and isolation) properties, but not D (durability); that is, database integrity will be maintained but it is possible that this transaction may be undone during recovery.

This behavior may be set for a Berkeley DB environment using the -DB_ENV->set_flags method. Any value specified to this method -overrides that setting.

+DB_ENV->set_flags method. Any value specified to this method overrides +that setting.

DB_TXN_NOWAIT
If a lock is unavailable for any Berkeley DB operation performed in the context of this transaction, cause the operation to -return DB_LOCK_DEADLOCK -immediately instead of blocking on the lock. +return DB_LOCK_DEADLOCK (or DB_LOCK_NOTGRANTED if the +database environment has been configured using the +DB_TIME_NOTGRANTED flag). +

This behavior may be set for a Berkeley DB environment using the +DB_ENV->set_flags method. Any value specified to this method overrides +that setting.

DB_TXN_SNAPSHOT
This transaction will execute with snapshot isolation. For databases with the DB_MULTIVERSION flag set, data values will be read as they are when the transaction begins, without taking read locks. Silently ignored for operations on @@ -85,9 +88,26 @@ which was modified after the snapshot transaction read it.

This means the transaction will exhibit all of the ACID (atomicity, consistency, isolation, and durability) properties.

This behavior is the default for Berkeley DB environments unless the -DB_TXN_NOSYNC flag was specified to the -DB_ENV->set_flags method. Any value specified to this method -overrides that setting.

+DB_TXN_NOSYNC flag was specified to the +DB_ENV->set_flags method. Any value specified to this method overrides +that setting.

+
DB_TXN_WAIT
If a lock is unavailable for any Berkeley DB operation performed in the context +of this transaction, wait for the lock. +

This behavior is the default for Berkeley DB environments unless the +DB_TXN_NOWAIT flag was specified to the +DB_ENV->set_flags method. Any value specified to this method overrides +that setting.

+
DB_TXN_WRITE_NOSYNC
Write, but do not synchronously flush, the log when this transaction +commits. This means the transaction will exhibit the ACI (atomicity, +consistency, and isolation) properties, but not D (durability); that is, +database integrity will be maintained, but if the system fails, it is +possible some number of the most recently committed transactions may be +undone during recovery. The number of transactions at risk is governed +by how often the system flushes dirty buffers to disk and how often the +log is flushed or checkpointed. +

This behavior may be set for a Berkeley DB environment using the +DB_ENV->set_flags method. Any value specified to this method overrides +that setting.

parent
If the parent parameter is non-NULL, the new transaction will be a nested transaction, with the transaction indicated by @@ -111,6 +131,6 @@ may fail and return one of the following non-zero errors:


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_checkpoint.html b/db/docs/api_c/txn_checkpoint.html index eadfb307e..ad1ec3dd4 100644 --- a/db/docs/api_c/txn_checkpoint.html +++ b/db/docs/api_c/txn_checkpoint.html @@ -1,6 +1,5 @@ - - + @@ -69,6 +68,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_class.html b/db/docs/api_c/txn_class.html index 4604b6e8f..d530de400 100644 --- a/db/docs/api_c/txn_class.html +++ b/db/docs/api_c/txn_class.html @@ -1,6 +1,5 @@ - - + @@ -48,6 +47,6 @@ and DB_TXN->commit.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_commit.html b/db/docs/api_c/txn_commit.html index 61d429f48..a7d9e56d8 100644 --- a/db/docs/api_c/txn_commit.html +++ b/db/docs/api_c/txn_commit.html @@ -1,6 +1,5 @@ - - + @@ -79,6 +78,6 @@ method overrides both of those settings.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_discard.html b/db/docs/api_c/txn_discard.html index 3ce7e3da3..0e7e3788b 100644 --- a/db/docs/api_c/txn_discard.html +++ b/db/docs/api_c/txn_discard.html @@ -1,6 +1,5 @@ - - + @@ -62,6 +61,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_id.html b/db/docs/api_c/txn_id.html index a27712446..64b33424f 100644 --- a/db/docs/api_c/txn_id.html +++ b/db/docs/api_c/txn_id.html @@ -1,6 +1,5 @@ - - + @@ -40,6 +39,6 @@ to the DB_ENV->lock_get or
APIRef -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_list.html b/db/docs/api_c/txn_list.html index 61eeae746..0f1549c57 100644 --- a/db/docs/api_c/txn_list.html +++ b/db/docs/api_c/txn_list.html @@ -1,6 +1,5 @@ - - + @@ -31,6 +30,6 @@ DB_TXN->set_nameAssociate a string with a transaction DB_TXN->set_timeoutSet transaction timeout -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_prepare.html b/db/docs/api_c/txn_prepare.html index cb2dea5aa..9e10f8dab 100644 --- a/db/docs/api_c/txn_prepare.html +++ b/db/docs/api_c/txn_prepare.html @@ -1,6 +1,5 @@ - - + @@ -61,6 +60,6 @@ transactions must be resolved.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_recover.html b/db/docs/api_c/txn_recover.html index 976905306..b6cb93cc4 100644 --- a/db/docs/api_c/txn_recover.html +++ b/db/docs/api_c/txn_recover.html @@ -1,6 +1,5 @@ - - - + + @@ -28,14 +27,18 @@ DB_ENV->txn_recover(DB_ENV *dbenv, DB_PREPLIST preplist[],


Description: DB_ENV->txn_recover

-

The DB_ENV->txn_recover method returns a list of prepared but not yet resolved -transactions. The DB_ENV->txn_recover method should only be called after the -environment has been recovered. Because database environment state must -be preserved between recovery and the application calling -DB_ENV->txn_recover, applications must either call DB_ENV->txn_recover -using the same environment handle used when recovery is done, or the -database environment must not be configured using the DB_PRIVATE -flag.

+

Database environment recovery restores transactions that were prepared, +but not yet resolved at the time of the system shut down or crash, to +their state prior to the shut down or crash, including any locks +previously held. The DB_ENV->txn_recover method returns a list of those +prepared transactions.

+

The DB_ENV->txn_recover method should only be called after the environment has +been recovered.

+

Multiple threads of control may call DB_ENV->txn_recover, but only one +thread of control may resolve each returned transaction, that is, only +one thread of control may call DB_TXN->commit or DB_TXN->abort +on each returned transaction. Callers of DB_ENV->txn_recover must call +DB_TXN->discard to discard each transaction they do not resolve.

On return from DB_ENV->txn_recover, the preplist parameter will be filled in with a list of transactions that must be resolved by the application (committed, aborted or discarded). The preplist @@ -48,9 +51,6 @@ ID is the one specified when the transaction was prepared. The application is responsible for ensuring uniqueness among global transaction IDs. -

The application must call DB_TXN->abort, DB_TXN->commit or -DB_TXN->discard on each returned DB_TXN handle before -starting any new operations.

The DB_ENV->txn_recover method returns a non-zero error value on failure and 0 on success. @@ -64,6 +64,11 @@ array.

flags
The flags parameter must be set to one of the following values:
DB_FIRST
Begin returning a list of prepared, but not yet resolved transactions. +Specifying this flag begins a new pass over all prepared, but not yet +completed transactions, regardless of whether they have already been returned +in previous calls to DB_ENV->txn_recover. +Calls to DB_ENV->txn_recover from different threads of control should not +be intermixed in the same environment.
DB_NEXT
Continue returning a list of prepared, but not yet resolved transactions, starting where the last call to DB_ENV->txn_recover left off.
@@ -79,6 +84,6 @@ starting where the last call to DB_ENV->txn_recover left off.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_set_name.html b/db/docs/api_c/txn_set_name.html index df0e91376..f45aef951 100644 --- a/db/docs/api_c/txn_set_name.html +++ b/db/docs/api_c/txn_set_name.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ string associated with the transaction in namep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_set_timeout.html b/db/docs/api_c/txn_set_timeout.html index 45a21dc19..d770b326e 100644 --- a/db/docs/api_c/txn_set_timeout.html +++ b/db/docs/api_c/txn_set_timeout.html @@ -1,6 +1,5 @@ - - - + + @@ -29,8 +28,8 @@ DB_TXN->set_timeout(DB_TXN *tid, db_timeout_t timeout, u_int32_t flags);

Description: DB_TXN->set_timeout

The DB_TXN->set_timeout method sets timeout values for locks or transactions for the specified transaction.

-

All Timeouts are checked whenever a thread of control blocks on a lock -or when deadlock detection is performed. In the case of +

Timeouts are checked whenever a thread of control blocks on a lock or +when deadlock detection is performed. In the case of DB_SET_LOCK_TIMEOUT, the timeout is for any single lock request. In the case of DB_SET_TXN_TIMEOUT, the timeout is for the life of the transaction. As timeouts are only checked when the lock request @@ -74,6 +73,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_c/txn_stat.html b/db/docs/api_c/txn_stat.html index 3dc82f1ea..1dde92997 100644 --- a/db/docs/api_c/txn_stat.html +++ b/db/docs/api_c/txn_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -90,6 +89,8 @@ undefined. of that name, followed by a nul termination byte. +

The DB_ENV->txn_stat method may not be called before the DB_ENV->open method has +been called.

The DB_ENV->txn_stat method returns a non-zero error value on failure and 0 on success. @@ -143,6 +144,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/api_core.html b/db/docs/api_cxx/api_core.html index 93eea10ff..cb8a9f35a 100644 --- a/db/docs/api_cxx/api_core.html +++ b/db/docs/api_cxx/api_core.html @@ -1,15 +1,14 @@ - - + -Berkeley DB: Berkeley DB: C++ Handle Methods (version 4.5.20) +Berkeley DB: Berkeley DB: C++ Handle Methods (version 4.6.18) -

Berkeley DB: C++ Handle Methods (version 4.5.20)

+

Berkeley DB: C++ Handle Methods (version 4.6.18)

@@ -19,6 +18,7 @@ + @@ -45,11 +45,13 @@ + + @@ -66,6 +68,7 @@ + @@ -113,6 +116,7 @@ + @@ -123,8 +127,10 @@ + + @@ -177,7 +183,6 @@ - @@ -211,6 +216,6 @@
C++ Handle MethodsDescription
DbCreate a database handle
Db::cursorCreate a cursor
Db::delDelete items from a database
Db::err, Db::errxError message
Db::existsReturn if an item appears in a database
Db::fdReturn a file descriptor from a database
Db::get, Db::pgetGet items from a database
Db::get_byteswappedReturn if the underlying database is in host order
Db::set_errpfxSet error message prefix
Db::set_feedbackSet feedback callback
Db::set_flagsGeneral database configuration
Db::set_h_compareSet a Hash comparison function
Db::set_h_ffactorSet the Hash table density
Db::set_h_hashSet a hashing function
Db::set_h_nelemSet the Hash table size
Db::set_lorderSet the database byte order
Db::set_pagesizeSet the underlying database page size
Db::set_prioritySet cache page priority
Db::set_q_extentsizeSet Queue database extent size
Db::set_re_delimSet the variable-length record delimiter
Db::set_re_lenSet the fixed-length record length
Dbc::dupDuplicate a cursor
Dbc::get, Dbc::pgetRetrieve by cursor
Dbc::putStore by cursor
Dbc::set_prioritySet the cursor's cache priority
DbDeadlockExceptionDeadlock exception
DbEnvCreate an environment handle
DbEnv::cdsgroup_beginGet a locker ID in Berkeley DB Concurrent Data Store
DbEnv::rep_set_limitLimit data sent in response to a single message
DbEnv::rep_set_nsitesConfigure replication group site count
DbEnv::rep_set_priorityConfigure replication site priority
DbEnv::rep_set_requestConfigure replication client retransmission requests
DbEnv::rep_set_timeoutConfigure replication timeouts
DbEnv::rep_set_transportConfigure replication transport callback
DbEnv::rep_startConfigure an environment for replication
DbEnv::repmgr_set_local_siteSpecify the replication manager's local site
DbEnv::repmgr_site_listList the sites and their status
DbEnv::repmgr_startStart the replication manager
DbEnv::repmgr_statReplication manager statistics
DbEnv::set_allocSet local space allocation functions
DbEnv::set_app_dispatchConfigure application recovery
DbEnv::set_cache_maxSet the maximum cache size
DbEnv::set_cachesizeSet the environment cache size
DbEnv::set_data_dirSet the environment data directory
DbEnv::set_encryptSet the environment cryptographic key
DbMpoolFile::getGet page from a file in a memory pool
DbMpoolFile::openOpen a file in a memory pool
DbMpoolFile::putReturn a page to a memory pool
DbMpoolFile::setSet memory pool page attributes
DbMpoolFile::set_clear_lenSet file page bytes to be cleared
DbMpoolFile::set_fileidSet file unique identifier
DbMpoolFile::set_flagsGeneral memory pool file configuration
DbEnv::versionReturn version information
DbEnv::log_compareCompare two Log Sequence Numbers
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/cxx_index.html b/db/docs/api_cxx/cxx_index.html deleted file mode 100644 index 1ba43a0f2..000000000 --- a/db/docs/api_cxx/cxx_index.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - -Berkeley DB: C++ Interface by Class - - - - -

C++ Interface by Class

-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassMethodDescription
DbEnv
Berkeley DB Environment Class

DbEnv::closeClose an environment

DbEnv::errError message with error string

DbEnv::errxError message

DbEnv::openOpen an environment

DbEnv::removeRemove an environment

DbEnv::set_cachesizeSet the environment cache size

DbEnv::set_data_dirSet the environment data directory

DbEnv::set_errcallSet error message callback

DbEnv::set_errfileSet error message FILE *

DbEnv::set_error_streamSet error message output stream

DbEnv::set_errpfxSet error message prefix

DbEnv::set_feedbackSet feedback callback

DbEnv::set_flagsEnvironment configuration

DbEnv::set_lg_bsizeSet log buffer size

DbEnv::set_lg_dirSet the environment logging directory

DbEnv::set_lg_maxSet log file size

DbEnv::set_lk_conflictsSet lock conflicts matrix

DbEnv::set_lk_detectSet automatic deadlock detection

DbEnv::set_lk_maxSet maximum number of locks (Deprecated)

DbEnv::set_lk_max_locksSet maximum number of locks

DbEnv::set_lk_max_lockersSet maximum number of lockers

DbEnv::set_lk_max_objectsSet maximum number of lock objects

DbEnv::set_mp_mmapsizeSet maximum mapped-in database file size

DbEnv::set_mutexlocksTurn off mutual exclusion locking

DbEnv::set_pageyieldYield the processor on each page access

DbEnv::set_paniccallSet panic callback

DbEnv::set_panicstateReset panic state

DbEnv::set_recovery_initSet recovery initialization callback

DbEnv::set_region_initFault in shared regions on initial access

DbEnv::set_serverEstablish server connection

DbEnv::set_shm_keySet system memory shared segment ID

DbEnv::set_tas_spinsSet the number of test-and-set spins

DbEnv::set_tmp_dirSet the environment temporary file directory

DbEnv::set_tx_maxSet maximum number of transactions

DbEnv::set_tx_recoverSet transaction abort recover function

DbEnv::set_tx_timestampSet recovery timestamp

DbEnv::set_verboseSet verbose messages

DbEnv::strerrorError strings

DbEnv::lock_detectPerform deadlock detection

DbEnv::lock_getAcquire a lock

DbEnv::lock_idAcquire a locker ID

DbEnv::lock_statReturn lock subsystem statistics

DbEnv::lock_vecAcquire/release locks

DbEnv::log_archiveList log and database files

DbEnv::log_compareCompare two Log Sequence Numbers

DbEnv::log_fileMap Log Sequence Numbers to log files

DbEnv::log_flushFlush log records

DbEnv::log_getGet a log record

DbEnv::log_putWrite a log record

DbEnv::log_registerRegister a file name with the log manager

DbEnv::log_statReturn log subsystem statistics

DbEnv::log_unregisterUnregister a file name with the log manager

DbEnv::memp_registerRegister input/output functions for a file in a buffer pool.

DbEnv::memp_statReturn buffer pool statistics

DbEnv::memp_syncFlush pages from a buffer pool

DbEnv::memp_trickleTrickle flush pages from a buffer pool

DbEnv::txn_beginBegin a transaction

DbEnv::txn_checkpointCheckpoint the transaction subsystem

DbEnv::txn_statReturn transaction subsystem statistics

DbEnv::versionReturn version information
Db
Berkeley DB Access Method Class

Db::closeClose a database

Db::cursorOpen a cursor into a database

Db::delDelete items from a database

Db::errError message with error string

Db::errxError message

Db::fdReturn a file descriptor from a database

Db::getGet items from a database

Db::get_byteswappedReturn if the underlying database is in host order

Db::get_typeReturn the database type

Db::joinPerform a database join on cursors

Db::key_rangeReturn estimate of key location

Db::openOpen a database

Db::putStore items into a database

Db::removeRemove a database

Db::renameRename a database

Db::set_append_recnoSet record append callback

Db::set_bt_compareSet a Btree comparison function

Db::set_bt_minkeySet the minimum number of keys per Btree page

Db::set_bt_prefixSet a Btree prefix comparison function

Db::set_cachesizeSet the database cache size

Db::set_dup_compareSet a duplicate comparison function

Db::set_errcallSet error message callback

Db::set_errfileSet error message FILE *

Db::set_errpfxSet error message prefix

Db::set_feedbackSet feedback callback

Db::set_flagsGeneral database configuration

Db::set_h_ffactorSet the Hash table density

Db::set_h_hashSet a hashing function

Db::set_h_nelemSet the Hash table size

Db::set_lorderSet the database byte order

Db::set_mallocSet a local space allocation function

Db::set_pagesizeSet the underlying database page size

Db::set_paniccallSet panic callback

Db::set_q_extentsizeSet Queue database extent size

Db::set_re_delimSet the variable-length record delimiter

Db::set_re_lenSet the fixed-length record length

Db::set_re_padSet the fixed-length record pad byte

Db::set_re_sourceSet the backing Recno text file

Db::set_reallocSet a local space allocation function

Db::statReturn database statistics

Db::syncFlush a database to stable storage

Db::upgradeUpgrade a database

Db::verifyVerify/upgrade a database
Dbc
Berkeley DB Cursor Class

Dbc::closeClose a cursor

Dbc::countReturn count of duplicates

Dbc::delDelete by cursor

Dbc::dupDuplicate a cursor

Dbc::getRetrieve by cursor

Dbc::putStore by cursor
Dbt
Key/Data Encoding Class
DbLock
Lock Class

DbLock::putRelease a lock
DbLsn
Log Sequence Number Class
DbMpoolFile
Memory Pool File Class

DbMpoolFile::closeClose a file in a buffer pool

DbMpoolFile::getGet page from a file in a buffer pool

DbMpoolFile::openOpen a file in a buffer pool

DbMpoolFile::putReturn a page to a buffer pool

DbMpoolFile::setModify meta information for buffer pool page

DbMpoolFile::syncFlush pages from a file in a buffer pool
DbTxn
Transaction Class

DbTxn::abortAbort a transaction

DbTxn::commitCommit a transaction

DbTxn::idReturn a transaction ID

DbTxn::preparePrepare a transaction for commit
DbException
Exception Class for Berkeley DB Activity

DbException::get_errnoGet the error value

DbException::whatGet the error string
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/cxx_pindex.html b/db/docs/api_cxx/cxx_pindex.html index 7bb989153..5b362d157 100644 --- a/db/docs/api_cxx/cxx_pindex.html +++ b/db/docs/api_cxx/cxx_pindex.html @@ -25,6 +25,7 @@ Configuring Berkeley DB  --enable-debug_wop Configuring Berkeley DB  --enable-diagnostic Configuring Berkeley DB  --enable-dump185 +Configuring Berkeley DB  --enable-fine_grained_lock_manager Configuring Berkeley DB  --enable-java Configuring Berkeley DB  --enable-posixmutexes Configuring Berkeley DB  --enable-pthread_api @@ -56,13 +57,17 @@ turn off system  buffering for database files turn off system  buffering for log files turn off system  buffering for log files + building for BREW  building for QNX + building for S60  building for UNIX  building for UNIX FAQ  building for VxWorks  building for VxWorks AE  building for VxWorks FAQ  building for Windows + building for Windows CE + building for Windows CE FAQ  building for Windows FAQ selecting a  byte order configuring the  C++ API @@ -79,6 +84,7 @@  Concurrent Data Store database environment  configuration  configuring Berkeley DB for UNIX systems + configuring the fine-grained lock manager  copying databases salvaging  corrupted databases  counting data items for a key @@ -104,7 +110,7 @@ Dbc::put  DB_BEFORE Db::open  DB_BTREE  DB_BUFFER_SMALL -DbMemoryException  DB_BUFFER_SMALLDB_BUFFER_SMALL DbEnv::set_flags  DB_CDB_ALLDB Db::set_flags  DB_CHKSUM  DB_CONFIG @@ -120,15 +126,18 @@ DbLogc::get  DB_CURRENT Db  DB_CXX_NO_EXCEPTIONS DbEnv  DB_CXX_NO_EXCEPTIONSDB_DBT_APPMALLOC +Db::associate  DB_DBT_APPMALLOC +Dbt  DB_DBT_APPMALLOC Dbt  DB_DBT_MALLOC +Db::associate  DB_DBT_MULTIPLE +Dbt  DB_DBT_MULTIPLE Dbt  DB_DBT_PARTIAL Dbt  DB_DBT_REALLOC Dbt  DB_DBT_USERMEM DbMpoolFile::open  DB_DIRECT DbEnv::set_flags  DB_DIRECT_DB DbEnv::set_flags  DB_DIRECT_LOGDB_DONOTINDEX +Db::associate  DB_DONOTINDEX DbEnv::set_flags  DB_DSYNC_DB DbEnv::set_flags  DB_DSYNC_LOG Db::set_flags  DB_DUP @@ -140,8 +149,10 @@ DbEnv::set_encrypt  DB_ENCRYPT_AES DbEnv::set_event_notify  DB_EVENT_PANIC DbEnv::set_event_notify  DB_EVENT_REP_CLIENT +DbEnv::set_event_notify  DB_EVENT_REP_ELECTED DbEnv::set_event_notify  DB_EVENT_REP_MASTER DbEnv::set_event_notify  DB_EVENT_REP_NEWMASTER +DbEnv::set_event_notify  DB_EVENT_REP_PERM_FAILED DbEnv::set_event_notify  DB_EVENT_REP_STARTUPDONE DbEnv::set_event_notify  DB_EVENT_WRITE_FAILED Db::open  DB_EXCL @@ -220,8 +231,6 @@ DbEnv::set_flags  DB_LOG_INMEMORY DbMpoolFile::get  DB_MPOOL_CREATE DbMpoolFile::get  DB_MPOOL_DIRTY -DbMpoolFile::put  DB_MPOOL_DISCARD -DbMpoolFile::set  DB_MPOOL_DISCARD DbMpoolFile::get  DB_MPOOL_EDIT DbMpoolFile::get  DB_MPOOL_LAST DbMpoolFile::get  DB_MPOOL_NEW @@ -267,22 +276,41 @@ Dbc::dup  DB_POSITION Dbc::get  DB_PREV DbLogc::get  DB_PREV +Dbc::get  DB_PREV_DUP Dbc::get  DB_PREV_NODUP Db::verify  DB_PRINTABLE +Db::set_priority  DB_PRIORITY_DEFAULT +Dbc::set_priority  DB_PRIORITY_DEFAULT +DbMpoolFile::put  DB_PRIORITY_DEFAULT DbMpoolFile::set_priority  DB_PRIORITY_DEFAULT +Db::set_priority  DB_PRIORITY_HIGH +Dbc::set_priority  DB_PRIORITY_HIGH +DbMpoolFile::put  DB_PRIORITY_HIGH DbMpoolFile::set_priority  DB_PRIORITY_HIGH +Db::set_priority  DB_PRIORITY_LOW +Dbc::set_priority  DB_PRIORITY_LOW +DbMpoolFile::put  DB_PRIORITY_LOW DbMpoolFile::set_priority  DB_PRIORITY_LOW +DbMpoolFile::put  DB_PRIORITY_UNCHANGED +Db::set_priority  DB_PRIORITY_VERY_HIGH +Dbc::set_priority  DB_PRIORITY_VERY_HIGH +DbMpoolFile::put  DB_PRIORITY_VERY_HIGH DbMpoolFile::set_priority  DB_PRIORITY_VERY_HIGH +Db::set_priority  DB_PRIORITY_VERY_LOW +Dbc::set_priority  DB_PRIORITY_VERY_LOW +DbMpoolFile::put  DB_PRIORITY_VERY_LOW DbMpoolFile::set_priority  DB_PRIORITY_VERY_LOW DbEnv::open  DB_PRIVATE Db::open  DB_QUEUE Db::open  DB_RDONLY DbMpoolFile::open  DB_RDONLY Db::cursor  DB_READ_COMMITTED +Db::exists  DB_READ_COMMITTED Db::get  DB_READ_COMMITTED Db::stat  DB_READ_COMMITTED DbEnv::txn_begin  DB_READ_COMMITTED Db::cursor  DB_READ_UNCOMMITTED +Db::exists  DB_READ_UNCOMMITTED Db::get  DB_READ_UNCOMMITTED Db::join  DB_READ_UNCOMMITTED Db::open  DB_READ_UNCOMMITTED @@ -308,6 +336,7 @@ DbEnv::repmgr_add_remote_site  DB_REPMGR_PEER DbEnv::rep_set_timeout  DB_REP_ACK_TIMEOUT DbEnv::rep_set_transport  DB_REP_ANYWHERE +DbEnv::rep_set_timeout  DB_REP_CHECKPOINT_DELAY DbEnv::rep_start  DB_REP_CLIENT DbEnv::repmgr_start  DB_REP_CLIENT DbEnv::rep_set_config  DB_REP_CONF_BULK @@ -319,7 +348,7 @@ DbEnv::repmgr_start  DB_REP_ELECTION DbEnv::rep_set_timeout  DB_REP_ELECTION_RETRY DbEnv::rep_set_timeout  DB_REP_ELECTION_TIMEOUT -DbEnv::repmgr_start  DB_REP_FULL_ELECTION +DbEnv::rep_set_timeout  DB_REP_FULL_ELECTION_TIMEOUT  DB_REP_HANDLE_DEAD DbEnv::rep_process_message  DB_REP_HOLDELECTION DbEnv::rep_process_message  DB_REP_IGNORE @@ -328,7 +357,6 @@  DB_REP_LOCKOUT DbEnv::rep_start  DB_REP_MASTER DbEnv::repmgr_start  DB_REP_MASTER -DbEnv::rep_process_message  DB_REP_NEWMASTER DbEnv::rep_process_message  DB_REP_NEWSITE DbEnv::rep_set_transport  DB_REP_NOBUFFER DbEnv::rep_process_message  DB_REP_NOTPERM @@ -336,6 +364,7 @@ DbEnv::rep_set_transport  DB_REP_REREQUEST  DB_REP_UNAVAIL Db::set_flags  DB_REVSPLITOFF +Db::exists  DB_RMW Db::get  DB_RMW Db::join  DB_RMW Dbc::get  DB_RMW @@ -362,14 +391,15 @@ DbEnv::memp_stat  DB_STAT_ALL DbEnv::mutex_stat  DB_STAT_ALL DbEnv::rep_stat  DB_STAT_ALL +DbEnv::repmgr_stat  DB_STAT_ALL DbEnv::txn_stat  DB_STAT_ALL -Db::stat  DB_STAT_CLEAR DbEnv::stat_print  DB_STAT_CLEAR DbEnv::lock_stat  DB_STAT_CLEAR DbEnv::log_stat  DB_STAT_CLEAR DbEnv::memp_stat  DB_STAT_CLEAR DbEnv::mutex_stat  DB_STAT_CLEAR DbEnv::rep_stat  DB_STAT_CLEAR +DbEnv::repmgr_stat  DB_STAT_CLEAR DbSequence::stat  DB_STAT_CLEAR DbEnv::txn_stat  DB_STAT_CLEAR DbEnv::lock_stat  DB_STAT_LOCK_CONF @@ -394,6 +424,7 @@ DbEnv::txn_begin  DB_TXN_NOSYNC DbTxn::commit  DB_TXN_NOSYNC Db::set_flags  DB_TXN_NOT_DURABLE +DbEnv::set_flags  DB_TXN_NOWAIT DbEnv::txn_begin  DB_TXN_NOWAIT DbEnv::set_app_dispatch  DB_TXN_PRINT Db::cursor  DB_TXN_SNAPSHOT @@ -401,7 +432,9 @@ DbEnv::txn_begin  DB_TXN_SNAPSHOT DbEnv::txn_begin  DB_TXN_SYNC DbTxn::commit  DB_TXN_SYNC +DbEnv::txn_begin  DB_TXN_WAIT DbEnv::set_flags  DB_TXN_WRITE_NOSYNC +DbEnv::txn_begin  DB_TXN_WRITE_NOSYNC Db::open  DB_UNKNOWN Db::set_feedback  DB_UPGRADE DbEnv::open  DB_USE_ENVIRON @@ -409,6 +442,8 @@ DbEnv::open  DB_USE_ENVIRON_ROOT DbEnv::remove  DB_USE_ENVIRON_ROOT DbEnv::set_verbose  DB_VERB_DEADLOCK +DbEnv::set_verbose  DB_VERB_FILEOPS +DbEnv::set_verbose  DB_VERB_FILEOPS_ALL DbEnv::set_verbose  DB_VERB_RECOVERY DbEnv::set_verbose  DB_VERB_REGISTER DbEnv::set_verbose  DB_VERB_REPLICATION @@ -422,7 +457,6 @@ DbEnv::set_flags  DB_YIELDCPU  deadlocks introduction to  debuggingdebugging applications  degree 1 isolation  degree 2 isolation  degrees of isolation @@ -463,7 +497,7 @@ remote  filesystems page  fill factor  Flash memory configurations -configuring a small memory  footprint library +configuring a small memory  footprint library Berkeley DB  free-threaded handles  FreeBSD specifying a database  hash @@ -554,7 +588,7 @@  retrieving records with a cursor turn off  reverse splits in Btree databases  RPC client -configuring a  RPC client/server +configuring a  RPC client/server introduction to  rpc client/server  RPC FAQ  RPC server @@ -581,11 +615,11 @@  SunOS loading Berkeley DB with  Tcl using Berkeley DB with  Tcl -configuring the  Tcl API +configuring the  Tcl API  Tcl API programming notes  Tcl FAQ  temporary files -configuring the  test suite +configuring the  test suite running the  test suite running the  test suite under UNIX running the  test suite under Windows @@ -633,11 +667,14 @@  Upgrading to release 4.3  Upgrading to release 4.4  Upgrading to release 4.5 + Upgrading to release 4.6  utilities database  verification building for  VxWorks FAQ  VxWorks notes running the test suite under  Windows +building for  Windows CE FAQ + Windows CE notes building for  Windows FAQ  Windows notes  XA FAQ @@ -645,6 +682,6 @@  __db.001 -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_associate.html b/db/docs/api_cxx/db_associate.html index 967c68e5d..3663c332d 100644 --- a/db/docs/api_cxx/db_associate.html +++ b/db/docs/api_cxx/db_associate.html @@ -1,6 +1,5 @@ - - - + + @@ -45,8 +44,9 @@ failure, and returns 0 on success.

Parameters

-
callback
The callback parameter is a callback function that creates a -secondary key from a given primary key and data pair. +
callback
The callback parameter is a callback function that creates the +set of secondary keys corresponding to a given primary key and data +pair.

The callback parameter may be NULL if both the primary and secondary database handles were opened with the DB_RDONLY flag.

The callback takes four arguments:

@@ -57,21 +57,41 @@ database handles were opened with the Dbt in which the callback function should fill in data and size fields that describe -the secondary key. +the secondary key or keys.
- -

If the callback function needs to allocate memory for the data -field rather than simply pointing into the primary key or datum, the -flags field of the returned Dbt should be set to -DB_DBT_APPMALLOC, which indicates that Berkeley DB should free the -memory when it is done with it.

- -

If any key/data pair in the primary yields a null secondary key and +

The callback optionally returns some special values:

+
+
DB_DBT_APPMALLOC
If the callback function needs to allocate memory for the result +data field (rather than simply pointing into the primary key or datum), +DB_DBT_APPMALLOC should be set in the flags field of the +result Dbt, which indicates that Berkeley DB should free the +memory when it is done with it. +
DB_DBT_MULTIPLE
To return multiple secondary keys, DB_DBT_MULTIPLE should be set +in the flags field of the result Dbt, which +indicates Berkeley DB should treat the size field as the number of +secondary keys (zero or more), and the data field as a pointer +to an array of that number of Dbts describing the set of +secondary keys. +

When multiple secondary keys are returned, keys may not be repeated. +In other words, there must be no repeated record numbers in the array +for Recno and Queue databases, and keys must not compare equally using +the secondary database's comparison function for Btree and Hash +databases. If keys are repeated, operations may fail and the secondary +may become inconsistent with the primary.

+

The DB_DBT_APPMALLOC flag may be set for any Dbt in the +array of returned Dbt's to indicate that Berkeley DB should free the +memory referenced by that particular Dbt's data field when it +is done with it.

+

The DB_DBT_APPMALLOC flag may be combined with +DB_DBT_MULTIPLE in the result Dbt's flag +field to indicate that Berkeley DB should free the array once it is done with +all of the returned keys.

+
DB_DONOTINDEX
If any key/data pair in the primary yields a null secondary key and should be left out of the secondary index, the callback function may optionally return DB_DONOTINDEX. Otherwise, the callback function should return 0 in case of success or an error outside of the Berkeley DB name space in case of failure; the error code will be returned -from the Berkeley DB call that initiated the callback.

+from the Berkeley DB call that initiated the callback.

If the callback function returns DB_DONOTINDEX for any key/data pairs in the primary database, the secondary index will not contain any reference to those key/data pairs, and such operations as cursor @@ -79,6 +99,10 @@ iterations and range queries will reflect only the corresponding subset of the database. If this is not desirable, the application should ensure that the callback function is well-defined for all possible values and never returns DB_DONOTINDEX.

+

Returning DB_DONOTINDEX is equivalent to setting +DB_DBT_MULTIPLE on the result Dbt and setting +the size field to zero.

+

Berkeley DB is not re-entrant. Callback functions should not attempt to make library calls (for example, to release locks or close open handles). Re-entering Berkeley DB is not guaranteed to work correctly, and the results @@ -125,15 +149,16 @@ with the DB_THREAD flag it is s of control after the Db::associate method has returned. Note also that either secondary keys must be unique or the secondary database must be configured with support for duplicate data items. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The Db::associate method @@ -161,6 +186,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_class.html b/db/docs/api_cxx/db_class.html index 61b611659..5103a661c 100644 --- a/db/docs/api_cxx/db_class.html +++ b/db/docs/api_cxx/db_class.html @@ -1,6 +1,5 @@ - - + @@ -105,6 +104,6 @@ Db

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_close.html b/db/docs/api_cxx/db_close.html index 90529a2d7..6b85a86cd 100644 --- a/db/docs/api_cxx/db_close.html +++ b/db/docs/api_cxx/db_close.html @@ -1,6 +1,5 @@ - - + @@ -92,6 +91,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_compact.html b/db/docs/api_cxx/db_compact.html index a3985945e..fe3b4a707 100644 --- a/db/docs/api_cxx/db_compact.html +++ b/db/docs/api_cxx/db_compact.html @@ -1,6 +1,5 @@ - - + @@ -141,6 +140,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_cursor.html b/db/docs/api_cxx/db_cursor.html index 77709be8a..16ed07634 100644 --- a/db/docs/api_cxx/db_cursor.html +++ b/db/docs/api_cxx/db_cursor.html @@ -1,6 +1,5 @@ - - - + + @@ -42,18 +41,18 @@ a pointer to the allocated cursor is copied.

flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one or more of the following values:
-
DB_READ_COMMITTED
This cursor will have degree 2 isolation. This ensures the stability -of the current data item read by this cursor but permits data read by -this cursor to be modified or deleted prior to the commit of the +
DB_READ_COMMITTED
Configure a transactional cursor to have degree 2 isolation. This ensures +the stability of the current data item read by this cursor but permits data +read by this cursor to be modified or deleted prior to the commit of the transaction for this cursor. -
DB_READ_UNCOMMITTED
This cursor will have degree 1 isolation. Read operations performed by -the cursor may return modified but not yet committed data. Silently -ignored if the DB_READ_UNCOMMITTED flag was not specified when -the underlying database was opened. +
DB_READ_UNCOMMITTED
Configure a transactional cursor to have degree 1 isolation. Read +operations performed by the cursor may return modified but not yet +committed data. Silently ignored if the DB_READ_UNCOMMITTED +flag was not specified when the underlying database was opened.
DB_WRITECURSOR
Specify that the cursor will be used to update the database. The underlying database environment must have been opened using the DB_INIT_CDB flag. -
DB_TXN_SNAPSHOT
Specify that the cursor operate with read-only +
DB_TXN_SNAPSHOT
Configure a transactional cursor to operate with read-only snapshot isolation. For databases with the DB_MULTIVERSION flag set, data values will be read as they are when the cursor is opened, without taking read locks. This @@ -95,6 +94,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_del.html b/db/docs/api_cxx/db_del.html index a9b0edacd..09affeba0 100644 --- a/db/docs/api_cxx/db_del.html +++ b/db/docs/api_cxx/db_del.html @@ -1,6 +1,5 @@ - - + @@ -47,15 +46,16 @@ failure, and returns 0 on success.

flags
The flags parameter is currently unused, and must be set to 0.
key
The key Dbt operated on. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The Db::del method @@ -95,6 +95,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_err.html b/db/docs/api_cxx/db_err.html index 1b083aab4..192c3a1c6 100644 --- a/db/docs/api_cxx/db_err.html +++ b/db/docs/api_cxx/db_err.html @@ -1,7 +1,6 @@ - - + @@ -80,6 +79,6 @@ string.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_exists.html b/db/docs/api_cxx/db_exists.html new file mode 100644 index 000000000..c2d74107c --- /dev/null +++ b/db/docs/api_cxx/db_exists.html @@ -0,0 +1,82 @@ + + + + + +Berkeley DB: Db::exists + + + + + + + +
+

Db::exists

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +Db::exists(DbTxn *txnid, Dbt *key, u_int32_t flags); +

+
+

Description: Db::exists

+

The Db::exists method returns if the specified key appears in the +database.

+

The Db::exists method will return DB_NOTFOUND if the specified key is not in the database. +The Db::exists method will return DB_KEYEMPTY if the database is a Queue or Recno database and +the specified key exists, but was never explicitly created by the +application or was later deleted. +Unless otherwise specified, the Db::exists method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or +one of the following values: +In addition, the following flags may be set by +bitwise inclusively OR'ing them into the flags parameter: +
+
DB_READ_COMMITTED
Configure a transactional read operation to have degree 2 isolation (the +read is not repeatable). +
DB_READ_UNCOMMITTED
Configure a transactional read operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the +DB_READ_UNCOMMITTED flag was not specified when the underlying +database was opened. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock. +

Because the Db::exists method will not hold locks across +Berkeley DB calls in non-transactional operations, the DB_RMW flag to +the Db::exists call is meaningful only in the presence of +transactions.

+
+
key
The key Dbt operated on. +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +
+
+

Class

+Db +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/db_fd.html b/db/docs/api_cxx/db_fd.html index b0440c39b..d9c740c29 100644 --- a/db/docs/api_cxx/db_fd.html +++ b/db/docs/api_cxx/db_fd.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_get.html b/db/docs/api_cxx/db_get.html index 304b9e645..0b797fe9d 100644 --- a/db/docs/api_cxx/db_get.html +++ b/db/docs/api_cxx/db_get.html @@ -1,6 +1,5 @@ - - - + + @@ -121,17 +120,18 @@ into secondary indices using the Db::asso

See DbMultipleDataIterator for more information.

-
DB_READ_COMMITTED
Perform the get operation with degree 2 isolation. The read is not -repeatable. -
DB_READ_UNCOMMITTED
Perform the get operation with degree 1 isolation, reading modified but -not yet committed data. Silently ignored if the +
DB_READ_COMMITTED
Configure a transactional get operation to have degree 2 isolation (the +read is not repeatable). +
DB_READ_UNCOMMITTED
Configure a transactional get operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened. -
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.

Because the Db::get method will not hold locks across Berkeley DB calls in non-transactional operations, the DB_RMW flag to the Db::get call is meaningful only in the presence of @@ -139,15 +139,16 @@ transactions.

key
The key Dbt operated on.
pkey
The pkey parameter is the return key from the primary database. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The Db::get method @@ -197,6 +198,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_get_byteswapped.html b/db/docs/api_cxx/db_get_byteswapped.html index 50169a3d8..82075514f 100644 --- a/db/docs/api_cxx/db_get_byteswapped.html +++ b/db/docs/api_cxx/db_get_byteswapped.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_get_mpf.html b/db/docs/api_cxx/db_get_mpf.html index b92c1074f..7419aaa70 100644 --- a/db/docs/api_cxx/db_get_mpf.html +++ b/db/docs/api_cxx/db_get_mpf.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_get_type.html b/db/docs/api_cxx/db_get_type.html index a519b8fb4..da16c3231 100644 --- a/db/docs/api_cxx/db_get_type.html +++ b/db/docs/api_cxx/db_get_type.html @@ -1,6 +1,5 @@ - - + @@ -63,6 +62,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_getenv.html b/db/docs/api_cxx/db_getenv.html index 2c501c008..2e36d41d4 100644 --- a/db/docs/api_cxx/db_getenv.html +++ b/db/docs/api_cxx/db_getenv.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_join.html b/db/docs/api_cxx/db_join.html index 08ca7c37f..f1fc2b85c 100644 --- a/db/docs/api_cxx/db_join.html +++ b/db/docs/api_cxx/db_join.html @@ -1,6 +1,5 @@ - - - + + @@ -51,14 +50,16 @@ The data parameter is left unchanged. In addition, the following flag may be set by bitwise inclusively OR'ing it into the flags parameter:

-
DB_READ_UNCOMMITTED
Read modified but not yet committed data. Silently ignored if the +
DB_READ_UNCOMMITTED
Configure a transactional join operation to have degree 1 isolation, +reading modified but not yet committed data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened. -
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.
Dbc::close
Close the returned cursor and release all resources. (Closing the cursors in curslist is the responsibility of the caller.) @@ -130,6 +131,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_key_range.html b/db/docs/api_cxx/db_key_range.html index 7db750f40..b6d45aa0e 100644 --- a/db/docs/api_cxx/db_key_range.html +++ b/db/docs/api_cxx/db_key_range.html @@ -1,6 +1,5 @@ - - + @@ -59,15 +58,17 @@ contains three elements of type double: less, equal, and field less is 0.05, 5% of the keys in the database are less than the key parameter. The value for equal will be zero if there is no matching key, and will be non-zero otherwise. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. The Db::key_range method does not retain the locks it acquires for the +the operation will be implicitly transaction protected. +The Db::key_range method does not retain the locks it acquires for the life of the transaction, so estimates may not be repeatable.
flags
The flags parameter is currently unused, and must be set to 0. @@ -103,6 +104,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_list.html b/db/docs/api_cxx/db_list.html index f3d3c5fa4..e768bbed8 100644 --- a/db/docs/api_cxx/db_list.html +++ b/db/docs/api_cxx/db_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Databases and Related Methods

- + @@ -20,6 +19,7 @@ + @@ -30,6 +30,7 @@ + @@ -58,12 +59,13 @@ +
Database OperationsDescription
DbCreate a database handle
Db::cursorCreate a cursor
Db::delDelete items from a database
Db::err, Db::errxError message
Db::existsReturn if an item appears in a database
Db::fdReturn a file descriptor from a database
Db::get, Db::pgetGet items from a database
Db::get_byteswappedReturn if the underlying database is in host order
Db::putStore items into a database
Db::removeRemove a database
Db::renameRename a database
Db::set_prioritySet cache page priority
Db::stat, Db::stat_printDatabase statistics
Db::syncFlush a database to stable storage
Db::truncateEmpty a database
Db::set_re_padSet the fixed-length record pad byte
Db::set_re_sourceSet the backing Recno text file
Hash Configuration
Db::set_h_compareSet a Hash comparison function
Db::set_h_ffactorSet the Hash table density
Db::set_h_hashSet a hashing function
Db::set_h_nelemSet the Hash table size
Queue Configuration
Db::set_q_extentsizeSet Queue database extent size
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_open.html b/db/docs/api_cxx/db_open.html index 314095537..4d8ab1eca 100644 --- a/db/docs/api_cxx/db_open.html +++ b/db/docs/api_cxx/db_open.html @@ -1,6 +1,5 @@ - - - + + @@ -30,6 +29,9 @@ int Db::get_dbname(const char **filenamep, const char **dbnamep);

int +Db::get_multiple() +

+int Db::get_open_flags(u_int32_t *flagsp);

int @@ -109,11 +111,11 @@ not supported by the queue format.

DB_RDONLY
Open the database for reading only. Any attempt to modify items in the database will fail, regardless of the actual permissions of any underlying files. -
DB_READ_UNCOMMITTED
Support read operations with degree 1 isolation. Read operations on the -database may request the return of modified but not yet committed data. -This flag must be specified on all Db handles used to perform -dirty reads or database updates, otherwise requests for dirty reads may -not be honored and the read may block. +
DB_READ_UNCOMMITTED
Support transactional read operations with degree 1 isolation. Read +operations on the database may request the return of modified but not +yet committed data. This flag must be specified on all Db +handles used to perform dirty reads or database updates, otherwise +requests for dirty reads may not be honored and the read may block.
DB_THREAD
Cause the Db handle returned by Db::open to be free-threaded; that is, concurrently usable by multiple threads in the address space. @@ -135,14 +137,16 @@ defaults, and is not further specified by Berkeley DB. System shared memory segments created by the database open are created with mode mode, unmodified by the process' umask value. If mode is 0, the database open will use a default mode of readable and writable by both owner and group.

-
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. Note that transactionally protected operations on a Db handle +the operation will be implicitly transaction protected. +Note that transactionally protected operations on a Db handle requires the Db handle itself be transactionally protected during its open. Also note that the transaction must be committed before the handle is closed; see Berkeley DB @@ -212,8 +216,8 @@ to grant a lock in the allowed time, the Db::open method will fail and either return DB_LOCK_NOTGRANTED or throw a DbLockNotGrantedException exception.


-

Description: Db::get_database

-

The Db::get_database method returns the current filename and database +

Description: Db::get_dbname

+

The Db::get_dbname method returns the current filename and database name.

Parameters

@@ -222,14 +226,24 @@ a pointer to the current filename is copied.
dbnamep
The dbnamep parameter references memory into which a pointer to the current database name is copied.
-

The Db::get_database method may be called at any time during the life of the +

The Db::get_dbname method may be called at any time during the life of the application.

-

The Db::get_database method +

The Db::get_dbname method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on failure, and returns 0 on success.


+

Description: Db::get_multiple

+

The Db::get_multiple method returns non-zero if the Db handle +references a physical file supporting multiple databases.

+

In this case, the Db handle is a handle on a database whose key +values are the names of the databases stored in the physical file and +whose data values are opaque objects. No keys or data values may be +modified or stored using the database handle.

+

The Db::get_multiple method may not be called before the Db::open method has been +called.

+

Description: Db::get_open_flags

The Db::get_open_flags method returns the current open method flags.

The Db::get_open_flags method may not be called before the Db::open method has been @@ -259,6 +273,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_put.html b/db/docs/api_cxx/db_put.html index aa948d33e..7697154bd 100644 --- a/db/docs/api_cxx/db_put.html +++ b/db/docs/api_cxx/db_put.html @@ -1,6 +1,5 @@ - - + @@ -73,15 +72,16 @@ database.

data
The data Dbt operated on.
key
The key Dbt operated on. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected. @@ -127,6 +127,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_remove.html b/db/docs/api_cxx/db_remove.html index 37c96adb9..b1cc3a3d9 100644 --- a/db/docs/api_cxx/db_remove.html +++ b/db/docs/api_cxx/db_remove.html @@ -1,7 +1,6 @@ - - + @@ -91,6 +90,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_rename.html b/db/docs/api_cxx/db_rename.html index e46e6253f..b1a06cafc 100644 --- a/db/docs/api_cxx/db_rename.html +++ b/db/docs/api_cxx/db_rename.html @@ -1,7 +1,6 @@ - - + @@ -95,6 +94,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_alloc.html b/db/docs/api_cxx/db_set_alloc.html index 6f8197a29..8d331afe0 100644 --- a/db/docs/api_cxx/db_set_alloc.html +++ b/db/docs/api_cxx/db_set_alloc.html @@ -1,7 +1,6 @@ - - + @@ -92,6 +91,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_append_recno.html b/db/docs/api_cxx/db_set_append_recno.html index 814c1cee0..f0df7797a 100644 --- a/db/docs/api_cxx/db_set_append_recno.html +++ b/db/docs/api_cxx/db_set_append_recno.html @@ -1,6 +1,5 @@ - - + @@ -83,6 +82,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_bt_compare.html b/db/docs/api_cxx/db_set_bt_compare.html index fd65aaf14..0305d8134 100644 --- a/db/docs/api_cxx/db_set_bt_compare.html +++ b/db/docs/api_cxx/db_set_bt_compare.html @@ -1,6 +1,5 @@ - - - + + @@ -92,6 +91,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_bt_minkey.html b/db/docs/api_cxx/db_set_bt_minkey.html index 7eb5a136a..b27bb8220 100644 --- a/db/docs/api_cxx/db_set_bt_minkey.html +++ b/db/docs/api_cxx/db_set_bt_minkey.html @@ -1,6 +1,5 @@ - - + @@ -90,6 +89,6 @@ leaf page in bt_minkeyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_bt_prefix.html b/db/docs/api_cxx/db_set_bt_prefix.html index eec5af02f..95288ceb0 100644 --- a/db/docs/api_cxx/db_set_bt_prefix.html +++ b/db/docs/api_cxx/db_set_bt_prefix.html @@ -1,6 +1,5 @@ - - + @@ -95,6 +94,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_cachesize.html b/db/docs/api_cxx/db_set_cachesize.html index 4321c99e7..df8fd493d 100644 --- a/db/docs/api_cxx/db_set_cachesize.html +++ b/db/docs/api_cxx/db_set_cachesize.html @@ -1,7 +1,6 @@ - - - + + @@ -48,8 +47,9 @@ allocated contiguously on some architectures. For example, some releases of Solaris limit the amount of memory that may be allocated contiguously by a process. If ncache is 0 or 1, the cache will be allocated contiguously in memory. If it is greater than 1, the cache -will be broken up into ncache equally sized, separate pieces of -memory.

+will be split across ncache separate regions, where the +region size is equal to the initial cache size divided by +ncache.

Because databases opened within Berkeley DB environments use the cache specified to the environment, it is an error to attempt to set a cache in a database created within an environment.

@@ -74,10 +74,8 @@ encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

EINVAL
If the specified cache size was impossibly small; -called in a database environment; the method was called after -Db::open -was called; or if an +Db::open was called; or if an invalid flag value or parameter was specified.

@@ -109,6 +107,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_dup_compare.html b/db/docs/api_cxx/db_set_dup_compare.html index 6a5e30a0d..c39636db5 100644 --- a/db/docs/api_cxx/db_set_dup_compare.html +++ b/db/docs/api_cxx/db_set_dup_compare.html @@ -1,6 +1,5 @@ - - + @@ -90,6 +89,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_encrypt.html b/db/docs/api_cxx/db_set_encrypt.html index 75597da1d..cb7f8fd50 100644 --- a/db/docs/api_cxx/db_set_encrypt.html +++ b/db/docs/api_cxx/db_set_encrypt.html @@ -1,7 +1,6 @@ - - + @@ -94,6 +93,6 @@ encryption flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_errcall.html b/db/docs/api_cxx/db_set_errcall.html index 770975cf8..82c93b4c9 100644 --- a/db/docs/api_cxx/db_set_errcall.html +++ b/db/docs/api_cxx/db_set_errcall.html @@ -1,7 +1,6 @@ - - + @@ -80,6 +79,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_errfile.html b/db/docs/api_cxx/db_set_errfile.html index 47f457961..084204a1d 100644 --- a/db/docs/api_cxx/db_set_errfile.html +++ b/db/docs/api_cxx/db_set_errfile.html @@ -1,7 +1,6 @@ - - - + + @@ -31,9 +30,9 @@ void Db::get_errfile(FILE **errfilep);

Description: Db::set_errfile

When an error occurs in the Berkeley DB library, an exception is thrown or an error return value is returned by the interface. In some cases, -however, the errno value may be insufficient to completely -describe the cause of the error, especially during initial application -debugging. +however, the exception or returned value may be insufficient to +completely describe the cause of the error, especially during initial +application debugging.

The DbEnv::set_errcall and Db::set_errcall methods are used to enhance the mechanism for reporting error messages to the application by setting a C library FILE * to be used for displaying additional Berkeley DB @@ -48,7 +47,18 @@ should not mix these approaches.

(":") (if a prefix string was previously specified using Db::set_errpfx or DbEnv::set_errpfx), an error string, and a trailing <newline> character.

-

Setting errfile to NULL unconfigures the interface.

+

The default configuration when applications first create Db or +DbEnv handles is as if the DbEnv::set_errfile or +Db::set_errfile methods were called with the standard error output +(stderr) specified as the FILE * argument. Applications wanting no +output at all can turn off this default configuration by calling the +DbEnv::set_errfile or Db::set_errfile methods with NULL as the +FILE * argument. Additionally, explicitly configuring the error output +channel using any of the DbEnv::set_errfile, +Db::set_errfile, DbEnv::set_errcall, +Db::set_errcall, DbEnv::set_error_stream or +Db::set_error_stream methods will also turn off this default output +for the application.

This error logging enhancement does not slow performance or significantly increase application size, and may be run during normal operation as well as during application debugging.

@@ -89,6 +99,6 @@ FILE * in errfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_error_stream.html b/db/docs/api_cxx/db_set_error_stream.html index c4bb79d52..d34b06f34 100644 --- a/db/docs/api_cxx/db_set_error_stream.html +++ b/db/docs/api_cxx/db_set_error_stream.html @@ -1,7 +1,6 @@ - - + @@ -73,6 +72,6 @@ be used for additional error information.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_errpfx.html b/db/docs/api_cxx/db_set_errpfx.html index ef8101b2b..88d9452ae 100644 --- a/db/docs/api_cxx/db_set_errpfx.html +++ b/db/docs/api_cxx/db_set_errpfx.html @@ -1,7 +1,6 @@ - - + @@ -73,6 +72,6 @@ error prefix in errpfxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_feedback.html b/db/docs/api_cxx/db_set_feedback.html index 5f37e396b..40265c7cc 100644 --- a/db/docs/api_cxx/db_set_feedback.html +++ b/db/docs/api_cxx/db_set_feedback.html @@ -1,7 +1,6 @@ - - + @@ -72,6 +71,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_flags.html b/db/docs/api_cxx/db_set_flags.html index 5067b3462..5541ea716 100644 --- a/db/docs/api_cxx/db_set_flags.html +++ b/db/docs/api_cxx/db_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -296,6 +295,6 @@ current flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_h_compare.html b/db/docs/api_cxx/db_set_h_compare.html new file mode 100644 index 000000000..053fc3e57 --- /dev/null +++ b/db/docs/api_cxx/db_set_h_compare.html @@ -0,0 +1,92 @@ + + + + + +Berkeley DB: Db::set_h_compare + + + + + + + +
+

Db::set_h_compare

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+extern "C" { + typedef int (*compare_fcn_type)(DB *db, const DBT *dbt1, const DBT *dbt2); +}; +int +Db::set_h_compare(compare_fcn_type compare_fcn); +

+
+

Description: Db::set_h_compare

+

Set the Hash key comparison function. The comparison function is called +whenever it is necessary to compare a key specified by the application +with a key currently stored in the database.

+

If no comparison function is specified, a byte-by-byte comparison is +performed.

+

The Db::set_h_compare method configures operations performed using the specified +Db handle, not all operations performed on the underlying +database.

+

The Db::set_h_compare method may not be called after the Db::open method is called. +If the database already exists when +Db::open is called, the information specified to Db::set_h_compare must +be the same as that historically used to create the database or +corruption can occur.

+

The Db::set_h_compare method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
compare_fcn
The compare_fcn function is the application-specified Hash +comparison function. The comparison function takes three parameters: +
+
db
The db parameter is the enclosing database handle. +
dbt1
The dbt1 parameter is the Dbt representing the +application supplied key. +
dbt2
The dbt2 parameter is the Dbt representing the +current database's key. +
+

The compare_fcn function must return an integer value less +than, equal to, or greater than zero if the first key parameter is +considered to be respectively less than, equal to, or greater than the +second key parameter. The comparison function must correctly handle any +key values used by the application (possibly including zero-length +keys). The data and size fields of the Dbt are +the only fields that may be used for the purposes of this comparison, +and no particular alignment of the memory to which by the data +field refers may be assumed.

+
+

Errors

+

The Db::set_h_compare method +may fail and throw +DbException, +encapsulating one of the following non-zero errors, or return one of +the following non-zero errors:

+
+
EINVAL
If the method was called after Db::open was called; or if an +invalid flag value or parameter was specified. +
+
+

Class

+Db +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/db_set_h_ffactor.html b/db/docs/api_cxx/db_set_h_ffactor.html index 0475e217d..e4db844d2 100644 --- a/db/docs/api_cxx/db_set_h_ffactor.html +++ b/db/docs/api_cxx/db_set_h_ffactor.html @@ -1,6 +1,5 @@ - - + @@ -88,6 +87,6 @@ hash table density in h_ffactorp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_h_hash.html b/db/docs/api_cxx/db_set_h_hash.html index 98537b5c1..2e6befb81 100644 --- a/db/docs/api_cxx/db_set_h_hash.html +++ b/db/docs/api_cxx/db_set_h_hash.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_h_nelem.html b/db/docs/api_cxx/db_set_h_nelem.html index d4da2c4f6..7c873410e 100644 --- a/db/docs/api_cxx/db_set_h_nelem.html +++ b/db/docs/api_cxx/db_set_h_nelem.html @@ -1,6 +1,5 @@ - - + @@ -87,6 +86,6 @@ estimate of the final size of the hash table in h_nelemp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_lorder.html b/db/docs/api_cxx/db_set_lorder.html index add3c5d17..7bcc389ba 100644 --- a/db/docs/api_cxx/db_set_lorder.html +++ b/db/docs/api_cxx/db_set_lorder.html @@ -1,6 +1,5 @@ - - + @@ -92,6 +91,6 @@ database byte order in lorderp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_malloc.html b/db/docs/api_cxx/db_set_malloc.html deleted file mode 100644 index e38092fcb..000000000 --- a/db/docs/api_cxx/db_set_malloc.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Berkeley DB: Db::set_malloc - - - - - - - -
-

Db::set_malloc

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-extern "C" { - typedef void *(*db_malloc_fcn_type)(size_t); -}; -int -Db::set_malloc(db_malloc_fcn_type db_malloc); -

-

Description

-

Set the allocation function used by the Db methods to allocate -memory in which to return key/data items to the application. -

The DB_DBT_MALLOC flag, when specified in the Dbt object, -will cause the Db methods to allocate and re-allocate memory which -then becomes the responsibility of the calling application. See Dbt -for more information. -

On systems where there may be multiple library versions of malloc (notably -Windows NT), specifying the DB_DBT_MALLOC flag will fail because -the Db library will allocate memory from a different heap than -the application will use to free it. To avoid this problem, the -Db::set_malloc method can be used to pass Berkeley DB a reference to the -application's allocation routine, in which case it will be used to -allocate the memory returned when the DB_DBT_MALLOC flag is set. -

The method specified must match the calling conventions of the -ANSI C X3.159-1989 (ANSI C) library routine of the same name. -

The Db::set_malloc interface may only be used to configure Berkeley DB before -the Db::open interface is called. -

The Db::set_malloc method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-Db -

See Also

-Db::close, -Db::cursor, -Db::del, -Db::err, -Db::fd, -Db::get, -Db::get_byteswapped, -Db::get_type, -Db::join, -Db::key_range, -Db::open, -Db::put, -Db::remove, -Db::set_bt_compare, -Db::set_bt_minkey, -Db::set_bt_prefix, -Db::set_cachesize, -Db::set_dup_compare, -Db::set_errcall, -Db::set_errfile, -Db::set_errpfx, -Db::set_flags, -Db::set_h_ffactor, -Db::set_h_hash, -Db::set_h_nelem, -Db::set_lorder, -Db::set_malloc, -Db::set_pagesize, -Db::set_paniccall, -Db::set_q_extentsize, -Db::set_realloc, -Db::set_re_delim, -Db::set_re_len, -Db::set_re_pad, -Db::set_re_source, -Db::stat, -Db::sync, -Db::upgrade -and -Db::verify. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/db_set_msg_stream.html b/db/docs/api_cxx/db_set_msg_stream.html index 6f75880d9..3eb61fe4c 100644 --- a/db/docs/api_cxx/db_set_msg_stream.html +++ b/db/docs/api_cxx/db_set_msg_stream.html @@ -1,7 +1,6 @@ - - + @@ -64,6 +63,6 @@ be used for additional message information.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_msgcall.html b/db/docs/api_cxx/db_set_msgcall.html index 73d5acc7c..6c4198885 100644 --- a/db/docs/api_cxx/db_set_msgcall.html +++ b/db/docs/api_cxx/db_set_msgcall.html @@ -1,7 +1,6 @@ - - + @@ -71,6 +70,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_msgfile.html b/db/docs/api_cxx/db_set_msgfile.html index 787ce7e65..5a14a4b82 100644 --- a/db/docs/api_cxx/db_set_msgfile.html +++ b/db/docs/api_cxx/db_set_msgfile.html @@ -1,7 +1,6 @@ - - + @@ -80,6 +79,6 @@ FILE * in msgfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_pagesize.html b/db/docs/api_cxx/db_set_pagesize.html index de4c2f96f..77402a59c 100644 --- a/db/docs/api_cxx/db_set_pagesize.html +++ b/db/docs/api_cxx/db_set_pagesize.html @@ -1,6 +1,5 @@ - - + @@ -91,6 +90,6 @@ page size in pagesizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_paniccall.html b/db/docs/api_cxx/db_set_paniccall.html deleted file mode 100644 index 677f3fc98..000000000 --- a/db/docs/api_cxx/db_set_paniccall.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - -Berkeley DB: Db::set_paniccall - - - - - - - -
-

Db::set_paniccall

-
-API -Ref
-


- -

-#include <db_cxx.h>
-

-int -Db::set_paniccall(void (*db_panic_fcn)(DbEnv *dbenv, int errval)); -

-
-

Description: Db::set_paniccall

-

Errors can occur in the Berkeley DB library where the only solution is to shut -down the application and run recovery (for example, if Berkeley DB is unable -to allocate heap memory). In such cases, the Berkeley DB methods will -either return DB_RUNRECOVERY or throw a DbRunRecoveryException, -depending on the API configuration. -It is often easier to simply exit the application when such errors occur -rather than gracefully return up the stack. The Db::set_paniccall method -specifies a function to be called when -DB_RUNRECOVERY is about to be returned or DbRunRecoveryException -is about to be thrown -from a Berkeley DB method.

-

For Db handles opened inside of Berkeley DB environments, calling the -Db::set_paniccall method affects the entire environment and is equivalent to calling -the DbEnv::set_paniccall method.

-

The Db::set_paniccall method may be called at any time during the life of the -application.

-

The Db::set_paniccall method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
db_panic_fcn
The db_panic_fcn parameter is the application-specified function -called in the case of a database environment panic. The function takes -two arguments: -
-
dbenv
The dbenv parameter is the enclosing database environment handle. -
errval
The errval parameter is the error value that would have been -returned to the caller if DB_RUNRECOVERY were not going to be -returned instead. -
-
-
-

Class

-Db -

See Also

-Databases and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_cxx/db_set_priority.html b/db/docs/api_cxx/db_set_priority.html new file mode 100644 index 000000000..e0348590d --- /dev/null +++ b/db/docs/api_cxx/db_set_priority.html @@ -0,0 +1,71 @@ + + + + + +Berkeley DB: Db::set_priority + + + + + + + +
+

Db::set_priority

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +Db::set_priority(DB_CACHE_PRIORITY priority); +

+int +Db::get_priority(DB_CACHE_PRIORITY *priorityp); +

+
+

Description: Db::set_priority

+ +

Set the cache priority for pages referenced by the +Db +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The Db::set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

+

The Db::set_priority method may be called at any time during the life of the +application.

+

The Db::set_priority method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
priority
The priority parameter must be set to one of the following +values: +
+
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded. +
+
+
+

Class

+Db +

See Also

+Databases and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/db_set_q_extentsize.html b/db/docs/api_cxx/db_set_q_extentsize.html index 63f24adda..3a63aff85 100644 --- a/db/docs/api_cxx/db_set_q_extentsize.html +++ b/db/docs/api_cxx/db_set_q_extentsize.html @@ -1,6 +1,5 @@ - - + @@ -87,6 +86,6 @@ number of pages in an extent in extentsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_re_delim.html b/db/docs/api_cxx/db_set_re_delim.html index 85d7173ed..1220e0ada 100644 --- a/db/docs/api_cxx/db_set_re_delim.html +++ b/db/docs/api_cxx/db_set_re_delim.html @@ -1,6 +1,5 @@ - - + @@ -87,6 +86,6 @@ delimiting byte in delimp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_re_len.html b/db/docs/api_cxx/db_set_re_len.html index 61fca4731..cdc84c23d 100644 --- a/db/docs/api_cxx/db_set_re_len.html +++ b/db/docs/api_cxx/db_set_re_len.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ record length in re_lenp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_re_pad.html b/db/docs/api_cxx/db_set_re_pad.html index c099776d7..36e9d142e 100644 --- a/db/docs/api_cxx/db_set_re_pad.html +++ b/db/docs/api_cxx/db_set_re_pad.html @@ -1,6 +1,5 @@ - - + @@ -85,6 +84,6 @@ pad character in re_padp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_re_source.html b/db/docs/api_cxx/db_set_re_source.html index a6234502a..00bbc3dca 100644 --- a/db/docs/api_cxx/db_set_re_source.html +++ b/db/docs/api_cxx/db_set_re_source.html @@ -1,6 +1,5 @@ - - + @@ -117,6 +116,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_set_realloc.html b/db/docs/api_cxx/db_set_realloc.html deleted file mode 100644 index e163a889c..000000000 --- a/db/docs/api_cxx/db_set_realloc.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Berkeley DB: Db::set_realloc - - - - - - - -
-

Db::set_realloc

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-extern "C" { - typedef void *(*db_realloc_fcn_type)(void *, size_t); -}; -int -Db::set_realloc(db_realloc_fcn_type db_realloc_fcn); -

-

Description

-

Set the realloc function used by the Db methods to allocate memory -in which to return key/data items to the application. -

The DB_DBT_REALLOC flag, when specified in the Dbt object, -will cause the Db methods to allocate and re-allocate memory which -then becomes the responsibility of the calling application. See Dbt -for more information. -

On systems where there may be multiple library versions of realloc (notably -Windows NT), specifying the DB_DBT_REALLOC flag will fail because -the Db library will allocate memory from a different heap than -the application will use to free it. To avoid this problem, the -Db::set_realloc method can be used to pass Berkeley DB a reference to the -application's allocation routine, in which case it will be used to -allocate the memory returned when the DB_DBT_REALLOC flag is set. -

The method specified must match the calling conventions of the -ANSI C X3.159-1989 (ANSI C) library routine of the same name. -

The Db::set_realloc interface may only be used to configure Berkeley DB before -the Db::open interface is called. -

The Db::set_realloc method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-Db -

See Also

-Db::close, -Db::cursor, -Db::del, -Db::err, -Db::fd, -Db::get, -Db::get_byteswapped, -Db::get_type, -Db::join, -Db::key_range, -Db::open, -Db::put, -Db::remove, -Db::set_bt_compare, -Db::set_bt_minkey, -Db::set_bt_prefix, -Db::set_cachesize, -Db::set_dup_compare, -Db::set_errcall, -Db::set_errfile, -Db::set_errpfx, -Db::set_flags, -Db::set_h_ffactor, -Db::set_h_hash, -Db::set_h_nelem, -Db::set_lorder, -Db::set_malloc, -Db::set_pagesize, -Db::set_paniccall, -Db::set_q_extentsize, -Db::set_realloc, -Db::set_re_delim, -Db::set_re_len, -Db::set_re_pad, -Db::set_re_source, -Db::stat, -Db::sync, -Db::upgrade -and -Db::verify. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/db_stat.html b/db/docs/api_cxx/db_stat.html index 8a3f19326..eb4177176 100644 --- a/db/docs/api_cxx/db_stat.html +++ b/db/docs/api_cxx/db_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -43,24 +42,24 @@ one of the following values: Among other things, this flag makes it possible for applications to request key and record counts without incurring the performance penalty of traversing the entire database. -

DB_READ_COMMITTED
Database items read during this operation will have degree 2 isolation. -This ensures the stability of the data items read during the stat -operation but permits that data to be modified or deleted by other +
DB_READ_COMMITTED
Database items read during a transactional call will have degree 2 +isolation. This ensures the stability of the data items read during the +stat operation but permits that data to be modified or deleted by other transactions prior to the commit of the specified transaction. -
DB_READ_UNCOMMITTED
Database items read during this operation will have degree 1 isolation, -including modified but not yet committed data. Silently ignored if the -DB_READ_UNCOMMITTED flag was not specified when the underlying -database was opened. - -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
DB_READ_UNCOMMITTED
Database items read during a transactional call will have degree 1 +isolation, including modified but not yet committed data. Silently +ignored if the DB_READ_UNCOMMITTED flag was not specified when +the underlying database was opened. +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Statistical structures are stored in allocated memory. If application-specific allocation routines have been declared (see DbEnv::set_alloc for more @@ -78,6 +77,8 @@ database, the information returned by Db::stat may be out-of-date.

If the database was not opened read-only and the DB_FAST_STAT flag was not specified, the cached key and record numbers will be updated after the statistical information has been gathered.

+

The Db::stat method may not be called before the Db::open method has been +called.

The Db::stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -99,8 +100,10 @@ DB_FAST_STAT is set. was specified the count will be the last saved value unless it has never been calculated, in which case it will be 0. Returned if DB_FAST_STAT is set. -

u_int32_t hash_pagesize;
The underlying Hash database page (and bucket) size, in bytes. -Returned if DB_FAST_STAT is set. +
u_int32_t hash_pagecnt;
The number of pages in the database. Returned if DB_FAST_STAT +is set. +
u_int32_t hash_pagesize;
The underlying database page (and bucket) size, in bytes. Returned if +DB_FAST_STAT is set.
u_int32_t hash_ffactor;
The desired fill factor (number of items per bucket) specified at database-creation time. Returned if DB_FAST_STAT is set.
u_int32_t hash_buckets;
The number of hash buckets. Returned if DB_FAST_STAT is set. @@ -147,8 +150,10 @@ DB_FAST_STAT flag is specified the count will be exact but will include deleted and implicitly created records; if the DB_FAST_STAT flag is not specified, the count will be exact and will not include deleted or implicitly created records.

-

Returned if DB_FAST_STAT is set.

-
u_int32_t bt_pagesize;
Underlying database page size, in bytes. Returned if +

u_int32_t bt_pagecnt;
The number of pages in the database. Returned if DB_FAST_STAT +is set. +Returned if DB_FAST_STAT is set.

+
u_int32_t bt_pagesize;
The underlying database page size, in bytes. Returned if DB_FAST_STAT is set.
u_int32_t bt_minkey;
The minimum keys per page. Returned if DB_FAST_STAT is set.
u_int32_t bt_re_len;
The length of fixed-length records. Returned if DB_FAST_STAT @@ -237,7 +242,6 @@ Among other things, this flag makes it possible for applications to request key and record counts without incurring the performance penalty of traversing the entire database.
DB_STAT_ALL
Display all available information. -
DB_STAT_CLEAR
Reset statistics after displaying their values.
@@ -249,6 +253,6 @@ of traversing the entire database.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_sync.html b/db/docs/api_cxx/db_sync.html index 7d1e41679..719c22de9 100644 --- a/db/docs/api_cxx/db_sync.html +++ b/db/docs/api_cxx/db_sync.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_truncate.html b/db/docs/api_cxx/db_truncate.html index 0a182abe5..daad87353 100644 --- a/db/docs/api_cxx/db_truncate.html +++ b/db/docs/api_cxx/db_truncate.html @@ -1,6 +1,5 @@ - - + @@ -46,15 +45,16 @@ failure, and returns 0 on success.

countp
The countp parameter references memory into which the number of records discarded from the database is copied.
flags
The flags parameter is currently unused, and must be set to 0. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The Db::truncate method @@ -83,6 +83,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_upgrade.html b/db/docs/api_cxx/db_upgrade.html index 7e3243101..a2eb67885 100644 --- a/db/docs/api_cxx/db_upgrade.html +++ b/db/docs/api_cxx/db_upgrade.html @@ -1,6 +1,5 @@ - - + @@ -101,6 +100,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/db_verify.html b/db/docs/api_cxx/db_verify.html index 621cc6309..3a6797612 100644 --- a/db/docs/api_cxx/db_verify.html +++ b/db/docs/api_cxx/db_verify.html @@ -1,6 +1,5 @@ - - + @@ -144,6 +143,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_class.html b/db/docs/api_cxx/dbc_class.html index fc4cbb09a..2db254c07 100644 --- a/db/docs/api_cxx/dbc_class.html +++ b/db/docs/api_cxx/dbc_class.html @@ -1,6 +1,5 @@ - - + @@ -38,6 +37,6 @@ handle may not be accessed again, regardless of the method's return.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_close.html b/db/docs/api_cxx/dbc_close.html index 2664ca9b5..596fa0fbd 100644 --- a/db/docs/api_cxx/dbc_close.html +++ b/db/docs/api_cxx/dbc_close.html @@ -1,6 +1,5 @@ - - - + + @@ -67,6 +66,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_count.html b/db/docs/api_cxx/dbc_count.html index f9f717496..ccc4c319f 100644 --- a/db/docs/api_cxx/dbc_count.html +++ b/db/docs/api_cxx/dbc_count.html @@ -1,6 +1,5 @@ - - - + + @@ -64,6 +63,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_del.html b/db/docs/api_cxx/dbc_del.html index bd735bf7a..c3521dab5 100644 --- a/db/docs/api_cxx/dbc_del.html +++ b/db/docs/api_cxx/dbc_del.html @@ -1,6 +1,5 @@ - - - + + @@ -88,6 +87,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_dup.html b/db/docs/api_cxx/dbc_dup.html index 9c4eb6de2..0dd162dbb 100644 --- a/db/docs/api_cxx/dbc_dup.html +++ b/db/docs/api_cxx/dbc_dup.html @@ -1,6 +1,5 @@ - - - + + @@ -73,6 +72,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_get.html b/db/docs/api_cxx/dbc_get.html index 68bed52f6..0c42f4171 100644 --- a/db/docs/api_cxx/dbc_get.html +++ b/db/docs/api_cxx/dbc_get.html @@ -1,6 +1,5 @@ - - - + + @@ -151,6 +150,12 @@ later deleted.

The Dbc::get method will return DB_NOTFOUND if DB_PREV is set and the cursor is already on the first record in the database.

+
DB_PREV_DUP
If the previous key/data pair of the database is a duplicate data record +for the current key/data pair, the cursor is moved to the previous key/data +pair of the database, and that pair is returned. +

The Dbc::get method will return DB_NOTFOUND if DB_PREV_DUP is set and the previous key/data pair of the +database is not a duplicate data record for the current key/data pair. +

DB_PREV_NODUP
If the cursor is not yet initialized, DB_PREV_NODUP is identical to DB_LAST. Otherwise, the cursor is moved to the previous non-duplicate key of the database, and that key/data pair is returned. @@ -189,9 +194,10 @@ flag.

In addition, the following flags may be set by bitwise inclusively OR'ing them into the flags parameter:
-
DB_READ_UNCOMMITTED
Read modified but not yet committed data. Silently ignored if the -DB_READ_UNCOMMITTED flag was not specified when the underlying -database was opened. +
DB_READ_UNCOMMITTED
Database items read during a transactional call will have degree 1 +isolation, including modified but not yet committed data. Silently +ignored if the DB_READ_UNCOMMITTED flag was not specified when +the underlying database was opened.
DB_MULTIPLE
Return multiple data items in the data parameter.

In the case of Btree or Hash databases, duplicate data items for the current key, starting at the current cursor position, are entered into @@ -261,11 +267,12 @@ DB_NEXT_NODUP, DB_SET, DB_SET_RANGE, and DB_SET_RECNO options. The DB_MULTIPLE_KEY flag may not be used when accessing databases made into secondary indices using the Db::associate method.

-
DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. +
DB_RMW
Acquire write locks instead of read locks when doing the read, if +locking is configured. Setting this flag can eliminate deadlock during +a read-modify-write cycle by acquiring the write lock during the read +part of the cycle so that another thread of control acquiring a read +lock for the same item, in its own read-modify-write cycle, will not +result in deadlock.
key
The key Dbt operated on.
pkey
The secondary index key Dbt operated on. @@ -285,8 +292,8 @@ unrolled a committed transaction.
DB_SECONDARY_BAD
A secondary index references a nonexistent primary key.
-
EINVAL
If the DB_CURRENT or DB_NEXT_DUP flags were specified and -the cursor has not been initialized; +
EINVAL
If the DB_CURRENT, DB_NEXT_DUP or DB_PREV_DUP flags +were specified and the cursor has not been initialized; the Dbc::pget method was called with a cursor that does not refer to a secondary index; or if an invalid flag value or parameter was specified. @@ -311,6 +318,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_list.html b/db/docs/api_cxx/dbc_list.html index e3772cc00..9250667e0 100644 --- a/db/docs/api_cxx/dbc_list.html +++ b/db/docs/api_cxx/dbc_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Database Cursors and Related Methods

- + @@ -20,7 +19,8 @@ +
Database Cursors and Related MethodsDescription
Db::cursorCreate a cursor
Dbc::dupDuplicate a cursor
Dbc::get, Dbc::pgetRetrieve by cursor
Dbc::putStore by cursor
Dbc::set_prioritySet the cursor's cache priority
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_put.html b/db/docs/api_cxx/dbc_put.html index b9a952dc2..ffbc1a040 100644 --- a/db/docs/api_cxx/dbc_put.html +++ b/db/docs/api_cxx/dbc_put.html @@ -1,6 +1,5 @@ - - - + + @@ -46,8 +45,8 @@ item.

element as a duplicate element of the key to which the cursor refers. The new element appears immediately after the current cursor position. It is an error to specify DB_AFTER if the underlying Btree or -Hash database does not support duplicate data items. The key -parameter is ignored. +Hash database is not configured for unsorted duplicate data items. The +key parameter is ignored.

In the case of the Recno access method, it is an error to specify DB_AFTER if the underlying Recno database was not created with the DB_RENUMBER flag. If the DB_RENUMBER flag was @@ -63,9 +62,9 @@ underlying access method is Hash.

DB_BEFORE
In the case of the Btree and Hash access methods, insert the data element as a duplicate element of the key to which the cursor refers. The new element appears immediately before the current cursor position. -It is an error to specify DB_BEFORE if the underlying Btree or -Hash database does not support duplicate data items. The key -parameter is ignored. +It is an error to specify DB_AFTER if the underlying Btree or +Hash database is not configured for unsorted duplicate data items. The +key parameter is ignored.

In the case of the Recno access method, it is an error to specify DB_BEFORE if the underlying Recno database was not created with the DB_RENUMBER flag. If the DB_RENUMBER flag was @@ -82,26 +81,20 @@ access method is Hash. the specified data item. The key parameter is ignored.

The Dbc::put method will return DB_NOTFOUND if the current cursor record has already been deleted.

-
DB_KEYFIRST
In the case of the Btree and Hash access methods, insert the specified -key/data pair into the database. +
DB_KEYFIRST
Insert the specified key/data pair into the database.

If the underlying database supports duplicate data items, and if the key already exists in the database and a duplicate sort function has been specified, the inserted data item is added in its sorted location. If the key already exists in the database and no duplicate sort function has been specified, the inserted data item is added as the first of the data items for that key.

-

The DB_KEYFIRST flag may not be specified to the Queue or Recno -access methods.

-
DB_KEYLAST
In the case of the Btree and Hash access methods, insert the specified -key/data pair into the database. +
DB_KEYLAST
Insert the specified key/data pair into the database.

If the underlying database supports duplicate data items, and if the key already exists in the database and a duplicate sort function has been specified, the inserted data item is added in its sorted location. If the key already exists in the database, and no duplicate sort function has been specified, the inserted data item is added as the last of the data items for that key.

-

The DB_KEYLAST flag may not be specified to the Queue or Recno -access methods.

DB_NODUPDATA
In the case of the Btree and Hash access methods, insert the specified key/data pair into the database, unless a key/data pair comparing equally to it already exists in the database. If a matching key/data @@ -163,6 +156,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbc_set_priority.html b/db/docs/api_cxx/dbc_set_priority.html new file mode 100644 index 000000000..ce9b54488 --- /dev/null +++ b/db/docs/api_cxx/dbc_set_priority.html @@ -0,0 +1,70 @@ + + + + + +Berkeley DB: Dbc::set_priority + + + + + + + +
+

Dbc::set_priority

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +Dbc::set_priority(DB_CACHE_PRIORITY priority); +

+int +Dbc::get_priority(DB_CACHE_PRIORITY *priorityp); +

+
+

Description: Dbc::set_priority

+

Set the cache priority for pages referenced by the +Dbc +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The Dbc::set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

+

The Dbc::set_priority method may be called at any time during the life of the +application.

+

The Dbc::set_priority method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
priority
The priority parameter must be set to one of the following +values: +
+
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded. +
+
+
+

Class

+Dbc +

See Also

+Database Cursors and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/dbenv_class.html b/db/docs/api_cxx/dbenv_class.html deleted file mode 100644 index 1c59dcbf1..000000000 --- a/db/docs/api_cxx/dbenv_class.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - -Berkeley DB: DbEnv - - - - - - - -
-

DbEnv

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-class DbEnv { -public: - DbEnv(u_int32 flags); - ~DbEnv(); - ... -}; -

-

Description

-

This manual page describes the specific details of the DbEnv -class, which is the center of the Berkeley DB environment. -

The following flags value may be specified: -

-

DB_CLIENT
Create a client environment to connect to a server. -

The DB_CLIENT flag indicates to the system that this environment -is remote on a server. The use of this flag causes the environment -methods to use functions that call a server instead of local functions. -Prior to making any environment or database method calls, the -application must call the DbEnv::set_server function to establish -the connection to the server. -

DB_CXX_NO_EXCEPTIONS
The Berkeley DB C++ API supports two different error behaviors. By default, -whenever an error occurs an exception is thrown that encapsulates the -error information. This generally allows for cleaner logic for -transaction processing, as a try block can surround a single -transaction. However, if DB_CXX_NO_EXCEPTIONS is specified, -exceptions are not thrown, instead each individual function returns an -error code. -
-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/dbt_bulk_class.html b/db/docs/api_cxx/dbt_bulk_class.html index 9acd12223..b8c010bb7 100644 --- a/db/docs/api_cxx/dbt_bulk_class.html +++ b/db/docs/api_cxx/dbt_bulk_class.html @@ -1,6 +1,5 @@ - - + @@ -158,6 +157,6 @@ original bulk retrieval buffer.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbt_class.html b/db/docs/api_cxx/dbt_class.html index b0638fa78..ede675134 100644 --- a/db/docs/api_cxx/dbt_class.html +++ b/db/docs/api_cxx/dbt_class.html @@ -1,7 +1,6 @@ - - - + + @@ -117,8 +116,8 @@ content for the Dbt.

Initialize the data array from a logical record number. Recno database records are ordered by integer keys starting at 1. When the Dbt::set_recno_key_data method is called, the data, size and offset -fields in the Dbt are implicitly set to hold a byte array representation -of the integer key.

+fields in the Dbt are implicitly set to hold a byte array +representation of the integer key.

Parameters

recno
The recno parameter logical record number used to initialize the @@ -269,6 +268,22 @@ and a partial put was done using a Dbt having a dlen field of 20, a doff field of 85, and a size field of 30, the resulting record would be 115 bytes in length, where the last 30 bytes would be those specified by the put call.

+
DB_DBT_APPMALLOC
After an application-supplied callback routine passed to either +Db::associate or Db::set_append_recno is executed, the +data field of a Dbt may refer to memory allocated with +malloc(3) or realloc(3). In that case, the +callback sets the DB_DBT_APPMALLOC flag in the Dbt so +that Berkeley DB will call free(3) to deallocate the memory when it +is no longer required. +
DB_DBT_MULTIPLE
Set in a secondary key creation callback routine passed to +Db::associate to indicate that multiple secondary keys should be +associated with the given primary key/data pair. If set, the +size field indicates the number of secondary keys and the +data field refers to an array of that number of Dbt +structures. +

The DB_DBT_APPMALLOC flag may be set on any of the Dbt +structures to indicate that their data field needs to be +freed.


@@ -278,6 +293,6 @@ bytes would be those specified by the put call.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/dbt_package.html b/db/docs/api_cxx/dbt_package.html index 88bcfb497..d0f372c3e 100644 --- a/db/docs/api_cxx/dbt_package.html +++ b/db/docs/api_cxx/dbt_package.html @@ -1,6 +1,5 @@ - - + @@ -17,6 +16,6 @@ DbMultipleKeyDataIteratorNext bulk get retrieval DbMultipleRecnoDataIteratorNext bulk get retrieval -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/deadlock_class.html b/db/docs/api_cxx/deadlock_class.html index b55697a1f..672750f85 100644 --- a/db/docs/api_cxx/deadlock_class.html +++ b/db/docs/api_cxx/deadlock_class.html @@ -1,6 +1,5 @@ - - + @@ -38,6 +37,6 @@ termination, and a DbDeadlockException is thrown to that thread.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_cdsgroup_begin.html b/db/docs/api_cxx/env_cdsgroup_begin.html index 1cc8af4cd..a8aa1e252 100644 --- a/db/docs/api_cxx/env_cdsgroup_begin.html +++ b/db/docs/api_cxx/env_cdsgroup_begin.html @@ -1,6 +1,5 @@ - - + @@ -54,6 +53,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_class.html b/db/docs/api_cxx/env_class.html index d4c6a47d4..18c8e22bb 100644 --- a/db/docs/api_cxx/env_class.html +++ b/db/docs/api_cxx/env_class.html @@ -1,6 +1,5 @@ - - + @@ -93,6 +92,6 @@ DbEnv

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_close.html b/db/docs/api_cxx/env_close.html index ceb0e6d62..ffab8f10f 100644 --- a/db/docs/api_cxx/env_close.html +++ b/db/docs/api_cxx/env_close.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_dbremove.html b/db/docs/api_cxx/env_dbremove.html index 14219f092..635ce2520 100644 --- a/db/docs/api_cxx/env_dbremove.html +++ b/db/docs/api_cxx/env_dbremove.html @@ -1,6 +1,5 @@ - - + @@ -58,14 +57,15 @@ the following value: changes made by the operation will be recoverable. If the call fails, the operation will have made no changes. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Environment Variables

The @@ -104,6 +104,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_dbrename.html b/db/docs/api_cxx/env_dbrename.html index 4ecdd706c..c71872ac3 100644 --- a/db/docs/api_cxx/env_dbrename.html +++ b/db/docs/api_cxx/env_dbrename.html @@ -1,6 +1,5 @@ - - + @@ -61,14 +60,15 @@ changes made by the operation will be recoverable. If the call fails, the operation will have made no changes.

newname
The newname parameter is the new name of the database or file. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the DB_AUTO_COMMIT flag is specified, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Environment Variables

The @@ -107,6 +107,6 @@ throw a DbLockNotGrantedException exc

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_err.html b/db/docs/api_cxx/env_err.html index 638d6e0e6..e1a5e60da 100644 --- a/db/docs/api_cxx/env_err.html +++ b/db/docs/api_cxx/env_err.html @@ -1,6 +1,5 @@ - - + @@ -79,6 +78,6 @@ string.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_event_notify.html b/db/docs/api_cxx/env_event_notify.html index e0b28313e..11020c3d0 100644 --- a/db/docs/api_cxx/env_event_notify.html +++ b/db/docs/api_cxx/env_event_notify.html @@ -1,6 +1,5 @@ - - - + + @@ -58,28 +57,41 @@ rather than gracefully return up the stack. environment has failed. All threads of control in the database environment should exit the environment, and recovery should be run.

DB_EVENT_REP_CLIENT
The local site is now a replication client. +
DB_EVENT_REP_ELECTED
The local replication site has just won an election. An application using +the Base replication API should arrange for a call to the DbEnv::rep_start method +after receiving this event, to reconfigure the local environment as a +replication master. +

Replication Manager applications may safely ignore this event. The +Replication Manager calls DbEnv::rep_start automatically on behalf of +the application when appropriate (resulting in firing of the +DB_EVENT_REP_MASTER event).

DB_EVENT_REP_MASTER
The local site is now the master site of its replication group. It is the application's responsibility to begin acting as the master environment.
DB_EVENT_REP_NEWMASTER
The replication group of which this site is a member has just established a new master; the local site is not the new master. The event_info parameter points to an integer containing the environment ID of the new master. -

The DB_EVENT_REP_NEWMASTER event is provided only to applications using -the replication manager support.

+
DB_EVENT_REP_PERM_FAILED
The replication manager did not receive enough acknowledgements (based on +the acknowledgement policy configured with DbEnv::repmgr_set_ack_policy) +to ensure a transaction's durability within the replication group. The +transaction will be flushed to the master's local disk storage for +durability. +

The DB_EVENT_REP_PERM_FAILED event is provided only to applications +configured for the replication manager.

DB_EVENT_REP_STARTUPDONE
The client has completed startup synchronization and is now processing live log records received from the master.
DB_EVENT_WRITE_FAILED
A Berkeley DB write to stable storage failed. -

Berkeley DB is not re-entrant. Callback functions should not attempt to make -library calls (for example, to release locks or close open handles). -Re-entering Berkeley DB is not guaranteed to work correctly, and the results -are undefined.

event_info
The event_info parameter may reference memory which contains additional information describing an event. By default, event_info is NULL; specific events may pass non-NULL values, in which case the event will also describe the memory's structure. +

Berkeley DB is not re-entrant. Callback functions should not attempt to make +library calls (for example, to release locks or close open handles). +Re-entering Berkeley DB is not guaranteed to work correctly, and the results +are undefined.


Class

DbEnv @@ -89,6 +101,6 @@ in which case the event will also describe the memory's structure.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_failchk.html b/db/docs/api_cxx/env_failchk.html index 83acfd93a..ca6407a1a 100644 --- a/db/docs/api_cxx/env_failchk.html +++ b/db/docs/api_cxx/env_failchk.html @@ -1,6 +1,5 @@ - - - + + @@ -23,7 +22,7 @@ #include <db_cxx.h>

int -DbEnv::dbenv_failchk(u_int32_t flags); +DbEnv::failchk(u_int32_t flags);


Description: DbEnv::failchk

@@ -91,6 +90,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_fileid_reset.html b/db/docs/api_cxx/env_fileid_reset.html index b366b68cf..1fa1d9a62 100644 --- a/db/docs/api_cxx/env_fileid_reset.html +++ b/db/docs/api_cxx/env_fileid_reset.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_list.html b/db/docs/api_cxx/env_list.html index 58486c7d0..b66984f0e 100644 --- a/db/docs/api_cxx/env_list.html +++ b/db/docs/api_cxx/env_list.html @@ -1,6 +1,5 @@ - - + @@ -52,6 +51,6 @@ DbEnv::set_tmp_dirSet the environment temporary file directory DbEnv::set_verboseSet verbose messages -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_lsn_reset.html b/db/docs/api_cxx/env_lsn_reset.html index edbfe38ca..3e1fa5a83 100644 --- a/db/docs/api_cxx/env_lsn_reset.html +++ b/db/docs/api_cxx/env_lsn_reset.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_open.html b/db/docs/api_cxx/env_open.html index 4958414b7..1bf4aec8e 100644 --- a/db/docs/api_cxx/env_open.html +++ b/db/docs/api_cxx/env_open.html @@ -1,6 +1,5 @@ - - + @@ -275,6 +274,6 @@ open method flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_remove.html b/db/docs/api_cxx/env_remove.html index ea4474377..e10be5d79 100644 --- a/db/docs/api_cxx/env_remove.html +++ b/db/docs/api_cxx/env_remove.html @@ -1,6 +1,5 @@ - - - + + @@ -106,10 +105,7 @@ may fail and throw encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

-
EBUSY
The shared memory region was in use and the force flag was not set. -
-
-
ENOENT
The file or directory does not exist. +
EBUSY
The shared memory region was in use and the force flag was not set.

Class

@@ -120,6 +116,6 @@ the following non-zero errors:


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_alloc.html b/db/docs/api_cxx/env_set_alloc.html index 0fc20ffcc..6a43dc6aa 100644 --- a/db/docs/api_cxx/env_set_alloc.html +++ b/db/docs/api_cxx/env_set_alloc.html @@ -1,6 +1,5 @@ - - + @@ -99,6 +98,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_app_dispatch.html b/db/docs/api_cxx/env_set_app_dispatch.html index 6d643330e..f995870cc 100644 --- a/db/docs/api_cxx/env_set_app_dispatch.html +++ b/db/docs/api_cxx/env_set_app_dispatch.html @@ -1,6 +1,5 @@ - - + @@ -100,6 +99,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_cache_max.html b/db/docs/api_cxx/env_set_cache_max.html new file mode 100644 index 000000000..db3850ef6 --- /dev/null +++ b/db/docs/api_cxx/env_set_cache_max.html @@ -0,0 +1,96 @@ + + + + + +Berkeley DB: DbEnv::set_cache_max + + + + + + + +
+

DbEnv::set_cache_max

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +DbEnv::set_cache_max(u_int32_t gbytes, u_int32_t bytes); +

+int +DbEnv::get_cache_max(u_int32_t *gbytesp, u_int32_t *bytesp); +

+
+

Description: DbEnv::set_cache_max

+

The DbEnv::set_cache_max method sets the maximum cache size, in bytes. +The specified size is rounded to the nearest multiple of the cache +region size, which is the initial cache size divided by the number of +regions specified to the DbEnv::set_cachesize method. If no value is +specified, it defaults to the initial cache size.

+

The database environment's maximum cache size may also be configured using the +environment's DB_CONFIG file. The syntax of the entry in that +file is a single line with the string "set_cache_max", one or more whitespace +characters, and the size in bytes. +Because the DB_CONFIG file is read when the database +environment is opened, it will silently overrule configuration done +before that time.

+

The DbEnv::set_cache_max method configures a database environment, not only operations +performed using the specified DbEnv handle.

+

The DbEnv::set_cache_max method may be called at any time during the life of the +application.

+

The DbEnv::set_cache_max method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
mp_mmapsize
The mp_mmapsize parameter is the maximum file size, in bytes, +for a file to be mapped into the process address space. +
+

Errors

+

The DbEnv::set_cache_max method +may fail and throw +DbException, +encapsulating one of the following non-zero errors, or return one of +the following non-zero errors:

+
+
EINVAL
If the method was called after DbEnv::open was called; or if an +invalid flag value or parameter was specified. +
+
+

Description: DbEnv::get_cache_max

+

The DbEnv::get_cache_max method returns the maximum size of the cache.

+

The DbEnv::get_cache_max method may be called at any time during the life of the +application.

+

The DbEnv::get_cache_max method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
bytesp
The bytesp parameter references memory into which + the additional bytes of memory in the cache is copied. +
gbytesp
The gbytesp parameter references memory into which + the gigabytes of memory in the cache is copied. +
+
+

Class

+DbEnv +

See Also

+Database Environments and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/env_set_cachesize.html b/db/docs/api_cxx/env_set_cachesize.html index 74692e0a6..451c8ac2a 100644 --- a/db/docs/api_cxx/env_set_cachesize.html +++ b/db/docs/api_cxx/env_set_cachesize.html @@ -1,6 +1,5 @@ - - - + + @@ -48,26 +47,29 @@ allocated contiguously on some architectures. For example, some releases of Solaris limit the amount of memory that may be allocated contiguously by a process. If ncache is 0 or 1, the cache will be allocated contiguously in memory. If it is greater than 1, the cache -will be broken up into ncache equally sized, separate pieces of -memory.

-

The database environment's cache size may also be configured using the +will be split across ncache separate regions, where the +region size is equal to the initial cache size divided by +ncache.

+

The memory pool may be resized by calling DbEnv::set_cachesize +after the environment is open. The supplied size will be rounded to +the nearest multiple of the region size and may not be larger than the +maximum size configured with DbEnv::set_cache_max. The +ncache parameter is ignored when resizing the cache.

+

The database environment's initial cache size may also be configured using the environment's DB_CONFIG file. The syntax of the entry in that file is a single line with the string "set_cachesize", one or more whitespace -characters, and the cache size specified in three parts: the gigabytes of cache, the -additional bytes of cache, and the number of caches, also separated by -whitespace characters. For example, "set_cachesize 2 524288000 3" would -create a 2.5GB logical cache, split between three physical caches. +characters, and the initial cache size specified in three parts: the gigabytes of +cache, the additional bytes of cache, and the number of caches, also +separated by whitespace characters. For example, "set_cachesize 2 +524288000 3" would create a 2.5GB logical cache, split between three +physical caches. Because the DB_CONFIG file is read when the database environment is opened, it will silently overrule configuration done before that time.

The DbEnv::set_cachesize method configures a database environment, not only operations performed using the specified DbEnv handle.

-

The DbEnv::set_cachesize method may not be called after the DbEnv::open method is -called. -If the database environment already exists when -DbEnv::open is called, the information specified to DbEnv::set_cachesize -will be ignored. -

+

The DbEnv::set_cachesize method may be called at any time during the life of the +application.

The DbEnv::set_cachesize method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -87,9 +89,7 @@ encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

EINVAL
If the specified cache size was impossibly small; -the method was called after -DbEnv::open -was called; or if an +; or if an invalid flag value or parameter was specified.

@@ -121,6 +121,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_data_dir.html b/db/docs/api_cxx/env_set_data_dir.html index 11823c1dc..87581a9cc 100644 --- a/db/docs/api_cxx/env_set_data_dir.html +++ b/db/docs/api_cxx/env_set_data_dir.html @@ -1,6 +1,5 @@ - - + @@ -102,6 +101,6 @@ NULL-terminated array of directories in dirpp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_encrypt.html b/db/docs/api_cxx/env_set_encrypt.html index 05f5be827..25ec28214 100644 --- a/db/docs/api_cxx/env_set_encrypt.html +++ b/db/docs/api_cxx/env_set_encrypt.html @@ -1,6 +1,5 @@ - - + @@ -97,6 +96,6 @@ encryption flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_errcall.html b/db/docs/api_cxx/env_set_errcall.html index a1bf2730a..dbe4a0fde 100644 --- a/db/docs/api_cxx/env_set_errcall.html +++ b/db/docs/api_cxx/env_set_errcall.html @@ -1,6 +1,5 @@ - - + @@ -76,6 +75,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_errfile.html b/db/docs/api_cxx/env_set_errfile.html index 46370d6d3..bfdaf593a 100644 --- a/db/docs/api_cxx/env_set_errfile.html +++ b/db/docs/api_cxx/env_set_errfile.html @@ -1,6 +1,5 @@ - - - + + @@ -32,9 +31,9 @@ DbEnv::get_errfile(FILE **errfilep);

Description: DbEnv::set_errfile

When an error occurs in the Berkeley DB library, an exception is thrown or an error return value is returned by the interface. In some cases, -however, the errno value may be insufficient to completely -describe the cause of the error, especially during initial application -debugging. +however, the exception or returned value may be insufficient to +completely describe the cause of the error, especially during initial +application debugging.

The DbEnv::set_errcall and Db::set_errcall methods are used to enhance the mechanism for reporting error messages to the application by setting a C library FILE * to be used for displaying additional Berkeley DB @@ -49,7 +48,18 @@ should not mix these approaches.

(":") (if a prefix string was previously specified using Db::set_errpfx or DbEnv::set_errpfx), an error string, and a trailing <newline> character.

-

Setting errfile to NULL unconfigures the interface.

+

The default configuration when applications first create Db or +DbEnv handles is as if the DbEnv::set_errfile or +Db::set_errfile methods were called with the standard error output +(stderr) specified as the FILE * argument. Applications wanting no +output at all can turn off this default configuration by calling the +DbEnv::set_errfile or Db::set_errfile methods with NULL as the +FILE * argument. Additionally, explicitly configuring the error output +channel using any of the DbEnv::set_errfile, +Db::set_errfile, DbEnv::set_errcall, +Db::set_errcall, DbEnv::set_error_stream or +Db::set_error_stream methods will also turn off this default output +for the application.

This error logging enhancement does not slow performance or significantly increase application size, and may be run during normal operation as well as during application debugging.

@@ -87,6 +97,6 @@ FILE * in errfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_error_stream.html b/db/docs/api_cxx/env_set_error_stream.html index 85f0b1733..7d05d02c0 100644 --- a/db/docs/api_cxx/env_set_error_stream.html +++ b/db/docs/api_cxx/env_set_error_stream.html @@ -1,6 +1,5 @@ - - + @@ -69,6 +68,6 @@ be used for additional error information.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_errpfx.html b/db/docs/api_cxx/env_set_errpfx.html index 952f72a9c..b94fc8244 100644 --- a/db/docs/api_cxx/env_set_errpfx.html +++ b/db/docs/api_cxx/env_set_errpfx.html @@ -1,6 +1,5 @@ - - + @@ -71,6 +70,6 @@ error prefix in errpfxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_feedback.html b/db/docs/api_cxx/env_set_feedback.html index 02f0f6d0d..22c39c14f 100644 --- a/db/docs/api_cxx/env_set_feedback.html +++ b/db/docs/api_cxx/env_set_feedback.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_flags.html b/db/docs/api_cxx/env_set_flags.html index ffe93f00a..7d9f242d8 100644 --- a/db/docs/api_cxx/env_set_flags.html +++ b/db/docs/api_cxx/env_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -138,8 +137,12 @@ file.

the life of the application.

DB_LOG_AUTOREMOVE
If set, Berkeley DB will automatically remove log files that are no longer -needed. Automatic log file removal is likely to make catastrophic -recovery impossible. +needed. +

Automatic log file removal is likely to make catastrophic recovery +impossible.

+

Replication applications will rarely want to configure automatic log +file removal as it increases the likelihood a master will be unable to +satisfy a client's request for a recent log record.

Calling DbEnv::set_flags with the DB_LOG_AUTOREMOVE flag affects the database environment, including all threads of control accessing the database environment.

@@ -166,16 +169,6 @@ database environment, including all threads of control accessing the database environment.

The DB_LOG_INMEMORY flag may be used to configure Berkeley DB only before the DbEnv::open method is called.

- -
DB_NOLOCKING
If set, Berkeley DB will grant all requested mutual exclusion mutexes and -database locks without regard for their actual availability. This -functionality should never be used for purposes other than debugging. -

Calling DbEnv::set_flags with the DB_NOLOCKING flag only affects -the specified DbEnv handle (and any other Berkeley DB handles opened -within the scope of that handle). -

-

The DB_NOLOCKING flag may be used to configure Berkeley DB at any time during -the life of the application.

DB_MULTIVERSION
If set, all databases in the environment will be opened as if DB_MULTIVERSION is passed to Db::open. This flag will be ignored for queue databases for which DB_MULTIVERSION is not @@ -189,6 +182,16 @@ or the flag should be specified in the DB_CONFIG configuration file.

The DB_MULTIVERSION flag may be used to configure Berkeley DB at any time during the life of the application.

+ +
DB_NOLOCKING
If set, Berkeley DB will grant all requested mutual exclusion mutexes and +database locks without regard for their actual availability. This +functionality should never be used for purposes other than debugging. +

Calling DbEnv::set_flags with the DB_NOLOCKING flag only affects +the specified DbEnv handle (and any other Berkeley DB handles opened +within the scope of that handle). +

+

The DB_NOLOCKING flag may be used to configure Berkeley DB at any time during +the life of the application.

DB_NOMMAP
If set, Berkeley DB will copy read-only database files into the local cache instead of potentially mapping them into process memory (see the @@ -230,14 +233,12 @@ the life of the application.

DB_PANIC_ENVIRONMENT
If set, Berkeley DB will set the panic state for the database environment. (Database environments in a panic state normally refuse all attempts to call Berkeley DB functions, returning DB_RUNRECOVERY.) This flag may -not be specified using the environment's DB_CONFIG file. This -flag may be used to configure Berkeley DB only after the DbEnv::open method -is called. +not be specified using the environment's DB_CONFIG file.

Calling DbEnv::set_flags with the DB_PANIC_ENVIRONMENT flag affects the database environment, including all threads of control accessing the database environment.

-

The DB_PANIC_ENVIRONMENT flag may be used to configure Berkeley DB at any time during -the life of the application.

+

The DB_PANIC_ENVIRONMENT flag may be used to configure Berkeley DB only after the +DbEnv::open method is called.

DB_REGION_INIT
In some applications, the expense of page-faulting the underlying shared memory regions can affect performance. (For example, if the page-fault @@ -283,13 +284,28 @@ may be undone during recovery. The number of transactions at risk is governed by how many log updates can fit into the log buffer, how often the operating system flushes dirty buffers to disk, and how often the log is checkpointed. -

Calling DbEnv::set_flags with the DB_TXN_NOSYNC flag only affects +

Calling DbEnv::set_flags with the DB_TXN_NOSYNC flag only affects the specified DbEnv handle (and any other Berkeley DB handles opened within the scope of that handle). For consistent behavior across the environment, all DbEnv -handles opened in the environment must either set the DB_TXN_NOSYNC flag +handles opened in the environment must either set the DB_TXN_NOSYNC flag or the flag should be specified in the DB_CONFIG configuration -file.

The DB_TXN_NOSYNC flag may be used to configure Berkeley DB at any time during +file.

The DB_TXN_NOSYNC flag may be used to configure Berkeley DB at any time during +the life of the application.

+
DB_TXN_NOWAIT
If set and a lock is unavailable for any Berkeley DB operation performed in +the context of a transaction, cause the operation to +either return DB_LOCK_DEADLOCK or throw a +DbDeadlockException exception (or return +DB_LOCK_NOTGRANTED or throw a DbLockNotGrantedException +exception if configured using the DB_TIME_NOTGRANTED flag). +

Calling DbEnv::set_flags with the DB_TXN_NOWAIT flag only affects +the specified DbEnv handle (and any other Berkeley DB handles opened +within the scope of that handle). +For consistent behavior across the environment, all DbEnv +handles opened in the environment must either set the DB_TXN_NOWAIT flag +or the flag should be specified in the DB_CONFIG configuration +file.

+

The DB_TXN_NOWAIT flag may be used to configure Berkeley DB at any time during the life of the application.

DB_TXN_SNAPSHOT
If set, all transactions in the environment will be started as if DB_TXN_SNAPSHOT were passed to DbEnv::txn_begin, and all @@ -374,6 +390,6 @@ configuration flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_isalive.html b/db/docs/api_cxx/env_set_isalive.html index b92e780c3..76c1795eb 100644 --- a/db/docs/api_cxx/env_set_isalive.html +++ b/db/docs/api_cxx/env_set_isalive.html @@ -1,6 +1,5 @@ - - + @@ -81,6 +80,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lg_bsize.html b/db/docs/api_cxx/env_set_lg_bsize.html index 4354a787e..aadabc1db 100644 --- a/db/docs/api_cxx/env_set_lg_bsize.html +++ b/db/docs/api_cxx/env_set_lg_bsize.html @@ -1,6 +1,5 @@ - - + @@ -109,6 +108,6 @@ size of the log buffer, in bytes in lg_bsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lg_dir.html b/db/docs/api_cxx/env_set_lg_dir.html index d695f3192..414ded6e0 100644 --- a/db/docs/api_cxx/env_set_lg_dir.html +++ b/db/docs/api_cxx/env_set_lg_dir.html @@ -1,6 +1,5 @@ - - + @@ -100,6 +99,6 @@ log directory in dirp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lg_max.html b/db/docs/api_cxx/env_set_lg_max.html index 0025b4aaa..f430554f3 100644 --- a/db/docs/api_cxx/env_set_lg_max.html +++ b/db/docs/api_cxx/env_set_lg_max.html @@ -1,6 +1,5 @@ - - + @@ -109,6 +108,6 @@ maximum log file size in lg_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lg_mode.html b/db/docs/api_cxx/env_set_lg_mode.html index 6f8eec36b..b24344f36 100644 --- a/db/docs/api_cxx/env_set_lg_mode.html +++ b/db/docs/api_cxx/env_set_lg_mode.html @@ -1,6 +1,5 @@ - - + @@ -86,6 +85,6 @@ log file mode in lg_modep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lg_regionmax.html b/db/docs/api_cxx/env_set_lg_regionmax.html index 3643ec74e..649d55281 100644 --- a/db/docs/api_cxx/env_set_lg_regionmax.html +++ b/db/docs/api_cxx/env_set_lg_regionmax.html @@ -1,6 +1,5 @@ - - + @@ -95,6 +94,6 @@ size of the underlying logging subsystem region in lg_regionmaxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lk_conflicts.html b/db/docs/api_cxx/env_set_lk_conflicts.html index 35570cc96..0a1941934 100644 --- a/db/docs/api_cxx/env_set_lk_conflicts.html +++ b/db/docs/api_cxx/env_set_lk_conflicts.html @@ -1,6 +1,5 @@ - - + @@ -96,6 +95,6 @@ a pointer to the current conflicts array is copied.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lk_detect.html b/db/docs/api_cxx/env_set_lk_detect.html index fbde86a08..0c9bfe891 100644 --- a/db/docs/api_cxx/env_set_lk_detect.html +++ b/db/docs/api_cxx/env_set_lk_detect.html @@ -1,6 +1,5 @@ - - + @@ -105,6 +104,6 @@ deadlock detector configuration in lk_detectp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lk_max.html b/db/docs/api_cxx/env_set_lk_max.html deleted file mode 100644 index 7e614d4ac..000000000 --- a/db/docs/api_cxx/env_set_lk_max.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_lk_max - - - - - - - -
-

DbEnv::set_lk_max

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_lk_max(u_int32_t max); -

-

Description

-

The DbEnv::set_lk_max method interface has been deprecated in favor of -the DbEnv::set_lk_max_locks, DbEnv::set_lk_max_lockers, -and DbEnv::set_lk_max_objects methods. Please update your applications. -

Set each of the maximum number of locks, lockers and lock objects -supported by the Berkeley DB lock subsystem to max. This value is -used by DbEnv::open to estimate how much space to allocate for -various lock-table data structures. For specific information on -configuring the size of the lock subsystem, see -Configuring locking: sizing the -system. -

The DbEnv::set_lk_max interface may only be used to configure Berkeley DB before -the DbEnv::open interface is called. -

The DbEnv::set_lk_max method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

The database environment's maximum number of locks may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_lk_max", one or more whitespace characters, -and the number of locks. Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv::open was called. -

-

Classes

-DbEnv, DbLock -

See Also

-DbEnv::set_lk_conflicts, -DbEnv::set_lk_detect, -DbEnv::set_lk_max_locks, -DbEnv::set_lk_max_lockers, -DbEnv::set_lk_max_objects, -DbEnv::set_lk_max, -DbEnv::lock_detect, -DbEnv::lock_get, -DbEnv::lock_id, -DbLock::put, -DbEnv::lock_stat -and -DbEnv::lock_vec. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_lk_max_lockers.html b/db/docs/api_cxx/env_set_lk_max_lockers.html index f4a06a486..c25abca32 100644 --- a/db/docs/api_cxx/env_set_lk_max_lockers.html +++ b/db/docs/api_cxx/env_set_lk_max_lockers.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ maximum number of lockers in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lk_max_locks.html b/db/docs/api_cxx/env_set_lk_max_locks.html index e72170586..e258cc84a 100644 --- a/db/docs/api_cxx/env_set_lk_max_locks.html +++ b/db/docs/api_cxx/env_set_lk_max_locks.html @@ -1,6 +1,5 @@ - - + @@ -95,6 +94,6 @@ maximum number of locks in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_lk_max_objects.html b/db/docs/api_cxx/env_set_lk_max_objects.html index 17069d8df..a4e9b7df0 100644 --- a/db/docs/api_cxx/env_set_lk_max_objects.html +++ b/db/docs/api_cxx/env_set_lk_max_objects.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ maximum number of locked objects in lk_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_mp_mmapsize.html b/db/docs/api_cxx/env_set_mp_mmapsize.html index ac2577d2d..29411ac7c 100644 --- a/db/docs/api_cxx/env_set_mp_mmapsize.html +++ b/db/docs/api_cxx/env_set_mp_mmapsize.html @@ -1,6 +1,5 @@ - - + @@ -96,6 +95,6 @@ maximum file map size in mp_mmapsizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_msg_stream.html b/db/docs/api_cxx/env_set_msg_stream.html index cd5815394..4e3c2af12 100644 --- a/db/docs/api_cxx/env_set_msg_stream.html +++ b/db/docs/api_cxx/env_set_msg_stream.html @@ -1,6 +1,5 @@ - - + @@ -60,6 +59,6 @@ be used for additional message information.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_msgcall.html b/db/docs/api_cxx/env_set_msgcall.html index 4da39490b..7f1714a77 100644 --- a/db/docs/api_cxx/env_set_msgcall.html +++ b/db/docs/api_cxx/env_set_msgcall.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ are undefined.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_msgfile.html b/db/docs/api_cxx/env_set_msgfile.html index fdcc4a8a5..eb7d05cbf 100644 --- a/db/docs/api_cxx/env_set_msgfile.html +++ b/db/docs/api_cxx/env_set_msgfile.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ FILE * in msgfilep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_mutexlocks.html b/db/docs/api_cxx/env_set_mutexlocks.html deleted file mode 100644 index b728927a2..000000000 --- a/db/docs/api_cxx/env_set_mutexlocks.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_mutexlocks - - - - - - - -
-

DbEnv::set_mutexlocks

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_mutexlocks(int do_lock); -

-

Description

-

Toggle mutex locks. Setting do_lock to a zero value causes -Berkeley DB to grant all requested mutual exclusion mutexes without regard -for their availability. -

This functionality should never be used for any other purpose than -debugging. -

The DbEnv::set_mutexlocks interface may be used to configure Berkeley DB at any time -during the life of the application. -

The DbEnv::set_mutexlocks method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_pageyield.html b/db/docs/api_cxx/env_set_pageyield.html deleted file mode 100644 index 01247edc5..000000000 --- a/db/docs/api_cxx/env_set_pageyield.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_pageyield - - - - - - - -
-

DbEnv::set_pageyield

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-static int -DbEnv::set_pageyield(int pageyield); -

-

Description

-

Yield the processor whenever requesting a page from the cache. Setting -pageyield to a non-zero value causes Berkeley DB to yield the processor -any time a thread requests a page from the cache. -

The DbEnv::set_pageyield interface affects the entire application, not a single -database or database environment. -

While the DbEnv::set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

This functionality should never be used for any other purpose than stress -testing. -

The DbEnv::set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application. -

The DbEnv::set_pageyield method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_paniccall.html b/db/docs/api_cxx/env_set_paniccall.html deleted file mode 100644 index 6b477c9e9..000000000 --- a/db/docs/api_cxx/env_set_paniccall.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: DbEnv::set_paniccall - - - - - - - -
-

DbEnv::set_paniccall

-
-API -Ref
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_paniccall(void (*db_panic_fcn)(DbEnv *dbenv, int errval)); -

-
-

Description: DbEnv::set_paniccall

-

Errors can occur in the Berkeley DB library where the only solution is to shut -down the application and run recovery (for example, if Berkeley DB is unable -to allocate heap memory). In such cases, the Berkeley DB methods will -either return DB_RUNRECOVERY or throw a DbRunRecoveryException, -depending on the API configuration. -It is often easier to simply exit the application when such errors occur -rather than gracefully return up the stack. The DbEnv::set_paniccall method -specifies a function to be called when -DB_RUNRECOVERY is about to be returned or DbRunRecoveryException -is about to be thrown -from a Berkeley DB method.

-

The DbEnv::set_paniccall method may be called at any time during the life of the -application.

-

The DbEnv::set_paniccall method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
db_panic_fcn
The db_panic_fcn parameter is the application-specified function -called in the case of a database environment panic. The function takes -two arguments: -
-
dbenv
The dbenv parameter is the enclosing database environment handle. -
errval
The errval parameter is the error value that would have been -returned to the caller if DB_RUNRECOVERY were not going to be -returned instead. -
-
-
-

Class

-DbEnv -

See Also

-Database Environments and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_cxx/env_set_panicstate.html b/db/docs/api_cxx/env_set_panicstate.html deleted file mode 100644 index 6655003cc..000000000 --- a/db/docs/api_cxx/env_set_panicstate.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_panicstate - - - - - - - -
-

DbEnv::set_panicstate

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-static int -DbEnv::set_panicstate(int panic); -

-

Description

-

Toggle the Berkeley DB panic state. Setting panic to a non-zero value -causes Berkeley DB to refuse attempts to call Berkeley DB functions with the -DB_RUNRECOVERY error return. -

The DbEnv::set_panicstate interface affects the entire application, not a single -database or database environment. -

While the DbEnv::set_panicstate interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

The DbEnv::set_panicstate method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_rec_init.html b/db/docs/api_cxx/env_set_rec_init.html deleted file mode 100644 index 96af59485..000000000 --- a/db/docs/api_cxx/env_set_rec_init.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_recovery_init - - - - - - - -
-

DbEnv::set_recovery_init

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_recovery_init(int (*db_recovery_init_fcn)(DbEnv *)); -

-

Description

-

Applications installing application-specific recovery methods need -to be called before Berkeley DB performs recovery so they may add their recovery -methods to Berkeley DB's. -

The DbEnv::set_recovery_init method supports this functionality. The -db_recovery_init_fcn method must be declared with one -argument, a reference to the enclosing Berkeley DB environment. This -method will be called after the DbEnv::open has been called, -but before recovery is started. -

If the db_recovery_init_fcn method returns a non-zero value, -no recovery will be performed and DbEnv::open will return the same -value to its caller. -

The DbEnv::set_recovery_init interface may only be used to configure Berkeley DB before -the DbEnv::open interface is called. -

The DbEnv::set_recovery_init method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv::open was called. -

-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_region_init.html b/db/docs/api_cxx/env_set_region_init.html deleted file mode 100644 index f052adaf6..000000000 --- a/db/docs/api_cxx/env_set_region_init.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_region_init - - - - - - - -
-

DbEnv::set_region_init

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-static int -DbEnv::set_region_init(int region_init); -

-

Description

-

Page-fault shared regions into memory when initially creating or joining -a Berkeley DB environment. In some applications, the expense of page-faulting -the shared memory regions can affect performance, e.g., when the -page-fault occurs while holding a lock, other lock requests can convoy -and overall throughput may decrease. Setting region_init to a -non-zero value specifies that shared regions be read or written, as -appropriate, when the region is joined by the application. This forces -the underlying virtual memory and file systems to instantiate both the -necessary memory and the necessary disk space. This can also avoid -out-of-disk space failures later on. -

The DbEnv::set_region_init interface affects the entire application, not a single -database or database environment. -

While the DbEnv::set_region_init interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

The DbEnv::set_region_init method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

The database environment's initial behavior with respect to shared memory regions may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_region_init", one or more whitespace characters, -and the string "1". Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_rpc_server.html b/db/docs/api_cxx/env_set_rpc_server.html index da69cd9bd..b8550f3ac 100644 --- a/db/docs/api_cxx/env_set_rpc_server.html +++ b/db/docs/api_cxx/env_set_rpc_server.html @@ -1,6 +1,5 @@ - - + @@ -86,6 +85,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_server.html b/db/docs/api_cxx/env_set_server.html deleted file mode 100644 index 208c9cc9c..000000000 --- a/db/docs/api_cxx/env_set_server.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_server - - - - - - - -
-

DbEnv::set_server

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_server(char *host, - long cl_timeout, long sv_timeout, u_int32_t flags); -

-

Description

-

Connects to the DB server on the indicated hostname and sets up a channel -for communication. -

The cl_timeout argument specifies the number of seconds the client -should wait for results to come back from the server. Once the timeout -has expired on any communication with the server, DB_NOSERVER will -be returned. If this value is zero, a default timeout is used. -

The sv_timeout argument specifies the number of seconds the server -should allow a client connection to remain idle before assuming that -client is gone. Once that timeout has been reached, the server releases -all resources associated with that client connection. Subsequent attempts -by that client to communicate with the server result in -DB_NOSERVER_ID indicating that an invalid identifier has been -given to the server. This value can be considered a hint to the server. -The server may alter this value based on its own policies or allowed -values. If this value is zero, a default timeout is used. -

The flags parameter is currently unused, and must be set to 0. -

When the DbEnv::set_server method has been called, any subsequent calls -to Berkeley DB library interfaces may return either DB_NOSERVER or -DB_NOSERVER_ID. -

The DbEnv::set_server method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

dbenv_set_server -

-

Class

-DbEnv -

See Also

-DbEnv::close, -DbEnv::open, -DbEnv::remove, -DbEnv::err, -DbEnv::strerror, -DbEnv::version, -DbEnv::set_cachesize, -DbEnv::set_errcall, -DbEnv::set_errfile, -DbEnv::set_error_stream, -DbEnv::set_errpfx, -DbEnv::set_flags, -DbEnv::set_mutexlocks, -DbEnv::set_paniccall, -and -DbEnv::set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_shm_key.html b/db/docs/api_cxx/env_set_shm_key.html index 3245f6fd8..c200d2936 100644 --- a/db/docs/api_cxx/env_set_shm_key.html +++ b/db/docs/api_cxx/env_set_shm_key.html @@ -1,6 +1,5 @@ - - + @@ -112,6 +111,6 @@ base segment ID in shm_keyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_tas_spins.html b/db/docs/api_cxx/env_set_tas_spins.html deleted file mode 100644 index 342aab2ab..000000000 --- a/db/docs/api_cxx/env_set_tas_spins.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - -Berkeley DB: DbEnv::set_tas_spins - - - - - - - -
-

DbEnv::set_tas_spins

-
-API -Ref
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_tas_spins(u_int32_t tas_spins); -

-int -DbEnv::get_tas_spins(u_int32_t *, tas_spinsp); -

-
-

Description: DbEnv::set_tas_spins

-

Specify that test-and-set mutexes should spin tas_spins times -without blocking. The value defaults to 1 on uniprocessor systems and -to 50 times the number of processors on multiprocessor systems.

-

The database environment's test-and-set spin count may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_tas_spins", one or more whitespace characters, -and the number of spins. -Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time.

-

The DbEnv::set_tas_spins method configures operations performed using the specified -DbEnv handle, not all operations performed on the underlying -database environment.

-

The DbEnv::set_tas_spins method may be called at any time during the life of the -application.

-

The DbEnv::set_tas_spins method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
tas_spins
The tas_spins parameter is the number of spins test-and-set -mutexes should execute before blocking. -
-

Errors

-

The DbEnv::set_tas_spins method -may fail and throw -DbException, -encapsulating one of the following non-zero errors, or return one of -the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Description: DbEnv::get_tas_spins

-

The DbEnv::get_tas_spins method returns the test-and-set spin count.

-

The DbEnv::get_tas_spins method may be called at any time during the life of the -application.

-

The DbEnv::get_tas_spins method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
tas_spinsp
The DbEnv::get_tas_spins method returns the -test-and-set spin count in tas_spinsp. -
-
-

Class

-DbEnv -

See Also

-Database Environments and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_cxx/env_set_thread_count.html b/db/docs/api_cxx/env_set_thread_count.html index 39bd833e6..7aafa7562 100644 --- a/db/docs/api_cxx/env_set_thread_count.html +++ b/db/docs/api_cxx/env_set_thread_count.html @@ -1,6 +1,5 @@ - - - + + @@ -36,6 +35,18 @@ database environment if the DbEnv::failchk DbEnv::set_thread_count method does not set the maximum number of threads but is used to determine memory sizing and the thread control block reclamation policy.

+

If a process has not configured an is_alive function from the +DbEnv::set_isalive method, and then attempts to join a database +environment configured for failure checking with the +DbEnv::failchk, DbEnv::set_thread_id, +DbEnv::set_isalive and DbEnv::set_thread_count methods, the +program may be unable to allocate a thread control block and fail to +join the environment. +This is true of the standalone Berkeley DB utility programs. +To avoid problems when using the standalone Berkeley DB utility programs with +environments configured for failure checking, incorporate the utility's +functionality directly in the application, or call the +DbEnv::failchk method before running the utility.

The database environment's thread count may also be configured using the environment's DB_CONFIG file. The syntax of the entry in that file is a single line with the string "set_thread_count", one or more whitespace @@ -93,6 +104,6 @@ thread count in countp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_thread_id.html b/db/docs/api_cxx/env_set_thread_id.html index 54a0feb64..5a2af6641 100644 --- a/db/docs/api_cxx/env_set_thread_id.html +++ b/db/docs/api_cxx/env_set_thread_id.html @@ -1,6 +1,5 @@ - - + @@ -121,6 +120,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_thread_id_string.html b/db/docs/api_cxx/env_set_thread_id_string.html index 87eb34c57..e1e05a11e 100644 --- a/db/docs/api_cxx/env_set_thread_id_string.html +++ b/db/docs/api_cxx/env_set_thread_id_string.html @@ -1,6 +1,5 @@ - - + @@ -83,6 +82,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_timeout.html b/db/docs/api_cxx/env_set_timeout.html index 7f42abccb..7a8fb29b6 100644 --- a/db/docs/api_cxx/env_set_timeout.html +++ b/db/docs/api_cxx/env_set_timeout.html @@ -1,6 +1,5 @@ - - + @@ -118,6 +117,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_tmp_dir.html b/db/docs/api_cxx/env_set_tmp_dir.html index c6678fcba..9953e587d 100644 --- a/db/docs/api_cxx/env_set_tmp_dir.html +++ b/db/docs/api_cxx/env_set_tmp_dir.html @@ -1,6 +1,5 @@ - - + @@ -118,6 +117,6 @@ database environment temporary file directory in dirp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_tx_max.html b/db/docs/api_cxx/env_set_tx_max.html index 08c310f50..51ff1cc29 100644 --- a/db/docs/api_cxx/env_set_tx_max.html +++ b/db/docs/api_cxx/env_set_tx_max.html @@ -1,6 +1,5 @@ - - + @@ -103,6 +102,6 @@ number of active transactions in tx_maxp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_tx_recover.html b/db/docs/api_cxx/env_set_tx_recover.html deleted file mode 100644 index 08ceec64d..000000000 --- a/db/docs/api_cxx/env_set_tx_recover.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - -Berkeley DB: DbEnv::set_tx_recover - - - - - - - -
-

DbEnv::set_tx_recover

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::set_tx_recover(int (*)(DbEnv *dbenv, - Dbt *log_rec, DbLsn *lsn, db_recops op)); -

-

Description

-

Set the application's method to be called during transaction abort -and recovery. This method must return 0 on success and either -errno or a value outside of the Berkeley DB error name space on -failure. It takes four arguments: -

-

dbenv
A Berkeley DB environment. -

log_rec
A log record. -

lsn
A log sequence number. -

op
One of the following values: -

-

DB_TXN_BACKWARD_ROLL
The log is being read backward to determine which transactions have been -committed and to abort those operations that were not, undo the operation -described by the log record. -

DB_TXN_FORWARD_ROLL
The log is being played forward, redo the operation described by the log -record. -

DB_TXN_ABORT
The log is being read backwards during a transaction abort, undo the -operation described by the log record. -
-
-

The DbEnv::set_tx_recover interface may only be used to configure Berkeley DB before -the DbEnv::open interface is called. -

The DbEnv::set_tx_recover method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv::open was called. -

-

Classes

-DbEnv, DbTxn -

See Also

-DbEnv::set_tx_max, -DbEnv::set_tx_recover, -DbEnv::set_tx_timestamp, -DbTxn::abort, -DbEnv::txn_begin, -DbEnv::txn_checkpoint, -DbTxn::commit, -DbTxn::id, -DbTxn::prepare -and -DbEnv::txn_stat. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/env_set_tx_timestamp.html b/db/docs/api_cxx/env_set_tx_timestamp.html index 790ab5c6c..ffd038293 100644 --- a/db/docs/api_cxx/env_set_tx_timestamp.html +++ b/db/docs/api_cxx/env_set_tx_timestamp.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ recovery timestamp in timestampp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_set_verbose.html b/db/docs/api_cxx/env_set_verbose.html index 54f303b35..56fe3f249 100644 --- a/db/docs/api_cxx/env_set_verbose.html +++ b/db/docs/api_cxx/env_set_verbose.html @@ -1,6 +1,5 @@ - - - + + @@ -60,14 +59,14 @@ messages are output.

which
The which parameter must be set to one of the following values:
DB_VERB_DEADLOCK
Display additional information when doing deadlock detection. +
DB_VERB_FILEOPS
Display additional information when performing filesystem operations +such as open, close or rename. May not be available on all platforms. +
DB_VERB_FILEOPS_ALL
Display additional information when performing all filesystem operations, +including read and write. May not be available on all platforms.
DB_VERB_RECOVERY
Display additional information when performing recovery.
DB_VERB_REGISTER
Display additional information concerning support for the DB_REGISTER flag to the DbEnv::open method. -
DB_VERB_REPLICATION
Display additional information when processing replication messages. -

To get complete replication logging when debugging replication -applications, you must also configure and build the Berkeley DB library with -the --enable-diagnostic -configuration option as well as call the DbEnv::set_verbose method.

+
DB_VERB_REPLICATION
Display detailed information when processing replication messages.
DB_VERB_WAITSFOR
Display the waits-for table when doing deadlock detection.
@@ -109,6 +108,6 @@ otherwise on.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_stat.html b/db/docs/api_cxx/env_stat.html index 34583a0ad..8c452bf63 100644 --- a/db/docs/api_cxx/env_stat.html +++ b/db/docs/api_cxx/env_stat.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_strerror.html b/db/docs/api_cxx/env_strerror.html index eb9cfea1d..b87084ba9 100644 --- a/db/docs/api_cxx/env_strerror.html +++ b/db/docs/api_cxx/env_strerror.html @@ -1,6 +1,5 @@ - - + @@ -50,6 +49,6 @@ string is wanted.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/env_version.html b/db/docs/api_cxx/env_version.html index 8e867a5d5..909128f0f 100644 --- a/db/docs/api_cxx/env_version.html +++ b/db/docs/api_cxx/env_version.html @@ -1,6 +1,5 @@ - - + @@ -47,6 +46,6 @@ is copied to the memory to which it refers.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/exc_package.html b/db/docs/api_cxx/exc_package.html index 4861a717c..ea739e089 100644 --- a/db/docs/api_cxx/exc_package.html +++ b/db/docs/api_cxx/exc_package.html @@ -1,6 +1,5 @@ - - + @@ -18,6 +17,6 @@ DbMemoryExceptionException Class for insufficient memory DbRunRecoveryExceptionException Class for failures requiring recovery -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/except_class.html b/db/docs/api_cxx/except_class.html index 756595b57..95f90a64b 100644 --- a/db/docs/api_cxx/except_class.html +++ b/db/docs/api_cxx/except_class.html @@ -1,6 +1,5 @@ - - + @@ -60,6 +59,6 @@ not appear in the database.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/frame.html b/db/docs/api_cxx/frame.html index 3f1a25891..5b7cfc5bf 100644 --- a/db/docs/api_cxx/frame.html +++ b/db/docs/api_cxx/frame.html @@ -1,8 +1,8 @@ - + -Berkeley DB API (Version: 4.5.20) +Berkeley DB API (Version: 4.6.18) @@ -10,9 +10,9 @@ Berkeley DB API (Version: 4.5.20) +title="Berkeley DB API (Version: 4.6.18)"> <meta http-equiv="refresh" content="0;url=api_index.html"> diff --git a/db/docs/api_cxx/get_dbt.html b/db/docs/api_cxx/get_dbt.html deleted file mode 100644 index 29e2567f9..000000000 --- a/db/docs/api_cxx/get_dbt.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - -Berkeley DB: DbMemoryException::get_dbt - - - - - - - -
-

DbMemoryException::get_dbt

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-Dbt * -DbMemoryException::get_dbt() const; -

-

Description

-

Return the Dbt that has insufficient memory to complete the -operation, causing the DbMemoryException to be thrown. -

Class

-DbException -

See Also

-DbException::get_errno, -DbException::what, -and -DbMemoryException -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/get_errno.html b/db/docs/api_cxx/get_errno.html deleted file mode 100644 index 25c639ac2..000000000 --- a/db/docs/api_cxx/get_errno.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - -Berkeley DB: DbException::get_errno - - - - - - - -
-

DbException::get_errno

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-const int -DbException::get_errno(); -

-

Description

-

A DbException object contains an informational string and an errno. -The errno can be obtained by using DbException::get_errno. -The informational string can be obtained by using DbException::what. -

Class

-DbException -

See Also

-DbException::get_errno -and -DbException::what. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/lock_class.html b/db/docs/api_cxx/lock_class.html index 37abbbbde..637bf5a1b 100644 --- a/db/docs/api_cxx/lock_class.html +++ b/db/docs/api_cxx/lock_class.html @@ -1,6 +1,5 @@ - - + @@ -44,6 +43,6 @@ for a single lock, and has no methods of its own.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_detect.html b/db/docs/api_cxx/lock_detect.html index b1b945d97..1e2aceebd 100644 --- a/db/docs/api_cxx/lock_detect.html +++ b/db/docs/api_cxx/lock_detect.html @@ -1,6 +1,5 @@ - - - + + @@ -23,7 +22,7 @@ #include <db_cxx.h>

int -DbEnv::lock_detect(u_int32_t flags, u_int32_t atype, int *aborted); +DbEnv::lock_detect(u_int32_t flags, u_int32_t atype, int *rejected);


Description: DbEnv::lock_detect

@@ -37,7 +36,7 @@ failure, and returns 0 on success.

Parameters

-
aborted
If the aborted parameter is non-NULL, the memory location to +
rejected
If the rejected parameter is non-NULL, the memory location to which it refers will be set to the number of lock requests that were rejected.
atype
The atype parameter specifies which lock request(s) to reject. @@ -77,6 +76,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_get.html b/db/docs/api_cxx/lock_get.html index ff6c2f16f..fbc0b75fd 100644 --- a/db/docs/api_cxx/lock_get.html +++ b/db/docs/api_cxx/lock_get.html @@ -1,6 +1,5 @@ - - + @@ -101,6 +100,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_id.html b/db/docs/api_cxx/lock_id.html index 67510468e..179106304 100644 --- a/db/docs/api_cxx/lock_id.html +++ b/db/docs/api_cxx/lock_id.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_id_free.html b/db/docs/api_cxx/lock_id_free.html index 2910fc160..96c02c997 100644 --- a/db/docs/api_cxx/lock_id_free.html +++ b/db/docs/api_cxx/lock_id_free.html @@ -1,6 +1,5 @@ - - + @@ -57,6 +56,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_list.html b/db/docs/api_cxx/lock_list.html index a0720601f..1d7f8a1b0 100644 --- a/db/docs/api_cxx/lock_list.html +++ b/db/docs/api_cxx/lock_list.html @@ -1,6 +1,5 @@ - - + @@ -32,6 +31,6 @@ DbEnv::set_lk_max_objectsSet maximum number of lock objects DbEnv::set_timeoutSet lock and transaction timeout -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_put.html b/db/docs/api_cxx/lock_put.html index 9a6412019..242b99aa6 100644 --- a/db/docs/api_cxx/lock_put.html +++ b/db/docs/api_cxx/lock_put.html @@ -1,6 +1,5 @@ - - + @@ -56,6 +55,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_stat.html b/db/docs/api_cxx/lock_stat.html index de730af45..b53badf5c 100644 --- a/db/docs/api_cxx/lock_stat.html +++ b/db/docs/api_cxx/lock_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -70,12 +69,27 @@ for which the thread of control did not wait.

u_int32_t st_ntxntimeouts;
The number of transactions that have timed out. This value is also a component of st_ndeadlocks, the total number of deadlocks detected. +
u_int32_t st_objs_wait;
The number of requests to allocate or deallocate an object +for which the thread of control waited. +
u_int32_t st_objs_nowait;
The number of requests to allocate or deallocate an object +for which the thread of control did not wait. +
u_int32_t st_lockers_wait;
The number of requests to allocate or deallocate a locker +for which the thread of control waited. +
u_int32_t st_lockers_nowait;
The number of requests to allocate or deallocate a locker +for which the thread of control did not wait. +
u_int32_t st_locks_wait;
The number of requests to allocate or deallocate a lock structure +for which the thread of control waited. +
u_int32_t st_locks_nowait;
The number of requests to allocate or deallocate a lock structure +for which the thread of control did not wait. +
u_int32_t st_hash_len;
Maximum length of a lock hash bucket.
roff_t st_regsize;
The size of the lock region, in bytes.
u_int32_t st_region_wait;
The number of times that a thread of control was forced to wait before obtaining the lock region mutex.
u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the lock region mutex without waiting.
+

The DbEnv::lock_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::lock_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -103,8 +117,12 @@ invalid flag value or parameter was specified.


Description: DbEnv::lock_stat_print

-

The DbEnv::lock_stat_print method prints diagnostic information to the output -channel described by the DbEnv::set_msgfile method.

+

The DbEnv::lock_stat_print method displays the +locking subsystem statistical information, as described for the DbEnv::lock_stat method. +The information is printed to a specified output channel (see the +DbEnv::set_msgfile method for more information), or passed to an +application callback function (see the DbEnv::set_msgcall method for +more information).

The DbEnv::lock_stat_print method may not be called before the DbEnv::open method has been called.

The DbEnv::lock_stat_print method @@ -114,10 +132,11 @@ failure, and returns 0 on success.

Parameters

-
flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more -of the following values: +
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values:
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values.
DB_STAT_LOCK_CONF
Display the lock conflict matrix.
DB_STAT_LOCK_LOCKERS
Display the lockers within hash chains.
DB_STAT_LOCK_OBJECTS
Display the lock objects within hash chains. @@ -133,6 +152,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lock_vec.html b/db/docs/api_cxx/lock_vec.html index 746587ff5..5a051578c 100644 --- a/db/docs/api_cxx/lock_vec.html +++ b/db/docs/api_cxx/lock_vec.html @@ -1,6 +1,5 @@ - - + @@ -163,6 +162,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lockng_class.html b/db/docs/api_cxx/lockng_class.html index 8fc73e26f..dfbe49132 100644 --- a/db/docs/api_cxx/lockng_class.html +++ b/db/docs/api_cxx/lockng_class.html @@ -1,6 +1,5 @@ - - + @@ -70,6 +69,6 @@ called, and returns the index of the failed DB_LOCKREQ when

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_archive.html b/db/docs/api_cxx/log_archive.html index 8ce3120b3..07a3eddd6 100644 --- a/db/docs/api_cxx/log_archive.html +++ b/db/docs/api_cxx/log_archive.html @@ -1,6 +1,5 @@ - - + @@ -110,6 +109,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_compare.html b/db/docs/api_cxx/log_compare.html index 5b0ef3ab5..13cd3640e 100644 --- a/db/docs/api_cxx/log_compare.html +++ b/db/docs/api_cxx/log_compare.html @@ -1,6 +1,5 @@ - - + @@ -49,6 +48,6 @@ to be compared.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_cursor.html b/db/docs/api_cxx/log_cursor.html index 205e81a0b..44cbb9c1a 100644 --- a/db/docs/api_cxx/log_cursor.html +++ b/db/docs/api_cxx/log_cursor.html @@ -1,6 +1,5 @@ - - + @@ -58,6 +57,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_file.html b/db/docs/api_cxx/log_file.html index ab48e1c80..0960fe51b 100644 --- a/db/docs/api_cxx/log_file.html +++ b/db/docs/api_cxx/log_file.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_flush.html b/db/docs/api_cxx/log_flush.html index 9e3717f37..d0693adce 100644 --- a/db/docs/api_cxx/log_flush.html +++ b/db/docs/api_cxx/log_flush.html @@ -1,6 +1,5 @@ - - + @@ -58,6 +57,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_get.html b/db/docs/api_cxx/log_get.html deleted file mode 100644 index 37a8c497b..000000000 --- a/db/docs/api_cxx/log_get.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - -Berkeley DB: DbEnv::log_get - - - - - - - -
-

DbEnv::log_get

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::log_get(DbLsn *lsn, Dbt *data, u_int32_t flags); -

-

Description

-

The DbEnv::log_get method implements a cursor inside of the log, -retrieving records from the log according to the lsn and -flags arguments. -

The data field of the data structure is set to the record -retrieved and the size field indicates the number of bytes in the record. -See Dbt for a description of other fields in the data -structure. When multiple threads are using the returned log handle -concurrently, one of the DB_DBT_MALLOC, DB_DBT_REALLOC or -DB_DBT_USERMEM flags must be specified for any Dbt used -for data retrieval. -

The flags argument must be set to exactly one of the following values: -

-

DB_CHECKPOINT
The last record written with the DB_CHECKPOINT flag specified to the -DbEnv::log_put method is returned in the data argument. The -lsn argument is overwritten with the DbLsn of the record -returned. If no record has been previously written with the DB_CHECKPOINT -flag specified, the first record in the log is returned. -

If the log is empty, the DbEnv::log_get method will return DB_NOTFOUND. -

DB_FIRST
The first record from any of the log files found in the log directory -is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the log is empty, the DbEnv::log_get method will return DB_NOTFOUND. -

DB_LAST
The last record in the log is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the log is empty, the DbEnv::log_get method will return DB_NOTFOUND. -

DB_NEXT
The current log position is advanced to the next record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, DbEnv::log_get will return the first record in the log. -If the last log record has already been returned or the log is empty, the -DbEnv::log_get method will return DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -DbEnv::log_get with the DB_NEXT flag set will return EINVAL. -

DB_PREV
The current log position is moved to the previous record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, -DbEnv::log_get will return the last record in the log. -If the first log record has already been returned or the log is empty, the -DbEnv::log_get method will return DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -DbEnv::log_get with the DB_PREV flag set will return EINVAL. -

DB_CURRENT
Return the log record currently referenced by the log. -

If the log pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, or if the log was opened with the DB_THREAD flag set, -DbEnv::log_get will return EINVAL. -

DB_SET
Retrieve the record specified by the lsn argument. If the -specified DbLsn is invalid (e.g., does not appear in the log) -DbEnv::log_get will return EINVAL. -
-

Otherwise, the DbEnv::log_get method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

The DbEnv::log_get method may fail and throw an exception or return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The DB_FIRST flag was specified and no log files were found. -

-

The DbEnv::log_get method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv::log_get method may fail and either -return DB_RUNRECOVERY or throw an exception encapsulating -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

Class

-DbEnv -

See Also

-DbEnv::set_lg_bsize, -DbEnv::set_lg_max, -DbEnv::log_archive, -DbEnv::log_compare, -DbEnv::log_file, -DbEnv::log_flush, -DbEnv::log_get, -DbEnv::log_put, -DbEnv::log_register, -DbEnv::log_stat -and -DbEnv::log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/log_list.html b/db/docs/api_cxx/log_list.html index 1804953c1..edbcae133 100644 --- a/db/docs/api_cxx/log_list.html +++ b/db/docs/api_cxx/log_list.html @@ -1,6 +1,5 @@ - - + @@ -33,6 +32,6 @@ DbEnv::set_lg_maxSet log file size DbEnv::set_lg_regionmaxSet logging region size -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_printf.html b/db/docs/api_cxx/log_printf.html index f9333cd6b..de7c89a78 100644 --- a/db/docs/api_cxx/log_printf.html +++ b/db/docs/api_cxx/log_printf.html @@ -1,6 +1,5 @@ - - + @@ -68,6 +67,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_put.html b/db/docs/api_cxx/log_put.html index 737e2e6fb..cfbfc4599 100644 --- a/db/docs/api_cxx/log_put.html +++ b/db/docs/api_cxx/log_put.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_register.html b/db/docs/api_cxx/log_register.html deleted file mode 100644 index b837a60b3..000000000 --- a/db/docs/api_cxx/log_register.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - -Berkeley DB: DbEnv::log_register - - - - - - - -
-

DbEnv::log_register

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::log_register(Db *dbp, const char *name); -

-

Description

-

The DbEnv::log_register method registers a file name with the specified Berkeley DB -environment's log manager. The log manager records all file name mappings -at each checkpoint so that a recovery process can identify the file to -which a record in the log refers. -

The dbp argument should be a reference to the Db object being -registered. The name argument should be a file name appropriate -for opening the file in the environment, during recovery. -

The DbEnv::log_register method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

The DbEnv::log_register method may fail and throw an exception or return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The DbEnv::log_register method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv::log_register method may fail and either -return DB_RUNRECOVERY or throw an exception encapsulating -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

Class

-DbEnv -

See Also

-DbEnv::set_lg_bsize, -DbEnv::set_lg_max, -DbEnv::log_archive, -DbEnv::log_compare, -DbEnv::log_file, -DbEnv::log_flush, -DbEnv::log_get, -DbEnv::log_put, -DbEnv::log_register, -DbEnv::log_stat -and -DbEnv::log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/log_stat.html b/db/docs/api_cxx/log_stat.html index 32d0cdab6..085b8e14c 100644 --- a/db/docs/api_cxx/log_stat.html +++ b/db/docs/api_cxx/log_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -72,6 +71,8 @@ obtaining the log region mutex.

u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the log region mutex without waiting.
+

The DbEnv::log_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::log_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -130,6 +131,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/log_unregister.html b/db/docs/api_cxx/log_unregister.html deleted file mode 100644 index 364e62259..000000000 --- a/db/docs/api_cxx/log_unregister.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - -Berkeley DB: DbEnv::log_unregister - - - - - - - -
-

DbEnv::log_unregister

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-int -DbEnv::log_unregister(int32_t DB *dbp); -

-

Description

-

The DbEnv::log_unregister method function unregisters the file represented by -the dbp parameter from the Berkeley DB environment's log manager. -

The DbEnv::log_unregister method either returns a non-zero error value or throws an exception that -encapsulates a non-zero error value on failure, and returns 0 on success. -

Errors

-

The DbEnv::log_unregister method may fail and throw an exception or return a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The DbEnv::log_unregister method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv::log_unregister method may fail and either -return DB_RUNRECOVERY or throw an exception encapsulating -DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail -in the same way. -

Class

-DbEnv -

See Also

-DbEnv::set_lg_bsize, -DbEnv::set_lg_max, -DbEnv::log_archive, -DbEnv::log_compare, -DbEnv::log_file, -DbEnv::log_flush, -DbEnv::log_get, -DbEnv::log_put, -DbEnv::log_register, -DbEnv::log_stat -and -DbEnv::log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/logc_class.html b/db/docs/api_cxx/logc_class.html index e118ce2df..c9ac1c110 100644 --- a/db/docs/api_cxx/logc_class.html +++ b/db/docs/api_cxx/logc_class.html @@ -1,6 +1,5 @@ - - + @@ -40,6 +39,6 @@ return.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/logc_close.html b/db/docs/api_cxx/logc_close.html index 51e871000..93b316e47 100644 --- a/db/docs/api_cxx/logc_close.html +++ b/db/docs/api_cxx/logc_close.html @@ -1,6 +1,5 @@ - - + @@ -58,6 +57,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/logc_get.html b/db/docs/api_cxx/logc_get.html index ae4d6d836..74a29ce1c 100644 --- a/db/docs/api_cxx/logc_get.html +++ b/db/docs/api_cxx/logc_get.html @@ -1,6 +1,5 @@ - - + @@ -107,6 +106,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/lsn_class.html b/db/docs/api_cxx/lsn_class.html index 93a0a00c3..042b14974 100644 --- a/db/docs/api_cxx/lsn_class.html +++ b/db/docs/api_cxx/lsn_class.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ the other specifies an offset in the log file.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mem_class.html b/db/docs/api_cxx/mem_class.html deleted file mode 100644 index dbdbfccb4..000000000 --- a/db/docs/api_cxx/mem_class.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - -Berkeley DB: DbMemoryException - - - - - - - -
-

DbMemoryException

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-class DbMemoryException : public DbException { - DbMemoryException(Dbt *dbt); - DbMemoryException(const char *description); - DbMemoryException(const char *prefix, Dbt *dbt); - DbMemoryException(const char *prefix1, const char *prefix2, Dbt *dbt); - Dbt *get_dbt() const; -}; -

-

Description

-

This manual page describes the DbMemoryException class and how -it is used by the various Db* classes. -

A DbMemoryException is thrown when there is insufficient memory -to complete an operation, and there is the possibility of recovering. -An example is during a Db::get or Dbc::get operation with -the Dbt flags set to DB_DBT_USERMEM. In this case, the -DbMemoryException::get_dbt method returns the problematic Dbt, and the -operation can be retried with a larger buffer. -

Class

-DbException -

See Also

-DbException::get_errno, -DbException::what, -and -DbMemoryException -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/memp_class.html b/db/docs/api_cxx/memp_class.html index 24183716a..bb6679c8c 100644 --- a/db/docs/api_cxx/memp_class.html +++ b/db/docs/api_cxx/memp_class.html @@ -1,6 +1,5 @@ - - - + + @@ -35,7 +34,7 @@ it is used by the various Db* classes.

to complete an operation, and there is the possibility of recovering. An example is during a Db::get or Dbc::get operation with the Dbt flags set to DB_DBT_USERMEM.

-DB_BUFFER_SMALL +

The DbException errno value is set to DB_BUFFER_SMALL or ENOMEM.

The get_dbt method returns the Dbt with insufficient @@ -48,6 +47,6 @@ is still in scope and has not been deleted.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fclose.html b/db/docs/api_cxx/memp_fclose.html index bd79adc89..592bf3365 100644 --- a/db/docs/api_cxx/memp_fclose.html +++ b/db/docs/api_cxx/memp_fclose.html @@ -1,6 +1,5 @@ - - + @@ -53,6 +52,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fcreate.html b/db/docs/api_cxx/memp_fcreate.html index 0e0e34907..9a7c39444 100644 --- a/db/docs/api_cxx/memp_fcreate.html +++ b/db/docs/api_cxx/memp_fcreate.html @@ -1,6 +1,5 @@ - - + @@ -49,6 +48,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fget.html b/db/docs/api_cxx/memp_fget.html index 7d3e33458..ad15e828d 100644 --- a/db/docs/api_cxx/memp_fget.html +++ b/db/docs/api_cxx/memp_fget.html @@ -1,6 +1,5 @@ - - + @@ -126,6 +125,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fopen.html b/db/docs/api_cxx/memp_fopen.html index b10470969..bb686b06a 100644 --- a/db/docs/api_cxx/memp_fopen.html +++ b/db/docs/api_cxx/memp_fopen.html @@ -1,6 +1,5 @@ - - + @@ -104,6 +103,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fput.html b/db/docs/api_cxx/memp_fput.html index 4c3f9ae9f..89d636b4d 100644 --- a/db/docs/api_cxx/memp_fput.html +++ b/db/docs/api_cxx/memp_fput.html @@ -1,6 +1,5 @@ - - - + + @@ -23,11 +22,13 @@ #include <db_cxx.h>

int -DbMpoolFile::put(void *pgaddr, u_int32_t flags); +DbMpoolFile::put(void *pgaddr, DB_CACHE_PRIORITY priority, u_int32_t flags);


Description: DbMpoolFile::put

-

The DbMpoolFile::put method returns a page to the cache.

+

The DbMpoolFile::put method returns a reference to a page in the cache, +setting the priority of the page as specified by the priority +parameter.

The DbMpoolFile::put method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -35,14 +36,18 @@ failure, and returns 0 on success.

Parameters

-
pgaddr
The pgaddr parameter is the address of the page to be -returned to the cache. The pgaddr parameter must be an -address previously returned by DbMpoolFile::get. -
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one -or more of the following values: +
flags
The flags parameter is currently unused, and must be set to 0. +
pgaddr
The pgaddr parameter is the address of the page to be returned +to the cache. The pgaddr parameter must be a value previously +returned by the DbMpoolFile::get method. +
priority
Set the page's priority as follows:
-
DB_MPOOL_DISCARD
The page is unlikely to be useful in the near future, and should be -discarded before other pages in the pool. +
DB_PRIORITY_UNCHANGED
The priority is unchanged. +
DB_PRIORITY_VERY_LOW
The lowest priority: pages are the most likely to be discarded. +
DB_PRIORITY_LOW
The next lowest priority. +
DB_PRIORITY_DEFAULT
The default priority. +
DB_PRIORITY_HIGH
The next highest priority. +
DB_PRIORITY_VERY_HIGH
The highest priority: pages are the least likely to be discarded.

Errors

@@ -52,8 +57,7 @@ may fail and throw encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

-
EINVAL
If the pgaddr parameter does not refer to a page returned by -DbMpoolFile::get; or if an +
EINVAL
An invalid flag value or parameter was specified.

@@ -65,6 +69,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_fset.html b/db/docs/api_cxx/memp_fset.html deleted file mode 100644 index 4c1bc1033..000000000 --- a/db/docs/api_cxx/memp_fset.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - -Berkeley DB: DbMpoolFile::set - - - - - - - -
-

DbMpoolFile::set

-
-API -Ref
-


- -

-#include <db_cxx.h>
-

-int -DbMpoolFile::set(void *pgaddr, u_int32_t flags); -

-
-

Description: DbMpoolFile::set

-

The DbMpoolFile::set method sets the attributes of a cache page.

-

The DbMpoolFile::set method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
pgaddr
The pgaddr parameter is the address of the page for which -attributes are to be set. he pgaddr parameter must be an -address previously returned by DbMpoolFile::get. -
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one -or more of the following values: -
-
DB_MPOOL_DISCARD
The page is unlikely to be useful in the near future, and should be -discarded before other pages in the pool. -
-
-

Errors

-

The DbMpoolFile::set method -may fail and throw -DbException, -encapsulating one of the following non-zero errors, or return one of -the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Class

-DbEnv, DbMpoolFile -

See Also

-Memory Pools and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. - - diff --git a/db/docs/api_cxx/memp_fsync.html b/db/docs/api_cxx/memp_fsync.html index c33dc840c..4c84adb40 100644 --- a/db/docs/api_cxx/memp_fsync.html +++ b/db/docs/api_cxx/memp_fsync.html @@ -1,6 +1,5 @@ - - - + + @@ -27,10 +26,9 @@ DbMpoolFile::sync();


Description: DbMpoolFile::sync

-

The DbMpoolFile::sync method writes all pages associated with the -DbMpoolFile, which were marked as modified using -DbMpoolFile::put or DbMpoolFile::set, back to the source file. If any -of the modified pages are pinned (that is, currently in use), +

The DbMpoolFile::sync method writes all modified pages associated with the +DbMpoolFile back to the source file. If any of the modified +pages are pinned (that is, currently in use), DbMpoolFile::sync will ignore them.

The DbMpoolFile::sync method either returns a non-zero error value @@ -46,6 +44,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_list.html b/db/docs/api_cxx/memp_list.html index d300fad59..ee0c3cf7a 100644 --- a/db/docs/api_cxx/memp_list.html +++ b/db/docs/api_cxx/memp_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Memory Pools and Related Methods

- + @@ -21,6 +20,7 @@ + @@ -31,7 +31,6 @@ - @@ -43,6 +42,6 @@
Memory Pools and Related MethodsDescription
Db::get_mpfReturn Db's underlying DbMpoolFile handle
Memory Pool Configuration
DbEnv::memp_registerRegister input/output functions for a file in a memory pool
DbEnv::set_cachesizeSet the environment cache size
DbEnv::set_cache_maxSet the maximum cache size
DbEnv::set_mp_max_openfdSet the maximum number of open file descriptors
DbEnv::set_mp_max_writeSet the maximum number of sequential disk writes
DbEnv::set_mp_mmapsizeSet maximum mapped-in database file size
DbMpoolFile::getGet page from a file in a memory pool
DbMpoolFile::openOpen a file in a memory pool
DbMpoolFile::putReturn a page to a memory pool
DbMpoolFile::setSet memory pool page attributes
DbMpoolFile::syncFlush pages from a file in a memory pool
Memory Pool File Configuration
DbMpoolFile::set_clear_lenSet file page bytes to be cleared
DbMpoolFile::set_pgcookieSet file cookie for pgin/pgout
DbMpoolFile::set_prioritySet memory pool file priority
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_maxwrite.html b/db/docs/api_cxx/memp_maxwrite.html index 0c54e094a..535a36239 100644 --- a/db/docs/api_cxx/memp_maxwrite.html +++ b/db/docs/api_cxx/memp_maxwrite.html @@ -1,6 +1,5 @@ - - - + + @@ -23,10 +22,10 @@ #include <db_cxx.h>

int -DbEnv::set_mp_max_write(int maxwrite, int maxwrite_sleep); +DbEnv::set_mp_max_write(int maxwrite, db_timeout_t maxwrite_sleep);

int -DbEnv::get_mp_max_write(int *maxwritep, int *maxwrite_sleepp); +DbEnv::get_mp_max_write(int *maxwritep, db_timeout_t *maxwrite_sleepp);


Description: DbEnv::set_mp_max_write

@@ -44,7 +43,9 @@ failure, and returns 0 on success. library when flushing dirty pages from the cache, or 0 if there is no limitation on the number of sequential write operations.
maxwrite_sleep
The number of microseconds the thread of control should pause before -scheduling further write operations. +scheduling further write operations. It must be specified as an +unsigned 32-bit number of microseconds, limiting the maximum pause to +roughly 71 minutes.

Errors

The DbEnv::set_mp_max_write method @@ -83,6 +84,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_openfd.html b/db/docs/api_cxx/memp_openfd.html index bc45eeb99..a8643cefc 100644 --- a/db/docs/api_cxx/memp_openfd.html +++ b/db/docs/api_cxx/memp_openfd.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ maximum number of file descriptors open in maxopenfdp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_register.html b/db/docs/api_cxx/memp_register.html index 1feaf0bdf..aad039ac6 100644 --- a/db/docs/api_cxx/memp_register.html +++ b/db/docs/api_cxx/memp_register.html @@ -1,6 +1,5 @@ - - + @@ -82,6 +81,6 @@ the Berkeley DB library).


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_clear_len.html b/db/docs/api_cxx/memp_set_clear_len.html index e970073e2..016086e7a 100644 --- a/db/docs/api_cxx/memp_set_clear_len.html +++ b/db/docs/api_cxx/memp_set_clear_len.html @@ -1,6 +1,5 @@ - - + @@ -79,6 +78,6 @@ bytes to be cleared in lenp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_fileid.html b/db/docs/api_cxx/memp_set_fileid.html index 3bab6f092..a4ce4f924 100644 --- a/db/docs/api_cxx/memp_set_fileid.html +++ b/db/docs/api_cxx/memp_set_fileid.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_flags.html b/db/docs/api_cxx/memp_set_flags.html index 0742e8f1a..78f36ce52 100644 --- a/db/docs/api_cxx/memp_set_flags.html +++ b/db/docs/api_cxx/memp_set_flags.html @@ -1,6 +1,5 @@ - - - + + @@ -44,9 +43,10 @@ failure, and returns 0 on success.

flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more of the following values:
-
DB_MPOOL_NOFILE
If set, no backing temporary file will be opened for in-memory -databases, even if they expand to fill the entire cache. Attempts to -create new file pages after the cache has been filled will fail. +
DB_MPOOL_NOFILE
If set, no backing temporary file will be opened for the specified +in-memory database, even if it expands to fill the entire cache. +Attempts to create new database pages after the cache has been filled +will fail.

The DB_MPOOL_NOFILE flag configures a file in the memory pool, not only operations performed using the specified DbMpoolFile handle.

The DB_MPOOL_NOFILE flag may be used to configure Berkeley DB at any time during @@ -85,6 +85,6 @@ flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_ftype.html b/db/docs/api_cxx/memp_set_ftype.html index 464f67dbf..ab09e5fad 100644 --- a/db/docs/api_cxx/memp_set_ftype.html +++ b/db/docs/api_cxx/memp_set_ftype.html @@ -1,6 +1,5 @@ - - + @@ -76,6 +75,6 @@ file type in ftypep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_lsn_offset.html b/db/docs/api_cxx/memp_set_lsn_offset.html index 09f42311c..55b81b507 100644 --- a/db/docs/api_cxx/memp_set_lsn_offset.html +++ b/db/docs/api_cxx/memp_set_lsn_offset.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ log sequence number byte offset in lsn_offsetp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_maxsize.html b/db/docs/api_cxx/memp_set_maxsize.html index 102053a6f..6475f492b 100644 --- a/db/docs/api_cxx/memp_set_maxsize.html +++ b/db/docs/api_cxx/memp_set_maxsize.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_pgcookie.html b/db/docs/api_cxx/memp_set_pgcookie.html index 8d8b7ab4d..5d448d65e 100644 --- a/db/docs/api_cxx/memp_set_pgcookie.html +++ b/db/docs/api_cxx/memp_set_pgcookie.html @@ -1,6 +1,5 @@ - - + @@ -77,6 +76,6 @@ byte string in dbt.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_set_priority.html b/db/docs/api_cxx/memp_set_priority.html index cde1c365b..175828c52 100644 --- a/db/docs/api_cxx/memp_set_priority.html +++ b/db/docs/api_cxx/memp_set_priority.html @@ -1,6 +1,5 @@ - - - + + @@ -30,15 +29,18 @@ DbMpoolFile::get_priority(DB_CACHE_PRIORITY *priorityp);


Description: DbMpoolFile::set_priority

-

Set the cache priority for pages from the specified file. The priority -of a page biases the replacement algorithm to be more or less likely to -discard a page when space is needed in the buffer pool. The bias is -temporary, and pages will eventually be discarded if they are not -referenced again. The DbMpoolFile::set_priority method is only advisory, and -does not guarantee pages will be treated in a specific way.

+ +

Set the cache priority for pages referenced by the +DbMpoolFile +handle.

+

The priority of a page biases the replacement algorithm to be more or +less likely to discard a page when space is needed in the buffer pool. +The bias is temporary, and pages will eventually be discarded if they +are not referenced again. The DbMpoolFile::set_priority method is only advisory, and does +not guarantee pages will be treated in a specific way.

To set the priority for the pages belonging to a particular database, -call the DbMpoolFile::set_priority method using the DbMpoolFile -handle returned by calling the Db::get_mpf method.

+call the DbMpoolFile::set_priority method using the DbMpoolFile handle +returned by the Db::get_mpf method.

The DbMpoolFile::set_priority method configures a file in the memory pool, not only operations performed using the specified DbMpoolFile handle.

The DbMpoolFile::set_priority method may be called at any time during the life of the @@ -62,28 +64,22 @@ values:


Description: DbMpoolFile::get_priority

-

The DbMpoolFile::get_priority method returns the cache priority.

+

The DbMpoolFile::get_priority method returns the cache priority for the file referenced by the DbMpoolFile handle.

The DbMpoolFile::get_priority method may be called at any time during the life of the application.

The DbMpoolFile::get_priority method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
priorityp
The DbMpoolFile::get_priority method returns the -cache priority in priorityp. -
+failure

Class

-Db +DbEnv, DbMpoolFile

See Also

-Databases and Related Methods +Memory Pools and Related Methods

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_stat.html b/db/docs/api_cxx/memp_stat.html index 0d0651621..a5455c675 100644 --- a/db/docs/api_cxx/memp_stat.html +++ b/db/docs/api_cxx/memp_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -51,11 +50,13 @@ The following DB_MPOOL_STAT fields will be filled in:

size_t st_gbytes;
Gigabytes of cache (total cache size is st_gbytes + st_bytes).
size_t st_bytes;
Bytes of cache (total cache size is st_gbytes + st_bytes).
u_int32_t st_ncache;
Number of caches. +
u_int32_t st_max_ncache;
Maximum number of caches, as configured with the +DbEnv::set_cache_max method.
roff_t st_regsize;
Individual cache size, in bytes.
size_t st_mmapsize;
Maximum memory-mapped file size.
int st_maxopenfd;
Maximum open file descriptors.
int st_maxwrite;
Maximum sequential buffer writes. -
int st_maxwrite_sleep;
Sleep after writing maximum sequential buffers. +
db_timeout_t st_maxwrite_sleep;
Microseconds to pause after writing maximum sequential buffers.
u_int32_t st_map;
Requested pages mapped into the process' address space (there is no available information about whether or not this request caused disk I/O, although examining the application page fault rate may be helpful). @@ -97,11 +98,6 @@ region mutex without waiting.
u_int32_t st_alloc_max_pages;
Maximum number of pages checked during an allocation.
u_int32_t st_io_wait;
Number of operations blocked waiting for I/O to complete. -The flags parameter must be set to 0 or -the following value: -
-
DB_STAT_CLEAR
Reset statistics after returning their values. -

If fsp is non-NULL, a pointer to a NULL-terminated variable length array of statistics for individual files, in the cache mp, is copied into the memory location to which it refers. If @@ -120,6 +116,8 @@ the cache; that is, each element of the array:

u_int32_t st_page_in;
Pages read into the cache.
u_int32_t st_page_out;
Pages written from the cache to the backing file. +

The DbEnv::memp_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::memp_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -149,8 +147,12 @@ invalid flag value or parameter was specified.


Description: DbEnv::memp_stat_print

-

The DbEnv::memp_stat_print method prints diagnostic information to the output -channel described by the DbEnv::set_msgfile method.

+

The DbEnv::memp_stat_print method displays the +memory pool subsystem statistical information, as described for the DbEnv::memp_stat method. +The information is printed to a specified output channel (see the +DbEnv::set_msgfile method for more information), or passed to an +application callback function (see the DbEnv::set_msgcall method for +more information).

The DbEnv::memp_stat_print method may not be called before the DbEnv::open method has been called.

The DbEnv::memp_stat_print method @@ -160,10 +162,11 @@ failure, and returns 0 on success.

Parameters

-
flags
The flags parameter must be set by bitwise inclusively OR'ing together one or more -of the following values: +
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values:
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values.
DB_STAT_MEMP_HASH
Display the buffers with hash chains.
@@ -176,6 +179,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_sync.html b/db/docs/api_cxx/memp_sync.html index f2d7c8065..8043b2f27 100644 --- a/db/docs/api_cxx/memp_sync.html +++ b/db/docs/api_cxx/memp_sync.html @@ -1,6 +1,5 @@ - - - + + @@ -33,11 +32,6 @@ backing files.

example, pages that are currently in use by another thread of control) are waited for and written to disk as soon as it is possible to do so.

-

To support the DbEnv::memp_sync functionality, it is necessary that the -pool functions know the location of the log sequence number on the page -for each file type. This location should be specified when the file is -opened using the DbMpoolFile::set_lsn_offset method. It is not required that -the log sequence number be aligned on the page in any way.

The DbEnv::memp_sync method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -61,6 +55,6 @@ NULL, all modified pages in the pool are written to disk.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/memp_trickle.html b/db/docs/api_cxx/memp_trickle.html index 45378320e..c7370722d 100644 --- a/db/docs/api_cxx/memp_trickle.html +++ b/db/docs/api_cxx/memp_trickle.html @@ -1,6 +1,5 @@ - - + @@ -65,6 +64,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mempfile_class.html b/db/docs/api_cxx/mempfile_class.html index 70c412804..8fcba5893 100644 --- a/db/docs/api_cxx/mempfile_class.html +++ b/db/docs/api_cxx/mempfile_class.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ calls in a purely C++ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_alloc.html b/db/docs/api_cxx/mutex_alloc.html index b42d72cf6..f4dbba4b5 100644 --- a/db/docs/api_cxx/mutex_alloc.html +++ b/db/docs/api_cxx/mutex_alloc.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_free.html b/db/docs/api_cxx/mutex_free.html index b6c8bfd05..4404bcbd4 100644 --- a/db/docs/api_cxx/mutex_free.html +++ b/db/docs/api_cxx/mutex_free.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_list.html b/db/docs/api_cxx/mutex_list.html index 0b09b1b06..49867612c 100644 --- a/db/docs/api_cxx/mutex_list.html +++ b/db/docs/api_cxx/mutex_list.html @@ -1,6 +1,5 @@ - - + @@ -24,6 +23,6 @@ DbEnv::mutex_set_maxConfigure total number of mutexes DbEnv::mutex_set_tas_spinsConfigure test-and-set mutex spin count -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_lock.html b/db/docs/api_cxx/mutex_lock.html index b1b70816a..2ee5dd565 100644 --- a/db/docs/api_cxx/mutex_lock.html +++ b/db/docs/api_cxx/mutex_lock.html @@ -1,6 +1,5 @@ - - + @@ -61,6 +60,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_set_align.html b/db/docs/api_cxx/mutex_set_align.html index a8f659d4c..e04919a01 100644 --- a/db/docs/api_cxx/mutex_set_align.html +++ b/db/docs/api_cxx/mutex_set_align.html @@ -1,6 +1,5 @@ - - + @@ -94,6 +93,6 @@ mutex alignment, in bytes in alignp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_set_max.html b/db/docs/api_cxx/mutex_set_max.html index c65040152..c2e6ecfb8 100644 --- a/db/docs/api_cxx/mutex_set_max.html +++ b/db/docs/api_cxx/mutex_set_max.html @@ -1,6 +1,5 @@ - - + @@ -162,6 +161,6 @@ number of additional mutexes to allocate in incrementp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_set_tas_spins.html b/db/docs/api_cxx/mutex_set_tas_spins.html index b8f688d87..90969629f 100644 --- a/db/docs/api_cxx/mutex_set_tas_spins.html +++ b/db/docs/api_cxx/mutex_set_tas_spins.html @@ -1,6 +1,5 @@ - - + @@ -89,6 +88,6 @@ test-and-set spin count in tas_spinsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_stat.html b/db/docs/api_cxx/mutex_stat.html index ca82a24f0..cd09a1111 100644 --- a/db/docs/api_cxx/mutex_stat.html +++ b/db/docs/api_cxx/mutex_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -55,6 +54,8 @@ obtaining the mutex region mutex.

u_int32_t st_region_nowait;
The number of times that a thread of control was able to obtain the mutex region mutex without waiting. +

The DbEnv::mutex_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::mutex_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -113,6 +114,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/mutex_unlock.html b/db/docs/api_cxx/mutex_unlock.html index 8c2244199..189aa1b5a 100644 --- a/db/docs/api_cxx/mutex_unlock.html +++ b/db/docs/api_cxx/mutex_unlock.html @@ -1,6 +1,5 @@ - - + @@ -60,6 +59,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/object.html b/db/docs/api_cxx/object.html index e1b081b0d..338e980d2 100644 --- a/db/docs/api_cxx/object.html +++ b/db/docs/api_cxx/object.html @@ -1,4 +1,4 @@ - + Berkeley DB API diff --git a/db/docs/api_cxx/pindex.src b/db/docs/api_cxx/pindex.src index 1f012c39e..10e0dfb1e 100644 --- a/db/docs/api_cxx/pindex.src +++ b/db/docs/api_cxx/pindex.src @@ -1,5 +1,6 @@ -__APIREL__/api_cxx/db_associate.html__OCT__2 @DB_DBT_APPMALLOC -__APIREL__/api_cxx/db_associate.html__OCT__3 @DB_DONOTINDEX +__APIREL__/api_cxx/db_associate.html__OCT__DB_DBT_APPMALLOC Db::associate@DB_DBT_APPMALLOC +__APIREL__/api_cxx/db_associate.html__OCT__DB_DBT_MULTIPLE Db::associate@DB_DBT_MULTIPLE +__APIREL__/api_cxx/db_associate.html__OCT__DB_DONOTINDEX Db::associate@DB_DONOTINDEX __APIREL__/api_cxx/db_associate.html__OCT__DB_CREATE Db::associate@DB_CREATE __APIREL__/api_cxx/db_associate.html__OCT__DB_IMMUTABLE_KEY Db::associate@DB_IMMUTABLE_KEY __APIREL__/api_cxx/db_class.html__OCT__DB_CXX_NO_EXCEPTIONS Db@DB_CXX_NO_EXCEPTIONS @@ -11,6 +12,9 @@ __APIREL__/api_cxx/db_cursor.html__OCT__DB_READ_COMMITTED Db::cursor@DB_READ_COM __APIREL__/api_cxx/db_cursor.html__OCT__DB_READ_UNCOMMITTED Db::cursor@DB_READ_UNCOMMITTED __APIREL__/api_cxx/db_cursor.html__OCT__DB_WRITECURSOR Db::cursor@DB_WRITECURSOR __APIREL__/api_cxx/db_cursor.html__OCT__DB_TXN_SNAPSHOT Db::cursor@DB_TXN_SNAPSHOT +__APIREL__/api_cxx/db_exists.html__OCT__DB_READ_COMMITTED Db::exists@DB_READ_COMMITTED +__APIREL__/api_cxx/db_exists.html__OCT__DB_READ_UNCOMMITTED Db::exists@DB_READ_UNCOMMITTED +__APIREL__/api_cxx/db_exists.html__OCT__DB_RMW Db::exists@DB_RMW __APIREL__/api_cxx/db_get.html__OCT__DB_CONSUME Db::get@DB_CONSUME __APIREL__/api_cxx/db_get.html__OCT__DB_CONSUME_WAIT Db::get@DB_CONSUME_WAIT __APIREL__/api_cxx/db_get.html__OCT__DB_GET_BOTH Db::get@DB_GET_BOTH @@ -68,12 +72,16 @@ __APIREL__/api_cxx/db_set_flags.html__OCT__11 @renumbering records in Recno data __APIREL__/api_cxx/db_set_flags.html__OCT__DB_RENUMBER Db::set_flags@DB_RENUMBER __APIREL__/api_cxx/db_set_flags.html__OCT__12 pre-loading @text files into Recno databases __APIREL__/api_cxx/db_set_flags.html__OCT__DB_SNAPSHOT Db::set_flags@DB_SNAPSHOT +__APIREL__/api_cxx/db_set_priority.html__OCT__DB_PRIORITY_VERY_LOW Db::set_priority@DB_PRIORITY_VERY_LOW +__APIREL__/api_cxx/db_set_priority.html__OCT__DB_PRIORITY_LOW Db::set_priority@DB_PRIORITY_LOW +__APIREL__/api_cxx/db_set_priority.html__OCT__DB_PRIORITY_DEFAULT Db::set_priority@DB_PRIORITY_DEFAULT +__APIREL__/api_cxx/db_set_priority.html__OCT__DB_PRIORITY_HIGH Db::set_priority@DB_PRIORITY_HIGH +__APIREL__/api_cxx/db_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH Db::set_priority@DB_PRIORITY_VERY_HIGH __APIREL__/api_cxx/db_stat.html__OCT__DB_FAST_STAT Db::stat@DB_FAST_STAT __APIREL__/api_cxx/db_stat.html__OCT__DB_READ_COMMITTED Db::stat@DB_READ_COMMITTED __APIREL__/api_cxx/db_stat.html__OCT__DB_READ_UNCOMMITTED Db::stat@DB_READ_UNCOMMITTED __APIREL__/api_cxx/db_stat.html__OCT__DB_FAST_STAT Db::stat@DB_FAST_STAT __APIREL__/api_cxx/db_stat.html__OCT__DB_STAT_ALL Db::stat@DB_STAT_ALL -__APIREL__/api_cxx/db_stat.html__OCT__DB_STAT_CLEAR Db::stat@DB_STAT_CLEAR __APIREL__/api_cxx/db_upgrade.html__OCT__DB_DUPSORT Db::upgrade@DB_DUPSORT __APIREL__/api_cxx/db_upgrade.html__OCT__DB_OLD_VERSION Db::upgrade@DB_OLD_VERSION __APIREL__/api_cxx/db_verify.html__OCT__2 @DB_VERIFY_BAD @@ -88,6 +96,8 @@ __APIREL__/api_cxx/dbt_class.html__OCT__DB_DBT_REALLOC Dbt@DB_DBT_REALLOC __APIREL__/api_cxx/dbt_class.html__OCT__3 @DB_BUFFER_SMALL __APIREL__/api_cxx/dbt_class.html__OCT__DB_DBT_USERMEM Dbt@DB_DBT_USERMEM __APIREL__/api_cxx/dbt_class.html__OCT__DB_DBT_PARTIAL Dbt@DB_DBT_PARTIAL +__APIREL__/api_cxx/dbt_class.html__OCT__DB_DBT_APPMALLOC Dbt@DB_DBT_APPMALLOC +__APIREL__/api_cxx/dbt_class.html__OCT__DB_DBT_MULTIPLE Dbt@DB_DBT_MULTIPLE __APIREL__/api_cxx/dbc_dup.html__OCT__DB_POSITION Dbc::dup@DB_POSITION __APIREL__/api_cxx/dbc_get.html__OCT__DB_CURRENT Dbc::get@DB_CURRENT __APIREL__/api_cxx/dbc_get.html__OCT__DB_FIRST Dbc::get@DB_FIRST @@ -100,6 +110,7 @@ __APIREL__/api_cxx/dbc_get.html__OCT__DB_NEXT Dbc::get@DB_NEXT __APIREL__/api_cxx/dbc_get.html__OCT__DB_NEXT_DUP Dbc::get@DB_NEXT_DUP __APIREL__/api_cxx/dbc_get.html__OCT__DB_NEXT_NODUP Dbc::get@DB_NEXT_NODUP __APIREL__/api_cxx/dbc_get.html__OCT__DB_PREV Dbc::get@DB_PREV +__APIREL__/api_cxx/dbc_get.html__OCT__DB_PREV_DUP Dbc::get@DB_PREV_DUP __APIREL__/api_cxx/dbc_get.html__OCT__DB_PREV_NODUP Dbc::get@DB_PREV_NODUP __APIREL__/api_cxx/dbc_get.html__OCT__DB_SET Dbc::get@DB_SET __APIREL__/api_cxx/dbc_get.html__OCT__DB_SET_RANGE Dbc::get@DB_SET_RANGE @@ -114,14 +125,21 @@ __APIREL__/api_cxx/dbc_put.html__OCT__DB_CURRENT Dbc::put@DB_CURRENT __APIREL__/api_cxx/dbc_put.html__OCT__DB_KEYFIRST Dbc::put@DB_KEYFIRST __APIREL__/api_cxx/dbc_put.html__OCT__DB_KEYLAST Dbc::put@DB_KEYLAST __APIREL__/api_cxx/dbc_put.html__OCT__DB_NODUPDATA Dbc::put@DB_NODUPDATA +__APIREL__/api_cxx/dbc_set_priority.html__OCT__DB_PRIORITY_VERY_LOW Dbc::set_priority@DB_PRIORITY_VERY_LOW +__APIREL__/api_cxx/dbc_set_priority.html__OCT__DB_PRIORITY_LOW Dbc::set_priority@DB_PRIORITY_LOW +__APIREL__/api_cxx/dbc_set_priority.html__OCT__DB_PRIORITY_DEFAULT Dbc::set_priority@DB_PRIORITY_DEFAULT +__APIREL__/api_cxx/dbc_set_priority.html__OCT__DB_PRIORITY_HIGH Dbc::set_priority@DB_PRIORITY_HIGH +__APIREL__/api_cxx/dbc_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH Dbc::set_priority@DB_PRIORITY_VERY_HIGH __APIREL__/api_cxx/env_class.html__OCT__DB_CXX_NO_EXCEPTIONS DbEnv@DB_CXX_NO_EXCEPTIONS __APIREL__/api_cxx/env_class.html__OCT__DB_RPCCLIENT DbEnv@DB_RPCCLIENT __APIREL__/api_cxx/env_dbremove.html__OCT__DB_AUTO_COMMIT DbEnv::dbremove@DB_AUTO_COMMIT __APIREL__/api_cxx/env_dbrename.html__OCT__DB_AUTO_COMMIT DbEnv::dbrename@DB_AUTO_COMMIT __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_PANIC DbEnv::set_event_notify@DB_EVENT_PANIC __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_CLIENT DbEnv::set_event_notify@DB_EVENT_REP_CLIENT +__APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_ELECTED DbEnv::set_event_notify@DB_EVENT_REP_ELECTED __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_MASTER DbEnv::set_event_notify@DB_EVENT_REP_MASTER __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_NEWMASTER DbEnv::set_event_notify@DB_EVENT_REP_NEWMASTER +__APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_PERM_FAILED DbEnv::set_event_notify@DB_EVENT_REP_PERM_FAILED __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_REP_STARTUPDONE DbEnv::set_event_notify@DB_EVENT_REP_STARTUPDONE __APIREL__/api_cxx/env_event_notify.html__OCT__DB_EVENT_WRITE_FAILED DbEnv::set_event_notify@DB_EVENT_WRITE_FAILED __APIREL__/api_cxx/env_open.html__OCT__DB_INIT_CDB DbEnv::open@DB_INIT_CDB @@ -169,9 +187,9 @@ __APIREL__/api_cxx/env_set_flags.html__OCT__DB_LOG_AUTOREMOVE DbEnv::set_flags@D __APIREL__/api_cxx/env_set_flags.html__OCT__8 in memory @logs __APIREL__/api_cxx/env_set_flags.html__OCT__DB_LOG_INMEMORY DbEnv::set_flags@DB_LOG_INMEMORY __APIREL__/api_cxx/env_set_flags.html__OCT__DB_LOG_BUFFER_FULL DbEnv::set_flags@DB_LOG_BUFFER_FULL +__APIREL__/api_cxx/env_set_flags.html__OCT__DB_MULTIVERSION DbEnv::set_flags@DB_MULTIVERSION __APIREL__/api_cxx/env_set_flags.html__OCT__9 ignore @locking __APIREL__/api_cxx/env_set_flags.html__OCT__DB_NOLOCKING DbEnv::set_flags@DB_NOLOCKING -__APIREL__/api_cxx/env_set_flags.html__OCT__DB_MULTIVERSION DbEnv::set_flags@DB_MULTIVERSION __APIREL__/api_cxx/env_set_flags.html__OCT__10 turn off database file @memory mapping __APIREL__/api_cxx/env_set_flags.html__OCT__DB_NOMMAP DbEnv::set_flags@DB_NOMMAP __APIREL__/api_cxx/env_set_flags.html__OCT__11 ignore database environment @panic @@ -184,6 +202,7 @@ __APIREL__/api_cxx/env_set_flags.html__OCT__DB_REGION_INIT DbEnv::set_flags@DB_R __APIREL__/api_cxx/env_set_flags.html__OCT__DB_TIME_NOTGRANTED DbEnv::set_flags@DB_TIME_NOTGRANTED __APIREL__/api_cxx/env_set_flags.html__OCT__14 turn off synchronous @transaction commit __APIREL__/api_cxx/env_set_flags.html__OCT__DB_TXN_NOSYNC DbEnv::set_flags@DB_TXN_NOSYNC +__APIREL__/api_cxx/env_set_flags.html__OCT__DB_TXN_NOWAIT DbEnv::set_flags@DB_TXN_NOWAIT __APIREL__/api_cxx/env_set_flags.html__OCT__DB_TXN_SNAPSHOT DbEnv::set_flags@DB_TXN_SNAPSHOT __APIREL__/api_cxx/env_set_flags.html__OCT__15 turn off synchronous @transaction commit __APIREL__/api_cxx/env_set_flags.html__OCT__DB_TXN_WRITE_NOSYNC DbEnv::set_flags@DB_TXN_WRITE_NOSYNC @@ -202,6 +221,8 @@ __APIREL__/api_cxx/env_set_timeout.html__OCT__DB_SET_LOCK_TIMEOUT DbEnv::set_tim __APIREL__/api_cxx/env_set_timeout.html__OCT__DB_SET_TXN_TIMEOUT DbEnv::set_timeout@DB_SET_TXN_TIMEOUT __APIREL__/api_cxx/env_set_tmp_dir.html__OCT__2 @temporary files __APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_DEADLOCK DbEnv::set_verbose@DB_VERB_DEADLOCK +__APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_FILEOPS DbEnv::set_verbose@DB_VERB_FILEOPS +__APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_FILEOPS_ALL DbEnv::set_verbose@DB_VERB_FILEOPS_ALL __APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_RECOVERY DbEnv::set_verbose@DB_VERB_RECOVERY __APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_REGISTER DbEnv::set_verbose@DB_VERB_REGISTER __APIREL__/api_cxx/env_set_verbose.html__OCT__DB_VERB_REPLICATION DbEnv::set_verbose@DB_VERB_REPLICATION @@ -230,6 +251,7 @@ __APIREL__/api_cxx/lock_detect.html__OCT__DB_LOCK_YOUNGEST DbEnv::lock_detect@DB __APIREL__/api_cxx/lock_get.html__OCT__DB_LOCK_NOWAIT DbEnv::lock_get@DB_LOCK_NOWAIT __APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_CLEAR DbEnv::lock_stat@DB_STAT_CLEAR __APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_ALL DbEnv::lock_stat@DB_STAT_ALL +__APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_CLEAR DbEnv::lock_stat@DB_STAT_CLEAR __APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_LOCK_CONF DbEnv::lock_stat@DB_STAT_LOCK_CONF __APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_LOCK_LOCKERS DbEnv::lock_stat@DB_STAT_LOCK_LOCKERS __APIREL__/api_cxx/lock_stat.html__OCT__DB_STAT_LOCK_OBJECTS DbEnv::lock_stat@DB_STAT_LOCK_OBJECTS @@ -277,8 +299,12 @@ __APIREL__/api_cxx/memp_fopen.html__OCT__DB_MULTIVERSION DbMpoolFile::open@DB_MU __APIREL__/api_cxx/memp_fopen.html__OCT__DB_NOMMAP DbMpoolFile::open@DB_NOMMAP __APIREL__/api_cxx/memp_fopen.html__OCT__DB_ODDFILESIZE DbMpoolFile::open@DB_ODDFILESIZE __APIREL__/api_cxx/memp_fopen.html__OCT__DB_RDONLY DbMpoolFile::open@DB_RDONLY -__APIREL__/api_cxx/memp_fput.html__OCT__DB_MPOOL_DISCARD DbMpoolFile::put@DB_MPOOL_DISCARD -__APIREL__/api_cxx/memp_fset.html__OCT__DB_MPOOL_DISCARD DbMpoolFile::set@DB_MPOOL_DISCARD +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_UNCHANGED DbMpoolFile::put@DB_PRIORITY_UNCHANGED +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_VERY_LOW DbMpoolFile::put@DB_PRIORITY_VERY_LOW +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_LOW DbMpoolFile::put@DB_PRIORITY_LOW +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_DEFAULT DbMpoolFile::put@DB_PRIORITY_DEFAULT +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_HIGH DbMpoolFile::put@DB_PRIORITY_HIGH +__APIREL__/api_cxx/memp_fput.html__OCT__DB_PRIORITY_VERY_HIGH DbMpoolFile::put@DB_PRIORITY_VERY_HIGH __APIREL__/api_cxx/memp_set_flags.html__OCT__DB_MPOOL_NOFILE DbMpoolFile::set_flags@DB_MPOOL_NOFILE __APIREL__/api_cxx/memp_set_flags.html__OCT__DB_MPOOL_UNLINK DbMpoolFile::set_flags@DB_MPOOL_UNLINK __APIREL__/api_cxx/memp_set_priority.html__OCT__DB_PRIORITY_VERY_LOW DbMpoolFile::set_priority@DB_PRIORITY_VERY_LOW @@ -287,10 +313,10 @@ __APIREL__/api_cxx/memp_set_priority.html__OCT__DB_PRIORITY_DEFAULT DbMpoolFile: __APIREL__/api_cxx/memp_set_priority.html__OCT__DB_PRIORITY_HIGH DbMpoolFile::set_priority@DB_PRIORITY_HIGH __APIREL__/api_cxx/memp_set_priority.html__OCT__DB_PRIORITY_VERY_HIGH DbMpoolFile::set_priority@DB_PRIORITY_VERY_HIGH __APIREL__/api_cxx/memp_stat.html__OCT__DB_STAT_CLEAR DbEnv::memp_stat@DB_STAT_CLEAR -__APIREL__/api_cxx/memp_stat.html__OCT__DB_STAT_CLEAR DbEnv::memp_stat@DB_STAT_CLEAR __APIREL__/api_cxx/memp_stat.html__OCT__DB_STAT_ALL DbEnv::memp_stat@DB_STAT_ALL +__APIREL__/api_cxx/memp_stat.html__OCT__DB_STAT_CLEAR DbEnv::memp_stat@DB_STAT_CLEAR __APIREL__/api_cxx/memp_stat.html__OCT__DB_STAT_MEMP_HASH DbEnv::memp_stat@DB_STAT_MEMP_HASH -__APIREL__/api_cxx/memp_class.html__OCT__DB_BUFFER_SMALL DbMemoryException@DB_BUFFER_SMALL +__APIREL__/api_cxx/memp_class.html__OCT__2 @DB_BUFFER_SMALL __APIREL__/api_cxx/mutex_alloc.html__OCT__DB_MUTEX_PROCESS_ONLY DbEnv::mutex_alloc@DB_MUTEX_PROCESS_ONLY __APIREL__/api_cxx/mutex_alloc.html__OCT__DB_MUTEX_SELF_BLOCK DbEnv::mutex_alloc@DB_MUTEX_SELF_BLOCK __APIREL__/api_cxx/mutex_stat.html__OCT__DB_STAT_CLEAR DbEnv::mutex_stat@DB_STAT_CLEAR @@ -306,7 +332,6 @@ __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_HOLDELECTION DbEnv::rep_process __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_IGNORE DbEnv::rep_process_message@DB_REP_IGNORE __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_ISPERM DbEnv::rep_process_message@DB_REP_ISPERM __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_JOIN_FAILURE DbEnv::rep_process_message@DB_REP_JOIN_FAILURE -__APIREL__/api_cxx/rep_message.html__OCT__DB_REP_NEWMASTER DbEnv::rep_process_message@DB_REP_NEWMASTER __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_NEWSITE DbEnv::rep_process_message@DB_REP_NEWSITE __APIREL__/api_cxx/rep_message.html__OCT__DB_REP_NOTPERM DbEnv::rep_process_message@DB_REP_NOTPERM __APIREL__/api_cxx/rep_start.html__OCT__DB_REP_CLIENT DbEnv::rep_start@DB_REP_CLIENT @@ -315,9 +340,11 @@ __APIREL__/api_cxx/rep_stat.html__OCT__DB_STAT_CLEAR DbEnv::rep_stat@DB_STAT_CLE __APIREL__/api_cxx/rep_stat.html__OCT__DB_STAT_ALL DbEnv::rep_stat@DB_STAT_ALL __APIREL__/api_cxx/rep_stat.html__OCT__DB_STAT_CLEAR DbEnv::rep_stat@DB_STAT_CLEAR __APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_ACK_TIMEOUT DbEnv::rep_set_timeout@DB_REP_ACK_TIMEOUT +__APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_CHECKPOINT_DELAY DbEnv::rep_set_timeout@DB_REP_CHECKPOINT_DELAY +__APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_CONNECTION_RETRY DbEnv::rep_set_timeout@DB_REP_CONNECTION_RETRY __APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_ELECTION_TIMEOUT DbEnv::rep_set_timeout@DB_REP_ELECTION_TIMEOUT __APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_ELECTION_RETRY DbEnv::rep_set_timeout@DB_REP_ELECTION_RETRY -__APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_CONNECTION_RETRY DbEnv::rep_set_timeout@DB_REP_CONNECTION_RETRY +__APIREL__/api_cxx/rep_timeout.html__OCT__DB_REP_FULL_ELECTION_TIMEOUT DbEnv::rep_set_timeout@DB_REP_FULL_ELECTION_TIMEOUT __APIREL__/api_cxx/rep_transport.html__OCT__2 @DB_EID_BROADCAST __APIREL__/api_cxx/rep_transport.html__OCT__DB_REP_ANYWHERE DbEnv::rep_set_transport@DB_REP_ANYWHERE __APIREL__/api_cxx/rep_transport.html__OCT__DB_REP_NOBUFFER DbEnv::rep_set_transport@DB_REP_NOBUFFER @@ -335,7 +362,9 @@ __APIREL__/api_cxx/repmgr_site_list.html__OCT__DB_REPMGR_DISCONNECTED DbEnv::rep __APIREL__/api_cxx/repmgr_start.html__OCT__DB_REP_MASTER DbEnv::repmgr_start@DB_REP_MASTER __APIREL__/api_cxx/repmgr_start.html__OCT__DB_REP_CLIENT DbEnv::repmgr_start@DB_REP_CLIENT __APIREL__/api_cxx/repmgr_start.html__OCT__DB_REP_ELECTION DbEnv::repmgr_start@DB_REP_ELECTION -__APIREL__/api_cxx/repmgr_start.html__OCT__DB_REP_FULL_ELECTION DbEnv::repmgr_start@DB_REP_FULL_ELECTION +__APIREL__/api_cxx/repmgr_stat.html__OCT__DB_STAT_CLEAR DbEnv::repmgr_stat@DB_STAT_CLEAR +__APIREL__/api_cxx/repmgr_stat.html__OCT__DB_STAT_ALL DbEnv::repmgr_stat@DB_STAT_ALL +__APIREL__/api_cxx/repmgr_stat.html__OCT__DB_STAT_CLEAR DbEnv::repmgr_stat@DB_STAT_CLEAR __APIREL__/api_cxx/seq_get.html__OCT__DB_TXN_NOSYNC DbSequence::get@DB_TXN_NOSYNC __APIREL__/api_cxx/seq_open.html__OCT__DB_CREATE DbSequence::open@DB_CREATE __APIREL__/api_cxx/seq_open.html__OCT__DB_EXCL DbSequence::open@DB_EXCL @@ -354,6 +383,8 @@ __APIREL__/api_cxx/txn_begin.html__OCT__DB_TXN_NOWAIT DbEnv::txn_begin@DB_TXN_NO __APIREL__/api_cxx/txn_begin.html__OCT__DB_TXN_SNAPSHOT DbEnv::txn_begin@DB_TXN_SNAPSHOT __APIREL__/api_cxx/txn_begin.html__OCT__DB_LOCK_DEADLOCK DbEnv::txn_begin@DB_LOCK_DEADLOCK __APIREL__/api_cxx/txn_begin.html__OCT__DB_TXN_SYNC DbEnv::txn_begin@DB_TXN_SYNC +__APIREL__/api_cxx/txn_begin.html__OCT__DB_TXN_WAIT DbEnv::txn_begin@DB_TXN_WAIT +__APIREL__/api_cxx/txn_begin.html__OCT__DB_TXN_WRITE_NOSYNC DbEnv::txn_begin@DB_TXN_WRITE_NOSYNC __APIREL__/api_cxx/txn_checkpoint.html__OCT__DB_FORCE DbEnv::txn_checkpoint@DB_FORCE __APIREL__/api_cxx/txn_commit.html__OCT__DB_TXN_NOSYNC DbTxn::commit@DB_TXN_NOSYNC __APIREL__/api_cxx/txn_commit.html__OCT__DB_TXN_SYNC DbTxn::commit@DB_TXN_SYNC diff --git a/db/docs/api_cxx/rep_config.html b/db/docs/api_cxx/rep_config.html index ceaeb0d77..6661e50b4 100644 --- a/db/docs/api_cxx/rep_config.html +++ b/db/docs/api_cxx/rep_config.html @@ -1,6 +1,5 @@ - - - + + @@ -62,8 +61,6 @@ single network transfer (defaults to off). unsynchronized until the application calls the DbEnv::rep_sync method.

DB_REP_CONF_NOAUTOINIT
The replication master will not automatically re-initialize outdated clients (defaults to off). -

The DB_REP_CONF_NOAUTOINIT flag is not supported by Replication -Manager.

DB_REP_CONF_NOWAIT
Berkeley DB method calls that would normally block while clients are in recovery will return errors immediately (defaults to off). @@ -106,6 +103,6 @@ otherwise on.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_elect.html b/db/docs/api_cxx/rep_elect.html index 673c62bce..d0784b46b 100644 --- a/db/docs/api_cxx/rep_elect.html +++ b/db/docs/api_cxx/rep_elect.html @@ -1,6 +1,5 @@ - - - + + @@ -23,7 +22,7 @@ #include <db_cxx.h>

int -DbEnv::rep_elect(int nsites, int nvotes, int *envid, u_int32_t flags); +DbEnv::rep_elect(int nsites, int nvotes, u_int32_t flags);


Description: DbEnv::rep_elect

@@ -34,19 +33,19 @@ applications. It should only be called by applications implementing their own network transport layer, explicitly holding replication group elections and handling replication messages outside of the replication manager framework.

-

If the election is successful, the new master's ID may be the ID of the -previous master, or the ID of the current replication site. The +

If the election is successful, Berkeley DB will notify the application of +the results of the election by means of either the +DB_EVENT_REP_ELECTED or DB_EVENT_REP_NEWMASTER events +(see DbEnv::set_event_notify method for more information). The application is responsible for adjusting its relationship to the other -database environments in the replication group, including directing all -database updates to the newly selected master, in accordance with the -results of this election.

+database environments in the replication group, including directing +all database updates to the newly selected master, in accordance with +the results of the election.

The thread of control that calls the DbEnv::rep_elect method must not be the thread of control that processes incoming messages; processing the incoming messages is necessary to successfully complete an election.

Parameters

-
envid
The envid parameter references memory into which - the newly elected master's ID is copied.
nsites
The nsites parameter specifies the number of replication sites expected to participate in the election. Once the current site has election information from that many sites, it will short-circuit the @@ -91,7 +90,10 @@ sites all restarting at the same time, it makes more sense to set known missing site. Furthermore, in order to ensure the best choice from among sites that may take longer to boot than the local site, setting nvotes also to this same total number of sites will -guarantee that every site in the group is considered. (See the +guarantee that every site in the group is considered. Alternatively, +using the special timeout for full elections allows full participation +on restart but allows election of a master if one site does not +reboot and rejoin the group in a reasonable amount of time. (See the Elections section in the Berkeley DB Reference Guide for more information.)

Setting nsites to lower values can increase the speed of an @@ -118,6 +120,6 @@ complete the election in the election timeout period (see

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_limit.html b/db/docs/api_cxx/rep_limit.html index de5b162f8..fbfc2ff05 100644 --- a/db/docs/api_cxx/rep_limit.html +++ b/db/docs/api_cxx/rep_limit.html @@ -1,6 +1,5 @@ - - - + + @@ -34,6 +33,10 @@ DbEnv::rep_get_limit(u_int32_t *gbytesp, u_int32_t *bytesp); that will be transmitted from a site in response to a single message processed by the DbEnv::rep_process_message method. The limit is not a hard limit, and the record that exceeds the limit is the last record to be sent.

+

Record transmission throttling is turned on by default with a limit of +10MB.

+

If the values passed to the DbEnv::rep_set_limit method are both zero, then +the transmission limit is turned off.

The DbEnv::rep_set_limit method configures a database environment, not only operations performed using the specified DbEnv handle.

The DbEnv::rep_set_limit method may be called at any time during the life of the @@ -75,6 +78,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_list.html b/db/docs/api_cxx/rep_list.html index f9cc9ebe5..8045d8266 100644 --- a/db/docs/api_cxx/rep_list.html +++ b/db/docs/api_cxx/rep_list.html @@ -1,6 +1,5 @@ - - + @@ -10,7 +9,7 @@

Berkeley DB: Replication and Related Methods

- + @@ -18,6 +17,7 @@ + @@ -30,9 +30,10 @@ +
Replication Manager MethodsDescription
DbEnv::repmgr_add_remote_siteSpecify the replication manager's remote sites
DbEnv::repmgr_set_local_siteSpecify the replication manager's local site
DbEnv::repmgr_site_listList the sites and their status
DbEnv::repmgr_startStart the replication manager
DbEnv::repmgr_statReplication manager statistics
Base Replication API
DbEnv::rep_electHold a replication election
DbEnv::rep_process_messageProcess a replication message
DbEnv::rep_set_limitLimit data sent in response to a single message
DbEnv::rep_set_nsitesConfigure replication group site count
DbEnv::rep_set_priorityConfigure replication site priority
DbEnv::rep_set_requestConfigure replication client retransmission requests
DbEnv::rep_set_timeoutConfigure replication timeouts
DbEnv::rep_set_transportConfigure replication transport callback
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_message.html b/db/docs/api_cxx/rep_message.html index d05a31b3a..c327e0c20 100644 --- a/db/docs/api_cxx/rep_message.html +++ b/db/docs/api_cxx/rep_message.html @@ -1,6 +1,5 @@ - - - + + @@ -23,7 +22,7 @@ #include <db_cxx.h>

int -DbEnv::rep_process_message(Dbt *control, Dbt *rec, int *envid, DbLsn *ret_lsnp) +DbEnv::rep_process_message(Dbt *control, Dbt *rec, int envid, DbLsn *ret_lsnp)


Description: DbEnv::rep_process_message

@@ -71,13 +70,6 @@ with the new master (possibly because the client has been configured with the DB_REP_CONF_NOAUTOINIT flag to turn-off automatic internal initialization).

-
DB_REP_NEWMASTER
-

The DbEnv::rep_process_message method will return DB_REP_NEWMASTER if a new master has been chosen. -The envid parameter contains the environment ID of the new -master. If the recipient of this error return has been made master, it -is the application's responsibility to begin acting as the master -environment. -

DB_REP_NEWSITE

The DbEnv::rep_process_message method will return DB_REP_NEWSITE if the system received contact information from a new environment. The rec parameter contains the opaque data specified in the @@ -126,6 +118,6 @@ cases the value of ret_lsnp is undefined.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_nsites.html b/db/docs/api_cxx/rep_nsites.html index bfdc3c35e..e2fefd353 100644 --- a/db/docs/api_cxx/rep_nsites.html +++ b/db/docs/api_cxx/rep_nsites.html @@ -1,6 +1,5 @@ - - + @@ -74,6 +73,6 @@ total number of sites in the replication group in nsitesp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_priority.html b/db/docs/api_cxx/rep_priority.html index 98e464bbf..6a3d8fdda 100644 --- a/db/docs/api_cxx/rep_priority.html +++ b/db/docs/api_cxx/rep_priority.html @@ -1,6 +1,5 @@ - - + @@ -72,6 +71,6 @@ database environment priority in priorityp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_request.html b/db/docs/api_cxx/rep_request.html new file mode 100644 index 000000000..759526c5f --- /dev/null +++ b/db/docs/api_cxx/rep_request.html @@ -0,0 +1,98 @@ + + + + + +Berkeley DB: DbEnv::rep_set_request + + + + + + + +
+

DbEnv::rep_set_request

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +DbEnv::rep_set_request(u_int32_t min, u_int32_t max); +

+int +DbEnv::rep_get_request(u_int32_t *minp, u_int32_t *maxp); +

+
+

Description: DbEnv::rep_set_request

+

The DbEnv::rep_set_request method sets the minimum and maximum number of +missing log records that a client waits before requesting +retransmission. Specifically, if a log record is missing, Berkeley DB will +wait for min more records to arrive before requesting +retransmission of the missing record. Berkeley DB will wait double that +amount before requesting the same missing record again, and so on, up +to a maximum wait of max records.

+

By default the minimum is 4 and the maximum is 128, and applications +rarely need to use values other than the defaults.

+

The DbEnv::rep_set_request method configures a database environment, not only operations +performed using the specified DbEnv handle.

+

The DbEnv::rep_set_request method may be called at any time during the life of the +application.

+

The DbEnv::rep_set_request method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
max
The maximum number of missing log records a client waits before +requesting retransmission. +
min
The minimum number of missing log records a client waits before +requesting retransmission. +
+

Errors

+

The DbEnv::rep_set_request method +may fail and throw +DbException, +encapsulating one of the following non-zero errors, or return one of +the following non-zero errors:

+
+
EINVAL
An +invalid flag value or parameter was specified. +
+
+

Description: DbEnv::rep_get_request

+

The DbEnv::rep_get_request method returns the minimum and maximum number of +missing log records a client waits before requesting retransmission.

+

The DbEnv::rep_get_request method may be called at any time during the life of the +application.

+

The DbEnv::rep_get_request method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
maxp
The maxp parameter references memory into which + the maximum number of missing log records a client will wait before requesting +retransmission is copied. +
minp
The minp parameter references memory into which + the minimum number of missing log records a client will wait before requesting +retransmission is copied. +
+
+

Class

+DbEnv +

See Also

+Replication and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/rep_start.html b/db/docs/api_cxx/rep_start.html index c9dc432f0..d8f8ed95e 100644 --- a/db/docs/api_cxx/rep_start.html +++ b/db/docs/api_cxx/rep_start.html @@ -1,6 +1,5 @@ - - + @@ -81,6 +80,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_stat.html b/db/docs/api_cxx/rep_stat.html index 0844a45de..b99e5b88e 100644 --- a/db/docs/api_cxx/rep_stat.html +++ b/db/docs/api_cxx/rep_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -87,7 +86,7 @@ time is st_election_sec plus st_election_usec).

u_int32_t st_log_queued_max;
The maximum number of log records ever queued at once.
u_int32_t st_log_queued_total;
The total number of log records queued.
u_int32_t st_log_records;
The number of log records received and appended to the log. -
u_int32_t st_log_requested;
The number of log records missed and requested. +
u_int32_t st_log_requested;
The number of times log records were missed and requested.
u_int32_t st_master;
The current master environment ID.
u_int32_t st_master_changes;
The number of times the master has changed.
u_int32_t st_msgs_badgen;
The number of messages received with a bad generation number. @@ -107,6 +106,9 @@ to a single call to DbEnv::rep_process_mes
u_int32_t st_pg_duplicated;
The number of duplicate pages received.
u_int32_t st_pg_records;
The number of pages received and stored.
u_int32_t st_pg_requested;
The number of pages missed and requested from the master. +
u_int32_t st_startsync_delayed;
The number of times the client had to delay the start of a +cache flush operation (initiated by the master for an impending +checkpoint) because it was missing some previous log record(s).
u_int32_t st_startup_complete;
The client site has completed its startup procedures and is now handling live records from the master.
u_int32_t st_status;
The current replication mode. Set to DB_REP_MASTER if the @@ -119,6 +121,8 @@ being waited for, or 0 if no log records are currently missing.
u_int32_t st_waiting_pg;
The page number of the first page we have after missing pages being waited for, or 0 if no pages are currently missing.
+

The DbEnv::rep_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::rep_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -177,6 +181,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_sync.html b/db/docs/api_cxx/rep_sync.html index 23bc82f79..87c63a245 100644 --- a/db/docs/api_cxx/rep_sync.html +++ b/db/docs/api_cxx/rep_sync.html @@ -1,6 +1,5 @@ - - - + + @@ -35,9 +34,8 @@ application must synchronize explicitly (otherwise the client will remain out-of-date and will ignore all database changes forwarded from the replication group master). The DbEnv::rep_sync method may be called any time after the client application learns that the new master has been -established, either by receiving a DB_EVENT_REP_NEWMASTER event -notification, or from a DB_REP_NEWMASTER return code from -DbEnv::rep_process_message.

+established (by receiving a DB_EVENT_REP_NEWMASTER event +notification).

The DbEnv::rep_sync method may not be called before the DbEnv::open method has been called.

The DbEnv::rep_sync method @@ -58,6 +56,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_timeout.html b/db/docs/api_cxx/rep_timeout.html index ebe203f09..459ca3a16 100644 --- a/db/docs/api_cxx/rep_timeout.html +++ b/db/docs/api_cxx/rep_timeout.html @@ -1,6 +1,5 @@ - - - + + @@ -49,12 +48,22 @@ failure, and returns 0 on success. function waits to collect enough acknowledgments from replication group clients, before giving up and returning a failure indication. The default wait time is 1 second. -

DB_REP_ELECTION_TIMEOUT
The timeout period for an election. The default timeout is 2 seconds. -
DB_REP_ELECTION_RETRY
Configure the amount of time the replication manager will wait before -retrying a failed election. The default wait time is 10 seconds. +
DB_REP_CHECKPOINT_DELAY
Configure the amount of time the replication manager will delay between +completing a checkpoint and writing a checkpoint record into the log. +This delay allows clients to complete their own checkpoints before the +master requires completion of them. The default is 30 seconds.
DB_REP_CONNECTION_RETRY
Configure the amount of time the replication manager will wait before trying to re-establish a connection to another site after a communication failure. The default wait time is 30 seconds. +
DB_REP_ELECTION_TIMEOUT
The timeout period for an election. The default timeout is 2 seconds. +
DB_REP_ELECTION_RETRY
Configure the amount of time the replication manager will wait before +retrying a failed election. The default wait time is 10 seconds. +
DB_REP_FULL_ELECTION_TIMEOUT
An optional configuration timeout period to wait for full election +participation the first time the replication group finds a master. +By default this option is turned off and normal election +timeouts are used. +(See the Elections +section in the Berkeley DB Reference Guide for more information.)
timeout
The timeout parameter is the timeout value. It must be specified as an unsigned 32-bit number of microseconds, limiting the maximum timeout @@ -97,6 +106,6 @@ is being returned.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/rep_transport.html b/db/docs/api_cxx/rep_transport.html index 8b6928618..809af571e 100644 --- a/db/docs/api_cxx/rep_transport.html +++ b/db/docs/api_cxx/rep_transport.html @@ -1,6 +1,5 @@ - - + @@ -124,6 +123,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_ack_policy.html b/db/docs/api_cxx/repmgr_ack_policy.html index 25dda52a5..a7fdf9e71 100644 --- a/db/docs/api_cxx/repmgr_ack_policy.html +++ b/db/docs/api_cxx/repmgr_ack_policy.html @@ -1,6 +1,5 @@ - - + @@ -97,6 +96,6 @@ replication manager's client acknowledgment policy in ack_policyp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_local_site.html b/db/docs/api_cxx/repmgr_local_site.html index 98059f90d..30a21468b 100644 --- a/db/docs/api_cxx/repmgr_local_site.html +++ b/db/docs/api_cxx/repmgr_local_site.html @@ -1,6 +1,5 @@ - - + @@ -51,6 +50,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_remote_site.html b/db/docs/api_cxx/repmgr_remote_site.html index 7bf3e0782..35acc62ab 100644 --- a/db/docs/api_cxx/repmgr_remote_site.html +++ b/db/docs/api_cxx/repmgr_remote_site.html @@ -1,6 +1,5 @@ - - + @@ -63,6 +62,6 @@ peer, and the last specified peer is used.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_site_list.html b/db/docs/api_cxx/repmgr_site_list.html index 1217cb903..9d920496a 100644 --- a/db/docs/api_cxx/repmgr_site_list.html +++ b/db/docs/api_cxx/repmgr_site_list.html @@ -1,6 +1,5 @@ - - + @@ -72,6 +71,6 @@ referenced by listp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_start.html b/db/docs/api_cxx/repmgr_start.html index 9d34984a9..55a64639c 100644 --- a/db/docs/api_cxx/repmgr_start.html +++ b/db/docs/api_cxx/repmgr_start.html @@ -1,6 +1,5 @@ - - - + + @@ -72,11 +71,6 @@ only one site at a time should ever be started with the DB_REP_MASTER flag specified.

DB_REP_CLIENT
Start as a client site, and do not call for an election.
DB_REP_ELECTION
Start as a client, and call for an election if no master is found. -
DB_REP_FULL_ELECTION
Start as a client, and call for an election if no master is found. -

The DB_REP_FULL_ELECTION flag configures a single special -election on startup, where a master will only be confirmed if all -members of the replication group vote. Subsequent elections will revert -to only requiring a simple majority to elect a new master.

nthreads
Specify the number of threads of control created and dedicated to processing replication messages. In addition to these message processing threads, @@ -92,6 +86,6 @@ control.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/repmgr_stat.html b/db/docs/api_cxx/repmgr_stat.html new file mode 100644 index 000000000..8c7dbab43 --- /dev/null +++ b/db/docs/api_cxx/repmgr_stat.html @@ -0,0 +1,121 @@ + + + + + +Berkeley DB: DbEnv::repmgr_stat + + + + + + + +
+

DbEnv::repmgr_stat

+
+API +Ref
+


+ +

+#include <db_cxx.h>
+

+int +DbEnv::repmgr_stat(DB_REPMGR_STAT **statp, u_int32_t flags); +

+int +DbEnv::repmgr_stat_print(u_int32_t flags); +

+
+

Description: DbEnv::repmgr_stat

+

The DbEnv::repmgr_stat method returns the replication manager statistics.

+

The DbEnv::repmgr_stat method creates a statistical structure of type +DB_REPMGR_STAT and copies a pointer to it into a user-specified memory +location.

+

Statistical structures are stored in allocated memory. If application-specific allocation +routines have been declared (see DbEnv::set_alloc for more +information), they are used to allocate the memory; otherwise, the +standard C library malloc(3) is used. The caller is +responsible for deallocating the memory. To deallocate the memory, free +the memory reference; references inside the returned memory need not be +individually freed.

+

The following DB_REPMGR_STAT fields will be filled in:

+
+
u_int32_t st_perm_failed;
The number of times a message critical for maintaining database +integrity (for example, a transaction commit), originating at this site, +did not receive sufficient acknowledgement from clients, according to +the configured acknowledgement policy and acknowledgement timeout. +
u_int32_t st_msgs_queued;
The number of outgoing messages which could not be transmitted +immediately, due to a full network buffer, and had to be queued for +later delivery. +
u_int32_t st_msgs_dropped;
The number of outgoing messages that were completely dropped, because +the outgoing message queue was full. (Berkeley DB replication is tolerant of +dropped messages, and will automatically request retransmission of any +missing messages as needed.) +
u_int32_t st_connection_drop;
The number of times an existing TCP/IP connection failed. +
u_int32_t st_connect_fail;
The number of times an attempt to open a new TCP/IP connection failed. +
+

The DbEnv::repmgr_stat method may not be called before the DbEnv::open method has +been called.

+

The DbEnv::repmgr_stat method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or +the following value: +
+
DB_STAT_CLEAR
Reset statistics after returning their values. +
+
statp
The statp parameter references memory into which +a pointer to the allocated statistics structure is copied. +
+

Errors

+

The DbEnv::repmgr_stat method +may fail and throw +DbException, +encapsulating one of the following non-zero errors, or return one of +the following non-zero errors:

+
+
EINVAL
An +invalid flag value or parameter was specified. +
+
+

Description: DbEnv::repmgr_stat_print

+

The DbEnv::repmgr_stat_print method displays the +replication manager statistical information, as described for the DbEnv::repmgr_stat method. +The information is printed to a specified output channel (see the +DbEnv::set_msgfile method for more information), or passed to an +application callback function (see the DbEnv::set_msgcall method for +more information).

+

The DbEnv::repmgr_stat_print method may not be called before the DbEnv::open method has +been called.

+

The DbEnv::repmgr_stat_print method +either returns a non-zero error value +or throws an exception that encapsulates a non-zero error value on +failure, and returns 0 on success. +

+

Parameters

+
+
flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one +or more of the following values: +
+
DB_STAT_ALL
Display all available information. +
DB_STAT_CLEAR
Reset statistics after displaying their values. +
+
+
+

Class

+DbEnv +

See Also

+Replication and Related Methods +
+

+APIRef +
+

Copyright (c) 1996,2007 Oracle. All rights reserved. + + diff --git a/db/docs/api_cxx/runrec_class.html b/db/docs/api_cxx/runrec_class.html index b10d2a956..975151c9f 100644 --- a/db/docs/api_cxx/runrec_class.html +++ b/db/docs/api_cxx/runrec_class.html @@ -1,6 +1,5 @@ - - + @@ -39,6 +38,6 @@ occurs, recovery should be performed.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_class.html b/db/docs/api_cxx/seq_class.html index 8cfbfca06..96fcee860 100644 --- a/db/docs/api_cxx/seq_class.html +++ b/db/docs/api_cxx/seq_class.html @@ -1,6 +1,5 @@ - - + @@ -67,6 +66,6 @@ DbSequence

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_close.html b/db/docs/api_cxx/seq_close.html index 42f64fc64..449394d25 100644 --- a/db/docs/api_cxx/seq_close.html +++ b/db/docs/api_cxx/seq_close.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_get.html b/db/docs/api_cxx/seq_get.html index bc8efc2da..1e0c39d72 100644 --- a/db/docs/api_cxx/seq_get.html +++ b/db/docs/api_cxx/seq_get.html @@ -1,6 +1,5 @@ - - + @@ -56,15 +55,17 @@ do not synchronously flush the log when the transaction commits.

retp
retp points to the memory to hold the return value from the sequence. -
txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. No txnid handle may be specified if the sequence handle was +the operation will be implicitly transaction protected. +No txnid handle may be specified if the sequence handle was opened with a non-zero cache size.

If the underlying database handle was opened in a transaction, calling DbSequence::get may result in changes to the sequence object; these @@ -86,6 +87,6 @@ stored in their own database.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_init_value.html b/db/docs/api_cxx/seq_init_value.html deleted file mode 100644 index 0b3a72474..000000000 --- a/db/docs/api_cxx/seq_init_value.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - -Berkeley DB: DbSequence::init_value - - - - - - - -
-

DbSequence::init_value

-
-API -Ref
-


- -

-#include <db_cxx.h>
-

-int -DbSequence::init_value(db_seq_t value); -

-
-

Description: DbSequence::init_value

-

Set the initial value for a sequence. This call is only effective when -the sequence is being created.

-

The DbSequence::init_value method may not be called after the DbSequence::open -method is called.

-

The DbSequence::init_value method -either returns a non-zero error value -or throws an exception that encapsulates a non-zero error value on -failure, and returns 0 on success. -

-

Parameters

-
-
value
The initial value to set. -
-

Errors

-

The DbSequence::init_value method -may fail and throw -DbException, -encapsulating one of the following non-zero errors, or return one of -the following non-zero errors:

-
-
EINVAL
An -invalid flag value or parameter was specified. -
-
-

Class

-DbSequence -

See Also

-Sequences and Related Methods -
-

-APIRef -
-

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. - - diff --git a/db/docs/api_cxx/seq_initial_value.html b/db/docs/api_cxx/seq_initial_value.html index 95af3518e..b3ee13d50 100644 --- a/db/docs/api_cxx/seq_initial_value.html +++ b/db/docs/api_cxx/seq_initial_value.html @@ -1,6 +1,5 @@ - - + @@ -59,6 +58,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_list.html b/db/docs/api_cxx/seq_list.html index 72430a117..6d488f3db 100644 --- a/db/docs/api_cxx/seq_list.html +++ b/db/docs/api_cxx/seq_list.html @@ -1,6 +1,5 @@ - - + @@ -27,6 +26,6 @@ DbSequence::set_flagsSet the flags for a sequence DbSequence::set_rangeSet the range for a sequence -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_open.html b/db/docs/api_cxx/seq_open.html index bfee02ecc..dbfd413b0 100644 --- a/db/docs/api_cxx/seq_open.html +++ b/db/docs/api_cxx/seq_open.html @@ -1,6 +1,5 @@ - - + @@ -55,15 +54,17 @@ single address space. Note that if multiple threads create multiple sequences using the same database handle that handle must have been opened specifying DB_THREAD. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. Transactionally protected operations on a DbSequence handle +the operation will be implicitly transaction protected. +Transactionally protected operations on a DbSequence handle require the DbSequence handle itself be transactionally protected during its open if the open creates the sequence. @@ -106,6 +107,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_remove.html b/db/docs/api_cxx/seq_remove.html index 3c79239de..1c260feae 100644 --- a/db/docs/api_cxx/seq_remove.html +++ b/db/docs/api_cxx/seq_remove.html @@ -1,6 +1,5 @@ - - + @@ -46,15 +45,16 @@ or more of the following values: argument is NULL but the operation occurs to a transactional database), do not synchronously flush the log when the transaction commits. -

txnid
If the operation is part of an application-specified -transaction, the txnid parameter is a transaction handle -returned from DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store -group, the txnid parameter is a handle returned from -DbEnv::cdsgroup_begin; otherwise NULL. If no transaction handle is +
txnid
If the operation is part of an application-specified transaction, the +txnid parameter is a transaction handle returned from +DbEnv::txn_begin; if the operation is part of a Berkeley DB Concurrent Data Store group, the +txnid parameter is a handle returned from +DbEnv::cdsgroup_begin; otherwise NULL. +If no transaction handle is specified, but the operation occurs in a transactional database, -the operation will be implicitly transaction protected. +the operation will be implicitly transaction protected.

Errors

The DbSequence::remove method @@ -75,6 +75,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_set_cachesize.html b/db/docs/api_cxx/seq_set_cachesize.html index effe7d110..2b8814228 100644 --- a/db/docs/api_cxx/seq_set_cachesize.html +++ b/db/docs/api_cxx/seq_set_cachesize.html @@ -1,6 +1,5 @@ - - + @@ -75,6 +74,6 @@ current cache size in sizep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_set_flags.html b/db/docs/api_cxx/seq_set_flags.html index 67070d33f..31fe5cada 100644 --- a/db/docs/api_cxx/seq_set_flags.html +++ b/db/docs/api_cxx/seq_set_flags.html @@ -1,6 +1,5 @@ - - + @@ -88,6 +87,6 @@ current flags in flagsp.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_set_range.html b/db/docs/api_cxx/seq_set_range.html index 1f38d71ed..e8b27af6e 100644 --- a/db/docs/api_cxx/seq_set_range.html +++ b/db/docs/api_cxx/seq_set_range.html @@ -1,6 +1,5 @@ - - + @@ -78,6 +77,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/seq_stat.html b/db/docs/api_cxx/seq_stat.html index 7e385c2eb..9857c5019 100644 --- a/db/docs/api_cxx/seq_stat.html +++ b/db/docs/api_cxx/seq_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -69,7 +68,9 @@ of the following values:

DB_STAT_CLEAR
Reset statistics after printing their values. -

The DbSequence::stat_print method +

The DbSequence::stat method may not be called before the DbSequence::open method has +been called.

+

The DbSequence::stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on failure, and returns 0 on success. @@ -95,6 +96,6 @@ of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_abort.html b/db/docs/api_cxx/txn_abort.html index f768d09ee..2ebf0d3c0 100644 --- a/db/docs/api_cxx/txn_abort.html +++ b/db/docs/api_cxx/txn_abort.html @@ -1,6 +1,5 @@ - - + @@ -52,6 +51,6 @@ failure, and returns 0 on success.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_begin.html b/db/docs/api_cxx/txn_begin.html index 08c49fbfe..29d622372 100644 --- a/db/docs/api_cxx/txn_begin.html +++ b/db/docs/api_cxx/txn_begin.html @@ -1,6 +1,5 @@ - - - + + @@ -59,7 +58,7 @@ previously read by this transaction may be deleted or modified by other transactions before this transaction completes.

DB_READ_UNCOMMITTED
This transaction will have degree 1 isolation. Read operations performed by the transaction may read modified but not yet committed -data. Silently ignored if the DB_READ_UNCOMMITTED flag was not +data. Silently ignored if the DB_READ_UNCOMMITTED flag was not specified when the underlying database was opened.
DB_TXN_NOSYNC
Do not synchronously flush the log when this transaction commits or prepares. This means the transaction will exhibit the ACI (atomicity, @@ -67,12 +66,18 @@ consistency, and isolation) properties, but not D (durability); that is, database integrity will be maintained but it is possible that this transaction may be undone during recovery.

This behavior may be set for a Berkeley DB environment using the -DbEnv::set_flags method. Any value specified to this method -overrides that setting.

+DbEnv::set_flags method. Any value specified to this method overrides +that setting.

DB_TXN_NOWAIT
If a lock is unavailable for any Berkeley DB operation performed in the context of this transaction, cause the operation to -return DB_LOCK_DEADLOCK or throw a DbDeadlockException -immediately instead of blocking on the lock. +either return DB_LOCK_DEADLOCK or throw a +DbDeadlockException exception (or return +DB_LOCK_NOTGRANTED or throw a DbLockNotGrantedException +exception if the database environment has been configured using the +DB_TIME_NOTGRANTED flag). +

This behavior may be set for a Berkeley DB environment using the +DbEnv::set_flags method. Any value specified to this method overrides +that setting.

DB_TXN_SNAPSHOT
This transaction will execute with snapshot isolation. For databases with the DB_MULTIVERSION flag set, data values will be read as they are when the transaction begins, without taking read locks. Silently ignored for operations on @@ -85,9 +90,26 @@ which was modified after the snapshot transaction read it.

This means the transaction will exhibit all of the ACID (atomicity, consistency, isolation, and durability) properties.

This behavior is the default for Berkeley DB environments unless the -DB_TXN_NOSYNC flag was specified to the -DbEnv::set_flags method. Any value specified to this method -overrides that setting.

+DB_TXN_NOSYNC flag was specified to the +DbEnv::set_flags method. Any value specified to this method overrides +that setting.

+
DB_TXN_WAIT
If a lock is unavailable for any Berkeley DB operation performed in the context +of this transaction, wait for the lock. +

This behavior is the default for Berkeley DB environments unless the +DB_TXN_NOWAIT flag was specified to the +DbEnv::set_flags method. Any value specified to this method overrides +that setting.

+
DB_TXN_WRITE_NOSYNC
Write, but do not synchronously flush, the log when this transaction +commits. This means the transaction will exhibit the ACI (atomicity, +consistency, and isolation) properties, but not D (durability); that is, +database integrity will be maintained, but if the system fails, it is +possible some number of the most recently committed transactions may be +undone during recovery. The number of transactions at risk is governed +by how often the system flushes dirty buffers to disk and how often the +log is flushed or checkpointed. +

This behavior may be set for a Berkeley DB environment using the +DbEnv::set_flags method. Any value specified to this method overrides +that setting.

parent
If the parent parameter is non-NULL, the new transaction will be a nested transaction, with the transaction indicated by @@ -109,6 +131,6 @@ throw a DbMemoryException.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_checkpoint.html b/db/docs/api_cxx/txn_checkpoint.html index d5038f0c2..90bbdeb38 100644 --- a/db/docs/api_cxx/txn_checkpoint.html +++ b/db/docs/api_cxx/txn_checkpoint.html @@ -1,6 +1,5 @@ - - + @@ -69,6 +68,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_class.html b/db/docs/api_cxx/txn_class.html index 73311cb46..819886143 100644 --- a/db/docs/api_cxx/txn_class.html +++ b/db/docs/api_cxx/txn_class.html @@ -1,6 +1,5 @@ - - + @@ -70,6 +69,6 @@ calls in a purely C++ application.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_commit.html b/db/docs/api_cxx/txn_commit.html index be53f7096..86456c6b4 100644 --- a/db/docs/api_cxx/txn_commit.html +++ b/db/docs/api_cxx/txn_commit.html @@ -1,6 +1,5 @@ - - + @@ -80,6 +79,6 @@ method overrides both of those settings.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_discard.html b/db/docs/api_cxx/txn_discard.html index c3f743bec..c35793427 100644 --- a/db/docs/api_cxx/txn_discard.html +++ b/db/docs/api_cxx/txn_discard.html @@ -1,6 +1,5 @@ - - + @@ -66,6 +65,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_id.html b/db/docs/api_cxx/txn_id.html index 9f2da7876..c61d4ce3b 100644 --- a/db/docs/api_cxx/txn_id.html +++ b/db/docs/api_cxx/txn_id.html @@ -1,6 +1,5 @@ - - + @@ -40,6 +39,6 @@ to the DbEnv::lock_get or
APIRef -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_list.html b/db/docs/api_cxx/txn_list.html index f25365c96..d0f8ad983 100644 --- a/db/docs/api_cxx/txn_list.html +++ b/db/docs/api_cxx/txn_list.html @@ -1,6 +1,5 @@ - - + @@ -31,6 +30,6 @@ DbTxn::set_nameAssociate a string with a transaction DbTxn::set_timeoutSet transaction timeout -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_prepare.html b/db/docs/api_cxx/txn_prepare.html index 0fba00631..355097988 100644 --- a/db/docs/api_cxx/txn_prepare.html +++ b/db/docs/api_cxx/txn_prepare.html @@ -1,6 +1,5 @@ - - + @@ -62,6 +61,6 @@ transactions must be resolved.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_recover.html b/db/docs/api_cxx/txn_recover.html index 9fa7649f9..9a923afac 100644 --- a/db/docs/api_cxx/txn_recover.html +++ b/db/docs/api_cxx/txn_recover.html @@ -1,6 +1,5 @@ - - - + + @@ -28,14 +27,18 @@ DbEnv::txn_recover(DB_PREPLIST preplist[],


Description: DbEnv::txn_recover

-

The DbEnv::txn_recover method returns a list of prepared but not yet resolved -transactions. The DbEnv::txn_recover method should only be called after the -environment has been recovered. Because database environment state must -be preserved between recovery and the application calling -DbEnv::txn_recover, applications must either call DbEnv::txn_recover -using the same environment handle used when recovery is done, or the -database environment must not be configured using the DB_PRIVATE -flag.

+

Database environment recovery restores transactions that were prepared, +but not yet resolved at the time of the system shut down or crash, to +their state prior to the shut down or crash, including any locks +previously held. The DbEnv::txn_recover method returns a list of those +prepared transactions.

+

The DbEnv::txn_recover method should only be called after the environment has +been recovered.

+

Multiple threads of control may call DbEnv::txn_recover, but only one +thread of control may resolve each returned transaction, that is, only +one thread of control may call DbTxn::commit or DbTxn::abort +on each returned transaction. Callers of DbEnv::txn_recover must call +DbTxn::discard to discard each transaction they do not resolve.

On return from DbEnv::txn_recover, the preplist parameter will be filled in with a list of transactions that must be resolved by the application (committed, aborted or discarded). The preplist @@ -48,9 +51,6 @@ ID is the one specified when the transaction was prepared. The application is responsible for ensuring uniqueness among global transaction IDs. -

The application must call DbTxn::abort, DbTxn::commit or -DbTxn::discard on each returned DbTxn handle before -starting any new operations.

The DbEnv::txn_recover method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -65,6 +65,11 @@ array.

flags
The flags parameter must be set to one of the following values:
DB_FIRST
Begin returning a list of prepared, but not yet resolved transactions. +Specifying this flag begins a new pass over all prepared, but not yet +completed transactions, regardless of whether they have already been returned +in previous calls to DbEnv::txn_recover. +Calls to DbEnv::txn_recover from different threads of control should not +be intermixed in the same environment.
DB_NEXT
Continue returning a list of prepared, but not yet resolved transactions, starting where the last call to DbEnv::txn_recover left off.
@@ -80,6 +85,6 @@ starting where the last call to DbEnv::txn_recover left off.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_set_name.html b/db/docs/api_cxx/txn_set_name.html index ab365560a..6dbbd9727 100644 --- a/db/docs/api_cxx/txn_set_name.html +++ b/db/docs/api_cxx/txn_set_name.html @@ -1,6 +1,5 @@ - - + @@ -73,6 +72,6 @@ string associated with the transaction in namep.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_set_timeout.html b/db/docs/api_cxx/txn_set_timeout.html index 3e1efa18e..3bbd9ed86 100644 --- a/db/docs/api_cxx/txn_set_timeout.html +++ b/db/docs/api_cxx/txn_set_timeout.html @@ -1,6 +1,5 @@ - - - + + @@ -29,8 +28,8 @@ DbTxn::set_timeout(db_timeout_t timeout, u_int32_t flags);

Description: DbTxn::set_timeout

The DbTxn::set_timeout method sets timeout values for locks or transactions for the specified transaction.

-

All Timeouts are checked whenever a thread of control blocks on a lock -or when deadlock detection is performed. In the case of +

Timeouts are checked whenever a thread of control blocks on a lock or +when deadlock detection is performed. In the case of DB_SET_LOCK_TIMEOUT, the timeout is for any single lock request. In the case of DB_SET_TXN_TIMEOUT, the timeout is for the life of the transaction. As timeouts are only checked when the lock request @@ -78,6 +77,6 @@ invalid flag value or parameter was specified.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/txn_stat.html b/db/docs/api_cxx/txn_stat.html index d2da587ed..9ac149c88 100644 --- a/db/docs/api_cxx/txn_stat.html +++ b/db/docs/api_cxx/txn_stat.html @@ -1,6 +1,5 @@ - - - + + @@ -90,6 +89,8 @@ undefined. of that name, followed by a nul termination byte. +

The DbEnv::txn_stat method may not be called before the DbEnv::open method has +been called.

The DbEnv::txn_stat method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on @@ -148,6 +149,6 @@ or more of the following values:

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_cxx/what.html b/db/docs/api_cxx/what.html deleted file mode 100644 index 9e0410c76..000000000 --- a/db/docs/api_cxx/what.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - -Berkeley DB: DbException::what - - - - - - - -
-

DbException::what

-
-APIRef -
-


- -

-#include <db_cxx.h>
-

-virtual const char * -DbException::what() const; -

-

Description

-

A DbException object contains an informational string and an errno. -The errno can be obtained by using DbException::get_errno. -The informational string can be obtained by using DbException::what. -

Class

-DbException -

See Also

-DbException::get_errno -and -DbException::what. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_close.html b/db/docs/api_cxx/xml_close.html deleted file mode 100644 index 9ca24cb9c..000000000 --- a/db/docs/api_cxx/xml_close.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Berkeley DB: XmlContainer::close - - - - - - - -
-

XmlContainer::close

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlContainer::close(u_int32_t flags); -

-

Description

-

The XmlContainer::close method closes the specified container. - -

The XmlContainer must be in the open state for the -call to succeed. The container is only open after a successful -call to the XmlContainer::open method. Note that it is allowable -to re-open a container after it has been closed. - -

- -

DB_NOSYNC
Do not flush cached information to disk. The DB_NOSYNC flag is -a dangerous option. It should be set only if the application is doing -logging (with transactions) so that the database is recoverable after -a system or application crash, or if the database is always generated -from scratch after any system or application crash. -

It is important to understand that flushing cached information to disk -only minimizes the window of opportunity for corrupted data. Although -unlikely, it is possible for database corruption to happen if a system -or application crash occurs while writing data to the database. To -ensure that database corruption never occurs, applications must either: -use transactions and logging with automatic recovery; use logging and -application-specific recovery; or edit a copy of the database, and once -all applications using the database have successfully called -UNREF==xm_close, atomically replace the original database with the -updated copy. - -

-

When multiple threads are using the XmlContainer concurrently, -only a single thread may call the XmlContainer::close method. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_declare.html b/db/docs/api_cxx/xml_declare.html deleted file mode 100644 index 965f4a9a9..000000000 --- a/db/docs/api_cxx/xml_declare.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::declareIndex - - - - - - - -
-

XmlContainer::declareIndex

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlContainer::declareIndex(DbTxn *txnid, - const std::string &node, const std::string &index, u_int32_t flags); -

-

Description

-

The XmlContainer::declareIndex method declares the indexing required for a -particular node. The node may be an element or attribute. -

The node parameter provides the name of the node -to be indexed. Attribute node names are prefixed with the '@' character -to distinguish them from element node names. For example, within the -following XML document fragment the element name is 'fruit', and the -attribute name is '@color', -"<fruit color='red'>apple</fruit>". -

A fully qualified node name is a node name that includes its full -namespace specification. In the following fragment from the -W3C XML Namespaces specification, the fully qualified name of -the "price units" element is "http://ecommerce.org/schema:price units": -

<x xmlns:edi='http://ecommerce.org/schema'>
-    <!-- the 'price' element's namespace is http://ecommerce.org/schema -->
-    <edi:price units='Euro'>32.18</edi:price>
-</x>
-

The index string is a comma separated list of one or more of the -following indexing strategy names: -

    -
  • none-none-none-none -
  • node-element-presence -
  • node-attribute-presence -
  • node-element-equality-string -
  • node-element-equality-number -
  • node-element-substring-string -
  • node-attribute-equality-string -
  • node-attribute-equality-number -
  • node-attribute-substring-string -
  • edge-element-presence -
  • edge-attribute-presence -
  • edge-element-equality-string -
  • edge-element-equality-number -
  • edge-element-substring-string -
  • edge-attribute-equality-string -
  • edge-attribute-equality-number -
  • edge-attribute-substring-string -
-

Indices may only be declared for empty containers. Once documents have -been added to a container the indexing specification for the container -may not be changed. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv::txn_begin; -otherwise, NULL. -

The flags parameter is currently unused, and must be set to 0. -

The XmlContainer::declareIndex method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer::declareIndex method may fail and throw an UNREF==xmlexception_class -exception with the following exception code: -

-

CONTAINER_NOT_EMPTY
Indexes may only be declared for empty containers. -
-

-

CONTAINER_CLOSED
Indexes may only be declared on open containers. -
-

-

DATABASE_ERROR
An error occurred in an underlying Berkeley DB database. -UNREF==xml_getdberror method returns the error code for the error. -
-

The XmlContainer::declareIndex method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::declareIndex method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_del.html b/db/docs/api_cxx/xml_del.html deleted file mode 100644 index 97caf9aba..000000000 --- a/db/docs/api_cxx/xml_del.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::deleteDocument - - - - - - - -
-

XmlContainer::deleteDocument

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlContainer::deleteDocument(DbTxn *txnid, u_int32_t id, u_int32_t flags); -

-

Description

-

The XmlContainer::deleteDocument method removes the document identified by the id -parameter from the container. -

If the operation is to be transaction-protected (other than by specifying -the DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv::txn_begin; otherwise, NULL. -

The flags value must be set to 0 or -the following value: -

-

DB_AUTO_COMMIT
Enclose the XmlContainer::deleteDocument call within a transaction. If the call succeeds, -changes made by the operation will be recoverable. If the call fails, -the operation will have made no changes. -
-

-If the specified document is not in the container, the XmlContainer::deleteDocument method will return DB_NOTFOUND. -Otherwise, the XmlContainer::deleteDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer::deleteDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer::deleteDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::deleteDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_get.html b/db/docs/api_cxx/xml_get.html deleted file mode 100644 index 6ef4c0ba8..000000000 --- a/db/docs/api_cxx/xml_get.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::getDocument - - - - - - - -
-

XmlContainer::getDocument

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-XmlDocument -XmlContainer::getDocument(DbTxn *txnid, u_int32_t id, u_int32_t flags); -

-

Description

-

The XmlContainer::getDocument method returns the document identified by the id -parameter. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv::txn_begin; -otherwise, NULL. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

DB_DIRTY_READ
Read modified but not yet committed data. Silently ignored if the -DB_DIRTY_READ flag was not specified when the underlying -XmlContainer was opened. -

DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. -

Because the XmlContainer::getDocument interface will not hold locks -across Berkeley DB interface calls in non-transactional environments, the -DB_RMW flag to the XmlContainer::getDocument call is meaningful only in -the presence of transactions. -

-

-If the specified document is not in the container, the XmlContainer::getDocument method will return DB_NOTFOUND. -Otherwise, the XmlContainer::getDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer::getDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer::getDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::getDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_getname.html b/db/docs/api_cxx/xml_getname.html deleted file mode 100644 index 721e60741..000000000 --- a/db/docs/api_cxx/xml_getname.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::getName - - - - - - - -
-

XmlContainer::getName

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-std::string -XmlContainer::getName() const; -

-

Description

-

The XmlContainer::getName method returns the name of the container. -

The XmlContainer::getName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer::getName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The container has not yet been opened. -

-

If the requested item could not be returned due to insufficient memory, -the XmlContainer::getName method will fail and -throw a DbMemoryException exception. -

The XmlContainer::getName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::getName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_index.html b/db/docs/api_cxx/xml_index.html deleted file mode 100644 index 68d9c6282..000000000 --- a/db/docs/api_cxx/xml_index.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - -Berkeley DB: Berkeley DB XML: C++ Interface - - - - -

Berkeley DB XML: C++ Interface

-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SectionClass/MethodDescription
DbXML OperationsXmlContainerCreate a XML container handle

XmlContainer::closeClose a XML container

XmlContainer::declareIndexDeclare an index

XmlContainer::deleteDocumentDelete a document from a container

XmlContainer::getDocumentRetrieve a document from a container

XmlContainer::getNameReturn a container name

XmlContainer::openOpen a XML container

XmlContainer::parseXPathExpressionParse an XPath 1.0 expression

XmlContainer::putDocumentStore a document in a container

XmlContainer::queryWithXPathQuery a container using XPath 1.0

XmlDocumentCreate a XML document handle

XmlDocument::getAttributeValueGet the document annotation attributes

XmlDocument::getContentGet the document content

XmlDocument::getContentLengthReturn the document's length

XmlDocument::getDOMReturn the document as a DOM

XmlDocument::getEncodingReturn the document's encoding

XmlDocument::getIDGet the document ID

XmlDocument::getNameGet the document name

XmlDocument::getTypeGet the document type

XmlDocument::setAttributeValueSet the document annotation attributes

XmlDocument::setContentSet the document content

XmlDocument::setNameSet the document name

XmlDocument::setTypeSet the document type

XmlQueryContextCreate a XPath query context

XmlQueryContext::clearNamespacesDelete all namespace mappings

XmlQueryContext::getNamespaceReturn the namespace URI

XmlQueryContext::getVariableValueReturn the value bound to a variable

XmlQueryContext::removeNamespaceDelete the namespace URI

XmlQueryContext::setEvaluationTypeSet the query evaluation type

XmlQueryContext::setNamespaceSet the namespace URI

XmlQueryContext::setReturnTypeSet the query return type

XmlQueryContext::setVariableValueBind a value to a variable

XmlResultsEncapsulate XPath query results

XmlResults::nextReturn the next result

XmlResults::resetReset the results iterator

XmlValueEncapsulate the value of a document node

XPathExpressionEncapsulate a parsed XPath expression

XPathExpression::getXPathQueryReturn the XPath query
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_open.html b/db/docs/api_cxx/xml_open.html deleted file mode 100644 index baa9b2704..000000000 --- a/db/docs/api_cxx/xml_open.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - -Berkeley DB: XmlContainer::open - - - - - - - -
-

XmlContainer::open

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlContainer::open(DbTxn *txnid, - u_int32_t flags, int mode); -

-

Description

-

The XmlContainer::open method opens the XmlContainer -for both reading and writing. The container name, passed -through the constructor, is used as the base name for a set of -underlying Berkeley DB databases that are used to back the -container. - -

The XmlContainer::open method may only be called on a closed -container. A container is in the closed state after construction, -and after the XmlContainer::close method has been called. Note -that it is allowable to re-open a container after it has been -closed. - -

An open XmlContainer must be closed, by calling the -XmlContainer::close method, before the XmlContainer -object is destroyed. Otherwise the underlying database -resources will not be released. -

If the operation is to be transaction-protected (other than by specifying -the DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv::txn_begin; otherwise, NULL. -

The flags and mode arguments specify how files will be opened -and/or created if they do not already exist. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

DB_AUTO_COMMIT
Enclose the XmlContainer::open call within a transaction. If the call succeeds, -the open operation will be recoverable. If the call fails, no container will -have been created. -

DB_CREATE
Create the container. If the container does not already exist and the DB_CREATE -flag is not specified, the XmlContainer::open will fail. -

DB_DIRTY_READ
Support dirty reads; that is, read operations on the container may request the -return of modified but not yet committed data. -

DB_EXCL
Return an error if the container already exists. The DB_EXCL flag is -only meaningful when specified with the DB_CREATE flag. -

DB_NOMMAP
Do not map this container into process memory (see the description of the -DbEnv::set_mp_mmapsize method for further information). -

DB_RDONLY
Open the container for reading only. Any attempt to modify items in the container -will fail, regardless of the actual permissions of any underlying files. -

DB_THREAD
Cause the XmlContainer handle returned by XmlContainer::open to be -free-threaded; that is, usable by multiple threads within a -single address space. -
-

On UNIX systems or in IEEE/ANSI Std 1003.1 (POSIX) environments, all files created by -the container open are created with mode mode (as described in chmod(2)) and modified by the process' umask value at the time of creation -(see umask(2)). If mode is 0, the container open will use a default -mode of readable and writable by both owner and group. On Windows -systems, the mode argument is ignored. The group ownership of created -files is based on the system and directory defaults, and is not further -specified by Berkeley DB. -

Calling XmlContainer::open is a reasonably expensive operation, and maintaining -a set of open containers will normally be preferable to repeatedly opening -and closing the container for each new query. -

The XmlContainer::open method throws an exception that encapsulates a non-zero error value on -failure. -If XmlContainer::open fails, the XmlContainer::close method should be called to discard the -XmlContainer handle. -

Environment Variables

-

-

DB_HOME
If a dbenv argument to db_create was specified, the -environment variable DB_HOME may be used as the path of the -database environment home. -

XmlContainer::open is affected by any database directory specified using the -DbEnv::set_data_dir method, or by setting the "set_data_dir" string -in the environment's DB_CONFIG file. -

-

-

TMPDIR
If the file and dbenv arguments to XmlContainer::open are -NULL, the environment variable TMPDIR may be used as a -directory in which to create temporary backing files -
-

Errors

-

The XmlContainer::open method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

DB_OLD_VERSION
The container cannot be opened without being first upgraded. -

EEXIST
DB_CREATE and DB_EXCL were specified and the container exists. -

EINVAL
An invalid flag value or parameter was specified. -

-The DB_THREAD flag was specified and fast mutexes are not -available for this architecture. -

The DB_THREAD flag was specified to XmlContainer::open, but was not -specified to the DbEnv::open call for the environment in which the -XmlContainer handle was created. -

-

The XmlContainer::open method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::open method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_put.html b/db/docs/api_cxx/xml_put.html deleted file mode 100644 index 9e48a3824..000000000 --- a/db/docs/api_cxx/xml_put.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::putDocument - - - - - - - -
-

XmlContainer::putDocument

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-u_int32_t -XmlContainer::putDocument(DbTxn *txnid, XmlDocument &xmldoc, u_int32_t flags); -

-

Description

-

The XmlContainer::putDocument method stores a XML document into the container and -returns the document ID. The contents of an XmlDocument may be -of type XmlDocument::BYTES or XmlDocument::XML. XML -content is parsed and indexed as per the container indexing -specification. Non-XML (XmlDocument::BYTES) content is not -indexed. -

Regardless of the content type the document annotation attributes -are always indexed.] -

The XML indexer expects XML content to be encoded as UTF-8. The indexer -also expects the XML content to be -well-formed, but the content need not be -valid. -

If the operation is to be transaction-protected (other than by specifying -the DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv::txn_begin; otherwise, NULL. -

The flags value must be set to 0 or -the following value: -

-

DB_AUTO_COMMIT
Enclose the XmlContainer::putDocument call within a transaction. If the call succeeds, -changes made by the operation will be recoverable. If the call fails, -the operation will have made no changes. -
-

The XmlContainer::putDocument method returns a document ID on success. -Otherwise, the XmlContainer::putDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer::putDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer::putDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::putDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_xparse.html b/db/docs/api_cxx/xml_xparse.html deleted file mode 100644 index 8300f9a78..000000000 --- a/db/docs/api_cxx/xml_xparse.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::parseXPathExpression - - - - - - - -
-

XmlContainer::parseXPathExpression

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-XPathExpression -XmlContainer::parseXPathExpression( - const std::string &xpath, XmlQueryContext *context, u_int32_t flags); -

-

Description

-

Return a pre-parsed XPath 1.0 version query for later use with the -XmlContainer::queryWithXPath method. The query is provided as a string and is expected -to be in the syntax defined in the -W3C XPath 1.0 -specification. -

The query may optionally be done within the execution context -context, which describes how the query is to be performed. -

The flags parameter is currently unused, and must be set to 0. -

The XmlContainer::parseXPathExpression method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer::parseXPathExpression method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlContainer::parseXPathExpression method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::parseXPathExpression method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xml_xpath.html b/db/docs/api_cxx/xml_xpath.html deleted file mode 100644 index 12cdc2b55..000000000 --- a/db/docs/api_cxx/xml_xpath.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer::queryWithXPath - - - - - - - -
-

XmlContainer::queryWithXPath

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-XmlResults -XmlContainer::queryWithXPath(DbTxn *txnid, - XPathExpression &expression, u_int32_t flags) const; -

-XmlResults -XmlContainer::queryWithXPath(DbTxn *txnid, - const std::string &query, XmlQueryContext *context, u_int32_t flags); -

-

Description

-

Return the results of an XPath 1.0 version query against the container. -In the first variant, expression is provided as the results of -a call to the XmlContainer::parseXPathExpression method. -

In the second variant, query is provided as a string (expected -to be in the syntax defined in the -W3C XPath 1.0 specification). -In this case, the query may optionally be done within the execution -context context, which describes how the query is to be -performed. If no context is specified, the query will retrieve the set -of XmlDocuments matching the XPath expression. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv::txn_begin; -otherwise, NULL. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

DB_DIRTY_READ
Read modified but not yet committed data. Silently ignored if the -DB_DIRTY_READ flag was not specified when the underlying -XmlContainer was opened. -

DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. -

Because the XmlContainer::getDocument interface will not hold locks -across Berkeley DB interface calls in non-transactional environments, the -DB_RMW flag to the XmlContainer::getDocument call is meaningful only in -the presence of transactions. -

-

The XmlContainer::queryWithXPath method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer::queryWithXPath method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlContainer::queryWithXPath method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer::queryWithXPath method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlcontainer_class.html b/db/docs/api_cxx/xmlcontainer_class.html deleted file mode 100644 index c26d3a58d..000000000 --- a/db/docs/api_cxx/xmlcontainer_class.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer - - - - - - - -
-

XmlContainer

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XmlContainer { -public: - XmlContainer(DbEnv *dbenv, const string &name, u_int32_t flags); - ~XmlContainer(); - ... -}; -

-

Description

-

The XmlContainer class provides methods for managing the storage and -retrieval of XmlDocuments. The constructor creates an XmlContainer -object that is the handle for an XML Container. -

If no dbenv value is specified, the container is standalone; that -is, it is not part of any Berkeley DB environment. -

If a dbenv value is specified, the container is created within -the specified Berkeley DB environment and all operations are performed within -the context of that environment. The container methods automatically -make calls to the other subsystems in Berkeley DB based on the enclosing -environment. For example, if the environment has been configured to use -locking, the container methods will automatically acquire the correct -locks when reading and writing pages of the underlying databases that -support the container. The user is expected to suitably configure the -environment for their particular application. -

The flags value must be set to 0 or -the following value: -

-

DB_XA_CREATE
Instead of creating a standalone database, create a database intended to -be accessed via applications running under a X/Open conformant Transaction -Manager. The database will be opened in the environment specified by the -OPENINFO parameter of the GROUPS section of the ubbconfig file. See the -XA Resource Manager chapter in the -Reference Guide for more information. -
-

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getattr.html b/db/docs/api_cxx/xmldoc_getattr.html deleted file mode 100644 index 6ce082d71..000000000 --- a/db/docs/api_cxx/xmldoc_getattr.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getAttributeValue - - - - - - - -
-

XmlDocument::getAttributeValue

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-XmlValue -XmlDocument::getAttributeValue(const std::string &attr) const; -

-

Description

-

The XmlDocument::getAttributeValue method returns the value of the attr -annotation attribute. -

-If the specified attribute is not in the document, the XmlDocument::getAttributeValue method will return DB_NOTFOUND. -Otherwise, the XmlDocument::getAttributeValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getAttributeValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

If the requested item could not be returned due to insufficient memory, -the XmlDocument::getAttributeValue method will fail and -throw a DbMemoryException exception. -

The XmlDocument::getAttributeValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getAttributeValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getcont.html b/db/docs/api_cxx/xmldoc_getcont.html deleted file mode 100644 index b5fc3a10d..000000000 --- a/db/docs/api_cxx/xmldoc_getcont.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getContent - - - - - - - -
-

XmlDocument::getContent

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-const char * -XmlDocument::getContent() const; -

-

Description

-

The XmlDocument::getContent method returns the document content. -

The XmlDocument::getContent method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getContent method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument::getContent method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getContent method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getcontlen.html b/db/docs/api_cxx/xmldoc_getcontlen.html deleted file mode 100644 index 1a84fd948..000000000 --- a/db/docs/api_cxx/xmldoc_getcontlen.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getContentLength - - - - - - - -
-

XmlDocument::getContentLength

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-size_t -XmlDocument::getContentLength() const; -

-

Description

-

The XmlDocument::getContentLength method returns the length of the document's -content, in bytes. -

The XmlDocument::getContentLength method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getContentLength method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument::getContentLength method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getContentLength method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getdom.html b/db/docs/api_cxx/xmldoc_getdom.html deleted file mode 100644 index e668b801f..000000000 --- a/db/docs/api_cxx/xmldoc_getdom.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getDOM - - - - - - - -
-

XmlDocument::getDOM

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void * -XmlDocument::getDOM(bool withAnnotationAttributes) const; -

-

Description

-

The XmlDocument::getDOM method returns the document as a -Xerces -Document Object Model (DOM). -

The flags value must be set to 0 or -the following value: -

-

DB_WITHATTRIBUTES
The document annotation attributes are added as attributes of the -document's root element. -
-

The XmlDocument::getDOM method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getDOM method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument::getDOM method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getDOM method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getenc.html b/db/docs/api_cxx/xmldoc_getenc.html deleted file mode 100644 index 9e3996021..000000000 --- a/db/docs/api_cxx/xmldoc_getenc.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getEncoding - - - - - - - -
-

XmlDocument::getEncoding

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-Encoding -XmlDocument::getEncoding() const; -

-std::string -XmlDocument::getEncodingName() const; -

-

Description

-

The XmlDocument::getEncoding method returns the document encoding as one of the -following types: -

-

The XmlDocument::getEncodingName method returns the document encoding as a string. -

The XmlDocument::getEncoding method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getEncoding method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

If the requested item could not be returned due to insufficient memory, -the XmlDocument::getEncoding method will fail and -throw a DbMemoryException exception. -

The XmlDocument::getEncoding method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getEncoding method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getid.html b/db/docs/api_cxx/xmldoc_getid.html deleted file mode 100644 index fe7831997..000000000 --- a/db/docs/api_cxx/xmldoc_getid.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getID - - - - - - - -
-

XmlDocument::getID

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-u_int32_t -XmlDocument::getID() const; -

-

Description

-

The XmlDocument::getID method returns the document ID. The document ID will -be zero if the document has not yet been assigned any content, or the -document has not yet been added to a container. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument::getID method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getID method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have an ID. -

-

The XmlDocument::getID method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getID method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_getname.html b/db/docs/api_cxx/xmldoc_getname.html deleted file mode 100644 index c799e8ecb..000000000 --- a/db/docs/api_cxx/xmldoc_getname.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getName - - - - - - - -
-

XmlDocument::getName

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-std::string -XmlDocument::getName() const; -

-

Description

-

The XmlDocument::getName method returns the document name. -

The XmlDocument::getName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have a name. -

-

If the requested item could not be returned due to insufficient memory, -the XmlDocument::getName method will fail and -throw a DbMemoryException exception. -

The XmlDocument::getName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_gettype.html b/db/docs/api_cxx/xmldoc_gettype.html deleted file mode 100644 index a2c690b62..000000000 --- a/db/docs/api_cxx/xmldoc_gettype.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::getType - - - - - - - -
-

XmlDocument::getType

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-Type -XmlDocument::getType() const; -

-

Description

-

The XmlDocument::getType method returns the document type, either -XmlDocument::BYTES, XmlDocument::UNKNOWN, or -XmlDocument::XML. -

The XmlDocument::getType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::getType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have a type. -

-

The XmlDocument::getType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::getType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_setattr.html b/db/docs/api_cxx/xmldoc_setattr.html deleted file mode 100644 index 53bc5a639..000000000 --- a/db/docs/api_cxx/xmldoc_setattr.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::setAttributeValue - - - - - - - -
-

XmlDocument::setAttributeValue

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlDocument::setAttributeValue(const std::string &attr, - const std::string &value, u_int32_t flags); -

-

Description

-

The XmlDocument::setAttributeValue method sets the value of the specified attr -annotation attribute. The only values supported are Strings. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument::setAttributeValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::setAttributeValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

If the requested item could not be returned due to insufficient memory, -the XmlDocument::setAttributeValue method will fail and -throw a DbMemoryException exception. -

The XmlDocument::setAttributeValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::setAttributeValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_setcont.html b/db/docs/api_cxx/xmldoc_setcont.html deleted file mode 100644 index 187c8dcc5..000000000 --- a/db/docs/api_cxx/xmldoc_setcont.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::setContent - - - - - - - -
-

XmlDocument::setContent

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlDocument::setContent(const void *content, size_t len, u_int32_t flags); -

-

Description

-

The XmlDocument::setContent method sets the document content. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument::setContent method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::setContent method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlDocument::setContent method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::setContent method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_setname.html b/db/docs/api_cxx/xmldoc_setname.html deleted file mode 100644 index 09dbe10d0..000000000 --- a/db/docs/api_cxx/xmldoc_setname.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::setName - - - - - - - -
-

XmlDocument::setName

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlDocument::setName(const std::string &name); -

-

Description

-

The XmlDocument::setName method sets the name of the document. -

The XmlDocument::setName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::setName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

If the requested item could not be returned due to insufficient memory, -the XmlDocument::setName method will fail and -throw a DbMemoryException exception. -

The XmlDocument::setName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::setName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldoc_settype.html b/db/docs/api_cxx/xmldoc_settype.html deleted file mode 100644 index 11b8e4674..000000000 --- a/db/docs/api_cxx/xmldoc_settype.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument::setType - - - - - - - -
-

XmlDocument::setType

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlDocument::setType(Type type); -

-

Description

-

The XmlDocument::setType method sets the document type. The document type -must be set to one of the following values: -

-

XmlDocument::BYTES
Untyped input, which cannot be indexed. -

XmlDocument::XML
XML input. -
-

The XmlDocument::setType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument::setType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

The XmlDocument::setType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument::setType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmldocument_class.html b/db/docs/api_cxx/xmldocument_class.html deleted file mode 100644 index 7487562e7..000000000 --- a/db/docs/api_cxx/xmldocument_class.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument - - - - - - - -
-

XmlDocument

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XmlDocument { -public: - XmlDocument(); - XmlDocument(const XmlDocument &); - ~XmlDocument(); - XmlDocument &operator = (const XmlDocument &) - ... -}; -

-

Description

-

An XmlDocument is the unit of storage within a XmlContainer. -

A XmlDocument contains a stream of bytes that may be of type -XML or BYTES. The XmlContainer will only index the content of -XmlDocuments that contain XML. The BYTES type is supported to -allow the storage of arbitrary content along with XML content. -

All documents objects stored within a container are assigned a document -ID, at 32-bit unsigned integral value. This ID uniquely identifies a -document within a container. The ID is assigned by the container when -the document is first added to the container. -

The XmlDocument class supports annotation attributes. The user -may annotate their documents with meta-information to be stored with -their document, but not within their document. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_clearname.html b/db/docs/api_cxx/xmlq_clearname.html deleted file mode 100644 index 2ce9f095a..000000000 --- a/db/docs/api_cxx/xmlq_clearname.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::clearNamespaces - - - - - - - -
-

XmlQueryContext::clearNamespaces

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::clearNamespaces(); -

-

Description

-

The XmlQueryContext::clearNamespaces method removes all current namespace prefix to URI -mappings. -

The XmlQueryContext::clearNamespaces method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::clearNamespaces method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::clearNamespaces method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_getname.html b/db/docs/api_cxx/xmlq_getname.html deleted file mode 100644 index c28884082..000000000 --- a/db/docs/api_cxx/xmlq_getname.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::getNamespace - - - - - - - -
-

XmlQueryContext::getNamespace

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-std::string -XmlQueryContext::getNamespace(const std::string &prefix); -

-

Description

-

The XmlQueryContext::getNamespace method returns the namespace prefix to URI mapping -for prefix. -

-If no mapping is found, the XmlQueryContext::getNamespace method will return DB_NOTFOUND. -Otherwise, the XmlQueryContext::getNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::getNamespace method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

If the requested item could not be returned due to insufficient memory, -the XmlQueryContext::getNamespace method will fail and -throw a DbMemoryException exception. -

The XmlQueryContext::getNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::getNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_getvar.html b/db/docs/api_cxx/xmlq_getvar.html deleted file mode 100644 index 2aa7f2ab7..000000000 --- a/db/docs/api_cxx/xmlq_getvar.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::getVariableValue - - - - - - - -
-

XmlQueryContext::getVariableValue

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-XmlValue -XmlQueryContext::getVariableValue(const std::string &name); -

-

Description

-

The XmlQueryContext::getVariableValue method returns the value bound to the variable -name. -

-If there is no value, the XmlQueryContext::getVariableValue method will return DB_NOTFOUND. -Otherwise, the XmlQueryContext::getVariableValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::getVariableValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext::getVariableValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::getVariableValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_remname.html b/db/docs/api_cxx/xmlq_remname.html deleted file mode 100644 index 5d9b457da..000000000 --- a/db/docs/api_cxx/xmlq_remname.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::removeNamespace - - - - - - - -
-

XmlQueryContext::removeNamespace

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::removeNamespace(const std::string &prefix); -

-

Description

-

The XmlQueryContext::removeNamespace method removes the namespace prefix to URI mapping -for prefix. A prefix with no mapping is ignored. -

The XmlQueryContext::removeNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::removeNamespace method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

The XmlQueryContext::removeNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::removeNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_seteval.html b/db/docs/api_cxx/xmlq_seteval.html deleted file mode 100644 index e02977224..000000000 --- a/db/docs/api_cxx/xmlq_seteval.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::setEvaluationType - - - - - - - -
-

XmlQueryContext::setEvaluationType

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::setEvaluationType(EvaluationType type); -

-

Description

-

The XmlQueryContext::setEvaluationType method sets the query evaluation type. This option -is provided as large result sets could consume large amounts of memory. -By electing lazy evaluation the caller can read documents into memory -as needed. The type must be set to one of the following -values: -

-

XmlQueryContext::Eager
The whole query is executed and its restultant values derived and stored -in-memory before the call to XmlContainer::queryWithXPath returns. -

XmlQueryContext::Lazy
Perform as little up-front processing as possible, deferring all -processing to results iteration. This means that as each call to -XmlResults::next is called the next resultant value is determined. -
-

The XmlQueryContext::setEvaluationType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::setEvaluationType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext::setEvaluationType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::setEvaluationType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_setname.html b/db/docs/api_cxx/xmlq_setname.html deleted file mode 100644 index 7195577fb..000000000 --- a/db/docs/api_cxx/xmlq_setname.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::setNamespace - - - - - - - -
-

XmlQueryContext::setNamespace

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::setNamespace( - const std::string &prefix, const std::string &uri); -

-

Description

-

The XmlQueryContext::setNamespace method defines the namespace prefix to URI mapping -for prefix and uri. -

The XmlQueryContext::setNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::setNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::setNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_setret.html b/db/docs/api_cxx/xmlq_setret.html deleted file mode 100644 index 938f340f2..000000000 --- a/db/docs/api_cxx/xmlq_setret.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::setReturnType - - - - - - - -
-

XmlQueryContext::setReturnType

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::setReturnType(ReturnType type); -

-

Description

-

The XmlQueryContext::setReturnType method sets the query return type. The query can -return candidate documents, result documents, or result values. A -candidate document is a document that may match the XPath expression, -a result document is a document that does match the XPath expression, -and a result value is the result of executing the XPath expression -against the result document. -

For some expressions it might be known that the candidate set is in fact -equivalent to the result set. For these expressions there is no need to -pass the candidate documents through a filter to eliminate false -positives. The query processor can detect some expressions of this -nature, but not all. The user application may know better, or may want -to do its own false positive elimination. -

The type must be set to one of the following values: -

-

XmlQueryContext::CandidateDocuments
Return documents that may match the XPath expression. -

XmlQueryContext::ResultDocuments
Return documents that match the XPath expression. -

XmlQueryContext::ResultValues
Project the XPath expression over the matching document. -
-

The XmlQueryContext::setReturnType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext::setReturnType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext::setReturnType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::setReturnType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlq_setvar.html b/db/docs/api_cxx/xmlq_setvar.html deleted file mode 100644 index 0d605d32e..000000000 --- a/db/docs/api_cxx/xmlq_setvar.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext::setVariableValue - - - - - - - -
-

XmlQueryContext::setVariableValue

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlQueryContext::setVariableValue( - const std::string &name, const XmlValue &value); -

-

Description

-

The XmlQueryContext::setVariableValue method binds the variable name to the value -value. -

Errors

-

The XmlQueryContext::setVariableValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext::setVariableValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlquery_class.html b/db/docs/api_cxx/xmlquery_class.html deleted file mode 100644 index f88096e1b..000000000 --- a/db/docs/api_cxx/xmlquery_class.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext - - - - - - - -
-

XmlQueryContext

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XmlQueryContext { -public: - XmlQueryContext(); - XmlQueryContext(const XmlQueryContext &); - ~XmlQueryContext(); - XmlQueryContext &operator = (const XmlQueryContext &) - ... -}; -

-

Description

-

An XmlQueryContext is the context within which a query is -performed against an XmlContainer. This context includes a -namespace mapping, variable bindings, and flags that determine how the -query result set should be determined and returned to the caller. -

The XPath syntax permits expressions to refer to namespace prefixes, -but not to define them. The XmlQueryContext class provides -namespace management methods so the caller may manage the namespace -prefix to URI mapping. The XPath syntax also permits expressions to -refer to variables, but not to define them. The XmlQueryContext class -provides methods so the caller may manage the variable to value -bindings. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlr_next.html b/db/docs/api_cxx/xmlr_next.html deleted file mode 100644 index 498e3390a..000000000 --- a/db/docs/api_cxx/xmlr_next.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlResults::next - - - - - - - -
-

XmlResults::next

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlResults::next(DbTxn *txnid, XmlValue &value); -

-

Description

-

The XmlResults::next method returns the next value in the results into the -memory referenced by value. When no more values remain in the -result set, XmlResults::next will return a value with an empty pointer, -so that UNREF==xmlv_get will return 0. -

The XmlResults::next method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the requested item could not be returned due to insufficient memory, -the XmlResults::next method will fail and -throw a DbMemoryException exception. -

The XmlResults::next method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlResults::next method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlr_reset.html b/db/docs/api_cxx/xmlr_reset.html deleted file mode 100644 index a1cffe91c..000000000 --- a/db/docs/api_cxx/xmlr_reset.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlResults::reset - - - - - - - -
-

XmlResults::reset

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-void -XmlResults::reset() -

-

Description

-

The XmlResults::reset method reset the results iterator, for eager -evaluation. If the query was processed with eager evaluation then reset -will reset the iterator so a subsequent call to XmlResults::next method will -return the first value in the result set. If the query was processed -with lazy evaluation then XmlResults::reset will have no effect. -

The XmlResults::reset method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the requested item could not be returned due to insufficient memory, -the XmlResults::reset method will fail and -throw a DbMemoryException exception. -

The XmlResults::reset method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlResults::reset method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlresults_class.html b/db/docs/api_cxx/xmlresults_class.html deleted file mode 100644 index 3e7d95b3e..000000000 --- a/db/docs/api_cxx/xmlresults_class.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - -Berkeley DB: XmlResults - - - - - - - -
-

XmlResults

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XmlResults { -public: - XmlResults(const XmlResults &); - ~XmlResults(); - XmlResults &operator = (const XmlResults &) - ... -}; -

-

Description

-

The XmlResults class encapsulates the results of a query against -an XmlContainer. -

The results of a query are a collection of XmlValues. The -XmlValues may be either documents or nodesets. If the query -context selected a return type of XmlQueryContext::ResultValues -then the values will be of type NodeListValue, otherwise they will be -of type DocumentValue. -

An XmlResults object is created by calling XmlContainer::queryWithXPath. -If the query context called for lazy expression evaluation then the -resultant values will be computed as needed. If eager evaluation was -selected the resultant values are stored within the XmlResults -object. -

XmlResults provides an iteration interface through its next() -method. When there are no more values available the passed back value -pointer will be zero. If eager evaluation was selected then the reset -method can be called to reset the iterator, and the next call to next() -will return the first value of the results. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlvalue_class.html b/db/docs/api_cxx/xmlvalue_class.html deleted file mode 100644 index 981a59c72..000000000 --- a/db/docs/api_cxx/xmlvalue_class.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - -Berkeley DB: XmlValue - - - - - - - -
-

XmlValue

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XmlValue { -public: - XmlValue () - XmlValue (const std::string &v) - XmlValue (const char *v) - XmlValue (double v) - XmlValue (bool v) - XmlValue (XmlDocument &v) - XmlValue (DOM_NodeList &v) - XmlValue (Type type, const std::string &v) - virtual ~XmlValue () - XmlValue (const XmlValue &) - XmlValue & operator= (const XmlValue &) - ... -}; -

-

Description

-

An XmlValue is the value of a node in an XML document. -

The value types XmlValue::BOOLEAN, XmlValue::NUMBER, and -XmlValue::STRING are defined in the W3C XPath 1.0 specification. -This implementation adds the value types XmlValue::DOCUMENT, -XmlValue::NODELIST, and XmlValue::VARIABLE. -

The query context is passed though each of the XmlValue methods as the -value of an XmlValue object of type Variable is taken from the context. -If no context is provided and a lookup is performed then -XmlException::NO_VARIABLE_BINDING will be thrown. This exception is also -thrown if a context is provided, but a value is not bound to the -variable referred to in the XmlValue object. -

-

DOM_NodeList asNodeList (const XmlQueryContext *context) const
Return the value as a NodeList. -
XmlDocument asDocument (const XmlQueryContext *context) const
Return the value as a Document. -
XmlValue::Type getType (const XmlQueryContext *context) const
Return the type of the value. -
bool asBoolean (const XmlQueryContext *context) const
Return the value as a Boolean. -
bool equals (const XmlValue &v, const XmlQueryContext *context) const
Compare two values for equality. -
bool isBoolean (const XmlQueryContext *context) const
Return if the value is a Boolean. -
bool isDocument (const XmlQueryContext *context) const
Return if the value is a Document. -
bool isNull () const
Return if the value has no value. -
bool isNumber (const XmlQueryContext *context) const
Return if the value is a Number. -
bool isString (const XmlQueryContext *context) const
Return if the value is a String. -
bool isVariable (const XmlQueryContext *context) const
Return if the value is a Variable. -
double asNumber (const XmlQueryContext *context) const
Return the value as a Number. -
isNodeList (const XmlQueryContext *context) const
Return if the value is a NodeList. -
std::string asString (const XmlQueryContext *context) const
Return the value as a String. -
-

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlxpathexp_class.html b/db/docs/api_cxx/xmlxpathexp_class.html deleted file mode 100644 index c8f528d9b..000000000 --- a/db/docs/api_cxx/xmlxpathexp_class.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - -Berkeley DB: XPathExpression - - - - - - - -
-

XPathExpression

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-class DbXml::XPathExpression { -public: - XPathExpression () - virtual ~XPathExpression () - XPathExpression (const XPathExpression &) - XPathExpression & operator= (const XPathExpression &) - ... -}; -

-

Description

-

An XPathExpression represents a parsed XPath expression. They -are created with XmlContainer::parseXPathExpression and evaluated with XmlContainer::queryWithXPath. -

Parsed XPath expressions are useful as the cost of the expression -parsing and optimization can be amortized over many evaluations. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_cxx/xmlxpe_get.html b/db/docs/api_cxx/xmlxpe_get.html deleted file mode 100644 index 7c8d5c989..000000000 --- a/db/docs/api_cxx/xmlxpe_get.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -Berkeley DB: XPathExpression::getXPathQuery - - - - - - - -
-

XPathExpression::getXPathQuery

-
-APIRef -
-


- -

-#include <DbXml.hpp>
-

-std::string -XPathExpression::getXPathQuery() const -

-

Description

-

The XPathExpression::getXPathQuery method returns the Xpath query as a string. -

The XPathExpression::getXPathQuery method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XPathExpression::getXPathQuery method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XPathExpression::getXPathQuery method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer::close, -XmlContainer::declareIndex, -XmlContainer::deleteDocument, -XmlContainer::getDocument, -XmlContainer::getName, -XmlContainer::open, -XmlContainer::putDocument -and -XmlContainer::queryWithXPath. -

-XmlDocument::getAttributeValue, -XmlDocument::getContent, -XmlDocument::getID, -XmlDocument::getName, -XmlDocument::getType, -XmlDocument::setContent, -XmlDocument::setName, -and -XmlDocument::setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/dbenv_class.html b/db/docs/api_java/dbenv_class.html deleted file mode 100644 index f610cf670..000000000 --- a/db/docs/api_java/dbenv_class.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - -Berkeley DB: DbEnv - - - - - - - -
-

DbEnv

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public class DbEnv extends Object -{ - public DbEnv(int flags); - ... -} -

-

Description

-

This manual page describes the specific details of the DbEnv -class, which is the center of the Berkeley DB environment. -

The following flags value may be specified: -

-

Db.DB_CLIENT
Create a client environment to connect to a server. -

The Db.DB_CLIENT flag indicates to the system that this environment -is remote on a server. The use of this flag causes the environment -methods to use functions that call a server instead of local functions. -Prior to making any environment or database method calls, the -application must call the DbEnv.set_server function to establish -the connection to the server. -

-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_lk_max.html b/db/docs/api_java/env_set_lk_max.html deleted file mode 100644 index 1e2a92890..000000000 --- a/db/docs/api_java/env_set_lk_max.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_lk_max - - - - - - - -
-

DbEnv.set_lk_max

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public void set_lk_max(int max) - throws DbException; -

-

Description

-

The DbEnv.set_lk_max method interface has been deprecated in favor of -the DbEnv.set_lk_max_locks, DbEnv.set_lk_max_lockers, -and DbEnv.set_lk_max_objects methods. Please update your applications. -

Set each of the maximum number of locks, lockers and lock objects -supported by the Berkeley DB lock subsystem to max. This value is -used by DbEnv.open to estimate how much space to allocate for -various lock-table data structures. For specific information on -configuring the size of the lock subsystem, see -Configuring locking: sizing the -system. -

The DbEnv.set_lk_max interface may only be used to configure Berkeley DB before -the DbEnv.open interface is called. -

The DbEnv.set_lk_max method throws an exception that encapsulates a non-zero error value on -failure. -

The database environment's maximum number of locks may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_lk_max", one or more whitespace characters, -and the number of locks. Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv.open was called. -

-

Classes

-DbEnv, DbLock -

See Also

-DbEnv.set_lk_conflicts, -DbEnv.set_lk_detect, -DbEnv.set_lk_max_locks, -DbEnv.set_lk_max_lockers, -DbEnv.set_lk_max_objects, -DbEnv.set_lk_max, -DbEnv.lock_detect, -DbEnv.lock_get, -DbEnv.lock_id, -DbLock.put -and -DbEnv.lock_stat. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_mutexlocks.html b/db/docs/api_java/env_set_mutexlocks.html deleted file mode 100644 index e09898770..000000000 --- a/db/docs/api_java/env_set_mutexlocks.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_mutexlocks - - - - - - - -
-

DbEnv.set_mutexlocks

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public void set_mutexlocks(int do_lock) - throws DbException; -

-

Description

-

Toggle mutex locks. Setting do_lock to a false value causes -Berkeley DB to grant all requested mutual exclusion mutexes without regard -for their availability. -

This functionality should never be used for any other purpose than -debugging. -

The DbEnv.set_mutexlocks interface may be used to configure Berkeley DB at any time -during the life of the application. -

The DbEnv.set_mutexlocks method throws an exception that encapsulates a non-zero error value on -failure. -

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_pageyield.html b/db/docs/api_java/env_set_pageyield.html deleted file mode 100644 index f67f3a888..000000000 --- a/db/docs/api_java/env_set_pageyield.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_pageyield - - - - - - - -
-

DbEnv.set_pageyield

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-static int -DbEnv.set_pageyield(int pageyield); - throws DbException; -

-

Description

-

Yield the processor whenever requesting a page from the cache. Setting -pageyield to a true value causes Berkeley DB to yield the processor -any time a thread requests a page from the cache. -

The DbEnv.set_pageyield interface affects the entire application, not a single -database or database environment. -

While the DbEnv.set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

This functionality should never be used for any other purpose than stress -testing. -

The DbEnv.set_pageyield interface may be used to configure Berkeley DB at any time -during the life of the application. -

The DbEnv.set_pageyield method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_panicstate.html b/db/docs/api_java/env_set_panicstate.html deleted file mode 100644 index d8b38ee2f..000000000 --- a/db/docs/api_java/env_set_panicstate.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_panicstate - - - - - - - -
-

DbEnv.set_panicstate

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-static int -DbEnv.set_panicstate(int panic); - throws DbException; -

-

Description

-

Toggle the Berkeley DB panic state. Setting panic to a true value -causes Berkeley DB to refuse attempts to call Berkeley DB functions with the -Db.DB_RUNRECOVERY error return. -

The DbEnv.set_panicstate interface affects the entire application, not a single -database or database environment. -

While the DbEnv.set_panicstate interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

The DbEnv.set_panicstate method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_rec_init.html b/db/docs/api_java/env_set_rec_init.html deleted file mode 100644 index 430c33a02..000000000 --- a/db/docs/api_java/env_set_rec_init.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_recovery_init - - - - - - - -
-

DbEnv.set_recovery_init

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public interface DbRecoveryInit -{ - public abstract int db_recovery_init_fcn(DbEnv dbenv); -} -public class DbEnv -{ - public void set_recovery_init(DbRecoveryInit db_recovery_init_fcn) - throws DbException; - ... -} -

-

Description

-

Applications installing application-specific recovery methods need -to be called before Berkeley DB performs recovery so they may add their recovery -methods to Berkeley DB's. -

The DbEnv.set_recovery_init method supports this functionality. The -db_recovery_init_fcn method must be declared with one -argument, a reference to the enclosing Berkeley DB environment. This -method will be called after the DbEnv.open has been called, -but before recovery is started. -

If the db_recovery_init_fcn method returns a non-zero value, -no recovery will be performed and DbEnv.open will return the same -value to its caller. -

The DbEnv.set_recovery_init interface may only be used to configure Berkeley DB before -the DbEnv.open interface is called. -

The DbEnv.set_recovery_init method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv.open was called. -

-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_region_init.html b/db/docs/api_java/env_set_region_init.html deleted file mode 100644 index f4f5d2562..000000000 --- a/db/docs/api_java/env_set_region_init.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_region_init - - - - - - - -
-

DbEnv.set_region_init

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-static int -DbEnv.set_region_init(int region_init); - throws DbException; -

-

Description

-

Page-fault shared regions into memory when initially creating or joining -a Berkeley DB environment. In some applications, the expense of page-faulting -the shared memory regions can affect performance, e.g., when the -page-fault occurs while holding a lock, other lock requests can convoy -and overall throughput may decrease. Setting region_init to a -true value specifies that shared regions be read or written, as -appropriate, when the region is joined by the application. This forces -the underlying virtual memory and file systems to instantiate both the -necessary memory and the necessary disk space. This can also avoid -out-of-disk space failures later on. -

The DbEnv.set_region_init interface affects the entire application, not a single -database or database environment. -

While the DbEnv.set_region_init interface may be used to configure Berkeley DB at any time -during the life of the application, it should normally be called before -making any calls to the db_env_create or db_create methods. -

The DbEnv.set_region_init method throws an exception that encapsulates a non-zero error value on -failure. -

The database environment's initial behavior with respect to shared memory regions may also be set using the environment's -DB_CONFIG file. The syntax of the entry in that file is a -single line with the string "set_region_init", one or more whitespace characters, -and the string "1". Because the DB_CONFIG file is read when the database -environment is opened, it will silently overrule configuration done -before that time. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -
-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_server.html b/db/docs/api_java/env_set_server.html deleted file mode 100644 index a0ffeefe3..000000000 --- a/db/docs/api_java/env_set_server.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_server - - - - - - - -
-

DbEnv.set_server

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public void set_server(String host, - long cl_timeout, long sv_timeout, int flags) - throws DbException; -

-

Description

-

Connects to the DB server on the indicated hostname and sets up a channel -for communication. -

The cl_timeout argument specifies the number of seconds the client -should wait for results to come back from the server. Once the timeout -has expired on any communication with the server, Db.DB_NOSERVER will -be returned. If this value is zero, a default timeout is used. -

The sv_timeout argument specifies the number of seconds the server -should allow a client connection to remain idle before assuming that -client is gone. Once that timeout has been reached, the server releases -all resources associated with that client connection. Subsequent attempts -by that client to communicate with the server result in -Db.DB_NOSERVER_ID indicating that an invalid identifier has been -given to the server. This value can be considered a hint to the server. -The server may alter this value based on its own policies or allowed -values. If this value is zero, a default timeout is used. -

The flags parameter is currently unused, and must be set to 0. -

When the DbEnv.set_server method has been called, any subsequent calls -to Berkeley DB library interfaces may return either DB_NOSERVER or -DB_NOSERVER_ID. -

The DbEnv.set_server method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

dbenv_set_server -

-

Class

-DbEnv -

See Also

-DbEnv.close, -DbEnv.open, -DbEnv.remove, -DbEnv.strerror, -DbEnv.get_version_string -DbEnv.set_cachesize, -DbEnv.set_errcall, -DbEnv.set_error_stream, -DbEnv.set_errpfx, -DbEnv.set_flags, -DbEnv.set_mutexlocks, -and -DbEnv.set_verbose. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/env_set_tx_recover.html b/db/docs/api_java/env_set_tx_recover.html deleted file mode 100644 index c3c71e9ba..000000000 --- a/db/docs/api_java/env_set_tx_recover.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - -Berkeley DB: DbEnv.set_tx_recover - - - - - - - -
-

DbEnv.set_tx_recover

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public interface DbTxnRecover -{ - public abstract int - tx_recover(DbEnv dbenv, Dbt log_rec, DbLsn lsn, int op); -} -public class DbEnv -{ - public void set_tx_recover(DbTxnRecover tx_recover) - throws DbException; - ... -} -

-

Description

-

Set the application's method to be called during transaction abort -and recovery. This method must return 0 on success and either -errno or a value outside of the Berkeley DB error name space on -failure. It takes four arguments: -

-

dbenv
A Berkeley DB environment. -

log_rec
A log record. -

lsn
A log sequence number. -

op
One of the following values: -

-

Db.DB_TXN_BACKWARD_ROLL
The log is being read backward to determine which transactions have been -committed and to abort those operations that were not, undo the operation -described by the log record. -

Db.DB_TXN_FORWARD_ROLL
The log is being played forward, redo the operation described by the log -record. -

Db.DB_TXN_ABORT
The log is being read backwards during a transaction abort, undo the -operation described by the log record. -
-
-

The DbEnv.set_tx_recover interface may only be used to configure Berkeley DB before -the DbEnv.open interface is called. -

The DbEnv.set_tx_recover method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

-

EINVAL
An invalid flag value or parameter was specified. -

Called after DbEnv.open was called. -

-

Classes

-DbEnv, DbTxn -

See Also

-DbEnv.set_tx_max, -DbEnv.set_tx_timestamp, -DbTxn.abort, -DbEnv.txn_begin, -DbEnv.txn_checkpoint, -DbTxn.commit, -DbTxn.id, -DbTxn.prepare -and -DbEnv.txn_stat. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/get_dbt.html b/db/docs/api_java/get_dbt.html deleted file mode 100644 index cb1ea69f3..000000000 --- a/db/docs/api_java/get_dbt.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - -Berkeley DB: DbMemoryException.get_dbt - - - - - - - -
-

DbMemoryException.get_dbt

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public Dbt get_dbt(); -

-

Description

-

Return the Dbt that has insufficient memory to complete the -operation, causing the DbMemoryException to be thrown. -

Class

-DbException -

See Also

-DbException.get_errno, -DbDeadlockException, -DbMemoryException, -and -DbRunRecoveryException. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/get_errno.html b/db/docs/api_java/get_errno.html deleted file mode 100644 index 5d3850d1f..000000000 --- a/db/docs/api_java/get_errno.html +++ /dev/null @@ -1,46 +0,0 @@ - - - - - -Berkeley DB: DbException.get_errno - - - - - - - -
-

DbException.get_errno

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public int get_errno(); -

-

Description

-

Most methods in the Db classes throw an exception when an error occurs. -A DbException object contains an informational string and an errno. -The errno can be obtained using DbException.get_errno. -Since DbException inherits from the java.Exception, the string -portion is available using toString(). -

Class

-DbException -

See Also

-DbException.get_errno, -DbDeadlockException, -DbMemoryException -and -DbRunRecoveryException. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/java_index.html b/db/docs/api_java/java_index.html deleted file mode 100644 index c36227ede..000000000 --- a/db/docs/api_java/java_index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -Berkeley DB: Java Interface by Class - - - - -

Java Interface by Class

-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassMethodDescription
DbEnv
Berkeley DB Environment Class

DbEnv.closeClose an environment

DbEnv.openOpen an environment

DbEnv.removeRemove an environment

DbEnv.set_cachesizeSet the environment cache size

DbEnv.set_data_dirSet the environment data directory

DbEnv.set_errcallSet error message callback

DbEnv.set_error_streamSet error message output stream

DbEnv.set_errpfxSet error message prefix

DbEnv.set_feedbackSet feedback callback

DbEnv.set_flagsEnvironment configuration

DbEnv.set_lg_bsizeSet log buffer size

DbEnv.set_lg_dirSet the environment logging directory

DbEnv.set_lg_maxSet log file size

DbEnv.set_lk_conflictsSet lock conflicts matrix

DbEnv.set_lk_detectSet automatic deadlock detection

DbEnv.set_lk_maxSet maximum number of locks (Deprecated)

DbEnv.set_lk_max_locksSet maximum number of locks

DbEnv.set_lk_max_lockersSet maximum number of lockers

DbEnv.set_lk_max_objectsSet maximum number of lock objects

DbEnv.set_mp_mmapsizeSet maximum mapped-in database file size

DbEnv.set_mutexlocksTurn off mutual exclusion locking

DbEnv.set_pageyieldYield the processor on each page access

DbEnv.set_panicstateReset panic state

DbEnv.set_recovery_initSet recovery initialization callback

DbEnv.set_region_initFault in shared regions on initial access

DbEnv.set_serverEstablish server connection

DbEnv.set_shm_keySet system memory shared segment ID

DbEnv.set_tas_spinsSet the number of test-and-set spins

DbEnv.set_tmp_dirSet the environment temporary file directory

DbEnv.set_tx_maxSet maximum number of transactions

DbEnv.set_tx_recoverSet transaction abort recover function

DbEnv.set_tx_timestampSet recovery timestamp

DbEnv.set_verboseSet verbose messages

DbEnv.strerrorError strings

DbEnv.lock_detectPerform deadlock detection

DbEnv.lock_getAcquire a lock

DbEnv.lock_idAcquire a locker ID

DbEnv.lock_statReturn lock subsystem statistics

DbEnv.log_archiveList log and database files

DbEnv.log_compareCompare two Log Sequence Numbers

DbEnv.log_fileMap Log Sequence Numbers to log files

DbEnv.log_flushFlush log records

DbEnv.log_getGet a log record

DbEnv.log_putWrite a log record

DbEnv.log_registerRegister a file name with the log manager

DbEnv.log_statReturn log subsystem statistics

DbEnv.log_unregisterUnregister a file name with the log manager

DbEnv.memp_fstatReturn buffer pool statistics.

DbEnv.memp_statReturn buffer pool statistics

DbEnv.memp_trickleTrickle flush pages from a buffer pool

DbEnv.txn_beginBegin a transaction

DbEnv.txn_checkpointCheckpoint the transaction subsystem

DbEnv.txn_statReturn transaction subsystem statistics

DbEnv.versionReturn version information
Db
Berkeley DB Access Method Class

Db.closeClose a database

Db.cursorOpen a cursor into a database

Db.delDelete items from a database

Db.fdReturn a file descriptor from a database

Db.getGet items from a database

Db.get_byteswappedReturn if the underlying database is in host order

Db.get_typeReturn the database type

Db.joinPerform a database join on cursors

Db.key_rangeReturn estimate of key location

Db.openOpen a database

Db.putStore items into a database

Db.removeRemove a database

Db.renameRename a database

Db.set_append_recnoSet record append callback

Db.set_bt_compareSet a Btree comparison function

Db.set_bt_minkeySet the minimum number of keys per Btree page

Db.set_bt_prefixSet a Btree prefix comparison function

Db.set_cachesizeSet the database cache size

Db.set_dup_compareSet a duplicate comparison function

Db.set_errcallSet error message callback

Db.set_errpfxSet error message prefix

Db.set_feedbackSet feedback callback

Db.set_flagsGeneral database configuration

Db.set_h_ffactorSet the Hash table density

Db.set_h_hashSet a hashing function

Db.set_h_nelemSet the Hash table size

Db.set_lorderSet the database byte order

Db.set_pagesizeSet the underlying database page size

Db.set_q_extentsizeSet Queue database extent size

Db.set_re_delimSet the variable-length record delimiter

Db.set_re_lenSet the fixed-length record length

Db.set_re_padSet the fixed-length record pad byte

Db.set_re_sourceSet the backing Recno text file

Db.statReturn database statistics

Db.syncFlush a database to stable storage

Db.upgradeUpgrade a database

Db.verifyVerify/upgrade a database
Dbc
Berkeley DB Cursor Class

Dbc.closeClose a cursor

Dbc.countReturn count of duplicates

Dbc.delDelete by cursor

Dbc.dupDuplicate a cursor

Dbc.getRetrieve by cursor

Dbc.putStore by cursor
Dbt
Key/Data Encoding Class
DbLock
Lock Class

DbLock.putRelease a lock
DbLsn
Log Sequence Number Class
DbTxn
Transaction Class

DbTxn.abortAbort a transaction

DbTxn.commitCommit a transaction

DbTxn.idReturn a transaction ID

DbTxn.preparePrepare a transaction for commit
DbException
Exception Class for Berkeley DB Activity

DbException.get_errnoGet the error value
DbDeadlockException
Exception Class for deadlocks
DbMemoryException
Exception Class for insufficient memory
DbRunRecoveryException
Exception Class for failures requiring recovery
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/log_get.html b/db/docs/api_java/log_get.html deleted file mode 100644 index 94eed0134..000000000 --- a/db/docs/api_java/log_get.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - -Berkeley DB: DbEnv.log_get - - - - - - - -
-

DbEnv.log_get

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public void log_get(DbLsn lsn, Dbt data, int flags) - throws DbException; -

-

Description

-

The DbEnv.log_get method implements a cursor inside of the log, -retrieving records from the log according to the lsn and -flags arguments. -

The data field of the data structure is set to the record -retrieved and the size field indicates the number of bytes in the record. -See Dbt for a description of other fields in the data -structure. When multiple threads are using the returned log handle -concurrently, one of the Db.DB_DBT_MALLOC, Db.DB_DBT_REALLOC or -Db.DB_DBT_USERMEM flags must be specified for any Dbt used -for data retrieval. -

The flags argument must be set to exactly one of the following values: -

-

Db.DB_CHECKPOINT
The last record written with the DB_CHECKPOINT flag specified to the -DbEnv.log_put method is returned in the data argument. The -lsn argument is overwritten with the DbLsn of the record -returned. If no record has been previously written with the DB_CHECKPOINT -flag specified, the first record in the log is returned. -

If the log is empty, the DbEnv.log_get method will return Db.DB_NOTFOUND. -

Db.DB_FIRST
The first record from any of the log files found in the log directory -is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the log is empty, the DbEnv.log_get method will return Db.DB_NOTFOUND. -

Db.DB_LAST
The last record in the log is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the log is empty, the DbEnv.log_get method will return Db.DB_NOTFOUND. -

Db.DB_NEXT
The current log position is advanced to the next record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, DbEnv.log_get will return the first record in the log. -If the last log record has already been returned or the log is empty, the -DbEnv.log_get method will return Db.DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -DbEnv.log_get with the DB_NEXT flag set will return EINVAL. -

Db.DB_PREV
The current log position is moved to the previous record in the log and that -record is returned in the data argument. -The lsn argument is overwritten with the DbLsn of the -record returned. -

If the pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, -DbEnv.log_get will return the last record in the log. -If the first log record has already been returned or the log is empty, the -DbEnv.log_get method will return Db.DB_NOTFOUND. -

If the log was opened with the DB_THREAD flag set, calls to -DbEnv.log_get with the DB_PREV flag set will return EINVAL. -

Db.DB_CURRENT
Return the log record currently referenced by the log. -

If the log pointer has not been initialized via DB_FIRST, DB_LAST, DB_SET, -DB_NEXT, or DB_PREV, or if the log was opened with the DB_THREAD flag set, -DbEnv.log_get will return EINVAL. -

Db.DB_SET
Retrieve the record specified by the lsn argument. If the -specified DbLsn is invalid (e.g., does not appear in the log) -DbEnv.log_get will return EINVAL. -
-

Otherwise, the DbEnv.log_get method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The DbEnv.log_get method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The DB_FIRST flag was specified and no log files were found. -

-

The DbEnv.log_get method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv.log_get method may fail and throw -a DbRunRecoveryException, in which case all subsequent Berkeley DB calls -will fail in the same way. -

Class

-DbEnv -

See Also

-DbEnv.set_lg_bsize, -DbEnv.set_lg_max, -DbEnv.log_archive, -DbEnv.log_compare, -DbEnv.log_file, -DbEnv.log_flush, -DbEnv.log_get, -DbEnv.log_put, -DbEnv.log_register, -DbEnv.log_stat -and -DbEnv.log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/log_register.html b/db/docs/api_java/log_register.html deleted file mode 100644 index 7d4833c3c..000000000 --- a/db/docs/api_java/log_register.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - -Berkeley DB: DbEnv.log_register - - - - - - - -
-

DbEnv.log_register

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public int log_register(Db dbp, String name) - throws DbException; -

-

Description

-

The DbEnv.log_register method registers a file name with the specified Berkeley DB -environment's log manager. The log manager records all file name mappings -at each checkpoint so that a recovery process can identify the file to -which a record in the log refers. -

The dbp argument should be a reference to the Db object being -registered. The name argument should be a file name appropriate -for opening the file in the environment, during recovery. -

The DbEnv.log_register method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The DbEnv.log_register method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The DbEnv.log_register method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv.log_register method may fail and throw -a DbRunRecoveryException, in which case all subsequent Berkeley DB calls -will fail in the same way. -

Class

-DbEnv -

See Also

-DbEnv.set_lg_bsize, -DbEnv.set_lg_max, -DbEnv.log_archive, -DbEnv.log_compare, -DbEnv.log_file, -DbEnv.log_flush, -DbEnv.log_get, -DbEnv.log_put, -DbEnv.log_register, -DbEnv.log_stat -and -DbEnv.log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/log_unregister.html b/db/docs/api_java/log_unregister.html deleted file mode 100644 index c79c324ee..000000000 --- a/db/docs/api_java/log_unregister.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - -Berkeley DB: DbEnv.log_unregister - - - - - - - -
-

DbEnv.log_unregister

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public void log_unregister(Db dbp) - throws DbException; -

-

Description

-

The DbEnv.log_unregister method function unregisters the file represented by -the dbp parameter from the Berkeley DB environment's log manager. -

The DbEnv.log_unregister method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The DbEnv.log_unregister method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The DbEnv.log_unregister method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the DbEnv.log_unregister method may fail and throw -a DbRunRecoveryException, in which case all subsequent Berkeley DB calls -will fail in the same way. -

Class

-DbEnv -

See Also

-DbEnv.set_lg_bsize, -DbEnv.set_lg_max, -DbEnv.log_archive, -DbEnv.log_compare, -DbEnv.log_file, -DbEnv.log_flush, -DbEnv.log_get, -DbEnv.log_put, -DbEnv.log_register, -DbEnv.log_stat -and -DbEnv.log_unregister. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/mem_class.html b/db/docs/api_java/mem_class.html deleted file mode 100644 index be9239def..000000000 --- a/db/docs/api_java/mem_class.html +++ /dev/null @@ -1,48 +0,0 @@ - - - - - -Berkeley DB: DbMemoryException - - - - - - - -
-

DbMemoryException

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-public class DbMemoryException extends DbException { ... } -

-

Description

-

This manual page describes the DbMemoryException class and -how it is used by the various Db* classes. -

A DbMemoryException is thrown when there is insufficient memory -to complete an operation. -

This may or may not be recoverable. An example of where it would be -recoverable is during a Db.get or Dbc.get operation -with the Dbt flags set to Db.DB_DBT_USERMEM. -

Class

-DbException -

See Also

-DbException.get_errno, -DbDeadlockException, -DbMemoryException -and -DbRunRecoveryException. -
-

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/memp_fget.html b/db/docs/api_java/memp_fget.html deleted file mode 100644 index a59b4bbe8..000000000 --- a/db/docs/api_java/memp_fget.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - -Berkeley DB: DbMpoolFile.get - - - - - - - -
-

DbMpoolFile.get

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-

Description

-

A DbMpoolFile.get method is not available in the Berkeley DB -Java API. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/memp_fput.html b/db/docs/api_java/memp_fput.html deleted file mode 100644 index 64cb4732a..000000000 --- a/db/docs/api_java/memp_fput.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - -Berkeley DB: DbMpoolFile.put - - - - - - - -
-

DbMpoolFile.put

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-

Description

-

A DbMpoolFile.put method is not available in the Berkeley DB -Java API. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/memp_fset.html b/db/docs/api_java/memp_fset.html deleted file mode 100644 index 3ab3ed0ee..000000000 --- a/db/docs/api_java/memp_fset.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - -Berkeley DB: DbMpoolFile.set - - - - - - - -
-

DbMpoolFile.set

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-

-

Description

-

A DbMpoolFile.set method is not available in the Berkeley DB -Java API. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_close.html b/db/docs/api_java/xml_close.html deleted file mode 100644 index f391866a0..000000000 --- a/db/docs/api_java/xml_close.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -Berkeley DB: XmlContainer.close - - - - - - - -
-

XmlContainer.close

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void close(int flags) - throws XmlException; -

-

Description

-

The XmlContainer.close method closes the specified container. - -

The XmlContainer must be in the open state for the -call to succeed. The container is only open after a successful -call to the XmlContainer.open method. Note that it is allowable -to re-open a container after it has been closed. - -

- -

Db.DB_NOSYNC
Do not flush cached information to disk. The Db.DB_NOSYNC flag is -a dangerous option. It should be set only if the application is doing -logging (with transactions) so that the database is recoverable after -a system or application crash, or if the database is always generated -from scratch after any system or application crash. -

It is important to understand that flushing cached information to disk -only minimizes the window of opportunity for corrupted data. Although -unlikely, it is possible for database corruption to happen if a system -or application crash occurs while writing data to the database. To -ensure that database corruption never occurs, applications must either: -use transactions and logging with automatic recovery; use logging and -application-specific recovery; or edit a copy of the database, and once -all applications using the database have successfully called -UNREF==xm_close, atomically replace the original database with the -updated copy. - -

-

When multiple threads are using the XmlContainer concurrently, -only a single thread may call the XmlContainer.close method. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_declare.html b/db/docs/api_java/xml_declare.html deleted file mode 100644 index bae121b5b..000000000 --- a/db/docs/api_java/xml_declare.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.declareIndex - - - - - - - -
-

XmlContainer.declareIndex

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void declareIndex(DbTxn txnid, - String node, String index, int flags) - throws XmlException; -

-

Description

-

The XmlContainer.declareIndex method declares the indexing required for a -particular node. The node may be an element or attribute. -

The node parameter provides the name of the node -to be indexed. Attribute node names are prefixed with the '@' character -to distinguish them from element node names. For example, within the -following XML document fragment the element name is 'fruit', and the -attribute name is '@color', -"<fruit color='red'>apple</fruit>". -

A fully qualified node name is a node name that includes its full -namespace specification. In the following fragment from the -W3C XML Namespaces specification, the fully qualified name of -the "price units" element is "http://ecommerce.org/schema:price units": -

<x xmlns:edi='http://ecommerce.org/schema'>
-    <!-- the 'price' element's namespace is http://ecommerce.org/schema -->
-    <edi:price units='Euro'>32.18</edi:price>
-</x>
-

The index string is a comma separated list of one or more of the -following indexing strategy names: -

    -
  • none-none-none-none -
  • node-element-presence -
  • node-attribute-presence -
  • node-element-equality-string -
  • node-element-equality-number -
  • node-element-substring-string -
  • node-attribute-equality-string -
  • node-attribute-equality-number -
  • node-attribute-substring-string -
  • edge-element-presence -
  • edge-attribute-presence -
  • edge-element-equality-string -
  • edge-element-equality-number -
  • edge-element-substring-string -
  • edge-attribute-equality-string -
  • edge-attribute-equality-number -
  • edge-attribute-substring-string -
-

Indices may only be declared for empty containers. Once documents have -been added to a container the indexing specification for the container -may not be changed. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv.txn_begin; -otherwise, null. -

The flags parameter is currently unused, and must be set to 0. -

The XmlContainer.declareIndex method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer.declareIndex method may fail and throw an UNREF==xmlexception_class -exception with the following exception code: -

-

CONTAINER_NOT_EMPTY
Indexes may only be declared for empty containers. -
-

-

CONTAINER_CLOSED
Indexes may only be declared on open containers. -
-

-

DATABASE_ERROR
An error occurred in an underlying Berkeley DB database. -UNREF==xml_getdberror method returns the error code for the error. -
-

The XmlContainer.declareIndex method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.declareIndex method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_del.html b/db/docs/api_java/xml_del.html deleted file mode 100644 index 13356586a..000000000 --- a/db/docs/api_java/xml_del.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.deleteDocument - - - - - - - -
-

XmlContainer.deleteDocument

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void deleteDocument(DbTxn txnid, int id, int flags) - throws DbException; -

-

Description

-

The XmlContainer.deleteDocument method removes the document identified by the id -parameter from the container. -

If the operation is to be transaction-protected (other than by specifying -the Db.DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv.txn_begin; otherwise, null. -

The flags value must be set to 0 or -the following value: -

-

Db.DB_AUTO_COMMIT
Enclose the XmlContainer.deleteDocument call within a transaction. If the call succeeds, -changes made by the operation will be recoverable. If the call fails, -the operation will have made no changes. -
-

-If the specified document is not in the container, the XmlContainer.deleteDocument method will return Db.DB_NOTFOUND. -Otherwise, the XmlContainer.deleteDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer.deleteDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer.deleteDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.deleteDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_get.html b/db/docs/api_java/xml_get.html deleted file mode 100644 index fc7c6656b..000000000 --- a/db/docs/api_java/xml_get.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.getDocument - - - - - - - -
-

XmlContainer.getDocument

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public XmlDocument getDocument(DbTxn txnid, int id, int flags) - throws DbException; -

-

Description

-

The XmlContainer.getDocument method returns the document identified by the id -parameter. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv.txn_begin; -otherwise, null. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

Db.DB_DIRTY_READ
Read modified but not yet committed data. Silently ignored if the -Db.DB_DIRTY_READ flag was not specified when the underlying -XmlContainer was opened. -

Db.DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. -

Because the XmlContainer.getDocument interface will not hold locks -across Berkeley DB interface calls in non-transactional environments, the -Db.DB_RMW flag to the XmlContainer.getDocument call is meaningful only in -the presence of transactions. -

-

-If the specified document is not in the container, the XmlContainer.getDocument method will return Db.DB_NOTFOUND. -Otherwise, the XmlContainer.getDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer.getDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer.getDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.getDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_getname.html b/db/docs/api_java/xml_getname.html deleted file mode 100644 index 821bd543a..000000000 --- a/db/docs/api_java/xml_getname.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.getName - - - - - - - -
-

XmlContainer.getName

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public String getName() - throws XmlException; -

-

Description

-

The XmlContainer.getName method returns the name of the container. -

The XmlContainer.getName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer.getName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The container has not yet been opened. -

-

If the requested item could not be returned due to insufficient memory, -the XmlContainer.getName method will fail and -throw a DbMemoryException exception. -

The XmlContainer.getName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.getName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_index.html b/db/docs/api_java/xml_index.html deleted file mode 100644 index 0867ad133..000000000 --- a/db/docs/api_java/xml_index.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - -Berkeley DB: Berkeley DB XML: Java Interface - - - - -

Berkeley DB XML: Java Interface

-

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SectionClass/MethodDescription
DbXML OperationsXmlContainerCreate a XML container handle

XmlContainer.closeClose a XML container

XmlContainer.declareIndexDeclare an index

XmlContainer.deleteDocumentDelete a document from a container

XmlContainer.getDocumentRetrieve a document from a container

XmlContainer.getNameReturn a container name

XmlContainer.openOpen a XML container

XmlContainer.parseXPathExpressionParse an XPath 1.0 expression

XmlContainer.putDocumentStore a document in a container

XmlContainer.queryWithXPathQuery a container using XPath 1.0

XmlDocumentCreate a XML document handle

XmlDocument.getAttributeValueGet the document annotation attributes

XmlDocument.getContentGet the document content

XmlDocument.getContentLengthReturn the document's length

XmlDocument.getDOMReturn the document as a DOM

XmlDocument.getEncodingReturn the document's encoding

XmlDocument.getIDGet the document ID

XmlDocument.getNameGet the document name

XmlDocument.getTypeGet the document type

XmlDocument.setAttributeValueSet the document annotation attributes

XmlDocument.setContentSet the document content

XmlDocument.setNameSet the document name

XmlDocument.setTypeSet the document type

XmlQueryContextCreate a XPath query context

XmlQueryContext.clearNamespacesDelete all namespace mappings

XmlQueryContext.getNamespaceReturn the namespace URI

XmlQueryContext.getVariableValueReturn the value bound to a variable

XmlQueryContext.removeNamespaceDelete the namespace URI

XmlQueryContext.setEvaluationTypeSet the query evaluation type

XmlQueryContext.setNamespaceSet the namespace URI

XmlQueryContext.setReturnTypeSet the query return type

XmlQueryContext.setVariableValueBind a value to a variable

XmlResultsEncapsulate XPath query results

XmlResults.nextReturn the next result

XmlResults.resetReset the results iterator

XmlValueEncapsulate the value of a document node

XPathExpressionEncapsulate a parsed XPath expression

XPathExpression.getXPathQueryReturn the XPath query
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_open.html b/db/docs/api_java/xml_open.html deleted file mode 100644 index 474da8e95..000000000 --- a/db/docs/api_java/xml_open.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - -Berkeley DB: XmlContainer.open - - - - - - - -
-

XmlContainer.open

-
-APIRef -
-


- -

-import com.sleepycat.db.*;
-import java.io.FileNotFoundException;
-

-public void open(DbTxn txnid, int flags, int mode) - throws DbException, FileNotFoundException; -

-

Description

-

The XmlContainer.open method opens the XmlContainer -for both reading and writing. The container name, passed -through the constructor, is used as the base name for a set of -underlying Berkeley DB databases that are used to back the -container. - -

The XmlContainer.open method may only be called on a closed -container. A container is in the closed state after construction, -and after the XmlContainer.close method has been called. Note -that it is allowable to re-open a container after it has been -closed. - -

An open XmlContainer must be closed, by calling the -XmlContainer.close method, before the XmlContainer -object is destroyed. Otherwise the underlying database -resources will not be released. -

If the operation is to be transaction-protected (other than by specifying -the Db.DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv.txn_begin; otherwise, null. -

The flags and mode arguments specify how files will be opened -and/or created if they do not already exist. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

Db.DB_AUTO_COMMIT
Enclose the XmlContainer.open call within a transaction. If the call succeeds, -the open operation will be recoverable. If the call fails, no container will -have been created. -

Db.DB_CREATE
Create the container. If the container does not already exist and the Db.DB_CREATE -flag is not specified, the XmlContainer.open will fail. -

Db.DB_DIRTY_READ
Support dirty reads; that is, read operations on the container may request the -return of modified but not yet committed data. -

Db.DB_EXCL
Return an error if the container already exists. The Db.DB_EXCL flag is -only meaningful when specified with the Db.DB_CREATE flag. -

Db.DB_NOMMAP
Do not map this container into process memory (see the description of the -DbEnv.set_mp_mmapsize method for further information). -

Db.DB_RDONLY
Open the container for reading only. Any attempt to modify items in the container -will fail, regardless of the actual permissions of any underlying files. -

Db.DB_THREAD
Cause the XmlContainer handle returned by XmlContainer.open to be -free-threaded; that is, usable by multiple threads within a -single address space. -

Threading is always assumed in the Java API, so no special flags are -required, and Berkeley DB functions will always behave as if the -Db.DB_THREAD flag was specified. -

-

On UNIX systems or in IEEE/ANSI Std 1003.1 (POSIX) environments, all files created by -the container open are created with mode mode (as described in chmod(2)) and modified by the process' umask value at the time of creation -(see umask(2)). If mode is 0, the container open will use a default -mode of readable and writable by both owner and group. On Windows -systems, the mode argument is ignored. The group ownership of created -files is based on the system and directory defaults, and is not further -specified by Berkeley DB. -

Calling XmlContainer.open is a reasonably expensive operation, and maintaining -a set of open containers will normally be preferable to repeatedly opening -and closing the container for each new query. -

The XmlContainer.open method throws an exception that encapsulates a non-zero error value on -failure. -If XmlContainer.open fails, the XmlContainer.close method should be called to discard the -XmlContainer handle. -

Environment Variables

-

-

DB_HOME
If a dbenv argument to db_create was specified, the -environment variable DB_HOME may be used as the path of the -database environment home. -

XmlContainer.open is affected by any database directory specified using the -DbEnv.set_data_dir method, or by setting the "set_data_dir" string -in the environment's DB_CONFIG file. -

-

-

TMPDIR
If the file and dbenv arguments to XmlContainer.open are -null, the environment variable TMPDIR may be used as a -directory in which to create temporary backing files -
-

Errors

-

The XmlContainer.open method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

Db.DB_OLD_VERSION
The container cannot be opened without being first upgraded. -

EEXIST
DB_CREATE and DB_EXCL were specified and the container exists. -

EINVAL
An invalid flag value or parameter was specified. -

-The Db.DB_THREAD flag was specified and fast mutexes are not -available for this architecture. -

The Db.DB_THREAD flag was specified to XmlContainer.open, but was not -specified to the DbEnv.open call for the environment in which the -XmlContainer handle was created. -

-

The XmlContainer.open method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.open method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_put.html b/db/docs/api_java/xml_put.html deleted file mode 100644 index 5a7b16cd0..000000000 --- a/db/docs/api_java/xml_put.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.putDocument - - - - - - - -
-

XmlContainer.putDocument

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public int putDocument(DbTxn txnid, XmlDocument xmldoc, int flags) - throws DbException; -

-

Description

-

The XmlContainer.putDocument method stores a XML document into the container and -returns the document ID. The contents of an XmlDocument may be -of type Db.XmlDocument::BYTES or Db.XmlDocument::XML. XML -content is parsed and indexed as per the container indexing -specification. Non-XML (Db.XmlDocument::BYTES) content is not -indexed. -

Regardless of the content type the document annotation attributes -are always indexed.] -

The XML indexer expects XML content to be encoded as UTF-8. The indexer -also expects the XML content to be -well-formed, but the content need not be -valid. -

If the operation is to be transaction-protected (other than by specifying -the Db.DB_AUTO_COMMIT flag), the txnid parameter is a -transaction handle returned from DbEnv.txn_begin; otherwise, null. -

The flags value must be set to 0 or -the following value: -

-

Db.DB_AUTO_COMMIT
Enclose the XmlContainer.putDocument call within a transaction. If the call succeeds, -changes made by the operation will be recoverable. If the call fails, -the operation will have made no changes. -
-

The XmlContainer.putDocument method returns a document ID on success. -Otherwise, the XmlContainer.putDocument method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the operation was selected to resolve a deadlock, the -XmlContainer.putDocument method will fail and -throw a DbDeadlockException exception. -

The XmlContainer.putDocument method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.putDocument method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_xparse.html b/db/docs/api_java/xml_xparse.html deleted file mode 100644 index ad8091b74..000000000 --- a/db/docs/api_java/xml_xparse.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.parseXPathExpression - - - - - - - -
-

XmlContainer.parseXPathExpression

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public XPathExpression parseXPathExpression( - String xpath, XmlQueryContext context, int flags) - throws XmlException; -

-

Description

-

Return a pre-parsed XPath 1.0 version query for later use with the -XmlContainer.queryWithXPath method. The query is provided as a string and is expected -to be in the syntax defined in the -W3C XPath 1.0 -specification. -

The query may optionally be done within the execution context -context, which describes how the query is to be performed. -

The flags parameter is currently unused, and must be set to 0. -

The XmlContainer.parseXPathExpression method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer.parseXPathExpression method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlContainer.parseXPathExpression method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.parseXPathExpression method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xml_xpath.html b/db/docs/api_java/xml_xpath.html deleted file mode 100644 index f998cab9b..000000000 --- a/db/docs/api_java/xml_xpath.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer.queryWithXPath - - - - - - - -
-

XmlContainer.queryWithXPath

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public XmlResults queryWithXPath(DbTxn txnid, - XPathExpression expression, int flags) - throws XmlException; -

-public XmlResults queryWithXPath(DbTxn txnid, - String query, XmlQueryContext context, int flags) - throws XmlException; -

-

Description

-

Return the results of an XPath 1.0 version query against the container. -In the first variant, expression is provided as the results of -a call to the XmlContainer.parseXPathExpression method. -

In the second variant, query is provided as a string (expected -to be in the syntax defined in the -W3C XPath 1.0 specification). -In this case, the query may optionally be done within the execution -context context, which describes how the query is to be -performed. If no context is specified, the query will retrieve the set -of XmlDocuments matching the XPath expression. -

If the operation is to be transaction-protected, the txnid -parameter is a transaction handle returned from DbEnv.txn_begin; -otherwise, null. -

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or -more of the following values: -

-

Db.DB_DIRTY_READ
Read modified but not yet committed data. Silently ignored if the -Db.DB_DIRTY_READ flag was not specified when the underlying -XmlContainer was opened. -

Db.DB_RMW
Acquire write locks instead of read locks when doing the retrieval. -Setting this flag can eliminate deadlock during a read-modify-write -cycle by acquiring the write lock during the read part of the cycle so -that another thread of control acquiring a read lock for the same item, -in its own read-modify-write cycle, will not result in deadlock. -

Because the XmlContainer.getDocument interface will not hold locks -across Berkeley DB interface calls in non-transactional environments, the -Db.DB_RMW flag to the XmlContainer.getDocument call is meaningful only in -the presence of transactions. -

-

The XmlContainer.queryWithXPath method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlContainer.queryWithXPath method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlContainer.queryWithXPath method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlContainer.queryWithXPath method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlcontainer_class.html b/db/docs/api_java/xmlcontainer_class.html deleted file mode 100644 index 8a02ded46..000000000 --- a/db/docs/api_java/xmlcontainer_class.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - -Berkeley DB: XmlContainer - - - - - - - -
-

XmlContainer

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XmlContainer extends Object -{ - XmlContainer(DbEnv dbenv, String name, int flags) - throws DbException; - ... -} -

-

Description

-

The XmlContainer class provides methods for managing the storage and -retrieval of XmlDocuments. The constructor creates an XmlContainer -object that is the handle for an XML Container. -

If no dbenv value is specified, the container is standalone; that -is, it is not part of any Berkeley DB environment. -

If a dbenv value is specified, the container is created within -the specified Berkeley DB environment and all operations are performed within -the context of that environment. The container methods automatically -make calls to the other subsystems in Berkeley DB based on the enclosing -environment. For example, if the environment has been configured to use -locking, the container methods will automatically acquire the correct -locks when reading and writing pages of the underlying databases that -support the container. The user is expected to suitably configure the -environment for their particular application. -

The flags value must be set to 0 or -the following value: -

-

Db.DB_XA_CREATE
Instead of creating a standalone database, create a database intended to -be accessed via applications running under a X/Open conformant Transaction -Manager. The database will be opened in the environment specified by the -OPENINFO parameter of the GROUPS section of the ubbconfig file. See the -XA Resource Manager chapter in the -Reference Guide for more information. -
-

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getattr.html b/db/docs/api_java/xmldoc_getattr.html deleted file mode 100644 index f3e0127f4..000000000 --- a/db/docs/api_java/xmldoc_getattr.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getAttributeValue - - - - - - - -
-

XmlDocument.getAttributeValue

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public XmlValue getAttributeValue(String attr) - throws XmlException; -

-

Description

-

The XmlDocument.getAttributeValue method returns the value of the attr -annotation attribute. -

-If the specified attribute is not in the document, the XmlDocument.getAttributeValue method will return Db.DB_NOTFOUND. -Otherwise, the XmlDocument.getAttributeValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getAttributeValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

If the requested item could not be returned due to insufficient memory, -the XmlDocument.getAttributeValue method will fail and -throw a DbMemoryException exception. -

The XmlDocument.getAttributeValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getAttributeValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getcont.html b/db/docs/api_java/xmldoc_getcont.html deleted file mode 100644 index eb62821e2..000000000 --- a/db/docs/api_java/xmldoc_getcont.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getContent - - - - - - - -
-

XmlDocument.getContent

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public String getContent() - throws XmlException; -

-

Description

-

The XmlDocument.getContent method returns the document content. -

The XmlDocument.getContent method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getContent method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument.getContent method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getContent method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getcontlen.html b/db/docs/api_java/xmldoc_getcontlen.html deleted file mode 100644 index 745e7f5a8..000000000 --- a/db/docs/api_java/xmldoc_getcontlen.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getContentLength - - - - - - - -
-

XmlDocument.getContentLength

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public size_t getContentLength() - throws XmlException; -

-

Description

-

The XmlDocument.getContentLength method returns the length of the document's -content, in bytes. -

The XmlDocument.getContentLength method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getContentLength method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument.getContentLength method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getContentLength method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getdom.html b/db/docs/api_java/xmldoc_getdom.html deleted file mode 100644 index 98483a903..000000000 --- a/db/docs/api_java/xmldoc_getdom.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getDOM - - - - - - - -
-

XmlDocument.getDOM

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void * getDOM(bool withAnnotationAttributes) - throws XmlException; -

-

Description

-

The XmlDocument.getDOM method returns the document as a -W3C Level 3 -Document Object Model (DOM). -

The flags value must be set to 0 or -the following value: -

-

Db.DB_WITHATTRIBUTES
The document annotation attributes are added as attributes of the -document's root element. -
-

The XmlDocument.getDOM method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getDOM method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

The XmlDocument.getDOM method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getDOM method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getenc.html b/db/docs/api_java/xmldoc_getenc.html deleted file mode 100644 index 430bbb4b5..000000000 --- a/db/docs/api_java/xmldoc_getenc.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getEncoding - - - - - - - -
-

XmlDocument.getEncoding

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public int getEncoding() - throws XmlException; -

-public String getEncodingName() - throws XmlException; -

-

Description

-

The XmlDocument.getEncoding method returns the document encoding as one of the -following types: -

-

The XmlDocument.getEncodingName method returns the document encoding as a string. -

The XmlDocument.getEncoding method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getEncoding method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document has no content stored in it. -

-

If the requested item could not be returned due to insufficient memory, -the XmlDocument.getEncoding method will fail and -throw a DbMemoryException exception. -

The XmlDocument.getEncoding method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getEncoding method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getid.html b/db/docs/api_java/xmldoc_getid.html deleted file mode 100644 index f2c7b811e..000000000 --- a/db/docs/api_java/xmldoc_getid.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getID - - - - - - - -
-

XmlDocument.getID

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public u_int32_t getID() - throws XmlException; -

-

Description

-

The XmlDocument.getID method returns the document ID. The document ID will -be zero if the document has not yet been assigned any content, or the -document has not yet been added to a container. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument.getID method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getID method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have an ID. -

-

The XmlDocument.getID method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getID method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_getname.html b/db/docs/api_java/xmldoc_getname.html deleted file mode 100644 index 7f10c7ec7..000000000 --- a/db/docs/api_java/xmldoc_getname.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getName - - - - - - - -
-

XmlDocument.getName

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public String getName() - throws XmlException; -

-

Description

-

The XmlDocument.getName method returns the document name. -

The XmlDocument.getName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have a name. -

-

If the requested item could not be returned due to insufficient memory, -the XmlDocument.getName method will fail and -throw a DbMemoryException exception. -

The XmlDocument.getName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_gettype.html b/db/docs/api_java/xmldoc_gettype.html deleted file mode 100644 index e5e680c87..000000000 --- a/db/docs/api_java/xmldoc_gettype.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.getType - - - - - - - -
-

XmlDocument.getType

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public Type getType() - throws XmlException; -

-

Description

-

The XmlDocument.getType method returns the document type, either -Db.XmlDocument::BYTES, Db.XmlDocument::UNKNOWN, or -Db.XmlDocument::XML. -

The XmlDocument.getType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.getType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -

The document does not have a type. -

-

The XmlDocument.getType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.getType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_setattr.html b/db/docs/api_java/xmldoc_setattr.html deleted file mode 100644 index f9de10c8e..000000000 --- a/db/docs/api_java/xmldoc_setattr.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.setAttributeValue - - - - - - - -
-

XmlDocument.setAttributeValue

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setAttributeValue(String attr, String value, int flags) - throws XmlException; -

-

Description

-

The XmlDocument.setAttributeValue method sets the value of the specified attr -annotation attribute. The only values supported are Strings. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument.setAttributeValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.setAttributeValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

If the requested item could not be returned due to insufficient memory, -the XmlDocument.setAttributeValue method will fail and -throw a DbMemoryException exception. -

The XmlDocument.setAttributeValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.setAttributeValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_setcont.html b/db/docs/api_java/xmldoc_setcont.html deleted file mode 100644 index 7927d3b06..000000000 --- a/db/docs/api_java/xmldoc_setcont.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.setContent - - - - - - - -
-

XmlDocument.setContent

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setContent(String content, int flags) - throws XmlException; -

-

Description

-

The XmlDocument.setContent method sets the document content. -

The flags parameter is currently unused, and must be set to 0. -

The XmlDocument.setContent method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.setContent method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlDocument.setContent method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.setContent method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_setname.html b/db/docs/api_java/xmldoc_setname.html deleted file mode 100644 index 16f0d3109..000000000 --- a/db/docs/api_java/xmldoc_setname.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.setName - - - - - - - -
-

XmlDocument.setName

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setName(String name) - throws XmlException; -

-

Description

-

The XmlDocument.setName method sets the name of the document. -

The XmlDocument.setName method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.setName method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

If the requested item could not be returned due to insufficient memory, -the XmlDocument.setName method will fail and -throw a DbMemoryException exception. -

The XmlDocument.setName method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.setName method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldoc_settype.html b/db/docs/api_java/xmldoc_settype.html deleted file mode 100644 index 9853c12f2..000000000 --- a/db/docs/api_java/xmldoc_settype.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument.setType - - - - - - - -
-

XmlDocument.setType

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setType(Type type) - throws XmlException; -

-

Description

-

The XmlDocument.setType method sets the document type. The document type -must be set to one of the following values: -

-

Db.XmlDocument::BYTES
Untyped input, which cannot be indexed. -

Db.XmlDocument::XML
XML input. -
-

The XmlDocument.setType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlDocument.setType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

The XmlDocument.setType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlDocument.setType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmldocument_class.html b/db/docs/api_java/xmldocument_class.html deleted file mode 100644 index c7a98942d..000000000 --- a/db/docs/api_java/xmldocument_class.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlDocument - - - - - - - -
-

XmlDocument

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XmlDocument extends Object -{ - XmlDocument() - throws DbException; - ... -} -

-

Description

-

An XmlDocument is the unit of storage within a XmlContainer. -

A XmlDocument contains a stream of bytes that may be of type -XML or BYTES. The XmlContainer will only index the content of -XmlDocuments that contain XML. The BYTES type is supported to -allow the storage of arbitrary content along with XML content. -

All documents objects stored within a container are assigned a document -ID, at 32-bit unsigned integral value. This ID uniquely identifies a -document within a container. The ID is assigned by the container when -the document is first added to the container. -

The XmlDocument class supports annotation attributes. The user -may annotate their documents with meta-information to be stored with -their document, but not within their document. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_clearname.html b/db/docs/api_java/xmlq_clearname.html deleted file mode 100644 index 99c07abb1..000000000 --- a/db/docs/api_java/xmlq_clearname.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.clearNamespaces - - - - - - - -
-

XmlQueryContext.clearNamespaces

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void clearNamespaces() - throws XmlException; -

-

Description

-

The XmlQueryContext.clearNamespaces method removes all current namespace prefix to URI -mappings. -

The XmlQueryContext.clearNamespaces method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.clearNamespaces method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.clearNamespaces method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_getname.html b/db/docs/api_java/xmlq_getname.html deleted file mode 100644 index e0ecbce4b..000000000 --- a/db/docs/api_java/xmlq_getname.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.getNamespace - - - - - - - -
-

XmlQueryContext.getNamespace

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public String getNamespace(String prefix) - throws XmlException; -

-

Description

-

The XmlQueryContext.getNamespace method returns the namespace prefix to URI mapping -for prefix. -

-If no mapping is found, the XmlQueryContext.getNamespace method will return Db.DB_NOTFOUND. -Otherwise, the XmlQueryContext.getNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.getNamespace method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

If the requested item could not be returned due to insufficient memory, -the XmlQueryContext.getNamespace method will fail and -throw a DbMemoryException exception. -

The XmlQueryContext.getNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.getNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_getvar.html b/db/docs/api_java/xmlq_getvar.html deleted file mode 100644 index 2fe1295bc..000000000 --- a/db/docs/api_java/xmlq_getvar.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.getVariableValue - - - - - - - -
-

XmlQueryContext.getVariableValue

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public XmlValue getVariableValue(String name) - throws XmlException; -

-

Description

-

The XmlQueryContext.getVariableValue method returns the value bound to the variable -name. -

-If there is no value, the XmlQueryContext.getVariableValue method will return Db.DB_NOTFOUND. -Otherwise, the XmlQueryContext.getVariableValue method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.getVariableValue method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext.getVariableValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.getVariableValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_remname.html b/db/docs/api_java/xmlq_remname.html deleted file mode 100644 index 1598bd9c0..000000000 --- a/db/docs/api_java/xmlq_remname.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.removeNamespace - - - - - - - -
-

XmlQueryContext.removeNamespace

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void removeNamespace(String prefix) - throws XmlException; -

-

Description

-

The XmlQueryContext.removeNamespace method removes the namespace prefix to URI mapping -for prefix. A prefix with no mapping is ignored. -

The XmlQueryContext.removeNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.removeNamespace method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

The XmlQueryContext.removeNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.removeNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_seteval.html b/db/docs/api_java/xmlq_seteval.html deleted file mode 100644 index 235489fb5..000000000 --- a/db/docs/api_java/xmlq_seteval.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.setEvaluationType - - - - - - - -
-

XmlQueryContext.setEvaluationType

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setEvaluationType(EvaluationType type) - throws XmlException; -

-

Description

-

The XmlQueryContext.setEvaluationType method sets the query evaluation type. This option -is provided as large result sets could consume large amounts of memory. -By electing lazy evaluation the caller can read documents into memory -as needed. The type must be set to one of the following -values: -

-

Db.XmlQueryContext::Eager
The whole query is executed and its restultant values derived and stored -in-memory before the call to XmlContainer.queryWithXPath returns. -

Db.XmlQueryContext::Lazy
Perform as little up-front processing as possible, deferring all -processing to results iteration. This means that as each call to -XmlResults.next is called the next resultant value is determined. -
-

The XmlQueryContext.setEvaluationType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.setEvaluationType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext.setEvaluationType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.setEvaluationType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_setname.html b/db/docs/api_java/xmlq_setname.html deleted file mode 100644 index 8dbc42f89..000000000 --- a/db/docs/api_java/xmlq_setname.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.setNamespace - - - - - - - -
-

XmlQueryContext.setNamespace

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setNamespace(String prefix, String uri) - throws XmlException; -

-

Description

-

The XmlQueryContext.setNamespace method defines the namespace prefix to URI mapping -for prefix and uri. -

The XmlQueryContext.setNamespace method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.setNamespace method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.setNamespace method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_setret.html b/db/docs/api_java/xmlq_setret.html deleted file mode 100644 index 3cc7d8a73..000000000 --- a/db/docs/api_java/xmlq_setret.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.setReturnType - - - - - - - -
-

XmlQueryContext.setReturnType

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setReturnType(ReturnType type) - throws XmlException; -

-

Description

-

The XmlQueryContext.setReturnType method sets the query return type. The query can -return candidate documents, result documents, or result values. A -candidate document is a document that may match the XPath expression, -a result document is a document that does match the XPath expression, -and a result value is the result of executing the XPath expression -against the result document. -

For some expressions it might be known that the candidate set is in fact -equivalent to the result set. For these expressions there is no need to -pass the candidate documents through a filter to eliminate false -positives. The query processor can detect some expressions of this -nature, but not all. The user application may know better, or may want -to do its own false positive elimination. -

The type must be set to one of the following values: -

-

Db.Db.XmlQueryContext::CandidateDocuments
Return documents that may match the XPath expression. -

Db.Db.XmlQueryContext::ResultDocuments
Return documents that match the XPath expression. -

Db.Db.XmlQueryContext::ResultValues
Project the XPath expression over the matching document. -
-

The XmlQueryContext.setReturnType method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XmlQueryContext.setReturnType method may fail and throw an exception encapsulating a non-zero error for the following conditions: -

-

EINVAL
An invalid flag value or parameter was specified. -
-

The XmlQueryContext.setReturnType method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.setReturnType method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlq_setvar.html b/db/docs/api_java/xmlq_setvar.html deleted file mode 100644 index ee78ab414..000000000 --- a/db/docs/api_java/xmlq_setvar.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext.setVariableValue - - - - - - - -
-

XmlQueryContext.setVariableValue

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void setVariableValue(String name, XmlValue value) - throws XmlException; -

-

Description

-

The XmlQueryContext.setVariableValue method binds the variable name to the value -value. -

Errors

-

The XmlQueryContext.setVariableValue method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlQueryContext.setVariableValue method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlquery_class.html b/db/docs/api_java/xmlquery_class.html deleted file mode 100644 index c5c57e60e..000000000 --- a/db/docs/api_java/xmlquery_class.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlQueryContext - - - - - - - -
-

XmlQueryContext

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XmlQueryContext extends Object -{ - XmlQueryContext(int flags) - throws DbException; - ... -} -

-

Description

-

An XmlQueryContext is the context within which a query is -performed against an XmlContainer. This context includes a -namespace mapping, variable bindings, and flags that determine how the -query result set should be determined and returned to the caller. -

The XPath syntax permits expressions to refer to namespace prefixes, -but not to define them. The XmlQueryContext class provides -namespace management methods so the caller may manage the namespace -prefix to URI mapping. The XPath syntax also permits expressions to -refer to variables, but not to define them. The XmlQueryContext class -provides methods so the caller may manage the variable to value -bindings. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlr_next.html b/db/docs/api_java/xmlr_next.html deleted file mode 100644 index 6e809759d..000000000 --- a/db/docs/api_java/xmlr_next.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - -Berkeley DB: XmlResults.next - - - - - - - -
-

XmlResults.next

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void next(DbTxn txnid, XmlValue value) - throws XmlException; -

-

Description

-

The XmlResults.next method returns the next value in the results into the -memory referenced by value. When no more values remain in the -result set, XmlResults.next will return a value with an empty pointer, -so that UNREF==xmlv_get will return 0. -

The XmlResults.next method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the requested item could not be returned due to insufficient memory, -the XmlResults.next method will fail and -throw a DbMemoryException exception. -

The XmlResults.next method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlResults.next method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlr_reset.html b/db/docs/api_java/xmlr_reset.html deleted file mode 100644 index 379b73695..000000000 --- a/db/docs/api_java/xmlr_reset.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - -Berkeley DB: XmlResults.reset - - - - - - - -
-

XmlResults.reset

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public void reset() - throws XmlException; -

-

Description

-

The XmlResults.reset method reset the results iterator, for eager -evaluation. If the query was processed with eager evaluation then reset -will reset the iterator so a subsequent call to XmlResults.next method will -return the first value in the result set. If the query was processed -with lazy evaluation then XmlResults.reset will have no effect. -

The XmlResults.reset method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

If the requested item could not be returned due to insufficient memory, -the XmlResults.reset method will fail and -throw a DbMemoryException exception. -

The XmlResults.reset method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XmlResults.reset method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlresults_class.html b/db/docs/api_java/xmlresults_class.html deleted file mode 100644 index 7c46b5a25..000000000 --- a/db/docs/api_java/xmlresults_class.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - -Berkeley DB: XmlResults - - - - - - - -
-

XmlResults

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XmlResults extends Object { ... } -

-

Description

-

The XmlResults class encapsulates the results of a query against -an XmlContainer. -

The results of a query are a collection of XmlValues. The -XmlValues may be either documents or nodesets. If the query -context selected a return type of Db.XmlQueryContext::ResultValues -then the values will be of type NodeListValue, otherwise they will be -of type DocumentValue. -

An XmlResults object is created by calling XmlContainer.queryWithXPath. -If the query context called for lazy expression evaluation then the -resultant values will be computed as needed. If eager evaluation was -selected the resultant values are stored within the XmlResults -object. -

XmlResults provides an iteration interface through its next() -method. When there are no more values available the passed back value -pointer will be zero. If eager evaluation was selected then the reset -method can be called to reset the iterator, and the next call to next() -will return the first value of the results. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlvalue_class.html b/db/docs/api_java/xmlvalue_class.html deleted file mode 100644 index 64ff42c28..000000000 --- a/db/docs/api_java/xmlvalue_class.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - -Berkeley DB: XmlValue - - - - - - - -
-

XmlValue

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XmlValue extends Object -{ - XmlValue(int flags) - throws DbException; - ... -} -

-

Description

-

An XmlValue is the value of a node in an XML document. -

The value types Db.XmlValue::BOOLEAN, Db.XmlValue::NUMBER, and -Db.XmlValue::STRING are defined in the W3C XPath 1.0 specification. -This implementation adds the value types Db.XmlValue::DOCUMENT, -Db.XmlValue::NODELIST, and Db.XmlValue::VARIABLE. -

The query context is passed though each of the XmlValue methods as the -value of an XmlValue object of type Variable is taken from the context. -If no context is provided and a lookup is performed then -XmlException::NO_VARIABLE_BINDING will be thrown. This exception is also -thrown if a context is provided, but a value is not bound to the -variable referred to in the XmlValue object. -

-

DOM_NodeList asNodeList (const XmlQueryContext *context) const
Return the value as a NodeList. -
XmlDocument asDocument (const XmlQueryContext *context) const
Return the value as a Document. -
XmlValue::Type getType (const XmlQueryContext *context) const
Return the type of the value. -
bool asBoolean (const XmlQueryContext *context) const
Return the value as a Boolean. -
bool equals (const XmlValue &v, const XmlQueryContext *context) const
Compare two values for equality. -
bool isBoolean (const XmlQueryContext *context) const
Return if the value is a Boolean. -
bool isDocument (const XmlQueryContext *context) const
Return if the value is a Document. -
bool isNull () const
Return if the value has no value. -
bool isNumber (const XmlQueryContext *context) const
Return if the value is a Number. -
bool isString (const XmlQueryContext *context) const
Return if the value is a String. -
bool isVariable (const XmlQueryContext *context) const
Return if the value is a Variable. -
double asNumber (const XmlQueryContext *context) const
Return the value as a Number. -
isNodeList (const XmlQueryContext *context) const
Return if the value is a NodeList. -
std::string asString (const XmlQueryContext *context) const
Return the value as a String. -
-

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlxpathexp_class.html b/db/docs/api_java/xmlxpathexp_class.html deleted file mode 100644 index efd37fc9b..000000000 --- a/db/docs/api_java/xmlxpathexp_class.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -Berkeley DB: XPathExpression - - - - - - - -
-

XPathExpression

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public class XPathExpression extends Object -{ - XPathExpression(int flags) - throws DbException; - ... -} -

-

Description

-

An XPathExpression represents a parsed XPath expression. They -are created with XmlContainer.parseXPathExpression and evaluated with XmlContainer.queryWithXPath. -

Parsed XPath expressions are useful as the cost of the expression -parsing and optimization can be amortized over many evaluations. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_java/xmlxpe_get.html b/db/docs/api_java/xmlxpe_get.html deleted file mode 100644 index c9f14fe5c..000000000 --- a/db/docs/api_java/xmlxpe_get.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -Berkeley DB: XPathExpression.getXPathQuery - - - - - - - -
-

XPathExpression.getXPathQuery

-
-APIRef -
-


- -

-import com.sleepycat.dbxml.*;
-

-public String getXPathQuery() - throws XmlException; -

-

Description

-

The XPathExpression.getXPathQuery method returns the Xpath query as a string. -

The XPathExpression.getXPathQuery method throws an exception that encapsulates a non-zero error value on -failure. -

Errors

-

The XPathExpression.getXPathQuery method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. -If a catastrophic error has occurred, the XPathExpression.getXPathQuery method may fail and -throw a DbRunRecoveryException, -in which case all subsequent Berkeley DB calls will fail in the same way. -

Class

-XmlContainer, XmlDocument, XmlQueryContext -

See Also

-XmlContainer.close, -XmlContainer.declareIndex, -XmlContainer.deleteDocument, -XmlContainer.getDocument, -XmlContainer.getName, -XmlContainer.open, -XmlContainer.putDocument -and -XmlContainer.queryWithXPath. -

-XmlDocument.getAttributeValue, -XmlDocument.getContent, -XmlDocument.getID, -XmlDocument.getName, -XmlDocument.getType, -XmlDocument.setContent, -XmlDocument.setName, -and -XmlDocument.setType. - -

-APIRef -
-

Copyright Sleepycat Software - - diff --git a/db/docs/api_tcl/api_tcl.html b/db/docs/api_tcl/api_tcl.html index bc7caf3b4..e72db926d 100644 --- a/db/docs/api_tcl/api_tcl.html +++ b/db/docs/api_tcl/api_tcl.html @@ -1,6 +1,5 @@ - - + @@ -49,6 +48,6 @@

berkdb versionReturn version information -

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_close.html b/db/docs/api_tcl/db_close.html index a6b0abd40..dd992e512 100644 --- a/db/docs/api_tcl/db_close.html +++ b/db/docs/api_tcl/db_close.html @@ -1,7 +1,6 @@ - - + @@ -55,6 +54,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_count.html b/db/docs/api_tcl/db_count.html index 4f3a06000..6b2d5477d 100644 --- a/db/docs/api_tcl/db_count.html +++ b/db/docs/api_tcl/db_count.html @@ -1,7 +1,6 @@ - - + @@ -33,6 +32,6 @@ Tcl error is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_cursor.html b/db/docs/api_tcl/db_cursor.html index f164eaf31..f412eb703 100644 --- a/db/docs/api_tcl/db_cursor.html +++ b/db/docs/api_tcl/db_cursor.html @@ -1,7 +1,6 @@ - - + @@ -43,6 +42,6 @@ the operation will be implicitly transaction protected.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_del.html b/db/docs/api_tcl/db_del.html index c464070d4..42f57a13e 100644 --- a/db/docs/api_tcl/db_del.html +++ b/db/docs/api_tcl/db_del.html @@ -1,7 +1,6 @@ - - + @@ -48,6 +47,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_get.html b/db/docs/api_tcl/db_get.html index ddaddd147..bc253a1bf 100644 --- a/db/docs/api_tcl/db_get.html +++ b/db/docs/api_tcl/db_get.html @@ -1,7 +1,6 @@ - - + @@ -99,6 +98,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_get_join.html b/db/docs/api_tcl/db_get_join.html index 43ebe9d8e..10be491e1 100644 --- a/db/docs/api_tcl/db_get_join.html +++ b/db/docs/api_tcl/db_get_join.html @@ -1,7 +1,6 @@ - - + @@ -45,6 +44,6 @@ the operation will be implicitly transaction protected.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_get_type.html b/db/docs/api_tcl/db_get_type.html index 166a32c4b..a3e2b0ce3 100644 --- a/db/docs/api_tcl/db_get_type.html +++ b/db/docs/api_tcl/db_get_type.html @@ -1,7 +1,6 @@ - - + @@ -30,6 +29,6 @@ returning one of "btree", "hash", "queue" or "recno".


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_is_byteswapped.html b/db/docs/api_tcl/db_is_byteswapped.html index d94cbbe2b..868830d58 100644 --- a/db/docs/api_tcl/db_is_byteswapped.html +++ b/db/docs/api_tcl/db_is_byteswapped.html @@ -1,7 +1,6 @@ - - + @@ -34,6 +33,6 @@ or not.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_join.html b/db/docs/api_tcl/db_join.html index 821700c25..bad1c18a0 100644 --- a/db/docs/api_tcl/db_join.html +++ b/db/docs/api_tcl/db_join.html @@ -1,7 +1,6 @@ - - + @@ -44,6 +43,6 @@ been created within the same transaction.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_open.html b/db/docs/api_tcl/db_open.html index a713cf275..1a61d5ab9 100644 --- a/db/docs/api_tcl/db_open.html +++ b/db/docs/api_tcl/db_open.html @@ -1,7 +1,6 @@ - - + @@ -310,6 +309,6 @@ file for more information.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_put.html b/db/docs/api_tcl/db_put.html index 04ec31ee2..a3a93faa3 100644 --- a/db/docs/api_tcl/db_put.html +++ b/db/docs/api_tcl/db_put.html @@ -1,7 +1,6 @@ - - + @@ -73,6 +72,6 @@ types, the key is interpreted by Tcl as a byte array.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_remove.html b/db/docs/api_tcl/db_remove.html index d513426c8..f7482e400 100644 --- a/db/docs/api_tcl/db_remove.html +++ b/db/docs/api_tcl/db_remove.html @@ -1,7 +1,6 @@ - - + @@ -56,6 +55,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_rename.html b/db/docs/api_tcl/db_rename.html index e293672e5..b2ff6339a 100644 --- a/db/docs/api_tcl/db_rename.html +++ b/db/docs/api_tcl/db_rename.html @@ -1,7 +1,6 @@ - - + @@ -57,6 +56,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_stat.html b/db/docs/api_tcl/db_stat.html index d2a0f5edb..ac3aec419 100644 --- a/db/docs/api_tcl/db_stat.html +++ b/db/docs/api_tcl/db_stat.html @@ -1,7 +1,6 @@ - - + @@ -36,6 +35,6 @@ of the database.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_sync.html b/db/docs/api_tcl/db_sync.html index 68f6d70ef..defc10e89 100644 --- a/db/docs/api_tcl/db_sync.html +++ b/db/docs/api_tcl/db_sync.html @@ -1,7 +1,6 @@ - - + @@ -32,6 +31,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/db_truncate.html b/db/docs/api_tcl/db_truncate.html index edd721ddb..0c0a48fc8 100644 --- a/db/docs/api_tcl/db_truncate.html +++ b/db/docs/api_tcl/db_truncate.html @@ -1,7 +1,6 @@ - - + @@ -41,6 +40,6 @@ from the database on success.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/dbc_close.html b/db/docs/api_tcl/dbc_close.html index dd42aa71e..0b4ad54e8 100644 --- a/db/docs/api_tcl/dbc_close.html +++ b/db/docs/api_tcl/dbc_close.html @@ -1,7 +1,6 @@ - - + @@ -32,6 +31,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/dbc_del.html b/db/docs/api_tcl/dbc_del.html index f4c2c1fd5..fe4c04e1a 100644 --- a/db/docs/api_tcl/dbc_del.html +++ b/db/docs/api_tcl/dbc_del.html @@ -1,7 +1,6 @@ - - + @@ -34,6 +33,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/dbc_dup.html b/db/docs/api_tcl/dbc_dup.html index 172a50e6c..005da42a2 100644 --- a/db/docs/api_tcl/dbc_dup.html +++ b/db/docs/api_tcl/dbc_dup.html @@ -1,7 +1,6 @@ - - + @@ -42,6 +41,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/dbc_get.html b/db/docs/api_tcl/dbc_get.html index 1542f106a..7e08d52ae 100644 --- a/db/docs/api_tcl/dbc_get.html +++ b/db/docs/api_tcl/dbc_get.html @@ -1,7 +1,6 @@ - - + @@ -163,6 +162,6 @@ exist an empty list is returned.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/dbc_put.html b/db/docs/api_tcl/dbc_put.html index a77e36fd4..6a2556d49 100644 --- a/db/docs/api_tcl/dbc_put.html +++ b/db/docs/api_tcl/dbc_put.html @@ -1,7 +1,6 @@ - - + @@ -129,6 +128,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/env_close.html b/db/docs/api_tcl/env_close.html index 12026e042..42e4f06e6 100644 --- a/db/docs/api_tcl/env_close.html +++ b/db/docs/api_tcl/env_close.html @@ -1,7 +1,6 @@ - - + @@ -38,6 +37,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/env_dbremove.html b/db/docs/api_tcl/env_dbremove.html index d79915022..229b3daf2 100644 --- a/db/docs/api_tcl/env_dbremove.html +++ b/db/docs/api_tcl/env_dbremove.html @@ -1,7 +1,6 @@ - - + @@ -45,6 +44,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/env_dbrename.html b/db/docs/api_tcl/env_dbrename.html index b8d519ee3..00cc2ce01 100644 --- a/db/docs/api_tcl/env_dbrename.html +++ b/db/docs/api_tcl/env_dbrename.html @@ -1,7 +1,6 @@ - - + @@ -46,6 +45,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/env_open.html b/db/docs/api_tcl/env_open.html index 98ad6ac3f..52795e63f 100644 --- a/db/docs/api_tcl/env_open.html +++ b/db/docs/api_tcl/env_open.html @@ -1,7 +1,6 @@ - - + @@ -170,6 +169,6 @@ systems).

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/env_remove.html b/db/docs/api_tcl/env_remove.html index f7b3abe7e..d9d3d32a7 100644 --- a/db/docs/api_tcl/env_remove.html +++ b/db/docs/api_tcl/env_remove.html @@ -1,7 +1,6 @@ - - + @@ -68,6 +67,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/txn.html b/db/docs/api_tcl/txn.html index 65e5ffc01..13767a849 100644 --- a/db/docs/api_tcl/txn.html +++ b/db/docs/api_tcl/txn.html @@ -1,7 +1,6 @@ - - + @@ -59,6 +58,6 @@ consistency, isolation, and durability) properties.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/txn_abort.html b/db/docs/api_tcl/txn_abort.html index 7e91f12ed..03e9fa166 100644 --- a/db/docs/api_tcl/txn_abort.html +++ b/db/docs/api_tcl/txn_abort.html @@ -1,7 +1,6 @@ - - + @@ -41,6 +40,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/txn_checkpoint.html b/db/docs/api_tcl/txn_checkpoint.html index 8634fc2c4..5f2fb92c3 100644 --- a/db/docs/api_tcl/txn_checkpoint.html +++ b/db/docs/api_tcl/txn_checkpoint.html @@ -1,7 +1,6 @@ - - + @@ -40,6 +39,6 @@ of minutes has passed since the last checkpoint.

APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/txn_commit.html b/db/docs/api_tcl/txn_commit.html index 833ff9b19..4e3a47184 100644 --- a/db/docs/api_tcl/txn_commit.html +++ b/db/docs/api_tcl/txn_commit.html @@ -1,7 +1,6 @@ - - + @@ -65,6 +64,6 @@ is thrown.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/api_tcl/version.html b/db/docs/api_tcl/version.html index d5478226f..250ec95f7 100644 --- a/db/docs/api_tcl/version.html +++ b/db/docs/api_tcl/version.html @@ -1,7 +1,6 @@ - - + @@ -35,6 +34,6 @@ patch levels of the underlying Berkeley DB release.


APIRef
-

Copyright (c) 1996-2006 Oracle Corporation - All rights reserved. +

Copyright (c) 1996,2007 Oracle. All rights reserved. diff --git a/db/docs/articles/inmemory/C/InMemoryDBApplication.pdf b/db/docs/articles/inmemory/C/InMemoryDBApplication.pdf new file mode 100644 index 000000000..a26e0bd7c Binary files /dev/null and b/db/docs/articles/inmemory/C/InMemoryDBApplication.pdf differ diff --git a/db/docs/articles/inmemory/C/gettingStarted.css b/db/docs/articles/inmemory/C/gettingStarted.css new file mode 100644 index 000000000..c1b4c86b7 --- /dev/null +++ b/db/docs/articles/inmemory/C/gettingStarted.css @@ -0,0 +1,41 @@ +body { width: 45em; + margin-left: 3em; + font-family: Arial, Helvetica, sans-serif; + font-size: 11pt; + } + +h2.title { margin-left: -1em; + font-family: Verdana, serif; + font-size: 16pt; + } + +h3.title { font-family: Verdana, serif; + font-size: 14pt; + } + +pre.programlisting { + font-family: monospace; + background-color: #eae8e9; +} + +div.navheader { font-size: 9pt; + width: 60em; + margin-left: -2em; + } + +div.navheader table tr td { font-size: 9pt; } + +div.navfooter { font-size: 9pt; + width: 60em; + margin-left: -2em; + } +div.navfooter table tr td { font-size: 9pt; } + +span.emphasis { font-style: italic; font-size: 9pt;} + +div.appendix div.informaltable { font-size: 9pt; } +div.appendix div.informaltable td { vertical-align: top; } +div.appendix div.informaltable p { margin-top: .25em; } +div.appendix div.informaltable p { margin-bottom: .25em; } + + diff --git a/db/docs/articles/inmemory/C/index.html b/db/docs/articles/inmemory/C/index.html new file mode 100644 index 000000000..68e4db031 --- /dev/null +++ b/db/docs/articles/inmemory/C/index.html @@ -0,0 +1,1165 @@ + + + + + + Writing In-Memory Berkeley DB Applications + + + + + +

+
+
+
+
+

Writing In-Memory Berkeley DB Applications

+
+
+
+

+ Legal Notice +

+

+ This documentation is distributed under an open source license. + You may review the terms of this license at: + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html + + +

+

+ Oracle, Berkeley DB, + + + and + Sleepycat are trademarks or registered trademarks of + Oracle. All rights to these marks are reserved. + No third-party use is permitted without the + express prior written consent of Oracle. +

+

+ To obtain a copy of this document's original source code, please + submit a request to the Oracle Technology Network forum at: + http://forums.oracle.com/forums/forum.jspa?forumID=271 + + +

+
+
+
+

7/5/2007

+
+
+
+
+
+ +
+
+
+
+

Introduction

+
+
+
+
+

+ This document describes how to write a DB application + that keeps its data entirely in memory. That is, the + application writes no data to disk. For this reason, + in-memory only applications typically discard all + data durability guarantees. +

+
+

Note

+

+ This document assume familiarity with the + Getting Started with Berkeley DB guide. If + you are using environments or transactions, then + you should also have an understanding of the + concepts in Berkeley DB Getting Started with Transaction Processing + guide. +

+
+

+ There are several reasons why you might want to write an + in-memory only DB application. For platforms on which a + disk drive is available to back your data, an in-memory + application might be desirable from a performance + perspective. In this case, the data that your application + manages might be generated during run-time and so is of no + interest across application startups. +

+

+ Other platforms are disk-less. In this case, an in-memory only + configuration is the only possible choice. Note that this + document's primary focus is disk-less systems for which an + on-disk filesystem is not available. +

+
+
+
+
+
+

Resources to be Managed

+
+
+
+
+

+ Before continuing, it is worthwhile to briefly + describe the DB resources that must be managed + if you are going to configure an in-memory only + DB application. These are resources that are by + default persisted on disk, or backed by a + filesystem on disk. Some configuration is therefore + required to keep these resources in-memory only. +

+

+ Note that you can configure only some of these + resources to be held in-memory, and allow others to + be backed by disk. This might be desireable for + some applications that wish to improve application + performance by, for example, eliminating disk I/O + for some, but not all, of these resources. However, + for the purpose of this document, we assume you + want to configure all of these resources to be held + in memory. +

+

+ Managing these resources for an in-memory + application is described in detail later in this + article. +

+
+
    +
  • +

    + Database files +

    +

    + Normally, DB stores your + database data within on-disk files. + For an entirely in-memory + application, you are required to turn + off this behavior. +

    +
  • +
  • +

    + Environment region files +

    +

    + DB environments manage region + files for a variety of purposes. + Normally these are backed by the + filesystem, but by using the + appropriate configuration option + you can cause region files to + reside in memory only. +

    +
  • +
  • +

    + Database cache +

    +

    + The DB cache must be configured + large enough to hold all your data + in memory. If you do not size your + cache large enough, then DB + will attempt to write pages to + disk. In a disk-less system, this + will result in an abnormal + termination of your program. +

    +
  • +
  • +

    + Logs +

    +

    + DB logs describe the write activity + that has occurred in your application. + They are used for a number of purposes, + such as recovery operations for + applications that are seeking data + durability guarantees. +

    +

    + For in-memory applications that do not + care about durability guarantees, logs + are still required if you want + transactional benefits other than + durability (such as isolation + and atomicity). This is because DB's + transactional subsystem requires logs, + even if you want to discard all data + durability guarantees. +

    +

    + If this describes your application, you + must enable logs but configure them to + reside only within memory. +

    +
  • +
  • +

    + Temporary overflow pages +

    +

    + You must disallow backing temporary + database files with the + filesystem. This is mostly a + configuration option, but it is + also dependent upon sizing your + cache correctly. +

    +
  • +
+
+
+
+
+
+
+

Strategies

+
+
+
+
+

+ DB is an extremely flexible product that can be + adapted to suit almost any data management + requirements. This means that you can configure + DB to operate entirely within memory, but still + retain some data durability guarantees or even + throw away all durability guarantees. +

+

+ Data durability guarantees describe how persistent + your data is. That is, once you have made a change + to the data stored in your database, how much of a + guarantee do you require that that modification + will persist (not be lost)? There are a great many + options here. For the absolute best durability guarantee, you + should fully transaction-protect your data and + allow your data to be written to disk upon each + transaction commit. Of course, this guarantee is + not available for disk-less systems. +

+

+ At the opposite end of the spectrum, you can throw + away all your data once your application is done + with it (for example, at application shutdown). + This is a good option if you are using DB only + as a kind of caching mechanism. In this case, you + obviously must either generate your data entirely + during runtime, or obtain it from some remote + location during application startup. +

+

+ There are also durability options that exist somewhere in + between these two extremes. For example, disk-less + systems are sometimes backed by some kind of flash + memory (e.g. compact flash cards). These + platforms may want to limit the number of writes + applied to the backing media because it is capable + of accepting only a limited number of writes before it must + be replaced. For this reason, you might want to + limit data writes to the flash media only during + specific moments during your application's + runtime; for example, only at application shutdown. +

+

+ The point here is to be aware that a great many + options are available to you when writing an + in-memory only application. That said, the focus of + this document is strictly disk-less systems; that + is, systems that provide no means by which + data can be written to persistent media. +

+
+
+
+
+
+

Keeping the Database in Memory

+
+
+
+
+

+ Normally DB databases are backed by the + filesystem. For in-memory applications, such as + is required on disk-less systems, you can cause your + database to only reside in-memory. That is, + their contents are stored entirely within DB's + cache. +

+

+ There are two requirements for keeping your + database(s) in-memory. + The first is to size your cache such that it is big + enough to hold all your data in-memory. If your + cache fills up, then your application will + encounter an unpredictable but almost certainly + fatal condition. +

+

+ For information on setting the cache size, see + Sizing the Cache. +

+

+ Beyond cache sizing, you also must tell DB not + to back your database with an on-disk file. You do + this by NOT providing a database file name + when you open the database. Note that the database + file name is different from the database name; you + can name your in-memory databases even if you + are not storing them in an on-disk file. +

+

+ For example: +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    const char *db_name = "in_mem_db1";
+    u_int32_t db_flags;  /* For open flags */
+    DB *dbp;             /* Database handle */
+
+...
+
+   /* Initialize the DB handle */
+    ret = db_create(&dbp, NULL, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating database handle: %s\n",
+                    db_strerror(ret));
+        goto err;
+    }
+
+    db_flags = DB_CREATE;       /* If it doesn't exist, create it */
+
+    /* 
+     * Open the database. Note that the file name is NULL. 
+     * This forces the database to be stored in the cache only.
+     * Also note that the database has a name, even though its
+     * file name is NULL.
+     */
+    ret = dbp->open(dbp,        /* Pointer to the database */
+                    NULL,       /* Txn pointer */
+                    NULL,       /* File name is not specified on purpose */
+                    db_name,    /* Logical db name. */
+                    DB_BTREE,   /* Database type (using btree) */
+                    db_flags,   /* Open flags */
+                    0);         /* File mode. Using defaults */
+    if (ret != 0) {
+        dbp->err(dbp, ret, "Database open failed");
+        goto err;
+    }
+
+err:
+    /* Close the database */
+    if (dbp != NULL) {
+        ret_c = dbp->close(dbp, 0);
+        if (ret_c != 0) {
+            fprintf(stderr, "%s database close failed.\n",
+                 db_strerror(ret_c));
+            ret = ret_c
+        }
+    } 
+
+
+
+
+
+

Keeping Environments in Memory

+
+
+
+
+

+ Like databases, DB environments are usually backed by the filesystem. In + fact, a big part of what environments do is identify the location on disk + where resources (such as log and database files) are kept. +

+

+ However, environments are also used for managing resources, such as + obtaining new transactions, so they are useful even when building an + in-memory application. Therefore, if you are going to use an environment for + your in-memory DB application, you must configure it such that it does + not want to use the filesystem. There are two things you need to do here. +

+

+ First, when you open your environment, do NOT identify a home directory. To + accomplish this, you must: +

+
+
    +
  • +

    + NOT provide a value for the db_home + parameter on the + DB_ENV->open() + method. +

    +
  • +
  • +

    + NOT have a DB_HOME environment variable set. +

    +
  • +
  • +

    + NOT call any of the methods that affect file naming + (DB_ENV->set_data_dir(), + DB_ENV->set_lg_dir(), or + DB_ENV->set_tmp_dir()). +

    +
  • +
+
+

+ Beyond this, you must also ensure that regions are + backed by heap memory + instead of by the filesystem or system shared memory. You do this when you + open your environment by specifying the DB_PRIVATE flag. + Note that the use of DB_PRIVATE means that other processes + cannot share the environment. Consequently, your in-memory only application + must be a single-process, although it can be multi-threaded. +

+

+ For example: +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    u_int32_t env_flags;  /* For open flags */
+    DB_ENV *envp;         /* Environment handle */
+
+...
+
+   /* Initialize the ENV handle */
+    ret = db_env_create(&envp, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating environment handle: %s\n",
+                    db_strerror(ret));
+        goto err;
+    }
+
+   
+    /* 
+     * Environment flags. These are for a non-threaded
+     * in-memory application.
+     */
+    env_flags =
+      DB_CREATE     |  /* Create the environment if it does not exist */ 
+      DB_INIT_LOCK  |  /* Initialize the locking subsystem */
+      DB_INIT_LOG   |  /* Initialize the logging subsystem */
+      DB_INIT_TXN   |  /* Initialize the transactional subsystem. This
+                        * also turns on logging. */
+      DB_INIT_MPOOL |  /* Initialize the memory pool (in-memory cache) */
+      DB_PRIVATE    |  /* Region files are not backed by the filesystem. 
+                        * Instead, they are backed by heap memory.  */
+
+   /* 
+    * Now open the environment. Notice that we do not provide a location 
+    * for the environment's home directory. This is required for an 
+    * in-memory only application.
+    */
+    ret = envp->open(envp, NULL, env_flags, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error opening environment: %s\n",
+            db_strerror(ret));
+        goto err;
+    } 
+
+err:
+    /* Close the environment */
+    if (envp != NULL) {
+        ret_c = envp->close(envp, 0);
+        if (ret_c != 0) {
+            fprintf(stderr, "environment close failed: %s\n",
+                 db_strerror(ret_c));
+            ret = ret_c
+        }
+    }
+
+
+
+
+
+

Sizing the Cache

+
+
+
+
+

+ One of the most important considerations for an + in-memory application is to ensure that your + database cache is large enough. In a normal + application that is not in-memory, the cache + provides a mechanism by which frequently-used + data can be accessed without resorting to disk I/O. + For an in-memory application, the cache is the only + location your data can exist so it is critical that + you make the cache large enough for your data set. +

+

+ You specify the size of your cache at application + startup. Obviously you should not specify a size + that is larger than available memory. Note that the + size you specify for your cache is actually a + maximum size; DB will only + use memory as required so if you specify a cache + size of 1 GB but your data set is only ever 10 MB + in size, then 10 MB is what DB will use. +

+

+ Note that if you specify a cache size less than + 500 MB, then the cache size is automatically + increased by 25% to account for internal overhead + purposes. +

+

+ There are two ways to specify a cache size, + depending on whether you are using a database + environment. +

+
+
+
+
+

Specifying a Cache Size using the + Database Handle

+
+
+
+
+

+ To select a cache size using the database + handle, use the + DB->set_cachesize() + method. Note that you cannot use this + method after the database has been opened. +

+

+ Also, if you are using a database environment, + it is an error to use this method. See + the next section for details on + selecting your cache size. +

+

+ The following code fragment creates a + database handle, sets the cache size to + 10 MB and then opens the database: +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    const char *db_name = "in_mem_db1";
+    u_int32_t db_flags;  /* For open flags */
+    DB *dbp;             /* Database handle */
+
+...
+
+   /* Initialize the DB handle */
+    ret = db_create(&dbp, NULL, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating database handle: %s\n",
+                    db_strerror(ret));
+        goto err;
+    }
+
+    /*************************************************************/
+    /*************************************************************/
+    /*************  Set the cache size here **********************/
+    /*************************************************************/
+    /*************************************************************/
+
+    ret = dbp->set_cachesize(dbp, 
+                             0,     /* 0 gigabytes */
+              10 * 1024 * 1024,     /* 10 megabytes */
+                            1);     /* Create 1 cache. All memory will 
+                                     * be allocated contiguously. */
+    if (ret != 0) {
+        dbp->err(dbp, ret, "Database open failed");
+        goto err;
+    }
+   
+
+    db_flags = DB_CREATE;       /* If it doesn't exist, create it */
+    ret = dbp->open(dbp,        /* Pointer to the database */
+                    NULL,       /* Txn pointer */
+                    NULL,       /* File name is not specified on purpose */
+                    db_name,    /* Logical db name */
+                    DB_BTREE,   /* Database type (using btree) */
+                    db_flags,   /* Open flags */
+                    0);         /* File mode. Using defaults */
+    if (ret != 0) {
+        dbp->err(dbp, ret, "Database open failed");
+        goto err;
+    }
+
+err:
+    /* Close the database */
+    if (dbp != NULL) {
+        ret_c = dbp->close(dbp, 0);
+        if (ret_c != 0) {
+            fprintf(stderr, "%s database close failed.\n",
+                 db_strerror(ret_c));
+            ret = ret_c
+        }
+    } 
+
+
+
+
+
+

Specifying a Cache Size using the + Environment Handle

+
+
+
+
+

+ To select a cache size using the + environment handle, use the + ENV->set_cachesize() + method. Note that you cannot use this + method after the environment has been opened. +

+

+ The following code fragment creates an + environment handle, sets the cache size to + 10 MB and then opens the environment: Once + opened, you can use the environment when + you open your database(s). This means all + your databases will use the same + cache. +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    u_int32_t env_flags;  /* For open flags */
+    DB_ENV *envp;         /* Environment handle */
+
+...
+
+   /* Initialize the ENV handle */
+    ret = db_env_create(&envp, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating environment handle: %s\n",
+                    db_strerror(ret));
+        goto err;
+    }
+
+    /*************************************************************/
+    /*************************************************************/
+    /*************  Set the cache size here **********************/
+    /*************************************************************/
+    /*************************************************************/
+
+    ret = 
+        envp->set_cachesize(envp, 
+                               0,    /* 0 gigabytes */
+                10 * 1024 * 1024,    /* 10 megabytes */
+                              1);    /* Create 1 cache. All memory will 
+                                      * be allocated contiguously. */
+    if (ret != 0) {
+        envp->err(envp, ret, "Environment open failed");
+        goto err;
+    }
+   
+    /* 
+     * Environment flags. These are for a non-threaded
+     * in-memory application.
+     */
+    env_flags =
+      DB_CREATE     |  /* Create the environment if it does not exist */ 
+      DB_INIT_LOCK  |  /* Initialize the locking subsystem */
+      DB_INIT_LOG   |  /* Initialize the logging subsystem */
+      DB_INIT_TXN   |  /* Initialize the transactional subsystem. This
+                        * also turns on logging. */
+      DB_INIT_MPOOL |  /* Initialize the memory pool (in-memory cache) */
+      DB_PRIVATE    |  /* Region files are not backed by the filesystem. 
+                        * Instead, they are backed by heap memory.  */
+
+   /* 
+    * Now open the environment. Notice that we do not provide a location 
+    * for the environment's home directory. This is required for an 
+    * in-memory only application.
+    */
+    ret = envp->open(envp, NULL, env_flags, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error opening environment: %s\n",
+            db_strerror(ret));
+        goto err;
+    } 
+
+err:
+    /* Close the environment */
+    if (envp != NULL) {
+        ret_c = envp->close(envp, 0);
+        if (ret_c != 0) {
+            fprintf(stderr, "environment close failed: %s\n",
+                 db_strerror(ret_c));
+            ret = ret_c
+        }
+    } 
+
+
+
+
+
+
+

Keeping Temporary Overflow Pages in Memory

+
+
+
+
+

+ Normally, when a database is opened, a temporary + file is opened on-disk to back the database. This + file is used if the database grows so large that it + fills the entire cache. At that time, database + pages that do not fit into the in-memory cache file + are written temporarily to this file. +

+

+ For disk-less systems, you should configure your + databases so that this temporary file is not + created. When you do this, any attempt to create + new database pages once the cache is full will + fail. +

+

+ You configure this option on a per-database handle + basis. That means you must configure this for every + in-memory database that your application uses. +

+

+ To set this option, obtain the + DB_MPOOLFILE field from you + DB and then configure + DB_MPOOL_NOFILE using the + DB_MPOOLFILE->set_flags() + method. +

+

+ For example: +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    u_int32_t env_flags;  /* For open flags */
+    DB_ENV *envp;         /* Environment handle */
+
+...
+
+    /* 
+     * Configure the cache file. This can be done
+     * at any point in the application's life once the
+     * DB handle has been created.
+     */
+    mpf = dbp->get_mpf(dbp);
+    ret = mpf->set_flags(mpf, DB_MPOOL_NOFILE, 1);
+
+    if (ret != 0) {
+        fprintf(stderr, 
+          "Attempt failed to configure for no backing of temp files: %s\n",
+                    db_strerror(ret));
+        goto err;
+    } 
+
+
+
+
+
+

Keeping Logs in Memory

+
+
+
+
+

+ DB logs describe the write activity that has occurred in + your application. For a purely in-memory application, logs + should be used only if you wish to transaction-protect your + database writes as logs are required by the DB + transactional subsystem. +

+

+ Note that transactions provide a number of guarantees. One + of these is not interesting to a purely in-memory + application (data durability). However, other transaction + guarantees such as isolation and atomicity might be of + interest to your application. +

+

+ If this is the case for your application, then you must + configure your logs to be kept entirely in-memory. You + do this by setting a configuration option that prevents + DB from writing log data to disk. + Do this by setting the DB_LOG_INMEMORY flag using the + DB_ENV->set_flags() method. +

+

+ In addition, you must configure your log buffer size so that it is capable + of holding all log information that can accumulate during your longest + running transaction. That is, make sure the in-memory log buffer is large + enough that no transaction will ever span the entire buffer. Also, avoid a + state where the in-memory buffer is full and no space can be freed because a + transaction that started the first log "file" is still active. +

+

+ How much log buffer space is required is a function of the number of + transactions you have running concurrently, how long they last, and how much + write activity occurs within them. When in-memory logging is configured, the + default log buffer space is 1 MB. +

+

+ You set your log buffer space using the + DB_ENV->set_lg_bsize(). +

+

+ For example, the following code fragment configure in-memory log usage, and + it configures the log buffer size to 10 MB: +

+
#include "db.h"
+
+...
+
+    int ret, ret_c;
+    u_int32_t env_flags;  /* For open flags */
+    DB_ENV *envp;         /* Environment handle */
+
+...
+
+   /* Initialize the ENV handle */
+    ret = db_env_create(&envp, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating environment handle: %s\n",
+                    db_strerror(ret));
+        goto err;
+    }
+
+    /* 
+     * Environment flags. These are for a non-threaded
+     * in-memory application.
+     */
+    env_flags =
+      DB_CREATE     |  /* Create the environment if it does not exist */ 
+      DB_INIT_LOCK  |  /* Initialize the locking subsystem */
+      DB_INIT_LOG   |  /* Initialize the logging subsystem */
+      DB_INIT_TXN   |  /* Initialize the transactional subsystem. This
+                        * also turns on logging. */
+      DB_INIT_MPOOL |  /* Initialize the memory pool (in-memory cache) */
+      DB_PRIVATE    |  /* Region files are not backed by the filesystem. 
+                        * Instead, they are backed by heap memory.  */
+
+       
+    /* Specify in-memory logging */
+    ret = envp->set_flags(envp, DB_LOG_INMEMORY, 1);
+    if (ret != 0) {
+        fprintf(stderr, "Error setting log subsystem to in-memory: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+    /* 
+     * Specify the size of the in-memory log buffer. 
+     */
+    ret = envp->set_lg_bsize(envp, 10 * 1024 * 1024);
+    if (ret != 0) {
+        fprintf(stderr, "Error increasing the log buffer size: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+   /* 
+    * Now open the environment. Notice that we do not provide a location 
+    * for the environment's home directory. This is required for an 
+    * in-memory only application.
+    */
+    ret = envp->open(envp, NULL, env_flags, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error opening environment: %s\n",
+            db_strerror(ret));
+        goto err;
+    } 
+
+err:
+    /* Close the environment */
+    if (envp != NULL) {
+        ret_c = envp->close(envp, 0);
+        if (ret_c != 0) {
+            fprintf(stderr, "environment close failed: %s\n",
+                 db_strerror(ret_c));
+            ret = ret_c
+        }
+    } 
+
+
+
+
+
+

Example In-Memory Application

+
+
+
+
+

+ The following brief example illustrates how to open + an application that is entirely in-memory. The + application opens an environment and a single + database, and does this in a way that the database + is transaction-protected. +

+

+ Transactions can be + desirable for an in-memory application even though + you discard your durability guarantees, because of + the other things that transactions offer such as + atomicity and isolation. +

+

+ Notice that the example does nothing other than + open and close the environment and database. DB + database reads and writes work identically between + in-memory-only and durable applications (that is, + applications that write database application to + durable storage). Consequently, there is no point + in illustrating those actions here. +

+
/* We assume an ANSI-compatible compiler */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <db.h>
+
+
+int
+main(void)
+{
+    /* Initialize our handles */
+    DB *dbp = NULL;
+    DB_ENV *envp = NULL;
+    DB_MPOOLFILE *mpf = NULL;
+
+    int ret, ret_t; 
+    const char *db_name = "in_mem_db1";
+    u_int32_t open_flags;
+
+    /* Create the environment */
+    ret = db_env_create(&envp, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error creating environment handle: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+    open_flags =
+      DB_CREATE     |  /* Create the environment if it does not exist */
+      DB_INIT_LOCK  |  /* Initialize the locking subsystem */
+      DB_INIT_LOG   |  /* Initialize the logging subsystem */
+      DB_INIT_MPOOL |  /* Initialize the memory pool (in-memory cache) */
+      DB_INIT_TXN   |
+      DB_PRIVATE;      /* Region files are not backed by the filesystem. 
+                        * Instead, they are backed by heap memory.  */
+
+    /* Specify in-memory logging */
+    ret = envp->set_flags(envp, DB_LOG_INMEMORY, 1);
+    if (ret != 0) {
+        fprintf(stderr, "Error setting log subsystem to in-memory: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+    /* 
+     * Specify the size of the in-memory log buffer. 
+     */
+    ret = envp->set_lg_bsize(envp, 10 * 1024 * 1024);
+    if (ret != 0) {
+        fprintf(stderr, "Error increasing the log buffer size: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+    /* 
+     * Specify the size of the in-memory cache. 
+     */
+    ret = envp->set_cachesize(envp, 0, 10 * 1024 * 1024, 1);
+    if (ret != 0) {
+        fprintf(stderr, "Error increasing the cache size: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+    /* 
+     * Now actually open the environment. Notice that the environment home
+     * directory is NULL. This is required for an in-memory only
+     * application. 
+     */
+    ret = envp->open(envp, NULL, open_flags, 0);
+    if (ret != 0) {
+        fprintf(stderr, "Error opening environment: %s\n",
+            db_strerror(ret));
+        goto err;
+    }
+
+
+   /* Initialize the DB handle */
+    ret = db_create(&dbp, envp, 0);
+    if (ret != 0) {
+         envp->err(envp, ret,
+                "Attempt to create db handle failed.");
+        goto err;
+    }
+
+
+    /* 
+     * Set the database open flags. Autocommit is used because we are 
+     * transactional. 
+     */
+    open_flags = DB_CREATE | DB_AUTO_COMMIT;
+    ret = dbp->open(dbp,         /* Pointer to the database */
+             NULL,        /* Txn pointer */
+             NULL,        /* File name -- Must be NULL for inmemory! */
+             db_name,     /* Logical db name */
+             DB_BTREE,    /* Database type (using btree) */
+             open_flags,  /* Open flags */
+             0);          /* File mode. Using defaults */
+
+    if (ret != 0) {
+         envp->err(envp, ret,
+                "Attempt to open db failed.");
+        goto err;
+    }
+
+    /* Configure the cache file */
+    mpf = dbp->get_mpf(dbp);
+    ret = mpf->set_flags(mpf, DB_MPOOL_NOFILE, 1);
+
+    if (ret != 0) {
+         envp->err(envp, ret,
+            "Attempt failed to configure for no backing of temp files.");
+        goto err;
+    }
+
+err:
+    /* Close our database handle, if it was opened. */
+    if (dbp != NULL) {
+        ret_t = dbp->close(dbp, 0);
+        if (ret_t != 0) {
+            fprintf(stderr, "%s database close failed.\n",
+                db_strerror(ret_t));
+            ret = ret_t;
+        }
+    }
+
+    /* Close our environment, if it was opened. */
+    if (envp != NULL) {
+        ret_t = envp->close(envp, 0);
+        if (ret_t != 0) {
+            fprintf(stderr, "environment close failed: %s\n",
+                db_strerror(ret_t));
+                ret = ret_t;
+        }
+    }
+
+    /* Final status message and return. */
+    printf("I'm all done.\n");
+    return (ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE);
+} 
+
+
+ + + diff --git a/db/docs/collections/tutorial/BasicProgram.html b/db/docs/collections/tutorial/BasicProgram.html index b1e276e8b..def1a5bd6 100644 --- a/db/docs/collections/tutorial/BasicProgram.html +++ b/db/docs/collections/tutorial/BasicProgram.html @@ -1,9 +1,9 @@ - + - - Chapter 2.  + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <title>Chapter 2.  The Basic Program @@ -17,14 +17,14 @@ @@ -260,18 +260,18 @@ databases_close(STOCK_DBS *my_stock) if (my_stock->inventory_dbp != NULL) { ret = my_stock->inventory_dbp->close(my_stock->inventory_dbp, 0); if (ret != 0) - fprintf(stderr, "Inventory database close failed: %s\n", + fprintf(stderr, "Inventory database close failed: %s\n", db_strerror(ret)); } if (my_stock->vendor_dbp != NULL) { ret = my_stock->vendor_dbp->close(my_stock->vendor_dbp, 0); if (ret != 0) - fprintf(stderr, "Vendor database close failed: %s\n", + fprintf(stderr, "Vendor database close failed: %s\n", db_strerror(ret)); } - printf("databases closed.\n"); + printf("databases closed.\n"); return (0); } @@ -280,18 +280,18 @@ databases_close(STOCK_DBS *my_stock)
- + - + - + - +
Prev Prev  Up  Next Next
Managing Databases in Environments Managing Databases in Environments  Home  Chapter 3. Database Records Chapter 3. Database Records
diff --git a/db/docs/gsg/C/CoreEnvUsage.html b/db/docs/gsg/C/CoreEnvUsage.html index 07a411400..8979f74f8 100644 --- a/db/docs/gsg/C/CoreEnvUsage.html +++ b/db/docs/gsg/C/CoreEnvUsage.html @@ -1,13 +1,13 @@ - + - + Managing Databases in Environments - + @@ -18,9 +18,9 @@ Managing Databases in Environments - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -73,7 +73,7 @@ int ret; /* function return value */ */ ret = db_env_create(&myEnv, 0); if (ret != 0) { - fprintf(stderr, "Error creating env handle: %s\n", db_strerror(ret)); + fprintf(stderr, "Error creating env handle: %s\n", db_strerror(ret)); return -1; } @@ -83,11 +83,11 @@ env_flags = DB_CREATE | /* If the environment does not exist, DB_INIT_MPOOL; /* Initialize the in-memory cache. */ ret = myEnv->open(myEnv, /* DB_ENV ptr */ - "/export1/testEnv", /* env home directory */ + "/export1/testEnv", /* env home directory */ env_flags, /* Open flags */ 0); /* File mode (default) */ if (ret != 0) { - fprintf(stderr, "Environment open failed: %s", db_strerror(ret)); + fprintf(stderr, "Environment open failed: %s", db_strerror(ret)); return -1; }

@@ -112,7 +112,7 @@ db_flags = DB_CREATE; /* If the database does not exist, /* open the database */ ret = dbp->open(dbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_db.db", /* On-disk file that holds the database. */ + "my_db.db", /* On-disk file that holds the database. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ db_flags, /* Open flags */ @@ -141,18 +141,18 @@ if (myEnv != NULL) {


- + - + - + - +
Prev Prev  Up  Next Next
Error Reporting Functions Error Reporting Functions  Home  Database Example Database Example
diff --git a/db/docs/gsg/C/Cursors.html b/db/docs/gsg/C/Cursors.html index 0f8b696e9..8d8e35ae2 100644 --- a/db/docs/gsg/C/Cursors.html +++ b/db/docs/gsg/C/Cursors.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Using Cursors + + Chapter 4. Using Cursors @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/C/DbUsage.html b/db/docs/gsg/C/DbUsage.html index a1d35b612..6bcfd44fa 100644 --- a/db/docs/gsg/C/DbUsage.html +++ b/db/docs/gsg/C/DbUsage.html @@ -1,15 +1,15 @@ - + - + Database Usage Example - + - + diff --git a/db/docs/gsg/C/DeleteEntryWCursor.html b/db/docs/gsg/C/DeleteEntryWCursor.html index c3e8a68cb..229a05fae 100644 --- a/db/docs/gsg/C/DeleteEntryWCursor.html +++ b/db/docs/gsg/C/DeleteEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Deleting Records Using Cursors - + @@ -18,9 +18,9 @@ Deleting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -42,7 +42,7 @@ - DBC->c_del(). + DBC->del(). @@ -57,31 +57,31 @@ DB *dbp; DBC *cursorp; DBT key, data; -char *key1str = "My first string"; +char *key1str = "My first string"; int ret; +/* Database open omitted */ + +/* Initialize our DBTs. */ +memset(&key, 0, sizeof(DBT)); +memset(&data, 0, sizeof(DBT)); + /* Set up our DBTs */ key.data = key1str; key.size = strlen(key1str) + 1; -/* Database open omitted */ - /* Get the cursor */ dbp->cursor(dbp, NULL, &cursorp, 0); -/* Initialize our DBTs. */ -memset(&key, 0, sizeof(DBT)); -memset(&data, 0, sizeof(DBT)); - /* Iterate over the database, deleting each record in turn. */ -while ((ret = cursorp->c_get(cursorp, &key, +while ((ret = cursorp->get(cursorp, &key, &data, DB_SET)) == 0) { - cursorp->c_del(cursorp, 0); + cursorp->del(cursorp, 0); } /* Cursors must be closed */ if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); if (dbp != NULL) dbp->close(dbp, 0); @@ -90,18 +90,18 @@ if (dbp != NULL)
- + - + - + - +
Prev Prev  Up  Next Next
Putting Records Using Cursors Putting Records Using Cursors  Home  Replacing Records Using Cursors Replacing Records Using Cursors
diff --git a/db/docs/gsg/C/Positioning.html b/db/docs/gsg/C/Positioning.html index f0d88fb44..6e1441fdb 100644 --- a/db/docs/gsg/C/Positioning.html +++ b/db/docs/gsg/C/Positioning.html @@ -1,14 +1,14 @@ - + - + Getting Records Using the Cursor - - + + @@ -18,9 +18,9 @@ Getting Records Using the Cursor - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -38,7 +38,7 @@ To iterate over database records, from the first record to the last, simply open the cursor and then use the - DBC->c_get() + DBC->get() method. Note that you need to supply the @@ -66,7 +66,7 @@ memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); /* Iterate over the database, retrieving each record in turn. */ -while ((ret = cursorp->c_get(cursorp, &key, &data, DB_NEXT)) == 0) { +while ((ret = cursorp->get(cursorp, &key, &data, DB_NEXT)) == 0) { /* Do interesting things with the DBTs here. */ } if (ret != DB_NOTFOUND) { @@ -75,7 +75,7 @@ if (ret != DB_NOTFOUND) { /* Cursors must be closed */ if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); if (my_database != NULL) my_database->close(my_database, 0); @@ -104,7 +104,7 @@ memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); /* Iterate over the database, retrieving each record in turn. */ -while ((ret = cursorp->c_get(cursorp, &key, +while ((ret = cursorp->get(cursorp, &key, &data, DB_PREV)) == 0) { /* Do interesting things with the DBTs here. */ } @@ -114,7 +114,7 @@ if (ret != DB_NOTFOUND) { // Cursors must be closed if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); if (my_database != NULL) my_database->close(my_database, 0); @@ -146,7 +146,7 @@ if (my_database != NULL)

To use a cursor to search for a record, use - DBT->c_get(). + DBT->get(). When you use this method, you can provide the following flags:

@@ -190,7 +190,7 @@ if (my_database != NULL)

Identical to DB_SET - Cursor.getSearchKey() + unless you are using the BTree access. In this case, the cursor moves @@ -318,8 +318,8 @@ DBC *cursorp; DBT key, data; DB *dbp; int ret; -char *search_data = "Fa"; -char *search_key = "Alaska"; +char *search_data = "Fa"; +char *search_key = "Alaska"; /* database open omitted for clarity */ @@ -337,7 +337,7 @@ data.size = strlen(search_data) + 1; * key matches the search key and whose data begins with the * search data. */ -ret = cursorp->c_get(cursorp, &key, &data, DB_GET_BOTH_RANGE); +ret = cursorp->get(cursorp, &key, &data, DB_GET_BOTH_RANGE); if (!ret) { /* Do something with the data */ } else { @@ -346,7 +346,7 @@ if (!ret) { /* Close the cursor */ if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); /* Close the database */ if (dbp != NULL) @@ -384,7 +384,7 @@ if (dbp != NULL) The following - DBC->c_get() flags + DBC->get() flags are interesting when working with databases that support duplicate records:

@@ -429,7 +429,7 @@ if (dbp != NULL) records. If you call - c_get() + DBC->get() with DB_PREV_NODUP, @@ -448,7 +448,7 @@ Arizona/Florence and you then call - c_get() + DBC->get() with DB_PREV_NODUP, @@ -456,7 +456,7 @@ Arizona/Florence you call - c_get() + DBC->get() with DB_NEXT_NODUP, @@ -486,7 +486,7 @@ Arizona/Florence you call - DBC->c_get() + DBC->get() with DB_NEXT_DUP, @@ -520,7 +520,7 @@ DB *dbp; DBC *cursorp; DBT key, data; int ret; -char *search_key = "Al"; +char *search_key = "Al"; /* database open omitted for clarity */ @@ -535,15 +535,15 @@ key.size = strlen(search_key) + 1; * Position the cursor to the first record in the database whose * key and data begin with the correct strings. */ -ret = cursorp->c_get(cursorp, &key, &data, DB_SET); +ret = cursorp->get(cursorp, &key, &data, DB_SET); while (ret != DB_NOTFOUND) { - printf("key: %s, data: %s\n", (char *)key.data, (char *)data.data); - ret = cursorp->c_get(cursorp, &key, &data, DB_NEXT_DUP); + printf("key: %s, data: %s\n", (char *)key.data, (char *)data.data); + ret = cursorp->get(cursorp, &key, &data, DB_NEXT_DUP); } /* Close the cursor */ if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); /* Close the database */ if (dbp != NULL) @@ -554,18 +554,18 @@ if (dbp != NULL)
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 4. Using Cursors Chapter 4. Using Cursors  Home  Putting Records Using Cursors Putting Records Using Cursors
diff --git a/db/docs/gsg/C/PutEntryWCursor.html b/db/docs/gsg/C/PutEntryWCursor.html index c3c12e812..3a5da9c96 100644 --- a/db/docs/gsg/C/PutEntryWCursor.html +++ b/db/docs/gsg/C/PutEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Putting Records Using Cursors - + @@ -18,9 +18,9 @@ Putting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -46,7 +46,7 @@

You use - DBC->c_put() + DBC->put() to put (write) records to the database. You can use the following flags @@ -140,11 +140,11 @@ DB *dbp; DBC *cursorp; DBT data1, data2, data3; DBT key1, key2; -char *key1str = "My first string"; -char *data1str = "My first data"; -char *key2str = "A second string"; -char *data2str = "My second data"; -char *data3str = "My third data"; +char *key1str = "My first string"; +char *data1str = "My first data"; +char *key2str = "A second string"; +char *data2str = "My second data"; +char *data3str = "My third data"; int ret; /* Set up our DBTs */ @@ -167,31 +167,31 @@ dbp->cursor(dbp, NULL, &cursorp, 0); /* * Assuming an empty database, this first put places - * "My first string"/"My first data" in the first + * "My first string"/"My first data" in the first * position in the database */ -ret = cursorp->c_put(cursorp, &key1, +ret = cursorp->put(cursorp, &key1, &data1, DB_KEYFIRST); /* - * This put places "A second string"/"My second data" in the + * This put places "A second string"/"My second data" in the * the database according to its key sorts against the key * used for the currently existing database record. Most likely * this record would appear first in the database. */ -ret = cursorp->c_put(cursorp, &key2, +ret = cursorp->put(cursorp, &key2, &data2, DB_KEYFIRST); /* Added according to sort order */ /* * If duplicates are not allowed, the currently existing record that - * uses "key2" is overwritten with the data provided on this put. - * That is, the record "A second string"/"My second data" becomes - * "A second string"/"My third data" + * uses "key2" is overwritten with the data provided on this put. + * That is, the record "A second string"/"My second data" becomes + * "A second string"/"My third data" * - * If duplicates are allowed, then "My third data" is placed in the - * duplicates list according to how it sorts against "My second data". + * If duplicates are allowed, then "My third data" is placed in the + * duplicates list according to how it sorts against "My second data". */ -ret = cursorp->c_put(cursorp, &key2, +ret = cursorp->put(cursorp, &key2, &data3, DB_KEYFIRST); /* If duplicates are not allowed, record * is overwritten with new data. Otherwise, * the record is added to the beginning of @@ -202,18 +202,18 @@ ret = cursorp->c_put(cursorp, &key2,


- + - + - + - +
Prev Prev  Up  Next Next
Getting Records Using the Cursor Getting Records Using the Cursor  Home  Deleting Records Using Cursors Deleting Records Using Cursors
diff --git a/db/docs/gsg/C/ReplacingEntryWCursor.html b/db/docs/gsg/C/ReplacingEntryWCursor.html index 52a1c2984..44d560304 100644 --- a/db/docs/gsg/C/ReplacingEntryWCursor.html +++ b/db/docs/gsg/C/ReplacingEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Replacing Records Using Cursors - + @@ -18,9 +18,9 @@ Replacing Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -41,7 +41,7 @@ - DBC->c_put() + DBC->put() with the DB_CURRENT flag. @@ -56,14 +56,14 @@ DB *dbp; DBC *cursorp; DBT key, data; -char *key1str = "My first string"; -char *replacement_data = "replace me"; +char *key1str = "My first string"; +char *replacement_data = "replace me"; int ret; /* Initialize our DBTs. */ memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); - + /* Set up our DBTs */ key.data = key1str; key.size = strlen(key1str) + 1; @@ -74,16 +74,16 @@ key.size = strlen(key1str) + 1; dbp->cursor(dbp, NULL, &cursorp, 0); /* Position the cursor */ -ret = cursorp->c_get(cursorp, &key, &data, DB_SET); +ret = cursorp->get(cursorp, &key, &data, DB_SET); if (ret == 0) { data.data = replacement_data; data.size = strlen(replacement_data) + 1; - cursorp->c_put(cursorp, &key, &data, DB_CURRENT); + cursorp->put(cursorp, &key, &data, DB_CURRENT); } /* Cursors must be closed */ if (cursorp != NULL) - cursorp->c_close(cursorp); + cursorp->close(cursorp); if (dbp != NULL) dbp->close(dbp, 0); @@ -118,18 +118,18 @@ if (dbp != NULL)
- + - + - + - +
Prev Prev  Up  Next Next
Deleting Records Using Cursors Deleting Records Using Cursors  Home  Cursor Example Cursor Example
diff --git a/db/docs/gsg/C/accessmethods.html b/db/docs/gsg/C/accessmethods.html index dcbd74844..cbcc86fcb 100644 --- a/db/docs/gsg/C/accessmethods.html +++ b/db/docs/gsg/C/accessmethods.html @@ -1,13 +1,13 @@ - + - + Access Methods - + @@ -18,9 +18,9 @@ Access Methods - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -262,18 +262,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Berkeley DB Concepts Berkeley DB Concepts  Home  Database Limits and Portability Database Limits and Portability
diff --git a/db/docs/gsg/C/btree.html b/db/docs/gsg/C/btree.html index 27de59365..6b941340e 100644 --- a/db/docs/gsg/C/btree.html +++ b/db/docs/gsg/C/btree.html @@ -1,13 +1,13 @@ - + - + BTree Configuration - + @@ -17,9 +17,9 @@ BTree Configuration - Prev  - Chapter 6. Database Configuration -   + Prev  + Chapter 6. Database Configuration +  
@@ -179,7 +179,7 @@ If a cursor is used to put the duplicate record to the database, then the new record is placed in the duplicate set according to the flags that are provided on the - DBC->c_put() + DBC->put() method. The relevant flags are:

@@ -194,7 +194,7 @@ The data provided on the call to - DBC->c_put() + DBC->put() is placed into the database @@ -204,7 +204,7 @@ to - DBC->c_put() + DBC->put() @@ -242,7 +242,7 @@ If the key provided on the call to - DBC->c_put() + DBC->put() already exists in the @@ -329,15 +329,15 @@ DB *dbp; FILE *error_file_pointer; int ret; -char *program_name = "my_prog"; -char *file_name = "mydb.db"; +char *program_name = "my_prog"; +char *file_name = "mydb.db"; /* Variable assignments omitted for brevity */ /* Initialize the DB handle */ ret = db_create(&dbp, NULL, 0); if (ret != 0) { - fprintf(error_file_pointer, "%s: %s\n", program_name, + fprintf(error_file_pointer, "%s: %s\n", program_name, db_strerror(ret)); return(ret); } @@ -351,7 +351,7 @@ dbp->set_errpfx(dbp, program_name); */ ret = dbp->set_flags(dbp, DB_DUPSORT); if (ret != 0) { - dbp->err(dbp, ret, "Attempt to set DUPSORT flag failed."); + dbp->err(dbp, ret, "Attempt to set DUPSORT flag failed."); dbp->close(dbp, 0); return(ret); } @@ -365,7 +365,7 @@ ret = dbp->open(dbp, /* Pointer to the database */ DB_CREATE, /* Open flags */ 0); /* File mode. Using defaults */ if (ret != 0) { - dbp->err(dbp, ret, "Database '%s' open failed.", file_name); + dbp->err(dbp, ret, "Database '%s' open failed.", file_name); dbp->close(dbp, 0); return(ret); } @@ -537,7 +537,7 @@ int ret; /* Create a database */ ret = db_create(&dbp, NULL, 0); if (ret != 0) { - fprintf(stderr, "%s: %s\n", "my_program", + fprintf(stderr, "%s: %s\n", "my_program", db_strerror(ret)); return(-1); } @@ -553,18 +553,18 @@ dbp->set_bt_compare(dbp, compare_int);
- + - + - + - +
Prev Prev  Up  Â 
Selecting the Cache Size Selecting the Cache Size  Home  Â 
diff --git a/db/docs/gsg/C/cachesize.html b/db/docs/gsg/C/cachesize.html index 21faf2439..2276a5971 100644 --- a/db/docs/gsg/C/cachesize.html +++ b/db/docs/gsg/C/cachesize.html @@ -1,14 +1,14 @@ - + - + Selecting the Cache Size - - + + @@ -18,9 +18,9 @@ Selecting the Cache Size - Prev  - Chapter 6. Database Configuration -  Next + Prev  + Chapter 6. Database Configuration +  Next
@@ -56,14 +56,14 @@ available memory and performance considerations.

- Selecting a cache size is something of an art, but fortunately it is - selected at database (or environment) open time, so it can be easily - tuned to your application's data requirements as they change over time. - The best way to determine how large your cache needs to be is to put - your application into a production environment and watch to see how much - disk I/O is occurring. If your application is going to disk quite a lot - to retrieve database records, then you should increase the size of your - cache (provided that you have enough memory to do so). + Selecting a cache size is something of an art, but fortunately you + can change it any time, so it can be easily tuned to your + application's changing data requirements. The best way to + determine how large your cache needs to be is to put your + application into a production environment and watch to see how much + disk I/O is occurring. If your application is going to disk quite a + lot to retrieve database records, then you should increase the size + of your cache (provided that you have enough memory to do so).

You can use the db_stat command line utility with the @@ -79,18 +79,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Chapter 6. Database Configuration Chapter 6. Database Configuration  Home  BTree Configuration BTree Configuration
diff --git a/db/docs/gsg/C/concepts.html b/db/docs/gsg/C/concepts.html index 161e6a25b..53cababbe 100644 --- a/db/docs/gsg/C/concepts.html +++ b/db/docs/gsg/C/concepts.html @@ -1,14 +1,14 @@ - + - + Berkeley DB Concepts - - + + @@ -18,9 +18,9 @@ Berkeley DB Concepts - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -149,18 +149,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction to Berkeley DB  Chapter 1. Introduction to Berkeley DB   Home  Access Methods Access Methods
diff --git a/db/docs/gsg/C/coredbclose.html b/db/docs/gsg/C/coredbclose.html index 55f99ffb3..02e294e82 100644 --- a/db/docs/gsg/C/coredbclose.html +++ b/db/docs/gsg/C/coredbclose.html @@ -1,14 +1,14 @@ - + - + Closing Databases - - + + @@ -18,9 +18,9 @@ Closing Databases - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -87,18 +87,18 @@ if (dbp != NULL)
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 2. Databases Chapter 2. Databases  Home  Database Open Flags Database Open Flags
diff --git a/db/docs/gsg/C/coreindexusage.html b/db/docs/gsg/C/coreindexusage.html index fd59043e2..91680d243 100644 --- a/db/docs/gsg/C/coreindexusage.html +++ b/db/docs/gsg/C/coreindexusage.html @@ -1,15 +1,15 @@ - + - + Secondary Database Example - + - + diff --git a/db/docs/gsg/C/cstructs.html b/db/docs/gsg/C/cstructs.html index 14d06a246..bdcdee964 100644 --- a/db/docs/gsg/C/cstructs.html +++ b/db/docs/gsg/C/cstructs.html @@ -1,13 +1,13 @@ - + - + Using C Structures with DB - + @@ -18,9 +18,9 @@ Using C Structures with DB - Prev  - Chapter 3. Database Records -  Next + Prev  + Chapter 3. Database Records +  Next
@@ -62,8 +62,8 @@ typedef struct my_struct { DBT key, data; DB *my_database; MY_STRUCT user; -char *fname = "David"; -char *sname = "Rider"; +char *fname = "David"; +char *sname = "Rider"; /* Database open omitted for clarity */ @@ -119,8 +119,8 @@ data.flags = DB_DBT_USERMEM; my_database->get(my_database, NULL, &key, &data, 0); -printf("Familiar name: %s\n", user.familiar_name); -printf("Surname: %s\n", user.surname); +printf("Familiar name: %s\n", user.familiar_name); +printf("Surname: %s\n", user.surname);

Be aware that while this is the easiest way to manage structures stored in DB databases, this approach does suffer from causing your @@ -204,11 +204,11 @@ DBT key, data; DB *my_database; MY_STRUCT user; int buffsize, bufflen; -char fname[ ] = "Pete"; +char fname[ ] = "Pete"; char sname[10]; char *databuff; -strncpy(sname, "Oar", strlen("Oar")+1); +strncpy(sname, "Oar", strlen("Oar")+1); /* Database open omitted for clarity */ @@ -305,18 +305,18 @@ user.surname = buffer + sizeof(int) + strlen(user.familiar_name) + 1;


- + - + - + - +
Prev Prev  Up  Next Next
Reading and Writing Database Records Reading and Writing Database Records  Home  Database Usage Example Database Usage Example
diff --git a/db/docs/gsg/C/databaseLimits.html b/db/docs/gsg/C/databaseLimits.html index 15c23a81c..abf321bdc 100644 --- a/db/docs/gsg/C/databaseLimits.html +++ b/db/docs/gsg/C/databaseLimits.html @@ -1,13 +1,13 @@ - + - + Database Limits and Portability - + @@ -18,9 +18,9 @@ Database Limits and Portability - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -50,7 +50,7 @@

Also, DB's databases and data structures are designed for concurrent - access — they are thread-safe, and they share well across multiple + access — they are thread-safe, and they share well across multiple processes. That said, in order to allow multiple processes to share databases and the cache, DB makes use of mechanisms that do not work well on network-shared drives (NFS or Windows networks shares, for @@ -62,18 +62,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Access Methods Access Methods  Home  Environments Environments
diff --git a/db/docs/gsg/C/dbErrorReporting.html b/db/docs/gsg/C/dbErrorReporting.html index dc6646baa..b9ee6a3e0 100644 --- a/db/docs/gsg/C/dbErrorReporting.html +++ b/db/docs/gsg/C/dbErrorReporting.html @@ -1,13 +1,13 @@ - + - + Error Reporting Functions - + @@ -18,9 +18,9 @@ Error Reporting Functions - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -153,28 +153,28 @@ int ret; */ ret = db_create(&dbp, NULL, 0); if (ret != 0) { - fprintf(stderr, "%s: %s\n", "my_program", + fprintf(stderr, "%s: %s\n", "my_program", db_strerror(ret)); return(ret); } /* Set up error handling for this database */ dbp->set_errcall(dbp, my_error_handler); -dbp->set_errpfx(dbp, "my_example_program"); +dbp->set_errpfx(dbp, "my_example_program");

And to issue an error message:

ret = dbp->open(dbp, 
                 NULL,
-                "mydb.db", 
+                "mydb.db", 
                 NULL,
                 DB_BTREE,
                 DB_CREATE,
                 0);
 if (ret != 0) {
     dbp->err(dbp, ret,
-      "Database open failed: %s", "mydb.db");
+      "Database open failed: %s", "mydb.db");
     return(ret);
 }
@@ -185,18 +185,18 @@ if (ret != 0) {
- + - + - + - +
Prev Prev  Up  Next Next
Administrative Methods Administrative Methods  Home  Managing Databases in Environments Managing Databases in Environments
diff --git a/db/docs/gsg/C/dbconfig.html b/db/docs/gsg/C/dbconfig.html index 47eefc20e..31140d500 100644 --- a/db/docs/gsg/C/dbconfig.html +++ b/db/docs/gsg/C/dbconfig.html @@ -1,9 +1,9 @@ - + - - Chapter 6. Database Configuration + + Chapter 6. Database Configuration @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/C/gettingit.html b/db/docs/gsg/C/gettingit.html index c84496093..a04c82710 100644 --- a/db/docs/gsg/C/gettingit.html +++ b/db/docs/gsg/C/gettingit.html @@ -1,15 +1,15 @@ - + - + Getting and Using DB - + - + diff --git a/db/docs/gsg/C/index.html b/db/docs/gsg/C/index.html index c77c5f886..dd010d38d 100644 --- a/db/docs/gsg/C/index.html +++ b/db/docs/gsg/C/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB @@ -16,9 +16,9 @@ Getting Started with Berkeley DB -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Berkeley DB

+

Getting Started with Berkeley DB

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

-

9/20/2006

+

6/30/2007

@@ -337,6 +337,15 @@ +
+
+
+ + Working with Multiple Keys + +
+
+
Reading Secondary Databases @@ -474,14 +483,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg/C/indexes.html b/db/docs/gsg/C/indexes.html index 1c21ea2cf..26ebc1e79 100644 --- a/db/docs/gsg/C/indexes.html +++ b/db/docs/gsg/C/indexes.html @@ -1,9 +1,9 @@ - + - - Chapter 5. Secondary Databases + + Chapter 5. Secondary Databases @@ -15,12 +15,12 @@
+
+
+
+ + Working with Multiple Keys + +
+
+
Reading Secondary Databases @@ -118,7 +127,7 @@ people such as names, addresses, phone numbers, and so forth. While your application may frequently want to query a person by user ID (that is, by the information stored in the key), it may also on occasion - want to location people by, say, their name. + want to locate people by, say, their name.

Rather than iterate through all of the records in your database, examining @@ -284,7 +293,7 @@ flags = DB_CREATE; /* If the database does not exist, /* open the primary database */ ret = dbp->open(dbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_db.db", /* On-disk file that holds the database. */ + "my_db.db", /* On-disk file that holds the database. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ flags, /* Open flags */ @@ -296,7 +305,7 @@ if (ret != 0) { /* open the secondary database */ ret = sdbp->open(sdbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_secdb.db", /* On-disk file that holds the database. */ + "my_secdb.db", /* On-disk file that holds the database. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ flags, /* Open flags */ @@ -329,18 +338,18 @@ if (dbp != NULL)


- + - + - + - diff --git a/db/docs/gsg/C/introduction.html b/db/docs/gsg/C/introduction.html index 36e417ff1..887336b41 100644 --- a/db/docs/gsg/C/introduction.html +++ b/db/docs/gsg/C/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction to Berkeley DB + + Chapter 1. Introduction to Berkeley DB @@ -15,12 +15,12 @@
Prev Prev  Up  Next Next
Cursor Example Cursor Example  Home  Implementing Key +  Implementing Key Extractors
- + - - - + + +
Chapter 1. Introduction to Berkeley DB Chapter 1. Introduction to Berkeley DB
Prev   NextPrev   Next

@@ -29,7 +29,7 @@
-

Chapter 1. Introduction to Berkeley DB

+

Chapter 1. Introduction to Berkeley DB

@@ -210,18 +210,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Preface Preface  Home  Berkeley DB Concepts Berkeley DB Concepts
diff --git a/db/docs/gsg/C/joins.html b/db/docs/gsg/C/joins.html index 8b3464328..122c105d6 100644 --- a/db/docs/gsg/C/joins.html +++ b/db/docs/gsg/C/joins.html @@ -1,13 +1,13 @@ - + - + Database Joins - + @@ -18,9 +18,9 @@ Database Joins - Prev  - Chapter 5. Secondary Databases -  Next + Prev  + Chapter 5. Secondary Databases +  Next
@@ -98,9 +98,6 @@ using a join cursor. - - -

@@ -179,7 +176,6 @@

For example: -

#include <db.h>
@@ -196,9 +192,9 @@ DBC *carray[4];
 DBT key, data;
 int ret;
 
-char *the_color = "red";
-char *the_type = "minivan";
-char *the_make = "Toyota";
+char *the_color = "red";
+char *the_type = "minivan";
+char *the_make = "Toyota";
 
 /* Database and secondary database opens omitted for brevity.
  * Assume a primary database handle:
@@ -240,17 +236,17 @@ if (( ret =
 /* Position the cursors */
 key.data = the_color;
 key.size = strlen(the_color) + 1;
-if ((ret = color_curs->c_get(color_curs, &key, &data, DB_SET)) != 0)
+if ((ret = color_curs->get(color_curs, &key, &data, DB_SET)) != 0)
     /* Error handling goes here */
 
 key.data = the_make;
 key.size = strlen(the_make) + 1;
-if ((ret = make_curs->c_get(make_curs, &key, &data, DB_SET)) != 0)
+if ((ret = make_curs->get(make_curs, &key, &data, DB_SET)) != 0)
     /* Error handling goes here */
 
 key.data = the_type;
 key.size = strlen(the_type) + 1;
-if ((ret = type_curs->c_get(type_curs, &key, &data, DB_SET)) != 0)
+if ((ret = type_curs->get(type_curs, &key, &data, DB_SET)) != 0)
     /* Error handling goes here */
 
 /* Set up the cursor array */
@@ -264,7 +260,7 @@ if ((ret = automotiveDB->join(automotiveDB, carray, &join_curs, 0)) != 0)
     /* Error handling goes here */
 
 /* Iterate using the join cursor */
-while ((ret = join_curs->c_get(join_curs, &key, &data, 0)) == 0) {
+while ((ret = join_curs->get(join_curs, &key, &data, 0)) == 0) {
     /* Do interesting things with the key and data */
 }
 
@@ -284,21 +280,21 @@ if (ret == DB_NOTFOUND) {
       
- + - + +   - +
Prev Prev  Up  Next Next
Using Cursors with Secondary Databases -   Home  Secondary Database Example Secondary Database Example
diff --git a/db/docs/gsg/C/keyCreator.html b/db/docs/gsg/C/keyCreator.html index 906f4d832..bd7e2e7e9 100644 --- a/db/docs/gsg/C/keyCreator.html +++ b/db/docs/gsg/C/keyCreator.html @@ -1,8 +1,8 @@ - + - + Implementing Key Extractors @@ -10,8 +10,8 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB" /> - <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> - <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> <link rel="next" href="readSecondary.html" title="Reading Secondary Databases" /> </head> <body> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. Secondary Databases</th> - <td width="20%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <th width="60%" align="center">Chapter 5. Secondary Databases</th> + <td width="20%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> </tr> </table> <hr /> @@ -125,23 +125,130 @@ get_sales_rep(DB *sdbp, /* secondary db handle */ sdbp, /* Secondary database */ get_sales_rep, /* Callback used for key creation. */ 0); /* Flags */</pre> + <div class="sect2" lang="en" xml:lang="en"> + <div class="titlepage"> + <div> + <div> + <h3 class="title"><a id="multikeys"></a>Working with Multiple Keys</h3> + </div> + </div> + <div></div> + </div> + <p> + Until now we have only discussed indexes as if there is + a one-to-one relationship between the secondary key and + the primary database record. In fact, it is possible to + generate multiple keys for any given record, provided + that you take appropriate steps in your key creator + to do so. + </p> + <p> + For example, suppose you had a database that contained + information about books. Suppose further that you + sometimes want to look up books by author. Because + sometimes books have multiple authors, you may want to + return multiple secondary keys for every book that you + index. + </p> + <p> + To do this, you write a key extractor that returns a + <span>DBT</span> + + whose <tt class="literal">data</tt> member points to an array of + <span>DBTs.</span> + + Each such member of this array contains a single secondary key. + In addition, the + <span>DBT</span> + + returned by your key extractor must have a size field + equal to the number of elements contained in the + <span>DBT</span> + + array. Also, the flag field for the + <span>DBT</span> + + returned by the callback must include + <tt class="literal">DB_DBT_MULTIPLE</tt>. For example: + </p> + <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> + <h3 class="title">Note</h3> + <p> + It is important that the array of secondary + keys created by your callback not contain + repeats. That is, every element in the array + must be unique. If the array does not contain + a unique set, then the secondary can get out + of sync with the primary. + </p> + </div> + <pre class="programlisting">int +my_callback(DB *dbp, const DBT *pkey, const DBT *pdata, DBT *skey) +{ + DBT *tmpdbt; + char *tmpdata1, tmpdata2; + + /* + * This example skips the step of extracting the data you + * want to use for building your secondary keys from the + * pkey or pdata DBT. + * + * Assume for the purpose of this example that the data + * is temporarily stored in two variables, + * tmpdata1 and tmpdata2. + */ + + /* + * Create an array of DBTs that is large enough for the + * number of keys that you want to return. In this case, + * we go with an array of size two. + */ + + tmpdbt = malloc(sizeof(DBT) * 2); + memset(tmpdbt, 0, sizeof(DBT) * 2); + + /* Now assign secondary keys to each element of the array. */ + tmpdbt[0].data = tmpdata1; + tmpdbt[0].size = (u_int32_t)strlen(tmpdbt[0].data) + 1; + tmpdbt[1].data = tmpdata2; + tmpdbt[1].size = (u_int32_t)strlen(tmpdbt[1].data) + 1; + + /* + * Now we set flags for the returned DBT. DB_DBT_MULTIPLE is + * required in order for DB to know that the DBT references an + * array. In addition, we set DB_DBT_APPMALLOC because we + * dynamically allocated memory for the DBT's data field. + * DB_DBT_APPMALLOC causes DB to release that memory once it + * is done with the returned DBT. + */ + skey->flags = DB_DBT_MULTIPLE | DB_DBT_APPMALLOC; + + /* Point the results data field to the arrays of DBTs */ + skey->data = tmpdbt; + + /* Indicate the returned array is of size 2 */ + skey->size = 2; + + return (0); +} </pre> + </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="indexes.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> + <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Reading Secondary Databases</td> + <td width="40%" align="right" valign="top"> Reading Secondary Databases</td> </tr> </table> </div> diff --git a/db/docs/gsg/C/preface.html b/db/docs/gsg/C/preface.html index 1b74e4636..ac6d83896 100644 --- a/db/docs/gsg/C/preface.html +++ b/db/docs/gsg/C/preface.html @@ -1,15 +1,15 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Preface - +
diff --git a/db/docs/gsg/C/secondaryCursor.html b/db/docs/gsg/C/secondaryCursor.html index fc4820f8e..00a0df841 100644 --- a/db/docs/gsg/C/secondaryCursor.html +++ b/db/docs/gsg/C/secondaryCursor.html @@ -1,8 +1,8 @@ - + - + Using Cursors with Secondary Databases @@ -10,7 +10,7 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB" /> - <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> <link rel="previous" href="secondaryDelete.html" title="Deleting Secondary Database Records" /> <link rel="next" href="joins.html" title="Database Joins" /> </head> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. Secondary Databases</th> - <td width="20%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> + <th width="60%" align="center">Chapter 5. Secondary Databases</th> + <td width="20%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> </tr> </table> <hr /> @@ -77,13 +77,13 @@ <li> <p> You cannot use <tt class="literal">DB_GET_BOTH</tt> and related flags with - <tt class="methodname">DB->c_get()</tt> + <tt class="methodname">DB->get()</tt> and a secondary database. Instead, you must use - <span><tt class="methodname">DB->c_pget()</tt>.</span> + <span><tt class="methodname">DB->pget()</tt>.</span> Also, in that case the primary and secondary key given on the call to - <tt class="methodname">DB->c_pget()</tt> + <tt class="methodname">DB->pget()</tt> must match the secondary key and associated primary record key in order for that primary record to be returned as a result of the @@ -113,7 +113,7 @@ DB *sdbp; /* Secondary DB handle */ DBC *cursorp; /* Cursor */ DBT key, data; /* DBTs used for the delete */ -char *search_name = "John Doe"; /* Name to delete */ +char *search_name = "John Doe"; /* Name to delete */ /* Primary and secondary database opens omitted for brevity. */ @@ -131,25 +131,25 @@ key.size = strlen(search_name) + 1; /* Position the cursor */ -while (cursorp->c_get(cursorp, &key, &data, DB_SET) == 0) - cursorp->c_del(cursorp, 0); </pre> +while (cursorp->get(cursorp, &key, &data, DB_SET) == 0) + cursorp->del(cursorp, 0); </pre> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="indexes.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Deleting Secondary Database Records </td> + <td width="40%" align="left" valign="top">Deleting Secondary Database Records </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Database Joins</td> + <td width="40%" align="right" valign="top"> Database Joins</td> </tr> </table> </div> diff --git a/db/docs/gsg/C/secondaryDelete.html b/db/docs/gsg/C/secondaryDelete.html index d39ebdab5..f77a4ba1a 100644 --- a/db/docs/gsg/C/secondaryDelete.html +++ b/db/docs/gsg/C/secondaryDelete.html @@ -1,13 +1,13 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Deleting Secondary Database Records - + @@ -18,9 +18,9 @@ Deleting Secondary Database Records - Prev  - Chapter 5. Secondary Databases -  Next + Prev  + Chapter 5. Secondary Databases +  Next
@@ -90,7 +90,7 @@ DB *dbp, *sdbp; /* Primary and secondary DB handles */ DBT key; /* DBTs used for the delete */ int ret; /* Function return value */ -char *search_name = "John Doe"; /* Name to delete */ +char *search_name = "John Doe"; /* Name to delete */ /* Primary */ ret = db_create(&dbp, NULL, 0); @@ -113,7 +113,7 @@ if (ret != 0) { /* open the primary database */ ret = dbp->open(dbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_db.db", /* On-disk file that holds the database. + "my_db.db", /* On-disk file that holds the database. * Required. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ @@ -126,7 +126,7 @@ if (ret != 0) { /* open the secondary database */ ret = sdbp->open(sdbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_secdb.db", /* On-disk file that holds the database. + "my_secdb.db", /* On-disk file that holds the database. * Required. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ @@ -162,18 +162,18 @@ key.size = strlen(search_name) + 1;
- + - + - + - diff --git a/db/docs/gsg/C/usingDbt.html b/db/docs/gsg/C/usingDbt.html index bea353a9c..f9cee5d62 100644 --- a/db/docs/gsg/C/usingDbt.html +++ b/db/docs/gsg/C/usingDbt.html @@ -1,14 +1,14 @@ - + - + Reading and Writing Database Records - - + + @@ -18,9 +18,9 @@ - - - + + +
Prev Prev  Up  Next Next
Reading Secondary Databases Reading Secondary Databases  Home   +   Using Cursors with Secondary Databases Reading and Writing Database Records
Prev Chapter 3. Database Records NextPrev Chapter 3. Database Records Next

@@ -127,7 +127,7 @@ ... -char *description = "Grocery bill."; +char *description = "Grocery bill."; DBT key, data; DB *my_database; int ret; @@ -150,7 +150,7 @@ data.size = strlen(description) +1; ret = my_database->put(my_database, NULL, &key, &data, DB_NOOVERWRITE); if (ret == DB_KEYEXIST) { my_database->err(my_database, ret, - "Put failed because key %f already exists", money); + "Put failed because key %f already exists", money); }
@@ -206,7 +206,7 @@ if (ret == DB_KEYEXIST) { DBT key, data; DB *my_database; float money; -char *description[DESCRIPTION_SIZE + 1]; +char description[DESCRIPTION_SIZE + 1]; /* Database open omitted for clarity */ @@ -217,11 +217,11 @@ memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); key.data = &money; -key.ulen = sizeof(float); +key.size = sizeof(float); -data.set_data(&description); -data.set_ulen(DESCRIPTION_SIZE + 1); -data.set_flags(DB_DBT_USERMEM); +data.data = description; +data.ulen = DESCRIPTION_SIZE + 1; +data.flags = DB_DBT_USERMEM; my_database->get(my_database, NULL, &key, &data, 0); /* @@ -378,18 +378,18 @@ my_database->del(my_database, NULL, &key, 0);
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 3. Database Records Chapter 3. Database Records  Home  Using C Structures with DB Using C Structures with DB
diff --git a/db/docs/gsg/CXX/BerkeleyDB-Core-Cxx-GSG.pdf b/db/docs/gsg/CXX/BerkeleyDB-Core-Cxx-GSG.pdf index 4c140dd09..74ec2d8f3 100644 Binary files a/db/docs/gsg/CXX/BerkeleyDB-Core-Cxx-GSG.pdf and b/db/docs/gsg/CXX/BerkeleyDB-Core-Cxx-GSG.pdf differ diff --git a/db/docs/gsg/CXX/CoreCursorUsage.html b/db/docs/gsg/CXX/CoreCursorUsage.html index 4795904e1..8cbe19863 100644 --- a/db/docs/gsg/CXX/CoreCursorUsage.html +++ b/db/docs/gsg/CXX/CoreCursorUsage.html @@ -1,15 +1,15 @@ - + - + Cursor Example - + - + diff --git a/db/docs/gsg/CXX/CoreDBAdmin.html b/db/docs/gsg/CXX/CoreDBAdmin.html index 1bec126a7..49d69febe 100644 --- a/db/docs/gsg/CXX/CoreDBAdmin.html +++ b/db/docs/gsg/CXX/CoreDBAdmin.html @@ -1,13 +1,13 @@ - + - + Administrative Methods - + @@ -18,9 +18,9 @@ Administrative Methods - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -82,9 +82,9 @@ db.get_open_flags(&open_flags); ... Db db(NULL, 0); -// Database open and subsequent operations omitted for clarity +// Database handle creation omitted for clarity -db.remove("mydb.db", // Database file to remove +db.remove("mydb.db", // Database file to remove NULL, // Database to remove. This is // NULL so the entire file is // removed. @@ -109,13 +109,13 @@ db.remove("mydb.db", // Database file to remove ... Db db(NULL, 0); -// Database open and subsequent operations omitted for clarity +// Database handle creation omitted for clarity -db.rename("mydb.db", // Database file to rename +db.rename("mydb.db", // Database file to rename NULL, // Database to rename. This is // NULL so the entire file is // renamed. - "newdb.db", // New database file name + "newdb.db", // New database file name 0); // Flags. None used. @@ -128,18 +128,18 @@ db.rename("mydb.db", // Database file to rename
- + - + - + - +
Prev Prev  Up  Next Next
Database Open Flags Database Open Flags  Home  Error Reporting Functions Error Reporting Functions
diff --git a/db/docs/gsg/CXX/CoreDbCXXUsage.html b/db/docs/gsg/CXX/CoreDbCXXUsage.html index a40416c0e..580674333 100644 --- a/db/docs/gsg/CXX/CoreDbCXXUsage.html +++ b/db/docs/gsg/CXX/CoreDbCXXUsage.html @@ -1,15 +1,15 @@ - + - + Database Example - + - + diff --git a/db/docs/gsg/CXX/CoreEnvUsage.html b/db/docs/gsg/CXX/CoreEnvUsage.html index cc8196954..2ad775edf 100644 --- a/db/docs/gsg/CXX/CoreEnvUsage.html +++ b/db/docs/gsg/CXX/CoreEnvUsage.html @@ -1,13 +1,13 @@ - + - + Managing Databases in Environments - + @@ -18,9 +18,9 @@ Managing Databases in Environments - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -63,18 +63,18 @@ u_int32_t env_flags = DB_CREATE | // If the environment does not // exist, create it. DB_INIT_MPOOL; // Initialize the in-memory cache. -std::string envHome("/export1/testEnv"); +std::string envHome("/export1/testEnv"); DbEnv myEnv(0); try { myEnv.open(envHome.c_str(), env_flags, 0); } catch(DbException &e) { - std::cerr << "Error opening database environment: " + std::cerr << "Error opening database environment: " << envHome << std::endl; std::cerr << e.what() << std::endl; exit( -1 ); } catch(std::exception &e) { - std::cerr << "Error opening database environment: " + std::cerr << "Error opening database environment: " << envHome << std::endl; std::cerr << e.what() << std::endl; exit( -1 ); @@ -87,12 +87,14 @@ try {
#include <db_cxx.h>
 ...
-u_int32_t env_flags = DB_CREATE;  // If the environment does not
+u_int32_t env_flags = DB_CREATE |  // If the environment does not
                                   // exist, create it.
+                      DB_INIT_MPOOL; // Initialize the in-memory cache.
+std::string envHome("/export1/testEnv");
+                    
 u_int32_t db_flags = DB_CREATE;   // If the database does not
                                   // exist, create it.
-std::string envHome("/export1/testEnv");
-std::string dbName("mydb.db");
+std::string dbName("mydb.db");
 DbEnv myEnv(0);
 Db *myDb;
 
@@ -106,16 +108,16 @@ try {
                db_flags,
                0);
 } catch(DbException &e) {
-    std::cerr << "Error opening database environment: "
+    std::cerr << "Error opening database environment: "
               << envHome 
-              << " and database "
+              << " and database "
               << dbName << std::endl;
     std::cerr << e.what() << std::endl;
     exit( -1 );
 } catch(std::exception &e) {
-    std::cerr << "Error opening database environment: "
+    std::cerr << "Error opening database environment: "
               << envHome 
-              << " and database "
+              << " and database "
               << dbName << std::endl;
     std::cerr << e.what() << std::endl;
     exit( -1 );
@@ -132,16 +134,16 @@ try {
     myEnv.close(0);
     
 } catch(DbException &e) {
-    std::cerr << "Error closing database environment: "
+    std::cerr << "Error closing database environment: "
               << envHome 
-              << " or database "
+              << " or database "
               << dbName << std::endl;
     std::cerr << e.what() << std::endl;
     exit( -1 );
 } catch(std::exception &e) {
-    std::cerr << "Error closing database environment: "
+    std::cerr << "Error closing database environment: "
               << envHome 
-              << " or database "
+              << " or database "
               << dbName << std::endl;
     std::cerr << e.what() << std::endl;
     exit( -1 );
@@ -151,18 +153,18 @@ try {
       
- + - + - + - +
Prev Prev  Up  Next Next
Error Reporting Functions Error Reporting Functions  Home  Database Example Database Example
diff --git a/db/docs/gsg/CXX/Cursors.html b/db/docs/gsg/CXX/Cursors.html index 7b657c03e..bceef8149 100644 --- a/db/docs/gsg/CXX/Cursors.html +++ b/db/docs/gsg/CXX/Cursors.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Using Cursors + + Chapter 4. Using Cursors @@ -15,12 +15,12 @@

- + - + - + - +
Prev Prev  Up  Next Next
Database Usage Example Database Usage Example  Home  Getting Records Using the Cursor Getting Records Using the Cursor
diff --git a/db/docs/gsg/CXX/DB.html b/db/docs/gsg/CXX/DB.html index 73718a1e5..6a39c4cad 100644 --- a/db/docs/gsg/CXX/DB.html +++ b/db/docs/gsg/CXX/DB.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Databases + + Chapter 2. Databases @@ -15,12 +15,12 @@

The following are the flags that you may want to use at database open time. - Note that this list is not exhaustive — it includes only those flags likely + Note that this list is not exhaustive — it includes only those flags likely to be of interest for introductory, single-threaded database applications. For a complete list of the flags available to you, see the @@ -99,18 +99,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Closing Databases Closing Databases  Home  Administrative Methods Administrative Methods
diff --git a/db/docs/gsg/CXX/DbCXXUsage.html b/db/docs/gsg/CXX/DbCXXUsage.html index 34ca01e17..449852bd1 100644 --- a/db/docs/gsg/CXX/DbCXXUsage.html +++ b/db/docs/gsg/CXX/DbCXXUsage.html @@ -1,15 +1,15 @@ - + - + Database Usage Example - + - + diff --git a/db/docs/gsg/CXX/DeleteEntryWCursor.html b/db/docs/gsg/CXX/DeleteEntryWCursor.html index 482f1dfa0..e4f4564f6 100644 --- a/db/docs/gsg/CXX/DeleteEntryWCursor.html +++ b/db/docs/gsg/CXX/DeleteEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Deleting Records Using Cursors - + @@ -18,9 +18,9 @@ Deleting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -54,7 +54,7 @@ ... -char *key1str = "My first string"; +char *key1str = "My first string"; Db my_database(NULL, 0); Dbc *cursorp; @@ -76,9 +76,9 @@ try { } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Cursors must be closed @@ -91,18 +91,18 @@ my_database.close(0);
- + - + - + - +
Prev Prev  Up  Next Next
Putting Records Using Cursors Putting Records Using Cursors  Home  Replacing Records Using Cursors Replacing Records Using Cursors
diff --git a/db/docs/gsg/CXX/Positioning.html b/db/docs/gsg/CXX/Positioning.html index 6c0001657..329fafe40 100644 --- a/db/docs/gsg/CXX/Positioning.html +++ b/db/docs/gsg/CXX/Positioning.html @@ -1,14 +1,14 @@ - + - + Getting Records Using the Cursor - - + + @@ -18,9 +18,9 @@ Getting Records Using the Cursor - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -73,9 +73,9 @@ try { // can never be reached. } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Cursors must be closed @@ -114,9 +114,9 @@ try { // can never be reached. } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Cursors must be closed @@ -196,7 +196,7 @@ my_database.close(0);

Identical to DB_SET - Cursor.getSearchKey() + unless you are using the BTree access. In this case, the cursor moves @@ -330,8 +330,8 @@ try { my_database.cursor(NULL, &cursorp, 0); // Search criteria - char *search_key = "Alaska"; - char *search_data = "Fa"; + char *search_key = "Alaska"; + char *search_data = "Fa"; // Set up our DBTs Dbt key(search_key, strlen(search_key) + 1); @@ -345,9 +345,9 @@ try { // Do something with the data } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Close the cursor @@ -453,7 +453,7 @@ Arizona/Florence and you then call - + Dbc::get() with DB_PREV_NODUP, @@ -521,7 +521,7 @@ Arizona/Florence ... -char *search_key = "Al"; +char *search_key = "Al"; Db my_database(NULL, 0); Dbc *cursorp; @@ -540,14 +540,14 @@ try { // key and data begin with the correct strings. int ret = cursorp->get(&key, &data, DB_SET); while (ret != DB_NOTFOUND) { - std::cout << "key: " << (char *)key.get_data() - << "data: " << (char *)data.get_data()<< std::endl; + std::cout << "key: " << (char *)key.get_data() + << "data: " << (char *)data.get_data()<< std::endl; ret = cursorp->get(&key, &data, DB_NEXT_DUP); } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Close the cursor @@ -562,18 +562,18 @@ my_database.close(0);


- + - + - + - +
Prev Prev  Up  Next Next
Chapter 4. Using Cursors Chapter 4. Using Cursors  Home  Putting Records Using Cursors Putting Records Using Cursors
diff --git a/db/docs/gsg/CXX/PutEntryWCursor.html b/db/docs/gsg/CXX/PutEntryWCursor.html index 1374295e9..8a68d920c 100644 --- a/db/docs/gsg/CXX/PutEntryWCursor.html +++ b/db/docs/gsg/CXX/PutEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Putting Records Using Cursors - + @@ -18,9 +18,9 @@ Putting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -136,11 +136,11 @@ ... -char *key1str = "My first string"; -char *data1str = "My first data"; -char *key2str = "A second string"; -char *data2str = "My second data"; -char *data3str = "My third data"; +char *key1str = "My first string"; +char *data1str = "My first data"; +char *key2str = "A second string"; +char *data2str = "My second data"; +char *data3str = "My third data"; Db my_database(NULL, 0); @@ -161,11 +161,11 @@ try { my_database.cursor(NULL, &cursorp, 0); // Assuming an empty database, this first put places - // "My first string"/"My first data" in the first + // "My first string"/"My first data" in the first // position in the database int ret = cursorp->put(&key1, &data1, DB_KEYFIRST); - // This put places "A second string"/"My second data" in the + // This put places "A second string"/"My second data" in the // the database according to its key sorts against the key // used for the currently existing database record. Most likely // this record would appear first in the database. @@ -173,21 +173,21 @@ try { DB_KEYFIRST); /* Added according to sort order */ // If duplicates are not allowed, the currently existing record that - // uses "key2" is overwritten with the data provided on this put. - // That is, the record "A second string"/"My second data" becomes - // "A second string"/"My third data" + // uses "key2" is overwritten with the data provided on this put. + // That is, the record "A second string"/"My second data" becomes + // "A second string"/"My third data" // - // If duplicates are allowed, then "My third data" is placed in the - // duplicates list according to how it sorts against "My second data". + // If duplicates are allowed, then "My third data" is placed in the + // duplicates list according to how it sorts against "My second data". ret = cursorp->put(&key2, &data3, DB_KEYFIRST); // If duplicates are not allowed, record // is overwritten with new data. Otherwise, // the record is added to the beginning of // the duplicates list. } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Cursors must be closed @@ -200,18 +200,18 @@ my_database.close(0);
- + - + - + - +
Prev Prev  Up  Next Next
Getting Records Using the Cursor Getting Records Using the Cursor  Home  Deleting Records Using Cursors Deleting Records Using Cursors
diff --git a/db/docs/gsg/CXX/ReplacingEntryWCursor.html b/db/docs/gsg/CXX/ReplacingEntryWCursor.html index 5d6bd4dd7..e231ace99 100644 --- a/db/docs/gsg/CXX/ReplacingEntryWCursor.html +++ b/db/docs/gsg/CXX/ReplacingEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Replacing Records Using Cursors - + @@ -18,9 +18,9 @@ Replacing Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -57,8 +57,8 @@ Db my_database(NULL, 0); Dbc *cursorp; int ret; -char *key1str = "My first string"; -char *replacement_data = "replace me"; +char *key1str = "My first string"; +char *replacement_data = "replace me"; try { // Database open omitted @@ -78,9 +78,9 @@ try { cursorp->put(&key, &data, DB_CURRENT); } } catch(DbException &e) { - my_database.err(e.get_errno(), "Error!"); + my_database.err(e.get_errno(), "Error!"); } catch(std::exception &e) { - my_database.errx("Error! %s", e.what()); + my_database.errx("Error! %s", e.what()); } // Cursors must be closed @@ -119,18 +119,18 @@ my_database.close(0);
- + - + - + - +
Prev Prev  Up  Next Next
Deleting Records Using Cursors Deleting Records Using Cursors  Home  Cursor Example Cursor Example
diff --git a/db/docs/gsg/CXX/accessmethods.html b/db/docs/gsg/CXX/accessmethods.html index dcbd74844..cbcc86fcb 100644 --- a/db/docs/gsg/CXX/accessmethods.html +++ b/db/docs/gsg/CXX/accessmethods.html @@ -1,13 +1,13 @@ - + - + Access Methods - + @@ -18,9 +18,9 @@ Access Methods - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -262,18 +262,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Berkeley DB Concepts Berkeley DB Concepts  Home  Database Limits and Portability Database Limits and Portability
diff --git a/db/docs/gsg/CXX/btree.html b/db/docs/gsg/CXX/btree.html index 6e34d7bbc..ce42b565b 100644 --- a/db/docs/gsg/CXX/btree.html +++ b/db/docs/gsg/CXX/btree.html @@ -1,13 +1,13 @@ - + - + BTree Configuration - + @@ -17,9 +17,9 @@ BTree Configuration - Prev  - Chapter 6. Database Configuration -   + Prev  + Chapter 6. Database Configuration +  
@@ -327,7 +327,7 @@ ... Db db(NULL, 0); -const char *file_name = "myd.db"; +const char *file_name = "myd.db"; try { // Configure the database for sorted duplicates @@ -341,9 +341,9 @@ try { DB_CREATE, // Open flags 0); // File mode. Using defaults } catch(DbException &e) { - db.err(e.get_errno(), "Database '%s' open failed.", file_name); + db.err(e.get_errno(), "Database '%s' open failed.", file_name); } catch(std::exception &e) { - db.errx("Error opening database: %s : %s\n", file_name, e.what()); + db.errx("Error opening database: %s : %s\n", file_name, e.what()); } ... @@ -351,9 +351,9 @@ try { try { db.close(0); } catch(DbException &e) { - db.err(e.get_errno(), "Database '%s' close failed.", file_name); + db.err(e.get_errno(), "Database '%s' close failed.", file_name); } catch(std::exception &e) { - db.errx("Error closing database: %s : %s\n", file_name, e.what()); + db.errx("Error closing database: %s : %s\n", file_name, e.what()); } @@ -528,18 +528,18 @@ db.set_bt_compare(compare_int);
- + - + - + - +
Prev Prev  Up  Â 
Selecting the Cache Size Selecting the Cache Size  Home  Â 
diff --git a/db/docs/gsg/CXX/cachesize.html b/db/docs/gsg/CXX/cachesize.html index 8b95477a8..426308cf6 100644 --- a/db/docs/gsg/CXX/cachesize.html +++ b/db/docs/gsg/CXX/cachesize.html @@ -1,14 +1,14 @@ - + - + Selecting the Cache Size - - + + @@ -18,9 +18,9 @@ Selecting the Cache Size - Prev  - Chapter 6. Database Configuration -  Next + Prev  + Chapter 6. Database Configuration +  Next
@@ -56,14 +56,14 @@ available memory and performance considerations.

- Selecting a cache size is something of an art, but fortunately it is - selected at database (or environment) open time, so it can be easily - tuned to your application's data requirements as they change over time. - The best way to determine how large your cache needs to be is to put - your application into a production environment and watch to see how much - disk I/O is occurring. If your application is going to disk quite a lot - to retrieve database records, then you should increase the size of your - cache (provided that you have enough memory to do so). + Selecting a cache size is something of an art, but fortunately you + can change it any time, so it can be easily tuned to your + application's changing data requirements. The best way to + determine how large your cache needs to be is to put your + application into a production environment and watch to see how much + disk I/O is occurring. If your application is going to disk quite a + lot to retrieve database records, then you should increase the size + of your cache (provided that you have enough memory to do so).

You can use the db_stat command line utility with the @@ -79,18 +79,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Chapter 6. Database Configuration Chapter 6. Database Configuration  Home  BTree Configuration BTree Configuration
diff --git a/db/docs/gsg/CXX/concepts.html b/db/docs/gsg/CXX/concepts.html index 161e6a25b..53cababbe 100644 --- a/db/docs/gsg/CXX/concepts.html +++ b/db/docs/gsg/CXX/concepts.html @@ -1,14 +1,14 @@ - + - + Berkeley DB Concepts - - + + @@ -18,9 +18,9 @@ Berkeley DB Concepts - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -149,18 +149,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction to Berkeley DB  Chapter 1. Introduction to Berkeley DB   Home  Access Methods Access Methods
diff --git a/db/docs/gsg/CXX/coreExceptions.html b/db/docs/gsg/CXX/coreExceptions.html index eec772f92..979a56cf6 100644 --- a/db/docs/gsg/CXX/coreExceptions.html +++ b/db/docs/gsg/CXX/coreExceptions.html @@ -1,13 +1,13 @@ - + - + Exception Handling - + @@ -18,9 +18,9 @@ Exception Handling - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -97,18 +97,18 @@ catch(std::exception &e)
- + - + - + - +
Prev Prev  Up  Next Next
Environments Environments  Home  Error Returns Error Returns
diff --git a/db/docs/gsg/CXX/coredbclose.html b/db/docs/gsg/CXX/coredbclose.html index 2f88f3123..1f4f134f5 100644 --- a/db/docs/gsg/CXX/coredbclose.html +++ b/db/docs/gsg/CXX/coredbclose.html @@ -1,14 +1,14 @@ - + - + Closing Databases - - + + @@ -18,9 +18,9 @@ Closing Databases - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -90,18 +90,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 2. Databases Chapter 2. Databases  Home  Database Open Flags Database Open Flags
diff --git a/db/docs/gsg/CXX/coreindexusage.html b/db/docs/gsg/CXX/coreindexusage.html index 7fdffdd47..3547a57e3 100644 --- a/db/docs/gsg/CXX/coreindexusage.html +++ b/db/docs/gsg/CXX/coreindexusage.html @@ -1,15 +1,15 @@ - + - + Secondary Database Example - + - + diff --git a/db/docs/gsg/CXX/databaseLimits.html b/db/docs/gsg/CXX/databaseLimits.html index 15c23a81c..abf321bdc 100644 --- a/db/docs/gsg/CXX/databaseLimits.html +++ b/db/docs/gsg/CXX/databaseLimits.html @@ -1,13 +1,13 @@ - + - + Database Limits and Portability - + @@ -18,9 +18,9 @@ Database Limits and Portability - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -50,7 +50,7 @@

Also, DB's databases and data structures are designed for concurrent - access — they are thread-safe, and they share well across multiple + access — they are thread-safe, and they share well across multiple processes. That said, in order to allow multiple processes to share databases and the cache, DB makes use of mechanisms that do not work well on network-shared drives (NFS or Windows networks shares, for @@ -62,18 +62,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Access Methods Access Methods  Home  Environments Environments
diff --git a/db/docs/gsg/CXX/dbErrorReporting.html b/db/docs/gsg/CXX/dbErrorReporting.html index b1d0a11ef..a114a3a6d 100644 --- a/db/docs/gsg/CXX/dbErrorReporting.html +++ b/db/docs/gsg/CXX/dbErrorReporting.html @@ -1,13 +1,13 @@ - + - + Error Reporting Functions - + @@ -18,9 +18,9 @@ Error Reporting Functions - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -157,13 +157,13 @@ my_error_handler(const char *error_prefix, char *msg) ... Db db(NULL, 0); -std::string dbFileName("my_db.db"); +std::string dbFileName("my_db.db"); try { // Set up error handling for this database db.set_errcall(my_error_handler); - db.set_errpfx("my_example_program"); + db.set_errpfx("my_example_program");

And to issue an error message:

@@ -174,14 +174,14 @@ try // Must catch both DbException and std::exception catch(DbException &e) { - db.err(e.get_errno(), "Database open failed %s", + db.err(e.get_errno(), "Database open failed %s", dbFileName.c_str()); throw e; } catch(std::exception &e) { // No DB error number available, so use errx - db.errx("Error opening database: %s", e.what()); + db.errx("Error opening database: %s", e.what()); throw e; } @@ -192,18 +192,18 @@ try
- + - + - + - +
Prev Prev  Up  Next Next
Administrative Methods Administrative Methods  Home  Managing Databases in Environments Managing Databases in Environments
diff --git a/db/docs/gsg/CXX/dbconfig.html b/db/docs/gsg/CXX/dbconfig.html index 3de67dc92..e86d5aaf2 100644 --- a/db/docs/gsg/CXX/dbconfig.html +++ b/db/docs/gsg/CXX/dbconfig.html @@ -1,9 +1,9 @@ - + - - Chapter 6. Database Configuration + + Chapter 6. Database Configuration @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/CXX/gettingit.html b/db/docs/gsg/CXX/gettingit.html index c84496093..a04c82710 100644 --- a/db/docs/gsg/CXX/gettingit.html +++ b/db/docs/gsg/CXX/gettingit.html @@ -1,15 +1,15 @@ - + - + Getting and Using DB - + - + diff --git a/db/docs/gsg/CXX/index.html b/db/docs/gsg/CXX/index.html index 68eb40022..d1800c1cd 100644 --- a/db/docs/gsg/CXX/index.html +++ b/db/docs/gsg/CXX/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB @@ -16,9 +16,9 @@ Getting Started with Berkeley DB -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Berkeley DB

+

Getting Started with Berkeley DB

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

-

9/20/2006

+

6/30/2007

@@ -328,6 +328,15 @@
+
+
+
+ + Working with Multiple Keys + +
+
+
Reading Secondary Databases @@ -462,14 +471,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg/CXX/indexes.html b/db/docs/gsg/CXX/indexes.html index 8e7c0a1e6..9ba125ac5 100644 --- a/db/docs/gsg/CXX/indexes.html +++ b/db/docs/gsg/CXX/indexes.html @@ -1,9 +1,9 @@ - + - - Chapter 5. Secondary Databases + + Chapter 5. Secondary Databases @@ -15,12 +15,12 @@
+
+
+
+ + Working with Multiple Keys + +
+
+
Reading Secondary Databases @@ -118,7 +127,7 @@ people such as names, addresses, phone numbers, and so forth. While your application may frequently want to query a person by user ID (that is, by the information stored in the key), it may also on occasion - want to location people by, say, their name. + want to locate people by, say, their name.

Rather than iterate through all of the records in your database, examining @@ -259,7 +268,7 @@ Db my_index(NULL, 0); // Secondary // Open the primary my_database.open(NULL, // Transaction pointer - "my_db.db", // On-disk file that holds the database. + "my_db.db", // On-disk file that holds the database. NULL, // Optional logical database name DB_BTREE, // Database access method DB_CREATE, // Open flags @@ -271,7 +280,7 @@ my_index.set_flags(DB_DUPSORT); // Open the secondary my_index.open(NULL, // Transaction pointer - "my_secondary.db", // On-disk file that holds the database. + "my_secondary.db", // On-disk file that holds the database. NULL, // Optional logical database name DB_BTREE, // Database access method DB_CREATE, // Open flags. @@ -299,18 +308,18 @@ my_database.close(0);


- + - + - + - diff --git a/db/docs/gsg/CXX/introduction.html b/db/docs/gsg/CXX/introduction.html index 2a6941eaf..6676202b3 100644 --- a/db/docs/gsg/CXX/introduction.html +++ b/db/docs/gsg/CXX/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction to Berkeley DB + + Chapter 1. Introduction to Berkeley DB @@ -15,12 +15,12 @@
Prev Prev  Up  Next Next
Cursor Example Cursor Example  Home  Implementing Key +  Implementing Key Extractors
- + - - - + + +
Chapter 1. Introduction to Berkeley DB Chapter 1. Introduction to Berkeley DB
Prev   NextPrev   Next

@@ -29,7 +29,7 @@
-

Chapter 1. Introduction to Berkeley DB

+

Chapter 1. Introduction to Berkeley DB

@@ -215,18 +215,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Preface Preface  Home  Berkeley DB Concepts Berkeley DB Concepts
diff --git a/db/docs/gsg/CXX/joins.html b/db/docs/gsg/CXX/joins.html index 8a96e7b40..b822402b2 100644 --- a/db/docs/gsg/CXX/joins.html +++ b/db/docs/gsg/CXX/joins.html @@ -1,13 +1,13 @@ - + - + Database Joins - + @@ -18,9 +18,9 @@ Database Joins - Prev  - Chapter 5. Secondary Databases -  Next + Prev  + Chapter 5. Secondary Databases +  Next
@@ -98,7 +98,6 @@ using a join cursor. -

@@ -177,9 +176,6 @@

For example: - - -

#include <db_cxx.h>
@@ -207,7 +203,7 @@ Db automotiveTypeDB(NULL, 0);
 // Position the cursors
 Dbc *color_curs;
 automotiveColorDB.cursor(NULL, &color_curs, 0);
-char *the_color = "red";
+char *the_color = "red";
 Dbt key(the_color, strlen(the_color) + 1);
 Dbt data;
 if ((ret = color_curs->get(&key, &data, DB_SET)) != 0) {
@@ -216,7 +212,7 @@ if ((ret = color_curs->get(&key, &data, DB_SET)) != 0) {
 
 Dbc *make_curs;
 automotiveMakeDB.cursor(NULL, &make_curs, 0);
-char *the_make = "Toyota";
+char *the_make = "Toyota";
 key.set_data(the_make);
 key.set_size(strlen(the_make) + 1);
 if ((ret = make_curs->get(&key, &data, DB_SET)) != 0) {
@@ -225,7 +221,7 @@ if ((ret = make_curs->get(&key, &data, DB_SET)) != 0) {
 
 Dbc *type_curs; 
 automotiveTypeDB.cursor(NULL, &type_curs, 0);
-char *the_type = "minivan";
+char *the_type = "minivan";
 key.set_data(the_type);
 key.set_size(strlen(the_type) + 1);
 if ((ret = type_curs->get(&key, &data, DB_SET)) != 0) {
@@ -262,21 +258,21 @@ if (ret == DB_NOTFOUND) {
       
- + - + +   - +
Prev Prev  Up  Next Next
Using Cursors with Secondary Databases -   Home  Secondary Database Example Secondary Database Example
diff --git a/db/docs/gsg/CXX/keyCreator.html b/db/docs/gsg/CXX/keyCreator.html index 604a7befc..e1e6462f3 100644 --- a/db/docs/gsg/CXX/keyCreator.html +++ b/db/docs/gsg/CXX/keyCreator.html @@ -1,8 +1,8 @@ - + - + Implementing Key Extractors @@ -10,8 +10,8 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB" /> - <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> - <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> <link rel="next" href="readSecondary.html" title="Reading Secondary Databases" /> </head> <body> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. Secondary Databases</th> - <td width="20%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <th width="60%" align="center">Chapter 5. Secondary Databases</th> + <td width="20%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> </tr> </table> <hr /> @@ -123,23 +123,124 @@ get_sales_rep(Db *sdbp, // secondary db handle &sdb, // Secondary database get_sales_rep, // Callback used for key creation. 0); // Flags</pre> + <div class="sect2" lang="en" xml:lang="en"> + <div class="titlepage"> + <div> + <div> + <h3 class="title"><a id="multikeys"></a>Working with Multiple Keys</h3> + </div> + </div> + <div></div> + </div> + <p> + Until now we have only discussed indexes as if there is + a one-to-one relationship between the secondary key and + the primary database record. In fact, it is possible to + generate multiple keys for any given record, provided + that you take appropriate steps in your key creator + to do so. + </p> + <p> + For example, suppose you had a database that contained + information about books. Suppose further that you + sometimes want to look up books by author. Because + sometimes books have multiple authors, you may want to + return multiple secondary keys for every book that you + index. + </p> + <p> + To do this, you write a key extractor that returns a + + <span>Dbt</span> + whose <tt class="literal">data</tt> member points to an array of + + <span>Dbts.</span> + Each such member of this array contains a single secondary key. + In addition, the + + <span>Dbt</span> + returned by your key extractor must have a size field + equal to the number of elements contained in the + + <span>Dbt</span> + array. Also, the flag field for the + + <span>Dbt</span> + returned by the callback must include + <tt class="literal">DB_DBT_MULTIPLE</tt>. For example: + </p> + <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> + <h3 class="title">Note</h3> + <p> + It is important that the array of secondary + keys created by your callback not contain + repeats. That is, every element in the array + must be unique. If the array does not contain + a unique set, then the secondary can get out + of sync with the primary. + </p> + </div> + <pre class="programlisting">int +my_callback(Db *dbp, const Dbt *pkey, const Dbt *pdata, Dbt *skey) +{ + Dbt *tmpdbt; + char *tmpdata1, tmpdata2; + + // This example skips the step of extracting the data you + // want to use for building your secondary keys from the + // pkey or pdata Dbt. + + // Assume for the purpose of this example that the data + // is temporarily stored in two variables, + // tmpdata1 and tmpdata2. + + // Create an array of Dbts that is large enough for the + // number of keys that you want to return. In this case, + // we go with an array of size two. + + tmpdbt = malloc(sizeof(Dbt) * 2); + memset(tmpdbt, 0, sizeof(Dbt) * 2); + + // Now assign secondary keys to each element of the array. + tmpdbt[0].set_data(tmpdata1); + tmpdbt[0].set_size((u_int32_t)strlen(tmpdbt[0].data) + 1); + tmpdbt[1].set_data(tmpdata2); + tmpdbt[1].set_size((u_int32_t)strlen(tmpdbt[1].data) + 1); + + // Now we set flags for the returned Dbt. DB_DBT_MULTIPLE is + // required in order for DB to know that the Dbt references an + // array. In addition, we set DB_DBT_APPMALLOC because we + // dynamically allocated memory for the Dbt's data field. + // DB_DBT_APPMALLOC causes DB to release that memory once it + // is done with the returned Dbt. + skey->set_flags(DB_DBT_MULTIPLE | DB_DBT_APPMALLOC); + + // Point the results data field to the arrays of Dbts + skey->set_data(tmpdbt); + + // Indicate the returned array is of size 2 + skey->size = 2; + + return (0); +} </pre> + </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="indexes.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="readSecondary.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> + <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Reading Secondary Databases</td> + <td width="40%" align="right" valign="top"> Reading Secondary Databases</td> </tr> </table> </div> diff --git a/db/docs/gsg/CXX/preface.html b/db/docs/gsg/CXX/preface.html index 83219a76e..4cd7bab6f 100644 --- a/db/docs/gsg/CXX/preface.html +++ b/db/docs/gsg/CXX/preface.html @@ -1,15 +1,15 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Preface - + diff --git a/db/docs/gsg/CXX/secondaryCursor.html b/db/docs/gsg/CXX/secondaryCursor.html index cc2e40522..d03ae85bb 100644 --- a/db/docs/gsg/CXX/secondaryCursor.html +++ b/db/docs/gsg/CXX/secondaryCursor.html @@ -1,8 +1,8 @@ - + - + Using Cursors with Secondary Databases @@ -10,7 +10,7 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB" /> - <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> <link rel="previous" href="secondaryDelete.html" title="Deleting Secondary Database Records" /> <link rel="next" href="joins.html" title="Database Joins" /> </head> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. Secondary Databases</th> - <td width="20%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> + <th width="60%" align="center">Chapter 5. Secondary Databases</th> + <td width="20%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> </tr> </table> <hr /> @@ -78,13 +78,13 @@ <p> You cannot use <tt class="literal">DB_GET_BOTH</tt> and related flags with - <tt class="methodname">DB::c_get()</tt> + <tt class="methodname">Db::get()</tt> and a secondary database. Instead, you must use - <span><tt class="methodname">DB::c_pget()</tt>.</span> + <span><tt class="methodname">Db::pget()</tt>.</span> Also, in that case the primary and secondary key given on the call to - <tt class="methodname">DB::c_pget()</tt> + <tt class="methodname">Db::pget()</tt> must match the secondary key and associated primary record key in order for that primary record to be returned as a result of the call. @@ -119,7 +119,7 @@ my_index.cursor(NULL, &cursorp, 0); // Name to delete -char *search_name = "John Doe"; +char *search_name = "John Doe"; // Instantiate Dbts as normal Dbt key(search_name, strlen(search_name) + 1); @@ -134,18 +134,18 @@ while (cursorp->get(&key, &data, DB_SET) == 0) <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="secondaryDelete.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="indexes.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="joins.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Deleting Secondary Database Records </td> + <td width="40%" align="left" valign="top">Deleting Secondary Database Records </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Database Joins</td> + <td width="40%" align="right" valign="top"> Database Joins</td> </tr> </table> </div> diff --git a/db/docs/gsg/CXX/secondaryDelete.html b/db/docs/gsg/CXX/secondaryDelete.html index d9b54f1f7..3d4b11b29 100644 --- a/db/docs/gsg/CXX/secondaryDelete.html +++ b/db/docs/gsg/CXX/secondaryDelete.html @@ -1,13 +1,13 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Deleting Secondary Database Records - + @@ -18,9 +18,9 @@ Deleting Secondary Database Records - Prev  - Chapter 5. Secondary Databases -  Next + Prev  + Chapter 5. Secondary Databases +  Next
@@ -92,7 +92,7 @@ Db my_index(NULL, 0); // Secondary // Open the primary my_database.open(NULL, // Transaction pointer - "my_db.db", // On-disk file that holds the database. + "my_db.db", // On-disk file that holds the database. NULL, // Optional logical database name DB_BTREE, // Database access method DB_CREATE, // Open flags @@ -104,7 +104,7 @@ my_index.set_flags(DB_DUPSORT); // Open the secondary my_index.open(NULL, // Transaction pointer - "my_secondary.db", // On-disk file that holds the database. + "my_secondary.db", // On-disk file that holds the database. NULL, // Optional logical database name DB_BTREE, // Database access method DB_CREATE, // Open flags. @@ -118,7 +118,7 @@ my_database.associate(NULL, // Txn id 0); // Flags // Name to delete -char *search_name = "John Doe"; +char *search_name = "John Doe"; // Get a search key Dbt key(search_name, strlen(search_name) + 1); @@ -133,18 +133,18 @@ my_index.del(NULL, &key, 0);
- + - + - + - diff --git a/db/docs/gsg/CXX/usingDbt.html b/db/docs/gsg/CXX/usingDbt.html index 8ac226a1d..4cbeb4b19 100644 --- a/db/docs/gsg/CXX/usingDbt.html +++ b/db/docs/gsg/CXX/usingDbt.html @@ -1,14 +1,14 @@ - + - + Reading and Writing Database Records - - + + @@ -18,9 +18,9 @@ - - - + + +
Prev Prev  Up  Next Next
Reading Secondary Databases Reading Secondary Databases  Home   +   Using Cursors with Secondary Databases Reading and Writing Database Records
Prev Chapter 3. Database Records NextPrev Chapter 3. Database Records Next

@@ -127,7 +127,7 @@ ... -char *description = "Grocery bill."; +char *description = "Grocery bill."; float money = 122.45; Db my_database(NULL, 0); @@ -138,7 +138,7 @@ Dbt data(description, strlen(description) + 1); int ret = my_database.put(NULL, &key, &data, DB_NOOVERWRITE); if (ret == DB_KEYEXIST) { - my_database.err(ret, "Put failed because key %f already exists", money); + my_database.err(ret, "Put failed because key %f already exists", money); }
@@ -192,7 +192,7 @@ if (ret == DB_KEYEXIST) { ... float money; -char *description[DESCRIPTION_SIZE + 1]; +char description[DESCRIPTION_SIZE + 1]; Db my_database(NULL, 0); // Database open omitted for clarity @@ -202,9 +202,9 @@ money = 122.45; Dbt key, data; key.set_data(&money); -key.set_ulen(sizeof(float)); +key.set_size(sizeof(float)); -data.set_data(&description); +data.set_data(description); data.set_ulen(DESCRIPTION_SIZE + 1); data.set_flags(DB_DBT_USERMEM); @@ -355,18 +355,18 @@ my_database.del(NULL, &key, 0);
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 3. Database Records Chapter 3. Database Records  Home  Database Usage Example Database Usage Example
diff --git a/db/docs/gsg/JAVA/BerkeleyDB-Core-JAVA-GSG.pdf b/db/docs/gsg/JAVA/BerkeleyDB-Core-JAVA-GSG.pdf index af17d1e46..6cad2fe05 100644 Binary files a/db/docs/gsg/JAVA/BerkeleyDB-Core-JAVA-GSG.pdf and b/db/docs/gsg/JAVA/BerkeleyDB-Core-JAVA-GSG.pdf differ diff --git a/db/docs/gsg/JAVA/CoreEnvUsage.html b/db/docs/gsg/JAVA/CoreEnvUsage.html index abe675a6a..7a7dc17d1 100644 --- a/db/docs/gsg/JAVA/CoreEnvUsage.html +++ b/db/docs/gsg/JAVA/CoreEnvUsage.html @@ -1,13 +1,13 @@ - + - + Managing Databases in Environments - + @@ -18,9 +18,9 @@ Managing Databases in Environments - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -69,7 +69,7 @@ import java.io.FileNotFoundException; ... Environment myEnv = null; -File envHome = new File("/export1/testEnv"); +File envHome = new File("/export1/testEnv"); try { EnvironmentConfig envConf = new EnvironmentConfig(); envConf.setAllowCreate(true); // If the environment does not @@ -105,8 +105,8 @@ import java.io.FileNotFoundException; Environment myEnv = null; Database myDb = null; -File envHome = new File("/export1/testEnv"); -String dbFileName = new String("mydb.db", "UTF-8"); +File envHome = new File("/export1/testEnv"); +String dbFileName = new String("mydb.db", "UTF-8"); try { EnvironmentConfig envConf = new EnvironmentConfig(); @@ -145,18 +145,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Error Reporting Functions Error Reporting Functions  Home  Database Example Database Example
diff --git a/db/docs/gsg/JAVA/CoreJavaUsage.html b/db/docs/gsg/JAVA/CoreJavaUsage.html index 36c50f694..adc1ed4fc 100644 --- a/db/docs/gsg/JAVA/CoreJavaUsage.html +++ b/db/docs/gsg/JAVA/CoreJavaUsage.html @@ -1,15 +1,15 @@ - + - + Database Example - + - + diff --git a/db/docs/gsg/JAVA/Cursors.html b/db/docs/gsg/JAVA/Cursors.html index 6359918ac..070c19d3d 100644 --- a/db/docs/gsg/JAVA/Cursors.html +++ b/db/docs/gsg/JAVA/Cursors.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Using Cursors + + Chapter 4. Using Cursors @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/JAVA/DB.html b/db/docs/gsg/JAVA/DB.html index c7b87085c..06b0fc89a 100644 --- a/db/docs/gsg/JAVA/DB.html +++ b/db/docs/gsg/JAVA/DB.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Databases + + Chapter 2. Databases @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/JAVA/DBEntry.html b/db/docs/gsg/JAVA/DBEntry.html index 9986b8494..43946cbc4 100644 --- a/db/docs/gsg/JAVA/DBEntry.html +++ b/db/docs/gsg/JAVA/DBEntry.html @@ -1,9 +1,9 @@ - + - - Chapter 3. Database Records + + Chapter 3. Database Records @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/JAVA/DeleteEntryWCursor.html b/db/docs/gsg/JAVA/DeleteEntryWCursor.html index 28348f7df..6f57dc623 100644 --- a/db/docs/gsg/JAVA/DeleteEntryWCursor.html +++ b/db/docs/gsg/JAVA/DeleteEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Deleting Records Using Cursors - + @@ -18,9 +18,9 @@ Deleting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -63,7 +63,7 @@ try { ... // Create DatabaseEntry objects // searchKey is some String. - DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); DatabaseEntry theData = new DatabaseEntry(); // Open a cursor using a database handle @@ -76,10 +76,10 @@ try { // Count the number of records using the given key. If there is only // one, delete that record. if (cursor.count() == 1) { - System.out.println("Deleting " + - new String(theKey.getData(), "UTF-8") + - "|" + - new String(theData.getData(), "UTF-8")); + System.out.println("Deleting " + + new String(theKey.getData(), "UTF-8") + + "|" + + new String(theData.getData(), "UTF-8")); cursor.delete(); } } catch (Exception e) { @@ -93,18 +93,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Putting Records Using Cursors Putting Records Using Cursors  Home  Replacing Records Using Cursors Replacing Records Using Cursors
diff --git a/db/docs/gsg/JAVA/Positioning.html b/db/docs/gsg/JAVA/Positioning.html index 124446528..4f225806f 100644 --- a/db/docs/gsg/JAVA/Positioning.html +++ b/db/docs/gsg/JAVA/Positioning.html @@ -1,14 +1,14 @@ - + - + Getting Records Using the Cursor - - + + @@ -18,9 +18,9 @@ Getting Records Using the Cursor - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -81,13 +81,13 @@ try { // DatabaseEntry held a byte array representation of some other data // type (such as a complex object) then this operation would look // considerably different. - String keyString = new String(foundKey.getData(), "UTF-8"); - String dataString = new String(foundData.getData(), "UTF-8"); - System.out.println("Key | Data : " + keyString + " | " + - dataString + ""); + String keyString = new String(foundKey.getData(), "UTF-8"); + String dataString = new String(foundData.getData(), "UTF-8"); + System.out.println("Key | Data : " + keyString + " | " + + dataString + ""); } } catch (DatabaseException de) { - System.err.println("Error accessing database." + de); + System.err.println("Error accessing database." + de); } finally { // Cursors must be closed. cursor.close(); @@ -128,12 +128,12 @@ try { while (cursor.getPrev(foundKey, foundData, LockMode.DEFAULT) == OperationStatus.SUCCESS) { - String theKey = new String(foundKey.getData(), "UTF-8"); - String theData = new String(foundData.getData(), "UTF-8"); - System.out.println("Key | Data : " + theKey + " | " + theData + ""); + String theKey = new String(foundKey.getData(), "UTF-8"); + String theData = new String(foundData.getData(), "UTF-8"); + System.out.println("Key | Data : " + theKey + " | " + theData + ""); } } catch (DatabaseException de) { - System.err.println("Error accessing database." + de); + System.err.println("Error accessing database." + de); } finally { // Cursors must be closed. cursor.close(); @@ -188,7 +188,7 @@ try {

Identical to - + Cursor.getSearchKey() unless you are using the BTree access. In this case, the cursor moves @@ -319,8 +319,8 @@ import com.sleepycat.db.OperationStatus; ... // For this example, hard code the search key and data -String searchKey = "Alaska"; -String searchData = "Fa"; +String searchKey = "Alaska"; +String searchData = "Fa"; Cursor cursor = null; Database myDatabase = null; @@ -333,9 +333,9 @@ try { cursor = myDatabase.openCursor(null, null); DatabaseEntry theKey = - new DatabaseEntry(searchKey.getBytes("UTF-8")); + new DatabaseEntry(searchKey.getBytes("UTF-8")); DatabaseEntry theData = - new DatabaseEntry(searchData.getBytes("UTF-8")); + new DatabaseEntry(searchData.getBytes("UTF-8")); // Open a cursor using a database handle cursor = myDatabase.openCursor(null, null); @@ -346,18 +346,18 @@ try { // NOTFOUND is returned if a record cannot be found whose key // matches the search key AND whose data begins with the search data. if (retVal == OperationStatus.NOTFOUND) { - System.out.println(searchKey + "/" + searchData + - " not matched in database " + + System.out.println(searchKey + "/" + searchData + + " not matched in database " + myDatabase.getDatabaseName()); } else { // Upon completing a search, the key and data DatabaseEntry // parameters for getSearchBothRange() are populated with the // key/data values of the found record. - String foundKey = new String(theKey.getData(), "UTF-8"); - String foundData = new String(theData.getData(), "UTF-8"); - System.out.println("Found record " + foundKey + "/" + foundData + - "for search key/data: " + searchKey + - "/" + searchData); + String foundKey = new String(theKey.getData(), "UTF-8"); + String foundData = new String(theData.getData(), "UTF-8"); + System.out.println("Found record " + foundKey + "/" + foundData + + "for search key/data: " + searchKey + + "/" + searchData); } } catch (Exception e) { @@ -543,7 +543,7 @@ try { // Create DatabaseEntry objects // searchKey is some String. - DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); DatabaseEntry theData = new DatabaseEntry(); // Open a cursor using a database handle @@ -558,10 +558,10 @@ try { // print the duplicates. if (cursor.count() > 1) { while (retVal == OperationStatus.SUCCESS) { - String keyString = new String(theKey.getData(), "UTF-8"); - String dataString = new String(theData.getData(), "UTF-8"); - System.out.println("Key | Data : " + keyString + " | " + - dataString + ""); + String keyString = new String(theKey.getData(), "UTF-8"); + String dataString = new String(theData.getData(), "UTF-8"); + System.out.println("Key | Data : " + keyString + " | " + + dataString + ""); retVal = cursor.getNextDup(theKey, theData, LockMode.DEFAULT); } @@ -578,18 +578,18 @@ try {


- + - + - + - +
Prev Prev  Up  Next Next
Chapter 4. Using Cursors Chapter 4. Using Cursors  Home  Putting Records Using Cursors Putting Records Using Cursors
diff --git a/db/docs/gsg/JAVA/PutEntryWCursor.html b/db/docs/gsg/JAVA/PutEntryWCursor.html index cbad1a7ec..92e886419 100644 --- a/db/docs/gsg/JAVA/PutEntryWCursor.html +++ b/db/docs/gsg/JAVA/PutEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Putting Records Using Cursors - + @@ -18,9 +18,9 @@ Putting Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -147,11 +147,11 @@ import com.sleepycat.db.OperationStatus; ... // Create the data to put into the database -String key1str = "My first string"; -String data1str = "My first data"; -String key2str = "My second string"; -String data2str = "My second data"; -String data3str = "My third data"; +String key1str = "My first string"; +String data1str = "My first data"; +String key2str = "My second string"; +String data2str = "My second data"; +String data3str = "My third data"; Cursor cursor = null; Database myDatabase = null; @@ -160,11 +160,11 @@ try { // Database open omitted for brevity ... - DatabaseEntry key1 = new DatabaseEntry(key1str.getBytes("UTF-8")); - DatabaseEntry data1 = new DatabaseEntry(data1str.getBytes("UTF-8")); - DatabaseEntry key2 = new DatabaseEntry(key2str.getBytes("UTF-8")); - DatabaseEntry data2 = new DatabaseEntry(data2str.getBytes("UTF-8")); - DatabaseEntry data3 = new DatabaseEntry(data3str.getBytes("UTF-8")); + DatabaseEntry key1 = new DatabaseEntry(key1str.getBytes("UTF-8")); + DatabaseEntry data1 = new DatabaseEntry(data1str.getBytes("UTF-8")); + DatabaseEntry key2 = new DatabaseEntry(key2str.getBytes("UTF-8")); + DatabaseEntry data2 = new DatabaseEntry(data2str.getBytes("UTF-8")); + DatabaseEntry data3 = new DatabaseEntry(data3str.getBytes("UTF-8")); // Open a cursor using a database handle cursor = myDatabase.openCursor(null, null); @@ -187,18 +187,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Getting Records Using the Cursor Getting Records Using the Cursor  Home  Deleting Records Using Cursors Deleting Records Using Cursors
diff --git a/db/docs/gsg/JAVA/ReplacingEntryWCursor.html b/db/docs/gsg/JAVA/ReplacingEntryWCursor.html index beb492675..f7f787f5d 100644 --- a/db/docs/gsg/JAVA/ReplacingEntryWCursor.html +++ b/db/docs/gsg/JAVA/ReplacingEntryWCursor.html @@ -1,13 +1,13 @@ - + - + Replacing Records Using Cursors - + @@ -18,9 +18,9 @@ Replacing Records Using Cursors - Prev  - Chapter 4. Using Cursors -  Next + Prev  + Chapter 4. Using Cursors +  Next
@@ -61,7 +61,7 @@ try { ... // Create DatabaseEntry objects // searchKey is some String. - DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(searchKey.getBytes("UTF-8")); DatabaseEntry theData = new DatabaseEntry(); // Open a cursor using a database handle @@ -72,9 +72,9 @@ try { LockMode.DEFAULT); // Replacement data - String replaceStr = "My replacement string"; + String replaceStr = "My replacement string"; DatabaseEntry replacementData = - new DatabaseEntry(replaceStr.getBytes("UTF-8")); + new DatabaseEntry(replaceStr.getBytes("UTF-8")); cursor.putCurrent(replacementData); } catch (Exception e) { // Exception handling goes here @@ -113,18 +113,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Deleting Records Using Cursors Deleting Records Using Cursors  Home  Cursor Example Cursor Example
diff --git a/db/docs/gsg/JAVA/accessmethods.html b/db/docs/gsg/JAVA/accessmethods.html index dcbd74844..cbcc86fcb 100644 --- a/db/docs/gsg/JAVA/accessmethods.html +++ b/db/docs/gsg/JAVA/accessmethods.html @@ -1,13 +1,13 @@ - + - + Access Methods - + @@ -18,9 +18,9 @@ Access Methods - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -262,18 +262,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Berkeley DB Concepts Berkeley DB Concepts  Home  Database Limits and Portability Database Limits and Portability
diff --git a/db/docs/gsg/JAVA/bindAPI.html b/db/docs/gsg/JAVA/bindAPI.html index b8ce535ef..b9d0226b8 100644 --- a/db/docs/gsg/JAVA/bindAPI.html +++ b/db/docs/gsg/JAVA/bindAPI.html @@ -1,13 +1,13 @@ - + - + Using the BIND APIs - + @@ -18,9 +18,9 @@ Using the BIND APIs - Prev  - Chapter 3. Database Records -  Next + Prev  + Chapter 3. Database Records +  Next
@@ -161,8 +161,8 @@ Database myDatabase = null; // Need a key for the put. try { - String aKey = "myLong"; - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + String aKey = "myLong"; + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); // Now build the DatabaseEntry using a TupleBinding Long myLong = new Long(123456789l); @@ -194,8 +194,8 @@ Database myDatabase = null; try { // Need a key for the get - String aKey = "myLong"; - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + String aKey = "myLong"; + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); // Need a DatabaseEntry to hold the associated data. DatabaseEntry theData = new DatabaseEntry(); @@ -212,11 +212,11 @@ try { // Use the binding to convert the byte array contained in theData // to a Long type. Long theLong = (Long) myBinding.entryToObject(theData); - retKey = new String(theKey.getData(), "UTF-8"); - System.out.println("For key: '" + retKey + "' found Long: '" + - theLong + "'."); + retKey = new String(theKey.getData(), "UTF-8"); + System.out.println("For key: '" + retKey + "' found Long: '" + + theLong + "'."); } else { - System.out.println("No record found for key '" + retKey + "'."); + System.out.println("No record found for key '" + retKey + "'."); } } catch (Exception e) { // Exception handling goes here @@ -247,7 +247,7 @@ try { serialization. While this is functionally a correct solution, the result is poor space-performance because this causes the class information to be stored on every such database record. This information can be quite large - and it is redundant — the class information does not vary for serialized objects of the same type. + and it is redundant — the class information does not vary for serialized objects of the same type.

In other words, directly using serialization to place your objects into byte @@ -412,13 +412,13 @@ import com.sleepycat.db.DatabaseType; ... // The key data. -String aKey = "myData"; +String aKey = "myData"; // The data data MyData data2Store = new MyData(); data2Store.setLong(123456789l); data2Store.setDouble(1234.9876543); -data2Store.setDescription("A test instance of this class"); +data2Store.setDescription("A test instance of this class"); try { // Open the database that you will use to store your data @@ -426,13 +426,13 @@ try { myDbConfig.setAllowCreate(true); myDbConfig.setSortedDuplicates(true); myDbConfig.setType(DatabaseType.BTREE); - Database myDatabase = new Database("myDb", null, myDbConfig); + Database myDatabase = new Database("myDb", null, myDbConfig); // Open the database that you use to store your class information. // The db used to store class information does not require duplicates // support. myDbConfig.setSortedDuplicates(false); - Database myClassDb = new Database("classDb", null, myDbConfig); + Database myClassDb = new Database("classDb", null, myDbConfig); // Instantiate the class catalog StoredClassCatalog classCatalog = new StoredClassCatalog(myClassDb); @@ -442,7 +442,7 @@ try { MyData.class); // Create the DatabaseEntry for the key - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); // Create the DatabaseEntry for the data. Use the EntryBinding object // that was just created to populate the DatabaseEntry @@ -485,17 +485,17 @@ import com.sleepycat.db.LockMode; ... // The key data. -String aKey = "myData"; +String aKey = "myData"; try { // Open the database that stores your data DatabaseConfig myDbConfig = new DatabaseConfig(); myDbConfig.setAllowCreate(false); myDbConfig.setType(DatabaseType.BTREE); - Database myDatabase = new Database("myDb", null, myDbConfig); + Database myDatabase = new Database("myDb", null, myDbConfig); // Open the database that stores your class information. - Database myClassDb = new Database("classDb", null, myDbConfig); + Database myClassDb = new Database("classDb", null, myDbConfig); // Instantiate the class catalog StoredClassCatalog classCatalog = new StoredClassCatalog(myClassDb); @@ -505,7 +505,7 @@ try { MyData.class); // Create DatabaseEntry objects for the key and data - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); DatabaseEntry theData = new DatabaseEntry(); // Do the get as normal @@ -585,7 +585,7 @@ public class MyData2 { public MyData2() { longData = 0; doubleData = new Double(0.0); - description = ""; + description = ""; } public void setLong(long data) { @@ -724,7 +724,7 @@ TupleBinding keyBinding = new MyTupleBinding(); MyData2 theKeyData = new MyData2(); theKeyData.setLong(123456789l); theKeyData.setDouble(new Double(12345.6789)); -theKeyData.setString("My key data"); +theKeyData.setString("My key data"); DatabaseEntry myKey = new DatabaseEntry(); @@ -747,18 +747,18 @@ try {


- + - + - + - +
Prev Prev  Up  Next Next
Reading and Writing Database Records Reading and Writing Database Records  Home  Database Usage Example Database Usage Example
diff --git a/db/docs/gsg/JAVA/btree.html b/db/docs/gsg/JAVA/btree.html index fc2545ee2..4bec710fd 100644 --- a/db/docs/gsg/JAVA/btree.html +++ b/db/docs/gsg/JAVA/btree.html @@ -1,13 +1,13 @@ - + - + BTree Configuration - + @@ -17,9 +17,9 @@ BTree Configuration - Prev  - Chapter 6. Database Configuration -   + Prev  + Chapter 6. Database Configuration +  
@@ -328,12 +328,12 @@ try { myDbConfig.setSortedDuplicates(true); // Open the database - myDb = new Database("mydb.db", null, myDbConfig); + myDb = new Database("mydb.db", null, myDbConfig); } catch(DatabaseException dbe) { - System.err.println("MyDbs: " + dbe.toString()); + System.err.println("MyDbs: " + dbe.toString()); System.exit(-1); } catch(FileNotFoundException fnfe) { - System.err.println("MyDbs: " + fnfe.toString()); + System.err.println("MyDbs: " + fnfe.toString()); System.exit(-1); } @@ -458,7 +458,7 @@ try { comparator that uses String.compareTo(), which performs a Unicode comparison of two strings (note that for single-byte roman characters, Unicode comparison and UTF-8 - byte-by-byte comparisons are identical – this is something you + byte-by-byte comparisons are identical – this is something you would only want to do if you were using multibyte unicode characters with DB). In this case, your comparator would look like the following: @@ -508,7 +508,7 @@ try { // Open the database that you will use to store your data myDbConfig.setSortedDuplicates(true); - myDatabase = new Database("myDb", null, myDbConfig); + myDatabase = new Database("myDb", null, myDbConfig); } catch (DatabaseException dbe) { // Exception handling goes here } catch (FileNotFoundException fnfe) { @@ -521,18 +521,18 @@ try {
- + - + - + - +
Prev Prev  Up  Â 
Selecting the Cache Size Selecting the Cache Size  Home  Â 
diff --git a/db/docs/gsg/JAVA/cachesize.html b/db/docs/gsg/JAVA/cachesize.html index ace996d76..0590e5c10 100644 --- a/db/docs/gsg/JAVA/cachesize.html +++ b/db/docs/gsg/JAVA/cachesize.html @@ -1,14 +1,14 @@ - + - + Selecting the Cache Size - - + + @@ -18,9 +18,9 @@ Selecting the Cache Size - Prev  - Chapter 6. Database Configuration -  Next + Prev  + Chapter 6. Database Configuration +  Next
@@ -56,14 +56,14 @@ available memory and performance considerations.

- Selecting a cache size is something of an art, but fortunately it is - selected at database (or environment) open time, so it can be easily - tuned to your application's data requirements as they change over time. - The best way to determine how large your cache needs to be is to put - your application into a production environment and watch to see how much - disk I/O is occurring. If your application is going to disk quite a lot - to retrieve database records, then you should increase the size of your - cache (provided that you have enough memory to do so). + Selecting a cache size is something of an art, but fortunately you + can change it any time, so it can be easily tuned to your + application's changing data requirements. The best way to + determine how large your cache needs to be is to put your + application into a production environment and watch to see how much + disk I/O is occurring. If your application is going to disk quite a + lot to retrieve database records, then you should increase the size + of your cache (provided that you have enough memory to do so).

You can use the db_stat command line utility with the @@ -79,18 +79,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Chapter 6. Database Configuration Chapter 6. Database Configuration  Home  BTree Configuration BTree Configuration
diff --git a/db/docs/gsg/JAVA/concepts.html b/db/docs/gsg/JAVA/concepts.html index 161e6a25b..53cababbe 100644 --- a/db/docs/gsg/JAVA/concepts.html +++ b/db/docs/gsg/JAVA/concepts.html @@ -1,14 +1,14 @@ - + - + Berkeley DB Concepts - - + + @@ -18,9 +18,9 @@ Berkeley DB Concepts - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -149,18 +149,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction to Berkeley DB  Chapter 1. Introduction to Berkeley DB   Home  Access Methods Access Methods
diff --git a/db/docs/gsg/JAVA/coreExceptions.html b/db/docs/gsg/JAVA/coreExceptions.html index f3b8ae4b2..9d830e40d 100644 --- a/db/docs/gsg/JAVA/coreExceptions.html +++ b/db/docs/gsg/JAVA/coreExceptions.html @@ -1,13 +1,13 @@ - + - + Exception Handling - + @@ -18,9 +18,9 @@ Exception Handling - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -83,18 +83,18 @@ catch(DatabaseException e)
- + - + - + - +
Prev Prev  Up  Next Next
Environments Environments  Home  Error Returns Error Returns
diff --git a/db/docs/gsg/JAVA/coredbclose.html b/db/docs/gsg/JAVA/coredbclose.html index 6ded493dc..45996d414 100644 --- a/db/docs/gsg/JAVA/coredbclose.html +++ b/db/docs/gsg/JAVA/coredbclose.html @@ -1,14 +1,14 @@ - + - + Closing Databases - - + + @@ -18,9 +18,9 @@ Closing Databases - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -84,18 +84,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 2. Databases Chapter 2. Databases  Home  Database Properties Database Properties
diff --git a/db/docs/gsg/JAVA/cursorJavaUsage.html b/db/docs/gsg/JAVA/cursorJavaUsage.html index c75134a34..dd485c8a8 100644 --- a/db/docs/gsg/JAVA/cursorJavaUsage.html +++ b/db/docs/gsg/JAVA/cursorJavaUsage.html @@ -1,15 +1,15 @@ - + - + Cursor Example - + - + diff --git a/db/docs/gsg/JAVA/databaseLimits.html b/db/docs/gsg/JAVA/databaseLimits.html index 15c23a81c..abf321bdc 100644 --- a/db/docs/gsg/JAVA/databaseLimits.html +++ b/db/docs/gsg/JAVA/databaseLimits.html @@ -1,13 +1,13 @@ - + - + Database Limits and Portability - + @@ -18,9 +18,9 @@ Database Limits and Portability - Prev  - Chapter 1. Introduction to Berkeley DB -  Next + Prev  + Chapter 1. Introduction to Berkeley DB +  Next
@@ -50,7 +50,7 @@

Also, DB's databases and data structures are designed for concurrent - access — they are thread-safe, and they share well across multiple + access — they are thread-safe, and they share well across multiple processes. That said, in order to allow multiple processes to share databases and the cache, DB makes use of mechanisms that do not work well on network-shared drives (NFS or Windows networks shares, for @@ -62,18 +62,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Access Methods Access Methods  Home  Environments Environments
diff --git a/db/docs/gsg/JAVA/dbErrorReporting.html b/db/docs/gsg/JAVA/dbErrorReporting.html index 261db41fb..c609ee23a 100644 --- a/db/docs/gsg/JAVA/dbErrorReporting.html +++ b/db/docs/gsg/JAVA/dbErrorReporting.html @@ -1,13 +1,13 @@ - + - + Error Reporting Functions - + @@ -18,9 +18,9 @@ Error Reporting Functions - Prev  - Chapter 2. Databases -  Next + Prev  + Chapter 2. Databases +  Next
@@ -128,18 +128,18 @@ myDbConfig.setMessageHandler(mmh);
- + - + - + - +
Prev Prev  Up  Next Next
Administrative Methods Administrative Methods  Home  Managing Databases in Environments Managing Databases in Environments
diff --git a/db/docs/gsg/JAVA/dbconfig.html b/db/docs/gsg/JAVA/dbconfig.html index cf7d93bbe..f45dbce5d 100644 --- a/db/docs/gsg/JAVA/dbconfig.html +++ b/db/docs/gsg/JAVA/dbconfig.html @@ -1,9 +1,9 @@ - + - - Chapter 6. Database Configuration + + Chapter 6. Database Configuration @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg/JAVA/gettingit.html b/db/docs/gsg/JAVA/gettingit.html index c84496093..a04c82710 100644 --- a/db/docs/gsg/JAVA/gettingit.html +++ b/db/docs/gsg/JAVA/gettingit.html @@ -1,15 +1,15 @@ - + - + Getting and Using DB - + - + diff --git a/db/docs/gsg/JAVA/index.html b/db/docs/gsg/JAVA/index.html index 8e7bfdf61..fbd9b617e 100644 --- a/db/docs/gsg/JAVA/index.html +++ b/db/docs/gsg/JAVA/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB @@ -16,9 +16,9 @@ Getting Started with Berkeley DB -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Berkeley DB

+

Getting Started with Berkeley DB

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,12 +47,12 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

- Java™ and all Java-based marks are a trademark + Javaâ„¢ and all Java-based marks are a trademark or registered trademark of Sun Microsystems, Inc, in the United States and other countries.

@@ -66,7 +66,7 @@
-

9/20/2006

+

6/30/2007

@@ -357,6 +357,15 @@
+
+
+
+ + Working with Multiple Keys + +
+
+
Secondary Database Properties @@ -506,14 +515,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg/JAVA/indexes.html b/db/docs/gsg/JAVA/indexes.html index 59182ab2e..3b6c3e94b 100644 --- a/db/docs/gsg/JAVA/indexes.html +++ b/db/docs/gsg/JAVA/indexes.html @@ -1,9 +1,9 @@ - + - - Chapter 5. Secondary Databases + + Chapter 5. Secondary Databases @@ -15,12 +15,12 @@
+
+
+
+ + Working with Multiple Keys + +
+
+
Secondary Database Properties @@ -128,7 +137,7 @@ people such as names, addresses, phone numbers, and so forth. While your application may frequently want to query a person by user ID (that is, by the information stored in the key), it may also on occasion - want to location people by, say, their name. + want to locate people by, say, their name.

Rather than iterate through all of the records in your database, examining @@ -318,7 +327,7 @@ mySecConfig.setSortedDuplicates(true); Database myDb = null; SecondaryDatabase mySecDb = null; try { - String dbName = "myPrimaryDatabase"; + String dbName = "myPrimaryDatabase"; myDb = new Database(dbName, null, myDbConfig); @@ -335,7 +344,7 @@ try { mySecConfig.setKeyCreator(keyCreator); // Perform the actual open - String secDbName = "mySecondaryDatabase"; + String secDbName = "mySecondaryDatabase"; mySecDb = new SecondaryDatabase(secDbName, null, myDb, mySecConfig); } catch (DatabaseException de) { // Exception handling goes here ... @@ -364,18 +373,18 @@ try {


- + - + - + - diff --git a/db/docs/gsg/JAVA/introduction.html b/db/docs/gsg/JAVA/introduction.html index fad63309c..7969e765b 100644 --- a/db/docs/gsg/JAVA/introduction.html +++ b/db/docs/gsg/JAVA/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction to Berkeley DB + + Chapter 1. Introduction to Berkeley DB @@ -15,12 +15,12 @@
Prev Prev  Up  Next Next
Cursor Example Cursor Example  Home  Implementing Key +  Implementing Key Creators
- + - - - + + +
Chapter 1. Introduction to Berkeley DB Chapter 1. Introduction to Berkeley DB
Prev   NextPrev   Next

@@ -29,7 +29,7 @@
-

Chapter 1. Introduction to Berkeley DB

+

Chapter 1. Introduction to Berkeley DB

@@ -215,18 +215,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Preface Preface  Home  Berkeley DB Concepts Berkeley DB Concepts
diff --git a/db/docs/gsg/JAVA/javaindexusage.html b/db/docs/gsg/JAVA/javaindexusage.html index ddb17114d..897d83c13 100644 --- a/db/docs/gsg/JAVA/javaindexusage.html +++ b/db/docs/gsg/JAVA/javaindexusage.html @@ -1,15 +1,15 @@ - + - + Secondary Database Example - + - + diff --git a/db/docs/gsg/JAVA/joins.html b/db/docs/gsg/JAVA/joins.html index 15a0654e3..d43f9e6e1 100644 --- a/db/docs/gsg/JAVA/joins.html +++ b/db/docs/gsg/JAVA/joins.html @@ -1,13 +1,13 @@ - + - + Database Joins - + @@ -18,9 +18,9 @@ Database Joins - Prev  - Chapter 5. Secondary Databases -  Next + Prev  + Chapter 5. Secondary Databases +  Next
@@ -104,7 +104,6 @@ using a JoinCursor class instance. -

@@ -183,7 +182,6 @@

For example: -

package db.GettingStarted;
@@ -212,9 +210,9 @@ SecondaryDatabase automotiveTypeDB = null;
 SecondaryDatabase automotiveMakeDB = null;
 
 // Query strings:
-String theColor = "red";
-String theType = "minivan";
-String theMake = "Toyota";
+String theColor = "red";
+String theType = "minivan";
+String theMake = "Toyota";
 
 // Secondary cursors used for the query:
 SecondaryCursor colorSecCursor = null;
@@ -233,9 +231,9 @@ DatabaseEntry foundData = new DatabaseEntry();
 
 try {
     // Database entries used for the query:
-    DatabaseEntry color = new DatabaseEntry(theColor.getBytes("UTF-8"));
-    DatabaseEntry type = new DatabaseEntry(theType.getBytes("UTF-8"));
-    DatabaseEntry make = new DatabaseEntry(theMake.getBytes("UTF-8"));
+    DatabaseEntry color = new DatabaseEntry(theColor.getBytes("UTF-8"));
+    DatabaseEntry type = new DatabaseEntry(theType.getBytes("UTF-8"));
+    DatabaseEntry make = new DatabaseEntry(theMake.getBytes("UTF-8"));
 
     colorSecCursor = automotiveColorDB.openSecondaryCursor(null, null); 
     typeSecCursor = automotiveTypeDB.openSecondaryCursor(null, null); 
@@ -346,21 +344,21 @@ JoinCursor joinCursor = myDb.join(cursorArray, config); 

- + - + +   - +
Prev Prev  Up  Next Next
Using Secondary Cursors -   Home  Secondary Database Example Secondary Database Example
diff --git a/db/docs/gsg/JAVA/keyCreator.html b/db/docs/gsg/JAVA/keyCreator.html index 09f087522..3ea8f0239 100644 --- a/db/docs/gsg/JAVA/keyCreator.html +++ b/db/docs/gsg/JAVA/keyCreator.html @@ -1,8 +1,8 @@ - + - + Implementing Key Creators @@ -10,8 +10,8 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB" /> - <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> - <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="up" href="indexes.html" title="Chapter 5. Secondary Databases" /> + <link rel="previous" href="indexes.html" title="Chapter 5. Secondary Databases" /> <link rel="next" href="secondaryProps.html" title="Secondary Database Properties" /> </head> <body> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. Secondary Databases</th> - <td width="20%" align="right"> <a accesskey="n" href="secondaryProps.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <th width="60%" align="center">Chapter 5. Secondary Databases</th> + <td width="20%" align="right"> <a accesskey="n" href="secondaryProps.html">Next</a></td> </tr> </table> <hr /> @@ -159,9 +159,9 @@ public class FullNameKeyCreator implements SecondaryKeyCreator { try { PersonData pd = (PersonData) theBinding.entryToObject(dataEntry); - String fullName = pd.getFamiliarName() + " " + + String fullName = pd.getFamiliarName() + " " + pd.getSurname(); - resultEntry.setData(fullName.getBytes("UTF-8")); + resultEntry.setData(fullName.getBytes("UTF-8")); } catch (IOException willNeverOccur) {} return true; } @@ -195,7 +195,7 @@ try { mySecConfig.setType(DatabaseType.BTREE); //Perform the actual open - String secDbName = "mySecondaryDatabase"; + String secDbName = "mySecondaryDatabase"; mySecDb = new SecondaryDatabase(secDbName, null, myDb, mySecConfig); } catch (DatabaseException de) { // Exception handling goes here @@ -214,23 +214,108 @@ try { // Exception handling goes here } }</pre> + <div class="sect2" lang="en" xml:lang="en"> + <div class="titlepage"> + <div> + <div> + <h3 class="title"><a id="multikeys"></a>Working with Multiple Keys</h3> + </div> + </div> + <div></div> + </div> + <p> + Until now we have only discussed indexes as if there is + a one-to-one relationship between the secondary key and + the primary database record. In fact, it is possible to + generate multiple keys for any given record, provided + that you take appropriate steps in your key creator + to do so. + </p> + <p> + For example, suppose you had a database that contained + information about books. Suppose further that you + sometimes want to look up books by author. Because + sometimes books have multiple authors, you may want to + return multiple secondary keys for every book that you + index. + </p> + <p> + To do this, you write a key creator that implements + <tt class="classname">SecondaryMultiKeyCreator</tt> + instead of + <tt class="classname">SecondaryKeyCreator</tt>. The key + difference between the two is that + <tt class="classname">SecondaryKeyCreator</tt> + uses a single <tt class="classname">DatabaseEntry</tt> + object as the result, while + <tt class="classname">SecondaryMultiKeyCreator</tt> + returns a set of <tt class="classname">DatabaseEntry</tt> + objects (using <tt class="classname">java.util.Set</tt>). + Also, you assign the + <tt class="classname">SecondaryMultiKeyCreator</tt> + implementation using + <tt class="methodname">SecondaryConfig.setMultiKeyCreator()</tt> + instead of + <tt class="methodname">SecondaryConfig.setKeyCreator()</tt>. + </p> + <p> + For example: + </p> + <pre class="programlisting">package db.GettingStarted; + +import com.sleepycat.db.DatabaseEntry; +import com.sleepycat.db.DatabaseException; +import com.sleepycat.db.SecondaryDatabase; +import com.sleepycat.db.SecondaryMultiKeyCreator; + +import java.util.HashSet; +import java.util.Set; + +public class MyMultiKeyCreator implements SecondaryMultiKeyCreator { + + // Constructor not implemented. How this is implemented depends on + // how you want to extract the data for your keys. + MyMultiKeyCreator() { + ... + } + + // Abstract method that we must implement + public void createSecondaryKeys(SecondaryDatabase secDb, + DatabaseEntry keyEntry, // From the primary + DatabaseEntry dataEntry, // From the primary + Set results) // Results set + throws DatabaseException { + + try { + // Create your keys, adding each to the set + + // Creation of key 'a' not shown + results.add(a) + + // Creation of key 'b' not shown + results.add(b) + + } catch (IOException willNeverOccur) {} + } +} </pre> + </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="indexes.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="indexes.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="secondaryProps.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="secondaryProps.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> + <td width="40%" align="left" valign="top">Chapter 5. Secondary Databases </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Secondary Database Properties</td> + <td width="40%" align="right" valign="top"> Secondary Database Properties</td> </tr> </table> </div> diff --git a/db/docs/gsg/JAVA/preface.html b/db/docs/gsg/JAVA/preface.html index afd10d9f0..f32ee8247 100644 --- a/db/docs/gsg/JAVA/preface.html +++ b/db/docs/gsg/JAVA/preface.html @@ -1,15 +1,15 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Preface - + diff --git a/db/docs/gsg/JAVA/usingDbt.html b/db/docs/gsg/JAVA/usingDbt.html index 6d6253699..5339e3042 100644 --- a/db/docs/gsg/JAVA/usingDbt.html +++ b/db/docs/gsg/JAVA/usingDbt.html @@ -1,14 +1,14 @@ - + - + Reading and Writing Database Records - - + + @@ -18,9 +18,9 @@ Reading and Writing Database Records - Prev  - Chapter 3. Database Records -  Next + Prev  + Chapter 3. Database Records +  Next
@@ -157,12 +157,12 @@ import com.sleepycat.db.Database; // Database opens omitted for clarity. // Databases must NOT be opened read-only. -String aKey = "myFirstKey"; -String aData = "myFirstData"; +String aKey = "myFirstKey"; +String aData = "myFirstData"; try { - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); - DatabaseEntry theData = new DatabaseEntry(aData.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + DatabaseEntry theData = new DatabaseEntry(aData.getBytes("UTF-8")); myDatabase.put(null, theKey, theData); } catch (Exception e) { // Exception handling goes here @@ -232,13 +232,13 @@ Database myDatabase = null; // Database opens omitted for clarity. // Database may be opened read-only. -String aKey = "myFirstKey"; +String aKey = "myFirstKey"; try { // Create a pair of DatabaseEntry objects. theKey // is used to perform the search. theData is used // to store the data returned by the get() operation. - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); DatabaseEntry theData = new DatabaseEntry(); // Perform the get. @@ -247,11 +247,11 @@ try { // Recreate the data String. byte[] retData = theData.getData(); - String foundData = new String(retData, "UTF-8"); - System.out.println("For key: '" + aKey + "' found data: '" + - foundData + "'."); + String foundData = new String(retData, "UTF-8"); + System.out.println("For key: '" + aKey + "' found data: '" + + foundData + "'."); } else { - System.out.println("No record found for key '" + aKey + "'."); + System.out.println("No record found for key '" + aKey + "'."); } } catch (Exception e) { // Exception handling goes here @@ -298,8 +298,8 @@ Database myDatabase = null; // Database can NOT be opened read-only. try { - String aKey = "myFirstKey"; - DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); + String aKey = "myFirstKey"; + DatabaseEntry theKey = new DatabaseEntry(aKey.getBytes("UTF-8")); // Perform the deletion. All records that use this key are // deleted. @@ -405,18 +405,18 @@ try {
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 3. Database Records Chapter 3. Database Records  Home  Using the BIND APIs Using the BIND APIs
diff --git a/db/docs/gsg_db_rep/C/Replication-C-GSG.pdf b/db/docs/gsg_db_rep/C/Replication-C-GSG.pdf index 85cdab4d0..a81b85500 100644 Binary files a/db/docs/gsg_db_rep/C/Replication-C-GSG.pdf and b/db/docs/gsg_db_rep/C/Replication-C-GSG.pdf differ diff --git a/db/docs/gsg_db_rep/C/addfeatures.html b/db/docs/gsg_db_rep/C/addfeatures.html index 117a07589..679f365bd 100644 --- a/db/docs/gsg_db_rep/C/addfeatures.html +++ b/db/docs/gsg_db_rep/C/addfeatures.html @@ -1,9 +1,9 @@ - + - - Chapter 5. Additional Features + + Chapter 5. Additional Features @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/C/bulk.html b/db/docs/gsg_db_rep/C/bulk.html index b339aa6c8..517619400 100644 --- a/db/docs/gsg_db_rep/C/bulk.html +++ b/db/docs/gsg_db_rep/C/bulk.html @@ -1,13 +1,13 @@ - + - + Bulk Transfers - + @@ -17,9 +17,9 @@ Bulk Transfers - Prev  - Chapter 5. Additional Features -   + Prev  + Chapter 5. Additional Features +  
@@ -120,18 +120,18 @@
- + - + - + - +
Prev Prev  Up  Â 
Client to Client Transfer Client to Client Transfer  Home  Â 
diff --git a/db/docs/gsg_db_rep/C/c2ctransfer.html b/db/docs/gsg_db_rep/C/c2ctransfer.html index 8145d4000..8dfc8ce29 100644 --- a/db/docs/gsg_db_rep/C/c2ctransfer.html +++ b/db/docs/gsg_db_rep/C/c2ctransfer.html @@ -1,13 +1,13 @@ - + - + Client to Client Transfer - + @@ -18,9 +18,9 @@ Client to Client Transfer - Prev  - Chapter 5. Additional Features -  Next + Prev  + Chapter 5. Additional Features +  Next
@@ -112,18 +112,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Stop Auto-Initialization Stop Auto-Initialization  Home  Bulk Transfers Bulk Transfers
diff --git a/db/docs/gsg_db_rep/C/elections.html b/db/docs/gsg_db_rep/C/elections.html index 8157cf14a..5d67963fe 100644 --- a/db/docs/gsg_db_rep/C/elections.html +++ b/db/docs/gsg_db_rep/C/elections.html @@ -1,13 +1,13 @@ - + - + Holding Elections - + @@ -18,9 +18,9 @@ Holding Elections - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -208,18 +208,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
The Replication APIs The Replication APIs  Home  Permanent Message Handling Permanent Message Handling
diff --git a/db/docs/gsg_db_rep/C/electiontimes.html b/db/docs/gsg_db_rep/C/electiontimes.html index 8f6a2cf9e..213165dee 100644 --- a/db/docs/gsg_db_rep/C/electiontimes.html +++ b/db/docs/gsg_db_rep/C/electiontimes.html @@ -1,13 +1,13 @@ - + - + Managing Election Times - + @@ -18,9 +18,9 @@ Managing Election Times - Prev  - Chapter 3. The DB Replication Framework -  Next + Prev  + Chapter 3. The DB Replication Framework +  Next
@@ -133,18 +133,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Permanent Message Handling Permanent Message Handling  Home  Managing Connection Retries Managing Connection Retries
diff --git a/db/docs/gsg_db_rep/C/exampledoloop.html b/db/docs/gsg_db_rep/C/exampledoloop.html index 859f4a837..743eeba57 100644 --- a/db/docs/gsg_db_rep/C/exampledoloop.html +++ b/db/docs/gsg_db_rep/C/exampledoloop.html @@ -1,15 +1,15 @@ - + - + Example Processing Loop - + - + diff --git a/db/docs/gsg_db_rep/C/fmwrkconnectretry.html b/db/docs/gsg_db_rep/C/fmwrkconnectretry.html index c86b01c37..e1ff4ab1e 100644 --- a/db/docs/gsg_db_rep/C/fmwrkconnectretry.html +++ b/db/docs/gsg_db_rep/C/fmwrkconnectretry.html @@ -1,15 +1,15 @@ - + - + Managing Connection Retries - + - + diff --git a/db/docs/gsg_db_rep/C/fwrkmasterreplica.html b/db/docs/gsg_db_rep/C/fwrkmasterreplica.html index 975bdd027..3951204cd 100644 --- a/db/docs/gsg_db_rep/C/fwrkmasterreplica.html +++ b/db/docs/gsg_db_rep/C/fwrkmasterreplica.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Replica versus Master Processes + + Chapter 4. Replica versus Master Processes @@ -15,12 +15,12 @@ @@ -333,21 +333,21 @@
- + - + +   - +
Prev Prev  Up  Next Next
Adding the Replication Framework to simple_txn -   Home  Managing Election Times Managing Election Times
diff --git a/db/docs/gsg_db_rep/C/index.html b/db/docs/gsg_db_rep/C/index.html index 4fe9dc3af..0d1b9208e 100644 --- a/db/docs/gsg_db_rep/C/index.html +++ b/db/docs/gsg_db_rep/C/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Replicated Berkeley DB Applications @@ -16,9 +16,9 @@ Getting Started with Replicated Berkeley DB Applications -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Replicated Berkeley DB Applications

+

Getting Started with Replicated Berkeley DB Applications

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

-

9/20/2006

+

6/30/2007

@@ -432,14 +432,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg_db_rep/C/introduction.html b/db/docs/gsg_db_rep/C/introduction.html index e3368a9c3..6d0059d98 100644 --- a/db/docs/gsg_db_rep/C/introduction.html +++ b/db/docs/gsg_db_rep/C/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/C/noautoinit.html b/db/docs/gsg_db_rep/C/noautoinit.html index 85771bd35..87b0fed6d 100644 --- a/db/docs/gsg_db_rep/C/noautoinit.html +++ b/db/docs/gsg_db_rep/C/noautoinit.html @@ -1,13 +1,13 @@ - + - + Stop Auto-Initialization - + @@ -18,9 +18,9 @@ Stop Auto-Initialization - Prev  - Chapter 5. Additional Features -  Next + Prev  + Chapter 5. Additional Features +  Next
@@ -69,18 +69,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Managing Blocking Operations Managing Blocking Operations  Home  Client to Client Transfer Client to Client Transfer
diff --git a/db/docs/gsg_db_rep/C/permmessages.html b/db/docs/gsg_db_rep/C/permmessages.html index c2ed56f92..d2e2b8d0f 100644 --- a/db/docs/gsg_db_rep/C/permmessages.html +++ b/db/docs/gsg_db_rep/C/permmessages.html @@ -1,15 +1,15 @@ - + - + Permanent Message Handling - + - + diff --git a/db/docs/gsg_db_rep/C/preface.html b/db/docs/gsg_db_rep/C/preface.html index db9d98bdc..41d4726ac 100644 --- a/db/docs/gsg_db_rep/C/preface.html +++ b/db/docs/gsg_db_rep/C/preface.html @@ -1,15 +1,15 @@ - + - + Preface - + diff --git a/db/docs/gsg_db_rep/C/processingloop.html b/db/docs/gsg_db_rep/C/processingloop.html index 94c0035a9..e6eecfe03 100644 --- a/db/docs/gsg_db_rep/C/processingloop.html +++ b/db/docs/gsg_db_rep/C/processingloop.html @@ -1,14 +1,14 @@ - + - + Processing Loop - - + + @@ -18,9 +18,9 @@ Processing Loop - Prev  - Chapter 4. Replica versus Master Processes -  Next + Prev  + Chapter 4. Replica versus Master Processes +  Next
@@ -236,18 +236,18 @@ for (;;) {
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 4. Replica versus Master Processes Chapter 4. Replica versus Master Processes  Home  Example Processing Loop Example Processing Loop
diff --git a/db/docs/gsg_db_rep/C/repadvantage.html b/db/docs/gsg_db_rep/C/repadvantage.html index c7ab72c1a..3e001b900 100644 --- a/db/docs/gsg_db_rep/C/repadvantage.html +++ b/db/docs/gsg_db_rep/C/repadvantage.html @@ -1,14 +1,14 @@ - + - + Replication Benefits - - + + @@ -18,9 +18,9 @@ Replication Benefits - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -150,7 +150,7 @@ one or more replicas before continuing with the next operation. This will obviously impact your application's write performance to some degree - — with the performance penalty being largely dependent + — with the performance penalty being largely dependent upon the speed and stability of the network connecting your replication group.

@@ -165,18 +165,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction Chapter 1. Introduction  Home  The Replication APIs The Replication APIs
diff --git a/db/docs/gsg_db_rep/C/repapp.html b/db/docs/gsg_db_rep/C/repapp.html index d46f167d9..391f322fa 100644 --- a/db/docs/gsg_db_rep/C/repapp.html +++ b/db/docs/gsg_db_rep/C/repapp.html @@ -1,9 +1,9 @@ - + - - Chapter 3. The DB Replication Framework + + Chapter 3. The DB Replication Framework @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/C/txnapp.html b/db/docs/gsg_db_rep/C/txnapp.html index 5f3fe1446..b39bebdcb 100644 --- a/db/docs/gsg_db_rep/C/txnapp.html +++ b/db/docs/gsg_db_rep/C/txnapp.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Transactional Application + + Chapter 2. Transactional Application @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/CXX/c2ctransfer.html b/db/docs/gsg_db_rep/CXX/c2ctransfer.html index 13b479d0e..d9bae4e6d 100644 --- a/db/docs/gsg_db_rep/CXX/c2ctransfer.html +++ b/db/docs/gsg_db_rep/CXX/c2ctransfer.html @@ -1,13 +1,13 @@ - + - + Client to Client Transfer - + @@ -18,9 +18,9 @@ Client to Client Transfer - Prev  - Chapter 5. Additional Features -  Next + Prev  + Chapter 5. Additional Features +  Next
@@ -112,18 +112,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Stop Auto-Initialization Stop Auto-Initialization  Home  Bulk Transfers Bulk Transfers
diff --git a/db/docs/gsg_db_rep/CXX/elections.html b/db/docs/gsg_db_rep/CXX/elections.html index 8157cf14a..5d67963fe 100644 --- a/db/docs/gsg_db_rep/CXX/elections.html +++ b/db/docs/gsg_db_rep/CXX/elections.html @@ -1,13 +1,13 @@ - + - + Holding Elections - + @@ -18,9 +18,9 @@ Holding Elections - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -208,18 +208,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
The Replication APIs The Replication APIs  Home  Permanent Message Handling Permanent Message Handling
diff --git a/db/docs/gsg_db_rep/CXX/electiontimes.html b/db/docs/gsg_db_rep/CXX/electiontimes.html index c7c0318cf..27ec13afb 100644 --- a/db/docs/gsg_db_rep/CXX/electiontimes.html +++ b/db/docs/gsg_db_rep/CXX/electiontimes.html @@ -1,13 +1,13 @@ - + - + Managing Election Times - + @@ -18,9 +18,9 @@ Managing Election Times - Prev  - Chapter 3. The DB Replication Framework -  Next + Prev  + Chapter 3. The DB Replication Framework +  Next
@@ -133,18 +133,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Permanent Message Handling Permanent Message Handling  Home  Managing Connection Retries Managing Connection Retries
diff --git a/db/docs/gsg_db_rep/CXX/exampledoloop.html b/db/docs/gsg_db_rep/CXX/exampledoloop.html index 77c3c0780..e5374fedd 100644 --- a/db/docs/gsg_db_rep/CXX/exampledoloop.html +++ b/db/docs/gsg_db_rep/CXX/exampledoloop.html @@ -1,15 +1,15 @@ - + - + Example Processing Loop - + - + diff --git a/db/docs/gsg_db_rep/CXX/fmwrkconnectretry.html b/db/docs/gsg_db_rep/CXX/fmwrkconnectretry.html index 3d3890613..d0739789e 100644 --- a/db/docs/gsg_db_rep/CXX/fmwrkconnectretry.html +++ b/db/docs/gsg_db_rep/CXX/fmwrkconnectretry.html @@ -1,15 +1,15 @@ - + - + Managing Connection Retries - + - + diff --git a/db/docs/gsg_db_rep/CXX/fwrkmasterreplica.html b/db/docs/gsg_db_rep/CXX/fwrkmasterreplica.html index dc04d0f66..a53fb2c5e 100644 --- a/db/docs/gsg_db_rep/CXX/fwrkmasterreplica.html +++ b/db/docs/gsg_db_rep/CXX/fwrkmasterreplica.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Replica versus Master Processes + + Chapter 4. Replica versus Master Processes @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/CXX/index.html b/db/docs/gsg_db_rep/CXX/index.html index 8d9affd41..cddcc4bff 100644 --- a/db/docs/gsg_db_rep/CXX/index.html +++ b/db/docs/gsg_db_rep/CXX/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Replicated Berkeley DB Applications @@ -16,9 +16,9 @@ Getting Started with Replicated Berkeley DB Applications -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Replicated Berkeley DB Applications

+

Getting Started with Replicated Berkeley DB Applications

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

-

9/20/2006

+

6/30/2007

@@ -445,14 +445,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg_db_rep/CXX/introduction.html b/db/docs/gsg_db_rep/CXX/introduction.html index e23296295..de7e3d144 100644 --- a/db/docs/gsg_db_rep/CXX/introduction.html +++ b/db/docs/gsg_db_rep/CXX/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/CXX/noautoinit.html b/db/docs/gsg_db_rep/CXX/noautoinit.html index a3aaa2145..a9044c6a5 100644 --- a/db/docs/gsg_db_rep/CXX/noautoinit.html +++ b/db/docs/gsg_db_rep/CXX/noautoinit.html @@ -1,13 +1,13 @@ - + - + Stop Auto-Initialization - + @@ -18,9 +18,9 @@ Stop Auto-Initialization - Prev  - Chapter 5. Additional Features -  Next + Prev  + Chapter 5. Additional Features +  Next
@@ -69,18 +69,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Managing Blocking Operations Managing Blocking Operations  Home  Client to Client Transfer Client to Client Transfer
diff --git a/db/docs/gsg_db_rep/CXX/permmessages.html b/db/docs/gsg_db_rep/CXX/permmessages.html index b404585b8..889ba69b8 100644 --- a/db/docs/gsg_db_rep/CXX/permmessages.html +++ b/db/docs/gsg_db_rep/CXX/permmessages.html @@ -1,15 +1,15 @@ - + - + Permanent Message Handling - + - + diff --git a/db/docs/gsg_db_rep/CXX/preface.html b/db/docs/gsg_db_rep/CXX/preface.html index e384eee45..0807bcc6c 100644 --- a/db/docs/gsg_db_rep/CXX/preface.html +++ b/db/docs/gsg_db_rep/CXX/preface.html @@ -1,15 +1,15 @@ - + - + Preface - + diff --git a/db/docs/gsg_db_rep/CXX/processingloop.html b/db/docs/gsg_db_rep/CXX/processingloop.html index 3f18d2310..072d1bca0 100644 --- a/db/docs/gsg_db_rep/CXX/processingloop.html +++ b/db/docs/gsg_db_rep/CXX/processingloop.html @@ -1,14 +1,14 @@ - + - + Processing Loop - - + + @@ -18,9 +18,9 @@ Processing Loop - Prev  - Chapter 4. Replica versus Master Processes -  Next + Prev  + Chapter 4. Replica versus Master Processes +  Next
@@ -199,12 +199,12 @@ for (;;) { DB_AUTO_COMMIT, 0); } catch(DbException dbe) { if (dbe.get_errno() == ENOENT) { - cout << "No stock db available yet - retrying." << endl; + cout << "No stock db available yet - retrying." << endl; try { dbp->close(0); } catch (DbException dbe2) { - cout << "Unexpected error closing after failed" << - " open, message: " << dbe2.what() << endl; + cout << "Unexpected error closing after failed" << + " open, message: " << dbe2.what() << endl; dbp = NULL; goto err; } @@ -212,7 +212,7 @@ for (;;) { sleep(SLEEPTIME); continue; } else { - dbenv.err(ret, "DB->open"); + dbenv.err(ret, "DB->open"); throw dbe; } } @@ -240,18 +240,18 @@ for (;;) {
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 4. Replica versus Master Processes Chapter 4. Replica versus Master Processes  Home  Example Processing Loop Example Processing Loop
diff --git a/db/docs/gsg_db_rep/CXX/repadvantage.html b/db/docs/gsg_db_rep/CXX/repadvantage.html index c7ab72c1a..3e001b900 100644 --- a/db/docs/gsg_db_rep/CXX/repadvantage.html +++ b/db/docs/gsg_db_rep/CXX/repadvantage.html @@ -1,14 +1,14 @@ - + - + Replication Benefits - - + + @@ -18,9 +18,9 @@ Replication Benefits - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -150,7 +150,7 @@ one or more replicas before continuing with the next operation. This will obviously impact your application's write performance to some degree - — with the performance penalty being largely dependent + — with the performance penalty being largely dependent upon the speed and stability of the network connecting your replication group.

@@ -165,18 +165,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction Chapter 1. Introduction  Home  The Replication APIs The Replication APIs
diff --git a/db/docs/gsg_db_rep/CXX/repapp.html b/db/docs/gsg_db_rep/CXX/repapp.html index 240383791..403d00b96 100644 --- a/db/docs/gsg_db_rep/CXX/repapp.html +++ b/db/docs/gsg_db_rep/CXX/repapp.html @@ -1,9 +1,9 @@ - + - - Chapter 3. The DB Replication Framework + + Chapter 3. The DB Replication Framework @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/JAVA/elections.html b/db/docs/gsg_db_rep/JAVA/elections.html index 8157cf14a..5d67963fe 100644 --- a/db/docs/gsg_db_rep/JAVA/elections.html +++ b/db/docs/gsg_db_rep/JAVA/elections.html @@ -1,13 +1,13 @@ - + - + Holding Elections - + @@ -18,9 +18,9 @@ Holding Elections - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -208,18 +208,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
The Replication APIs The Replication APIs  Home  Permanent Message Handling Permanent Message Handling
diff --git a/db/docs/gsg_db_rep/JAVA/electiontimes.html b/db/docs/gsg_db_rep/JAVA/electiontimes.html index 7a39ac11a..8ba719e55 100644 --- a/db/docs/gsg_db_rep/JAVA/electiontimes.html +++ b/db/docs/gsg_db_rep/JAVA/electiontimes.html @@ -1,13 +1,13 @@ - + - + Managing Election Times - + @@ -18,9 +18,9 @@ Managing Election Times - Prev  - Chapter 3. The DB Replication Framework -  Next + Prev  + Chapter 3. The DB Replication Framework +  Next
@@ -127,18 +127,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Permanent Message Handling Permanent Message Handling  Home  Managing Connection Retries Managing Connection Retries
diff --git a/db/docs/gsg_db_rep/JAVA/exampledoloop.html b/db/docs/gsg_db_rep/JAVA/exampledoloop.html index d1da6e978..bc2bdc75e 100644 --- a/db/docs/gsg_db_rep/JAVA/exampledoloop.html +++ b/db/docs/gsg_db_rep/JAVA/exampledoloop.html @@ -1,15 +1,15 @@ - + - + Example Processing Loop - + - + diff --git a/db/docs/gsg_db_rep/JAVA/fmwrkconnectretry.html b/db/docs/gsg_db_rep/JAVA/fmwrkconnectretry.html index 6fe429ade..717ef4af8 100644 --- a/db/docs/gsg_db_rep/JAVA/fmwrkconnectretry.html +++ b/db/docs/gsg_db_rep/JAVA/fmwrkconnectretry.html @@ -1,15 +1,15 @@ - + - + Managing Connection Retries - + - + diff --git a/db/docs/gsg_db_rep/JAVA/fwrkmasterreplica.html b/db/docs/gsg_db_rep/JAVA/fwrkmasterreplica.html index d7694c2c6..47f644622 100644 --- a/db/docs/gsg_db_rep/JAVA/fwrkmasterreplica.html +++ b/db/docs/gsg_db_rep/JAVA/fwrkmasterreplica.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Replica versus Master Processes + + Chapter 4. Replica versus Master Processes @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/JAVA/index.html b/db/docs/gsg_db_rep/JAVA/index.html index 07402f6b2..d57f61962 100644 --- a/db/docs/gsg_db_rep/JAVA/index.html +++ b/db/docs/gsg_db_rep/JAVA/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Replicated Berkeley DB Applications @@ -16,9 +16,9 @@ Getting Started with Replicated Berkeley DB Applications -   -   -  Next +   +   +  Next
@@ -27,7 +27,7 @@
-

Getting Started with Replicated Berkeley DB Applications

+

Getting Started with Replicated Berkeley DB Applications

@@ -37,7 +37,7 @@

This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

@@ -47,12 +47,12 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

- Java™ and all Java-based marks are a trademark + Javaâ„¢ and all Java-based marks are a trademark or registered trademark of Sun Microsystems, Inc, in the United States and other countries.

@@ -66,7 +66,7 @@
-

9/20/2006

+

6/30/2007

@@ -304,7 +304,7 @@ Adding the Replication Framework to - + SimpleTxn
@@ -445,14 +445,14 @@
- - - + + + - - - + + +
   Next   Next
   Preface   Preface
diff --git a/db/docs/gsg_db_rep/JAVA/introduction.html b/db/docs/gsg_db_rep/JAVA/introduction.html index dce03b363..47da0c3eb 100644 --- a/db/docs/gsg_db_rep/JAVA/introduction.html +++ b/db/docs/gsg_db_rep/JAVA/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_db_rep/JAVA/noautoinit.html b/db/docs/gsg_db_rep/JAVA/noautoinit.html index 1a6decd6e..64209e424 100644 --- a/db/docs/gsg_db_rep/JAVA/noautoinit.html +++ b/db/docs/gsg_db_rep/JAVA/noautoinit.html @@ -1,13 +1,13 @@ - + - + Stop Auto-Initialization - + @@ -18,9 +18,9 @@ Stop Auto-Initialization - Prev  - Chapter 5. Additional Features -  Next + Prev  + Chapter 5. Additional Features +  Next
@@ -70,18 +70,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Managing Blocking Operations Managing Blocking Operations  Home  Client to Client Transfer Client to Client Transfer
diff --git a/db/docs/gsg_db_rep/JAVA/permmessages.html b/db/docs/gsg_db_rep/JAVA/permmessages.html index 9a8747053..3a08a8f68 100644 --- a/db/docs/gsg_db_rep/JAVA/permmessages.html +++ b/db/docs/gsg_db_rep/JAVA/permmessages.html @@ -1,15 +1,15 @@ - + - + Permanent Message Handling - + - + diff --git a/db/docs/gsg_db_rep/JAVA/preface.html b/db/docs/gsg_db_rep/JAVA/preface.html index 909206faa..894d26171 100644 --- a/db/docs/gsg_db_rep/JAVA/preface.html +++ b/db/docs/gsg_db_rep/JAVA/preface.html @@ -1,15 +1,15 @@ - + - + Preface - + diff --git a/db/docs/gsg_db_rep/JAVA/repadvantage.html b/db/docs/gsg_db_rep/JAVA/repadvantage.html index c7ab72c1a..3e001b900 100644 --- a/db/docs/gsg_db_rep/JAVA/repadvantage.html +++ b/db/docs/gsg_db_rep/JAVA/repadvantage.html @@ -1,14 +1,14 @@ - + - + Replication Benefits - - + + @@ -18,9 +18,9 @@ Replication Benefits - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
@@ -150,7 +150,7 @@ one or more replicas before continuing with the next operation. This will obviously impact your application's write performance to some degree - — with the performance penalty being largely dependent + — with the performance penalty being largely dependent upon the speed and stability of the network connecting your replication group.

@@ -165,18 +165,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 1. Introduction Chapter 1. Introduction  Home  The Replication APIs The Replication APIs
diff --git a/db/docs/gsg_db_rep/JAVA/repapp.html b/db/docs/gsg_db_rep/JAVA/repapp.html index 63d48f58a..2ac003cc2 100644 --- a/db/docs/gsg_db_rep/JAVA/repapp.html +++ b/db/docs/gsg_db_rep/JAVA/repapp.html @@ -1,26 +1,26 @@ - + - - Chapter 3. The DB Replication Framework + + Chapter 3. The DB Replication Framework - + diff --git a/db/docs/gsg_db_rep/JAVA/simpleprogramlisting.html b/db/docs/gsg_db_rep/JAVA/simpleprogramlisting.html index f106a191f..d067236e4 100644 --- a/db/docs/gsg_db_rep/JAVA/simpleprogramlisting.html +++ b/db/docs/gsg_db_rep/JAVA/simpleprogramlisting.html @@ -1,15 +1,15 @@ - + - + Program Listing - - - + + + diff --git a/db/docs/gsg_db_rep/JAVA/txnapp.html b/db/docs/gsg_db_rep/JAVA/txnapp.html index 58e675765..667ec42e7 100644 --- a/db/docs/gsg_db_rep/JAVA/txnapp.html +++ b/db/docs/gsg_db_rep/JAVA/txnapp.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Transactional Application + + Chapter 2. Transactional Application @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/C/architectrecovery.html b/db/docs/gsg_txn/C/architectrecovery.html index d461d9194..e9e61116e 100644 --- a/db/docs/gsg_txn/C/architectrecovery.html +++ b/db/docs/gsg_txn/C/architectrecovery.html @@ -1,13 +1,13 @@ - + - + Designing Your Application for Recovery - + @@ -18,9 +18,9 @@ Designing Your Application for Recovery - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
@@ -155,7 +155,7 @@ handles. Recovery should be single threaded because when recovery is run against an environment, it is deleted and then recreated. This will cause all - other processes and threads to "fail" when they + other processes and threads to "fail" when they attempt operations against the newly recovered environment. If all threads run recovery when they start up, then it is likely that some @@ -258,7 +258,7 @@

- One way to handle multi-process recovery is for every process to "register" its environment. In + One way to handle multi-process recovery is for every process to "register" its environment. In doing so, the process gains the ability to see if any other applications are using the environment and, if so, whether they have suffered an abnormal termination. If an abnormal termination is detected, the process runs recovery; otherwise, it does not. @@ -427,18 +427,18 @@


- + - + - + - +
Prev Prev  Up  Next Next
Recovery Procedures Recovery Procedures  Home  Using Hot Failovers Using Hot Failovers
diff --git a/db/docs/gsg_txn/C/autocommit.html b/db/docs/gsg_txn/C/autocommit.html index 4ae0787f0..11fbf1128 100644 --- a/db/docs/gsg_txn/C/autocommit.html +++ b/db/docs/gsg_txn/C/autocommit.html @@ -1,13 +1,13 @@ - + - + Auto Commit - + @@ -18,9 +18,9 @@ Auto Commit - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
@@ -91,7 +91,7 @@
#include <stdio.h>
 #include <stdlib.h>
 
-#include "db.h"
+#include "db.h"
 
 int
 main(void)
@@ -101,10 +101,10 @@ main(void)
     DB *dbp;
     DB_ENV *envp;
     DBT key, data;
-    const char *db_home_dir = "/tmp/myEnvironment";
-    const char *file_name = "mydb.db";
-    const char *keystr ="thekey";
-    const char *datastr = "thedata";
+    const char *db_home_dir = "/tmp/myEnvironment";
+    const char *file_name = "mydb.db";
+    const char *keystr ="thekey";
+    const char *datastr = "thedata";
     
     dbp = NULL;
     envp = NULL;
@@ -112,7 +112,7 @@ main(void)
     /* Open the environment */
     ret = db_env_create(&envp, 0);
     if (ret != 0) {
-        fprintf(stderr, "Error creating environment handle: %s\n",
+        fprintf(stderr, "Error creating environment handle: %s\n",
             db_strerror(ret));
         return (EXIT_FAILURE);
     }
@@ -126,7 +126,7 @@ main(void)
 
     ret = envp->open(envp, db_home_dir, env_flags, 0);
     if (ret != 0) {
-        fprintf(stderr, "Error opening environment: %s\n",
+        fprintf(stderr, "Error opening environment: %s\n",
             db_strerror(ret));
         goto err;
     }
@@ -134,7 +134,7 @@ main(void)
     /* Initialize the DB handle */
     ret = db_create(&dbp, envp, 0);
     if (ret != 0) {
-        envp->err(envp, ret, "Database creation failed");
+        envp->err(envp, ret, "Database creation failed");
         goto err;
     }
 
@@ -151,7 +151,7 @@ main(void)
                     db_flags,   /* Open flags */
                     0);         /* File mode. Using defaults */
     if (ret != 0) {
-        envp->err(envp, ret, "Database '%s' open failed",
+        envp->err(envp, ret, "Database '%s' open failed",
             file_name);
         goto err;
     }
@@ -172,7 +172,7 @@ main(void)
      */
     ret = dbp->put(dbp, NULL, &key, &data, 0);
     if (ret != 0) {
-        envp->err(envp, ret, "Database put failed.");
+        envp->err(envp, ret, "Database put failed.");
         goto err;
     }
 
@@ -181,7 +181,7 @@ err:
     if (dbp != NULL) {
         ret_c = dbp->close(dbp, 0);
         if (ret_c != 0) {
-            envp->err(envp, ret_c, "Database close failed.");
+            envp->err(envp, ret_c, "Database close failed.");
             ret = ret_c
         }
     }
@@ -191,7 +191,7 @@ err:
     if (envp != NULL) {
         ret_c = envp->close(envp, 0);
         if (ret_c != 0) {
-            fprintf(stderr, "environment close failed: %s\n",
+            fprintf(stderr, "environment close failed: %s\n",
                 db_strerror(ret_c));
             ret = ret_c;
         }
@@ -204,18 +204,18 @@ err:
       
- + - + - + - +
Prev Prev  Up  Next Next
Aborting a Transaction Aborting a Transaction  Home  Nested Transactions Nested Transactions
diff --git a/db/docs/gsg_txn/C/backuprestore.html b/db/docs/gsg_txn/C/backuprestore.html index f9ae32bd7..a60dab54f 100644 --- a/db/docs/gsg_txn/C/backuprestore.html +++ b/db/docs/gsg_txn/C/backuprestore.html @@ -1,14 +1,14 @@ - + - + Backup Procedures - - + + @@ -18,9 +18,9 @@ Backup Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
@@ -322,18 +322,18 @@
- + - + - + - +
Prev Prev  Up  Next Next
Chapter 5. Managing DB Files Chapter 5. Managing DB Files  Home  Recovery Procedures Recovery Procedures
diff --git a/db/docs/gsg_txn/C/blocking_deadlocks.html b/db/docs/gsg_txn/C/blocking_deadlocks.html index cc7712aeb..733fe70ae 100644 --- a/db/docs/gsg_txn/C/blocking_deadlocks.html +++ b/db/docs/gsg_txn/C/blocking_deadlocks.html @@ -1,14 +1,14 @@ - + - + Locks, Blocks, and Deadlocks - - + + @@ -18,9 +18,9 @@ Locks, Blocks, and Deadlocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
@@ -440,7 +440,7 @@ minimize the time you keep transactional cursors opened, or reduce your isolation - levels – see below. + levels – see below.

  • @@ -655,18 +655,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 4. Concurrency Chapter 4. Concurrency  Home  The Locking Subsystem The Locking Subsystem
    diff --git a/db/docs/gsg_txn/C/enabletxn.html b/db/docs/gsg_txn/C/enabletxn.html index 719fba4bc..80aeb216c 100644 --- a/db/docs/gsg_txn/C/enabletxn.html +++ b/db/docs/gsg_txn/C/enabletxn.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Enabling Transactions + + Chapter 2. Enabling Transactions @@ -15,12 +15,12 @@
  • @@ -906,18 +908,18 @@
    - + - + - + - diff --git a/db/docs/gsg_txn/C/envopen.html b/db/docs/gsg_txn/C/envopen.html index 46fc26bc8..ea1160e16 100644 --- a/db/docs/gsg_txn/C/envopen.html +++ b/db/docs/gsg_txn/C/envopen.html @@ -1,8 +1,8 @@ - + - + Opening a Transactional Environment and Database @@ -10,9 +10,9 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB Transaction Processing" /> - <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> + <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> </head> <body> <div class="navheader"> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> - <th width="60%" align="center">Chapter 2. Enabling Transactions</th> - <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <th width="60%" align="center">Chapter 2. Enabling Transactions</th> + <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> </table> <hr /> @@ -58,7 +58,7 @@ <pre class="programlisting">#include <stdio.h> #include <stdlib.h> -#include "db.h" +#include "db.h" int main(void) @@ -66,14 +66,14 @@ main(void) int ret, ret_c; u_int32_t env_flags; DB_ENV *envp; - const char *db_home_dir = "/tmp/myEnvironment"; + const char *db_home_dir = "/tmp/myEnvironment"; envp = NULL; /* Open the environment */ ret = db_env_create(&envp, 0); if (ret != 0) { - fprintf(stderr, "Error creating environment handle: %s\n", + fprintf(stderr, "Error creating environment handle: %s\n", db_strerror(ret)); return (EXIT_FAILURE); } @@ -87,7 +87,7 @@ main(void) ret = envp->open(envp, db_home_dir, env_flags, 0); if (ret != 0) { - fprintf(stderr, "Error opening environment: %s\n", + fprintf(stderr, "Error opening environment: %s\n", db_strerror(ret)); goto err; } @@ -97,7 +97,7 @@ err: if (envp != NULL) { ret_c = envp->close(envp, 0); if (ret_c != 0) { - fprintf(stderr, "environment close failed: %s\n", + fprintf(stderr, "environment close failed: %s\n", db_strerror(ret_c)); ret = ret_c; } @@ -127,7 +127,7 @@ err: <pre class="programlisting">#include <stdio.h> #include <stdlib.h> -#include "db.h" +#include "db.h" int main(void) @@ -136,8 +136,8 @@ main(void) u_int32_t <b class="userinput"><tt>db_flags,</tt></b> env_flags; <b class="userinput"><tt>DB *dbp;</tt></b> DB_ENV *envp; - const char *db_home_dir = "/tmp/myEnvironment"; - <b class="userinput"><tt>const char *file_name = "mydb.db"; + const char *db_home_dir = "/tmp/myEnvironment"; + <b class="userinput"><tt>const char *file_name = "mydb.db"; dbp = NULL;</tt></b> envp = NULL; @@ -145,7 +145,7 @@ main(void) /* Open the environment */ ret = db_env_create(&envp, 0); if (ret != 0) { - fprintf(stderr, "Error creating environment handle: %s\n", + fprintf(stderr, "Error creating environment handle: %s\n", db_strerror(ret)); return (EXIT_FAILURE); } @@ -159,7 +159,7 @@ main(void) ret = envp->open(envp, db_home_dir, env_flags, 0); if (ret != 0) { - fprintf(stderr, "Error opening environment: %s\n", + fprintf(stderr, "Error opening environment: %s\n", db_strerror(ret)); goto err; } @@ -167,7 +167,7 @@ main(void) <b class="userinput"><tt>/* Initialize the DB handle */ ret = db_create(&dbp, envp, 0); if (ret != 0) { - envp->err(envp, ret, "Database creation failed"); + envp->err(envp, ret, "Database creation failed"); goto err; } @@ -180,7 +180,7 @@ main(void) db_flags, /* Open flags */ 0); /* File mode. Using defaults */ if (ret != 0) { - envp->err(envp, ret, "Database '%s' open failed", + envp->err(envp, ret, "Database '%s' open failed", file_name); goto err; }</tt></b> @@ -191,7 +191,7 @@ err: if (dbp != NULL) { ret_c = dbp->close(dbp, 0); if (ret_c != 0) { - envp->err(envp, ret_c, "Database close failed."); + envp->err(envp, ret_c, "Database close failed."); ret = ret_c } }</tt></b> @@ -201,7 +201,7 @@ err: if (envp != NULL) { ret_c = envp->close(envp, 0); if (ret_c != 0) { - fprintf(stderr, "environment close failed: %s\n", + fprintf(stderr, "environment close failed: %s\n", db_strerror(ret_c)); ret = ret_c; } @@ -222,18 +222,18 @@ err: <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="enabletxn.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> + <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> + <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> </tr> </table> </div> diff --git a/db/docs/gsg_txn/C/filemanagement.html b/db/docs/gsg_txn/C/filemanagement.html index 57c5a0b66..00b796fec 100644 --- a/db/docs/gsg_txn/C/filemanagement.html +++ b/db/docs/gsg_txn/C/filemanagement.html @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> - <title>Chapter 5. Managing DB Files + + Chapter 5. Managing DB Files @@ -15,12 +15,12 @@
    Prev Prev  Up  Next Next
    Performance Tuning Performance Tuning  Home  Opening a Transactional Environment and +  Opening a Transactional Environment and Database
    - + - - - + + +
    Chapter 5. Managing DB FilesChapter 5. Managing DB Files
    Prev   NextPrev   Next

    @@ -29,7 +29,7 @@
    -

    Chapter 5. Managing DB Files

    +

    Chapter 5. Managing DB Files

    @@ -304,7 +304,7 @@
    #include <stdio.h>
     #include <pthread.h>
     #include <stdlib.h>
    -#include "db.h"     
    +#include "db.h"     
     
     void *checkpoint_thread(void *);
     
    @@ -314,7 +314,7 @@ main(void)
         int ret;
         u_int32_t env_flags;
         DB_ENV *envp;
    -    const char *db_home_dir = "/tmp/myEnvironment";
    +    const char *db_home_dir = "/tmp/myEnvironment";
         pthread_t ptid;
     
         envp = NULL;
    @@ -322,7 +322,7 @@ main(void)
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -338,7 +338,7 @@ main(void)
         /* Open the environment. */
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -348,7 +348,7 @@ main(void)
         if ((ret = pthread_create( 
             &ptid, NULL, checkpoint_thread, (void *)envp)) != 0) { 
                 fprintf(stderr, 
    -                "txnapp: failed spawning checkpoint thread: %s\n", 
    +                "txnapp: failed spawning checkpoint thread: %s\n", 
                     strerror(ret)); 
                 goto err;
         }
    @@ -372,7 +372,7 @@ checkpoint_thread(void *arg) {
         /* Checkpoint once a minute. */ 
         for (;; sleep(60)) 
             if ((ret = dbenv->txn_checkpoint(dbenv, 0, 0, 0)) != 0) { 
    -            dbenv->err(dbenv, ret, "checkpoint thread"); 
    +            dbenv->err(dbenv, ret, "checkpoint thread"); 
                 exit (1); 
             }
     
    @@ -384,18 +384,18 @@ checkpoint_thread(void *arg) {
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Reverse BTree Splits Reverse BTree Splits  Home  Backup Procedures Backup Procedures
    diff --git a/db/docs/gsg_txn/C/hotfailover.html b/db/docs/gsg_txn/C/hotfailover.html index fa3dcc152..9c6258f5f 100644 --- a/db/docs/gsg_txn/C/hotfailover.html +++ b/db/docs/gsg_txn/C/hotfailover.html @@ -1,13 +1,13 @@ - + - + Using Hot Failovers - + @@ -18,9 +18,9 @@ Using Hot Failovers - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -191,18 +191,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Designing Your Application for Recovery Designing Your Application for Recovery  Home  Removing Log Files Removing Log Files
    diff --git a/db/docs/gsg_txn/C/index.html b/db/docs/gsg_txn/C/index.html index e43890ce3..40883f92a 100644 --- a/db/docs/gsg_txn/C/index.html +++ b/db/docs/gsg_txn/C/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB Transaction Processing @@ -16,9 +16,9 @@ Getting Started with Berkeley DB Transaction Processing -   -   -  Next +   +   +  Next
    @@ -27,7 +27,7 @@
    -

    Getting Started with Berkeley DB Transaction Processing

    +

    Getting Started with Berkeley DB Transaction Processing

    @@ -37,7 +37,7 @@

    This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

    @@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

    To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

    -

    9/20/2006

    +

    6/30/2007

    @@ -510,14 +510,14 @@
    - - - + + + - - - + + +
       Next   Next
       Preface   Preface
    diff --git a/db/docs/gsg_txn/C/inmem_txnexample_c.html b/db/docs/gsg_txn/C/inmem_txnexample_c.html index 591032c09..038c66d99 100644 --- a/db/docs/gsg_txn/C/inmem_txnexample_c.html +++ b/db/docs/gsg_txn/C/inmem_txnexample_c.html @@ -1,13 +1,13 @@ - + - + In-Memory Transaction Example - + @@ -17,9 +17,9 @@ In-Memory Transaction Example - Prev  - Chapter 6. Summary and Examples -   + Prev  + Chapter 6. Summary and Examples +  
    @@ -54,7 +54,7 @@

    Refrain from specifying a home directory when you open your environment. The exception to this is if you are using the - DB_CONFIG configuration file — in + DB_CONFIG configuration file — in that case you must identify the environment's home directory so that the configuration file can be found.

    @@ -165,7 +165,7 @@ main(void) u_int32_t env_flags; /* Application name */ - const char *prog_name = "txn_guide_inmemory";
    + const char *prog_name = "txn_guide_inmemory";

    Next we create our environment as always. However, we add DB_PRIVATE to our environment open flags. This @@ -185,7 +185,7 @@ main(void)

        /* Create the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -211,7 +211,7 @@ main(void)
                   /* Specify in-memory logging */
         ret = envp->set_flags(envp, DB_LOG_INMEMORY, 1);
         if (ret != 0) {
    -        fprintf(stderr, "Error setting log subsystem to in-memory: %s\n",
    +        fprintf(stderr, "Error setting log subsystem to in-memory: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -221,7 +221,7 @@ main(void)
          */
         ret = envp->set_lg_bsize(envp, 10 * 1024 * 1024);
         if (ret != 0) {
    -        fprintf(stderr, "Error increasing the log buffer size: %s\n",
    +        fprintf(stderr, "Error increasing the log buffer size: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -232,7 +232,7 @@ main(void)
         ret = envp->set_cachesize(envp, 0, 
             10 * 1024 * 1024, 1);
         if (ret != 0) {
    -        fprintf(stderr, "Error increasing the cache size: %s\n",
    +        fprintf(stderr, "Error increasing the cache size: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -251,7 +251,7 @@ main(void)
          */  
         ret = envp->set_lk_detect(envp, DB_LOCK_MINWRITE);
         if (ret != 0) {
    -        fprintf(stderr, "Error setting lock detect: %s\n",
    +        fprintf(stderr, "Error setting lock detect: %s\n",
                 db_strerror(ret));
             goto err;
         } 
    @@ -259,7 +259,7 @@ main(void)
         /* Now actually open the environment */
         ret = envp->open(envp, NULL, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         } 
    @@ -308,7 +308,7 @@ err: if (dbp != NULL) { ret_t = dbp->close(dbp, 0); if (ret_t != 0) { - fprintf(stderr, "%s database close failed.\n", + fprintf(stderr, "%s database close failed.\n", db_strerror(ret_t)); ret = ret_t; } @@ -318,14 +318,14 @@ err: if (envp != NULL) { ret_t = envp->close(envp, 0); if (ret_t != 0) { - fprintf(stderr, "environment close failed: %s\n", + fprintf(stderr, "environment close failed: %s\n", db_strerror(ret_t)); ret = ret_t; } } /* Final status message and return. */ - printf("I'm all done.\n"); + printf("I'm all done.\n"); return (ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE); }

    @@ -353,9 +353,9 @@ writer_thread(void *args) DB_TXN *txn; int i, j, payload, ret, thread_num; int retry_count, max_retries = 20; /* Max retry on a deadlock */ - char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", - "key 5", "key 6", "key 7", "key 8", - "key 9", "key 10"}; + char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", + "key 5", "key 6", "key 7", "key 8", + "key 9", "key 10"}; DB *dbp = (DB *)args; DB_ENV *envp = dbp->get_env(dbp); @@ -376,7 +376,7 @@ writer_thread(void *args) retry: ret = envp->txn_begin(envp, NULL, &txn, 0); if (ret != 0) { - envp->err(envp, ret, "txn_begin failed"); + envp->err(envp, ret, "txn_begin failed"); return (EXIT_FAILURE); } for (j = 0; j < 10; j++) { @@ -414,9 +414,9 @@ retry: * increment the retry count and goto retry. */ if (retry_count < max_retries) { - printf("Writer %i: Got DB_LOCK_DEADLOCK.\n", + printf("Writer %i: Got DB_LOCK_DEADLOCK.\n", thread_num); - printf("Writer %i: Retrying write operation.\n", + printf("Writer %i: Retrying write operation.\n", thread_num); retry_count++; goto retry; @@ -424,19 +424,19 @@ retry: /* * Otherwise, just give up. */ - printf("Writer %i: ", thread_num); - printf("Got DB_LOCK_DEADLOCK and out of retries.\n"); - printf("Writer %i: Giving up.\n", thread_num); + printf("Writer %i: ", thread_num); + printf("Got DB_LOCK_DEADLOCK and out of retries.\n"); + printf("Writer %i: Giving up.\n", thread_num); return (EXIT_FAILURE); /* * If a generic error occurs, we simply abort the * transaction and exit the thread completely. */ default: - envp->err(envp, ret, "db put failed"); + envp->err(envp, ret, "db put failed"); ret = txn->abort(txn); if (ret != 0) - envp->err(envp, ret, "txn abort failed"); + envp->err(envp, ret, "txn abort failed"); return (EXIT_FAILURE); } /** End case statement **/ @@ -456,7 +456,7 @@ retry: * print the number of records found in the database. * See count_records() for usage information. */ - printf("Thread %i. Record count: %i\n", thread_num, + printf("Thread %i. Record count: %i\n", thread_num, count_records(dbp, txn)); /* @@ -465,7 +465,7 @@ retry: */ ret = txn->commit(txn, 0); if (ret != 0) { - envp->err(envp, ret, "txn commit failed"); + envp->err(envp, ret, "txn commit failed"); return (EXIT_FAILURE); } } @@ -496,7 +496,7 @@ count_records(DB *dbp, DB_TXN *txn) /* Get the cursor */ ret = dbp->cursor(dbp, txn, &cursorp, 0); if (ret != 0) { - dbp->err(dbp, ret, "count_records: cursor open failed."); + dbp->err(dbp, ret, "count_records: cursor open failed."); goto cursor_err; } @@ -504,7 +504,7 @@ count_records(DB *dbp, DB_TXN *txn) memset(&key, 0, sizeof(DBT)); memset(&value, 0, sizeof(DBT)); do { - ret = cursorp->c_get(cursorp, &key, &value, DB_NEXT); + ret = cursorp->get(cursorp, &key, &value, DB_NEXT); switch (ret) { case 0: count++; @@ -513,17 +513,17 @@ count_records(DB *dbp, DB_TXN *txn) break; default: dbp->err(envp, ret, - "Count records unspecified error"); + "Count records unspecified error"); goto cursor_err; } } while (ret == 0); cursor_err: if (cursorp != NULL) { - ret = cursorp->c_close(cursorp); + ret = cursorp->close(cursorp); if (ret != 0) { dbp->err(dbp, ret, - "count_records: cursor close failed."); + "count_records: cursor close failed."); } } @@ -553,7 +553,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, /* Initialize the DB handle */ ret = db_create(&dbp, envp, 0); if (ret != 0) { - fprintf(stderr, "%s: %s\n", progname, + fprintf(stderr, "%s: %s\n", progname, db_strerror(ret)); return (EXIT_FAILURE); } @@ -565,7 +565,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, ret = dbp->set_flags(dbp, extra_flags); if (ret != 0) { dbp->err(dbp, ret, - "open_db: Attempt to set extra flags failed."); + "open_db: Attempt to set extra flags failed."); return (EXIT_FAILURE); } } @@ -583,7 +583,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, open_flags, /* Open flags */ 0); /* File mode. Using defaults */ if (ret != 0) { - dbp->err(dbp, ret, "Database open failed"); + dbp->err(dbp, ret, "Database open failed"); return (EXIT_FAILURE); } return (EXIT_SUCCESS); @@ -599,18 +599,18 @@ open_db(DB **dbpp, const char *progname, const char *file_name,


    - + - + - + - +
    Prev Prev  Up  Â 
    Transaction Example Transaction Example  Home  Â 
    diff --git a/db/docs/gsg_txn/C/introduction.html b/db/docs/gsg_txn/C/introduction.html index 0cd478d9a..d4e9419a4 100644 --- a/db/docs/gsg_txn/C/introduction.html +++ b/db/docs/gsg_txn/C/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/C/lockingsubsystem.html b/db/docs/gsg_txn/C/lockingsubsystem.html index 8311ce3b0..944fe9b2c 100644 --- a/db/docs/gsg_txn/C/lockingsubsystem.html +++ b/db/docs/gsg_txn/C/lockingsubsystem.html @@ -1,13 +1,13 @@ - + - + The Locking Subsystem - + @@ -18,9 +18,9 @@ The Locking Subsystem - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -163,7 +163,7 @@
    #include <stdio.h>
     #include <stdlib.h>
     
    -#include "db.h"
    +#include "db.h"
     
     int
     main(void)
    @@ -171,14 +171,14 @@ main(void)
         int ret, ret_c;
         u_int32_t env_flags;
         DB_ENV *envp;
    -    const char *db_home_dir = "/tmp/myEnvironment";
    +    const char *db_home_dir = "/tmp/myEnvironment";
         
         envp = NULL;
     
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -194,7 +194,7 @@ main(void)
         /* Configure max locks */
         ret = envp->set_lk_max_locks(envp, 5000);
         if (ret != 0) {
    -        fprintf(stderr, "Error configuring locks: %s\n",
    +        fprintf(stderr, "Error configuring locks: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -202,7 +202,7 @@ main(void)
         /* Open the environment. */
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -212,7 +212,7 @@ err:
         if (envp != NULL) {
             ret_c = envp->close(envp, 0);
             if (ret_c != 0) {
    -            fprintf(stderr, "environment close failed: %s\n",
    +            fprintf(stderr, "environment close failed: %s\n",
                     db_strerror(ret_c));
                 ret = ret_c;
             }
    @@ -354,7 +354,7 @@ err:
             
    #include <stdio.h>
     #include <stdlib.h>
     
    -#include "db.h"
    +#include "db.h"
     
     int
     main(void)
    @@ -364,15 +364,15 @@ main(void)
         DB *dbp;
         DB_ENV *envp;
         DB_TXN *txn;
    -    const char *db_home_dir = "/tmp/myEnvironment";
    -    const char *file_name = "mydb.db";
    +    const char *db_home_dir = "/tmp/myEnvironment";
    +    const char *file_name = "mydb.db";
         
         envp = NULL;
     
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -392,14 +392,14 @@ main(void)
          */
         ret = envp->set_lk_detect(envp, DB_LOCK_MINWRITE);
         if (ret != 0) {
    -        fprintf(stderr, "Error setting lk detect: %s\n",
    +        fprintf(stderr, "Error setting lk detect: %s\n",
                 db_strerror(ret));
             goto err;
         }
     
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -487,7 +487,7 @@ main(void)
             
    retry:
         ret = envp->txn_begin(envp, NULL, &txn, 0);
         if (ret != 0) {
    -            envp->err(envp, ret, "txn_begin failed");
    +            envp->err(envp, ret, "txn_begin failed");
                 return (EXIT_FAILURE);
         }
         ...
    @@ -508,27 +508,27 @@ main(void)
                  * MAX_DEADLOCK_RETRIES times.
                  */
                 if (retry_count < MAX_DEADLOCK_RETRIES) {
    -                printf("Got DB_LOCK_DEADLOCK.\n");
    -                printf("Retrying write operation.\n");
    +                printf("Got DB_LOCK_DEADLOCK.\n");
    +                printf("Retrying write operation.\n");
                         retry_count++;
                         goto retry;
                  }
    -             printf("Got DB_LOCK_DEADLOCK and out of retries.");
    -             printf("Giving up.\n");
    +             printf("Got DB_LOCK_DEADLOCK and out of retries.");
    +             printf("Giving up.\n");
                  return (EXIT_FAILURE);
              default:
                 /* If some random database error occurs, we just give up */
    -            envp->err(envp, ret, "db put failed");
    +            envp->err(envp, ret, "db put failed");
                 ret = txn->abort(txn);
                 if (ret != 0) {
    -                envp->err(envp, ret, "txn abort failed");
    +                envp->err(envp, ret, "txn abort failed");
                     return (EXIT_FAILURE);
                  } 
              }
         /* If all goes well, commit the transaction */
         ret = txn->commit(txn, 0);
         if (ret != 0) {
    -        envp->err(envp, ret, "txn commit failed");
    +        envp->err(envp, ret, "txn commit failed");
             return (EXIT_FAILURE);
         }
     
    @@ -539,18 +539,18 @@ main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Locks, Blocks, and Deadlocks Locks, Blocks, and Deadlocks  Home  Isolation Isolation
    diff --git a/db/docs/gsg_txn/C/logconfig.html b/db/docs/gsg_txn/C/logconfig.html index 3a5485ca8..c27b9de66 100644 --- a/db/docs/gsg_txn/C/logconfig.html +++ b/db/docs/gsg_txn/C/logconfig.html @@ -1,15 +1,15 @@ - + - + Configuring the Logging Subsystem - + - + diff --git a/db/docs/gsg_txn/C/logfileremoval.html b/db/docs/gsg_txn/C/logfileremoval.html index 0ed044eb3..248a5a5a7 100644 --- a/db/docs/gsg_txn/C/logfileremoval.html +++ b/db/docs/gsg_txn/C/logfileremoval.html @@ -1,13 +1,13 @@ - + - + Removing Log Files - + @@ -18,9 +18,9 @@ Removing Log Files - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -187,18 +187,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Using Hot Failovers Using Hot Failovers  Home  Configuring the Logging Subsystem Configuring the Logging Subsystem
    diff --git a/db/docs/gsg_txn/C/maxtxns.html b/db/docs/gsg_txn/C/maxtxns.html index 311587dbf..f8515aa5d 100644 --- a/db/docs/gsg_txn/C/maxtxns.html +++ b/db/docs/gsg_txn/C/maxtxns.html @@ -1,15 +1,15 @@ - + - + Configuring the Transaction Subsystem - + - + diff --git a/db/docs/gsg_txn/C/nestedtxn.html b/db/docs/gsg_txn/C/nestedtxn.html index c202d794d..0151466c7 100644 --- a/db/docs/gsg_txn/C/nestedtxn.html +++ b/db/docs/gsg_txn/C/nestedtxn.html @@ -1,13 +1,13 @@ - + - + Nested Transactions - + @@ -18,9 +18,9 @@ Nested Transactions - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -121,18 +121,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Auto Commit Auto Commit  Home  Transactional Cursors Transactional Cursors
    diff --git a/db/docs/gsg_txn/C/perftune-intro.html b/db/docs/gsg_txn/C/perftune-intro.html index e9dff26fc..5a31485c0 100644 --- a/db/docs/gsg_txn/C/perftune-intro.html +++ b/db/docs/gsg_txn/C/perftune-intro.html @@ -1,15 +1,15 @@ - + - + Performance Tuning - + - + diff --git a/db/docs/gsg_txn/C/preface.html b/db/docs/gsg_txn/C/preface.html index e0a70ee9f..691118326 100644 --- a/db/docs/gsg_txn/C/preface.html +++ b/db/docs/gsg_txn/C/preface.html @@ -1,15 +1,15 @@ - + - + Preface - +
    diff --git a/db/docs/gsg_txn/C/readmodifywrite.html b/db/docs/gsg_txn/C/readmodifywrite.html index 4d6241614..abfb41cd6 100644 --- a/db/docs/gsg_txn/C/readmodifywrite.html +++ b/db/docs/gsg_txn/C/readmodifywrite.html @@ -1,13 +1,13 @@ - + - + Read/Modify/Write - + @@ -18,9 +18,9 @@ Read/Modify/Write - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -77,7 +77,7 @@ /* Get the transaction */ ret = envp->txn_begin(envp, NULL, &txn, 0); if (ret != 0) { - envp->err(envp, ret, "txn_begin failed"); + envp->err(envp, ret, "txn_begin failed"); return (EXIT_FAILURE); } ... @@ -103,18 +103,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors and Concurrent Applications Transactional Cursors and Concurrent Applications  Home  No Wait on Blocks No Wait on Blocks
    diff --git a/db/docs/gsg_txn/C/recovery-intro.html b/db/docs/gsg_txn/C/recovery-intro.html index ee490b9ba..e971eef93 100644 --- a/db/docs/gsg_txn/C/recovery-intro.html +++ b/db/docs/gsg_txn/C/recovery-intro.html @@ -1,14 +1,14 @@ - + - + Recoverability - - + + @@ -18,9 +18,9 @@ Recoverability - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
    @@ -85,18 +85,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 1. Introduction Chapter 1. Introduction  Home  Performance Tuning Performance Tuning
    diff --git a/db/docs/gsg_txn/C/recovery.html b/db/docs/gsg_txn/C/recovery.html index fdf872d9e..b2da339ae 100644 --- a/db/docs/gsg_txn/C/recovery.html +++ b/db/docs/gsg_txn/C/recovery.html @@ -1,13 +1,13 @@ - + - + Recovery Procedures - + @@ -18,9 +18,9 @@ Recovery Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -143,7 +143,7 @@

    #include <stdio.h>
     #include <stdlib.h>
    -#include "db.h"     
    +#include "db.h"     
     
     int
     main(void)
    @@ -151,14 +151,14 @@ main(void)
         int ret;
         u_int32_t env_flags;
         DB_ENV *envp;
    -    const char *db_home_dir = "/tmp/myEnvironment";
    +    const char *db_home_dir = "/tmp/myEnvironment";
     
         envp = NULL;
     
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -176,7 +176,7 @@ main(void)
         /* Open the environment. */
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -241,7 +241,7 @@ main(void)
                 

    Note that catastrophic recovery examines every available - log file — not just those log files created since the + log file — not just those log files created since the last checkpoint as is the case for normal recovery. For this reason, catastrophic recovery is likely to take longer than does normal recovery. @@ -251,7 +251,7 @@ main(void)

    #include <stdio.h>
     #include <stdlib.h>
    -#include "db.h"     
    +#include "db.h"     
     
     int
     main(void)
    @@ -259,14 +259,14 @@ main(void)
         int ret;
         u_int32_t env_flags;
         DB_ENV *envp;
    -    const char *db_home_dir = "/tmp/myEnvironment";
    +    const char *db_home_dir = "/tmp/myEnvironment";
     
         envp = NULL;
     
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -284,7 +284,7 @@ main(void)
         /* Open the environment. */
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -303,18 +303,18 @@ main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Backup Procedures Backup Procedures  Home  Designing Your Application for Recovery Designing Your Application for Recovery
    diff --git a/db/docs/gsg_txn/C/reversesplit.html b/db/docs/gsg_txn/C/reversesplit.html index b35db1a81..e55dc0b4d 100644 --- a/db/docs/gsg_txn/C/reversesplit.html +++ b/db/docs/gsg_txn/C/reversesplit.html @@ -1,15 +1,15 @@ - + - + Reverse BTree Splits - + - + diff --git a/db/docs/gsg_txn/C/txn_ccursor.html b/db/docs/gsg_txn/C/txn_ccursor.html index a7e040d9c..10c897e79 100644 --- a/db/docs/gsg_txn/C/txn_ccursor.html +++ b/db/docs/gsg_txn/C/txn_ccursor.html @@ -1,13 +1,13 @@ - + - + Transactional Cursors and Concurrent Applications - + @@ -18,9 +18,9 @@ Transactional Cursors and Concurrent Applications - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -89,7 +89,7 @@
    #include <stdio.h>
     #include <stdlib.h>
     
    -#include "db.h"
    +#include "db.h"
     
     int
     main(void)
    @@ -99,7 +99,7 @@ main(void)
         DB_ENV *envp;
         DB_TXN *txn;
         int ret, c_ret;
    -    char *replacementString = "new string";
    +    char *replacementString = "new string";
     
         dbp = NULL;
         envp = NULL;
    @@ -108,7 +108,7 @@ main(void)
         /* Open the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             return (EXIT_FAILURE);
         }
    @@ -122,7 +122,7 @@ main(void)
     
         ret = envp->open(envp, db_home_dir, env_flags, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error opening environment: %s\n",
    +        fprintf(stderr, "Error opening environment: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -130,7 +130,7 @@ main(void)
         /* Initialize the DB handle */
         ret = db_create(&dbp, envp, 0);
         if (ret != 0) {
    -        envp->err(envp, ret, "Database creation failed");
    +        envp->err(envp, ret, "Database creation failed");
             goto err;
         }
     
    @@ -147,7 +147,7 @@ main(void)
                         db_flags,   /* Open flags */
                         0);         /* File mode. Using defaults */
         if (ret != 0) {
    -        envp->err(envp, ret, "Database '%s' open failed",
    +        envp->err(envp, ret, "Database '%s' open failed",
                 file_name);
             goto err;
         }
    @@ -156,7 +156,7 @@ main(void)
         /* Note that this is a degree 3 transaction */
         ret = envp->txn_begin(envp, NULL, &txn, 0);
         if (ret != 0) {
    -        envp->err(envp, ret, "Transaction begin failed.");
    +        envp->err(envp, ret, "Transaction begin failed.");
             goto err;
         }
     
    @@ -164,7 +164,7 @@ main(void)
         /* Cause the cursor to perform uncommitted reads */
         ret = dbp->cursor(dbp, txn, &cursorp, DB_READ_UNCOMMITTED);
         if (ret != 0) {
    -        envp->err(envp, ret, "Cursor open failed.");
    +        envp->err(envp, ret, "Cursor open failed.");
             txn->abort(txn);
             goto err;
         }
    @@ -182,18 +182,18 @@ main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Isolation Isolation  Home  Read/Modify/Write Read/Modify/Write
    diff --git a/db/docs/gsg_txn/C/txnconcurrency.html b/db/docs/gsg_txn/C/txnconcurrency.html index ed0de1bff..ecb81939c 100644 --- a/db/docs/gsg_txn/C/txnconcurrency.html +++ b/db/docs/gsg_txn/C/txnconcurrency.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Concurrency + + Chapter 4. Concurrency @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/C/txnexample_c.html b/db/docs/gsg_txn/C/txnexample_c.html index 4f414bd19..f8702e0a3 100644 --- a/db/docs/gsg_txn/C/txnexample_c.html +++ b/db/docs/gsg_txn/C/txnexample_c.html @@ -1,14 +1,14 @@ - + - + Transaction Example - - + + @@ -18,9 +18,9 @@ Transaction Example - Prev  - Chapter 6. Summary and Examples -  Next + Prev  + Chapter 6. Summary and Examples +  Next
    @@ -110,7 +110,7 @@ void *writer_thread(void *);
    int usage() { - fprintf(stderr, " [-h <database_home_directory>]\n"); + fprintf(stderr, " [-h <database_home_directory>]\n"); return (EXIT_FAILURE); }

    @@ -131,9 +131,9 @@ main(int argc, char *argv[]) u_int32_t env_flags; char *db_home_dir; /* Application name */ - const char *prog_name = "txn_guide"; + const char *prog_name = "txn_guide"; /* Database file name */ - const char *file_name = "mydb.db";

    + const char *file_name = "mydb.db";

    Now we need to parse our command line. In this case, all we want is to know where our environment directory is. If the -h @@ -142,11 +142,11 @@ main(int argc, char *argv[])

        /* Parse the command line arguments */
     #ifdef _WIN32
    -    db_home_dir = ".\\";
    +    db_home_dir = ".\\";
     #else
    -    db_home_dir = "./";
    +    db_home_dir = "./";
     #endif
    -    while ((ch = getopt(argc, argv, "h:")) != EOF)
    +    while ((ch = getopt(argc, argv, "h:")) != EOF)
             switch (ch) {
             case 'h':
                 db_home_dir = optarg;
    @@ -182,7 +182,7 @@ main(int argc, char *argv[])
           
        /* Create the environment */
         ret = db_env_create(&envp, 0);
         if (ret != 0) {
    -        fprintf(stderr, "Error creating environment handle: %s\n",
    +        fprintf(stderr, "Error creating environment handle: %s\n",
                 db_strerror(ret));
             goto err;
         }
    @@ -222,7 +222,7 @@ main(int argc, char *argv[])
          */  
         ret = envp->set_lk_detect(envp, DB_LOCK_MINWRITE);
         if (ret != 0) {
    -        fprintf(stderr, "Error setting lock detect: %s\n",
    +        fprintf(stderr, "Error setting lock detect: %s\n",
                 db_strerror(ret));
             goto err;
         } 
    @@ -239,7 +239,7 @@ main(int argc, char *argv[]) /* Now actually open the environment */ ret = envp->open(envp, db_home_dir, env_flags, 0); if (ret != 0) { - fprintf(stderr, "Error opening environment: %s\n", + fprintf(stderr, "Error opening environment: %s\n", db_strerror(ret)); goto err; }
    @@ -296,7 +296,7 @@ main(int argc, char *argv[]) if (dbp != NULL) { ret_t = dbp->close(dbp, 0); if (ret_t != 0) { - fprintf(stderr, "%s database close failed: %s\n", + fprintf(stderr, "%s database close failed: %s\n", file_name, db_strerror(ret_t)); ret = ret_t; } @@ -306,14 +306,14 @@ main(int argc, char *argv[]) if (envp != NULL) { ret_t = envp->close(envp, 0); if (ret_t != 0) { - fprintf(stderr, "environment close failed: %s\n", + fprintf(stderr, "environment close failed: %s\n", db_strerror(ret_t)); ret = ret_t; } } /* Final status message and return. */ - printf("I'm all done.\n"); + printf("I'm all done.\n"); return (ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE); }

    @@ -338,9 +338,9 @@ writer_thread(void *args) DB_TXN *txn; int i, j, payload, ret, thread_num; int retry_count, max_retries = 20; /* Max retry on a deadlock */ - char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", - "key 5", "key 6", "key 7", "key 8", - "key 9", "key 10"}; + char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", + "key 5", "key 6", "key 7", "key 8", + "key 9", "key 10"}; DB *dbp = (DB *)args; DB_ENV *envp = dbp->get_env(dbp);

    @@ -413,7 +413,7 @@ retry: /* Begin our transaction. */ ret = envp->txn_begin(envp, NULL, &txn, 0); if (ret != 0) { - envp->err(envp, ret, "txn_begin failed"); + envp->err(envp, ret, "txn_begin failed"); return ((void *)EXIT_FAILURE); }

    @@ -448,7 +448,7 @@ retry: * have run this program at least once. */ case DB_KEYEXIST: - printf("Got keyexists.\n"); + printf("Got keyexists.\n"); break; /* * Here's where we perform deadlock detection. If @@ -469,9 +469,9 @@ retry: * increment the retry count and goto retry. */ if (retry_count < max_retries) { - printf("Writer %i: Got DB_LOCK_DEADLOCK.\n", + printf("Writer %i: Got DB_LOCK_DEADLOCK.\n", thread_num); - printf("Writer %i: Retrying write operation.\n", + printf("Writer %i: Retrying write operation.\n", thread_num); retry_count++; goto retry; @@ -479,19 +479,19 @@ retry: /* * Otherwise, just give up. */ - printf("Writer %i: ", thread_num); - printf("Got DB_LOCK_DEADLOCK and out of retries.\n"); - printf("Writer %i: Giving up.\n", thread_num); + printf("Writer %i: ", thread_num); + printf("Got DB_LOCK_DEADLOCK and out of retries.\n"); + printf("Writer %i: Giving up.\n", thread_num); return ((void *)EXIT_FAILURE); /* * If a generic error occurs, we simply abort the * transaction and exit the thread completely. */ default: - envp->err(envp, ret, "db put failed"); + envp->err(envp, ret, "db put failed"); ret = txn->abort(txn); if (ret != 0) - envp->err(envp, ret, "txn abort failed"); + envp->err(envp, ret, "txn abort failed"); return ((void *)EXIT_FAILURE); } /** End case statement **/ @@ -516,7 +516,7 @@ retry: * print the number of records found in the database. * See count_records() for usage information. */ - printf("Thread %i. Record count: %i\n", thread_num, + printf("Thread %i. Record count: %i\n", thread_num, count_records(dbp, NULL)); /* @@ -525,7 +525,7 @@ retry: */ ret = txn->commit(txn, 0); if (ret != 0) { - envp->err(envp, ret, "txn commit failed"); + envp->err(envp, ret, "txn commit failed"); return ((void *)EXIT_FAILURE); } } @@ -633,7 +633,7 @@ count_records(DB *dbp, DB_TXN *txn) /* Get the cursor */ ret = dbp->cursor(dbp, txn, &cursorp, DB_READ_UNCOMMITTED); if (ret != 0) { - dbp->err(dbp, ret, "count_records: cursor open failed."); + dbp->err(dbp, ret, "count_records: cursor open failed."); goto cursor_err; } @@ -641,7 +641,7 @@ count_records(DB *dbp, DB_TXN *txn) memset(&key, 0, sizeof(DBT)); memset(&value, 0, sizeof(DBT)); do { - ret = cursorp->c_get(cursorp, &key, &value, DB_NEXT); + ret = cursorp->get(cursorp, &key, &value, DB_NEXT); switch (ret) { case 0: count++; @@ -649,17 +649,17 @@ count_records(DB *dbp, DB_TXN *txn) case DB_NOTFOUND: break; default: - dbp->err(envp, ret, "Count records unspecified error"); + dbp->err(envp, ret, "Count records unspecified error"); goto cursor_err; } } while (ret == 0); cursor_err: if (cursorp != NULL) { - ret = cursorp->c_close(cursorp); + ret = cursorp->close(cursorp); if (ret != 0) { dbp->err(dbp, ret, - "count_records: cursor close failed."); + "count_records: cursor close failed."); } } @@ -691,7 +691,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, /* Initialize the DB handle */ ret = db_create(&dbp, envp, 0); if (ret != 0) { - fprintf(stderr, "%s: %s\n", progname, + fprintf(stderr, "%s: %s\n", progname, db_strerror(ret)); return (EXIT_FAILURE); } @@ -703,7 +703,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, ret = dbp->set_flags(dbp, extra_flags); if (ret != 0) { dbp->err(dbp, ret, - "open_db: Attempt to set extra flags failed."); + "open_db: Attempt to set extra flags failed."); return (EXIT_FAILURE); } } @@ -721,7 +721,7 @@ open_db(DB **dbpp, const char *progname, const char *file_name, open_flags, /* Open flags */ 0); /* File mode. Using defaults */ if (ret != 0) { - dbp->err(dbp, ret, "Database '%s' open failed", + dbp->err(dbp, ret, "Database '%s' open failed", file_name); return (EXIT_FAILURE); } @@ -738,18 +738,18 @@ open_db(DB **dbpp, const char *progname, const char *file_name,


    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 6. Summary and Examples Chapter 6. Summary and Examples  Home  In-Memory Transaction Example In-Memory Transaction Example
    diff --git a/db/docs/gsg_txn/C/txnindices.html b/db/docs/gsg_txn/C/txnindices.html index 97d5746f2..3d84b60f3 100644 --- a/db/docs/gsg_txn/C/txnindices.html +++ b/db/docs/gsg_txn/C/txnindices.html @@ -1,13 +1,13 @@ - + - + Secondary Indices with Transaction Applications - + @@ -18,9 +18,9 @@ Secondary Indices with Transaction Applications - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -89,7 +89,7 @@ if (ret != 0) { /* open the secondary database */ ret = sdbp->open(sdbp, /* DB structure pointer */ NULL, /* Transaction pointer */ - "my_secdb.db", /* On-disk file that holds the database. */ + "my_secdb.db", /* On-disk file that holds the database. */ NULL, /* Optional logical database name */ DB_BTREE, /* Database access method */ DB_AUTO_COMMIT, /* Open flags */ @@ -111,18 +111,18 @@ dbp->associate(dbp, /* Primary database */
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors Transactional Cursors  Home  Configuring the Transaction Subsystem Configuring the Transaction Subsystem
    diff --git a/db/docs/gsg_txn/C/txnnowait.html b/db/docs/gsg_txn/C/txnnowait.html index 3f88f5794..159f0f4bb 100644 --- a/db/docs/gsg_txn/C/txnnowait.html +++ b/db/docs/gsg_txn/C/txnnowait.html @@ -1,13 +1,13 @@ - + - + No Wait on Blocks - + @@ -18,9 +18,9 @@ No Wait on Blocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -62,7 +62,7 @@ DB_TXN *txn = NULL; ret = envp->txn_begin(envp, NULL, &txn, DB_TXN_NOWAIT); if (ret != 0) { - envp->err(envp, ret, "txn_begin failed"); + envp->err(envp, ret, "txn_begin failed"); return (EXIT_FAILURE); } .... @@ -72,18 +72,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Read/Modify/Write Read/Modify/Write  Home  Reverse BTree Splits Reverse BTree Splits
    diff --git a/db/docs/gsg_txn/C/usingtxns.html b/db/docs/gsg_txn/C/usingtxns.html index 828b21263..d95563598 100644 --- a/db/docs/gsg_txn/C/usingtxns.html +++ b/db/docs/gsg_txn/C/usingtxns.html @@ -1,9 +1,9 @@ - + - - Chapter 3. Transaction Basics + + Chapter 3. Transaction Basics @@ -15,12 +15,12 @@

    - One way to handle multi-process recovery is for every process to "register" its environment. In + One way to handle multi-process recovery is for every process to "register" its environment. In doing so, the process gains the ability to see if any other applications are using the environment and, if so, whether they have suffered an abnormal termination. If an abnormal termination is detected, the process runs recovery; otherwise, it does not. @@ -427,18 +427,18 @@


    - + - + - + - +
    Prev Prev  Up  Next Next
    Recovery Procedures Recovery Procedures  Home  Using Hot Failovers Using Hot Failovers
    diff --git a/db/docs/gsg_txn/CXX/autocommit.html b/db/docs/gsg_txn/CXX/autocommit.html index 7150c437a..58a7d02a8 100644 --- a/db/docs/gsg_txn/CXX/autocommit.html +++ b/db/docs/gsg_txn/CXX/autocommit.html @@ -1,13 +1,13 @@ - + - + Auto Commit - + @@ -18,9 +18,9 @@ Auto Commit - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -88,7 +88,7 @@

    For example, the following uses auto commit to perform the database write operation:

    -
    #include "db_cxx.h"
    +      
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -103,11 +103,11 @@ int main(void)
     
         u_int32_t db_flags = DB_CREATE | DB_AUTO_COMMIT;
         Db *dbp = NULL;
    -    const char *file_name = "mydb.db";
    -    const char *keystr ="thekey";
    -    const char *datastr = "thedata";
    +    const char *file_name = "mydb.db";
    +    const char *keystr ="thekey";
    +    const char *datastr = "thedata";
                                                                                                                                       
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -135,8 +135,8 @@ int main(void)
             db->put(NULL, &key, &data, 0);
     
         } catch(DbException &e) {
    -        std::cerr << "Error opening database and environment: "
    -                  << file_name << ", "
    +        std::cerr << "Error opening database and environment: "
    +                  << file_name << ", "
                       << envHome << std::endl;
             std::cerr << e.what() << std::endl;
         }
    @@ -146,8 +146,8 @@ int main(void)
                 dbp->close(0);
             myEnv.close(0);
         } catch(DbException &e) {
    -        std::cerr << "Error closing database and environment: "
    -                  << file_name << ", "
    +        std::cerr << "Error closing database and environment: "
    +                  << file_name << ", "
                       << envHome << std::endl;
             std::cerr << e.what() << std::endl;
             return (EXIT_FAILURE);
    @@ -160,18 +160,18 @@ int main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Aborting a Transaction Aborting a Transaction  Home  Nested Transactions Nested Transactions
    diff --git a/db/docs/gsg_txn/CXX/backuprestore.html b/db/docs/gsg_txn/CXX/backuprestore.html index 711e8b181..dbce73536 100644 --- a/db/docs/gsg_txn/CXX/backuprestore.html +++ b/db/docs/gsg_txn/CXX/backuprestore.html @@ -1,14 +1,14 @@ - + - + Backup Procedures - - + + @@ -18,9 +18,9 @@ Backup Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -322,18 +322,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 5. Managing DB Files Chapter 5. Managing DB Files  Home  Recovery Procedures Recovery Procedures
    diff --git a/db/docs/gsg_txn/CXX/blocking_deadlocks.html b/db/docs/gsg_txn/CXX/blocking_deadlocks.html index 69c14830f..5a7d5d858 100644 --- a/db/docs/gsg_txn/CXX/blocking_deadlocks.html +++ b/db/docs/gsg_txn/CXX/blocking_deadlocks.html @@ -1,14 +1,14 @@ - + - + Locks, Blocks, and Deadlocks - - + + @@ -18,9 +18,9 @@ Locks, Blocks, and Deadlocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -440,7 +440,7 @@ minimize the time you keep transactional cursors opened, or reduce your isolation - levels – see below. + levels – see below.

  • @@ -655,18 +655,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 4. Concurrency Chapter 4. Concurrency  Home  The Locking Subsystem The Locking Subsystem
    diff --git a/db/docs/gsg_txn/CXX/enabletxn.html b/db/docs/gsg_txn/CXX/enabletxn.html index 19ab65b21..bb0086698 100644 --- a/db/docs/gsg_txn/CXX/enabletxn.html +++ b/db/docs/gsg_txn/CXX/enabletxn.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Enabling Transactions + + Chapter 2. Enabling Transactions @@ -15,12 +15,12 @@
  • @@ -920,18 +922,18 @@
    - + - + - + - diff --git a/db/docs/gsg_txn/CXX/envopen.html b/db/docs/gsg_txn/CXX/envopen.html index 69028ca87..7216315d9 100644 --- a/db/docs/gsg_txn/CXX/envopen.html +++ b/db/docs/gsg_txn/CXX/envopen.html @@ -1,8 +1,8 @@ - + - + Opening a Transactional Environment and Database @@ -10,9 +10,9 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB Transaction Processing" /> - <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> + <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> </head> <body> <div class="navheader"> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> - <th width="60%" align="center">Chapter 2. Enabling Transactions</th> - <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <th width="60%" align="center">Chapter 2. Enabling Transactions</th> + <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> </table> <hr /> @@ -50,7 +50,7 @@ (in-memory cache). Frequently, but not always, you will also initialize the locking subsystem. For example: </p> - <pre class="programlisting">#include "db_cxx.h" + <pre class="programlisting">#include "db_cxx.h" ... @@ -63,7 +63,7 @@ int main(void) DB_INIT_MPOOL | // Initialize the cache DB_INIT_TXN; // Initialize transactions - std::string envHome("/export1/testEnv"); + std::string envHome("/export1/testEnv"); DbEnv myEnv(0); try { @@ -71,7 +71,7 @@ int main(void) myEnv.open(envHome.c_str(), env_flags, 0); } catch(DbException &e) { - std::cerr << "Error opening database environment: " + std::cerr << "Error opening database environment: " << envHome << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); @@ -80,7 +80,7 @@ int main(void) try { myEnv.close(0); } catch(DbException &e) { - std::cerr << "Error closing database environment: " + std::cerr << "Error closing database environment: " << envHome << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); @@ -107,7 +107,7 @@ int main(void) </p> - <pre class="programlisting">#include "db_cxx.h" + <pre class="programlisting">#include "db_cxx.h" ... @@ -122,9 +122,9 @@ int main(void) <b class="userinput"><tt>u_int32_t db_flags = DB_CREATE | DB_AUTO_COMMIT; Db *dbp = NULL; - const char *file_name = "mydb.db";</tt></b> + const char *file_name = "mydb.db";</tt></b> - std::string envHome("/export1/testEnv"); + std::string envHome("/export1/testEnv"); DbEnv myEnv(0); try { @@ -139,8 +139,8 @@ int main(void) 0); // File mode. Using defaults </tt></b> } catch(DbException &e) { - std::cerr << "Error opening database and environment: " - << file_name << ", " + std::cerr << "Error opening database and environment: " + << file_name << ", " << envHome << std::endl; std::cerr << e.what() << std::endl; } @@ -149,8 +149,8 @@ int main(void) <b class="userinput"><tt>dbp->close(0);</tt></b> myEnv.close(0); } catch(DbException &e) { - std::cerr << "Error closing database and environment: " - << file_name << ", " + std::cerr << "Error closing database and environment: " + << file_name << ", " << envHome << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); @@ -171,18 +171,18 @@ int main(void) <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="enabletxn.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> + <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> + <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> </tr> </table> </div> diff --git a/db/docs/gsg_txn/CXX/filemanagement.html b/db/docs/gsg_txn/CXX/filemanagement.html index f22698eaf..1f9078f68 100644 --- a/db/docs/gsg_txn/CXX/filemanagement.html +++ b/db/docs/gsg_txn/CXX/filemanagement.html @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> - <title>Chapter 5. Managing DB Files + + Chapter 5. Managing DB Files @@ -15,12 +15,12 @@
    Prev Prev  Up  Next Next
    Performance Tuning Performance Tuning  Home  Opening a Transactional Environment and +  Opening a Transactional Environment and Database
    - + - - - + + +
    Chapter 5. Managing DB FilesChapter 5. Managing DB Files
    Prev   NextPrev   Next

    @@ -29,7 +29,7 @@
    -

    Chapter 5. Managing DB Files

    +

    Chapter 5. Managing DB Files

    @@ -302,7 +302,7 @@ For example, to run a checkpoint from a separate thread of control:

    #include <pthread.h>
    -#include "db_cxx.h"
    +#include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -318,7 +318,7 @@ int main(void)
                               DB_THREAD     |  // Free-thread the env handle
                               DB_INIT_TXN;     // Initialize transactions
                                                                                                                                       
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -331,7 +331,7 @@ int main(void)
             if ((ret = pthread_create( 
                 &ptid, NULL, checkpoint_thread, (void *)&myEnv)) != 0) { 
                     fprintf(stderr, 
    -                    "txnapp: failed spawning checkpoint thread: %s\n", 
    +                    "txnapp: failed spawning checkpoint thread: %s\n", 
                         strerror(errno)); 
                     myEnv.close(0);
                     exit (1); 
    @@ -352,7 +352,7 @@ checkpoint_thread(void *arg) {
             try {
                 dbenv->txn_checkpoint(0, 0, 0));
             } catch(DbException &e) {
    -            dbenv->err(e.get_errno(), "checkpoint thread"); 
    +            dbenv->err(e.get_errno(), "checkpoint thread"); 
                 exit (e.get_errno()); 
             }
         }
    @@ -365,18 +365,18 @@ checkpoint_thread(void *arg) {
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Reverse BTree Splits Reverse BTree Splits  Home  Backup Procedures Backup Procedures
    diff --git a/db/docs/gsg_txn/CXX/hotfailover.html b/db/docs/gsg_txn/CXX/hotfailover.html index fa3dcc152..9c6258f5f 100644 --- a/db/docs/gsg_txn/CXX/hotfailover.html +++ b/db/docs/gsg_txn/CXX/hotfailover.html @@ -1,13 +1,13 @@ - + - + Using Hot Failovers - + @@ -18,9 +18,9 @@ Using Hot Failovers - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -191,18 +191,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Designing Your Application for Recovery Designing Your Application for Recovery  Home  Removing Log Files Removing Log Files
    diff --git a/db/docs/gsg_txn/CXX/index.html b/db/docs/gsg_txn/CXX/index.html index e43890ce3..40883f92a 100644 --- a/db/docs/gsg_txn/CXX/index.html +++ b/db/docs/gsg_txn/CXX/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB Transaction Processing @@ -16,9 +16,9 @@ Getting Started with Berkeley DB Transaction Processing -   -   -  Next +   +   +  Next
    @@ -27,7 +27,7 @@
    -

    Getting Started with Berkeley DB Transaction Processing

    +

    Getting Started with Berkeley DB Transaction Processing

    @@ -37,7 +37,7 @@

    This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

    @@ -47,9 +47,9 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

    To obtain a copy of this document's original source code, please @@ -61,7 +61,7 @@

    -

    9/20/2006

    +

    6/30/2007

    @@ -510,14 +510,14 @@
    - - - + + + - - - + + +
       Next   Next
       Preface   Preface
    diff --git a/db/docs/gsg_txn/CXX/inmem_txnexample_c.html b/db/docs/gsg_txn/CXX/inmem_txnexample_c.html index 5e5dd5f0a..9363d8300 100644 --- a/db/docs/gsg_txn/CXX/inmem_txnexample_c.html +++ b/db/docs/gsg_txn/CXX/inmem_txnexample_c.html @@ -1,13 +1,13 @@ - + - + In-Memory Transaction Example - + @@ -17,9 +17,9 @@ In-Memory Transaction Example - Prev  - Chapter 6. Summary and Examples -   + Prev  + Chapter 6. Summary and Examples +  
    @@ -54,7 +54,7 @@

    Refrain from specifying a home directory when you open your environment. The exception to this is if you are using the - DB_CONFIG configuration file — in + DB_CONFIG configuration file — in that case you must identify the environment's home directory so that the configuration file can be found.

    @@ -162,7 +162,7 @@ main(void) u_int32_t envFlags; // Application name - const char *progName = "TxnGuideInMemory";
    + const char *progName = "TxnGuideInMemory";

    Next we create our environment as always. However, we add DB_PRIVATE to our environment open flags. This @@ -265,7 +265,7 @@ main(void) (void)pthread_join(writerThreads[i], NULL); } catch(DbException &e) { - std::cerr << "Error opening database environment: " + std::cerr << "Error opening database environment: " << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); @@ -280,7 +280,7 @@ main(void) if (envp != NULL) envp->close(0); } catch(DbException &e) { - std::cerr << "Error closing database and environment." + std::cerr << "Error closing database and environment." << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); @@ -288,7 +288,7 @@ main(void) // Final status message and return. - std::cout << "I'm all done." << std::endl; + std::cout << "I'm all done." << std::endl; return (EXIT_SUCCESS); }

    @@ -316,9 +316,9 @@ writerThread(void *args) int j, thread_num; int max_retries = 20; // Max retry on a deadlock - char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", - "key 5", "key 6", "key 7", "key 8", - "key 9", "key 10"}; + char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", + "key 5", "key 6", "key 7", "key 8", + "key 9", "key 10"}; // Get the thread number (void)pthread_mutex_lock(&thread_num_lock); @@ -351,7 +351,7 @@ writerThread(void *args) // deadlocks, so for this workload the correct thing // would be to perform our puts with auto commit. But // that would excessively simplify our example, so we - // do the "wrong" thing here instead. + // do the "wrong" thing here instead. txn = NULL; envp->txn_begin(NULL, &txn, 0); // Perform the database write for this transaction. @@ -371,11 +371,11 @@ writerThread(void *args) // countRecords runs a cursor over the entire database. // We do this to illustrate issues of deadlocking - std::cout << thread_num << " : Found " + std::cout << thread_num << " : Found " << countRecords(dbp, txn) - << " records in the database." << std::endl; + << " records in the database." << std::endl; - std::cout << thread_num << " : committing txn : " << i + std::cout << thread_num << " : committing txn : " << i << std::endl; // commit @@ -384,7 +384,7 @@ writerThread(void *args) retry = false; txn = NULL; } catch (DbException &e) { - std::cout << "Error on txn commit: " + std::cout << "Error on txn commit: " << e.what() << std::endl; } } catch (DbDeadlockException &de) { @@ -396,27 +396,27 @@ writerThread(void *args) // If we have retried less than max_retries, // increment the retry count and goto retry. if (retry_count < max_retries) { - std::cout << "############### Writer " << thread_num - << ": Got DB_LOCK_DEADLOCK.\n" - << "Retrying write operation." + std::cout << "############### Writer " << thread_num + << ": Got DB_LOCK_DEADLOCK.\n" + << "Retrying write operation." << std::endl; retry_count++; retry = true; } else { // Otherwise, just give up. - std::cerr << "Writer " << thread_num - << ": Got DeadLockException and out of " - << "retries. Giving up." << std::endl; + std::cerr << "Writer " << thread_num + << ": Got DeadLockException and out of " + << "retries. Giving up." << std::endl; retry = false; } } catch (DbException &e) { - std::cerr << "db put failed" << std::endl; + std::cerr << "db put failed" << std::endl; std::cerr << e.what() << std::endl; if (txn != NULL) txn->abort(); retry = false; } catch (std::exception &ee) { - std::cerr << "Unknown exception: " << ee.what() << std::endl; + std::cerr << "Unknown exception: " << ee.what() << std::endl; return (0); } } @@ -451,11 +451,11 @@ countRecords(Db *dbp, DbTxn *txn) count++; } } catch (DbDeadlockException &de) { - std::cerr << "countRecords: got deadlock" << std::endl; + std::cerr << "countRecords: got deadlock" << std::endl; cursorp->close(); throw de; } catch (DbException &e) { - std::cerr << "countRecords error:" << std::endl; + std::cerr << "countRecords error:" << std::endl; std::cerr << e.what() << std::endl; } @@ -463,7 +463,7 @@ countRecords(Db *dbp, DbTxn *txn) try { cursorp->close(); } catch (DbException &e) { - std::cerr << "countRecords: cursor close failed:" << std::endl; + std::cerr << "countRecords: cursor close failed:" << std::endl; std::cerr << e.what() << std::endl; } } @@ -509,7 +509,7 @@ openDb(Db **dbpp, const char *progname, const char *fileName, openFlags, // Open flags 0); // File mode. Using defaults } catch (DbException &e) { - std::cerr << progname << ": openDb: db open failed:" << std::endl; + std::cerr << progname << ": openDb: db open failed:" << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); } @@ -527,18 +527,18 @@ openDb(Db **dbpp, const char *progname, const char *fileName,


    - + - + - + - +
    Prev Prev  Up  Â 
    Transaction Example Transaction Example  Home  Â 
    diff --git a/db/docs/gsg_txn/CXX/introduction.html b/db/docs/gsg_txn/CXX/introduction.html index 9d03afe4e..744f7cfce 100644 --- a/db/docs/gsg_txn/CXX/introduction.html +++ b/db/docs/gsg_txn/CXX/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/CXX/lockingsubsystem.html b/db/docs/gsg_txn/CXX/lockingsubsystem.html index 81631cb28..d4925ab8d 100644 --- a/db/docs/gsg_txn/CXX/lockingsubsystem.html +++ b/db/docs/gsg_txn/CXX/lockingsubsystem.html @@ -1,13 +1,13 @@ - + - + The Locking Subsystem - + @@ -18,9 +18,9 @@ The Locking Subsystem - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -160,7 +160,7 @@ For example, to configure the maximum number of locks that your environment can use:

    -
    #include "db_cxx.h"
    +        
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -174,7 +174,7 @@ int main(void)
                               DB_THREAD     |  // Free-thread the env handle.
                               DB_INIT_TXN;     // Initialize transactions
                                                                                                                                       
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -185,7 +185,7 @@ int main(void)
             myEnv.open(envHome.c_str(), env_flags, 0);
     
         } catch(DbException &e) {
    -        std::cerr << "Error opening database environment: "
    +        std::cerr << "Error opening database environment: "
                       << envHome << std::endl;
             std::cerr << e.what() << std::endl;
             return (EXIT_FAILURE);
    @@ -194,7 +194,7 @@ int main(void)
         try {
             myEnv.close(0);
         } catch(DbException &e) {
    -        std::cerr << "Error closing database environment: "
    +        std::cerr << "Error closing database environment: "
                     << envHome << std::endl;
             std::cerr << e.what() << std::endl;
             return (EXIT_FAILURE);
    @@ -333,7 +333,7 @@ int main(void)
                     checks the lock table for deadlocks every time a lock
                     request is blocked:
                 

    -
    #include "db_cxx.h"
    +        
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -347,7 +347,7 @@ int main(void)
                               DB_THREAD     |  // Free-thread the env handle
                               DB_INIT_TXN;     // Initialize transactions
     
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -459,20 +459,20 @@ while (retry_count < MAX_DEADLOCK_RETRIES) {
                 retry_count++;
                 // If we've retried too many times, log it and exit
                 if (retry_count >= MAX_DEADLOCK_RETRIES) {
    -                    envp->errx("Exceeded retry limit. Giving up.");
    +                    envp->errx("Exceeded retry limit. Giving up.");
                         return (EXIT_FAILURE);
                 }
             } catch (DbException &ae) {
    -            envp->err(ae.get_errno(), "txn abort failed.");
    +            envp->err(ae.get_errno(), "txn abort failed.");
                 return (EXIT_FAILURE);    
             }
         } catch (DbException &e) {
             try {
                 // For a generic error, log it and abort.
    -            envp->err(e.get_errno(), "Error putting data.");
    +            envp->err(e.get_errno(), "Error putting data.");
                 txn->abort();
             } catch (DbException &ae) {
    -            envp->err(ae.get_errno(), "txn abort failed.");
    +            envp->err(ae.get_errno(), "txn abort failed.");
                 return (EXIT_FAILURE);    
             }
         }
    @@ -483,18 +483,18 @@ while (retry_count < MAX_DEADLOCK_RETRIES) {
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Locks, Blocks, and Deadlocks Locks, Blocks, and Deadlocks  Home  Isolation Isolation
    diff --git a/db/docs/gsg_txn/CXX/logconfig.html b/db/docs/gsg_txn/CXX/logconfig.html index ec3268ae7..690a50bce 100644 --- a/db/docs/gsg_txn/CXX/logconfig.html +++ b/db/docs/gsg_txn/CXX/logconfig.html @@ -1,15 +1,15 @@ - + - + Configuring the Logging Subsystem - + - + diff --git a/db/docs/gsg_txn/CXX/logfileremoval.html b/db/docs/gsg_txn/CXX/logfileremoval.html index dae151e87..038930537 100644 --- a/db/docs/gsg_txn/CXX/logfileremoval.html +++ b/db/docs/gsg_txn/CXX/logfileremoval.html @@ -1,13 +1,13 @@ - + - + Removing Log Files - + @@ -18,9 +18,9 @@ Removing Log Files - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -187,18 +187,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Using Hot Failovers Using Hot Failovers  Home  Configuring the Logging Subsystem Configuring the Logging Subsystem
    diff --git a/db/docs/gsg_txn/CXX/maxtxns.html b/db/docs/gsg_txn/CXX/maxtxns.html index 1a815c290..e8fee2075 100644 --- a/db/docs/gsg_txn/CXX/maxtxns.html +++ b/db/docs/gsg_txn/CXX/maxtxns.html @@ -1,15 +1,15 @@ - + - + Configuring the Transaction Subsystem - + - + diff --git a/db/docs/gsg_txn/CXX/nestedtxn.html b/db/docs/gsg_txn/CXX/nestedtxn.html index f15aafb9c..75fa0bcf5 100644 --- a/db/docs/gsg_txn/CXX/nestedtxn.html +++ b/db/docs/gsg_txn/CXX/nestedtxn.html @@ -1,13 +1,13 @@ - + - + Nested Transactions - + @@ -18,9 +18,9 @@ Nested Transactions - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -121,18 +121,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Auto Commit Auto Commit  Home  Transactional Cursors Transactional Cursors
    diff --git a/db/docs/gsg_txn/CXX/perftune-intro.html b/db/docs/gsg_txn/CXX/perftune-intro.html index e9dff26fc..5a31485c0 100644 --- a/db/docs/gsg_txn/CXX/perftune-intro.html +++ b/db/docs/gsg_txn/CXX/perftune-intro.html @@ -1,15 +1,15 @@ - + - + Performance Tuning - + - + diff --git a/db/docs/gsg_txn/CXX/preface.html b/db/docs/gsg_txn/CXX/preface.html index 37929aed5..58c4749be 100644 --- a/db/docs/gsg_txn/CXX/preface.html +++ b/db/docs/gsg_txn/CXX/preface.html @@ -1,15 +1,15 @@ - + - + Preface - + diff --git a/db/docs/gsg_txn/CXX/readmodifywrite.html b/db/docs/gsg_txn/CXX/readmodifywrite.html index 62375dc3a..1f396b9c3 100644 --- a/db/docs/gsg_txn/CXX/readmodifywrite.html +++ b/db/docs/gsg_txn/CXX/readmodifywrite.html @@ -1,13 +1,13 @@ - + - + Read/Modify/Write - + @@ -18,9 +18,9 @@ Read/Modify/Write - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -105,18 +105,18 @@ while (retry_count < MAX_DEADLOCK_RETRIES) {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors and Concurrent Applications Transactional Cursors and Concurrent Applications  Home  No Wait on Blocks No Wait on Blocks
    diff --git a/db/docs/gsg_txn/CXX/recovery-intro.html b/db/docs/gsg_txn/CXX/recovery-intro.html index ee490b9ba..e971eef93 100644 --- a/db/docs/gsg_txn/CXX/recovery-intro.html +++ b/db/docs/gsg_txn/CXX/recovery-intro.html @@ -1,14 +1,14 @@ - + - + Recoverability - - + + @@ -18,9 +18,9 @@ Recoverability - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
    @@ -85,18 +85,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 1. Introduction Chapter 1. Introduction  Home  Performance Tuning Performance Tuning
    diff --git a/db/docs/gsg_txn/CXX/recovery.html b/db/docs/gsg_txn/CXX/recovery.html index 546326ad7..16595702b 100644 --- a/db/docs/gsg_txn/CXX/recovery.html +++ b/db/docs/gsg_txn/CXX/recovery.html @@ -1,13 +1,13 @@ - + - + Recovery Procedures - + @@ -18,9 +18,9 @@ Recovery Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -141,7 +141,7 @@

    For example:

    -
    #include "db_cxx.h"
    +        
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -158,7 +158,7 @@ int main(void)
                               DB_THREAD     |  // Free-thread the env handle
                               DB_RECOVER;      // Run normal recovery
                                                                                                                                       
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -224,7 +224,7 @@ int main(void)
                 

    Note that catastrophic recovery examines every available - log file — not just those log files created since the + log file — not just those log files created since the last checkpoint as is the case for normal recovery. For this reason, catastrophic recovery is likely to take longer than does normal recovery. @@ -232,7 +232,7 @@ int main(void)

    For example:

    -
    #include "db_cxx.h"
    +        
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -249,7 +249,7 @@ int main(void)
                               DB_THREAD     |  // Free-thread the env handle
                               DB_RECOVER_FATAL;   // Run catastrophic recovery
                                                                                                                                       
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         try {
    @@ -269,18 +269,18 @@ int main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Backup Procedures Backup Procedures  Home  Designing Your Application for Recovery Designing Your Application for Recovery
    diff --git a/db/docs/gsg_txn/CXX/reversesplit.html b/db/docs/gsg_txn/CXX/reversesplit.html index 9c06afcec..a0ad62960 100644 --- a/db/docs/gsg_txn/CXX/reversesplit.html +++ b/db/docs/gsg_txn/CXX/reversesplit.html @@ -1,15 +1,15 @@ - + - + Reverse BTree Splits - + - + diff --git a/db/docs/gsg_txn/CXX/txn_ccursor.html b/db/docs/gsg_txn/CXX/txn_ccursor.html index be89a3dc8..e6ccb1443 100644 --- a/db/docs/gsg_txn/CXX/txn_ccursor.html +++ b/db/docs/gsg_txn/CXX/txn_ccursor.html @@ -1,13 +1,13 @@ - + - + Transactional Cursors and Concurrent Applications - + @@ -18,9 +18,9 @@ Transactional Cursors and Concurrent Applications - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -86,7 +86,7 @@ configuring a transaction to perform uncommitted reads in general, see Reading Uncommitted Data.

    -
    #include "db_cxx.h"
    +        
    #include "db_cxx.h"
     
     ...
                                                                                                                                       
    @@ -105,9 +105,9 @@ int main(void)
                              DB_READ_UNCOMMITTED;  // Enable uncommitted reads
     
         Db *dbp = NULL;
    -    const char *file_name = "mydb.db";
    +    const char *file_name = "mydb.db";
     
    -    std::string envHome("/export1/testEnv");
    +    std::string envHome("/export1/testEnv");
         DbEnv myEnv(0);
     
         Dbc *cursorp = NULL;
    @@ -144,18 +144,18 @@ int main(void)
           
    - + - + - + - +
    Prev Prev  Up  Next Next
    Isolation Isolation  Home  Read/Modify/Write Read/Modify/Write
    diff --git a/db/docs/gsg_txn/CXX/txnconcurrency.html b/db/docs/gsg_txn/CXX/txnconcurrency.html index 570a0d0ee..864b57fbc 100644 --- a/db/docs/gsg_txn/CXX/txnconcurrency.html +++ b/db/docs/gsg_txn/CXX/txnconcurrency.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Concurrency + + Chapter 4. Concurrency @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/CXX/txnexample_c.html b/db/docs/gsg_txn/CXX/txnexample_c.html index 1e1c9419c..756560432 100644 --- a/db/docs/gsg_txn/CXX/txnexample_c.html +++ b/db/docs/gsg_txn/CXX/txnexample_c.html @@ -1,14 +1,14 @@ - + - + Transaction Example - - + + @@ -18,9 +18,9 @@ Transaction Example - Prev  - Chapter 6. Summary and Examples -  Next + Prev  + Chapter 6. Summary and Examples +  Next
    @@ -106,7 +106,7 @@ void *writerThread(void *);
    int usage() { - std::cerr << " [-h <database_home_directory>]" << std::endl; + std::cerr << " [-h <database_home_directory>]" << std::endl; return (EXIT_FAILURE); }

    @@ -128,10 +128,10 @@ main(int argc, char *argv[]) char *dbHomeDir; // Application name - const char *progName = "TxnGuide"; + const char *progName = "TxnGuide"; // Database file name - const char *fileName = "mydb.db";

    + const char *fileName = "mydb.db";

    Now we need to parse our command line. In this case, all we want is to know where our environment directory is. If the -h @@ -140,11 +140,11 @@ main(int argc, char *argv[])

        // Parse the command line arguments
     #ifdef _WIN32
    -    dbHomeDir = ".\\";
    +    dbHomeDir = ".\\";
     #else
    -    dbHomeDir = "./";
    +    dbHomeDir = "./";
     #endif
    -    while ((ch = getopt(argc, argv, "h:")) != EOF)
    +    while ((ch = getopt(argc, argv, "h:")) != EOF)
             switch (ch) {
             case 'h':
                 dbHomeDir = optarg;
    @@ -247,7 +247,7 @@ The implementation of open_db() is described
                 (void)pthread_join(writerThreads[i], NULL);
     
         } catch(DbException &e) {
    -        std::cerr << "Error opening database environment: "
    +        std::cerr << "Error opening database environment: "
                       << dbHomeDir << std::endl;
             std::cerr << e.what() << std::endl;
             return (EXIT_FAILURE);
    @@ -270,7 +270,7 @@ The implementation of open_db() is described
             if (envp != NULL)
                 envp->close(0);
         } catch(DbException &e) {
    -        std::cerr << "Error closing database and environment."
    +        std::cerr << "Error closing database and environment."
                       << std::endl;
             std::cerr << e.what() << std::endl;
             return (EXIT_FAILURE);
    @@ -278,7 +278,7 @@ The implementation of open_db() is described
     
         // Final status message and return.
     
    -    std::cout << "I'm all done." << std::endl;
    +    std::cout << "I'm all done." << std::endl;
         return (EXIT_SUCCESS);
     }  

    @@ -299,9 +299,9 @@ writerThread(void *args) { int j, thread_num; int max_retries = 20; // Max retry on a deadlock - char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", - "key 5", "key 6", "key 7", "key 8", - "key 9", "key 10"}; + char *key_strings[] = {"key 1", "key 2", "key 3", "key 4", + "key 5", "key 6", "key 7", "key 8", + "key 9", "key 10"}; Db *dbp = (Db *)args; DbEnv *envp = dbp->get_env();

    @@ -374,7 +374,7 @@ writerThread(void *args) // deadlocks, so for this workload the correct thing // would be to perform our puts with auto commit. But // that would excessively simplify our example, so we - // do the "wrong" thing here instead. + // do the "wrong" thing here instead. txn = NULL; envp->txn_begin(NULL, &txn, 0);

    @@ -413,11 +413,11 @@ writerThread(void *args)

                    // countRecords runs a cursor over the entire database.
                     // We do this to illustrate issues of deadlocking
    -                std::cout << thread_num <<  " : Found " 
    +                std::cout << thread_num <<  " : Found " 
                               <<  countRecords(dbp, NULL)    
    -                          << " records in the database." << std::endl;
    +                          << " records in the database." << std::endl;
     
    -                std::cout << thread_num <<  " : committing txn : " << i 
    +                std::cout << thread_num <<  " : committing txn : " << i 
                               << std::endl;
     
                     // commit
    @@ -426,7 +426,7 @@ writerThread(void *args)
                         retry = false;
                         txn = NULL;
                     } catch (DbException &e) {
    -                    std::cout << "Error on txn commit: "
    +                    std::cout << "Error on txn commit: "
                                   << e.what() << std::endl;
                     }  

    @@ -444,27 +444,27 @@ writerThread(void *args) // If we have retried less than max_retries, // increment the retry count and goto retry. if (retry_count < max_retries) { - std::cout << "############### Writer " << thread_num - << ": Got DB_LOCK_DEADLOCK.\n" - << "Retrying write operation." + std::cout << "############### Writer " << thread_num + << ": Got DB_LOCK_DEADLOCK.\n" + << "Retrying write operation." << std::endl; retry_count++; retry = true; } else { // Otherwise, just give up. - std::cerr << "Writer " << thread_num - << ": Got DeadLockException and out of " - << "retries. Giving up." << std::endl; + std::cerr << "Writer " << thread_num + << ": Got DeadLockException and out of " + << "retries. Giving up." << std::endl; retry = false; } } catch (DbException &e) { - std::cerr << "db put failed" << std::endl; + std::cerr << "db put failed" << std::endl; std::cerr << e.what() << std::endl; if (txn != NULL) txn->abort(); retry = false; } catch (std::exception &ee) { - std::cerr << "Unknown exception: " << ee.what() << std::endl; + std::cerr << "Unknown exception: " << ee.what() << std::endl; return (0); } } @@ -575,11 +575,11 @@ countRecords(Db *dbp, DbTxn *txn) count++; } } catch (DbDeadlockException &de) { - std::cerr << "countRecords: got deadlock" << std::endl; + std::cerr << "countRecords: got deadlock" << std::endl; cursorp->close(); throw de; } catch (DbException &e) { - std::cerr << "countRecords error:" << std::endl; + std::cerr << "countRecords error:" << std::endl; std::cerr << e.what() << std::endl; } @@ -587,7 +587,7 @@ countRecords(Db *dbp, DbTxn *txn) try { cursorp->close(); } catch (DbException &e) { - std::cerr << "countRecords: cursor close failed:" << std::endl; + std::cerr << "countRecords: cursor close failed:" << std::endl; std::cerr << e.what() << std::endl; } } @@ -637,7 +637,7 @@ openDb(Db **dbpp, const char *progname, const char *fileName, openFlags, // Open flags 0); // File mode. Using defaults } catch (DbException &e) { - std::cerr << progname << "open_db: db open failed:" << std::endl; + std::cerr << progname << "open_db: db open failed:" << std::endl; std::cerr << e.what() << std::endl; return (EXIT_FAILURE); } @@ -655,18 +655,18 @@ openDb(Db **dbpp, const char *progname, const char *fileName,


    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 6. Summary and Examples Chapter 6. Summary and Examples  Home  In-Memory Transaction Example In-Memory Transaction Example
    diff --git a/db/docs/gsg_txn/CXX/txnindices.html b/db/docs/gsg_txn/CXX/txnindices.html index e4e8502f7..b56d17ae0 100644 --- a/db/docs/gsg_txn/CXX/txnindices.html +++ b/db/docs/gsg_txn/CXX/txnindices.html @@ -1,13 +1,13 @@ - + - + Secondary Indices with Transaction Applications - + @@ -18,9 +18,9 @@ Secondary Indices with Transaction Applications - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -81,7 +81,7 @@ Db my_index(&envp, 0); // Secondary // Open the secondary my_index.open(NULL, // Transaction pointer - "my_secondary.db", // On-disk file that holds the database. + "my_secondary.db", // On-disk file that holds the database. NULL, // Optional logical database name DB_BTREE, // Database access method DB_AUTO_COMMIT, // Open flags. @@ -99,18 +99,18 @@ my_database.associate(NULL, // Txn id
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors Transactional Cursors  Home  Configuring the Transaction Subsystem Configuring the Transaction Subsystem
    diff --git a/db/docs/gsg_txn/CXX/txnnowait.html b/db/docs/gsg_txn/CXX/txnnowait.html index c47f486fd..3c58513ed 100644 --- a/db/docs/gsg_txn/CXX/txnnowait.html +++ b/db/docs/gsg_txn/CXX/txnnowait.html @@ -1,13 +1,13 @@ - + - + No Wait on Blocks - + @@ -18,9 +18,9 @@ No Wait on Blocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -72,18 +72,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Read/Modify/Write Read/Modify/Write  Home  Reverse BTree Splits Reverse BTree Splits
    diff --git a/db/docs/gsg_txn/CXX/usingtxns.html b/db/docs/gsg_txn/CXX/usingtxns.html index 906664f44..9afefac19 100644 --- a/db/docs/gsg_txn/CXX/usingtxns.html +++ b/db/docs/gsg_txn/CXX/usingtxns.html @@ -1,9 +1,9 @@ - + - - Chapter 3. Transaction Basics + + Chapter 3. Transaction Basics @@ -15,12 +15,12 @@

    - One way to handle multi-process recovery is for every process to "register" its environment. In + One way to handle multi-process recovery is for every process to "register" its environment. In doing so, the process gains the ability to see if any other applications are using the environment and, if so, whether they have suffered an abnormal termination. If an abnormal termination is detected, the process runs recovery; otherwise, it does not. @@ -318,18 +318,18 @@


    - + - + - + - +
    Prev Prev  Up  Next Next
    Recovery Procedures Recovery Procedures  Home  Using Hot Failovers Using Hot Failovers
    diff --git a/db/docs/gsg_txn/JAVA/autocommit.html b/db/docs/gsg_txn/JAVA/autocommit.html index 22d75ac0f..e77df5ea2 100644 --- a/db/docs/gsg_txn/JAVA/autocommit.html +++ b/db/docs/gsg_txn/JAVA/autocommit.html @@ -1,13 +1,13 @@ - + - + Auto Commit - + @@ -18,9 +18,9 @@ Auto Commit - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -95,7 +95,7 @@ try { myEnvConfig.setInitializeLogging(true); myEnvConfig.setTransactional(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); // Open the database. @@ -103,15 +103,15 @@ try { dbConfig.setTransactional(true); dbConfig.setType(DatabaseType.BTREE); myDatabase = myEnv.openDatabase(null, // txn handle - "sampleDatabase", // db file name + "sampleDatabase", // db file name null, // db name dbConfig); - String keyString = "thekey"; - String dataString = "thedata"; + String keyString = "thekey"; + String dataString = "thedata"; DatabaseEntry key = - new DatabaseEntry(keyString.getBytes("UTF-8")); + new DatabaseEntry(keyString.getBytes("UTF-8")); DatabaseEntry data = - new DatabaseEntry(dataString.getBytes("UTF-8")); + new DatabaseEntry(dataString.getBytes("UTF-8")); // Perform the write. Because the database was opened to // support transactions, this write is performed using auto commit. @@ -125,18 +125,18 @@ try {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Aborting a Transaction Aborting a Transaction  Home  Nested Transactions Nested Transactions
    diff --git a/db/docs/gsg_txn/JAVA/backuprestore.html b/db/docs/gsg_txn/JAVA/backuprestore.html index efc75c030..0e082eb5b 100644 --- a/db/docs/gsg_txn/JAVA/backuprestore.html +++ b/db/docs/gsg_txn/JAVA/backuprestore.html @@ -1,14 +1,14 @@ - + - + Backup Procedures - - + + @@ -18,9 +18,9 @@ Backup Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -317,18 +317,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 5. Managing DB Files Chapter 5. Managing DB Files  Home  Recovery Procedures Recovery Procedures
    diff --git a/db/docs/gsg_txn/JAVA/blocking_deadlocks.html b/db/docs/gsg_txn/JAVA/blocking_deadlocks.html index 4677860bd..e06806df2 100644 --- a/db/docs/gsg_txn/JAVA/blocking_deadlocks.html +++ b/db/docs/gsg_txn/JAVA/blocking_deadlocks.html @@ -1,14 +1,14 @@ - + - + Locks, Blocks, and Deadlocks - - + + @@ -18,9 +18,9 @@ Locks, Blocks, and Deadlocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -440,7 +440,7 @@ minimize the time you keep transactional cursors opened, or reduce your isolation - levels – see below. + levels – see below.

  • @@ -655,18 +655,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 4. Concurrency Chapter 4. Concurrency  Home  The Locking Subsystem The Locking Subsystem
    diff --git a/db/docs/gsg_txn/JAVA/enabletxn.html b/db/docs/gsg_txn/JAVA/enabletxn.html index 77ed3f571..4fab809cb 100644 --- a/db/docs/gsg_txn/JAVA/enabletxn.html +++ b/db/docs/gsg_txn/JAVA/enabletxn.html @@ -1,9 +1,9 @@ - + - - Chapter 2. Enabling Transactions + + Chapter 2. Enabling Transactions @@ -15,12 +15,12 @@
  • @@ -853,18 +855,18 @@
    - + - + - + - diff --git a/db/docs/gsg_txn/JAVA/envopen.html b/db/docs/gsg_txn/JAVA/envopen.html index 1e207c1f7..ee0ac651a 100644 --- a/db/docs/gsg_txn/JAVA/envopen.html +++ b/db/docs/gsg_txn/JAVA/envopen.html @@ -1,8 +1,8 @@ - + - + Opening a Transactional Environment and Database @@ -10,9 +10,9 @@ <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.62.4" /> <link rel="home" href="index.html" title="Getting Started with Berkeley DB Transaction Processing" /> - <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> - <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> + <link rel="up" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="previous" href="enabletxn.html" title="Chapter 2. Enabling Transactions" /> + <link rel="next" href="usingtxns.html" title="Chapter 3. Transaction Basics" /> </head> <body> <div class="navheader"> @@ -24,9 +24,9 @@ </th> </tr> <tr> - <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> - <th width="60%" align="center">Chapter 2. Enabling Transactions</th> - <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="20%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <th width="60%" align="center">Chapter 2. Enabling Transactions</th> + <td width="20%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> </table> <hr /> @@ -69,7 +69,7 @@ try { myEnvConfig.setInitializeLogging(true); myEnvConfig.setTransactional(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); } catch (DatabaseException de) { @@ -111,7 +111,7 @@ try { myEnvConfig.setInitializeLogging(true); myEnvConfig.setTransactional(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); <b class="userinput"><tt>// Open the database. @@ -119,7 +119,7 @@ try { dbConfig.setTransactional(true); dbConfig.setType(DatabaseType.BTREE); myDatabase = myEnv.openDatabase(null, // txn handle - "sampleDatabase", // db file name + "sampleDatabase", // db file name null, // db name dbConfig);</tt></b> } catch (DatabaseException de) { @@ -140,18 +140,18 @@ try { <hr /> <table width="100%" summary="Navigation footer"> <tr> - <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> + <td width="40%" align="left"><a accesskey="p" href="enabletxn.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="enabletxn.html">Up</a> </td> - <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> + <td width="40%" align="right"> <a accesskey="n" href="usingtxns.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> + <td width="40%" align="left" valign="top">Chapter 2. Enabling Transactions </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> - <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> + <td width="40%" align="right" valign="top"> Chapter 3. Transaction Basics</td> </tr> </table> </div> diff --git a/db/docs/gsg_txn/JAVA/filemanagement.html b/db/docs/gsg_txn/JAVA/filemanagement.html index ab748bffa..2184a809b 100644 --- a/db/docs/gsg_txn/JAVA/filemanagement.html +++ b/db/docs/gsg_txn/JAVA/filemanagement.html @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> - <title>Chapter 5. Managing DB Files + + Chapter 5. Managing DB Files @@ -15,12 +15,12 @@
    Prev Prev  Up  Next Next
    Performance Tuning Performance Tuning  Home  Opening a Transactional Environment and +  Opening a Transactional Environment and Database
    - + - - - + + +
    Chapter 5. Managing DB FilesChapter 5. Managing DB Files
    Prev   NextPrev   Next

    @@ -29,7 +29,7 @@
    -

    Chapter 5. Managing DB Files

    +

    Chapter 5. Managing DB Files

    @@ -331,11 +331,11 @@ public class CheckPointer extends Thread myEnv.checkpoint(cpc); sleep(60000); } catch (DatabaseException de) { - System.err.println("Checkpoint error: " + + System.err.println("Checkpoint error: " + de.toString()); } catch (InterruptedException e) { // Should never get here - System.err.println("got interrupted exception"); + System.err.println("got interrupted exception"); } } } @@ -360,13 +360,13 @@ import java.io.FileNotFoundException; public class TryCheckPoint { - private static String myEnvPath = "./"; + private static String myEnvPath = "./"; private static Environment myEnv = null; private static void usage() { - System.out.println("TxnGuide [-h <env directory>]"); + System.out.println("TxnGuide [-h <env directory>]"); System.exit(-1); } @@ -394,17 +394,17 @@ public class TryCheckPoint { cp.join(); } catch (Exception e) { - System.err.println("TryCheckPoint: " + e.toString()); + System.err.println("TryCheckPoint: " + e.toString()); e.printStackTrace(); } finally { closeEnv(); } - System.out.println("All done."); + System.out.println("All done."); } // Open an environment and databases private static void openEnv() throws DatabaseException { - System.out.println("opening env"); + System.out.println("opening env"); // Set up the environment. EnvironmentConfig myEnvConfig = new EnvironmentConfig(); @@ -425,19 +425,19 @@ public class TryCheckPoint { // Skipping the database opens and closes for brevity } catch (FileNotFoundException fnfe) { - System.err.println("openEnv: " + fnfe.toString()); + System.err.println("openEnv: " + fnfe.toString()); System.exit(-1); } } // Close the environment and databases private static void closeEnv() { - System.out.println("Closing env"); + System.out.println("Closing env"); if (myEnv != null ) { try { myEnv.close(); } catch (DatabaseException e) { - System.err.println("closeEnv: " + e.toString()); + System.err.println("closeEnv: " + e.toString()); e.printStackTrace(); } } @@ -447,7 +447,7 @@ public class TryCheckPoint { private static void parseArgs(String args[]) { for(int i = 0; i < args.length; ++i) { - if (args[i].startsWith("-")) { + if (args[i].startsWith("-")) { switch(args[i].charAt(1)) { case 'h': myEnvPath = new String(args[++i]); @@ -465,18 +465,18 @@ public class TryCheckPoint {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Reverse BTree Splits Reverse BTree Splits  Home  Backup Procedures Backup Procedures
    diff --git a/db/docs/gsg_txn/JAVA/hotfailover.html b/db/docs/gsg_txn/JAVA/hotfailover.html index fa3dcc152..9c6258f5f 100644 --- a/db/docs/gsg_txn/JAVA/hotfailover.html +++ b/db/docs/gsg_txn/JAVA/hotfailover.html @@ -1,13 +1,13 @@ - + - + Using Hot Failovers - + @@ -18,9 +18,9 @@ Using Hot Failovers - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -191,18 +191,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Designing Your Application for Recovery Designing Your Application for Recovery  Home  Removing Log Files Removing Log Files
    diff --git a/db/docs/gsg_txn/JAVA/index.html b/db/docs/gsg_txn/JAVA/index.html index e5d1857d4..f284d7e45 100644 --- a/db/docs/gsg_txn/JAVA/index.html +++ b/db/docs/gsg_txn/JAVA/index.html @@ -1,8 +1,8 @@ - + - + Getting Started with Berkeley DB Transaction Processing @@ -16,9 +16,9 @@ Getting Started with Berkeley DB Transaction Processing -   -   -  Next +   +   +  Next
    @@ -27,7 +27,7 @@
    -

    Getting Started with Berkeley DB Transaction Processing

    +

    Getting Started with Berkeley DB Transaction Processing

    @@ -37,7 +37,7 @@

    This documentation is distributed under an open source license. You may review the terms of this license at: - http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicensing.html + http://www.oracle.com/technology/software/products/berkeley-db/htdocs/oslicense.html

    @@ -47,12 +47,12 @@ and Sleepycat are trademarks or registered trademarks of - Oracle Corporation. All rights to these marks are reserved. + Oracle. All rights to these marks are reserved. No third-party use is permitted without the - express prior written consent of Oracle Corporation. + express prior written consent of Oracle.

    - Java™ and all Java-based marks are a trademark + Javaâ„¢ and all Java-based marks are a trademark or registered trademark of Sun Microsystems, Inc, in the United States and other countries.

    @@ -66,7 +66,7 @@
    -

    9/20/2006

    +

    6/30/2007

    @@ -534,14 +534,14 @@
    - - - + + + - - - + + +
       Next   Next
       Preface   Preface
    diff --git a/db/docs/gsg_txn/JAVA/inmem_txnexample_java.html b/db/docs/gsg_txn/JAVA/inmem_txnexample_java.html index 3cc8bb0d9..865132a43 100644 --- a/db/docs/gsg_txn/JAVA/inmem_txnexample_java.html +++ b/db/docs/gsg_txn/JAVA/inmem_txnexample_java.html @@ -1,13 +1,13 @@ - + - + In-Memory Transaction Example - + @@ -17,9 +17,9 @@ In-Memory Transaction Example - Prev  - Chapter 6. Summary and Examples -   + Prev  + Chapter 6. Summary and Examples +  
    @@ -54,7 +54,7 @@

    Refrain from specifying a home directory when you open your environment. The exception to this is if you are using the - DB_CONFIG configuration file — in + DB_CONFIG configuration file — in that case you must identify the environment's home directory so that the configuration file can be found.

    @@ -112,7 +112,7 @@

    To begin, we simplify the beginning of the class a bit. We eliminate some variables that the example no longer - needs — specifically variables having to do with the location of the environment and the names of the + needs — specifically variables having to do with the location of the environment and the names of the database files. We can also remove our usage() method because we no longer require any command line arguments. @@ -170,12 +170,12 @@ import java.io.FileNotFoundException; threadArray[i].join(); } } catch (Exception e) { - System.err.println("TxnGuideInMemory: " + e.toString()); + System.err.println("TxnGuideInMemory: " + e.toString()); e.printStackTrace(); } finally { closeEnv(); } - System.out.println("All done."); + System.out.println("All done."); }

    Next we open our environment as always. However, in doing so we: @@ -203,7 +203,7 @@ import java.io.FileNotFoundException;

        private static void openEnv() throws DatabaseException {
    -        System.out.println("opening env");
    +        System.out.println("opening env");
     
             // Set up the environment.
             EnvironmentConfig myEnvConfig = new EnvironmentConfig();
    @@ -288,7 +288,7 @@ import java.io.FileNotFoundException;
                                                null,     // Database name,
                                                myDbConfig);
             } catch (FileNotFoundException fnfe) {
    -            System.err.println("openEnv: " + fnfe.toString());
    +            System.err.println("openEnv: " + fnfe.toString());
                 System.exit(-1);
             }
         } 
    @@ -298,12 +298,12 @@ import java.io.FileNotFoundException; method from the application, because we no longer need it.

        private static void closeEnv() {
    -        System.out.println("Closing env");
    +        System.out.println("Closing env");
             if (myDb != null ) {
                 try {
                     myDb.close();
                 } catch (DatabaseException e) {
    -                System.err.println("closeEnv: myDb: " +
    +                System.err.println("closeEnv: myDb: " +
                         e.toString());
                     e.printStackTrace();
                 }
    @@ -313,7 +313,7 @@ import java.io.FileNotFoundException;
                 try {
                     myClassDb.close();
                 } catch (DatabaseException e) {
    -                System.err.println("closeEnv: myClassDb: " +
    +                System.err.println("closeEnv: myClassDb: " +
                         e.toString());
                     e.printStackTrace();
                 }
    @@ -323,7 +323,7 @@ import java.io.FileNotFoundException;
                 try {
                     myEnv.close();
                 } catch (DatabaseException e) {
    -                System.err.println("closeEnv: " + e.toString());
    +                System.err.println("closeEnv: " + e.toString());
                     e.printStackTrace();
                 }
             }
    @@ -378,10 +378,10 @@ public class DBWriter extends Thread
     
         private static final int MAX_RETRY = 20;
     
    -    private static String[] keys = {"key 1", "key 2", "key 3",
    -                                    "key 4", "key 5", "key 6",
    -                                    "key 7", "key 8", "key 9",
    -                                    "key 10"};
    +    private static String[] keys = {"key 1", "key 2", "key 3",
    +                                    "key 4", "key 5", "key 6",
    +                                    "key 7", "key 8", "key 9",
    +                                    "key 10"};
     
     
         // Constructor. Get our DB handles from here
    @@ -431,40 +431,40 @@ public class DBWriter extends Thread
     
                         // commit
                         System.out.println(getName() + 
    -                        " : committing txn : " + i);
    +                        " : committing txn : " + i);
     
    -                    System.out.println(getName() + " : Found " +
    -                        countRecords(txn) + " records in the database.");
    +                    System.out.println(getName() + " : Found " +
    +                        countRecords(txn) + " records in the database.");
                         try {
                             txn.commit();
                             txn = null;
                         } catch (DatabaseException e) {
    -                        System.err.println("Error on txn commit: " +
    +                        System.err.println("Error on txn commit: " +
                                 e.toString());
                         }
                         retry = false;
     
                     } catch (DeadlockException de) {
    -                    System.out.println("################# " + getName() +
    -                        " : caught deadlock");
    +                    System.out.println("################# " + getName() +
    +                        " : caught deadlock");
                         // retry if necessary
                         if (retry_count < MAX_RETRY) {
                             System.err.println(getName() +
    -                            " : Retrying operation.");
    +                            " : Retrying operation.");
                             retry = true;
                             retry_count++;
                         } else {
                             System.err.println(getName() +
    -                            " : out of retries. Giving up.");
    +                            " : out of retries. Giving up.");
                             retry = false;
                         }
                     } catch (DatabaseException e) {
                         // abort and don't retry
                         retry = false;
                         System.err.println(getName() +
    -                        " : caught exception: " + e.toString());
    +                        " : caught exception: " + e.toString());
                         System.err.println(getName() +
    -                        " : errno: " + e.getErrno());
    +                        " : errno: " + e.getErrno());
                         e.printStackTrace();
                     } finally {
                         if (txn != null) {
    @@ -472,7 +472,7 @@ public class DBWriter extends Thread
                                 txn.abort();
                             } catch (Exception e) {
                                 System.err.println(
    -                                "Error aborting transaction: " + 
    +                                "Error aborting transaction: " + 
                                     e.toString());
                                 e.printStackTrace();
                             }
    @@ -542,18 +542,18 @@ public class DBWriter extends Thread
           
    - + - + - + - +
    Prev Prev  Up  Â 
    Transaction Example Transaction Example  Home  Â 
    diff --git a/db/docs/gsg_txn/JAVA/introduction.html b/db/docs/gsg_txn/JAVA/introduction.html index d2315cd21..949c78eb7 100644 --- a/db/docs/gsg_txn/JAVA/introduction.html +++ b/db/docs/gsg_txn/JAVA/introduction.html @@ -1,9 +1,9 @@ - + - - Chapter 1. Introduction + + Chapter 1. Introduction @@ -15,12 +15,12 @@
    diff --git a/db/docs/gsg_txn/JAVA/lockingsubsystem.html b/db/docs/gsg_txn/JAVA/lockingsubsystem.html index 0d86ff00e..8a6a05f34 100644 --- a/db/docs/gsg_txn/JAVA/lockingsubsystem.html +++ b/db/docs/gsg_txn/JAVA/lockingsubsystem.html @@ -1,13 +1,13 @@ - + - + The Locking Subsystem - + @@ -18,9 +18,9 @@ The Locking Subsystem - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -173,7 +173,7 @@ try { myEnvConfig.setTransactional(true); myEnvConfig.setMaxLocks(5000); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); } catch (DatabaseException de) { @@ -336,7 +336,7 @@ try { // is detected. envConfig.setLockDetectMode(LockDetectMode.MINWRITE); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); // From here, you open your databases, proceed with your @@ -437,11 +437,11 @@ while (retry_count < MAX_DEADLOCK_RETRIES) { txn.abort(); retry_count++; if (retry_count >= MAX_DEADLOCK_RETRIES) { - System.err.println("Exceeded retry limit. Giving up."); + System.err.println("Exceeded retry limit. Giving up."); return -1; } } catch (DatabaseException ae) { - System.err.println("txn abort failed: " + ae.toString()); + System.err.println("txn abort failed: " + ae.toString()); return -1; } } catch (DatabaseException e) { @@ -449,7 +449,7 @@ while (retry_count < MAX_DEADLOCK_RETRIES) { // Abort the transaction. txn.abort(); } catch (DatabaseException ae) { - System.err.println("txn abort failed: " + ae.toString()); + System.err.println("txn abort failed: " + ae.toString()); return -1; } } @@ -460,18 +460,18 @@ while (retry_count < MAX_DEADLOCK_RETRIES) {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Locks, Blocks, and Deadlocks Locks, Blocks, and Deadlocks  Home  Isolation Isolation
    diff --git a/db/docs/gsg_txn/JAVA/logconfig.html b/db/docs/gsg_txn/JAVA/logconfig.html index 85a711782..52238d3b1 100644 --- a/db/docs/gsg_txn/JAVA/logconfig.html +++ b/db/docs/gsg_txn/JAVA/logconfig.html @@ -1,15 +1,15 @@ - + - + Configuring the Logging Subsystem - + - + diff --git a/db/docs/gsg_txn/JAVA/logfileremoval.html b/db/docs/gsg_txn/JAVA/logfileremoval.html index 231b164f4..c82ccc2f3 100644 --- a/db/docs/gsg_txn/JAVA/logfileremoval.html +++ b/db/docs/gsg_txn/JAVA/logfileremoval.html @@ -1,13 +1,13 @@ - + - + Removing Log Files - + @@ -18,9 +18,9 @@ Removing Log Files - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -183,18 +183,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Using Hot Failovers Using Hot Failovers  Home  Configuring the Logging Subsystem Configuring the Logging Subsystem
    diff --git a/db/docs/gsg_txn/JAVA/maxtxns.html b/db/docs/gsg_txn/JAVA/maxtxns.html index 30994a5d5..633caf606 100644 --- a/db/docs/gsg_txn/JAVA/maxtxns.html +++ b/db/docs/gsg_txn/JAVA/maxtxns.html @@ -1,15 +1,15 @@ - + - + Configuring the Transaction Subsystem - + - + diff --git a/db/docs/gsg_txn/JAVA/nestedtxn.html b/db/docs/gsg_txn/JAVA/nestedtxn.html index 2ff64399a..39e2ef0bf 100644 --- a/db/docs/gsg_txn/JAVA/nestedtxn.html +++ b/db/docs/gsg_txn/JAVA/nestedtxn.html @@ -1,13 +1,13 @@ - + - + Nested Transactions - + @@ -18,9 +18,9 @@ Nested Transactions - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -120,18 +120,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Auto Commit Auto Commit  Home  Transactional Cursors Transactional Cursors
    diff --git a/db/docs/gsg_txn/JAVA/perftune-intro.html b/db/docs/gsg_txn/JAVA/perftune-intro.html index e9dff26fc..5a31485c0 100644 --- a/db/docs/gsg_txn/JAVA/perftune-intro.html +++ b/db/docs/gsg_txn/JAVA/perftune-intro.html @@ -1,15 +1,15 @@ - + - + Performance Tuning - + - + diff --git a/db/docs/gsg_txn/JAVA/preface.html b/db/docs/gsg_txn/JAVA/preface.html index 6f0601ca8..628b0da5a 100644 --- a/db/docs/gsg_txn/JAVA/preface.html +++ b/db/docs/gsg_txn/JAVA/preface.html @@ -1,15 +1,15 @@ - + - + Preface - +
    +Database myDb = new Database("mydb.db", null, myDbConfig);

    Note

    @@ -208,18 +208,18 @@ myDbConfig.setAllowCreate(true);


    - + - + - + - +
    Prev Prev  Up  Next Next
    Getting Started with Berkeley DB Transaction Processing Getting Started with Berkeley DB Transaction Processing  Home  Chapter 1. Introduction Chapter 1. Introduction
    diff --git a/db/docs/gsg_txn/JAVA/readmodifywrite.html b/db/docs/gsg_txn/JAVA/readmodifywrite.html index eea954d10..1c59bf852 100644 --- a/db/docs/gsg_txn/JAVA/readmodifywrite.html +++ b/db/docs/gsg_txn/JAVA/readmodifywrite.html @@ -1,13 +1,13 @@ - + - + Read/Modify/Write - + @@ -18,9 +18,9 @@ Read/Modify/Write - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -101,18 +101,18 @@ while (retry_count < MAX_DEADLOCK_RETRIES) {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors and Concurrent Applications Transactional Cursors and Concurrent Applications  Home  No Wait on Blocks No Wait on Blocks
    diff --git a/db/docs/gsg_txn/JAVA/recovery-intro.html b/db/docs/gsg_txn/JAVA/recovery-intro.html index ee490b9ba..e971eef93 100644 --- a/db/docs/gsg_txn/JAVA/recovery-intro.html +++ b/db/docs/gsg_txn/JAVA/recovery-intro.html @@ -1,14 +1,14 @@ - + - + Recoverability - - + + @@ -18,9 +18,9 @@ Recoverability - Prev  - Chapter 1. Introduction -  Next + Prev  + Chapter 1. Introduction +  Next
    @@ -85,18 +85,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 1. Introduction Chapter 1. Introduction  Home  Performance Tuning Performance Tuning
    diff --git a/db/docs/gsg_txn/JAVA/recovery.html b/db/docs/gsg_txn/JAVA/recovery.html index 62ce76220..facbf6801 100644 --- a/db/docs/gsg_txn/JAVA/recovery.html +++ b/db/docs/gsg_txn/JAVA/recovery.html @@ -1,13 +1,13 @@ - + - + Recovery Procedures - + @@ -18,9 +18,9 @@ Recovery Procedures - Prev  - Chapter 5. Managing DB Files -  Next + Prev  + Chapter 5. Managing DB Files +  Next
    @@ -166,7 +166,7 @@ try { // Run normal recovery myEnvConfig.setRunRecovery(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); // All other operations are identical from here. Notice, however, @@ -233,7 +233,7 @@ try {

    Note that catastrophic recovery examines every available - log file — not just those log files created since the + log file — not just those log files created since the last checkpoint as is the case for normal recovery. For this reason, catastrophic recovery is likely to take longer than does normal recovery. @@ -265,7 +265,7 @@ try { // Run catastrophic recovery myEnvConfig.setRunFatalRecovery(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); } catch (DatabaseException de) { @@ -279,18 +279,18 @@ try {


    - + - + - + - +
    Prev Prev  Up  Next Next
    Backup Procedures Backup Procedures  Home  Designing Your Application for Recovery Designing Your Application for Recovery
    diff --git a/db/docs/gsg_txn/JAVA/reversesplit.html b/db/docs/gsg_txn/JAVA/reversesplit.html index bade30c43..22d24ffbd 100644 --- a/db/docs/gsg_txn/JAVA/reversesplit.html +++ b/db/docs/gsg_txn/JAVA/reversesplit.html @@ -1,15 +1,15 @@ - + - + Reverse BTree Splits - + - + diff --git a/db/docs/gsg_txn/JAVA/txn_ccursor.html b/db/docs/gsg_txn/JAVA/txn_ccursor.html index 69caaca20..b1abbd43a 100644 --- a/db/docs/gsg_txn/JAVA/txn_ccursor.html +++ b/db/docs/gsg_txn/JAVA/txn_ccursor.html @@ -1,13 +1,13 @@ - + - + Transactional Cursors and Concurrent Applications - + @@ -18,9 +18,9 @@ Transactional Cursors and Concurrent Applications - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -109,7 +109,7 @@ try { myEnvConfig.setInitializeLocking(true); myEnvConfig.setInitializeLogging(true); - myEnv = new Environment(new File("/my/env/home"), + myEnv = new Environment(new File("/my/env/home"), myEnvConfig); // Open the database. @@ -118,7 +118,7 @@ try { dbConfig.setType(DatabaseType.BTREE); dbConfig.setReadUncommitted(true); // Enable uncommitted reads. myDatabase = myEnv.openDatabase(null, // txn handle - "sampleDatabase", // db file name + "sampleDatabase", // db file name null, // db name dbConfig); @@ -147,18 +147,18 @@ try {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Isolation Isolation  Home  Read/Modify/Write Read/Modify/Write
    diff --git a/db/docs/gsg_txn/JAVA/txnconcurrency.html b/db/docs/gsg_txn/JAVA/txnconcurrency.html index f9a2e52b5..207fafcbb 100644 --- a/db/docs/gsg_txn/JAVA/txnconcurrency.html +++ b/db/docs/gsg_txn/JAVA/txnconcurrency.html @@ -1,9 +1,9 @@ - + - - Chapter 4. Concurrency + + Chapter 4. Concurrency @@ -15,12 +15,12 @@ diff --git a/db/docs/gsg_txn/JAVA/txnexample_java.html b/db/docs/gsg_txn/JAVA/txnexample_java.html index 74ff5e153..df467f12e 100644 --- a/db/docs/gsg_txn/JAVA/txnexample_java.html +++ b/db/docs/gsg_txn/JAVA/txnexample_java.html @@ -1,14 +1,14 @@ - + - + Transaction Example - - + + @@ -18,9 +18,9 @@ Transaction Example - Prev  - Chapter 6. Summary and Examples -  Next + Prev  + Chapter 6. Summary and Examples +  Next
    @@ -140,9 +140,9 @@ public class TxnGuide {
    the number of threads that we are spawning. However, we also declare our environment and database handles here.

    -
        private static String myEnvPath = "./";
    -    private static String dbName = "mydb.db";
    -    private static String cdbName = "myclassdb.db";
    +        
        private static String myEnvPath = "./";
    +    private static String dbName = "mydb.db";
    +    private static String cdbName = "myclassdb.db";
     
         // DB handles
         private static Database myDb = null;
    @@ -156,7 +156,7 @@ public class TxnGuide { 
    used to identify the environment home directory.

        private static void usage() {
    -        System.out.println("TxnGuide [-h <env directory>]");
    +        System.out.println("TxnGuide [-h <env directory>]");
             System.exit(-1);
         } 

    @@ -191,12 +191,12 @@ public class TxnGuide {

    threadArray[i].join(); } } catch (Exception e) { - System.err.println("TxnGuide: " + e.toString()); + System.err.println("TxnGuide: " + e.toString()); e.printStackTrace(); } finally { closeEnv(); } - System.out.println("All done."); + System.out.println("All done."); }

    Next we implement openEnv(). This method is used @@ -231,7 +231,7 @@ public class TxnGuide { on the cursor open would, in fact, be silently ignored).

        private static void openEnv() throws DatabaseException {
    -        System.out.println("opening env");
    +        System.out.println("opening env");
     
             // Set up the environment.
             EnvironmentConfig myEnvConfig = new EnvironmentConfig();
    @@ -283,7 +283,7 @@ public class TxnGuide { 
    null, // Database name, myDbConfig); } catch (FileNotFoundException fnfe) { - System.err.println("openEnv: " + fnfe.toString()); + System.err.println("openEnv: " + fnfe.toString()); System.exit(-1); } } @@ -295,12 +295,12 @@ public class TxnGuide { purely for the purpose of completeness.

        private static void closeEnv() {
    -        System.out.println("Closing env and databases");
    +        System.out.println("Closing env and databases");
             if (myDb != null ) {
                 try {
                     myDb.close();
                 } catch (DatabaseException e) {
    -                System.err.println("closeEnv: myDb: " +
    +                System.err.println("closeEnv: myDb: " +
                         e.toString());
                     e.printStackTrace();
                 }
    @@ -310,7 +310,7 @@ public class TxnGuide { 
    try { myClassDb.close(); } catch (DatabaseException e) { - System.err.println("closeEnv: myClassDb: " + + System.err.println("closeEnv: myClassDb: " + e.toString()); e.printStackTrace(); } @@ -320,7 +320,7 @@ public class TxnGuide { try { myEnv.close(); } catch (DatabaseException e) { - System.err.println("closeEnv: " + e.toString()); + System.err.println("closeEnv: " + e.toString()); e.printStackTrace(); } } @@ -330,7 +330,7 @@ public class TxnGuide { private static void parseArgs(String args[]) { for(int i = 0; i < args.length; ++i) { - if (args[i].startsWith("-")) { + if (args[i].startsWith("-")) { switch(args[i].charAt(1)) { case 'h': myEnvPath = new String(args[++i]); @@ -490,10 +490,10 @@ public class DBWriter extends Thread private static final int MAX_RETRY = 20; - private static String[] keys = {"key 1", "key 2", "key 3", - "key 4", "key 5", "key 6", - "key 7", "key 8", "key 9", - "key 10"}; + private static String[] keys = {"key 1", "key 2", "key 3", + "key 4", "key 5", "key 6", + "key 7", "key 8", "key 9", + "key 10"};

    Next we implement our class constructor. The most interesting thing we do here is instantiate a serial binding for serializing @@ -660,13 +660,13 @@ public class DBWriter extends Thread as is used for the thread's writes.

                        // commit
    -                    System.out.println(getName() + " : committing txn : " 
    +                    System.out.println(getName() + " : committing txn : " 
                             + i);
     
                         // Using uncommitted reads to avoid the deadlock, so null
                         // is passed for the transaction here.
    -                    System.out.println(getName() + " : Found " +
    -                        countRecords(null) + " records in the database."); 
    + System.out.println(getName() + " : Found " + + countRecords(null) + " records in the database.");

    Having performed this somewhat inelegant counting of the records in the database, we can now commit the transaction. @@ -675,7 +675,7 @@ public class DBWriter extends Thread txn.commit(); txn = null; } catch (DatabaseException e) { - System.err.println("Error on txn commit: " + + System.err.println("Error on txn commit: " + e.toString()); } retry = false; @@ -688,17 +688,17 @@ public class DBWriter extends Thread exceeded our retry limit for this transaction.

                    } catch (DeadlockException de) {
    -                    System.out.println("################# " + getName() +
    -                        " : caught deadlock");
    +                    System.out.println("################# " + getName() +
    +                        " : caught deadlock");
                         // retry if necessary
                         if (retry_count < MAX_RETRY) {
                             System.err.println(getName() +
    -                            " : Retrying operation.");
    +                            " : Retrying operation.");
                             retry = true;
                             retry_count++;
                         } else {
                             System.err.println(getName() +
    -                            " : out of retries. Giving up.");
    +                            " : out of retries. Giving up.");
                             retry = false;
                         } 

    @@ -709,9 +709,9 @@ public class DBWriter extends Thread // abort and don't retry retry = false; System.err.println(getName() + - " : caught exception: " + e.toString()); + " : caught exception: " + e.toString()); System.err.println(getName() + - " : errno: " + e.getErrno()); + " : errno: " + e.getErrno()); e.printStackTrace();

    And, finally, we always abort the transaction if the transaction handle @@ -724,7 +724,7 @@ public class DBWriter extends Thread try { txn.abort(); } catch (Exception e) { - System.err.println("Error aborting txn: " + + System.err.println("Error aborting txn: " + e.toString()); e.printStackTrace(); } @@ -782,18 +782,18 @@ public class DBWriter extends Thread


    - + - + - + - +
    Prev Prev  Up  Next Next
    Chapter 6. Summary and Examples Chapter 6. Summary and Examples  Home  In-Memory Transaction Example In-Memory Transaction Example
    diff --git a/db/docs/gsg_txn/JAVA/txnindices.html b/db/docs/gsg_txn/JAVA/txnindices.html index ace15812a..3ba83c712 100644 --- a/db/docs/gsg_txn/JAVA/txnindices.html +++ b/db/docs/gsg_txn/JAVA/txnindices.html @@ -1,13 +1,13 @@ - + - + Secondary Indices with Transaction Applications - + @@ -18,9 +18,9 @@ Secondary Indices with Transaction Applications - Prev  - Chapter 3. Transaction Basics -  Next + Prev  + Chapter 3. Transaction Basics +  Next
    @@ -50,7 +50,7 @@ secondary cursors is performed just as you protect normal - cursors — you simply have to make sure the cursor is + cursors — you simply have to make sure the cursor is opened using a transaction handle, and that the cursor is closed before the handle is either either committed or aborted. @@ -105,7 +105,7 @@ try { // transactional, the open is automatically wrapped in a transaction. // - myEnv is the environment handle. // - myDb is the primary database handle. - String secDbName = "mySecondaryDatabase"; + String secDbName = "mySecondaryDatabase"; mySecDb = myEnv.openSecondary(null, secDbName, null, myDb, mySecConfig); } catch (DatabaseException de) { // Exception handling goes here ... @@ -117,18 +117,18 @@ try {
    - + - + - + - +
    Prev Prev  Up  Next Next
    Transactional Cursors Transactional Cursors  Home  Configuring the Transaction Subsystem Configuring the Transaction Subsystem
    diff --git a/db/docs/gsg_txn/JAVA/txnnowait.html b/db/docs/gsg_txn/JAVA/txnnowait.html index 4636f75b1..40a691f11 100644 --- a/db/docs/gsg_txn/JAVA/txnnowait.html +++ b/db/docs/gsg_txn/JAVA/txnnowait.html @@ -1,13 +1,13 @@ - + - + No Wait on Blocks - + @@ -18,9 +18,9 @@ No Wait on Blocks - Prev  - Chapter 4. Concurrency -  Next + Prev  + Chapter 4. Concurrency +  Next
    @@ -72,18 +72,18 @@
    - + - + - + - +
    Prev Prev  Up  Next Next
    Read/Modify/Write Read/Modify/Write  Home  Reverse BTree Splits Reverse BTree Splits
    diff --git a/db/docs/gsg_txn/JAVA/usingtxns.html b/db/docs/gsg_txn/JAVA/usingtxns.html index 38fe7a16b..5ee4aa54e 100644 --- a/db/docs/gsg_txn/JAVA/usingtxns.html +++ b/db/docs/gsg_txn/JAVA/usingtxns.html @@ -1,9 +1,9 @@ - + - - Chapter 3. Transaction Basics + + Chapter 3. Transaction Basics @@ -15,12 +15,12 @@