Commit 01d4e27
Create a single fontconfig instance
Changed files (4)
modifiedbirdfont/Main.valamodifieddodo.pymodifiedlibbirdfont/Renderer/FallbackFont.valamodifiedscripts/builder.py
Diff
@@ -34,7 +34,6 @@ public static int main (string[] arg) { native_window.init (); birdfont.load_font_from_command_line ();- Gtk.main (); return 0; }@@ -127,7 +127,6 @@ def make_birdfont_export(target_binary, deps): valac_command = config.VALAC + """ \ -C \ --enable-experimental \- --define=MAC \ --basedir build/birdfont-export/ \ """ + config.NON_NULL + """ \ """ + config.VALACFLAGS.get("birdfont-export", "") + """ \@@ -181,7 +180,6 @@ def make_birdfont_import(target_binary, deps): valac_command = config.VALAC + """\ -C \ --enable-experimental \- --define=MAC \ --basedir build/birdfont-import/ \ """ + config.NON_NULL + """ \ """ + config.VALACFLAGS.get("birdfont-import", "") + """ \@@ -235,7 +233,6 @@ def make_birdfont_autotrace(target_binary, deps): valac_command = config.VALAC + """\ -C \ --enable-experimental \- --define=MAC \ --basedir build/birdfont-autotrace/ \ """ + config.NON_NULL + """ \ """ + config.VALACFLAGS.get("birdfont-autotrace", "") + """ \@@ -356,7 +353,7 @@ def make_libbirdgems(target_binary, deps): -H build/libbirdgems/birdgems.h \ --pkg posix \ --vapidir=./ \- --basedir build/libbirdgems/ \+ --basedir=build/libbirdgems/ \ """ + config.NON_NULL + """ \ """ + config.VALACFLAGS.get("libbirdgems", "") + """ \ --enable-experimental \@@ -34,8 +34,8 @@ namespace BirdFont { public class FallbackFont : GLib.Object { Gee.ArrayList<File> font_directories; - FcConfig* font_config = null; FontFace* default_font = null;+ static FcConfig* font_config = null; static bool font_config_stated = false; string default_font_file_name = "Roboto-Regular.ttf";@@ -48,12 +48,11 @@ public class FallbackFont : GLib.Object { public FallbackFont () { string home = Environment.get_home_dir ();- font_directories = new Gee.ArrayList<File> (); if (!font_config_stated) { font_config_stated = true;- + IdleSource idle = new IdleSource (); idle.set_callback (() => { Task t = new Task ();@@ -89,11 +89,11 @@ class Builder(object): yield { 'basename': 'valac ' + source_directory,- 'file_dep': [build_file] + bindep,+ 'file_dep': [build_file] + vala_source_paths + bindep, 'actions': [valac_command], 'targets': generated_csource_paths }- + csource_paths = generated_csource_paths + copied_csources object_files = [] @@ -157,9 +157,16 @@ def is_up_to_date(task): return dependency_times[-1] <= target_times[0] ++def get_name(task):+ try:+ return task['name']+ except KeyError:+ return task['basename']+ def execute_task(task): if is_up_to_date(task):- print(task['basename'] + ' - up to date.')+ print(get_name(task) + ' - up to date.') else: for action in task['actions']: print(action)@@ -171,3 +178,4 @@ def process_tasks(generator): process_tasks(task) else: execute_task(task)+