mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-25 10:57:56 +08:00
691ed09c3f
Set preprocessor definitions correctly for static & shared library. Previously DLL was unusable on Windows - the symbols were not exported
278 lines
5.1 KiB
CMake
278 lines
5.1 KiB
CMake
cmake_minimum_required(VERSION 3.8)
|
|
project(berkeleydb C CXX)
|
|
|
|
option(INSTALL_HEADERS "Install header files" ON)
|
|
|
|
add_definitions(
|
|
-DWIN32
|
|
-D_WINDOWS
|
|
-D_CRT_SECURE_NO_DEPRECATE
|
|
-D_CRT_NONSTDC_NO_DEPRECATE
|
|
-D_LIB
|
|
-DUNICODE
|
|
-D_UNICODE
|
|
)
|
|
|
|
if (BUILD_SHARED_LIBS)
|
|
add_definitions(
|
|
-DDB_CREATE_DLL
|
|
-D_USRDLL
|
|
)
|
|
else()
|
|
add_definitions(
|
|
-D_LIB
|
|
)
|
|
endif()
|
|
|
|
add_library(libdb48
|
|
btree/bt_compact.c
|
|
btree/bt_compare.c
|
|
btree/bt_compress.c
|
|
btree/bt_conv.c
|
|
btree/bt_curadj.c
|
|
btree/bt_cursor.c
|
|
btree/bt_delete.c
|
|
btree/bt_method.c
|
|
btree/bt_open.c
|
|
btree/bt_put.c
|
|
btree/bt_rec.c
|
|
btree/bt_reclaim.c
|
|
btree/bt_recno.c
|
|
btree/bt_rsearch.c
|
|
btree/bt_search.c
|
|
btree/bt_split.c
|
|
btree/bt_stat.c
|
|
btree/bt_upgrade.c
|
|
btree/bt_verify.c
|
|
btree/btree_auto.c
|
|
db/crdel_auto.c
|
|
db/crdel_rec.c
|
|
common/crypto_stub.c
|
|
cxx/cxx_db.cpp
|
|
cxx/cxx_dbc.cpp
|
|
cxx/cxx_dbt.cpp
|
|
cxx/cxx_env.cpp
|
|
cxx/cxx_except.cpp
|
|
cxx/cxx_lock.cpp
|
|
cxx/cxx_logc.cpp
|
|
cxx/cxx_mpool.cpp
|
|
cxx/cxx_multi.cpp
|
|
cxx/cxx_seq.cpp
|
|
cxx/cxx_txn.cpp
|
|
db/db.c
|
|
db/db_am.c
|
|
db/db_auto.c
|
|
common/db_byteorder.c
|
|
db/db_cam.c
|
|
db/db_cds.c
|
|
db/db_conv.c
|
|
db/db_dispatch.c
|
|
db/db_dup.c
|
|
common/db_err.c
|
|
common/db_getlong.c
|
|
common/db_idspace.c
|
|
common/db_compint.c
|
|
db/db_iface.c
|
|
db/db_join.c
|
|
common/db_log2.c
|
|
db/db_meta.c
|
|
db/db_method.c
|
|
db/db_open.c
|
|
db/db_overflow.c
|
|
db/db_ovfl_vrfy.c
|
|
db/db_pr.c
|
|
db/db_rec.c
|
|
db/db_reclaim.c
|
|
db/db_remove.c
|
|
db/db_rename.c
|
|
db/db_ret.c
|
|
db/db_setid.c
|
|
db/db_setlsn.c
|
|
common/db_shash.c
|
|
db/db_sort_multiple.c
|
|
db/db_stati.c
|
|
db/db_truncate.c
|
|
db/db_upg.c
|
|
db/db_upg_opd.c
|
|
db/db_vrfy.c
|
|
db/db_vrfyutil.c
|
|
db/partition.c
|
|
dbm/dbm.c
|
|
dbreg/dbreg.c
|
|
dbreg/dbreg_auto.c
|
|
dbreg/dbreg_rec.c
|
|
dbreg/dbreg_stat.c
|
|
dbreg/dbreg_util.c
|
|
common/dbt.c
|
|
env/env_alloc.c
|
|
env/env_config.c
|
|
env/env_failchk.c
|
|
env/env_file.c
|
|
env/env_globals.c
|
|
env/env_method.c
|
|
env/env_name.c
|
|
env/env_open.c
|
|
env/env_recover.c
|
|
env/env_region.c
|
|
env/env_register.c
|
|
env/env_sig.c
|
|
env/env_stat.c
|
|
fileops/fileops_auto.c
|
|
fileops/fop_basic.c
|
|
fileops/fop_rec.c
|
|
fileops/fop_util.c
|
|
hash/hash.c
|
|
hash/hash_auto.c
|
|
hash/hash_conv.c
|
|
hash/hash_dup.c
|
|
hash/hash_func.c
|
|
hash/hash_meta.c
|
|
hash/hash_method.c
|
|
hash/hash_open.c
|
|
hash/hash_page.c
|
|
hash/hash_rec.c
|
|
hash/hash_reclaim.c
|
|
hash/hash_stat.c
|
|
hash/hash_upgrade.c
|
|
hash/hash_verify.c
|
|
hmac/hmac.c
|
|
hsearch/hsearch.c
|
|
build_windows/libdb.def
|
|
lock/lock.c
|
|
lock/lock_deadlock.c
|
|
lock/lock_failchk.c
|
|
lock/lock_id.c
|
|
lock/lock_list.c
|
|
lock/lock_method.c
|
|
lock/lock_region.c
|
|
lock/lock_stat.c
|
|
lock/lock_timer.c
|
|
lock/lock_util.c
|
|
log/log.c
|
|
log/log_archive.c
|
|
log/log_compare.c
|
|
log/log_debug.c
|
|
log/log_get.c
|
|
log/log_method.c
|
|
log/log_put.c
|
|
log/log_stat.c
|
|
common/mkpath.c
|
|
mp/mp_alloc.c
|
|
mp/mp_bh.c
|
|
mp/mp_fget.c
|
|
mp/mp_fmethod.c
|
|
mp/mp_fopen.c
|
|
mp/mp_fput.c
|
|
mp/mp_fset.c
|
|
mp/mp_method.c
|
|
mp/mp_mvcc.c
|
|
mp/mp_region.c
|
|
mp/mp_register.c
|
|
mp/mp_resize.c
|
|
mp/mp_stat.c
|
|
mp/mp_sync.c
|
|
mp/mp_trickle.c
|
|
mutex/mut_alloc.c
|
|
mutex/mut_failchk.c
|
|
mutex/mut_method.c
|
|
mutex/mut_region.c
|
|
mutex/mut_stat.c
|
|
mutex/mut_win32.c
|
|
common/openflags.c
|
|
os/os_abort.c
|
|
os/os_addrinfo.c
|
|
os_windows/os_abs.c
|
|
os/os_alloc.c
|
|
os_windows/os_clock.c
|
|
os_windows/os_config.c
|
|
os_windows/os_cpu.c
|
|
os/os_ctime.c
|
|
os_windows/os_dir.c
|
|
os_windows/os_errno.c
|
|
os_windows/os_fid.c
|
|
os_windows/os_flock.c
|
|
os_windows/os_fsync.c
|
|
os_windows/os_getenv.c
|
|
os_windows/os_handle.c
|
|
os_windows/os_map.c
|
|
os_windows/os_mkdir.c
|
|
os_windows/os_open.c
|
|
os/os_pid.c
|
|
os_windows/os_rename.c
|
|
os/os_root.c
|
|
os/os_rpath.c
|
|
os_windows/os_rw.c
|
|
os_windows/os_seek.c
|
|
os/os_stack.c
|
|
os_windows/os_stat.c
|
|
os/os_tmpdir.c
|
|
os_windows/os_truncate.c
|
|
os/os_uid.c
|
|
os_windows/os_unlink.c
|
|
os_windows/os_yield.c
|
|
qam/qam.c
|
|
qam/qam_auto.c
|
|
qam/qam_conv.c
|
|
qam/qam_files.c
|
|
qam/qam_method.c
|
|
qam/qam_open.c
|
|
qam/qam_rec.c
|
|
qam/qam_stat.c
|
|
qam/qam_upgrade.c
|
|
qam/qam_verify.c
|
|
rep/rep_auto.c
|
|
rep/rep_backup.c
|
|
rep/rep_elect.c
|
|
rep/rep_lease.c
|
|
rep/rep_log.c
|
|
rep/rep_method.c
|
|
rep/rep_record.c
|
|
rep/rep_region.c
|
|
rep/rep_stat.c
|
|
rep/rep_util.c
|
|
rep/rep_verify.c
|
|
repmgr/repmgr_auto.c
|
|
repmgr/repmgr_elect.c
|
|
repmgr/repmgr_method.c
|
|
repmgr/repmgr_msg.c
|
|
repmgr/repmgr_net.c
|
|
repmgr/repmgr_queue.c
|
|
repmgr/repmgr_sel.c
|
|
repmgr/repmgr_stat.c
|
|
repmgr/repmgr_util.c
|
|
repmgr/repmgr_windows.c
|
|
sequence/seq_stat.c
|
|
sequence/sequence.c
|
|
hmac/sha1.c
|
|
clib/strsep.c
|
|
txn/txn.c
|
|
txn/txn_auto.c
|
|
txn/txn_chkpt.c
|
|
txn/txn_failchk.c
|
|
txn/txn_method.c
|
|
txn/txn_rec.c
|
|
txn/txn_recover.c
|
|
txn/txn_region.c
|
|
txn/txn_stat.c
|
|
txn/txn_util.c
|
|
common/os_method.c
|
|
common/util_cache.c
|
|
common/util_log.c
|
|
common/util_sig.c
|
|
common/zerofill.c
|
|
)
|
|
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR} build_windows dbinc)
|
|
|
|
target_link_libraries(libdb48 PUBLIC ws2_32.lib)
|
|
|
|
install(TARGETS libdb48
|
|
RUNTIME DESTINATION bin
|
|
ARCHIVE DESTINATION lib
|
|
LIBRARY DESTINATION lib
|
|
)
|
|
|
|
if(INSTALL_HEADERS)
|
|
file(GLOB HEADERS build_windows/*.h)
|
|
install(FILES ${HEADERS} DESTINATION include)
|
|
endif() |