| From foo@baz Mon Apr 9 17:09:24 CEST 2018 |
| From: Lv Zheng <lv.zheng@intel.com> |
| Date: Mon, 5 Jun 2017 16:39:56 +0800 |
| Subject: ACPICA: OSL: Add support to exclude stdarg.h |
| |
| From: Lv Zheng <lv.zheng@intel.com> |
| |
| |
| [ Upstream commit 84676b87b27d8aefafb9f712a5b444938f284513 ] |
| |
| ACPICA commit e2df7455a9a4301b03668e4c9c02c7a564cc841c |
| |
| Some hosts may choose not to include stdarg.h, implementing a |
| configurability in acgcc.h, allowing OSen like Solaris to exclude stdarg.h. |
| This patch also fixes acintel.h accordingly without providing builtin |
| support as Intel compiler is similar as GCC. Reported by Dana Myers, fixed |
| by Lv Zheng. |
| |
| Link: https://github.com/acpica/acpica/commit/e2df7455 |
| Reported-by: Dana Myers <dana.myers@oracle.com> |
| Signed-off-by: Lv Zheng <lv.zheng@intel.com> |
| Signed-off-by: Bob Moore <robert.moore@intel.com> |
| Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| include/acpi/platform/acgcc.h | 10 ++++++++++ |
| include/acpi/platform/acintel.h | 2 ++ |
| 2 files changed, 12 insertions(+) |
| |
| --- a/include/acpi/platform/acgcc.h |
| +++ b/include/acpi/platform/acgcc.h |
| @@ -48,7 +48,17 @@ |
| * Use compiler specific <stdarg.h> is a good practice for even when |
| * -nostdinc is specified (i.e., ACPI_USE_STANDARD_HEADERS undefined. |
| */ |
| +#ifndef va_arg |
| +#ifdef ACPI_USE_BUILTIN_STDARG |
| +typedef __builtin_va_list va_list; |
| +#define va_start(v, l) __builtin_va_start(v, l) |
| +#define va_end(v) __builtin_va_end(v) |
| +#define va_arg(v, l) __builtin_va_arg(v, l) |
| +#define va_copy(d, s) __builtin_va_copy(d, s) |
| +#else |
| #include <stdarg.h> |
| +#endif |
| +#endif |
| |
| #define ACPI_INLINE __inline__ |
| |
| --- a/include/acpi/platform/acintel.h |
| +++ b/include/acpi/platform/acintel.h |
| @@ -48,7 +48,9 @@ |
| * Use compiler specific <stdarg.h> is a good practice for even when |
| * -nostdinc is specified (i.e., ACPI_USE_STANDARD_HEADERS undefined. |
| */ |
| +#ifndef va_arg |
| #include <stdarg.h> |
| +#endif |
| |
| /* Configuration specific to Intel 64-bit C compiler */ |
| |