From 4ac89712e6668f160265da23719b8c2b27a8529b Mon Sep 17 00:00:00 2001 From: nakst <> Date: Fri, 28 Jan 2022 09:53:57 +0000 Subject: [PATCH] don't assume tar supports -a flag --- util/get_source.script | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/util/get_source.script b/util/get_source.script index 1779749..ccd9d8e 100644 --- a/util/get_source.script +++ b/util/get_source.script @@ -52,7 +52,20 @@ void Get(str url, str directoryName, str checksum) { PrintStdErr("Valid checksum.\n"); } - assert SystemShellExecute("tar -xaf %cachePath%"); + str decompressFlag = ""; + + if StringContains(url, ".tar.bz2") { + decompressFlag = "j"; + } else if StringContains(url, ".tar.xz") { + decompressFlag = "J"; + } else if StringContains(url, ".tar.gz") { + decompressFlag = "z"; + } else { + PrintStdErrWarning("Error: Unrecognised archive format extension.\n"); + assert false; + } + + assert SystemShellExecute("tar -x%decompressFlag%f %cachePath%"); assert PathMove(directoryName, "bin/source"); PrintStdErr("File successfully downloaded and extracted.\n");