cpu_interace: use riscv64-unknown-elf if available else riscv32-unknown-elf
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 16 Aug 2018 08:03:43 +0000 (10:03 +0200)
committerFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 16 Aug 2018 08:04:09 +0000 (10:04 +0200)
litex/soc/integration/cpu_interface.py

index 1684e07ae7d1ff3846a3a9dd32148b3d4434fd9f..ad4e8a33b9fa058879f035511ac88a539691bb92 100644 (file)
@@ -1,4 +1,5 @@
 import os
+from shutil import which
 
 from migen import *
 
@@ -35,12 +36,18 @@ def get_cpu_mak(cpu):
             cpuflags += "-mffl1 -maddc"
     elif cpu == "picorv32":
         assert not clang, "picorv32 not supported with clang."
-        triple = "riscv64-unknown-elf"
+        if which("riscv64-unknown-elf-gcc"):
+            triple = "riscv64-unknown-elf"
+        else:
+            triple = "riscv32-unknown-elf"
         cpuflags = "-D__picorv32__ -mno-save-restore -march=rv32im -mabi=ilp32"
         clang = False
     elif cpu == "vexriscv":
         assert not clang, "vexriscv not supported with clang."
-        triple = "riscv64-unknown-elf"
+        if which("riscv64-unknown-elf-gcc"):
+            triple = "riscv64-unknown-elf"
+        else:
+            triple = "riscv32-unknown-elf"
         cpuflags = "-D__vexriscv__ -march=rv32im  -mabi=ilp32"
         clang = False
     else: