[tracker/tracker-2.2: 24/32] build: Use tracker_common_dep as a normal dependency



commit 847dfdd99c4d2677cbd4d1e7fdb0239731e4e18c
Author: Sam Thursfield <sam afuera me uk>
Date:   Wed Jul 10 18:40:27 2019 +0100

    build: Use tracker_common_dep as a normal dependency
    
    We were using 'link_with: libtracker-common' to link to
    libtracker-common in some places, which worked around an old Meson bug.
    The bug (https://github.com/mesonbuild/meson/issues/671) was fixed in
    Meson 0.42 so we can now remove the workaround.
    
    The advantage of using 'dependency: tracker_common_dep' is that
    transitive dependencies are now automatically propagated. We now
    probably have some redundant dependency information on some of the
    libraries, but that isn't a problem.
    
    Fixes https://gitlab.gnome.org/GNOME/tracker/issues/112

 src/libtracker-bus/meson.build     | 5 +----
 src/libtracker-common/meson.build  | 9 ---------
 src/libtracker-control/meson.build | 5 +----
 src/libtracker-data/meson.build    | 4 +---
 src/libtracker-sparql/meson.build  | 5 +----
 5 files changed, 4 insertions(+), 24 deletions(-)
---
diff --git a/src/libtracker-bus/meson.build b/src/libtracker-bus/meson.build
index 6b3a3b1e3..68aeb0805 100644
--- a/src/libtracker-bus/meson.build
+++ b/src/libtracker-bus/meson.build
@@ -13,11 +13,8 @@ libtracker_bus = static_library('tracker-bus',
         # doesn't seem to work here.
         '--target-glib', glib_required,
     ],
-    # This doesn't depend on tracker_common_dep because of
-    # https://github.com/mesonbuild/meson/issues/671
-    dependencies: [glib, gio, gio_unix, tracker_sparql_intermediate_dep],
+    dependencies: [tracker_common_dep, tracker_sparql_intermediate_dep],
     include_directories: [commoninc, configinc, srcinc],
-    link_with: libtracker_common,
 )
 
 tracker_sparql_bus_dep = declare_dependency(
diff --git a/src/libtracker-common/meson.build b/src/libtracker-common/meson.build
index e8ddb8ba1..023fa4d37 100644
--- a/src/libtracker-common/meson.build
+++ b/src/libtracker-common/meson.build
@@ -56,15 +56,6 @@ libtracker_common = library('tracker-common',
 
 commoninc = include_directories('.')
 
-# This dependency can't be used everywhere right now. The issue is that if
-# every other library depends on this one, we end up with a combinatorial
-# explosion that results in the link line for src/tracker/tracker being
-# nearly 200,000 characters long which causes this kind of error:
-#
-#     Linking target src/tracker/tracker
-#     ninja: fatal: posix_spawn: Argument list too long
-#
-# Upstream issue: https://github.com/mesonbuild/meson/issues/671
 tracker_common_dep = declare_dependency(
   sources: [tracker_common_enum_header],
   link_with: libtracker_common,
diff --git a/src/libtracker-control/meson.build b/src/libtracker-control/meson.build
index 533ac538e..7efc65168 100644
--- a/src/libtracker-control/meson.build
+++ b/src/libtracker-control/meson.build
@@ -13,12 +13,9 @@ libtracker_control = library('tracker-control-' + tracker_api_version,
     version: libversion,
     install: true,
     install_rpath: tracker_internal_libs_dir,
-    # This doesn't depend on tracker_common_dep because of
-    # https://github.com/mesonbuild/meson/issues/671
-    dependencies: [gio, tracker_sparql_dep, tracker_miner_dep],
+    dependencies: [tracker_common_dep, tracker_sparql_dep, tracker_miner_dep],
     include_directories: [commoninc, configinc, srcinc],
     link_args: vflag,
-    link_with: libtracker_common,
 )
 
 controlinc = include_directories('.')
diff --git a/src/libtracker-data/meson.build b/src/libtracker-data/meson.build
index 477681d05..778c9d541 100644
--- a/src/libtracker-data/meson.build
+++ b/src/libtracker-data/meson.build
@@ -17,9 +17,7 @@ libtracker_data_vala = static_library('tracker-sparql-query',
         # doesn't seem to work here.
         '--target-glib', glib_required,
     ],
-    # This doesn't depend on tracker_common_dep because of
-    # https://github.com/mesonbuild/meson/issues/671
-    dependencies: [glib, gio],
+    dependencies: [tracker_common_dep],
     include_directories: [commoninc, configinc, srcinc],
 )
 
diff --git a/src/libtracker-sparql/meson.build b/src/libtracker-sparql/meson.build
index 30325a37e..20fa8c35c 100644
--- a/src/libtracker-sparql/meson.build
+++ b/src/libtracker-sparql/meson.build
@@ -32,11 +32,8 @@ libtracker_sparql_intermediate_vala = static_library('tracker-sparql-intermediat
         '--target-glib', glib_required,
         libtracker_sparql_c_vapi
     ],
-    # This doesn't depend on tracker_common_dep because of
-    # https://github.com/mesonbuild/meson/issues/671
-    dependencies: [glib, gio] + tracker_sparql_intermediate_dependencies,
+    dependencies: [tracker_common_dep] + tracker_sparql_intermediate_dependencies,
     include_directories: [commoninc, configinc, srcinc],
-    link_with: [libtracker_common],
 )
 
 # We must postprocess the generated Vala header to have only-include-once guards


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