From f0de0d87181f5c660e3b19405e48a979e8106ba3 Mon Sep 17 00:00:00 2001 From: Matthew Kennedy Date: Sun, 9 May 2021 17:26:53 -0700 Subject: [PATCH] version check (#2673) --- firmware/main.cpp | 1 + firmware/version_check.h | 13 +++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 firmware/version_check.h diff --git a/firmware/main.cpp b/firmware/main.cpp index b264a0fdc7..81642737fa 100644 --- a/firmware/main.cpp +++ b/firmware/main.cpp @@ -11,6 +11,7 @@ #include "os_access.h" #include "rusefi.h" #include "mpu_util.h" +#include "version_check.h" int main(void) { /* diff --git a/firmware/version_check.h b/firmware/version_check.h new file mode 100644 index 0000000000..f3fc615425 --- /dev/null +++ b/firmware/version_check.h @@ -0,0 +1,13 @@ +// This file asserts that the compiler is appropriate for rusEFI use. + +#pragma once + +// non-MCU builds are significantly more tolerant +#if EFI_PROD_CODE + +static constexpr auto gccVersion = (__GNUC__ * 100) + (__GNUC_MINOR__ * 10) + ( __GNUC_PATCHLEVEL__ ); + +// Firmware builds require at least GCC 9.3.1 +static_assert(gccVersion >= 931, "GCC compiler >= 9.3.1 required"); + +#endif