[gtk/matthiasc/for-master: 1/7] build: Redo the tools build




commit ac0f524722ebbd8279c5889874cd0a77b220d9c2
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Jan 27 21:56:12 2021 -0500

    build: Redo the tools build
    
    Move the tools directory to be toplevel, and instead of
    recompiling sources twice, link them with the our new
    static libgtk.a.

 gtk/{tools => }/gdkpixbufutils.c                  |  0
 gtk/{tools => }/gtkiconcachevalidator.c           |  0
 gtk/meson.build                                   |  6 ++----
 meson.build                                       |  1 +
 {gtk/tools => tools}/encodesymbolic.c             |  0
 {gtk/tools => tools}/gtk-builder-tool-enumerate.c |  0
 {gtk/tools => tools}/gtk-builder-tool-preview.c   |  0
 {gtk/tools => tools}/gtk-builder-tool-simplify.c  |  0
 {gtk/tools => tools}/gtk-builder-tool-validate.c  |  0
 {gtk/tools => tools}/gtk-builder-tool.c           |  0
 {gtk/tools => tools}/gtk-builder-tool.h           |  0
 {gtk/tools => tools}/gtk-launch.c                 |  0
 {gtk/tools => tools}/gtk-query-settings.c         |  0
 {gtk/tools => tools}/gtk4builder.its              |  0
 {gtk/tools => tools}/gtk4builder.loc              |  0
 {gtk/tools => tools}/gtk4builder.rng              |  0
 {gtk/tools => tools}/meson.build                  | 12 +++++++-----
 {gtk/tools => tools}/updateiconcache.c            |  0
 18 files changed, 10 insertions(+), 9 deletions(-)
