summary refs log tree commit diff stats
path: root/src/htm/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 /src/htm/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 'src/htm/meson.build')
-rw-r--r--src/htm/meson.build33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/htm/meson.build b/src/htm/meson.build
new file mode 100644
index 00000000..8fa93b03
--- /dev/null
+++ b/src/htm/meson.build
@@ -0,0 +1,33 @@
+add_languages('cs')
+
+executable('thememan',
+  sources: [
+    'Program.cs',
+    'Main.cs',
+    'Main.Designer.cs',
+  ],
+  resources: [
+    # 'Main.resx', # FIXME: Allow setting resource id
+    'thememan.HTM.resources',
+  ],
+  cs_args: [
+    '-r:WindowsBase',
+    '-r:System.Data',
+    '-r:System.Drawing',
+    '-r:System.Windows.Forms',
+    '-win32icon:' + meson.current_source_dir() + '/Resources/htm.ico'
+  ],
+  install: true,
+)
+
+thememan_conf = configuration_data()
+thememan_conf.set('exec_prefix', get_option('prefix'))
+thememan_conf.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
+
+configure_file(
+  input: 'thememan.in',
+  output: 'thememan',
+  configuration: thememan_conf,
+  install: true,
+  install_dir: get_option('bindir'),
+)