[rhythmbox/wip/sam/meson] Meson work in progress



commit 00d876ac15230d1c73d55429bc66a072756bf435
Author: Sam Thursfield <sam afuera me uk>
Date:   Sat Sep 17 13:39:37 2016 +0100

    Meson work in progress
    
    Build of the resource file now works, but only with a patched Meson:
    https://github.com/mesonbuild/meson/pull/793/

 data/meson.build  |    8 +++++---
 meson.build       |    2 ++
 shell/meson.build |    3 ++-
 3 files changed, 9 insertions(+), 4 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index 2d56b62..f9553ca 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -7,10 +7,12 @@ foreach desktop_in_file : desktop_in_files
   )
 endforeach
 
-# This is done with intltool in the Makefile.am, but there's no need to
-# use intltool any more.
+# It would be nice to avoid requiring intltool, and just use Gettext's msgfmt
+# tool. The blocker is we need to write an appropriate .its file to describe
+# how to translate Rhythmbox's XML playlist format, because msgfmt doesn't
+# support the Intltool 'generic XML style' that we currently use.
 playlists_xml = custom_target('playlists.xml',
   input: 'playlists.xml.in',
   output: 'playlists.xml',
-  command: ['msgfmt', '--xml', '-d', '../po', '--template', '@INPUT@', '-o', '@OUTPUT@'],
+  command: [intltool_merge, '--xml-style', '--utf8', '../po', '@INPUT@', '@OUTPUT@'],
 )
diff --git a/meson.build b/meson.build
index fb884c2..2afd751 100644
--- a/meson.build
+++ b/meson.build
@@ -43,6 +43,8 @@ tdb = dependency('tdb', version: '>= 1.2.6', required: true)
 totem_plparser = dependency('totem-plparser', version: '>= 3.2.0', required: true)
 zlib = dependency('zlib', required: true)
 
+intltool_merge = find_program('intltool-merge')
+
 use_gudev = false
 if get_option('gudev') != 'no'
   gudev = dependency('gudev-1.0', version: '>= 143', required: false)
diff --git a/shell/meson.build b/shell/meson.build
index e4e8004..1f22539 100644
--- a/shell/meson.build
+++ b/shell/meson.build
@@ -37,7 +37,8 @@ shell_headers = [
 install_headers(shell_headers, subdir: 'rhythmbox/shell')
 
 resources = gnome.compile_resources('rb-resources', 'rhythmbox.gresource.xml',
-  source_dir: ['data/', 'data/ui/foo'])
+  source_dir: ['../data/'],
+  dependencies: playlists_xml)
 
 shell_sources = [
   'rb-application.c',


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