Message ID | 20250328-b4-pks-collect-build-fixes-v1-4-ead9deda3fbc@pks.im (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Collection of build fixes | expand |
Patrick Steinhardt <ps@pks.im> writes: > Both the "netrc" credential helper and git-subtree(1) from "contrib/" > carry a couple of tests with them. These tests get wired up in Meson > unconditionally even in the case where `-Dtests=false`. As those tests > depend on the `test_enviroment` variable, which only gets defined in > case `-Dtests=true`, the result is an error: > > ``` > $ meson setup -Dtests=false -Dcontrib=subtree build > [...] > > contrib/subtree/meson.build:15:27: ERROR: Unknown variable "test_environment". > ``` > > Fix the issue by not defining these tests at all in case the "tests" > option is set to `false`. Thank you! Sorry for the delay in getting back to you -- I had some thought that I was trying to resolve about the nicer style and then dropped the ball. LGTM. > > Reported-by: Sam James <sam@gentoo.org> > Signed-off-by: Patrick Steinhardt <ps@pks.im> > --- > contrib/credential/netrc/meson.build | 22 ++++++++++++---------- > contrib/subtree/meson.build | 20 +++++++++++--------- > 2 files changed, 23 insertions(+), 19 deletions(-) > > diff --git a/contrib/credential/netrc/meson.build b/contrib/credential/netrc/meson.build > index a990dbb86da..3d74547c8ae 100644 > --- a/contrib/credential/netrc/meson.build > +++ b/contrib/credential/netrc/meson.build > @@ -7,14 +7,16 @@ credential_netrc = custom_target( > install_dir: get_option('libexecdir') / 'git-core', > ) > > -credential_netrc_testenv = test_environment > -credential_netrc_testenv.set('CREDENTIAL_NETRC_PATH', credential_netrc.full_path()) > +if get_option('tests') > + credential_netrc_testenv = test_environment > + credential_netrc_testenv.set('CREDENTIAL_NETRC_PATH', credential_netrc.full_path()) > > -test('t-git-credential-netrc', > - shell, > - args: [ meson.current_source_dir() / 't-git-credential-netrc.sh' ], > - workdir: meson.current_source_dir(), > - env: credential_netrc_testenv, > - depends: test_dependencies + bin_wrappers + [credential_netrc], > - timeout: 0, > -) > + test('t-git-credential-netrc', > + shell, > + args: [ meson.current_source_dir() / 't-git-credential-netrc.sh' ], > + workdir: meson.current_source_dir(), > + env: credential_netrc_testenv, > + depends: test_dependencies + bin_wrappers + [credential_netrc], > + timeout: 0, > + ) > +endif > diff --git a/contrib/subtree/meson.build b/contrib/subtree/meson.build > index 9c72b236259..63714166a61 100644 > --- a/contrib/subtree/meson.build > +++ b/contrib/subtree/meson.build > @@ -12,16 +12,18 @@ git_subtree = custom_target( > install_dir: get_option('libexecdir') / 'git-core', > ) > > -subtree_test_environment = test_environment > -subtree_test_environment.prepend('PATH', meson.current_build_dir()) > +if get_option('tests') > + subtree_test_environment = test_environment > + subtree_test_environment.prepend('PATH', meson.current_build_dir()) > > -test('t7900-subtree', shell, > - args: [ 't7900-subtree.sh' ], > - env: subtree_test_environment, > - workdir: meson.current_source_dir() / 't', > - depends: test_dependencies + bin_wrappers + [ git_subtree ], > - timeout: 0, > -) > + test('t7900-subtree', shell, > + args: [ 't7900-subtree.sh' ], > + env: subtree_test_environment, > + workdir: meson.current_source_dir() / 't', > + depends: test_dependencies + bin_wrappers + [ git_subtree ], > + timeout: 0, > + ) > +endif > > if get_option('docs').contains('man') > subtree_xml = custom_target(
diff --git a/contrib/credential/netrc/meson.build b/contrib/credential/netrc/meson.build index a990dbb86da..3d74547c8ae 100644 --- a/contrib/credential/netrc/meson.build +++ b/contrib/credential/netrc/meson.build @@ -7,14 +7,16 @@ credential_netrc = custom_target( install_dir: get_option('libexecdir') / 'git-core', ) -credential_netrc_testenv = test_environment -credential_netrc_testenv.set('CREDENTIAL_NETRC_PATH', credential_netrc.full_path()) +if get_option('tests') + credential_netrc_testenv = test_environment + credential_netrc_testenv.set('CREDENTIAL_NETRC_PATH', credential_netrc.full_path()) -test('t-git-credential-netrc', - shell, - args: [ meson.current_source_dir() / 't-git-credential-netrc.sh' ], - workdir: meson.current_source_dir(), - env: credential_netrc_testenv, - depends: test_dependencies + bin_wrappers + [credential_netrc], - timeout: 0, -) + test('t-git-credential-netrc', + shell, + args: [ meson.current_source_dir() / 't-git-credential-netrc.sh' ], + workdir: meson.current_source_dir(), + env: credential_netrc_testenv, + depends: test_dependencies + bin_wrappers + [credential_netrc], + timeout: 0, + ) +endif diff --git a/contrib/subtree/meson.build b/contrib/subtree/meson.build index 9c72b236259..63714166a61 100644 --- a/contrib/subtree/meson.build +++ b/contrib/subtree/meson.build @@ -12,16 +12,18 @@ git_subtree = custom_target( install_dir: get_option('libexecdir') / 'git-core', ) -subtree_test_environment = test_environment -subtree_test_environment.prepend('PATH', meson.current_build_dir()) +if get_option('tests') + subtree_test_environment = test_environment + subtree_test_environment.prepend('PATH', meson.current_build_dir()) -test('t7900-subtree', shell, - args: [ 't7900-subtree.sh' ], - env: subtree_test_environment, - workdir: meson.current_source_dir() / 't', - depends: test_dependencies + bin_wrappers + [ git_subtree ], - timeout: 0, -) + test('t7900-subtree', shell, + args: [ 't7900-subtree.sh' ], + env: subtree_test_environment, + workdir: meson.current_source_dir() / 't', + depends: test_dependencies + bin_wrappers + [ git_subtree ], + timeout: 0, + ) +endif if get_option('docs').contains('man') subtree_xml = custom_target(
Both the "netrc" credential helper and git-subtree(1) from "contrib/" carry a couple of tests with them. These tests get wired up in Meson unconditionally even in the case where `-Dtests=false`. As those tests depend on the `test_enviroment` variable, which only gets defined in case `-Dtests=true`, the result is an error: ``` $ meson setup -Dtests=false -Dcontrib=subtree build [...] contrib/subtree/meson.build:15:27: ERROR: Unknown variable "test_environment". ``` Fix the issue by not defining these tests at all in case the "tests" option is set to `false`. Reported-by: Sam James <sam@gentoo.org> Signed-off-by: Patrick Steinhardt <ps@pks.im> --- contrib/credential/netrc/meson.build | 22 ++++++++++++---------- contrib/subtree/meson.build | 20 +++++++++++--------- 2 files changed, 23 insertions(+), 19 deletions(-)