meson: wire up the git-subtree(1) command
Wire up the git-subtree(1) command, which is part of "contrib/". Note that we have to move around the exact location where we include the "contrib/" subdirectory so that it comes after building the docs so that we have access to some of the common functionality. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
07892da045
commit
8454b42f94
71
contrib/subtree/meson.build
Normal file
71
contrib/subtree/meson.build
Normal file
@ -0,0 +1,71 @@
|
||||
git_subtree = custom_target(
|
||||
input: 'git-subtree.sh',
|
||||
output: 'git-subtree',
|
||||
command: [
|
||||
shell,
|
||||
meson.project_source_root() / 'generate-script.sh',
|
||||
'@INPUT@',
|
||||
'@OUTPUT@',
|
||||
meson.project_build_root() / 'GIT-BUILD-OPTIONS',
|
||||
],
|
||||
install: true,
|
||||
install_dir: get_option('libexecdir') / 'git-core',
|
||||
)
|
||||
|
||||
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,
|
||||
)
|
||||
|
||||
if get_option('docs').contains('man')
|
||||
subtree_xml = custom_target(
|
||||
command: asciidoc_common_options + [
|
||||
'--backend=' + asciidoc_docbook,
|
||||
'--doctype=manpage',
|
||||
'--out-file=@OUTPUT@',
|
||||
'@INPUT@',
|
||||
],
|
||||
depends: documentation_deps,
|
||||
input: 'git-subtree.txt',
|
||||
output: 'git-subtree.xml',
|
||||
)
|
||||
|
||||
custom_target(
|
||||
command: [
|
||||
xmlto,
|
||||
'-m', '@INPUT@',
|
||||
'man',
|
||||
subtree_xml,
|
||||
'-o',
|
||||
meson.current_build_dir(),
|
||||
] + xmlto_extra,
|
||||
input: [
|
||||
'../../Documentation/manpage-normal.xsl',
|
||||
],
|
||||
output: 'git-subtree.1',
|
||||
install: true,
|
||||
install_dir: get_option('mandir') / 'man1',
|
||||
)
|
||||
endif
|
||||
|
||||
if get_option('docs').contains('html')
|
||||
custom_target(
|
||||
command: asciidoc_common_options + [
|
||||
'--backend=' + asciidoc_html,
|
||||
'--doctype=manpage',
|
||||
'--out-file=@OUTPUT@',
|
||||
'@INPUT@',
|
||||
],
|
||||
depends: documentation_deps,
|
||||
input: 'git-subtree.txt',
|
||||
output: 'git-subtree.html',
|
||||
install: true,
|
||||
install_dir: get_option('datadir') / 'doc/git-doc',
|
||||
)
|
||||
endif
|
@ -1857,7 +1857,6 @@ endforeach
|
||||
if intl.found()
|
||||
subdir('po')
|
||||
endif
|
||||
subdir('contrib')
|
||||
|
||||
# Gitweb requires Perl, so we disable the auto-feature if Perl was not found.
|
||||
# We make sure further up that Perl is required in case the gitweb option is
|
||||
@ -1884,6 +1883,8 @@ if get_option('docs') != []
|
||||
subdir('Documentation')
|
||||
endif
|
||||
|
||||
subdir('contrib')
|
||||
|
||||
foreach key, value : {
|
||||
'DIFF': diff.full_path(),
|
||||
'GIT_TEST_CMP': diff.full_path() + ' -u',
|
||||
|
Reference in New Issue
Block a user