|
1 |
| -## |
2 |
| -## Copyright 2020-2024 Leonid Yuriev <[email protected]> |
3 |
| -## and other libmdbx authors: please see AUTHORS file. |
4 |
| -## All rights reserved. |
5 |
| -## |
6 |
| -## Redistribution and use in source and binary forms, with or without |
7 |
| -## modification, are permitted only as authorized by the OpenLDAP |
8 |
| -## Public License. |
9 |
| -## |
10 |
| -## A copy of this license is available in the file LICENSE in the |
11 |
| -## top-level directory of the distribution or, alternatively, at |
12 |
| -## <http://www.OpenLDAP.org/license.html>. |
13 |
| -## |
| 1 | +## Copyright (c) 2020-2024 Леонид Юрьев aka Leonid Yuriev <[email protected]> |
| 2 | +## SPDX-License-Identifier: Apache-2.0 |
14 | 3 |
|
15 | 4 | ##
|
16 | 5 | ## libmdbx = { Revised and extended descendant of Symas LMDB. }
|
@@ -69,36 +58,137 @@ else()
|
69 | 58 | endif()
|
70 | 59 |
|
71 | 60 | if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git" AND
|
| 61 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYRIGHT" AND |
| 62 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE" AND |
| 63 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/NOTICE" AND |
| 64 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/README.md" AND |
| 65 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.h" AND |
| 66 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.h++" AND |
72 | 67 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/test/CMakeLists.txt" AND
|
73 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/core.c" AND |
74 | 68 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/alloy.c" AND
|
| 69 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/api-cursor.c" AND |
| 70 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/api-env.c" AND |
| 71 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/api-extra.c" AND |
| 72 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/api-key-transform.c" AND |
| 73 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/api-txn.c" AND |
| 74 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/atomics-ops.h" AND |
| 75 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/atomics-types.h" AND |
| 76 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/audit.c" AND |
| 77 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/chk.c" AND |
| 78 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/cogs.c" AND |
| 79 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/cogs.h" AND |
| 80 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/coherency.c" AND |
| 81 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/cold.c" AND |
75 | 82 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/config.h.in" AND
|
| 83 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/copy.c" AND |
| 84 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/cursor.c" AND |
| 85 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/cursor.h" AND |
| 86 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/dbi.c" AND |
| 87 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/dbi.h" AND |
| 88 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/debug_begin.h" AND |
| 89 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/debug_end.h" AND |
| 90 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/dpl.c" AND |
| 91 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/dpl.h" AND |
| 92 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/dxb.c" AND |
| 93 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/env-opts.c" AND |
| 94 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/env.c" AND |
| 95 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/essentials.h" AND |
| 96 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/gc-get.c" AND |
| 97 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/gc-put.c" AND |
| 98 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/gc.h" AND |
| 99 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/global.c" AND |
| 100 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/internals.h" AND |
| 101 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/layout-dxb.h" AND |
| 102 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/layout-lck.h" AND |
| 103 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/lck-posix.c" AND |
| 104 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/lck-windows.c" AND |
| 105 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/lck.c" AND |
| 106 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/lck.h" AND |
| 107 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/logging_and_debug.c" AND |
| 108 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/logging_and_debug.h" AND |
| 109 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_chk.1" AND |
| 110 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_copy.1" AND |
| 111 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_drop.1" AND |
| 112 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_dump.1" AND |
| 113 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_load.1" AND |
| 114 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1/mdbx_stat.1" AND |
| 115 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/mdbx.c++" AND |
| 116 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/meta.c" AND |
| 117 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/meta.h" AND |
| 118 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/misc.c" AND |
| 119 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/mvcc-readers.c" AND |
| 120 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/node.c" AND |
| 121 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/node.h" AND |
| 122 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/ntdll.def" AND |
| 123 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/options.h" AND |
| 124 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/osal.c" AND |
| 125 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/osal.h" AND |
| 126 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-get.c" AND |
| 127 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-iov.c" AND |
| 128 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-iov.h" AND |
| 129 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-ops.c" AND |
| 130 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-ops.h" AND |
| 131 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/page-search.c" AND |
| 132 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/pnl.c" AND |
| 133 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/pnl.h" AND |
| 134 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/preface.h" AND |
| 135 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/proto.h" AND |
| 136 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/range-estimate.c" AND |
| 137 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/refund.c" AND |
| 138 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/sort.h" AND |
| 139 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/spill.c" AND |
| 140 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/spill.h" AND |
| 141 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/subdb.c" AND |
| 142 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tls.c" AND |
| 143 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tls.h" AND |
| 144 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/chk.c" AND |
| 145 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/copy.c" AND |
| 146 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/drop.c" AND |
| 147 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/dump.c" AND |
| 148 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/load.c" AND |
| 149 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/stat.c" AND |
| 150 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/wingetopt.c" AND |
| 151 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tools/wingetopt.h" AND |
| 152 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/tree.c" AND |
| 153 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/txl.c" AND |
| 154 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/txl.h" AND |
| 155 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/txn.c" AND |
| 156 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/unaligned.h" AND |
| 157 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/utils.c" AND |
| 158 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/utils.h" AND |
76 | 159 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/version.c.in" AND
|
77 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/man1" AND |
78 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/mdbx_chk.c" AND |
79 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/mdbx.c++") |
| 160 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/walk.c" AND |
| 161 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/walk.h" AND |
| 162 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/windows-import.c" AND |
| 163 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/windows-import.h") |
80 | 164 | set(MDBX_AMALGAMATED_SOURCE FALSE)
|
81 | 165 | find_program(GIT git)
|
82 | 166 | if(NOT GIT)
|
83 | 167 | message(SEND_ERROR "Git command-line tool not found")
|
84 | 168 | endif()
|
85 | 169 | set(MDBX_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
86 | 170 | elseif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/VERSION.txt" AND
|
| 171 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE" AND |
| 172 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/NOTICE" AND |
87 | 173 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.c" AND
|
88 | 174 | EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.c++" AND
|
89 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/config.h.in" AND |
90 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/man1" AND |
91 |
| - EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_chk.c") |
| 175 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.h" AND |
| 176 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx.h++" AND |
| 177 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_chk.c" AND |
| 178 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_copy.c" AND |
| 179 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_dump.c" AND |
| 180 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_load.c" AND |
| 181 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_stat.c" AND |
| 182 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/mdbx_drop.c" AND |
| 183 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ntdll.def" AND |
| 184 | + EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/config.h.in") |
92 | 185 | set(MDBX_AMALGAMATED_SOURCE TRUE)
|
93 | 186 | set(MDBX_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
94 | 187 | else()
|
95 | 188 | message(FATAL_ERROR "\n"
|
96 |
| - "Please don't use tarballs nor zips which are automatically provided by Github! " |
97 |
| - "These archives do not contain version information and thus are unfit to build libmdbx. " |
98 |
| - "You can vote for ability of disabling auto-creation such unsuitable archives at https://github.community/t/disable-tarball\n" |
99 |
| - "Instead of above, just clone the git repository, either download a tarball or zip with the properly amalgamated source core. " |
100 |
| - "For embedding libmdbx use a git-submodule or the amalgamated source code.\n" |
101 |
| - "Please, avoid using any other techniques.") |
| 189 | + "The set of libmdbx source code files is incomplete! " |
| 190 | + "Instead just follow the https://libmdbx.dqdkfa.ru/usage.html " |
| 191 | + "PLEASE, AVOID USING ANY OTHER TECHNIQUES.") |
102 | 192 | endif()
|
103 | 193 |
|
104 | 194 | if(DEFINED PROJECT_NAME)
|
@@ -600,13 +690,88 @@ else()
|
600 | 690 | include_directories("${MDBX_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}")
|
601 | 691 | else()
|
602 | 692 | list(APPEND LIBMDBX_SOURCES
|
| 693 | + "${MDBX_SOURCE_DIR}/api-cursor.c" |
| 694 | + "${MDBX_SOURCE_DIR}/api-env.c" |
| 695 | + "${MDBX_SOURCE_DIR}/api-extra.c" |
| 696 | + "${MDBX_SOURCE_DIR}/api-key-transform.c" |
| 697 | + "${MDBX_SOURCE_DIR}/api-txn.c" |
| 698 | + "${MDBX_SOURCE_DIR}/atomics-ops.h" |
| 699 | + "${MDBX_SOURCE_DIR}/atomics-types.h" |
| 700 | + "${MDBX_SOURCE_DIR}/audit.c" |
| 701 | + "${MDBX_SOURCE_DIR}/chk.c" |
| 702 | + "${MDBX_SOURCE_DIR}/cogs.c" |
| 703 | + "${MDBX_SOURCE_DIR}/cogs.h" |
| 704 | + "${MDBX_SOURCE_DIR}/coherency.c" |
| 705 | + "${MDBX_SOURCE_DIR}/cold.c" |
| 706 | + "${MDBX_SOURCE_DIR}/copy.c" |
| 707 | + "${MDBX_SOURCE_DIR}/cursor.c" |
| 708 | + "${MDBX_SOURCE_DIR}/cursor.h" |
| 709 | + "${MDBX_SOURCE_DIR}/dbi.c" |
| 710 | + "${MDBX_SOURCE_DIR}/dbi.h" |
| 711 | + "${MDBX_SOURCE_DIR}/dpl.c" |
| 712 | + "${MDBX_SOURCE_DIR}/dpl.h" |
| 713 | + "${MDBX_SOURCE_DIR}/dxb.c" |
| 714 | + "${MDBX_SOURCE_DIR}/env-opts.c" |
| 715 | + "${MDBX_SOURCE_DIR}/env.c" |
| 716 | + "${MDBX_SOURCE_DIR}/essentials.h" |
| 717 | + "${MDBX_SOURCE_DIR}/gc-get.c" |
| 718 | + "${MDBX_SOURCE_DIR}/gc-put.c" |
| 719 | + "${MDBX_SOURCE_DIR}/gc.h" |
| 720 | + "${MDBX_SOURCE_DIR}/global.c" |
| 721 | + "${MDBX_SOURCE_DIR}/internals.h" |
| 722 | + "${MDBX_SOURCE_DIR}/layout-dxb.h" |
| 723 | + "${MDBX_SOURCE_DIR}/layout-lck.h" |
| 724 | + "${MDBX_SOURCE_DIR}/lck.c" |
| 725 | + "${MDBX_SOURCE_DIR}/lck.h" |
| 726 | + "${MDBX_SOURCE_DIR}/logging_and_debug.c" |
| 727 | + "${MDBX_SOURCE_DIR}/logging_and_debug.h" |
| 728 | + "${MDBX_SOURCE_DIR}/meta.c" |
| 729 | + "${MDBX_SOURCE_DIR}/meta.h" |
| 730 | + "${MDBX_SOURCE_DIR}/misc.c" |
| 731 | + "${MDBX_SOURCE_DIR}/mvcc-readers.c" |
| 732 | + "${MDBX_SOURCE_DIR}/node.c" |
| 733 | + "${MDBX_SOURCE_DIR}/node.h" |
| 734 | + "${MDBX_SOURCE_DIR}/options.h" |
| 735 | + "${MDBX_SOURCE_DIR}/osal.c" |
| 736 | + "${MDBX_SOURCE_DIR}/osal.h" |
| 737 | + "${MDBX_SOURCE_DIR}/page-get.c" |
| 738 | + "${MDBX_SOURCE_DIR}/page-iov.c" |
| 739 | + "${MDBX_SOURCE_DIR}/page-iov.h" |
| 740 | + "${MDBX_SOURCE_DIR}/page-ops.c" |
| 741 | + "${MDBX_SOURCE_DIR}/page-ops.h" |
| 742 | + "${MDBX_SOURCE_DIR}/page-search.c" |
| 743 | + "${MDBX_SOURCE_DIR}/pnl.c" |
| 744 | + "${MDBX_SOURCE_DIR}/pnl.h" |
| 745 | + "${MDBX_SOURCE_DIR}/preface.h" |
| 746 | + "${MDBX_SOURCE_DIR}/proto.h" |
| 747 | + "${MDBX_SOURCE_DIR}/range-estimate.c" |
| 748 | + "${MDBX_SOURCE_DIR}/refund.c" |
| 749 | + "${MDBX_SOURCE_DIR}/sort.h" |
| 750 | + "${MDBX_SOURCE_DIR}/spill.c" |
| 751 | + "${MDBX_SOURCE_DIR}/spill.h" |
| 752 | + "${MDBX_SOURCE_DIR}/subdb.c" |
| 753 | + "${MDBX_SOURCE_DIR}/tls.c" |
| 754 | + "${MDBX_SOURCE_DIR}/tls.h" |
| 755 | + "${MDBX_SOURCE_DIR}/tree.c" |
| 756 | + "${MDBX_SOURCE_DIR}/txl.c" |
| 757 | + "${MDBX_SOURCE_DIR}/txl.h" |
| 758 | + "${MDBX_SOURCE_DIR}/txn.c" |
| 759 | + "${MDBX_SOURCE_DIR}/unaligned.h" |
| 760 | + "${MDBX_SOURCE_DIR}/utils.c" |
| 761 | + "${MDBX_SOURCE_DIR}/utils.h" |
| 762 | + "${MDBX_SOURCE_DIR}/walk.c" |
| 763 | + "${MDBX_SOURCE_DIR}/walk.h" |
603 | 764 | "${CMAKE_CURRENT_BINARY_DIR}/version.c"
|
604 |
| - "${MDBX_SOURCE_DIR}/options.h" "${MDBX_SOURCE_DIR}/base.h" |
605 |
| - "${MDBX_SOURCE_DIR}/internals.h" "${MDBX_SOURCE_DIR}/osal.h" |
606 |
| - "${MDBX_SOURCE_DIR}/core.c" "${MDBX_SOURCE_DIR}/osal.c" |
607 |
| - "${MDBX_SOURCE_DIR}/lck-posix.c") |
| 765 | + ) |
| 766 | + if(NOT MSVC) |
| 767 | + list(APPEND LIBMDBX_SOURCES "${MDBX_SOURCE_DIR}/lck-posix.c") |
| 768 | + endif() |
608 | 769 | if(NOT APPLE)
|
609 |
| - list(APPEND LIBMDBX_SOURCES "${MDBX_SOURCE_DIR}/lck-windows.c") |
| 770 | + list(APPEND LIBMDBX_SOURCES |
| 771 | + "${MDBX_SOURCE_DIR}/windows-import.h" |
| 772 | + "${MDBX_SOURCE_DIR}/windows-import.c" |
| 773 | + "${MDBX_SOURCE_DIR}/lck-windows.c" |
| 774 | + ) |
610 | 775 | endif()
|
611 | 776 | include_directories("${MDBX_SOURCE_DIR}")
|
612 | 777 | endif()
|
@@ -747,20 +912,23 @@ endif()
|
747 | 912 |
|
748 | 913 | # build mdbx-tools
|
749 | 914 | if(MDBX_BUILD_TOOLS)
|
750 |
| - if(NOT MDBX_AMALGAMATED_SOURCE AND ${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
751 |
| - set(WINGETOPT_SRC ${MDBX_SOURCE_DIR}/wingetopt.c ${MDBX_SOURCE_DIR}/wingetopt.h) |
752 |
| - else() |
753 |
| - set(WINGETOPT_SRC "") |
| 915 | + set(WINGETOPT_SRC "") |
| 916 | + if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
| 917 | + set(WINGETOPT_SRC ${MDBX_SOURCE_DIR}/tools/wingetopt.c ${MDBX_SOURCE_DIR}/tools/wingetopt.h) |
754 | 918 | endif()
|
755 | 919 |
|
756 |
| - foreach(TOOL mdbx_chk mdbx_copy mdbx_stat mdbx_dump mdbx_load mdbx_drop) |
757 |
| - add_executable(${TOOL} mdbx.h ${MDBX_SOURCE_DIR}/${TOOL}.c ${WINGETOPT_SRC}) |
| 920 | + foreach(TOOL chk copy stat dump load drop) |
| 921 | + if(MDBX_AMALGAMATED_SOURCE) |
| 922 | + add_executable(mdbx_${TOOL} mdbx.h ${MDBX_SOURCE_DIR}/mdbx_${TOOL}.c) |
| 923 | + else() |
| 924 | + add_executable(mdbx_${TOOL} mdbx.h ${MDBX_SOURCE_DIR}/tools/${TOOL}.c ${WINGETOPT_SRC}) |
| 925 | + endif() |
758 | 926 | if(NOT C_FALLBACK_GNU11 AND NOT C_FALLBACK_11)
|
759 |
| - set_target_properties(${TOOL} PROPERTIES |
| 927 | + set_target_properties(mdbx_${TOOL} PROPERTIES |
760 | 928 | C_STANDARD ${MDBX_C_STANDARD} C_STANDARD_REQUIRED ON)
|
761 | 929 | endif()
|
762 |
| - target_setup_options(${TOOL}) |
763 |
| - target_link_libraries(${TOOL} ${TOOL_MDBX_LIB}) |
| 930 | + target_setup_options(mdbx_${TOOL}) |
| 931 | + target_link_libraries(mdbx_${TOOL} ${TOOL_MDBX_LIB}) |
764 | 932 | endforeach()
|
765 | 933 | if(LIB_MATH)
|
766 | 934 | target_link_libraries(mdbx_chk ${LIB_MATH})
|
|
0 commit comments