feat(build-time-versioning): thread commit_id/build_time into go_build env
apiserver/meson.build and xcecli/meson.build now pass XCE_GIT_COMMIT/XCE_BUILD_TIME (from the project's commit_id/build_time meson options) into go_build's environment, mirroring the existing CURRENT_SOURCE_DIR/BUILD_ROOT env-passing mechanism. Deliberately unquoted: go_build's fix_input_envs() only quote-strips CURRENT_SOURCE_DIR/BUILD_ROOT, not these two -- quoting them would embed literal quote characters and corrupt the -ldflags argument. Live-verified: real values (matching git rev-parse --short HEAD plus dirty suffix, and a real UTC timestamp) reach go build's actual invocation and are embedded in both binaries' Go build-info metadata. No main.GitCommit/main.BuildTime symbols exist in either binary yet (confirmed via go tool nm) since apiserver/xcecli's main packages don't declare those vars until tasks 4.4/4.5 -- expected, this task's scope is the env-var plumbing only. Task 4.2/13 of build-time-versioning. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
parent
18ae0cc394
commit
071f3895f7
3 changed files with 8 additions and 3 deletions
|
|
@ -56,6 +56,8 @@ custom_target('apiserver',
|
|||
command: [env_program,
|
||||
'CURRENT_SOURCE_DIR="@CURRENT_SOURCE_DIR@"',
|
||||
'BUILD_ROOT="@BUILD_ROOT@"',
|
||||
'XCE_GIT_COMMIT=' + get_option('commit_id'),
|
||||
'XCE_BUILD_TIME=' + get_option('build_time'),
|
||||
go_build_program,
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
env: go_env,
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ custom_target('xcecli',
|
|||
command: [env_program,
|
||||
'CURRENT_SOURCE_DIR="@CURRENT_SOURCE_DIR@"',
|
||||
'BUILD_ROOT="@BUILD_ROOT@"',
|
||||
'XCE_GIT_COMMIT=' + get_option('commit_id'),
|
||||
'XCE_BUILD_TIME=' + get_option('build_time'),
|
||||
go_build_program,
|
||||
'@INPUT@', '@OUTPUT@'],
|
||||
env: go_env,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue