Files
xen/automation/eclair_analysis/prepare.sh
T
Maria Celeste Cesario f4519ee87e eclair: move function and macro properties outside ECLAIR
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>
2024-02-07 13:49:12 +01:00

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
)