gitk: introduce support for the Meson build system

Upstream Git has introduced support for the Meson build system.
Introduce support for Meson into gitk, as well, so that Git can easily
build its vendored copy of Gitk via a `subproject()` directive. The
instructions can be set up as follows:

  $ meson setup build
  $ meson compile -C build
  $ meson install -C build

Specific options, like for example where Gitk shall be installed to, can
be specified at setup time via `-D`. Available options can be discovered
by running `meson configure` either in the source or build directory.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
This commit is contained in:
Patrick Steinhardt
2025-02-19 13:42:50 +01:00
parent 0d4fe3047f
commit b4c06f7c4d
2 changed files with 49 additions and 0 deletions

30
meson.build Normal file
View File

@@ -0,0 +1,30 @@
project('gitk')
shell = find_program('sh')
wish = find_program('wish')
# Verify that dependencies of "generate-tcl.sh" are satisfied.
foreach dependency : [ 'chmod', 'mv', 'sed' ]
find_program(dependency)
endforeach
custom_target(
command: [
shell,
meson.current_source_dir() / 'generate-tcl.sh',
wish.full_path(),
'@INPUT@',
'@OUTPUT@',
],
input: 'gitk',
output: 'gitk',
depend_files: [
'generate-tcl.sh',
],
install: true,
install_dir: get_option('bindir'),
)
if find_program('msgfmt').found()
subdir('po')
endif

19
po/meson.build Normal file
View File

@@ -0,0 +1,19 @@
import('i18n').gettext('gitk',
languages: [
'bg',
'ca',
'de',
'es',
'fr',
'hu',
'it',
'ja',
'pt_br',
'pt_pt',
'ru',
'sv',
'vi',
'zh_cn',
],
install: true,
)