2020-01-28 19:24:49 +00:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
2019-12-26 05:54:02 +00:00
|
|
|
From: Alexander von Gluck IV <kallisti5@unixzen.com>
|
|
|
|
Date: Wed, 27 Nov 2019 17:03:42 -0600
|
2020-01-28 19:24:49 +00:00
|
|
|
Subject: [PATCH] efibind: Fix usage of efi headers from C++ code
|
2019-12-26 05:54:02 +00:00
|
|
|
|
|
|
|
* __STDC_VERSION__ is undefined when headers are called from C++
|
|
|
|
code resulting in not using stdint.h and efibind.h
|
|
|
|
"making a guess" on what they are. extern "C" will not define
|
|
|
|
__STDC_VERSION__.
|
|
|
|
* Always leverage stdint.h on C++.
|
|
|
|
* Honestly, gnu-efi should always use stdint.h, or find a better
|
|
|
|
way to detect it. (or platforms without it need to catch up to 2007)
|
|
|
|
---
|
2019-11-14 14:35:45 +00:00
|
|
|
inc/aarch64/efibind.h | 2 +-
|
2019-12-26 05:54:02 +00:00
|
|
|
inc/arm/efibind.h | 2 +-
|
|
|
|
inc/ia32/efibind.h | 2 +-
|
|
|
|
inc/ia64/efibind.h | 2 +-
|
|
|
|
inc/mips64el/efibind.h | 2 +-
|
2019-11-14 14:35:45 +00:00
|
|
|
inc/x86_64/efibind.h | 4 ++--
|
2019-12-26 05:54:02 +00:00
|
|
|
6 files changed, 7 insertions(+), 7 deletions(-)
|
|
|
|
|
2019-11-14 14:35:45 +00:00
|
|
|
diff --git a/inc/aarch64/efibind.h b/inc/aarch64/efibind.h
|
|
|
|
index 3c8cf963c31..c2c546b892a 100644
|
|
|
|
--- a/inc/aarch64/efibind.h
|
|
|
|
+++ b/inc/aarch64/efibind.h
|
|
|
|
@@ -15,7 +15,7 @@
|
|
|
|
* either version 2 of the License, or (at your option) any later version.
|
2019-12-26 05:54:02 +00:00
|
|
|
*/
|
2019-11-14 14:35:45 +00:00
|
|
|
|
2019-12-26 05:54:02 +00:00
|
|
|
-#if !defined(_MSC_VER) && (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ))
|
|
|
|
+#if !defined(_MSC_VER) && (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
|
|
|
diff --git a/inc/arm/efibind.h b/inc/arm/efibind.h
|
2019-11-14 14:35:45 +00:00
|
|
|
index 7a22b9c8458..012d3d2f8c9 100644
|
2019-12-26 05:54:02 +00:00
|
|
|
--- a/inc/arm/efibind.h
|
|
|
|
+++ b/inc/arm/efibind.h
|
|
|
|
@@ -15,7 +15,7 @@
|
|
|
|
* either version 2 of the License, or (at your option) any later version.
|
|
|
|
*/
|
|
|
|
|
|
|
|
-#if !defined(_MSC_VER) && (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ))
|
|
|
|
+#if !defined(_MSC_VER) && (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
|
|
|
diff --git a/inc/ia32/efibind.h b/inc/ia32/efibind.h
|
2019-11-14 14:35:45 +00:00
|
|
|
index dd0138573d9..27459e454d1 100644
|
2019-12-26 05:54:02 +00:00
|
|
|
--- a/inc/ia32/efibind.h
|
|
|
|
+++ b/inc/ia32/efibind.h
|
|
|
|
@@ -25,7 +25,7 @@ Revision History
|
|
|
|
// Basic int types of various widths
|
|
|
|
//
|
|
|
|
|
|
|
|
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )
|
|
|
|
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// No ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
|
|
|
diff --git a/inc/ia64/efibind.h b/inc/ia64/efibind.h
|
2019-11-14 14:35:45 +00:00
|
|
|
index b9b2e624657..3ace8d59190 100644
|
2019-12-26 05:54:02 +00:00
|
|
|
--- a/inc/ia64/efibind.h
|
|
|
|
+++ b/inc/ia64/efibind.h
|
|
|
|
@@ -24,7 +24,7 @@ Revision History
|
|
|
|
// Basic int types of various widths
|
|
|
|
//
|
|
|
|
|
|
|
|
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )
|
|
|
|
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// No ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
|
|
|
diff --git a/inc/mips64el/efibind.h b/inc/mips64el/efibind.h
|
2019-11-14 14:35:45 +00:00
|
|
|
index 32241e5ad46..1f08cd346d0 100644
|
2019-12-26 05:54:02 +00:00
|
|
|
--- a/inc/mips64el/efibind.h
|
|
|
|
+++ b/inc/mips64el/efibind.h
|
|
|
|
@@ -17,7 +17,7 @@
|
|
|
|
* either version 2 of the License, or (at your option) any later version.
|
|
|
|
*/
|
|
|
|
|
|
|
|
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )
|
|
|
|
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
2019-11-14 14:35:45 +00:00
|
|
|
diff --git a/inc/x86_64/efibind.h b/inc/x86_64/efibind.h
|
|
|
|
index ae40595be0b..31e9e119d74 100644
|
|
|
|
--- a/inc/x86_64/efibind.h
|
|
|
|
+++ b/inc/x86_64/efibind.h
|
2019-12-26 05:54:02 +00:00
|
|
|
@@ -34,7 +34,7 @@ Revision History
|
|
|
|
// Basic int types of various widths
|
|
|
|
//
|
|
|
|
|
|
|
|
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L )
|
|
|
|
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L ) && !defined(__cplusplus)
|
|
|
|
|
|
|
|
// No ANSI C 1999/2000 stdint.h integer width declarations
|
|
|
|
|
|
|
|
@@ -86,7 +86,7 @@ Revision History
|
|
|
|
#endif
|
|
|
|
typedef uint64_t uintptr_t;
|
|
|
|
typedef int64_t intptr_t;
|
|
|
|
-#elif defined(__GNUC__)
|
|
|
|
+#else
|
|
|
|
#include <stdint.h>
|
|
|
|
#endif
|
|
|
|
|