diff --git a/emper/meson.build b/emper/meson.build
index c3c85bb024f56e138e443e8e7de7e9ecab61a6d4..935099db9b90383a45d33cf28ab47983eab2299b 100644
--- a/emper/meson.build
+++ b/emper/meson.build
@@ -54,7 +54,8 @@ emper = library(
 
 emper_dep = declare_dependency(
   include_directories : emper_all_include,
-  link_with : emper
+  link_with : emper,
+  dependencies : emper_dependencies,
 )
 
 
@@ -65,8 +66,7 @@ emper_c_sources = [
 emper_c = library(
   'emper-c',
   emper_c_sources,
-  include_directories: emper_all_include,
-  link_with: emper,
+  dependencies: emper_dep,
   install: true,
 )
 
diff --git a/eval/meson.build b/eval/meson.build
index e33ab63c86c657a416fbc983a14d647d31ecb994..4460655882498fd4931d4490158dbaf296060622 100644
--- a/eval/meson.build
+++ b/eval/meson.build
@@ -1,22 +1,17 @@
 executable(
   'time_to_spawn',
   'TimeToSpawn.cpp',
-  include_directories: emper_all_include,
-  dependencies: thread_dep,
-  link_with: emper,
+  dependencies: emper_dep,
 )
 
 executable(
   'spawn_a_lot',
   'SpawnALot.cpp',
-  include_directories: emper_all_include,
-  dependencies: thread_dep,
-  link_with: emper,
+  dependencies: emper_dep,
 )
 
 executable(
   'locality',
   'Locality.cpp',
-  include_directories: emper_all_include,
-  link_with: emper,
+  dependencies: emper_dep,
 )
diff --git a/tests/fixtures/meson.build b/tests/fixtures/meson.build
index 37deaeff07faae79617246e90f2e76481ffa0c14..0ba7b33d466f2f088789a60bcb04263e958c9492 100644
--- a/tests/fixtures/meson.build
+++ b/tests/fixtures/meson.build
@@ -5,8 +5,7 @@ test_fixtures_sources = ['network.cpp']
 test_fixtures_lib = library(
 	'test-fixtures',
 	test_fixtures_sources,
-	include_directories: emper_all_include,
-	link_with: emper,
+	dependencies: emper_dep,
 )
 
 test_fixtures = declare_dependency(