From 628100c19f5d82747170acdf2917cba8c119ccbf Mon Sep 17 00:00:00 2001 From: Patrick Griffis Date: Tue, 13 Dec 2016 16:12:03 -0500 Subject: 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 --- src/htm/Makefile.am | 15 ----- src/htm/htm-mono.csproj | 144 ----------------------------------------- src/htm/meson.build | 33 ++++++++++ src/htm/thememan.HTM.resources | Bin 0 -> 10228 bytes src/htm/thememan.in | 0 5 files changed, 33 insertions(+), 159 deletions(-) delete mode 100644 src/htm/Makefile.am delete mode 100644 src/htm/htm-mono.csproj create mode 100644 src/htm/meson.build create mode 100644 src/htm/thememan.HTM.resources mode change 100644 => 100755 src/htm/thememan.in (limited to 'src/htm') diff --git a/src/htm/Makefile.am b/src/htm/Makefile.am deleted file mode 100644 index e524bf27..00000000 --- a/src/htm/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -theme_SCRIPTS = thememan.exe thememan -themedir = $(bindir) - -mdtool_verbose = $(mdtool_verbose_$(V)) -mdtool_verbose_ = $(mdtool_verbose_$(AM_DEFAULT_VERBOSITY)) -mdtool_verbose_0 = @echo " MDTOOL " $@; $(MDTOOL) build $< > /dev/null; -mdtool_verbose_1 = $(MDTOOL) --verbose build $<; - -thememan.exe: htm-mono.csproj - $(mdtool_verbose) - -clean-local: - rm -f thememan.exe thememan.exe.config thememan.exe.mdb thememan Main.resources - -EXTRA_DIST = thememan.in diff --git a/src/htm/htm-mono.csproj b/src/htm/htm-mono.csproj deleted file mode 100644 index 7bed3d97..00000000 --- a/src/htm/htm-mono.csproj +++ /dev/null @@ -1,144 +0,0 @@ - - - - Debug - AnyCPU - 8.0.30703 - 2.0 - {DE87FFCA-9606-4116-B747-062D88A56A28} - WinExe - Properties - thememan - 512 - false - publish\ - true - Disk - false - Foreground - 7 - Days - false - false - true - true - 1 - 1.0.0.%2a - false - true - true - thememan - - - Resources\htm.ico - - - 25412E3EF25458D894050F8209E4D9DCCDF432D7 - - - htm_TemporaryKey.pfx - - - false - - - false - - - LocalIntranet - - - - True - full - False - . - 4 - - - none - True - . - 4 - - - - - - - - - - - - - - - - Form - - - Main.cs - - - - - Main.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - True - - - Designer - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - False - Microsoft .NET Framework 4 Full Profile %28x86 and x64%29 - true - - - False - .NET Framework 3.5 SP1 Client Profile - false - - - False - .NET Framework 3.5 SP1 - false - - - False - Windows Installer 3.1 - true - - - - - - - - \ No newline at end of file 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'), +) diff --git a/src/htm/thememan.HTM.resources b/src/htm/thememan.HTM.resources new file mode 100644 index 00000000..39374ac0 Binary files /dev/null and b/src/htm/thememan.HTM.resources differ diff --git a/src/htm/thememan.in b/src/htm/thememan.in old mode 100644 new mode 100755 -- cgit 1.4.1