#!/bin/sh # Создаёт отдельный FAT16 HDD для интеграционного теста F5. # Аргументы: [образ [исполняемый файл]]. set -eu : "${SPRINTER_ROOT:?задайте SPRINTER_ROOT для упаковки HDD}" PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) DEFAULT_IMAGE="$PROJECT_DIR/build/hdd/p4_copy.chd" IMAGE=${1:-$DEFAULT_IMAGE} EXECUTABLE=${2:-$PROJECT_DIR/build/sprcmd.exe} TEMP_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sprcmd-copy.XXXXXX") FIXTURE_ROOT="$TEMP_DIR/P4DATA" cleanup() { rm -rf -- "$TEMP_DIR" } trap cleanup EXIT HUP INT TERM mkdir -p "$(dirname -- "$IMAGE")" python3 "$PROJECT_DIR/tests/p4_fixture.py" create "$FIXTURE_ROOT" "$SPRINTER_ROOT/toolchain/make_hdd.sh" "$IMAGE" \ "$EXECUTABLE" "$FIXTURE_ROOT/COPYFROM" "$FIXTURE_ROOT/COPYTO" echo "P4 copy HDD ready: $IMAGE (D:, executable: SPRCMD.EXE)"