aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Kolesa <d.kolesa@samsung.com>2018-10-21 15:55:51 +0200
committerDaniel Kolesa <d.kolesa@samsung.com>2018-10-22 16:37:01 +0200
commit926f7c12e3f68f050cf4181ea693297e81259504 (patch)
treece4d12acf16e7eda483cac0232b6035fa534e9f6
parenteolian gen: add generation of build dependencies (diff)
downloadefl-devs/q66/eolian_deps.tar.gz
meson: add eolian custom dependencies supportdevs/q66/eolian_deps
This uses the meson/ninja depfile functionality + eolian to make sure proper dependencies between generated files and .eo files are managed, to ensure consistent re-generation of all generated files that are affected upon .eo file modification. For custom rules with multiple outputs, Ninja currently does not support depfiles. Therefore, split those into two custom rules so that the depfiles functionality can be enabled. While this is ugly and slows down the process a little by having to invoke Eolian twice instead of once, it has to be done and it's still better than what we had in Autotools anyway.
-rw-r--r--src/lib/ecore/meson.build20
-rw-r--r--src/lib/ecore_audio/meson.build4
-rw-r--r--src/lib/ecore_con/meson.build27
-rw-r--r--src/lib/ector/cairo/meson.build4
-rw-r--r--src/lib/ector/gl/meson.build4
-rw-r--r--src/lib/ector/meson.build8
-rw-r--r--src/lib/ector/software/meson.build4
-rw-r--r--src/lib/edje/meson.build24
-rw-r--r--src/lib/efl/interfaces/meson.build24
-rw-r--r--src/lib/eio/meson.build4
-rw-r--r--src/lib/eldbus/meson.build8
-rw-r--r--src/lib/elementary/meson.build19
-rw-r--r--src/lib/emotion/meson.build16
-rw-r--r--src/lib/eo/meson.build4
-rw-r--r--src/lib/evas/canvas/meson.build23
-rw-r--r--src/lib/evas/gesture/meson.build34
-rw-r--r--src/lib/evas/include/meson.build4
-rw-r--r--src/lib/evas/meson.build24
-rw-r--r--src/modules/elementary/web/none/meson.build4
-rw-r--r--src/modules/evas/engines/gl_generic/meson.build4
-rw-r--r--src/modules/evas/engines/software_generic/meson.build4
-rw-r--r--src/tests/elementary/meson.build4
-rw-r--r--src/tests/eolian/meson.build4
23 files changed, 215 insertions, 60 deletions
diff --git a/src/lib/ecore/meson.build b/src/lib/ecore/meson.build
index 732856dd23..dbb511e2bf 100644
--- a/src/lib/ecore/meson.build
+++ b/src/lib/ecore/meson.build
@@ -12,15 +12,25 @@ pub_eo_file_target = []
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : dir_package_include,
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_files = [
@@ -72,12 +82,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
# special handling, because this is already eo API and legacy API
diff --git a/src/lib/ecore_audio/meson.build b/src/lib/ecore_audio/meson.build
index 099f8454db..6fdd5a30b4 100644
--- a/src/lib/ecore_audio/meson.build
+++ b/src/lib/ecore_audio/meson.build
@@ -16,12 +16,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
pub_eo_types_files = []
diff --git a/src/lib/ecore_con/meson.build b/src/lib/ecore_con/meson.build
index b8b5a36b2a..f945ccd0d4 100644
--- a/src/lib/ecore_con/meson.build
+++ b/src/lib/ecore_con/meson.build
@@ -27,15 +27,25 @@ pub_eo_file_target = []
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : dir_package_include,
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_files = [
@@ -85,14 +95,15 @@ endif
foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
@@ -106,11 +117,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/ector/cairo/meson.build b/src/lib/ector/cairo/meson.build
index 2b45ce2b87..e9ebc60708 100644
--- a/src/lib/ector/cairo/meson.build
+++ b/src/lib/ector/cairo/meson.build
@@ -21,12 +21,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
install_data(pub_eo_files,
diff --git a/src/lib/ector/gl/meson.build b/src/lib/ector/gl/meson.build
index dad958c0fc..11bb8cfc6a 100644
--- a/src/lib/ector/gl/meson.build
+++ b/src/lib/ector/gl/meson.build
@@ -24,12 +24,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
install_data(pub_eo_files,
diff --git a/src/lib/ector/meson.build b/src/lib/ector/meson.build
index be3c6a5f62..58e4f96d53 100644
--- a/src/lib/ector/meson.build
+++ b/src/lib/ector/meson.build
@@ -34,12 +34,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
@@ -60,11 +62,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
ector_lib = library('ector',
diff --git a/src/lib/ector/software/meson.build b/src/lib/ector/software/meson.build
index ceb08ef3f2..5e5dc599d7 100644
--- a/src/lib/ector/software/meson.build
+++ b/src/lib/ector/software/meson.build
@@ -23,12 +23,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
install_data(pub_eo_files,
diff --git a/src/lib/edje/meson.build b/src/lib/edje/meson.build
index bcfcd9b569..bd2374637b 100644
--- a/src/lib/edje/meson.build
+++ b/src/lib/edje/meson.build
@@ -42,15 +42,25 @@ pub_eo_file_target = []
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : dir_package_include,
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_types_files = [
@@ -61,11 +71,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
priv_eo_files = [
@@ -77,9 +89,11 @@ foreach eo_file : priv_eo_files
priv_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
diff --git a/src/lib/efl/interfaces/meson.build b/src/lib/efl/interfaces/meson.build
index 8d29c404a8..cb39cff2e5 100644
--- a/src/lib/efl/interfaces/meson.build
+++ b/src/lib/efl/interfaces/meson.build
@@ -18,15 +18,25 @@ pub_eo_file_target = []
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'interfaces'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : join_paths(dir_package_include, 'interfaces'),
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_files = [
@@ -99,12 +109,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'interfaces'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
pub_eo_types_files = [
@@ -119,11 +131,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'interfaces'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
pub_eo_files = files(pub_eo_files + pub_legacy_eo_files + pub_eo_types_files)
diff --git a/src/lib/eio/meson.build b/src/lib/eio/meson.build
index fd6902f38b..c3410d752e 100644
--- a/src/lib/eio/meson.build
+++ b/src/lib/eio/meson.build
@@ -10,13 +10,15 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(
meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
pub_eo_types_files = []
diff --git a/src/lib/eldbus/meson.build b/src/lib/eldbus/meson.build
index 57f2981c4a..fcb452c8a3 100644
--- a/src/lib/eldbus/meson.build
+++ b/src/lib/eldbus/meson.build
@@ -15,12 +15,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
@@ -32,11 +34,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build
index 16ea518792..31bc4fede2 100644
--- a/src/lib/elementary/meson.build
+++ b/src/lib/elementary/meson.build
@@ -117,13 +117,15 @@ foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.legacy.h',],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchld', '@INPUT@'])
endforeach
@@ -277,14 +279,15 @@ pub_eo_files = [
foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h'],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
@@ -300,11 +303,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
priv_eo_files = [
@@ -323,10 +328,12 @@ foreach eo_file : priv_eo_files
priv_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/emotion/meson.build b/src/lib/emotion/meson.build
index 56fda43cb9..1caea9dcee 100644
--- a/src/lib/emotion/meson.build
+++ b/src/lib/emotion/meson.build
@@ -8,15 +8,25 @@ priv_eo_file_target = []
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : dir_package_include,
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/eo/meson.build b/src/lib/eo/meson.build
index 5789c95f4c..34f60aac76 100644
--- a/src/lib/eo/meson.build
+++ b/src/lib/eo/meson.build
@@ -32,12 +32,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/evas/canvas/meson.build b/src/lib/evas/canvas/meson.build
index 47db33de4b..982d8f3af1 100644
--- a/src/lib/evas/canvas/meson.build
+++ b/src/lib/evas/canvas/meson.build
@@ -14,13 +14,15 @@ foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.legacy.h',],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'canvas'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchld', '@INPUT@'])
endforeach
@@ -82,14 +84,25 @@ pub_evas_eo_files += files(pub_eo_files)
foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'canvas'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : join_paths(dir_package_include, 'canvas'),
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
@@ -102,11 +115,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'canvas'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
pub_evas_eot_files += files(pub_eo_types_files)
diff --git a/src/lib/evas/gesture/meson.build b/src/lib/evas/gesture/meson.build
index 62d9b27599..a6289264eb 100644
--- a/src/lib/evas/gesture/meson.build
+++ b/src/lib/evas/gesture/meson.build
@@ -10,14 +10,25 @@ pub_eo_files = [
foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'gesture'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : join_paths(dir_package_include, 'gesture'),
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_evas_eo_files += files(pub_eo_files)
@@ -30,14 +41,25 @@ pub_eo_files = [
foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : false,
install_dir : join_paths(dir_package_include, 'gesture'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : false,
+ install_dir : join_paths(dir_package_include, 'gesture'),
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_types_files = [
@@ -50,11 +72,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : join_paths(dir_package_include, 'gesture'),
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
evas_src += files([
diff --git a/src/lib/evas/include/meson.build b/src/lib/evas/include/meson.build
index aaeeb9ba66..a833f67b40 100644
--- a/src/lib/evas/include/meson.build
+++ b/src/lib/evas/include/meson.build
@@ -9,10 +9,12 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/lib/evas/meson.build b/src/lib/evas/meson.build
index 8498016763..9c118030fe 100644
--- a/src/lib/evas/meson.build
+++ b/src/lib/evas/meson.build
@@ -26,15 +26,25 @@ pub_legacy_eo_files = [
foreach eo_file : pub_legacy_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
- output : [eo_file + '.h', eo_file + '.legacy.h',],
+ output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
+ pub_eo_file_target += custom_target('eolian_gen_legacy_' + eo_file,
+ input : eo_file,
+ output : [eo_file + '.legacy.h'],
+ depfile : eo_file + '.legacy.d',
+ install : true,
+ install_dir : dir_package_include,
+ command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'l:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.h'),
- '-gchl', '@INPUT@'])
-
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.legacy.d'),
+ '-gld', '@INPUT@'])
endforeach
pub_eo_files = [
@@ -45,12 +55,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
@@ -62,11 +74,13 @@ foreach eo_file : pub_eo_types_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
- '-gh', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-ghd', '@INPUT@'])
endforeach
eolian_include_directories += ['-I', meson.current_source_dir()]
diff --git a/src/modules/elementary/web/none/meson.build b/src/modules/elementary/web/none/meson.build
index ddbd9c2f2e..18a5aa4187 100644
--- a/src/modules/elementary/web/none/meson.build
+++ b/src/modules/elementary/web/none/meson.build
@@ -7,12 +7,14 @@ foreach eo_file : pub_eo_files
pub_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
install : true,
install_dir : dir_package_include,
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
diff --git a/src/modules/evas/engines/gl_generic/meson.build b/src/modules/evas/engines/gl_generic/meson.build
index bfa7e82a6d..5d29b4e020 100644
--- a/src/modules/evas/engines/gl_generic/meson.build
+++ b/src/modules/evas/engines/gl_generic/meson.build
@@ -24,10 +24,12 @@ foreach eo_file : pub_eo_files
engine_src += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
engine_deps = [gl_common]
diff --git a/src/modules/evas/engines/software_generic/meson.build b/src/modules/evas/engines/software_generic/meson.build
index 7571ca3bc1..fe3ef78ee8 100644
--- a/src/modules/evas/engines/software_generic/meson.build
+++ b/src/modules/evas/engines/software_generic/meson.build
@@ -20,10 +20,12 @@ foreach eo_file : pub_eo_files
engine_src += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
engine_deps = [draw, dl]
diff --git a/src/tests/elementary/meson.build b/src/tests/elementary/meson.build
index 0f083672cd..b6073af73d 100644
--- a/src/tests/elementary/meson.build
+++ b/src/tests/elementary/meson.build
@@ -8,10 +8,12 @@ foreach eo_file : priv_eo_files
priv_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
diff --git a/src/tests/eolian/meson.build b/src/tests/eolian/meson.build
index 01fd6d3c10..4c6102a78d 100644
--- a/src/tests/eolian/meson.build
+++ b/src/tests/eolian/meson.build
@@ -16,10 +16,12 @@ foreach eo_file : priv_eo_files
priv_eo_file_target += custom_target('eolian_gen_' + eo_file,
input : eo_file,
output : [eo_file + '.h'],
+ depfile : eo_file + '.d',
command : [eolian_gen, '-I', meson.current_source_dir(), eolian_include_directories,
'-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
'-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
- '-gch', '@INPUT@'])
+ '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
+ '-gchd', '@INPUT@'])
endforeach
eolian_suite = executable('eolian_suite',