summary refs log tree commit diff stats
path: root/data/misc/meson.build
diff options
context:
space:
mode:
authorPatrick Griffis <tingping@tingping.se>2016-12-13 16:12:03 -0500
committerPatrick Griffis <tingping@tingping.se>2017-06-13 23:54:51 -0400
commit628100c19f5d82747170acdf2917cba8c119ccbf (patch)
tree351a7e9714a1a58390ba349808df5703cef25c3e /data/misc/meson.build
parent2edf50d4ddc61ce6f73bf02263c9bdd09632c66b (diff)
build: Replace Autotools with Meson
Quick rundown of benefits:

- Much faster:
  - Autotools (with autogen): 22 seconds
  - Meson: 7 seconds
  - Meson (with ccache): 2 seconds

- Simpler:
  - ~1000 lines smaller
  - Single simple language

- Potentially better Windows (Visual Studio) support

What is not done:

- Complete Windows support
- OSX support (easy)

Closes #2013
Closes #1937
Closes #1803
Diffstat (limited to 'data/misc/meson.build')
-rw-r--r--data/misc/meson.build48
1 files changed, 48 insertions, 0 deletions
diff --git a/data/misc/meson.build b/data/misc/meson.build
new file mode 100644
index 00000000..ec79b757
--- /dev/null
+++ b/data/misc/meson.build
@@ -0,0 +1,48 @@
+appdir = join_paths(get_option('datadir'), 'applications')
+
+if get_option('with-gtk')
+  i18n.merge_file(
+    input: 'hexchat.appdata.xml.in',
+    output: 'hexchat.appdata.xml',
+    po_dir: '../../po',
+    install: true,
+    install_dir: join_paths(get_option('datadir'), 'appdata')
+  )
+
+  desktop_conf = configuration_data()
+  if get_option('with-dbus')
+    desktop_conf.set('exec_command', 'hexchat --existing %U')
+  else
+    desktop_conf.set('exec_command', 'hexchat %U')
+  endif
+
+  desktop_file = configure_file(
+    input: 'hexchat.desktop.in.in',
+    output: 'hexchat.desktop.in',
+    configuration: desktop_conf
+  )
+
+  i18n.merge_file(
+    input: desktop_file,
+    output: 'hexchat.desktop',
+    po_dir: '../../po',
+    type: 'desktop',
+    install: true,
+    install_dir: appdir
+  )
+endif
+
+if get_option('with-theme-manager')
+  i18n.merge_file(
+    input: 'htm.desktop.in',
+    output: 'htm.desktop',
+    po_dir: '../../po',
+    type: 'desktop',
+    install: true,
+    install_dir: appdir
+  )
+
+  install_data('htm-mime.xml',
+    install_dir: join_paths(get_option('datadir'), 'mime/packages')
+  )
+endif