#37 (close 済み) から分離。
背景
#32 (P3) で全プロトコルのビルドを ccbench_add_protocol() + target_compile_definitions(... PRIVATE ...) に移行したが、googletest を使った ss2pl のユニットテスト cc/ss2pl/test/CMakeLists.txt はそのフォーマットに乗っておらず、古いスタイルの add_definitions(...) が 13 件 残っている。
add_definitions(-DADD_ANALYSIS=${ADD_ANALYSIS})
add_definitions(-DBACK_OFF=${BACK_OFF})
add_definitions(-DKEY_SIZE=${KEY_SIZE})
add_definitions(-DKEY_SORT=${KEY_SORT})
add_definitions(-DMASSTREE_USE=${MASSTREE_USE})
add_definitions(-DVAL_SIZE=${VAL_SIZE})
add_definitions(-DDLR1)
...
third_party/mimalloc/CMakeLists.txt にも 1 件あるが、これは外部 submodule なので touch しない。
提案
cc/ss2pl/test/CMakeLists.txt の 13 件を target_compile_definitions(make_db_test PRIVATE ...) に書き換える
- 可能なら
cmake/Options.cmake の ccbench_universal_definitions() ヘルパーを使って共通化する (本体プロトコルと同じ universal flag を使うので)
完了条件
cc/ss2pl/test/CMakeLists.txt に add_definitions が 0 件
cmake --build build --target make_db_test (or 同等) が緑
- プロジェクト本体での
add_definitions も 0 件 (third_party/ 内のみ残存)
優先度
低。CI で test target が普段ビルドされているかどうかで切迫度は変わる。
Related
#37 (close 済み) から分離。
背景
#32 (P3) で全プロトコルのビルドを
ccbench_add_protocol()+target_compile_definitions(... PRIVATE ...)に移行したが、googletest を使った ss2pl のユニットテストcc/ss2pl/test/CMakeLists.txtはそのフォーマットに乗っておらず、古いスタイルのadd_definitions(...)が 13 件 残っている。third_party/mimalloc/CMakeLists.txtにも 1 件あるが、これは外部 submodule なので touch しない。提案
cc/ss2pl/test/CMakeLists.txtの 13 件をtarget_compile_definitions(make_db_test PRIVATE ...)に書き換えるcmake/Options.cmakeのccbench_universal_definitions()ヘルパーを使って共通化する (本体プロトコルと同じ universal flag を使うので)完了条件
cc/ss2pl/test/CMakeLists.txtにadd_definitionsが 0 件cmake --build build --target make_db_test(or 同等) が緑add_definitionsも 0 件 (third_party/内のみ残存)優先度
低。CI で test target が普段ビルドされているかどうかで切迫度は変わる。
Related
ccbench_add_protocol()を導入する #32 (本体プロトコルの移行が完了済み)