summaryrefslogtreecommitdiff
path: root/package/systemd/patches/patch-meson_build
diff options
context:
space:
mode:
Diffstat (limited to 'package/systemd/patches/patch-meson_build')
-rw-r--r--package/systemd/patches/patch-meson_build108
1 files changed, 108 insertions, 0 deletions
diff --git a/package/systemd/patches/patch-meson_build b/package/systemd/patches/patch-meson_build
new file mode 100644
index 000000000..ce1c3596a
--- /dev/null
+++ b/package/systemd/patches/patch-meson_build
@@ -0,0 +1,108 @@
+--- systemd-236.orig/meson.build 2017-12-14 23:09:57.000000000 +0100
++++ systemd-236/meson.build 2018-01-01 21:03:50.570757021 +0100
+@@ -260,10 +260,12 @@ cc = meson.get_compiler('c')
+ pkgconfig = import('pkgconfig')
+ check_compilation_sh = find_program('tools/meson-check-compilation.sh')
+
+-cxx = find_program('c++', required : false)
+-if cxx.found()
+- # Used only for tests
+- add_languages('cpp')
++if get_option('tests') != 'false'
++ cxx = find_program('c++', required : false)
++ if cxx.found()
++ # Used only for tests
++ add_languages('cpp')
++ endif
+ endif
+
+ foreach arg : ['-Wextra',
+@@ -2388,48 +2390,51 @@ executable('systemd-sulogin-shell',
+ install_dir : rootlibexecdir)
+
+ ############################################################
++if want_tests == 'false'
++ message('Not compiling because tests is set to false')
++else
++ foreach tuple : tests
++ sources = tuple[0]
++ link_with = tuple[1].length() > 0 ? tuple[1] : [libshared]
++ dependencies = tuple[2]
++ condition = tuple.length() >= 4 ? tuple[3] : ''
++ type = tuple.length() >= 5 ? tuple[4] : ''
++ defs = tuple.length() >= 6 ? tuple[5] : []
++ incs = tuple.length() >= 7 ? tuple[6] : includes
++ timeout = 30
+
+-foreach tuple : tests
+- sources = tuple[0]
+- link_with = tuple[1].length() > 0 ? tuple[1] : [libshared]
+- dependencies = tuple[2]
+- condition = tuple.length() >= 4 ? tuple[3] : ''
+- type = tuple.length() >= 5 ? tuple[4] : ''
+- defs = tuple.length() >= 6 ? tuple[5] : []
+- incs = tuple.length() >= 7 ? tuple[6] : includes
+- timeout = 30
+-
+- name = sources[0].split('/')[-1].split('.')[0]
+- if type.startswith('timeout=')
+- timeout = type.split('=')[1].to_int()
+- type = ''
+- endif
++ name = sources[0].split('/')[-1].split('.')[0]
++ if type.startswith('timeout=')
++ timeout = type.split('=')[1].to_int()
++ type = ''
++ endif
+
+- if condition == '' or conf.get(condition) == 1
+- exe = executable(
+- name,
+- sources,
+- include_directories : incs,
+- link_with : link_with,
+- dependencies : dependencies,
+- c_args : defs,
+- install_rpath : rootlibexecdir,
+- install : install_tests,
+- install_dir : join_paths(testsdir, type))
++ if condition == '' or conf.get(condition) == 1
++ exe = executable(
++ name,
++ sources,
++ include_directories : incs,
++ link_with : link_with,
++ dependencies : dependencies,
++ c_args : defs,
++ install_rpath : rootlibexecdir,
++ install : install_tests,
++ install_dir : join_paths(testsdir, type))
+
+- if type == 'manual'
+- message('@0@ is a manual test'.format(name))
+- elif type == 'unsafe' and want_tests != 'unsafe'
+- message('@0@ is an unsafe test'.format(name))
++ if type == 'manual'
++ message('@0@ is a manual test'.format(name))
++ elif type == 'unsafe' and want_tests != 'unsafe'
++ message('@0@ is an unsafe test'.format(name))
++ else
++ test(name, exe,
++ env : test_env,
++ timeout : timeout)
++ endif
+ else
+- test(name, exe,
+- env : test_env,
+- timeout : timeout)
++ message('Not compiling @0@ because @1@ is not true'.format(name, condition))
+ endif
+- else
+- message('Not compiling @0@ because @1@ is not true'.format(name, condition))
+- endif
+-endforeach
++ endforeach
++endif
+
+ test_libsystemd_sym = executable(
+ 'test-libsystemd-sym',