packages/utils/acpica-unix/patches/0002-Linux-non-kernel-Use-use-uintptr_t-for-ACPI_UINTPTR_.patch
Florian Eckert 106330213f acpica-unix: backport pending patches to fix gcc12 build issue
Due to the compiler change of openwrt, from gcc version 11 to gcc
version 12, we have now the following build errors.

../../../source/components/utilities/utdebug.c: In function
'AcpiUtInitStackPtrTrace':
../../../source/components/utilities/utdebug.c:188:31: error: storing
the address of local variable 'CurrentSp' in 'AcpiGbl_EntryStackPointer'
[-Werror=dangling-pointer=]
  188 |     AcpiGbl_EntryStackPointer = &CurrentSp;
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
../../../source/components/utilities/utdebug.c:185:29: note: 'CurrentSp'
declared here
  185 |     ACPI_SIZE               CurrentSp;
      |                             ^~~~~~~~~
In file included from ../../../source/include/acpi.h:173,
                 from
../../../source/components/utilities/utdebug.c:154:
../../../source/include/acglobal.h:335:41: note:
'AcpiGbl_EntryStackPointer' declared here
  335 | ACPI_GLOBAL (ACPI_SIZE *,
      AcpiGbl_EntryStackPointer);
      |
^~~~~~~~~~~~~~~~~~~~~~~~~
../../../source/include/acpixf.h:188:17: note: in definition of macro
'ACPI_GLOBAL'
  188 |     extern type name
      |                 ^~~~
cc1: all warnings being treated as errors
make[4]: *** [../Makefile.rules:20: obj/utdebug.o] Error 1

This is already issue opend in the the upstream project acpica.
https://github.com/acpica/acpica/issues/771

There is already a fix available, but it has not yet been merged.
https://github.com/acpica/acpica/pull/776

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2023-01-10 10:11:56 +01:00

37 lines
1,020 B
Diff

From 6b7a78c41c04772a30923c8c0ba71770d55ac815 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
Date: Sat, 21 May 2022 12:17:14 +0200
Subject: [PATCH 2/3] Linux non-kernel: Use use uintptr_t for ACPI_UINTPTR_T
---
source/include/platform/aclinux.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- a/source/include/platform/aclinux.h
+++ b/source/include/platform/aclinux.h
@@ -168,6 +168,8 @@
#define ACPI_USE_DO_WHILE_0
#define ACPI_IGNORE_PACKAGE_RESOLUTION_ERRORS
+#define ACPI_UINTPTR_T uintptr_t
+
#ifdef __KERNEL__
@@ -252,8 +254,6 @@
#define ACPI_SPINLOCK spinlock_t *
#define ACPI_CPU_FLAGS unsigned long
-#define ACPI_UINTPTR_T uintptr_t
-
#define ACPI_TO_INTEGER(p) ((uintptr_t)(p))
#define ACPI_OFFSET(d, f) offsetof(d, f)
@@ -311,6 +311,7 @@
#ifdef ACPI_USE_STANDARD_HEADERS
#include <unistd.h>
+#include <stdint.h>
#endif
/* Define/disable kernel-specific declarators */