From 97f41fe4ac034d62551967e785f6705a10042435 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Thu, 25 Jul 2019 13:24:00 +0300 Subject: [PATCH] test/symbols-leak-test: make it work with macOS diff The <() stuff fails with an error: diff: extra operand `/dev/fd/61' Signed-off-by: Ran Benita --- meson.build | 1 + test/symbols-leak-test.bash | 17 ++++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/meson.build b/meson.build index 43a5a98..6ed9fb8 100644 --- a/meson.build +++ b/meson.build @@ -276,6 +276,7 @@ test_env = environment() test_env.set('XKB_LOG_LEVEL', 'debug') test_env.set('XKB_LOG_VERBOSITY', '10') test_env.set('top_srcdir', meson.source_root()) +test_env.set('top_builddir', meson.build_root()) test_env.set('MALLOC_PERTURB_', '15') test_env.set('MallocPreScribble', '1') test_env.set('MallocScribble', '1') diff --git a/test/symbols-leak-test.bash b/test/symbols-leak-test.bash index 0a74c5f..f739eed 100755 --- a/test/symbols-leak-test.bash +++ b/test/symbols-leak-test.bash @@ -1,16 +1,19 @@ #!/usr/bin/env bash -set -e +set -o pipefail -o errexit -o nounset + +tempdir=$(mktemp -d "$top_builddir"/symbols-leak-test.XXXXXXXXXX) +trap 'rm -rf "$tempdir"' EXIT # Check that all exported symbols are specified in the symbol version # scripts. If this fails, please update the appropriate .map file # (adding new version nodes as needed). # xkbcommon symbols -diff -a -u \ - <(grep -h '^\s\+xkb_' "$top_srcdir"/xkbcommon.map | sed -e 's/^\s\+\(.*\);/\1/' | sort) \ - <(grep -h 'XKB_EXPORT' -A1 "$top_srcdir"/src/{,xkbcomp,compose}/*.c | grep '^xkb_' | sed -e 's/(.*//' | sort) +grep -h '^\s\+xkb_' "$top_srcdir"/xkbcommon.map | sed -e 's/^\s\+\(.*\);/\1/' | sort > "$tempdir"/symbols +grep -h 'XKB_EXPORT' -A1 "$top_srcdir"/src/{,xkbcomp,compose}/*.c | grep '^xkb_' | sed -e 's/(.*//' | sort > "$tempdir"/exported +diff -a -u "$tempdir"/symbols "$tempdir"/exported # xkbcommon-x11 symbols -diff -a -u \ - <(grep -h '^\s\+xkb_.*' "$top_srcdir"/xkbcommon-x11.map | sed -e 's/^\s\+\(.*\);/\1/' | sort) \ - <(grep -h 'XKB_EXPORT' -A1 "$top_srcdir"/src/x11/*.c | grep '^xkb_' | sed -e 's/(.*//' | sort) +grep -h '^\s\+xkb_.*' "$top_srcdir"/xkbcommon-x11.map | sed -e 's/^\s\+\(.*\);/\1/' | sort > "$tempdir"/symbols +grep -h 'XKB_EXPORT' -A1 "$top_srcdir"/src/x11/*.c | grep '^xkb_' | sed -e 's/(.*//' | sort > "$tempdir"/exported +diff -a -u "$tempdir"/symbols "$tempdir"/exported -- 2.7.4