rn-leveldb 3.11.0 → 3.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -0
- package/cpp/leveldb/util/env_posix.cc +8 -2
- package/cpp/leveldb/util/env_windows.cc +8 -2
- package/package.json +1 -1
- package/cpp/leveldb/third_party/benchmark/.clang-format +0 -5
- package/cpp/leveldb/third_party/benchmark/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
- package/cpp/leveldb/third_party/benchmark/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/cpp/leveldb/third_party/benchmark/.github/workflows/build-and-test.yml +0 -38
- package/cpp/leveldb/third_party/benchmark/.github/workflows/pylint.yml +0 -26
- package/cpp/leveldb/third_party/benchmark/.github/workflows/test_bindings.yml +0 -24
- package/cpp/leveldb/third_party/benchmark/.travis-libcxx-setup.sh +0 -28
- package/cpp/leveldb/third_party/benchmark/.travis.yml +0 -231
- package/cpp/leveldb/third_party/benchmark/.ycm_extra_conf.py +0 -115
- package/cpp/leveldb/third_party/benchmark/AUTHORS +0 -58
- package/cpp/leveldb/third_party/benchmark/BUILD.bazel +0 -44
- package/cpp/leveldb/third_party/benchmark/CMakeLists.txt +0 -287
- package/cpp/leveldb/third_party/benchmark/CONTRIBUTING.md +0 -58
- package/cpp/leveldb/third_party/benchmark/CONTRIBUTORS +0 -83
- package/cpp/leveldb/third_party/benchmark/LICENSE +0 -202
- package/cpp/leveldb/third_party/benchmark/README.md +0 -1323
- package/cpp/leveldb/third_party/benchmark/WORKSPACE +0 -51
- package/cpp/leveldb/third_party/benchmark/_config.yml +0 -1
- package/cpp/leveldb/third_party/benchmark/appveyor.yml +0 -50
- package/cpp/leveldb/third_party/benchmark/bindings/python/BUILD +0 -3
- package/cpp/leveldb/third_party/benchmark/bindings/python/build_defs.bzl +0 -25
- package/cpp/leveldb/third_party/benchmark/bindings/python/google_benchmark/BUILD +0 -38
- package/cpp/leveldb/third_party/benchmark/bindings/python/google_benchmark/__init__.py +0 -156
- package/cpp/leveldb/third_party/benchmark/bindings/python/google_benchmark/benchmark.cc +0 -180
- package/cpp/leveldb/third_party/benchmark/bindings/python/google_benchmark/example.py +0 -136
- package/cpp/leveldb/third_party/benchmark/bindings/python/pybind11.BUILD +0 -20
- package/cpp/leveldb/third_party/benchmark/bindings/python/python_headers.BUILD +0 -6
- package/cpp/leveldb/third_party/benchmark/bindings/python/requirements.txt +0 -2
- package/cpp/leveldb/third_party/benchmark/cmake/AddCXXCompilerFlag.cmake +0 -74
- package/cpp/leveldb/third_party/benchmark/cmake/CXXFeatureCheck.cmake +0 -69
- package/cpp/leveldb/third_party/benchmark/cmake/Config.cmake.in +0 -1
- package/cpp/leveldb/third_party/benchmark/cmake/GetGitVersion.cmake +0 -54
- package/cpp/leveldb/third_party/benchmark/cmake/GoogleTest.cmake +0 -41
- package/cpp/leveldb/third_party/benchmark/cmake/GoogleTest.cmake.in +0 -58
- package/cpp/leveldb/third_party/benchmark/cmake/benchmark.pc.in +0 -12
- package/cpp/leveldb/third_party/benchmark/cmake/gnu_posix_regex.cpp +0 -12
- package/cpp/leveldb/third_party/benchmark/cmake/llvm-toolchain.cmake +0 -8
- package/cpp/leveldb/third_party/benchmark/cmake/posix_regex.cpp +0 -14
- package/cpp/leveldb/third_party/benchmark/cmake/split_list.cmake +0 -3
- package/cpp/leveldb/third_party/benchmark/cmake/std_regex.cpp +0 -10
- package/cpp/leveldb/third_party/benchmark/cmake/steady_clock.cpp +0 -7
- package/cpp/leveldb/third_party/benchmark/cmake/thread_safety_attributes.cpp +0 -4
- package/cpp/leveldb/third_party/benchmark/conan/CMakeLists.txt +0 -7
- package/cpp/leveldb/third_party/benchmark/conan/test_package/CMakeLists.txt +0 -10
- package/cpp/leveldb/third_party/benchmark/conan/test_package/conanfile.py +0 -19
- package/cpp/leveldb/third_party/benchmark/conan/test_package/test_package.cpp +0 -18
- package/cpp/leveldb/third_party/benchmark/conanfile.py +0 -79
- package/cpp/leveldb/third_party/benchmark/dependencies.md +0 -18
- package/cpp/leveldb/third_party/benchmark/docs/AssemblyTests.md +0 -147
- package/cpp/leveldb/third_party/benchmark/docs/_config.yml +0 -1
- package/cpp/leveldb/third_party/benchmark/docs/releasing.md +0 -16
- package/cpp/leveldb/third_party/benchmark/docs/tools.md +0 -203
- package/cpp/leveldb/third_party/benchmark/include/benchmark/benchmark.h +0 -1604
- package/cpp/leveldb/third_party/benchmark/requirements.txt +0 -2
- package/cpp/leveldb/third_party/benchmark/setup.py +0 -140
- package/cpp/leveldb/third_party/benchmark/src/CMakeLists.txt +0 -114
- package/cpp/leveldb/third_party/benchmark/src/arraysize.h +0 -33
- package/cpp/leveldb/third_party/benchmark/src/benchmark.cc +0 -499
- package/cpp/leveldb/third_party/benchmark/src/benchmark_api_internal.cc +0 -15
- package/cpp/leveldb/third_party/benchmark/src/benchmark_api_internal.h +0 -53
- package/cpp/leveldb/third_party/benchmark/src/benchmark_main.cc +0 -17
- package/cpp/leveldb/third_party/benchmark/src/benchmark_name.cc +0 -58
- package/cpp/leveldb/third_party/benchmark/src/benchmark_register.cc +0 -515
- package/cpp/leveldb/third_party/benchmark/src/benchmark_register.h +0 -108
- package/cpp/leveldb/third_party/benchmark/src/benchmark_runner.cc +0 -362
- package/cpp/leveldb/third_party/benchmark/src/benchmark_runner.h +0 -51
- package/cpp/leveldb/third_party/benchmark/src/check.h +0 -82
- package/cpp/leveldb/third_party/benchmark/src/colorprint.cc +0 -188
- package/cpp/leveldb/third_party/benchmark/src/colorprint.h +0 -33
- package/cpp/leveldb/third_party/benchmark/src/commandlineflags.cc +0 -228
- package/cpp/leveldb/third_party/benchmark/src/commandlineflags.h +0 -103
- package/cpp/leveldb/third_party/benchmark/src/complexity.cc +0 -238
- package/cpp/leveldb/third_party/benchmark/src/complexity.h +0 -55
- package/cpp/leveldb/third_party/benchmark/src/console_reporter.cc +0 -177
- package/cpp/leveldb/third_party/benchmark/src/counter.cc +0 -80
- package/cpp/leveldb/third_party/benchmark/src/counter.h +0 -32
- package/cpp/leveldb/third_party/benchmark/src/csv_reporter.cc +0 -154
- package/cpp/leveldb/third_party/benchmark/src/cycleclock.h +0 -211
- package/cpp/leveldb/third_party/benchmark/src/internal_macros.h +0 -102
- package/cpp/leveldb/third_party/benchmark/src/json_reporter.cc +0 -255
- package/cpp/leveldb/third_party/benchmark/src/log.h +0 -74
- package/cpp/leveldb/third_party/benchmark/src/mutex.h +0 -155
- package/cpp/leveldb/third_party/benchmark/src/re.h +0 -158
- package/cpp/leveldb/third_party/benchmark/src/reporter.cc +0 -105
- package/cpp/leveldb/third_party/benchmark/src/sleep.cc +0 -67
- package/cpp/leveldb/third_party/benchmark/src/sleep.h +0 -15
- package/cpp/leveldb/third_party/benchmark/src/statistics.cc +0 -193
- package/cpp/leveldb/third_party/benchmark/src/statistics.h +0 -37
- package/cpp/leveldb/third_party/benchmark/src/string_util.cc +0 -255
- package/cpp/leveldb/third_party/benchmark/src/string_util.h +0 -59
- package/cpp/leveldb/third_party/benchmark/src/sysinfo.cc +0 -716
- package/cpp/leveldb/third_party/benchmark/src/thread_manager.h +0 -64
- package/cpp/leveldb/third_party/benchmark/src/thread_timer.h +0 -86
- package/cpp/leveldb/third_party/benchmark/src/timers.cc +0 -245
- package/cpp/leveldb/third_party/benchmark/src/timers.h +0 -48
- package/cpp/leveldb/third_party/benchmark/test/AssemblyTests.cmake +0 -46
- package/cpp/leveldb/third_party/benchmark/test/BUILD +0 -73
- package/cpp/leveldb/third_party/benchmark/test/CMakeLists.txt +0 -263
- package/cpp/leveldb/third_party/benchmark/test/args_product_test.cc +0 -77
- package/cpp/leveldb/third_party/benchmark/test/basic_test.cc +0 -136
- package/cpp/leveldb/third_party/benchmark/test/benchmark_gtest.cc +0 -134
- package/cpp/leveldb/third_party/benchmark/test/benchmark_name_gtest.cc +0 -74
- package/cpp/leveldb/third_party/benchmark/test/benchmark_test.cc +0 -245
- package/cpp/leveldb/third_party/benchmark/test/clobber_memory_assembly_test.cc +0 -64
- package/cpp/leveldb/third_party/benchmark/test/commandlineflags_gtest.cc +0 -201
- package/cpp/leveldb/third_party/benchmark/test/complexity_test.cc +0 -213
- package/cpp/leveldb/third_party/benchmark/test/cxx03_test.cc +0 -63
- package/cpp/leveldb/third_party/benchmark/test/diagnostics_test.cc +0 -80
- package/cpp/leveldb/third_party/benchmark/test/display_aggregates_only_test.cc +0 -43
- package/cpp/leveldb/third_party/benchmark/test/donotoptimize_assembly_test.cc +0 -163
- package/cpp/leveldb/third_party/benchmark/test/donotoptimize_test.cc +0 -52
- package/cpp/leveldb/third_party/benchmark/test/filter_test.cc +0 -104
- package/cpp/leveldb/third_party/benchmark/test/fixture_test.cc +0 -51
- package/cpp/leveldb/third_party/benchmark/test/internal_threading_test.cc +0 -184
- package/cpp/leveldb/third_party/benchmark/test/link_main_test.cc +0 -8
- package/cpp/leveldb/third_party/benchmark/test/map_test.cc +0 -57
- package/cpp/leveldb/third_party/benchmark/test/memory_manager_test.cc +0 -44
- package/cpp/leveldb/third_party/benchmark/test/multiple_ranges_test.cc +0 -96
- package/cpp/leveldb/third_party/benchmark/test/options_test.cc +0 -75
- package/cpp/leveldb/third_party/benchmark/test/output_test.h +0 -213
- package/cpp/leveldb/third_party/benchmark/test/output_test_helper.cc +0 -515
- package/cpp/leveldb/third_party/benchmark/test/register_benchmark_test.cc +0 -184
- package/cpp/leveldb/third_party/benchmark/test/report_aggregates_only_test.cc +0 -39
- package/cpp/leveldb/third_party/benchmark/test/reporter_output_test.cc +0 -747
- package/cpp/leveldb/third_party/benchmark/test/skip_with_error_test.cc +0 -195
- package/cpp/leveldb/third_party/benchmark/test/state_assembly_test.cc +0 -68
- package/cpp/leveldb/third_party/benchmark/test/statistics_gtest.cc +0 -28
- package/cpp/leveldb/third_party/benchmark/test/string_util_gtest.cc +0 -153
- package/cpp/leveldb/third_party/benchmark/test/templated_fixture_test.cc +0 -28
- package/cpp/leveldb/third_party/benchmark/test/user_counters_tabular_test.cc +0 -285
- package/cpp/leveldb/third_party/benchmark/test/user_counters_test.cc +0 -531
- package/cpp/leveldb/third_party/benchmark/test/user_counters_thousands_test.cc +0 -173
- package/cpp/leveldb/third_party/benchmark/tools/BUILD.bazel +0 -19
- package/cpp/leveldb/third_party/benchmark/tools/compare.py +0 -429
- package/cpp/leveldb/third_party/benchmark/tools/gbench/Inputs/test1_run1.json +0 -119
- package/cpp/leveldb/third_party/benchmark/tools/gbench/Inputs/test1_run2.json +0 -119
- package/cpp/leveldb/third_party/benchmark/tools/gbench/Inputs/test2_run.json +0 -81
- package/cpp/leveldb/third_party/benchmark/tools/gbench/Inputs/test3_run0.json +0 -65
- package/cpp/leveldb/third_party/benchmark/tools/gbench/Inputs/test3_run1.json +0 -65
- package/cpp/leveldb/third_party/benchmark/tools/gbench/__init__.py +0 -8
- package/cpp/leveldb/third_party/benchmark/tools/gbench/report.py +0 -903
- package/cpp/leveldb/third_party/benchmark/tools/gbench/util.py +0 -163
- package/cpp/leveldb/third_party/benchmark/tools/requirements.txt +0 -1
- package/cpp/leveldb/third_party/benchmark/tools/strip_asm.py +0 -151
- package/cpp/leveldb/third_party/googletest/.clang-format +0 -4
- package/cpp/leveldb/third_party/googletest/.travis.yml +0 -73
- package/cpp/leveldb/third_party/googletest/BUILD.bazel +0 -179
- package/cpp/leveldb/third_party/googletest/CMakeLists.txt +0 -36
- package/cpp/leveldb/third_party/googletest/CONTRIBUTING.md +0 -142
- package/cpp/leveldb/third_party/googletest/LICENSE +0 -28
- package/cpp/leveldb/third_party/googletest/README.md +0 -132
- package/cpp/leveldb/third_party/googletest/WORKSPACE +0 -23
- package/cpp/leveldb/third_party/googletest/appveyor.yml +0 -154
- package/cpp/leveldb/third_party/googletest/ci/build-linux-bazel.sh +0 -37
- package/cpp/leveldb/third_party/googletest/ci/build-platformio.sh +0 -2
- package/cpp/leveldb/third_party/googletest/ci/env-linux.sh +0 -41
- package/cpp/leveldb/third_party/googletest/ci/env-osx.sh +0 -47
- package/cpp/leveldb/third_party/googletest/ci/get-nprocessors.sh +0 -48
- package/cpp/leveldb/third_party/googletest/ci/install-linux.sh +0 -49
- package/cpp/leveldb/third_party/googletest/ci/install-osx.sh +0 -40
- package/cpp/leveldb/third_party/googletest/ci/install-platformio.sh +0 -5
- package/cpp/leveldb/third_party/googletest/ci/log-config.sh +0 -51
- package/cpp/leveldb/third_party/googletest/ci/travis.sh +0 -44
- package/cpp/leveldb/third_party/googletest/googlemock/CMakeLists.txt +0 -233
- package/cpp/leveldb/third_party/googletest/googlemock/CONTRIBUTORS +0 -40
- package/cpp/leveldb/third_party/googletest/googlemock/LICENSE +0 -28
- package/cpp/leveldb/third_party/googletest/googlemock/README.md +0 -44
- package/cpp/leveldb/third_party/googletest/googlemock/cmake/gmock.pc.in +0 -10
- package/cpp/leveldb/third_party/googletest/googlemock/cmake/gmock_main.pc.in +0 -10
- package/cpp/leveldb/third_party/googletest/googlemock/docs/cheat_sheet.md +0 -770
- package/cpp/leveldb/third_party/googletest/googlemock/docs/cook_book.md +0 -4270
- package/cpp/leveldb/third_party/googletest/googlemock/docs/for_dummies.md +0 -700
- package/cpp/leveldb/third_party/googletest/googlemock/docs/gmock_faq.md +0 -396
- package/cpp/leveldb/third_party/googletest/googlemock/docs/pump_manual.md +0 -187
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-actions.h +0 -1193
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-cardinalities.h +0 -157
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-function-mocker.h +0 -276
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-actions.h +0 -1884
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-actions.h.pump +0 -627
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-function-mockers.h +0 -752
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +0 -227
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-matchers.h +0 -1097
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-generated-matchers.h.pump +0 -346
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-matchers.h +0 -4591
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-more-actions.h +0 -162
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-more-matchers.h +0 -92
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-nice-strict.h +0 -215
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock-spec-builders.h +0 -1985
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/gmock.h +0 -101
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/custom/README.md +0 -16
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +0 -10
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +0 -12
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/custom/gmock-matchers.h +0 -36
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/custom/gmock-port.h +0 -39
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/gmock-internal-utils.h +0 -472
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/gmock-port.h +0 -87
- package/cpp/leveldb/third_party/googletest/googlemock/include/gmock/internal/gmock-pp.h +0 -271
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/README.md +0 -5
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/fuse_gmock_files.py +0 -240
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/LICENSE +0 -203
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/README +0 -34
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/README.cppclean +0 -115
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/__init__.py +0 -0
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/ast.py +0 -1761
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/gmock_class.py +0 -248
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/gmock_class_test.py +0 -540
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/keywords.py +0 -56
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/tokenize.py +0 -284
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/cpp/utils.py +0 -37
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/generator/gmock_gen.py +0 -30
- package/cpp/leveldb/third_party/googletest/googlemock/scripts/pump.py +0 -856
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock-all.cc +0 -46
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock-cardinalities.cc +0 -155
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock-internal-utils.cc +0 -200
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock-matchers.cc +0 -462
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock-spec-builders.cc +0 -892
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock.cc +0 -213
- package/cpp/leveldb/third_party/googletest/googlemock/src/gmock_main.cc +0 -72
- package/cpp/leveldb/third_party/googletest/googlemock/test/BUILD.bazel +0 -110
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-actions_test.cc +0 -1507
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-cardinalities_test.cc +0 -429
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-function-mocker_nc.cc +0 -16
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-function-mocker_nc_test.py +0 -43
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-function-mocker_test.cc +0 -696
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-generated-actions_test.cc +0 -1064
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-generated-function-mockers_test.cc +0 -659
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-generated-matchers_test.cc +0 -1323
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-internal-utils_test.cc +0 -732
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-matchers_test.cc +0 -6913
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-more-actions_test.cc +0 -698
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-nice-strict_test.cc +0 -500
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-port_test.cc +0 -42
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-pp-string_test.cc +0 -206
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-pp_test.cc +0 -83
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock-spec-builders_test.cc +0 -2775
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_all_test.cc +0 -49
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_ex_test.cc +0 -80
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_leak_test.py +0 -104
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_leak_test_.cc +0 -99
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_link2_test.cc +0 -39
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_link_test.cc +0 -39
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_link_test.h +0 -690
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_output_test.py +0 -183
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_output_test_.cc +0 -309
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_output_test_golden.txt +0 -317
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_stress_test.cc +0 -240
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_test.cc +0 -181
- package/cpp/leveldb/third_party/googletest/googlemock/test/gmock_test_utils.py +0 -108
- package/cpp/leveldb/third_party/googletest/googlemock/test/pump_test.py +0 -182
- package/cpp/leveldb/third_party/googletest/googletest/CMakeLists.txt +0 -329
- package/cpp/leveldb/third_party/googletest/googletest/CONTRIBUTORS +0 -38
- package/cpp/leveldb/third_party/googletest/googletest/LICENSE +0 -28
- package/cpp/leveldb/third_party/googletest/googletest/README.md +0 -244
- package/cpp/leveldb/third_party/googletest/googletest/cmake/Config.cmake.in +0 -9
- package/cpp/leveldb/third_party/googletest/googletest/cmake/gtest.pc.in +0 -9
- package/cpp/leveldb/third_party/googletest/googletest/cmake/gtest_main.pc.in +0 -10
- package/cpp/leveldb/third_party/googletest/googletest/cmake/internal_utils.cmake +0 -358
- package/cpp/leveldb/third_party/googletest/googletest/cmake/libgtest.la.in +0 -21
- package/cpp/leveldb/third_party/googletest/googletest/docs/advanced.md +0 -2567
- package/cpp/leveldb/third_party/googletest/googletest/docs/faq.md +0 -753
- package/cpp/leveldb/third_party/googletest/googletest/docs/pkgconfig.md +0 -219
- package/cpp/leveldb/third_party/googletest/googletest/docs/primer.md +0 -579
- package/cpp/leveldb/third_party/googletest/googletest/docs/samples.md +0 -22
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-death-test.h +0 -343
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-matchers.h +0 -750
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-message.h +0 -219
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-param-test.h +0 -514
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-printers.h +0 -928
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-spi.h +0 -238
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-test-part.h +0 -184
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest-typed-test.h +0 -337
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest.h +0 -2477
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest_pred_impl.h +0 -359
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/gtest_prod.h +0 -61
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/custom/README.md +0 -56
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/custom/gtest-port.h +0 -37
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/custom/gtest-printers.h +0 -42
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/custom/gtest.h +0 -37
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-death-test-internal.h +0 -304
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-filepath.h +0 -211
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-internal.h +0 -1411
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-param-util.h +0 -880
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-port-arch.h +0 -111
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-port.h +0 -2227
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-string.h +0 -171
- package/cpp/leveldb/third_party/googletest/googletest/include/gtest/internal/gtest-type-util.h +0 -183
- package/cpp/leveldb/third_party/googletest/googletest/samples/prime_tables.h +0 -126
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample1.cc +0 -66
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample1.h +0 -41
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample10_unittest.cc +0 -139
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample1_unittest.cc +0 -151
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample2.cc +0 -54
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample2.h +0 -81
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample2_unittest.cc +0 -107
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample3-inl.h +0 -172
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample3_unittest.cc +0 -149
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample4.cc +0 -54
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample4.h +0 -53
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample4_unittest.cc +0 -53
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample5_unittest.cc +0 -196
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample6_unittest.cc +0 -224
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample7_unittest.cc +0 -117
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample8_unittest.cc +0 -154
- package/cpp/leveldb/third_party/googletest/googletest/samples/sample9_unittest.cc +0 -156
- package/cpp/leveldb/third_party/googletest/googletest/scripts/README.md +0 -5
- package/cpp/leveldb/third_party/googletest/googletest/scripts/common.py +0 -83
- package/cpp/leveldb/third_party/googletest/googletest/scripts/fuse_gtest_files.py +0 -253
- package/cpp/leveldb/third_party/googletest/googletest/scripts/gen_gtest_pred_impl.py +0 -734
- package/cpp/leveldb/third_party/googletest/googletest/scripts/gtest-config.in +0 -274
- package/cpp/leveldb/third_party/googletest/googletest/scripts/release_docs.py +0 -158
- package/cpp/leveldb/third_party/googletest/googletest/scripts/run_with_path.py +0 -32
- package/cpp/leveldb/third_party/googletest/googletest/scripts/upload.py +0 -1402
- package/cpp/leveldb/third_party/googletest/googletest/scripts/upload_gtest.py +0 -78
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-all.cc +0 -48
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-death-test.cc +0 -1653
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-filepath.cc +0 -382
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-internal-inl.h +0 -1211
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-matchers.cc +0 -97
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-port.cc +0 -1399
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-printers.cc +0 -442
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-test-part.cc +0 -108
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest-typed-test.cc +0 -118
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest.cc +0 -6180
- package/cpp/leveldb/third_party/googletest/googletest/src/gtest_main.cc +0 -54
- package/cpp/leveldb/third_party/googletest/googletest/test/BUILD.bazel +0 -529
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-break-on-failure-unittest.py +0 -208
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-break-on-failure-unittest_.cc +0 -86
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-catch-exceptions-test.py +0 -236
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-catch-exceptions-test_.cc +0 -293
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-color-test.py +0 -127
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-color-test_.cc +0 -62
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-death-test-test.cc +0 -1516
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-death-test_ex_test.cc +0 -92
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-env-var-test.py +0 -117
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-env-var-test_.cc +0 -122
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-filepath-test.cc +0 -649
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-filter-unittest.py +0 -639
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-filter-unittest_.cc +0 -137
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-json-outfiles-test.py +0 -191
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-json-output-unittest.py +0 -778
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-list-tests-unittest.py +0 -205
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-list-tests-unittest_.cc +0 -156
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-listener-test.cc +0 -518
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-message-test.cc +0 -158
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-options-test.cc +0 -216
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-output-test-golden-lin.txt +0 -1137
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-output-test.py +0 -346
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-output-test_.cc +0 -1149
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-invalid-name1-test.py +0 -63
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-invalid-name1-test_.cc +0 -50
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-invalid-name2-test.py +0 -62
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-invalid-name2-test_.cc +0 -55
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-test.cc +0 -1086
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test-test.h +0 -51
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-param-test2-test.cc +0 -61
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-port-test.cc +0 -1272
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-printers-test.cc +0 -1619
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-shuffle-test.py +0 -323
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-shuffle-test_.cc +0 -101
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-test-part-test.cc +0 -230
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-test2_test.cc +0 -61
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-throw-on-failure-test.py +0 -168
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-throw-on-failure-test_.cc +0 -71
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-uninitialized-test.py +0 -67
- package/cpp/leveldb/third_party/googletest/googletest/test/googletest-uninitialized-test_.cc +0 -42
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest-typed-test2_test.cc +0 -44
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest-typed-test_test.cc +0 -462
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest-typed-test_test.h +0 -65
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest-unittest-api_test.cc +0 -341
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_all_test.cc +0 -46
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_assert_by_exception_test.cc +0 -116
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_environment_test.cc +0 -188
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_help_test.py +0 -170
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_help_test_.cc +0 -45
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_json_test_utils.py +0 -60
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_list_output_unittest.py +0 -141
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_list_output_unittest_.cc +0 -51
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_main_unittest.cc +0 -44
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_no_test_unittest.cc +0 -54
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_pred_impl_unittest.cc +0 -2427
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_premature_exit_test.cc +0 -126
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_prod_test.cc +0 -56
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_repeat_test.cc +0 -233
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_skip_check_output_test.py +0 -59
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_skip_environment_check_output_test.py +0 -54
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_skip_in_environment_setup_test.cc +0 -49
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_skip_test.cc +0 -55
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_sole_header_test.cc +0 -56
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_stress_test.cc +0 -248
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_test_macro_stack_footprint_test.cc +0 -89
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_test_utils.py +0 -314
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_testbridge_test.py +0 -63
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_testbridge_test_.cc +0 -43
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_throw_on_failure_ex_test.cc +0 -90
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_unittest.cc +0 -7496
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_outfile1_test_.cc +0 -43
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_outfile2_test_.cc +0 -43
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_outfiles_test.py +0 -135
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_output_unittest.py +0 -389
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_output_unittest_.cc +0 -188
- package/cpp/leveldb/third_party/googletest/googletest/test/gtest_xml_test_utils.py +0 -196
- package/cpp/leveldb/third_party/googletest/googletest/test/production.cc +0 -35
- package/cpp/leveldb/third_party/googletest/googletest/test/production.h +0 -54
- package/cpp/leveldb/third_party/googletest/library.json +0 -66
- package/cpp/leveldb/third_party/googletest/platformio.ini +0 -47
package/README.md
CHANGED
|
@@ -87,6 +87,61 @@ The included example app runs basic smoke tests (and benchmarks) on startup.
|
|
|
87
87
|
|
|
88
88
|
See `CONTRIBUTING.md` for the exact commands to run the example on iOS/Android.
|
|
89
89
|
|
|
90
|
+
## Vendored LevelDB source
|
|
91
|
+
|
|
92
|
+
The C++ LevelDB implementation lives **in-tree** under `cpp/leveldb` (it is *not* a
|
|
93
|
+
git submodule — the source files are committed directly, so a fresh `git clone`
|
|
94
|
+
or `npm install` has everything needed to build).
|
|
95
|
+
|
|
96
|
+
- **Current version:** LevelDB 1.22 (see `cpp/leveldb/include/leveldb/db.h`).
|
|
97
|
+
- **Refreshing it:** `yarn update-leveldb --ref <tag> --repo https://github.com/google/leveldb.git`
|
|
98
|
+
(wraps `scripts/update-leveldb.sh`). This clones the given ref, replaces
|
|
99
|
+
`cpp/leveldb`, and strips nested `.git` metadata. Review the diff, then rebuild
|
|
100
|
+
the example app on both platforms before releasing.
|
|
101
|
+
- **Local patch:** `env_posix.cc` / `env_windows.cc` spell the `SingletonEnv`
|
|
102
|
+
atomic memory order as `std::memory_order_relaxed` (backported from
|
|
103
|
+
google/leveldb `main`). Upstream 1.22 and 1.23 use
|
|
104
|
+
`std::memory_order::memory_order_relaxed`, which does **not** compile under
|
|
105
|
+
C++20 (React Native 0.82+ builds pods at C++20, where `std::memory_order` is a
|
|
106
|
+
scoped enum). **If you re-vendor to a LevelDB release newer than 1.23 that
|
|
107
|
+
already contains this fix, this patch can be dropped** — re-check those lines
|
|
108
|
+
after running `update-leveldb`.
|
|
109
|
+
- **Not vendored:** `cpp/leveldb/third_party/{googletest,benchmark}` are omitted.
|
|
110
|
+
They are test/benchmark-only deps, never compiled by the Android CMake
|
|
111
|
+
(`LEVELDB_BUILD_TESTS`/`LEVELDB_BUILD_BENCHMARKS` are forced `OFF`) or the iOS
|
|
112
|
+
podspec, so they are excluded from the repo and the published tarball.
|
|
113
|
+
|
|
114
|
+
## Releasing / publishing to npm
|
|
115
|
+
|
|
116
|
+
This package is published to npm as [`rn-leveldb`](https://www.npmjs.com/package/rn-leveldb)
|
|
117
|
+
(owner: `gotchoices`). npm won't accept a re-publish of an existing version, so
|
|
118
|
+
every release needs a version bump.
|
|
119
|
+
|
|
120
|
+
1. **Commit and push** all changes (including any `cpp/leveldb` updates) to
|
|
121
|
+
`master` first.
|
|
122
|
+
2. **Bump the version + tag.** Either:
|
|
123
|
+
- `yarn release` — runs [release-it] (interactive: bumps version, tags,
|
|
124
|
+
pushes, publishes), or
|
|
125
|
+
- manual: `npm version patch` (or `minor`/`major`) to bump `package.json` and
|
|
126
|
+
create a git tag.
|
|
127
|
+
3. **`lib/` is built automatically** by the `prepare` hook (`bob build`) during
|
|
128
|
+
`npm publish` — no manual build step needed.
|
|
129
|
+
4. **Verify the tarball before publishing:**
|
|
130
|
+
```sh
|
|
131
|
+
npm publish --dry-run
|
|
132
|
+
```
|
|
133
|
+
Confirm it includes `cpp/leveldb/util/env_posix.cc` (with the memory-order
|
|
134
|
+
fix), the built `lib/`, `android/`, `ios/`, and `rn-leveldb.podspec`, and that
|
|
135
|
+
`cpp/leveldb/third_party` is absent.
|
|
136
|
+
5. **Log in and publish** (one-time `npm login` as `gotchoices`):
|
|
137
|
+
```sh
|
|
138
|
+
npm publish
|
|
139
|
+
```
|
|
140
|
+
6. **Consume it** in a host app: bump the `rn-leveldb` dependency to the new
|
|
141
|
+
version, `yarn install`, then `cd ios && pod install`, and rebuild.
|
|
142
|
+
|
|
143
|
+
[release-it]: https://github.com/release-it/release-it
|
|
144
|
+
|
|
90
145
|
## License
|
|
91
146
|
|
|
92
147
|
MIT
|
|
@@ -837,7 +837,12 @@ class SingletonEnv {
|
|
|
837
837
|
public:
|
|
838
838
|
SingletonEnv() {
|
|
839
839
|
#if !defined(NDEBUG)
|
|
840
|
-
|
|
840
|
+
// rn-leveldb: backported from google/leveldb main. The vendored 1.22/1.23
|
|
841
|
+
// source spells this `std::memory_order::memory_order_relaxed`, which stopped
|
|
842
|
+
// compiling once C++20 made std::memory_order a scoped enum (RN 0.82 builds
|
|
843
|
+
// pods at C++20). Use the portable top-level constant. Drop this patch if we
|
|
844
|
+
// re-vendor to a leveldb release that already contains the fix (>1.23).
|
|
845
|
+
env_initialized_.store(true, std::memory_order_relaxed);
|
|
841
846
|
#endif // !defined(NDEBUG)
|
|
842
847
|
static_assert(sizeof(env_storage_) >= sizeof(EnvType),
|
|
843
848
|
"env_storage_ will not fit the Env");
|
|
@@ -854,7 +859,8 @@ class SingletonEnv {
|
|
|
854
859
|
|
|
855
860
|
static void AssertEnvNotInitialized() {
|
|
856
861
|
#if !defined(NDEBUG)
|
|
857
|
-
|
|
862
|
+
// rn-leveldb: backported from google/leveldb main (C++20 scoped-enum fix; see SingletonEnv() above).
|
|
863
|
+
assert(!env_initialized_.load(std::memory_order_relaxed));
|
|
858
864
|
#endif // !defined(NDEBUG)
|
|
859
865
|
}
|
|
860
866
|
|
|
@@ -745,7 +745,12 @@ class SingletonEnv {
|
|
|
745
745
|
public:
|
|
746
746
|
SingletonEnv() {
|
|
747
747
|
#if !defined(NDEBUG)
|
|
748
|
-
|
|
748
|
+
// rn-leveldb: backported from google/leveldb main. The vendored 1.22/1.23
|
|
749
|
+
// source spells this `std::memory_order::memory_order_relaxed`, which stopped
|
|
750
|
+
// compiling once C++20 made std::memory_order a scoped enum. Use the portable
|
|
751
|
+
// top-level constant. Drop this patch if we re-vendor to a leveldb release
|
|
752
|
+
// that already contains the fix (>1.23).
|
|
753
|
+
env_initialized_.store(true, std::memory_order_relaxed);
|
|
749
754
|
#endif // !defined(NDEBUG)
|
|
750
755
|
static_assert(sizeof(env_storage_) >= sizeof(EnvType),
|
|
751
756
|
"env_storage_ will not fit the Env");
|
|
@@ -762,7 +767,8 @@ class SingletonEnv {
|
|
|
762
767
|
|
|
763
768
|
static void AssertEnvNotInitialized() {
|
|
764
769
|
#if !defined(NDEBUG)
|
|
765
|
-
|
|
770
|
+
// rn-leveldb: backported from google/leveldb main (C++20 scoped-enum fix; see SingletonEnv() above).
|
|
771
|
+
assert(!env_initialized_.load(std::memory_order_relaxed));
|
|
766
772
|
#endif // !defined(NDEBUG)
|
|
767
773
|
}
|
|
768
774
|
|
package/package.json
CHANGED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Bug report
|
|
3
|
-
about: Create a report to help us improve
|
|
4
|
-
title: "[BUG]"
|
|
5
|
-
labels: ''
|
|
6
|
-
assignees: ''
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
**Describe the bug**
|
|
11
|
-
A clear and concise description of what the bug is.
|
|
12
|
-
|
|
13
|
-
**System**
|
|
14
|
-
Which OS, compiler, and compiler version are you using:
|
|
15
|
-
- OS:
|
|
16
|
-
- Compiler and version:
|
|
17
|
-
|
|
18
|
-
**To reproduce**
|
|
19
|
-
Steps to reproduce the behavior:
|
|
20
|
-
1. sync to commit ...
|
|
21
|
-
2. cmake/bazel...
|
|
22
|
-
3. make ...
|
|
23
|
-
4. See error
|
|
24
|
-
|
|
25
|
-
**Expected behavior**
|
|
26
|
-
A clear and concise description of what you expected to happen.
|
|
27
|
-
|
|
28
|
-
**Screenshots**
|
|
29
|
-
If applicable, add screenshots to help explain your problem.
|
|
30
|
-
|
|
31
|
-
**Additional context**
|
|
32
|
-
Add any other context about the problem here.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Feature request
|
|
3
|
-
about: Suggest an idea for this project
|
|
4
|
-
title: "[FR]"
|
|
5
|
-
labels: ''
|
|
6
|
-
assignees: ''
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
**Is your feature request related to a problem? Please describe.**
|
|
11
|
-
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
-
|
|
13
|
-
**Describe the solution you'd like**
|
|
14
|
-
A clear and concise description of what you want to happen.
|
|
15
|
-
|
|
16
|
-
**Describe alternatives you've considered**
|
|
17
|
-
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
-
|
|
19
|
-
**Additional context**
|
|
20
|
-
Add any other context or screenshots about the feature request here.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
name: build-and-test
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ master ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
job:
|
|
11
|
-
# TODO(dominic): Extend this to include compiler and set through env: CC/CXX.
|
|
12
|
-
name: ${{ matrix.os }}.${{ matrix.build_type }}
|
|
13
|
-
runs-on: ${{ matrix.os }}
|
|
14
|
-
strategy:
|
|
15
|
-
fail-fast: false
|
|
16
|
-
matrix:
|
|
17
|
-
os: [ubuntu-latest, ubuntu-16.04, ubuntu-20.04, macos-latest, windows-latest]
|
|
18
|
-
build_type: ['Release', 'Debug']
|
|
19
|
-
steps:
|
|
20
|
-
- uses: actions/checkout@v2
|
|
21
|
-
|
|
22
|
-
- name: create build environment
|
|
23
|
-
run: cmake -E make_directory ${{ runner.workspace }}/_build
|
|
24
|
-
|
|
25
|
-
- name: configure cmake
|
|
26
|
-
shell: bash
|
|
27
|
-
working-directory: ${{ runner.workspace }}/_build
|
|
28
|
-
run: cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
|
|
29
|
-
|
|
30
|
-
- name: build
|
|
31
|
-
shell: bash
|
|
32
|
-
working-directory: ${{ runner.workspace }}/_build
|
|
33
|
-
run: cmake --build . --config ${{ matrix.build_type }}
|
|
34
|
-
|
|
35
|
-
- name: test
|
|
36
|
-
shell: bash
|
|
37
|
-
working-directory: ${{ runner.workspace }}/_build
|
|
38
|
-
run: ctest -C ${{ matrix.build_type }}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
name: pylint
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ master ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
pylint:
|
|
11
|
-
|
|
12
|
-
runs-on: ubuntu-latest
|
|
13
|
-
|
|
14
|
-
steps:
|
|
15
|
-
- uses: actions/checkout@v2
|
|
16
|
-
- name: Set up Python 3.8
|
|
17
|
-
uses: actions/setup-python@v1
|
|
18
|
-
with:
|
|
19
|
-
python-version: 3.8
|
|
20
|
-
- name: Install dependencies
|
|
21
|
-
run: |
|
|
22
|
-
python -m pip install --upgrade pip
|
|
23
|
-
pip install pylint pylint-exit conan
|
|
24
|
-
- name: Run pylint
|
|
25
|
-
run: |
|
|
26
|
-
pylint `find . -name '*.py'|xargs` || pylint-exit $?
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
name: test-bindings
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [master]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [master]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
python_bindings:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v2
|
|
15
|
-
- name: Set up Python
|
|
16
|
-
uses: actions/setup-python@v1
|
|
17
|
-
with:
|
|
18
|
-
python-version: 3.8
|
|
19
|
-
- name: Install benchmark
|
|
20
|
-
run:
|
|
21
|
-
python setup.py install
|
|
22
|
-
- name: Run example bindings
|
|
23
|
-
run:
|
|
24
|
-
python bindings/python/google_benchmark/example.py
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# Install a newer CMake version
|
|
4
|
-
curl -sSL https://cmake.org/files/v3.6/cmake-3.6.1-Linux-x86_64.sh -o install-cmake.sh
|
|
5
|
-
chmod +x install-cmake.sh
|
|
6
|
-
sudo ./install-cmake.sh --prefix=/usr/local --skip-license
|
|
7
|
-
|
|
8
|
-
# Checkout LLVM sources
|
|
9
|
-
git clone --depth=1 https://github.com/llvm-mirror/llvm.git llvm-source
|
|
10
|
-
git clone --depth=1 https://github.com/llvm-mirror/libcxx.git llvm-source/projects/libcxx
|
|
11
|
-
git clone --depth=1 https://github.com/llvm-mirror/libcxxabi.git llvm-source/projects/libcxxabi
|
|
12
|
-
|
|
13
|
-
# Setup libc++ options
|
|
14
|
-
if [ -z "$BUILD_32_BITS" ]; then
|
|
15
|
-
export BUILD_32_BITS=OFF && echo disabling 32 bit build
|
|
16
|
-
fi
|
|
17
|
-
|
|
18
|
-
# Build and install libc++ (Use unstable ABI for better sanitizer coverage)
|
|
19
|
-
mkdir llvm-build && cd llvm-build
|
|
20
|
-
cmake -DCMAKE_C_COMPILER=${C_COMPILER} -DCMAKE_CXX_COMPILER=${COMPILER} \
|
|
21
|
-
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
|
|
22
|
-
-DLIBCXX_ABI_UNSTABLE=ON \
|
|
23
|
-
-DLLVM_USE_SANITIZER=${LIBCXX_SANITIZER} \
|
|
24
|
-
-DLLVM_BUILD_32_BITS=${BUILD_32_BITS} \
|
|
25
|
-
../llvm-source
|
|
26
|
-
make cxx -j2
|
|
27
|
-
sudo make install-cxxabi install-cxx
|
|
28
|
-
cd ../
|
|
@@ -1,231 +0,0 @@
|
|
|
1
|
-
sudo: required
|
|
2
|
-
dist: trusty
|
|
3
|
-
language: cpp
|
|
4
|
-
|
|
5
|
-
matrix:
|
|
6
|
-
include:
|
|
7
|
-
- compiler: gcc
|
|
8
|
-
addons:
|
|
9
|
-
apt:
|
|
10
|
-
packages:
|
|
11
|
-
- lcov
|
|
12
|
-
env: COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Coverage
|
|
13
|
-
- compiler: gcc
|
|
14
|
-
env: COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Debug
|
|
15
|
-
- compiler: gcc
|
|
16
|
-
env: COMPILER=g++ C_COMPILER=gcc BUILD_TYPE=Release
|
|
17
|
-
- compiler: gcc
|
|
18
|
-
addons:
|
|
19
|
-
apt:
|
|
20
|
-
packages:
|
|
21
|
-
- g++-multilib
|
|
22
|
-
- libc6:i386
|
|
23
|
-
env:
|
|
24
|
-
- COMPILER=g++
|
|
25
|
-
- C_COMPILER=gcc
|
|
26
|
-
- BUILD_TYPE=Debug
|
|
27
|
-
- BUILD_32_BITS=ON
|
|
28
|
-
- EXTRA_FLAGS="-m32"
|
|
29
|
-
- compiler: gcc
|
|
30
|
-
addons:
|
|
31
|
-
apt:
|
|
32
|
-
packages:
|
|
33
|
-
- g++-multilib
|
|
34
|
-
- libc6:i386
|
|
35
|
-
env:
|
|
36
|
-
- COMPILER=g++
|
|
37
|
-
- C_COMPILER=gcc
|
|
38
|
-
- BUILD_TYPE=Release
|
|
39
|
-
- BUILD_32_BITS=ON
|
|
40
|
-
- EXTRA_FLAGS="-m32"
|
|
41
|
-
- compiler: gcc
|
|
42
|
-
env:
|
|
43
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
44
|
-
- COMPILER=g++-6 C_COMPILER=gcc-6 BUILD_TYPE=Debug
|
|
45
|
-
- ENABLE_SANITIZER=1
|
|
46
|
-
- EXTRA_FLAGS="-fno-omit-frame-pointer -g -O2 -fsanitize=undefined,address -fuse-ld=gold"
|
|
47
|
-
- compiler: clang
|
|
48
|
-
env: COMPILER=clang++ C_COMPILER=clang BUILD_TYPE=Debug
|
|
49
|
-
- compiler: clang
|
|
50
|
-
env: COMPILER=clang++ C_COMPILER=clang BUILD_TYPE=Release
|
|
51
|
-
# Clang w/ libc++
|
|
52
|
-
- compiler: clang
|
|
53
|
-
dist: xenial
|
|
54
|
-
addons:
|
|
55
|
-
apt:
|
|
56
|
-
packages:
|
|
57
|
-
clang-3.8
|
|
58
|
-
env:
|
|
59
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
60
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Debug
|
|
61
|
-
- LIBCXX_BUILD=1
|
|
62
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
63
|
-
- compiler: clang
|
|
64
|
-
dist: xenial
|
|
65
|
-
addons:
|
|
66
|
-
apt:
|
|
67
|
-
packages:
|
|
68
|
-
clang-3.8
|
|
69
|
-
env:
|
|
70
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
71
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Release
|
|
72
|
-
- LIBCXX_BUILD=1
|
|
73
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
74
|
-
# Clang w/ 32bit libc++
|
|
75
|
-
- compiler: clang
|
|
76
|
-
dist: xenial
|
|
77
|
-
addons:
|
|
78
|
-
apt:
|
|
79
|
-
packages:
|
|
80
|
-
- clang-3.8
|
|
81
|
-
- g++-multilib
|
|
82
|
-
- libc6:i386
|
|
83
|
-
env:
|
|
84
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
85
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Debug
|
|
86
|
-
- LIBCXX_BUILD=1
|
|
87
|
-
- BUILD_32_BITS=ON
|
|
88
|
-
- EXTRA_FLAGS="-m32"
|
|
89
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
90
|
-
# Clang w/ 32bit libc++
|
|
91
|
-
- compiler: clang
|
|
92
|
-
dist: xenial
|
|
93
|
-
addons:
|
|
94
|
-
apt:
|
|
95
|
-
packages:
|
|
96
|
-
- clang-3.8
|
|
97
|
-
- g++-multilib
|
|
98
|
-
- libc6:i386
|
|
99
|
-
env:
|
|
100
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
101
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Release
|
|
102
|
-
- LIBCXX_BUILD=1
|
|
103
|
-
- BUILD_32_BITS=ON
|
|
104
|
-
- EXTRA_FLAGS="-m32"
|
|
105
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
106
|
-
# Clang w/ libc++, ASAN, UBSAN
|
|
107
|
-
- compiler: clang
|
|
108
|
-
dist: xenial
|
|
109
|
-
addons:
|
|
110
|
-
apt:
|
|
111
|
-
packages:
|
|
112
|
-
clang-3.8
|
|
113
|
-
env:
|
|
114
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
115
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Debug
|
|
116
|
-
- LIBCXX_BUILD=1 LIBCXX_SANITIZER="Undefined;Address"
|
|
117
|
-
- ENABLE_SANITIZER=1
|
|
118
|
-
- EXTRA_FLAGS="-g -O2 -fno-omit-frame-pointer -fsanitize=undefined,address -fno-sanitize-recover=all"
|
|
119
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
120
|
-
- UBSAN_OPTIONS=print_stacktrace=1
|
|
121
|
-
# Clang w/ libc++ and MSAN
|
|
122
|
-
- compiler: clang
|
|
123
|
-
dist: xenial
|
|
124
|
-
addons:
|
|
125
|
-
apt:
|
|
126
|
-
packages:
|
|
127
|
-
clang-3.8
|
|
128
|
-
env:
|
|
129
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
130
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=Debug
|
|
131
|
-
- LIBCXX_BUILD=1 LIBCXX_SANITIZER=MemoryWithOrigins
|
|
132
|
-
- ENABLE_SANITIZER=1
|
|
133
|
-
- EXTRA_FLAGS="-g -O2 -fno-omit-frame-pointer -fsanitize=memory -fsanitize-memory-track-origins"
|
|
134
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
135
|
-
# Clang w/ libc++ and MSAN
|
|
136
|
-
- compiler: clang
|
|
137
|
-
dist: xenial
|
|
138
|
-
addons:
|
|
139
|
-
apt:
|
|
140
|
-
packages:
|
|
141
|
-
clang-3.8
|
|
142
|
-
env:
|
|
143
|
-
- INSTALL_GCC6_FROM_PPA=1
|
|
144
|
-
- COMPILER=clang++-3.8 C_COMPILER=clang-3.8 BUILD_TYPE=RelWithDebInfo
|
|
145
|
-
- LIBCXX_BUILD=1 LIBCXX_SANITIZER=Thread
|
|
146
|
-
- ENABLE_SANITIZER=1
|
|
147
|
-
- EXTRA_FLAGS="-g -O2 -fno-omit-frame-pointer -fsanitize=thread -fno-sanitize-recover=all"
|
|
148
|
-
- EXTRA_CXX_FLAGS="-stdlib=libc++"
|
|
149
|
-
- os: osx
|
|
150
|
-
osx_image: xcode8.3
|
|
151
|
-
compiler: clang
|
|
152
|
-
env:
|
|
153
|
-
- COMPILER=clang++ BUILD_TYPE=Debug
|
|
154
|
-
- os: osx
|
|
155
|
-
osx_image: xcode8.3
|
|
156
|
-
compiler: clang
|
|
157
|
-
env:
|
|
158
|
-
- COMPILER=clang++ BUILD_TYPE=Release
|
|
159
|
-
- os: osx
|
|
160
|
-
osx_image: xcode8.3
|
|
161
|
-
compiler: clang
|
|
162
|
-
env:
|
|
163
|
-
- COMPILER=clang++
|
|
164
|
-
- BUILD_TYPE=Release
|
|
165
|
-
- BUILD_32_BITS=ON
|
|
166
|
-
- EXTRA_FLAGS="-m32"
|
|
167
|
-
- os: osx
|
|
168
|
-
osx_image: xcode9.4
|
|
169
|
-
compiler: gcc
|
|
170
|
-
env:
|
|
171
|
-
- COMPILER=g++-7 C_COMPILER=gcc-7 BUILD_TYPE=Debug
|
|
172
|
-
|
|
173
|
-
before_script:
|
|
174
|
-
- if [ -n "${LIBCXX_BUILD}" ]; then
|
|
175
|
-
source .travis-libcxx-setup.sh;
|
|
176
|
-
fi
|
|
177
|
-
- if [ -n "${ENABLE_SANITIZER}" ]; then
|
|
178
|
-
export EXTRA_OPTIONS="-DBENCHMARK_ENABLE_ASSEMBLY_TESTS=OFF";
|
|
179
|
-
else
|
|
180
|
-
export EXTRA_OPTIONS="";
|
|
181
|
-
fi
|
|
182
|
-
- mkdir -p build && cd build
|
|
183
|
-
|
|
184
|
-
before_install:
|
|
185
|
-
- if [ -z "$BUILD_32_BITS" ]; then
|
|
186
|
-
export BUILD_32_BITS=OFF && echo disabling 32 bit build;
|
|
187
|
-
fi
|
|
188
|
-
- if [ -n "${INSTALL_GCC6_FROM_PPA}" ]; then
|
|
189
|
-
sudo add-apt-repository -y "ppa:ubuntu-toolchain-r/test";
|
|
190
|
-
sudo apt-get update --option Acquire::Retries=100 --option Acquire::http::Timeout="60";
|
|
191
|
-
fi
|
|
192
|
-
|
|
193
|
-
install:
|
|
194
|
-
- if [ -n "${INSTALL_GCC6_FROM_PPA}" ]; then
|
|
195
|
-
travis_wait sudo -E apt-get -yq --no-install-suggests --no-install-recommends install g++-6;
|
|
196
|
-
fi
|
|
197
|
-
- if [ "${TRAVIS_OS_NAME}" == "linux" -a "${BUILD_32_BITS}" == "OFF" ]; then
|
|
198
|
-
travis_wait sudo -E apt-get -y --no-install-suggests --no-install-recommends install llvm-3.9-tools;
|
|
199
|
-
sudo cp /usr/lib/llvm-3.9/bin/FileCheck /usr/local/bin/;
|
|
200
|
-
fi
|
|
201
|
-
- if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
|
|
202
|
-
PATH=~/.local/bin:${PATH};
|
|
203
|
-
pip install --user --upgrade pip;
|
|
204
|
-
travis_wait pip install --user cpp-coveralls;
|
|
205
|
-
fi
|
|
206
|
-
- if [ "${C_COMPILER}" == "gcc-7" -a "${TRAVIS_OS_NAME}" == "osx" ]; then
|
|
207
|
-
rm -f /usr/local/include/c++;
|
|
208
|
-
brew update;
|
|
209
|
-
travis_wait brew install gcc@7;
|
|
210
|
-
fi
|
|
211
|
-
- if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
|
|
212
|
-
sudo apt-get update -qq;
|
|
213
|
-
sudo apt-get install -qq unzip cmake3;
|
|
214
|
-
wget https://github.com/bazelbuild/bazel/releases/download/3.2.0/bazel-3.2.0-installer-linux-x86_64.sh --output-document bazel-installer.sh;
|
|
215
|
-
travis_wait sudo bash bazel-installer.sh;
|
|
216
|
-
fi
|
|
217
|
-
- if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
|
|
218
|
-
curl -L -o bazel-installer.sh https://github.com/bazelbuild/bazel/releases/download/3.2.0/bazel-3.2.0-installer-darwin-x86_64.sh;
|
|
219
|
-
travis_wait sudo bash bazel-installer.sh;
|
|
220
|
-
fi
|
|
221
|
-
|
|
222
|
-
script:
|
|
223
|
-
- cmake -DCMAKE_C_COMPILER=${C_COMPILER} -DCMAKE_CXX_COMPILER=${COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DCMAKE_C_FLAGS="${EXTRA_FLAGS}" -DCMAKE_CXX_FLAGS="${EXTRA_FLAGS} ${EXTRA_CXX_FLAGS}" -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON -DBENCHMARK_BUILD_32_BITS=${BUILD_32_BITS} ${EXTRA_OPTIONS} ..
|
|
224
|
-
- make
|
|
225
|
-
- ctest -C ${BUILD_TYPE} --output-on-failure
|
|
226
|
-
- bazel test -c dbg --define google_benchmark.have_regex=posix --announce_rc --verbose_failures --test_output=errors --keep_going //test/...
|
|
227
|
-
|
|
228
|
-
after_success:
|
|
229
|
-
- if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
|
|
230
|
-
coveralls --include src --include include --gcov-options '\-lp' --root .. --build-root .;
|
|
231
|
-
fi
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import ycm_core
|
|
3
|
-
|
|
4
|
-
# These are the compilation flags that will be used in case there's no
|
|
5
|
-
# compilation database set (by default, one is not set).
|
|
6
|
-
# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR.
|
|
7
|
-
flags = [
|
|
8
|
-
'-Wall',
|
|
9
|
-
'-Werror',
|
|
10
|
-
'-pedantic-errors',
|
|
11
|
-
'-std=c++0x',
|
|
12
|
-
'-fno-strict-aliasing',
|
|
13
|
-
'-O3',
|
|
14
|
-
'-DNDEBUG',
|
|
15
|
-
# ...and the same thing goes for the magic -x option which specifies the
|
|
16
|
-
# language that the files to be compiled are written in. This is mostly
|
|
17
|
-
# relevant for c++ headers.
|
|
18
|
-
# For a C project, you would set this to 'c' instead of 'c++'.
|
|
19
|
-
'-x', 'c++',
|
|
20
|
-
'-I', 'include',
|
|
21
|
-
'-isystem', '/usr/include',
|
|
22
|
-
'-isystem', '/usr/local/include',
|
|
23
|
-
]
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
# Set this to the absolute path to the folder (NOT the file!) containing the
|
|
27
|
-
# compile_commands.json file to use that instead of 'flags'. See here for
|
|
28
|
-
# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html
|
|
29
|
-
#
|
|
30
|
-
# Most projects will NOT need to set this to anything; you can just change the
|
|
31
|
-
# 'flags' list of compilation flags. Notice that YCM itself uses that approach.
|
|
32
|
-
compilation_database_folder = ''
|
|
33
|
-
|
|
34
|
-
if os.path.exists( compilation_database_folder ):
|
|
35
|
-
database = ycm_core.CompilationDatabase( compilation_database_folder )
|
|
36
|
-
else:
|
|
37
|
-
database = None
|
|
38
|
-
|
|
39
|
-
SOURCE_EXTENSIONS = [ '.cc' ]
|
|
40
|
-
|
|
41
|
-
def DirectoryOfThisScript():
|
|
42
|
-
return os.path.dirname( os.path.abspath( __file__ ) )
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
def MakeRelativePathsInFlagsAbsolute( flags, working_directory ):
|
|
46
|
-
if not working_directory:
|
|
47
|
-
return list( flags )
|
|
48
|
-
new_flags = []
|
|
49
|
-
make_next_absolute = False
|
|
50
|
-
path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ]
|
|
51
|
-
for flag in flags:
|
|
52
|
-
new_flag = flag
|
|
53
|
-
|
|
54
|
-
if make_next_absolute:
|
|
55
|
-
make_next_absolute = False
|
|
56
|
-
if not flag.startswith( '/' ):
|
|
57
|
-
new_flag = os.path.join( working_directory, flag )
|
|
58
|
-
|
|
59
|
-
for path_flag in path_flags:
|
|
60
|
-
if flag == path_flag:
|
|
61
|
-
make_next_absolute = True
|
|
62
|
-
break
|
|
63
|
-
|
|
64
|
-
if flag.startswith( path_flag ):
|
|
65
|
-
path = flag[ len( path_flag ): ]
|
|
66
|
-
new_flag = path_flag + os.path.join( working_directory, path )
|
|
67
|
-
break
|
|
68
|
-
|
|
69
|
-
if new_flag:
|
|
70
|
-
new_flags.append( new_flag )
|
|
71
|
-
return new_flags
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
def IsHeaderFile( filename ):
|
|
75
|
-
extension = os.path.splitext( filename )[ 1 ]
|
|
76
|
-
return extension in [ '.h', '.hxx', '.hpp', '.hh' ]
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
def GetCompilationInfoForFile( filename ):
|
|
80
|
-
# The compilation_commands.json file generated by CMake does not have entries
|
|
81
|
-
# for header files. So we do our best by asking the db for flags for a
|
|
82
|
-
# corresponding source file, if any. If one exists, the flags for that file
|
|
83
|
-
# should be good enough.
|
|
84
|
-
if IsHeaderFile( filename ):
|
|
85
|
-
basename = os.path.splitext( filename )[ 0 ]
|
|
86
|
-
for extension in SOURCE_EXTENSIONS:
|
|
87
|
-
replacement_file = basename + extension
|
|
88
|
-
if os.path.exists( replacement_file ):
|
|
89
|
-
compilation_info = database.GetCompilationInfoForFile(
|
|
90
|
-
replacement_file )
|
|
91
|
-
if compilation_info.compiler_flags_:
|
|
92
|
-
return compilation_info
|
|
93
|
-
return None
|
|
94
|
-
return database.GetCompilationInfoForFile( filename )
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
def FlagsForFile( filename, **kwargs ):
|
|
98
|
-
if database:
|
|
99
|
-
# Bear in mind that compilation_info.compiler_flags_ does NOT return a
|
|
100
|
-
# python list, but a "list-like" StringVec object
|
|
101
|
-
compilation_info = GetCompilationInfoForFile( filename )
|
|
102
|
-
if not compilation_info:
|
|
103
|
-
return None
|
|
104
|
-
|
|
105
|
-
final_flags = MakeRelativePathsInFlagsAbsolute(
|
|
106
|
-
compilation_info.compiler_flags_,
|
|
107
|
-
compilation_info.compiler_working_dir_ )
|
|
108
|
-
else:
|
|
109
|
-
relative_to = DirectoryOfThisScript()
|
|
110
|
-
final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to )
|
|
111
|
-
|
|
112
|
-
return {
|
|
113
|
-
'flags': final_flags,
|
|
114
|
-
'do_cache': True
|
|
115
|
-
}
|