]> granicus.if.org Git - strace/blob - mpers_test.sh
Mpersify parsers of utimes, futimesat, and utimensat syscalls
[strace] / mpers_test.sh
1 #!/bin/sh -efu
2
3 mpers_name="$1"; shift
4 srcdir=${0%/*}
5 mpers_sh="${srcdir}/mpers.sh"
6
7 mpers_dir="mpers-$mpers_name"
8 mkdir -p "$mpers_dir"
9
10 sample="$mpers_dir/sample.c"
11 cat > "$sample" <<EOF
12 #include "mpers_type.h"
13 #include DEF_MPERS_TYPE(int)
14 #include MPERS_DEFS
15 EOF
16
17 expected="$mpers_dir/sample.expected"
18 cat > "$expected" <<EOF
19 #include <inttypes.h>
20 typedef
21 int32_t ${mpers_name}_int;
22 #define MPERS_${mpers_name}_int ${mpers_name}_int
23 EOF
24
25 CFLAGS="$CPPFLAGS -I${srcdir}" \
26 CPPFLAGS="$CPPFLAGS -I${srcdir} -DIN_MPERS -DMPERS_IS_${mpers_name}" \
27 "$mpers_sh" "-$mpers_name" "$sample"
28 cmp "$expected" "$mpers_dir"/int.h > /dev/null