---
diff --git a/gtk/tools/gdkpixbufutils.c b/gtk/gdkpixbufutils.c
similarity index 100%
rename from gtk/tools/gdkpixbufutils.c
rename to gtk/gdkpixbufutils.c
diff --git a/gtk/tools/gtkiconcachevalidator.c b/gtk/gtkiconcachevalidator.c
similarity index 100%
rename from gtk/tools/gtkiconcachevalidator.c
rename to gtk/gtkiconcachevalidator.c
diff --git a/gtk/meson.build b/gtk/meson.build
index ad9e8be72d..74a0495189 100644
--- a/gtk/meson.build
+++ b/gtk/meson.build
@@ -15,7 +15,7 @@ gtk_cargs = [
 # introspected
 gtk_private_sources = files([
   'fnmatch.c',
-  'tools/gdkpixbufutils.c',
+  'gdkpixbufutils.c',
   'gsettings-mapping.c',
   'gtkaccessibleattributeset.c',
   'gtkaccessiblevalue.c',
@@ -113,7 +113,7 @@ gtk_private_sources = files([
   'gtkgladecatalog.c',
   'gtkhsla.c',
   'gtkiconcache.c',
-  'tools/gtkiconcachevalidator.c',
+  'gtkiconcachevalidator.c',
   'gtkiconhelper.c',
   'gtkkineticscrolling.c',
   'gtkmagnifier.c',
@@ -1277,5 +1277,3 @@ libgtk_static_dep = declare_dependency(sources: gtk_dep_sources,
   link_with: [libgtk_static, libgtk_css, libgdk, libgsk ],
   link_args: common_ldflags,
 )
-
-subdir('tools')
diff --git a/meson.build b/meson.build
index d899561a33..3c24e16835 100644
--- a/meson.build
+++ b/meson.build
@@ -689,6 +689,7 @@ subdir('gtk/css')
 subdir('gdk')
 subdir('gsk')
 subdir('gtk')
+subdir('tools')
 subdir('modules')
 if get_option('demos')
   subdir('demos')
diff --git a/gtk/tools/encodesymbolic.c b/tools/encodesymbolic.c
similarity index 100%
rename from gtk/tools/encodesymbolic.c
rename to tools/encodesymbolic.c
diff --git a/gtk/tools/gtk-builder-tool-enumerate.c b/tools/gtk-builder-tool-enumerate.c
similarity index 100%
rename from gtk/tools/gtk-builder-tool-enumerate.c
rename to tools/gtk-builder-tool-enumerate.c
diff --git a/gtk/tools/gtk-builder-tool-preview.c b/tools/gtk-builder-tool-preview.c
similarity index 100%
rename from gtk/tools/gtk-builder-tool-preview.c
rename to tools/gtk-builder-tool-preview.c
diff --git a/gtk/tools/gtk-builder-tool-simplify.c b/tools/gtk-builder-tool-simplify.c
similarity index 100%
rename from gtk/tools/gtk-builder-tool-simplify.c
rename to tools/gtk-builder-tool-simplify.c
diff --git a/gtk/tools/gtk-builder-tool-validate.c b/tools/gtk-builder-tool-validate.c
similarity index 100%
rename from gtk/tools/gtk-builder-tool-validate.c
rename to tools/gtk-builder-tool-validate.c
diff --git a/gtk/tools/gtk-builder-tool.c b/tools/gtk-builder-tool.c
similarity index 100%
rename from gtk/tools/gtk-builder-tool.c
rename to tools/gtk-builder-tool.c
diff --git a/gtk/tools/gtk-builder-tool.h b/tools/gtk-builder-tool.h
similarity index 100%
rename from gtk/tools/gtk-builder-tool.h
rename to tools/gtk-builder-tool.h
diff --git a/gtk/tools/gtk-launch.c b/tools/gtk-launch.c
similarity index 100%
rename from gtk/tools/gtk-launch.c
rename to tools/gtk-launch.c
diff --git a/gtk/tools/gtk-query-settings.c b/tools/gtk-query-settings.c
similarity index 100%
rename from gtk/tools/gtk-query-settings.c
rename to tools/gtk-query-settings.c
diff --git a/gtk/tools/gtk4builder.its b/tools/gtk4builder.its
similarity index 100%
rename from gtk/tools/gtk4builder.its
rename to tools/gtk4builder.its
diff --git a/gtk/tools/gtk4builder.loc b/tools/gtk4builder.loc
similarity index 100%
rename from gtk/tools/gtk4builder.loc
rename to tools/gtk4builder.loc
diff --git a/gtk/tools/gtk4builder.rng b/tools/gtk4builder.rng
similarity index 100%
rename from gtk/tools/gtk4builder.rng
rename to tools/gtk4builder.rng
diff --git a/gtk/tools/meson.build b/tools/meson.build
similarity index 68%
rename from gtk/tools/meson.build
rename to tools/meson.build
index 8f7a62db17..e93f97d32a 100644
--- a/gtk/tools/meson.build
+++ b/tools/meson.build
@@ -1,27 +1,29 @@
 # Installed tools
 gtk_tools = [
-  ['gtk4-query-settings', ['gtk-query-settings.c']],
+  ['gtk4-query-settings', ['gtk-query-settings.c'], []],
   ['gtk4-builder-tool', ['gtk-builder-tool.c',
                          'gtk-builder-tool-simplify.c',
                          'gtk-builder-tool-validate.c',
                          'gtk-builder-tool-enumerate.c',
-                         'gtk-builder-tool-preview.c']],
-  ['gtk4-update-icon-cache', ['updateiconcache.c', 'gtkiconcachevalidator.c']],
-  ['gtk4-encode-symbolic-svg', ['encodesymbolic.c', 'gdkpixbufutils.c']],
+                         'gtk-builder-tool-preview.c'], [] ],
+  ['gtk4-update-icon-cache', ['updateiconcache.c'], [ libgtk_static ] ],
+  ['gtk4-encode-symbolic-svg', ['encodesymbolic.c'], [ libgtk_static ] ],
 ]
 
 if os_unix
-  gtk_tools += [['gtk4-launch', ['gtk-launch.c']]]
+  gtk_tools += [['gtk4-launch', ['gtk-launch.c'], []]]
 endif
 
 foreach tool: gtk_tools
   tool_name = tool.get(0)
   tool_srcs = tool.get(1)
+  tool_libs = tool.get(2)
 
   exe = executable(tool_name,
     sources: tool_srcs,
     include_directories: [confinc],
     c_args: common_cflags,
+    link_with: tool_libs,
     dependencies: libgtk_dep,
     install: true,
   )
diff --git a/gtk/tools/updateiconcache.c b/tools/updateiconcache.c
similarity index 100%
rename from gtk/tools/updateiconcache.c
rename to tools/updateiconcache.c


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