summaryrefslogtreecommitdiff
path: root/bootstrap
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2015-11-20 01:43:12 +0000
committerDmitry V. Levin <ldv@altlinux.org>2015-11-20 05:44:49 +0000
commit5cb45b25a37390afab4a62220ce148a2c135e595 (patch)
tree2b5533835f94526329c64c6cfe50eede8735a034 /bootstrap
parent7528a0b2e15177683e7eb171ee83c82d636b9b4c (diff)
downloadstrace-5cb45b25a37390afab4a62220ce148a2c135e595.tar.gz
mpers: skip xlat struct definitions in mpers mode
Avoid duplicate definitions of xlat structures in files compiled in mpers mode. Each xlat file defines the corresponding xlat struct with either global or local visibility using the following rules: - if xlat struct declaration is available in defs.h, a global definition is provided in regular mode, and nothing is provided in mpers mode; - otherwise, if xlat file is included by a mpers source file, a global definition is provided in regular mode (unless no mpers mode is supported on this architecture, in that case, a local definition is provided instead), and a declaration is provided in mpers mode; - otherwise, a local definition is provided in regular mode, and an error message is printed in mpers mode. Fallback definitions of constants provided by xlat files remain available in all modes. * bootstrap: Invoke generate_mpers_am.sh before xlat/gen.sh. * defs.h (adjtimex_modes, adjtimex_status, sigev_value): Remove. * generate_mpers_am.sh: Generate mpers_xlat.h. * Makefile.am (EXTRA_DIST): Add mpers_xlat.h. * print_sigevent.c: Include "xlat/sigev_value.h" unconditionally. * print_timex.c: Include "xlat/adjtimex_modes.h" and "xlat/adjtimex_status.h" unconditionally. * xlat/gen.sh (cond_xlat): Move printing of fallback definitions ... (cond_def): ... here. (gen_header): Check also mpers_xlat.h for global declarations of xlat structures. Process input file twice, first time print directives only, second time print everything. Wrap struct xlat into #ifdef IN_MPERS ... #else ... #endif. * xlat/getrandom_flags.in: Cleanup.
Diffstat (limited to 'bootstrap')
-rwxr-xr-xbootstrap2
1 files changed, 1 insertions, 1 deletions
diff --git a/bootstrap b/bootstrap
index 59d2480d1..9b432d415 100755
--- a/bootstrap
+++ b/bootstrap
@@ -14,7 +14,7 @@ for m in -m32 -mx32; do
done
done
-./xlat/gen.sh
./generate_mpers_am.sh
+./xlat/gen.sh
exec autoreconf -f -i "$@"