mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 18:21:39 +01:00
Function and macro properties contained in ECLAIR/call_properties.ecl are of general interest: this patch moves these annotations in a generaric JSON file in docs. In this way, they can be exploited for other purposes (i.e. documentation, other tools). Add rst file containing explanation on how to update function_macro_properties.json. Add script to convert the JSON file in ECL configurations. Remove ECLAIR/call_properties.ecl: the file is now automatically generated from the JSON file. Signed-off-by: Maria Celeste Cesario <maria.celeste.cesario@bugseng.com> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
49 lines
1017 B
Bash
Executable File
49 lines
1017 B
Bash
Executable File
#!/bin/bash
|
|
# Stop immediately if any executed command has exit status different from 0.
|
|
set -e
|
|
|
|
script_name="$(basename "$0")"
|
|
script_dir="$(
|
|
cd "$(dirname "$0")"
|
|
echo "${PWD}"
|
|
)"
|
|
|
|
fatal() {
|
|
echo "${script_name}: $*" >&2
|
|
exit 1
|
|
}
|
|
|
|
usage() {
|
|
fatal "Usage: ${script_name}"
|
|
}
|
|
|
|
if [ $# -ne 1 ]; then
|
|
usage
|
|
exit 1
|
|
fi
|
|
|
|
export XEN_TARGET_ARCH
|
|
|
|
if [ "$1" = "X86_64" ]; then
|
|
CONFIG_FILE="${script_dir}/xen_x86_config"
|
|
XEN_TARGET_ARCH=x86_64
|
|
elif [ "$1" = "ARM64" ]; then
|
|
CONFIG_FILE="${script_dir}/xen_arm_config"
|
|
XEN_TARGET_ARCH=arm64
|
|
else
|
|
fatal "Unknown configuration: $1"
|
|
fi
|
|
|
|
(
|
|
./configure
|
|
cp "${CONFIG_FILE}" xen/.config
|
|
make clean
|
|
find . -type f -name "*.safparse" -print -delete
|
|
cd xen
|
|
make -f "${script_dir}/Makefile.prepare" prepare
|
|
# Translate the /* SAF-n-safe */ comments into ECLAIR CBTs
|
|
scripts/xen-analysis.py --run-eclair --no-build --no-clean
|
|
# Translate function-properties.json into ECLAIR properties
|
|
python3 ${script_dir}/propertyparser.py
|
|
)
|