summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xPorts/qemu/package.sh7
-rw-r--r--Ports/qemu/version.sh4
-rwxr-xr-xToolchain/BuildQemu.sh26
3 files changed, 21 insertions, 16 deletions
diff --git a/Ports/qemu/package.sh b/Ports/qemu/package.sh
index 5197d46b0b..ad8011b65d 100755
--- a/Ports/qemu/package.sh
+++ b/Ports/qemu/package.sh
@@ -1,6 +1,9 @@
#!/usr/bin/env -S bash ../.port_include.sh
+
+source version.sh
+
port='qemu'
-version='7.2.0'
+version="${QEMU_VERSION}"
useconfigure='true'
configopts=(
'--target-list=aarch64-softmmu,i386-softmmu,x86_64-softmmu'
@@ -20,8 +23,8 @@ depends=(
'pixman'
'SDL2'
)
-files="https://download.qemu.org/qemu-${version}.tar.xz qemu-${version}.tar.xz 5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157"
auth_type='sha256'
+files="${QEMU_ARCHIVE_URL} ${QEMU_ARCHIVE} ${QEMU_ARCHIVE_SHA256SUM}"
pre_patch() {
# Disable tests (those need way more stuff than QEMU itself) by clearing the respective meson file.
diff --git a/Ports/qemu/version.sh b/Ports/qemu/version.sh
new file mode 100644
index 0000000000..4079912784
--- /dev/null
+++ b/Ports/qemu/version.sh
@@ -0,0 +1,4 @@
+QEMU_VERSION="7.2.0"
+QEMU_ARCHIVE="qemu-${QEMU_VERSION}.tar.xz"
+QEMU_ARCHIVE_URL="https://download.qemu.org/${QEMU_ARCHIVE}"
+QEMU_ARCHIVE_SHA256SUM="5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157"
diff --git a/Toolchain/BuildQemu.sh b/Toolchain/BuildQemu.sh
index ae1520ac1d..03ff3733ff 100755
--- a/Toolchain/BuildQemu.sh
+++ b/Toolchain/BuildQemu.sh
@@ -11,8 +11,8 @@ PREFIX="$DIR/Local/qemu"
BUILD=$(realpath "$DIR/../Build")
SYSROOT="$BUILD/Root"
-QEMU_VERSION=${QEMU_VERSION:="qemu-7.1.0"}
-QEMU_MD5SUM=${QEMU_MD5SUM:="3be5458a9171b4ec5220c65d5d52bdcf"}
+# shellcheck source=/dev/null
+source "${DIR}/../Ports/qemu/version.sh"
echo PREFIX is "$PREFIX"
echo SYSROOT is "$SYSROOT"
@@ -20,24 +20,21 @@ echo SYSROOT is "$SYSROOT"
mkdir -p "$DIR/Tarballs"
pushd "$DIR/Tarballs"
- md5="$(md5sum $QEMU_VERSION.tar.xz | cut -f1 -d' ')"
- if [ ! -e "$QEMU_VERSION.tar.xz" ] || [ "$md5" != "$QEMU_MD5SUM" ]; then
- curl -C - -O "https://download.qemu.org/$QEMU_VERSION.tar.xz"
+ if [ ! -e "${QEMU_ARCHIVE}" ]; then
+ curl -C - -O "${QEMU_ARCHIVE_URL}"
else
- echo "Skipped downloading $QEMU_VERSION"
+ echo "Skipped downloading ${QEMU_ARCHIVE}"
fi
- md5="$(md5sum $QEMU_VERSION.tar.xz | cut -f1 -d' ')"
- echo "qemu md5='$md5'"
- if [ "$md5" != "$QEMU_MD5SUM" ] ; then
- echo "qemu md5 sum mismatching, please run script again."
- rm -f $QEMU_VERSION.tar.xz
+ if ! sha256sum --status -c <(echo "${QEMU_ARCHIVE_SHA256SUM}" "${QEMU_ARCHIVE}"); then
+ echo "qemu sha256 sum mismatching, please run script again."
+ rm -f "${QEMU_ARCHIVE}"
exit 1
fi
if [ ! -d "$QEMU_VERSION" ]; then
echo "Extracting qemu..."
- tar -xf "$QEMU_VERSION.tar.xz"
+ tar -xf "${QEMU_ARCHIVE}"
else
echo "Skipped extracting qemu"
fi
@@ -61,9 +58,10 @@ fi
echo Using $UI_LIB based UI
pushd "$DIR/Build/qemu"
- "$DIR"/Tarballs/$QEMU_VERSION/configure --prefix="$PREFIX" \
+ "$DIR"/Tarballs/qemu-"${QEMU_VERSION}"/configure --prefix="$PREFIX" \
--target-list=aarch64-softmmu,x86_64-softmmu \
- --enable-$UI_LIB || exit 1
+ --enable-$UI_LIB \
+ --enable-slirp || exit 1
make -j "$MAKEJOBS" || exit 1
make install || exit 1
popd