]> git.ipfire.org Git - thirdparty/git.git/commitdiff
gitk: introduce support for the Meson build system
authorPatrick Steinhardt <ps@pks.im>
Wed, 19 Feb 2025 12:42:50 +0000 (13:42 +0100)
committerPatrick Steinhardt <ps@pks.im>
Thu, 20 Feb 2025 07:52:15 +0000 (08:52 +0100)
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>
meson.build [new file with mode: 0644]
po/meson.build [new file with mode: 0644]

diff --git a/meson.build b/meson.build
new file mode 100644 (file)
index 0000000..ca3c0ce
--- /dev/null
@@ -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
diff --git a/po/meson.build b/po/meson.build
new file mode 100644 (file)
index 0000000..b1ed019
--- /dev/null
@@ -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,
+)