On 02/12/2018 09:07 AM, Dr. David Alan Gilbert wrote: > * Andrew Jones (drjo...@redhat.com) wrote: >> On Mon, Feb 05, 2018 at 06:18:46PM +0000, Dr. David Alan Gilbert (git) wrote: >>> diff --git a/tests/migration/rebuild-x86-bootblock.sh >>> b/tests/migration/rebuild-x86-bootblock.sh >>> new file mode 100755 >>> index 0000000000..c40f025e1a >>> --- /dev/null >>> +++ b/tests/migration/rebuild-x86-bootblock.sh >>> @@ -0,0 +1,37 @@ >>> +#!/bin/sh >>> +# Copyright (c) 2016 Red Hat, Inc. and/or its affiliates >>> +# This work is licensed under the terms of the GNU GPL, version 2 or later. >>> +# See the COPYING file in the top-level directory. >>> +# >>> +# Author: dgilb...@redhat.com >>> + >>> +ASMFILE=tests/migration/x86-a-b-bootblock.s >>> +HEADER=tests/migration/x86-a-b-bootblock.h >>> + >>> +if [ ! -e "$ASMFILE" ] >>> +then >>> + echo "Couldn't find $ASMFILE" >&2 >>> + exit 1 >>> +fi >>> + >>> +ASM_WORK_DIR=/tmp/X86BB$$ >> >> mktemp? > > Yes, that's probably fair.
I echo this. So we will use something like: -ASM_WORK_DIR=/tmp/AARCH64BB$$ +ASM_WORK_DIR="$(mktemp -d /tmp/AARCH64XXXXXX)" -mkdir $ASM_WORK_DIR && > >>> +mkdir $ASM_WORK_DIR && >>> +as --32 -march=i486 "$ASMFILE" -o $ASM_WORK_DIR/bb.o && >>> +objcopy -O binary $ASM_WORK_DIR/bb.o $ASM_WORK_DIR/bb.boot && >>> +dd if=$ASM_WORK_DIR/bb.boot of=$ASM_WORK_DIR/bb.bootsect \ >>> + bs=256 count=2 skip=124 && >>> +xxd -i $ASM_WORK_DIR/bb.bootsect | >> >> Is xxd now considered a common enough tool for portable scripts? I've >> always liked xxd for manual use, but scripted with 'od'. > > This script isn't part of a normal build or make check or anything, so > jumping through hoops to make it portable for the mythical other person > who might ever run it seems OTT, especially since xxd is very common, xxd isn't installed by default (at least on my aarch64 server). But it is part of vim-common package; so it is fair to say xxd command is available on all major distros. > and I'm not sure how much I'd bet on the portability of od's output > format either. > > Dave > >>> +sed -e 's/_tmp.*_bootsect/x86_bootsect/' -e 's/.*int.*//' > \ >>> + $ASM_WORK_DIR/bb.hex && >>> +cat - $ASM_WORK_DIR/bb.hex <<HERE > "$HEADER" >>> +/* This file is automatically generated from >>> + * tests/migration/x86-a-b-bootblock.s, edit that and then run >>> + * tests/migration/rebuild-x86-bootblock.sh to update, >>> + * and then remember to send both in your patch submission. >>> + */ >>> +HERE >>> + >>> +rm $ASM_WORK_DIR/bb.hex $ASM_WORK_DIR/bb.bootsect $ASM_WORK_DIR/bb.boot >>> +rm $ASM_WORK_DIR/bb.o >>> +rmdir $ASM_WORK_DIR >>> + >> >> Thanks, >> drew > -- > Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK >