Fix cmake build on MacOS (#7205)
Summary: 1. `std::random_shuffle` is deprecated and now we can use `std::shuffle` ``` /rocksdb/db/prefix_test.cc:590:12: error: 'random_shuffle<std::__1::__wrap_iter<unsigned long long *> >' is deprecated [-Werror,-Wdeprecated-declarations] std::random_shuffle(prefixes.begin(), prefixes.end()); ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm:2982:1: note: 'random_shuffle<std::__1::__wrap_iter<unsigned long long *> >' has been explicitly marked deprecated here _LIBCPP_DEPRECATED_IN_CXX14 void ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__config:1107:39: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX14' # define _LIBCPP_DEPRECATED_IN_CXX14 _LIBCPP_DEPRECATED ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__config:1090:48: note: expanded from macro '_LIBCPP_DEPRECATED' # define _LIBCPP_DEPRECATED __attribute__ ((deprecated)) ``` 2. `c_test` link error with `-DROCKSDB_BUILD_SHARED=OFF`: ``` [ 7%] Linking CXX executable c_test ld: library not found for -lrocksdb-shared clang: error: linker command failed with exit code 1 (use -v to see invocation) make[5]: *** [c_test] Error 1 make[4]: *** [CMakeFiles/c_test.dir/all] Error 2 make[4]: *** Waiting for unfinished jobs.... ``` Pull Request resolved: https://github.com/facebook/rocksdb/pull/7205 Reviewed By: ajkr Differential Revision: D23030641 Pulled By: pdillinger fbshipit-source-id: f270e50fc0b824ca1a0876ec5c65d33f55a72dd0
This commit is contained in:
parent
633bff2f19
commit
5444942f15
@ -1230,9 +1230,8 @@ if(WITH_TESTS)
|
|||||||
|
|
||||||
if(ROCKSDB_LIB_FOR_C)
|
if(ROCKSDB_LIB_FOR_C)
|
||||||
set(C_TESTS db/c_test.c)
|
set(C_TESTS db/c_test.c)
|
||||||
# C executables must link to a shared object
|
|
||||||
add_executable(c_test db/c_test.c)
|
add_executable(c_test db/c_test.c)
|
||||||
target_link_libraries(c_test ${ROCKSDB_SHARED_LIB} testharness)
|
target_link_libraries(c_test ${ROCKSDB_LIB_FOR_C} testharness)
|
||||||
add_test(NAME c_test COMMAND c_test${ARTIFACT_SUFFIX})
|
add_test(NAME c_test COMMAND c_test${ARTIFACT_SUFFIX})
|
||||||
add_dependencies(check c_test)
|
add_dependencies(check c_test)
|
||||||
endif()
|
endif()
|
||||||
|
@ -587,7 +587,7 @@ TEST_F(PrefixTest, DynamicPrefixIterator) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (FLAGS_random_prefix) {
|
if (FLAGS_random_prefix) {
|
||||||
std::random_shuffle(prefixes.begin(), prefixes.end());
|
RandomShuffle(prefixes.begin(), prefixes.end());
|
||||||
}
|
}
|
||||||
|
|
||||||
HistogramImpl hist_put_time;
|
HistogramImpl hist_put_time;
|
||||||
|
@ -500,7 +500,7 @@ void ReadKeys(uint64_t num, uint32_t batch_size) {
|
|||||||
for (uint64_t i = 0; i < num; ++i) {
|
for (uint64_t i = 0; i < num; ++i) {
|
||||||
keys.push_back(2 * i);
|
keys.push_back(2 * i);
|
||||||
}
|
}
|
||||||
std::random_shuffle(keys.begin(), keys.end());
|
RandomShuffle(keys.begin(), keys.end());
|
||||||
|
|
||||||
PinnableSlice value;
|
PinnableSlice value;
|
||||||
// Assume only the fast path is triggered
|
// Assume only the fast path is triggered
|
||||||
|
Loading…
Reference in New Issue
Block a user