[gtk/wip/fanc999/meson.msvc: 178/180] meson: Build .rc files for Windows
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/fanc999/meson.msvc: 178/180] meson: Build .rc files for Windows
- Date: Thu, 6 Dec 2018 09:08:11 +0000 (UTC)
commit ed65ab1ba9d2911ae86f668c765c7adda8cd5167
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Mon Aug 7 19:10:18 2017 +0800
meson: Build .rc files for Windows
Build the .rc files for Windows so that one can track the version info
more easily for Windows, as well as giving GTK+ apps a default icon.
Also, move back the manifest embedding for the themed Windows print
dialog back into gtk-win32.rc.body.in, so that we just have one way of
embedding this manifest file, making things easier for ourselves, as
this is supported in the later Visual Studio compilers as well, which is
2013 and later.
gdk/meson.build | 1 +
gtk/gtk-win32.rc.body.in | 9 ++++++---
gtk/meson.build | 17 +++++++++++++++++
3 files changed, 24 insertions(+), 3 deletions(-)
---
diff --git a/gdk/meson.build b/gdk/meson.build
index d68307392b..2ed2585f0f 100644
--- a/gdk/meson.build
+++ b/gdk/meson.build
@@ -160,6 +160,7 @@ gdkx11_inc = include_directories('x11')
gdkwayland_inc = include_directories('wayland')
wlinc = include_directories('.')
+win32rcinc = include_directories('win32/rc')
gdk_gen_headers = [gdkenum_h, gdkmarshal_h, gdkconfig, gdkversionmacros]
diff --git a/gtk/gtk-win32.rc.body.in b/gtk/gtk-win32.rc.body.in
index 251128fe48..b876a6ddf5 100644
--- a/gtk/gtk-win32.rc.body.in
+++ b/gtk/gtk-win32.rc.body.in
@@ -1,3 +1,4 @@
+#include <winuser.h>
#include <winver.h>
GTK_ICON ICON "gtk.ico"
@@ -18,9 +19,9 @@ VS_VERSION_INFO VERSIONINFO
VALUE "CompanyName", "The GTK developer community"
VALUE "FileDescription", "GIMP Toolkit"
VALUE "FileVersion", "@GTK_VERSION@.0"
- VALUE "InternalName", "libgtk-win32-@GTK_API_VERSION@-@LT_CURRENT_MINUS_AGE@"
- VALUE "LegalCopyright", "Copyright � 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald.
Modified by the GTK+ Team and others 1997-2011."
- VALUE "OriginalFilename", "libgtk-win32-@GTK_API_VERSION@-@LT_CURRENT_MINUS_AGE@.dll"
+ VALUE "InternalName", "libgtk-win32-@GTK_API_VERSION@"
+ VALUE "LegalCopyright", "Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald.
Modified by the GTK+ Team and others 1997-2011."
+ VALUE "OriginalFilename", "libgtk-win32-@GTK_API_VERSION@.dll"
VALUE "ProductName", "GTK+"
VALUE "ProductVersion", "@GTK_VERSION@"
END
@@ -30,3 +31,5 @@ VS_VERSION_INFO VERSIONINFO
VALUE "Translation", 0x409, 1200
END
END
+
+ISOLATIONAWARE_MANIFEST_RESOURCE_ID RT_MANIFEST libgtk4.manifest
\ No newline at end of file
diff --git a/gtk/meson.build b/gtk/meson.build
index 8559ed0f7c..abc66cbc90 100644
--- a/gtk/meson.build
+++ b/gtk/meson.build
@@ -841,6 +841,12 @@ gtkversion_cdata.set('GTK_MINOR_VERSION', gtk_minor_version)
gtkversion_cdata.set('GTK_MICRO_VERSION', gtk_micro_version)
gtkversion_cdata.set('GTK_BINARY_AGE', gtk_binary_age)
gtkversion_cdata.set('GTK_INTERFACE_AGE', gtk_interface_age)
+gtkversion_cdata.set('GTK_VERSION', gtk_version)
+gtkversion_cdata.set('GTK_API_VERSION', gtk_api_version)
+
+if host_machine.system() == 'windows'
+ gtkversion_cdata.set('EXE_MANIFEST_ARCHITECTURE', '*')
+endif
gtkversion = configure_file(input: 'gtkversion.h.in',
output: 'gtkversion.h',
@@ -916,6 +922,17 @@ if win32_enabled
cc.find_library('imm32'),
cc.find_library('setupapi'),
cc.find_library('winmm')]
+
+ gtkwin32rc = configure_file(input: 'gtk-win32.rc.body.in',
+ output: 'gtk-win32.rc.body',
+ configuration: gtkversion_cdata)
+
+ win32_manifest = configure_file(input: 'libgtk4.manifest.in',
+ output: 'libgtk4.manifest',
+ configuration: gtkversion_cdata)
+
+ win32res = import('windows').compile_resources(gtkwin32rc, include_directories : win32rcinc)
+ gtk_sources += win32res
else
gtk_deps += [ atkbridge_dep, ]
endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]