[pangomm/meson.msvc: 7/7] meson: Link in the version resource on Windows



commit 3e51d9e6412d54e771ed28087d514e429390100d
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Thu Oct 17 15:46:31 2019 +0800

    meson: Link in the version resource on Windows
    
    For all Windows builds, compile the version resource script (pangomm.rc)
    and link it into the pangomm DLL so that we embed the version info in
    that DLL.

 MSVC_NMake/pangomm/meson.build |  2 +-
 meson.build                    |  3 ++-
 pango/meson.build              |  2 --
 pango/pangomm/meson.build      | 10 +++++++++-
 4 files changed, 12 insertions(+), 5 deletions(-)
---
diff --git a/MSVC_NMake/pangomm/meson.build b/MSVC_NMake/pangomm/meson.build
index f77c501..7ccc189 100644
--- a/MSVC_NMake/pangomm/meson.build
+++ b/MSVC_NMake/pangomm/meson.build
@@ -3,7 +3,7 @@
 # Input: pkg_conf_data, project_build_root
 # Output: -
 
-configure_file(
+pangomm_rc = configure_file(
   input: 'pangomm.rc.in',
   output: '@BASENAME@',
   configuration: pkg_conf_data,
diff --git a/meson.build b/meson.build
index 848a0d2..01ac359 100644
--- a/meson.build
+++ b/meson.build
@@ -225,8 +225,9 @@ endif
 subdir('tools/extra_defs_gen')
 subdir('MSVC_NMake/gendef')
 subdir('pango')
-subdir('docs/reference')
 subdir('MSVC_NMake/pangomm')
+subdir('pango/pangomm')
+subdir('docs/reference')
 
 if not meson.is_subproject()
   # Add a ChangeLog file to the distribution directory.
diff --git a/pango/meson.build b/pango/meson.build
index 08b0ad4..368bd35 100644
--- a/pango/meson.build
+++ b/pango/meson.build
@@ -47,5 +47,3 @@ configure_file(
   configuration: pkg_conf_data,
   install_dir: install_includeconfigdir,
 )
-
-subdir('pangomm')
diff --git a/pango/pangomm/meson.build b/pango/pangomm/meson.build
index 4750354..4d9d93b 100644
--- a/pango/pangomm/meson.build
+++ b/pango/pangomm/meson.build
@@ -170,6 +170,7 @@ else # not maintainer_mode
 
   pangomm_def = []
   pangomm_extra_link_args = []
+  extra_pangomm_objects = []
 
   if is_msvc
     pangomm_def = custom_target('pangomm.def',
@@ -186,7 +187,14 @@ else # not maintainer_mode
     pangomm_extra_link_args = ['/def:@0@'.format(pangomm_def.full_path())]
   endif
 
-  pangomm_library = library(pangomm_pcname,
+  # Build the .rc file for Windows builds and link to it
+  if host_machine.system() == 'windows'
+    windows = import('windows')
+    pangomm_res = windows.compile_resources(pangomm_rc)
+    extra_pangomm_objects += pangomm_res
+  endif
+
+  pangomm_library = library(pangomm_pcname, extra_pangomm_objects,
     objects: pango_int_lib.extract_all_objects(),
     version: pangomm_libversion,
     dependencies: pangomm_build_dep,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]