S03-H3 CLOSED baseline
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Determina la directory common indipendentemente dalla directory corrente.
|
||||
MARTE_COMMON_DIR="$(
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 &&
|
||||
pwd
|
||||
)"
|
||||
|
||||
# Carica i percorsi canonici della benchmark suite.
|
||||
source "$MARTE_COMMON_DIR/paths.sh"
|
||||
|
||||
# Directory contenenti le librerie richieste dagli scenari S00, S01 e S02.
|
||||
MARTE2_CORE_LIB_DIR="$MARTE2_ROOT/Build/$MARTE_TARGET/Core"
|
||||
LINUX_TIMER_LIB_DIR="$MARTE2_COMPONENTS_ROOT/Build/$MARTE_TARGET/Components/DataSources/LinuxTimer"
|
||||
LOGGER_DATA_SOURCE_LIB_DIR="$MARTE2_COMPONENTS_ROOT/Build/$MARTE_TARGET/Components/DataSources/LoggerDataSource"
|
||||
FILE_DATA_SOURCE_LIB_DIR="$MARTE2_COMPONENTS_ROOT/Build/$MARTE_TARGET/Components/DataSources/FileDataSource"
|
||||
IOGAM_LIB_DIR="$MARTE2_COMPONENTS_ROOT/Build/$MARTE_TARGET/Components/GAMs/IOGAM"
|
||||
|
||||
# Librerie che devono essere presenti.
|
||||
MARTE2_CORE_LIB="$MARTE2_CORE_LIB_DIR/MARTe2.so"
|
||||
LINUX_TIMER_LIB="$LINUX_TIMER_LIB_DIR/LinuxTimer.so"
|
||||
LOGGER_DATA_SOURCE_LIB="$LOGGER_DATA_SOURCE_LIB_DIR/LoggerDataSource.so"
|
||||
FILE_DATA_SOURCE_LIB="$FILE_DATA_SOURCE_LIB_DIR/FileDataSource.so"
|
||||
IOGAM_LIB="$IOGAM_LIB_DIR/IOGAM.so"
|
||||
|
||||
# Verifica delle directory runtime.
|
||||
for marte_runtime_dir in \
|
||||
"$MARTE2_CORE_LIB_DIR" \
|
||||
"$LINUX_TIMER_LIB_DIR" \
|
||||
"$LOGGER_DATA_SOURCE_LIB_DIR" \
|
||||
"$FILE_DATA_SOURCE_LIB_DIR" \
|
||||
"$IOGAM_LIB_DIR"
|
||||
do
|
||||
if [ ! -d "$marte_runtime_dir" ]; then
|
||||
printf "DIRECTORY RUNTIME ASSENTE: %s\n" "$marte_runtime_dir" >&2
|
||||
return 2 2>/dev/null || exit 2
|
||||
fi
|
||||
done
|
||||
|
||||
# Verifica delle librerie runtime.
|
||||
for marte_runtime_lib in \
|
||||
"$MARTE2_CORE_LIB" \
|
||||
"$LINUX_TIMER_LIB" \
|
||||
"$LOGGER_DATA_SOURCE_LIB" \
|
||||
"$FILE_DATA_SOURCE_LIB" \
|
||||
"$IOGAM_LIB"
|
||||
do
|
||||
if [ ! -f "$marte_runtime_lib" ]; then
|
||||
printf "LIBRERIA RUNTIME ASSENTE: %s\n" "$marte_runtime_lib" >&2
|
||||
return 3 2>/dev/null || exit 3
|
||||
fi
|
||||
done
|
||||
|
||||
# Inserisce una directory allinizio di LD_LIBRARY_PATH solo se non è già presente.
|
||||
marte_prepend_library_path() {
|
||||
marte_directory="$1"
|
||||
|
||||
case ":${LD_LIBRARY_PATH-}:" in
|
||||
*":${marte_directory}:"*)
|
||||
;;
|
||||
*)
|
||||
if [ -n "${LD_LIBRARY_PATH-}" ]; then
|
||||
LD_LIBRARY_PATH="${marte_directory}:${LD_LIBRARY_PATH}"
|
||||
else
|
||||
LD_LIBRARY_PATH="${marte_directory}"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Ordine inverso perché ogni voce viene inserita in testa.
|
||||
marte_prepend_library_path "$FILE_DATA_SOURCE_LIB_DIR"
|
||||
marte_prepend_library_path "$IOGAM_LIB_DIR"
|
||||
marte_prepend_library_path "$LOGGER_DATA_SOURCE_LIB_DIR"
|
||||
marte_prepend_library_path "$LINUX_TIMER_LIB_DIR"
|
||||
marte_prepend_library_path "$MARTE2_CORE_LIB_DIR"
|
||||
|
||||
export MARTE2_CORE_LIB_DIR
|
||||
export LINUX_TIMER_LIB_DIR
|
||||
export LOGGER_DATA_SOURCE_LIB_DIR
|
||||
export FILE_DATA_SOURCE_LIB_DIR
|
||||
export IOGAM_LIB_DIR
|
||||
export LD_LIBRARY_PATH
|
||||
|
||||
unset marte_runtime_dir
|
||||
unset marte_runtime_lib
|
||||
unset marte_directory
|
||||
unset -f marte_prepend_library_path
|
||||
Reference in New Issue
Block a user