Skip to content

P4: ss2pl/test の add_definitions を target_compile_definitions 化 (#60) - #73

Merged
thawk105 merged 1 commit into
masterfrom
ss2pl-test-target-compile-defs
May 14, 2026
Merged

P4: ss2pl/test の add_definitions を target_compile_definitions 化 (#60)#73
thawk105 merged 1 commit into
masterfrom
ss2pl-test-target-compile-defs

Conversation

@thawk105

Copy link
Copy Markdown
Owner

概要

cc/ss2pl/test/CMakeLists.txt に残っていた古いスタイルのディレクトリスコープ add_definitions(...) 13 件を、target スコープの target_compile_definitions(<target> PRIVATE ...) に書き換えた。

Closes #60

変更内容

  • universal な -D フラグ (ADD_ANALYSIS / BACK_OFF / KEY_SIZE / MASSTREE_USE / VAL_SIZE) は cmake/Options.cmakeccbench_universal_definitions() ヘルパーで集約。本体プロトコル (cc/silo/CMakeLists.txtreplay_test.exe 等) と同じ universal flag を共有する。
  • ss2pl 固有の DLR1KEY_SORTcc/ss2pl/CMakeLists.txtccbench_add_protocol(...)OPTIONS に合わせ、target_compile_definitions で個別に付与 (KEY_SORT=${CCBENCH_KEY_SORT})。
  • if (DEFINED ...) の手書きデフォルト分岐は cmake/Options.cmake の CACHE 変数にデフォルトが集約されているため不要になり削除。
  • third_party/ 配下の add_definitions は外部 submodule のため touch していない。

test plan

  • cmake -B build -DCMAKE_BUILD_TYPE=Release . : configure 緑。
  • cc/ss2pl/test/CMakeLists.txt を単体 configure するスタンドアロンハーネスで make_db_test をビルド確認。target_compile_definitions が target-private flag として正しく適用されること (-DADD_ANALYSIS=0 -DBACK_OFF=1 -DDLR1 -DKEY_SIZE=8 -DKEY_SORT=0 -DMASSTREE_USE=1 -DVAL_SIZE=4) を flags.make で確認。
  • grep -rn 'add_definitions' --include='CMakeLists.txt' --include='*.cmake' . : プロジェクト本体の add_definitions() 呼び出しは 0 件 (ヒットするのは cmake/Options.cmake / cmake/ProtocolHelpers.cmake のコメント文のみ、third_party/ は対象外)。

補足 (#60 のスコープ外)

cc/ss2pl/test/#32 のリファクタ以降どの add_subdirectory からも参照されておらず、現状ビルドツリーに組み込まれていない。また make_db_test.cpp#include "../../include/common.hh" は階層がずれた stale path になっている。いずれも本 issue (#60: add_definitions の近代化) のスコープ外のため本 PR では触れていない。

@thawk105
thawk105 merged commit 725077e into master May 14, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ss2pl/test の add_definitions を target_compile_definitions に置き換え (P4 残)

1 participant