diff --git a/m4/fptools_set_haskell_platform_vars.m4 b/m4/fptools_set_haskell_platform_vars.m4
index 9c0c5e052bd5bacc8a356ba35412f09d4c7018e0..33df74bda1f255c4b0847f3cc143478890f0a44b 100644
--- a/m4/fptools_set_haskell_platform_vars.m4
+++ b/m4/fptools_set_haskell_platform_vars.m4
@@ -48,7 +48,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_VARS_SHELL_FUNCTIONS],
         loongarch64)
             test -z "[$]2" || eval "[$]2=ArchLoongArch64"
             ;;
-        hppa|hppa1_1|ia64|m68k|nios2|riscv32|loongarch32|rs6000|s390|sh4|vax)
+        hppa|hppa1_1|ia64|m68k|nios2|riscv32|loongarch32|rs6000|s390|sh4|sparc|sparc64|vax)
             test -z "[$]2" || eval "[$]2=ArchUnknown"
             ;;
         javascript)
diff --git a/m4/ghc_convert_cpu.m4 b/m4/ghc_convert_cpu.m4
index 880daee61e6f0aadcb50d5131f48d95f68883b9e..93d10e4408c8242fa8e9d43e4be660da872845a5 100644
--- a/m4/ghc_convert_cpu.m4
+++ b/m4/ghc_convert_cpu.m4
@@ -74,6 +74,12 @@ case "$1" in
   sh4)
     $2="sh4"
     ;;
+  sparc64*)
+    $2="sparc64"
+    ;;
+  sparc*)
+    $2="sparc"
+    ;;
   vax)
     $2="vax"
     ;;