[gegl/wip/lantw/fix-204-docs-workshop-warnings: 3/6] docs: Depend on operations



commit 4cd5251952d1111f13fa92d0fc3f49b763fc0baa
Author: Ting-Wei Lan <lantw src gnome org>
Date:   Wed Sep 11 11:59:51 2019 +0800

    docs: Depend on operations
    
    Documentation generation relies on programs built in 'tools' directory,
    which load modules at runtime from 'operations' directory. While the
    dependency on 'tools' is correctly handled by meson because the use of
    meson variables, 'operations' is not handled at all. This makes it
    possible for 'gallery-stamp' target, which uses 'gegl-tester', to run
    before modules in 'operations' are built. 'gegl-tester' fails badly in
    this case. It ends up being killed by the kernel because it uses up the
    memory on the system.
    
    Fixes: https://gitlab.gnome.org/GNOME/gegl/issues/204

 docs/meson.build                          | 2 ++
 operations/common-cxx/meson.build         | 2 ++
 operations/common-gpl3+/meson.build       | 2 ++
 operations/common/meson.build             | 2 ++
 operations/core/meson.build               | 2 ++
 operations/external/meson.build           | 2 +-
 operations/generated/meson.build          | 2 ++
 operations/meson.build                    | 2 ++
 operations/seamless-clone/meson.build     | 2 +-
 operations/transform/meson.build          | 2 ++
 operations/workshop/external/meson.build  | 8 ++++----
 operations/workshop/generated/meson.build | 2 +-
 operations/workshop/meson.build           | 2 +-
 13 files changed, 24 insertions(+), 8 deletions(-)
---
diff --git a/docs/meson.build b/docs/meson.build
index 3419b321b..491df63bd 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -15,6 +15,7 @@ html_files += custom_target('class-hierarchy.html',
     'GEGL_PATH='+ meson.build_root() / 'operations',
     introspect,
   ],
+  depends: gegl_operations,
   build_by_default : true,
   capture: true,
 )
@@ -174,6 +175,7 @@ gnome.gtkdoc('gegl',
      '-e', '"' + exclusion_pattern + '"', '||', 'true', '&&', 'touch', '../gallery-stamp'
      ])
    ],
+   depends: gegl_operations,
  )
 
 meson.add_install_script('install-docs.sh')
diff --git a/operations/common-cxx/meson.build b/operations/common-cxx/meson.build
index 27c3817ed..d84a9d343 100644
--- a/operations/common-cxx/meson.build
+++ b/operations/common-cxx/meson.build
@@ -32,3 +32,5 @@ gegl_common_cxx = shared_library('gegl-common-cxx',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_common_cxx
diff --git a/operations/common-gpl3+/meson.build b/operations/common-gpl3+/meson.build
index 7f283b014..7e11ac42b 100644
--- a/operations/common-gpl3+/meson.build
+++ b/operations/common-gpl3+/meson.build
@@ -80,3 +80,5 @@ gegl_common_gpl3 = shared_library('gegl-common-gpl3',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_common_gpl3
diff --git a/operations/common/meson.build b/operations/common/meson.build
index 20d23e3a9..6845bd7f1 100644
--- a/operations/common/meson.build
+++ b/operations/common/meson.build
@@ -142,3 +142,5 @@ gegl_common = shared_library('gegl-common',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_common
diff --git a/operations/core/meson.build b/operations/core/meson.build
index ceac1fe88..9efabfd46 100644
--- a/operations/core/meson.build
+++ b/operations/core/meson.build
@@ -37,3 +37,5 @@ gegl_core = shared_library('gegl-core',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_core
diff --git a/operations/external/meson.build b/operations/external/meson.build
index 2bc79271f..306d26f8b 100644
--- a/operations/external/meson.build
+++ b/operations/external/meson.build
@@ -115,7 +115,7 @@ foreach operation : operations
   libsrcs = operation.get('srcs', libname + '.c')
   libdeps = operation.get('deps', [])
 
-  shared_library(libname,
+  gegl_operations += shared_library(libname,
     libsrcs,
     dependencies: [ babl, gio, glib, gobject, math, libdeps, ],
     include_directories: [ rootInclude, geglInclude, ],
diff --git a/operations/generated/meson.build b/operations/generated/meson.build
index 2a654656c..f53924f58 100644
--- a/operations/generated/meson.build
+++ b/operations/generated/meson.build
@@ -54,3 +54,5 @@ gegl_generated = shared_library('gegl-generated',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_generated
diff --git a/operations/meson.build b/operations/meson.build
index e2fec07d9..d21b9185f 100644
--- a/operations/meson.build
+++ b/operations/meson.build
@@ -1,3 +1,5 @@
+gegl_operations = []
+
 subdir('common-gpl3+')
 subdir('common-cxx')
 subdir('common')
diff --git a/operations/seamless-clone/meson.build b/operations/seamless-clone/meson.build
index 27ee947f7..47562a2e2 100644
--- a/operations/seamless-clone/meson.build
+++ b/operations/seamless-clone/meson.build
@@ -5,7 +5,7 @@ seamless_clone_libs = [
 ]
 
 foreach lib : seamless_clone_libs
-  shared_library(lib,
+  gegl_operations += shared_library(lib,
     files(lib + '.c'),
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
diff --git a/operations/transform/meson.build b/operations/transform/meson.build
index 4e0fc2a2d..129882222 100644
--- a/operations/transform/meson.build
+++ b/operations/transform/meson.build
@@ -29,3 +29,5 @@ gegl_transformops = shared_library('transformops',
   install: true,
   install_dir: get_option('libdir') / api_name,
 )
+
+gegl_operations += gegl_transformops
diff --git a/operations/workshop/external/meson.build b/operations/workshop/external/meson.build
index 94e8322db..9c93a523c 100644
--- a/operations/workshop/external/meson.build
+++ b/operations/workshop/external/meson.build
@@ -1,6 +1,6 @@
 
 if lua.found()
-  shared_library('gluas',
+  gegl_operations += shared_library('gluas',
     'gluas.c',
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
@@ -20,7 +20,7 @@ if lua.found()
 endif
 
 if lensfun.found()
-  shared_library('lens-correct',
+  gegl_operations += shared_library('lens-correct',
     'lens-correct.c',
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
@@ -40,7 +40,7 @@ if lensfun.found()
 endif
 
 if cairo.found()
-  shared_library('line-profile',
+  gegl_operations += shared_library('line-profile',
     'line-profile.c',
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
@@ -60,7 +60,7 @@ if cairo.found()
 endif
 
 if libv4l2.found()
-  shared_library('v4l2',
+  gegl_operations += shared_library('v4l2',
     'v4l2.c',
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
diff --git a/operations/workshop/generated/meson.build b/operations/workshop/generated/meson.build
index fd463db54..318931d46 100644
--- a/operations/workshop/generated/meson.build
+++ b/operations/workshop/generated/meson.build
@@ -9,7 +9,7 @@ libraries = [
 ]
 
 foreach lib : libraries
-  shared_library(lib,
+  gegl_operations += shared_library(lib,
     lib + '.c',
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],
     dependencies: [
diff --git a/operations/workshop/meson.build b/operations/workshop/meson.build
index 688d62fe0..8d8bbab05 100644
--- a/operations/workshop/meson.build
+++ b/operations/workshop/meson.build
@@ -24,7 +24,7 @@ libraries = [
 foreach lib : libraries
   libname = lib.get('name')
   libsrcs = lib.get('srcs', libname + '.c')
-  shared_library(libname,
+  gegl_operations += shared_library(libname,
     libsrcs,
     opencl_headers,
     include_directories: [ rootInclude, geglInclude, seamlessInclude, ],


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