From eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 Mon Sep 17 00:00:00 2001 From: Dave Cobbley Date: Tue, 14 Aug 2018 10:05:37 -0700 Subject: [Subtree] Removing import-layers directory As part of the move to subtrees, need to bring all the import layers content to the top level. Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f Signed-off-by: Dave Cobbley Signed-off-by: Brad Bishop --- .../recipes-extended/acpica/acpica_20170303.bb | 53 ++++++++++++++++ ...Linux-add-support-for-X32-ABI-compilation.patch | 31 ++++++++++ .../files/manipulate-fds-instead-of-FILE.patch | 72 ++++++++++++++++++++++ .../files/rename-yy_scan_string-manually.patch | 64 +++++++++++++++++++ 4 files changed, 220 insertions(+) create mode 100644 poky/meta/recipes-extended/acpica/acpica_20170303.bb create mode 100644 poky/meta/recipes-extended/acpica/files/0001-Linux-add-support-for-X32-ABI-compilation.patch create mode 100644 poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch create mode 100644 poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch (limited to 'poky/meta/recipes-extended/acpica') diff --git a/poky/meta/recipes-extended/acpica/acpica_20170303.bb b/poky/meta/recipes-extended/acpica/acpica_20170303.bb new file mode 100644 index 0000000000..51ae77b784 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/acpica_20170303.bb @@ -0,0 +1,53 @@ +SUMMARY = "ACPICA tools for the development and debug of ACPI tables" +DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ +OS-independent reference implementation of the Advanced Configuration and \ +Power Interface Specification (ACPI). ACPICA code contains those portions of \ +ACPI meant to be directly integrated into the host OS as a kernel-resident \ +subsystem, and a small set of tools to assist in developing and debugging \ +ACPI tables." + +HOMEPAGE = "http://www.acpica.org/" +SECTION = "console/tools" + +LICENSE = "BSD | GPLv2" +LIC_FILES_CHKSUM = "file://generate/unix/readme.txt;md5=204407e197c1a01154a48f6c6280c3aa" + +COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" + +DEPENDS = "bison flex" + +SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz \ + file://rename-yy_scan_string-manually.patch \ + file://manipulate-fds-instead-of-FILE.patch;striplevel=2 \ + file://0001-Linux-add-support-for-X32-ABI-compilation.patch \ + " +SRC_URI[md5sum] = "48ef4314fb4ffdd0c96f14dcf20544e1" +SRC_URI[sha256sum] = "b2d81e84107ac9a02be86ea43cbea7afa8fd4b4150270bc88c2d4c9fea0b8aad" +UPSTREAM_CHECK_URI = "https://acpica.org/downloads" + +S = "${WORKDIR}/acpica-unix2-${PV}" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "acpixtract" + +EXTRA_OEMAKE = "CC='${CC}' 'OPT_CFLAGS=-Wall'" + +do_install() { + install -D -p -m0755 generate/unix/bin*/iasl ${D}${bindir}/iasl + install -D -p -m0755 generate/unix/bin*/acpibin ${D}${bindir}/acpibin + install -D -p -m0755 generate/unix/bin*/acpiexec ${D}${bindir}/acpiexec + install -D -p -m0755 generate/unix/bin*/acpihelp ${D}${bindir}/acpihelp + install -D -p -m0755 generate/unix/bin*/acpinames ${D}${bindir}/acpinames + install -D -p -m0755 generate/unix/bin*/acpisrc ${D}${bindir}/acpisrc + install -D -p -m0755 generate/unix/bin*/acpixtract ${D}${bindir}/acpixtract +} + +# iasl*.bb is a subset of this recipe, so RREPLACE it +PROVIDES = "iasl" +RPROVIDES_${PN} += "iasl" +RREPLACES_${PN} += "iasl" +RCONFLICTS_${PN} += "iasl" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/acpica/files/0001-Linux-add-support-for-X32-ABI-compilation.patch b/poky/meta/recipes-extended/acpica/files/0001-Linux-add-support-for-X32-ABI-compilation.patch new file mode 100644 index 0000000000..df74200068 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/files/0001-Linux-add-support-for-X32-ABI-compilation.patch @@ -0,0 +1,31 @@ +From d22241efc0708c9799f17a20eabb52a48d6d6ea1 Mon Sep 17 00:00:00 2001 +From: Anuj Mittal +Date: Tue, 2 Jan 2018 12:35:32 +0800 +Subject: [PATCH] Linux: add support for X32 ABI compilation + +X32 follows ILP32 model. Check for ILP32 as well when checking for +x86_64 to ensure the defines are correct for X32 ABI. + +Upstream-Status: Submitted [https://github.com/acpica/acpica/pull/348] + +Signed-off-by: Anuj Mittal +--- + source/include/platform/aclinux.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/source/include/platform/aclinux.h b/source/include/platform/aclinux.h +index 75b1d82..6b8ff73 100644 +--- a/source/include/platform/aclinux.h ++++ b/source/include/platform/aclinux.h +@@ -315,7 +315,7 @@ + #define ACPI_FLUSH_CPU_CACHE() + #define ACPI_CAST_PTHREAD_T(Pthread) ((ACPI_THREAD_ID) (Pthread)) + +-#if defined(__ia64__) || defined(__x86_64__) ||\ ++#if defined(__ia64__) || (defined(__x86_64__) && !defined(__ILP32__)) ||\ + defined(__aarch64__) || defined(__PPC64__) ||\ + defined(__s390x__) + #define ACPI_MACHINE_WIDTH 64 +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch b/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch new file mode 100644 index 0000000000..5610ed9beb --- /dev/null +++ b/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch @@ -0,0 +1,72 @@ +From 69171c22f3872ecb4c1ab27985e93ca44084595e Mon Sep 17 00:00:00 2001 +From: Fan Xin +Date: Mon, 5 Jun 2017 13:26:38 +0900 +Subject: [PATCH] aslfiles.c: manipulate fds instead of FILE + +Copying what stdout/stderr point to is not portable and fails with +musl because FILE is an undefined struct. + +Instead, use lower-level Unix functions to modify the file that stderr +writes into. This works on the platforms that Yocto targets. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Patrick Ohly + +Rebase on acpica 20170303 + +Signed-off-by: Fan Xin +--- + acpica-unix2-20170303/source/compiler/aslfiles.c | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/acpica-unix2-20170303/source/compiler/aslfiles.c b/acpica-unix2-20170303/source/compiler/aslfiles.c +index 809090c..97898b1 100644 +--- a/acpica-unix2-20170303/source/compiler/aslfiles.c ++++ b/acpica-unix2-20170303/source/compiler/aslfiles.c +@@ -44,6 +44,10 @@ + #include "aslcompiler.h" + #include "acapps.h" + #include "dtcompiler.h" ++#include ++#include ++#include ++#include + + #define _COMPONENT ACPI_COMPILER + ACPI_MODULE_NAME ("aslfiles") +@@ -607,6 +611,8 @@ FlOpenMiscOutputFiles ( + + if (Gbl_DebugFlag) + { ++ int fd; ++ + Filename = FlGenerateFilename (FilenamePrefix, FILE_SUFFIX_DEBUG); + if (!Filename) + { +@@ -618,10 +624,10 @@ FlOpenMiscOutputFiles ( + /* Open the debug file as STDERR, text mode */ + + Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Filename = Filename; +- Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle = +- freopen (Filename, "w+t", stderr); + +- if (!Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle) ++ fd = open(Filename, O_CREAT|O_TRUNC, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH); ++ if (fd < 0 || ++ dup2(fd, fileno(stderr))) + { + /* + * A problem with freopen is that on error, we no longer +@@ -635,6 +641,8 @@ FlOpenMiscOutputFiles ( + exit (1); + } + ++ Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle = stderr; ++ + AslCompilerSignon (ASL_FILE_DEBUG_OUTPUT); + AslCompilerFileHeader (ASL_FILE_DEBUG_OUTPUT); + } +-- +1.9.1 + diff --git a/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch b/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch new file mode 100644 index 0000000000..b62ca25ba2 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch @@ -0,0 +1,64 @@ +From 2ab61e6ad5a9cfcde838379bc36babfaaa61afb8 Mon Sep 17 00:00:00 2001 +From: Patrick Ohly +Date: Fri, 20 Jan 2017 13:50:17 +0100 +Subject: [PATCH] rename yy_scan_string manually + +flex 2.6.0 used to generate code where yy_scan_string was mapped +to _scan_string directly in the generated .c code. + +For example, generate/unix/iasl/obj/prparserlex.c: + +int +PrInitLexer ( + char *String) +{ + + LexBuffer = PrParser_scan_string (String); + return (LexBuffer == NULL); +} + +flex 2.6.3 no longer does that, leading to a compiler warning +and link error about yy_scan_string(). + +Both versions generate a preamble in the beginning of prparserlex.c +that maps several yy_* names, but yy_scan_string is not among those: + +... +... + +Upstream-Status: Inappropriate [workaround for https://github.com/westes/flex/issues/164] +Signed-off-by: Patrick Ohly +--- + source/compiler/dtparser.l | 2 +- + source/compiler/prparser.l | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/source/compiler/dtparser.l b/source/compiler/dtparser.l +index 3f4c2f3..eaa43ff 100644 +--- a/source/compiler/dtparser.l ++++ b/source/compiler/dtparser.l +@@ -120,7 +120,7 @@ DtInitLexer ( + char *String) + { + +- LexBuffer = yy_scan_string (String); ++ LexBuffer = DtParser_scan_string (String); + return (LexBuffer == NULL); + } + +diff --git a/source/compiler/prparser.l b/source/compiler/prparser.l +index 10bd130..9cb3573 100644 +--- a/source/compiler/prparser.l ++++ b/source/compiler/prparser.l +@@ -127,7 +127,7 @@ PrInitLexer ( + char *String) + { + +- LexBuffer = yy_scan_string (String); ++ LexBuffer = PrParser_scan_string (String); + return (LexBuffer == NULL); + } + +-- +2.11.0 + -- cgit v1.2.3