From c7d5c9a620890410375d0c5ff8602c6ee4f30dfc Mon Sep 17 00:00:00 2001
From: Hashim Sharif <hsharif3@miranda.cs.illinois.edu>
Date: Wed, 31 Mar 2021 21:09:26 -0500
Subject: [PATCH] Bug fix for empty cmake args pased to prompt (install.sh)

---
 hpvm/scripts/hpvm_installer.py | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/hpvm/scripts/hpvm_installer.py b/hpvm/scripts/hpvm_installer.py
index 215db6e2a4..cafc35720a 100755
--- a/hpvm/scripts/hpvm_installer.py
+++ b/hpvm/scripts/hpvm_installer.py
@@ -5,9 +5,10 @@ from pathlib import Path
 from subprocess import CalledProcessError, check_call
 from typing import List
 
+
 VERSION = "9.0.0"
 URL = "http://releases.llvm.org"
-DOWNLOADER = "curl"
+WGET = "wget"
 CLANG_DIR = f"cfe-{VERSION}.src"
 CLANG_TARBALL = f"{CLANG_DIR}.tar.xz"
 LLVM_DIR = f"llvm-{VERSION}.src"
@@ -149,9 +150,11 @@ def prompt_args():
 Example: "DCMAKE_BUILD_TYPE=Release DCMAKE_INSTALL_PREFIX=install".
 Arguments: """
     )
+    
     args.cmake_args = input()
-    args.cmake_args = [f"-{arg}" for arg in args.cmake_args.split(" ")]
-
+    if args.cmake_args.strip() != "":    
+      args.cmake_args = [f"-{arg}" for arg in args.cmake_args.split(" ")]
+      
     args.no_params = not input_with_check(
         "Download DNN weights (recommended)? [y/n]: ", parse_yn, "Please enter y or n"
     )
@@ -181,7 +184,7 @@ def check_download_llvm_clang():
         else:
             print(f"Downloading {LLVM_TARBALL}...")
             print(f"=============================")
-            download(f"{URL}/{VERSION}/{LLVM_TARBALL}", LLVM_TARBALL)
+            check_call([WGET, f"{URL}/{VERSION}/{LLVM_TARBALL}"])
         check_call(["tar", "xf", LLVM_TARBALL])
         check_call(["mv", LLVM_DIR, "llvm"])
     tools = Path("llvm/tools")
@@ -196,7 +199,7 @@ def check_download_llvm_clang():
     chdir(tools)
     print(f"Downloading {CLANG_TARBALL}...")
     print(f"=============================")
-    download(f"{URL}/{VERSION}/{CLANG_TARBALL}", CLANG_TARBALL)
+    check_call([WGET, f"{URL}/{VERSION}/{CLANG_TARBALL}"])
     check_call(["tar", "xf", CLANG_TARBALL])
     check_call(["mv", CLANG_DIR, "clang"])
     assert Path("clang/").is_dir(), "Problem with clang download. Exiting!"
@@ -214,7 +217,7 @@ def check_download_model_params():
     else:
         print(f"Downloading DNN model parameters: {MODEL_PARAMS_TAR}...")
         print(f"=============================")
-        download(MODEL_PARAMS_LINK, MODEL_PARAMS_TAR)
+        check_call([WGET, MODEL_PARAMS_LINK, "-O", MODEL_PARAMS_TAR])
     print(
         f"Extracting DNN model parameters {MODEL_PARAMS_TAR} => {MODEL_PARAMS_DIR}..."
     )
@@ -310,10 +313,6 @@ def input_with_check(prompt: str, parse, prompt_when_invalid: str):
     return value
 
 
-def download(link: str, output: Path):
-    check_call(["curl", "-L", link, "-o", output])
-
-
 def main():
     from sys import argv
 
-- 
GitLab