Build Information
Successful build of CLMDB, reference 6.2.1 (adfc03), with Swift 6.4 for macOS (SPM) on 23 Sep 2026 11:38:16 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/swift-bitcoin/swift-lmdb.git
Reference: 6.2.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/swift-bitcoin/swift-lmdb
* tag 6.2.1 -> FETCH_HEAD
HEAD is now at adfc036 Tweaks to make the Swift Package stable
Cloned https://github.com/swift-bitcoin/swift-lmdb.git
Revision (git rev-parse @):
adfc036d41476dce03425e0182f7c96cd9f5d022
SUCCESS checkout https://github.com/swift-bitcoin/swift-lmdb.git at 6.2.1
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.4
Building package at path: $PWD
https://github.com/swift-bitcoin/swift-lmdb.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Planning deferred tasks]
[15 / 21]
[17 / 21] CLMDB
[23 / 32]
[27 / 34]
[31 / 34] CLMDB
[31 / 34]
[32 / 34] CLMDB
Build complete! (3.89 sec)
[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/midl.c:44:15: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
44 | unsigned n = ids[0];[0m
| [0;1;32m ~ ^~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/midl.c:176:26: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
176 | if (mdb_midl_grow(idp, app[0]))[0m
| [0;1;32m ~~~~~~~~~~~~~ ^~~~~~
[0m2 warnings generated.
[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2093:24: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2093 | unsigned i, n = dl[0].mid;[0m
| [0;1;32m ~ ~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2335:22: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2335 | unsigned int num = sl[0];[0m
| [0;1;32m ~~~ ^~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2360:15: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2360 | for (i=dl[0].mid; i && need; i--) {[0m
| [0;1;32m ~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2477:33: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2477 | unsigned i, j, mop_len = mop ? mop[0] : 0, n2 = num-1;[0m
| [0;1;32m ~~~~~~~ ^~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2578:7: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2578 | i = idl[0];[0m
| [0;1;32m ~ ^~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:2598:13: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
2598 | mop_len = mop[0];[0m
| [0;1;32m ~ ^~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:3256:11: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32][0m
3256 | size = MDB_IDL_SIZEOF(env->me_pghead);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0mIn file included from /Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:243:
[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/midl.h:68:44: [0m[0;1;36mnote: [0mexpanded from macro 'MDB_IDL_SIZEOF'[0m
68 | #define MDB_IDL_SIZEOF(ids) (((ids)[0]+1) * sizeof(MDB_ID))[0m
| [0;1;32m ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:3257:36: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
3257 | env->me_pghead = mdb_midl_alloc(env->me_pghead[0]);[0m
| [0;1;32m ~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:3694:29: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
3694 | int i, pagecount = dl[0].mid, rc;[0m
| [0;1;32m ~~~~~~~~~ ~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:3988:52: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
3988 | if ((pspill = parent->mt_spill_pgs) && (ps_len = pspill[0])) {[0m
| [0;1;32m ~ ^~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:3992:25: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
3992 | for (i=0, len=src[0].mid; ++i <= len; ) {[0m
| [0;1;32m ~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4028:14: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
4028 | x = dst[0].mid;[0m
| [0;1;32m ~ ~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4031:12: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
4031 | len = x + src[0].mid;[0m
| [0;1;32m ~ ~~^~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4046:14: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
4046 | y = src[0].mid;[0m
| [0;1;32m ~ ~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4190:8: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
4190 | rc = pread(env->me_fd, &pbuf, Size, off);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4281:2: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
4281 | DO_PWRITE(rc, env->me_fd, p, psize * NUM_METAS, len, 0);[0m
| [0;1;32m ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4261:8: [0m[0;1;36mnote: [0mexpanded from macro 'DO_PWRITE'[0m
4261 | len = pwrite(fd, ptr, size, pos); \[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4364:25: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'unsigned long long' to 'int' [-Wshorten-64-to-32][0m
4364 | len = sizeof(MDB_meta) - off;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~^~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4381:7: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
4381 | rc = pwrite(mfd, ptr, len, off);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4401:8: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
4401 | r2 = pwrite(env->me_fd, ptr, len, off);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4457:2: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32][0m
4457 | GET_PAGESIZE(e->me_os_psize);[0m
| [0;1;32m ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:481:32: [0m[0;1;36mnote: [0mexpanded from macro 'GET_PAGESIZE'[0m
481 | #define GET_PAGESIZE(x) ((x) = sysconf(_SC_PAGE_SIZE))[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:4719:18: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32][0m
4719 | fname->mn_len = strlen(path);[0m
| [0;1;32m ~ ^~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:5365:48: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'unsigned long long' to 'unsigned int' [-Wshorten-64-to-32][0m
5365 | env->me_maxreaders = size/sizeof(MDB_reader) + 1;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:5930:11: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
5930 | len = a->mv_size;[0m
| [0;1;32m ~ ~~~^~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:5933:12: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
5933 | len = b->mv_size;[0m
| [0;1;32m ~ ~~~^~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:5938:41: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
5938 | return diff ? diff : len_diff<0 ? -1 : len_diff;[0m
| [0;1;32m ~~~~~~ ^~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:5964:27: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
5964 | return len_diff<0 ? -1 : len_diff;[0m
| [0;1;32m ~~~~~~ ^~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:6723:16: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
6723 | x = dl[0].mid--;[0m
| [0;1;32m ~ ~~~~~~~~~^~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:6731:9: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'MDB_ID' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
6731 | j = ++(dl[0].mid);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:6743:14: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
6743 | j = mop[0] + ovpages;[0m
| [0;1;32m ~ ~~~~~~~^~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:6744:12: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'pgno_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
6744 | for (i = mop[0]; i && mop[i] < pg; i--)[0m
| [0;1;32m ~ ^~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:7601:20: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
7601 | dcount = data[1].mv_size;[0m
| [0;1;32m ~ ~~~~~~~~^~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:7814:16: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'unsigned long' to 'unsigned int' [-Wshorten-64-to-32][0m
7814 | offset = EVEN(NODESIZE + sizeof(indx_t) +[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m 7815 | data->mv_size);[0m
| [0;1;32m ~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:712:30: [0m[0;1;36mnote: [0mexpanded from macro 'EVEN'[0m
712 | #define EVEN(n) (((n) + 1U) & -2) /* sign-extending -2 to match n+1U */[0m
| [0;1;32m ~~~~~~~~~~~^~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:7858:29: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32][0m
7858 | offset = env->me_psize - olddata.mv_size;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:7894:33: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
7894 | int level, ovpages, dpages = OVPAGES(data->mv_size, env->me_psize);[0m
| [0;1;32m ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:1066:64: [0m[0;1;36mnote: [0mexpanded from macro 'OVPAGES'[0m
1066 | #define OVPAGES(size, psize) ((PAGEHDRSZ-1 + (size)) / (psize) + 1)[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:8070:51: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'mdb_size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
8070 | insert_data = mc->mc_xcursor->mx_db.md_entries - ecount;[0m
| [0;1;32m ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:8357:18: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
8357 | int ovpages = OVPAGES(data->mv_size, mc->mc_txn->mt_env->me_psize);[0m
| [0;1;32m ~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:1066:64: [0m[0;1;36mnote: [0mexpanded from macro 'OVPAGES'[0m
1066 | #define OVPAGES(size, psize) ((PAGEHDRSZ-1 + (size)) / (psize) + 1)[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:8831:10: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
8831 | ksize = EVEN(key->mv_size);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:712:30: [0m[0;1;36mnote: [0mexpanded from macro 'EVEN'[0m
712 | #define EVEN(n) (((n) + 1U) & -2) /* sign-extending -2 to match n+1U */[0m
| [0;1;32m ~~~~~~~~~~~^~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:8985:25: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
8985 | mdb_node_del(csrc, key.mv_size);[0m
| [0;1;32m ~~~~~~~~~~~~ ~~~~^~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:9776:13: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
9776 | nsize = mdb_leaf_size(env, newkey, newdata);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:9778:13: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32][0m
9778 | nsize = mdb_branch_size(env, newkey);[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:10150:4: [0m[0;1;35mwarning: [0m[1mimplicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32][0m
10150 | DO_WRITE(rc, my->mc_fd, ptr, wsize, len);[0m
| [0;1;32m ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/Users/admin/builder/spi-builder-workspace/Sources/CLMDB/mdb.c:10129:46: [0m[0;1;36mnote: [0mexpanded from macro 'DO_WRITE'[0m
10129 | #define DO_WRITE(rc, fd, ptr, w2, len) len = write(fd, ptr, w2); rc = (len >= 0)[0m
| [0;1;32m ~ ^~~~~~~~~~~~~~~~~~
[0m41 warnings generated.
Build complete.
{
"c_language_standard" : "c2x",
"dependencies" : [
],
"manifest_display_name" : "CLMDB",
"name" : "CLMDB",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "CLMDB",
"targets" : [
"CLMDB"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CLMDB",
"module_type" : "ClangTarget",
"name" : "CLMDB",
"path" : "Sources/CLMDB",
"product_memberships" : [
"CLMDB"
],
"sources" : [
"mdb.c",
"midl.c"
],
"type" : "library"
}
],
"tools_version" : "6.2"
}
Done.