Summary: db_stress_tool.cc now is a giant file. In order to main it easier to improve and maintain, break it down to multiple source files. Most classes are turned into their own files. Separate .h and .cc files are created for gflag definiations. Another .h and .cc files are created for some common functions. Some test execution logic that is only loosely related to class StressTest is moved to db_stress_driver.h and db_stress_driver.cc. All the files are located under db_stress_tool/. The directory name is created as such because if we end it with either stress or test, .gitignore will ignore any file under it and makes it prone to issues in developements. Pull Request resolved: https://github.com/facebook/rocksdb/pull/6134 Test Plan: Build under GCC7 with and without LITE on using GNU Make. Build with GCC 4.8. Build with cmake with -DWITH_TOOL=1 Differential Revision: D18876064 fbshipit-source-id: b25d0a7451840f31ac0f5ebb0068785f783fdf7d
22 lines
506 B
CMake
22 lines
506 B
CMake
set(TOOLS
|
|
sst_dump.cc
|
|
db_sanity_test.cc
|
|
write_stress.cc
|
|
ldb.cc
|
|
db_repl_stress.cc
|
|
dump/rocksdb_dump.cc
|
|
dump/rocksdb_undump.cc)
|
|
foreach(src ${TOOLS})
|
|
get_filename_component(exename ${src} NAME_WE)
|
|
add_executable(${exename}${ARTIFACT_SUFFIX}
|
|
${src})
|
|
target_link_libraries(${exename}${ARTIFACT_SUFFIX} ${LIBS})
|
|
list(APPEND tool_deps ${exename})
|
|
endforeach()
|
|
|
|
list(APPEND tool_deps)
|
|
|
|
add_custom_target(ldb_tests
|
|
COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/ldb_tests.py
|
|
DEPENDS ldb)
|