From patchwork Thu Jul 13 07:41:52 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 107556 Delivered-To: patch@linaro.org Received: by 10.140.101.44 with SMTP id t41csp1877076qge; Thu, 13 Jul 2017 00:42:24 -0700 (PDT) X-Received: by 10.99.95.6 with SMTP id t6mr7764026pgb.141.1499931744224; Thu, 13 Jul 2017 00:42:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499931744; cv=none; d=google.com; s=arc-20160816; b=IiFG8aHzKaUO4PF25ufwV4DxGIYhhBTe/e0miIvW3WXz9cuo3oYG84sRpg0Zl0UP2w 6E7UrH7m+AgPTtGq++eT/zcN2fXxYwOJnYnVREXgt6X61BYsgCc7yjAvAKtagmhWe8ox GxloO9No9EgYRRvmeyXVc+v5jzahM2QnS9PE23owXIeILoQ0sQ3ZmLCc0wgi8rtj8FCb ylnFI7hXdoCz3EAgnWWyM57jY5aguKLcl1JV5L2TwicGYchwoY5jYPP8eghRumct1l+p w7EHVPWuofvYVcKVUUIrC6ThL9qNR+OW2hpiXakIWLGDOnnqktrlG2Z0FExoKdp0t1ND C3ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:dkim-signature :delivered-to:arc-authentication-results; bh=KTFWQ2wPCJ+HaowD/zp5E3BLXcNHhrMN9DTgvxMSMek=; b=tGoi8RelZOEfq0DIw0TgA9hD6Vx7nqlxFlvXJK3hP6qAZy1eKf08PMqfSZzeJoApSP Pr1c26wMo3NbYakAEX+zcR70JAFzVdcxAHTJEH7y7RXJnlpPxpcrRPPI3Wcd8zbEh+E3 baepZZzI80gCHv1U3OWx+xpGfgmkmuT86DQ9zqZnW7Hbymn/xoarX6sMpnRWnjs+GGBC 98atX3+Ubu4QuNLihgo7WZWb4UevwCBZ114ftly10uOpwNRhxXf9lynW/KreagqZVIe3 lUWloYFEeOL9Mh3n8ExDqPbQJzhCO4LfOFaCkJD8IfjywYgd3HaB9/1dmTCLWJ73xs0H f1pw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=nvRvU/Lb; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id y23si4026368pli.396.2017.07.13.00.42.23; Thu, 13 Jul 2017 00:42:24 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=nvRvU/Lb; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from review.yoctoproject.org (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id C50046FEFA; Thu, 13 Jul 2017 07:42:10 +0000 (UTC) X-Original-To: openembedded-devel@lists.openembedded.org Delivered-To: openembedded-devel@lists.openembedded.org Received: from mail-pf0-f196.google.com (mail-pf0-f196.google.com [209.85.192.196]) by mail.openembedded.org (Postfix) with ESMTP id 4A4C86FEFA for ; Thu, 13 Jul 2017 07:42:08 +0000 (UTC) Received: by mail-pf0-f196.google.com with SMTP id z6so6238979pfk.3 for ; Thu, 13 Jul 2017 00:42:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Z3VGMDXKi+tjzwx5gwmDKDyVJsgar3Zs7P69s6U58ag=; b=nvRvU/LbbTiAaGSToDwRV8R8DCLap0N1z7BJtATLm0bBCVwTeX02fuPtgThb47jzZI zGyVaNyyHZw3Nw0qafcR0xss0upgSz5THUJZ1vU9iLtJqWxQ5S8yVQIcKv0C3g0XTd9J aVJkUVizwoZu6IKEgLaliZpehxGT1Wul0utdkVRAsYS6aNTgw6QdYhYT1U97QkOUpN9U jTsz6xrDSr2JgcF7AkwrjQDmE7ZkUi1W/7qH56DUiA4l/YRxG1vRkMb7LPaOdx+iy+lD rzsZEp6zpO2fI5hmT4UIAV/o44hUvcVbQejCyeEzLD/dH3XAoRTpvht+TmmdTGgmwpMH xMuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Z3VGMDXKi+tjzwx5gwmDKDyVJsgar3Zs7P69s6U58ag=; b=AjrJlCz9SLjUGP3dmyXc+XyaT3EFz2hYykiCDs+I5t6fC9cvC4zNbIMMd8quyEB/3e sOJPtXsqTyxLZ/uC5tZG4YgEgXWOUKzoZmmh+kcYoMW47q6QvPTZxmOBlq7dlO0dPvsS BwzkDxrzjRMYaVVi/96QubleHYBvAt1Iu6QHP21m1xKVfqvzm0Ols5/x90OoKreFCUrg V3zTFzNexRt2bEY0Dke19mZnA9qQtwFK/3rukRx8s/gAPLG5P6z15u6bX49LFzFWuchV yjfu8ZFschQ00/Yhv+3YIYH3uCn4YuI20JgMev7wlbjV04+qshj4sSNw/oWoBU5/yAEw bZxA== X-Gm-Message-State: AIVw112XIR4xpTbrplF4p5jfbz4m24SwZi/hcroNii+Khrlp8FeCS/Ui klAYtne3WcpxywKD X-Received: by 10.84.133.226 with SMTP id f89mr8502941plf.11.1499931728591; Thu, 13 Jul 2017 00:42:08 -0700 (PDT) Received: from localhost.localdomain ([2601:646:8882:b8c::7028]) by smtp.gmail.com with ESMTPSA id z6sm11473952pff.46.2017.07.13.00.42.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Jul 2017 00:42:07 -0700 (PDT) From: Khem Raj To: openembedded-devel@lists.openembedded.org Date: Thu, 13 Jul 2017 00:41:52 -0700 Message-Id: <20170713074154.10606-1-raj.khem@gmail.com> X-Mailer: git-send-email 2.13.2 Subject: [oe] [meta-qt5][PATCH 1/3] qtwebengine: Fix build on musl X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: openembedded-devel-bounces@lists.openembedded.org Errors-To: openembedded-devel-bounces@lists.openembedded.org import needed chromium patches from meta-browser Signed-off-by: Khem Raj --- ...-Define-TEMP_FAILURE_RETRY-if-not-defined.patch | 35 ++++++++++ ...03-Avoid-mallinfo-APIs-on-non-glibc-linux.patch | 48 +++++++++++++ .../0004-include-fcntl.h-for-loff_t.patch | 25 +++++++ ...off64_t-instead-of-the-internal-__off64_t.patch | 65 +++++++++++++++++ .../0006-linux-glibc-make-the-distinction.patch | 26 +++++++ ...o-not-include-glibc_weak_symbols-for-musl.patch | 26 +++++++ ...-member-name-__si_fields-from-LinuxSigInf.patch | 26 +++++++ .../0009-Match-syscalls-to-match-musl.patch | 47 +++++++++++++ ...ninit-and-res_nclose-for-non-glibc-platfo.patch | 81 ++++++++++++++++++++++ .../0011-Do-not-define-__sbrk-on-musl.patch | 29 ++++++++ .../0012-Adjust-default-pthread-stack-size.patch | 51 ++++++++++++++ ...3-include-asm-generic-ioctl.h-for-TCGETS2.patch | 25 +++++++ .../0014-link-with-libexecinfo-on-musl.patch | 25 +++++++ ...tcmalloc-Use-off64_t-insread-of-__off64_t.patch | 26 +++++++ recipes-qt/qt5/qtwebengine_git.bb | 31 ++++++++- 15 files changed, 565 insertions(+), 1 deletion(-) create mode 100644 recipes-qt/qt5/qtwebengine/0001-sandbox-Define-TEMP_FAILURE_RETRY-if-not-defined.patch create mode 100644 recipes-qt/qt5/qtwebengine/0003-Avoid-mallinfo-APIs-on-non-glibc-linux.patch create mode 100644 recipes-qt/qt5/qtwebengine/0004-include-fcntl.h-for-loff_t.patch create mode 100644 recipes-qt/qt5/qtwebengine/0005-use-off64_t-instead-of-the-internal-__off64_t.patch create mode 100644 recipes-qt/qt5/qtwebengine/0006-linux-glibc-make-the-distinction.patch create mode 100644 recipes-qt/qt5/qtwebengine/0007-allocator-Do-not-include-glibc_weak_symbols-for-musl.patch create mode 100644 recipes-qt/qt5/qtwebengine/0008-Use-correct-member-name-__si_fields-from-LinuxSigInf.patch create mode 100644 recipes-qt/qt5/qtwebengine/0009-Match-syscalls-to-match-musl.patch create mode 100644 recipes-qt/qt5/qtwebengine/0010-Define-res_ninit-and-res_nclose-for-non-glibc-platfo.patch create mode 100644 recipes-qt/qt5/qtwebengine/0011-Do-not-define-__sbrk-on-musl.patch create mode 100644 recipes-qt/qt5/qtwebengine/0012-Adjust-default-pthread-stack-size.patch create mode 100644 recipes-qt/qt5/qtwebengine/0013-include-asm-generic-ioctl.h-for-TCGETS2.patch create mode 100644 recipes-qt/qt5/qtwebengine/0014-link-with-libexecinfo-on-musl.patch create mode 100644 recipes-qt/qt5/qtwebengine/0018-tcmalloc-Use-off64_t-insread-of-__off64_t.patch -- 2.13.2 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel diff --git a/recipes-qt/qt5/qtwebengine/0001-sandbox-Define-TEMP_FAILURE_RETRY-if-not-defined.patch b/recipes-qt/qt5/qtwebengine/0001-sandbox-Define-TEMP_FAILURE_RETRY-if-not-defined.patch new file mode 100644 index 0000000..c56cfc7 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0001-sandbox-Define-TEMP_FAILURE_RETRY-if-not-defined.patch @@ -0,0 +1,35 @@ +From 89d6283c91f2229cc51f473eed344de97d09e946 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:01:12 -0700 +Subject: [PATCH 01/12] sandbox: Define TEMP_FAILURE_RETRY if not defined + +Musl does not define this Macro + +Signed-off-by: Khem Raj +--- + sandbox/linux/suid/sandbox.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/sandbox/linux/suid/sandbox.c b/sandbox/linux/suid/sandbox.c +index b655d1c79..3de34e36f 100644 +--- a/sandbox/linux/suid/sandbox.c ++++ b/sandbox/linux/suid/sandbox.c +@@ -44,6 +44,15 @@ static bool DropRoot(); + + #define HANDLE_EINTR(x) TEMP_FAILURE_RETRY(x) + ++#ifndef TEMP_FAILURE_RETRY ++# define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif ++ + static void FatalError(const char* msg, ...) + __attribute__((noreturn, format(printf, 1, 2))); + +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0003-Avoid-mallinfo-APIs-on-non-glibc-linux.patch b/recipes-qt/qt5/qtwebengine/0003-Avoid-mallinfo-APIs-on-non-glibc-linux.patch new file mode 100644 index 0000000..2e0b1f0 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0003-Avoid-mallinfo-APIs-on-non-glibc-linux.patch @@ -0,0 +1,48 @@ +From 8defe37306b0d1548592afc12baa45f4aec5375c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:09:06 -0700 +Subject: [PATCH 03/12] Avoid mallinfo() APIs on non-glibc/linux + +Signed-off-by: Khem Raj +--- + base/trace_event/malloc_dump_provider.cc | 3 ++- + content/child/content_child_helpers.cc | 2 +- + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/base/trace_event/malloc_dump_provider.cc b/base/trace_event/malloc_dump_provider.cc +index 3b1a933bc..a554d0373 100644 +--- a/base/trace_event/malloc_dump_provider.cc ++++ b/base/trace_event/malloc_dump_provider.cc +@@ -103,6 +103,7 @@ MallocDumpProvider::~MallocDumpProvider() {} + // the current process. + bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + ProcessMemoryDump* pmd) { ++#if defined(__GLIBC__) + size_t total_virtual_size = 0; + size_t resident_size = 0; + size_t allocated_objects_size = 0; +@@ -195,7 +196,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args, + pmd->DumpHeapUsage(metrics_by_context, overhead, "malloc"); + } + tid_dumping_heap_ = kInvalidThreadId; +- ++#endif // __GLIBC__ + return true; + } + +diff --git a/content/child/content_child_helpers.cc b/content/child/content_child_helpers.cc +index 7ddeb4d16..b8c73b09c 100644 +--- a/content/child/content_child_helpers.cc ++++ b/content/child/content_child_helpers.cc +@@ -25,7 +25,7 @@ namespace content { + // though, this provides only a partial and misleading value. + // Unfortunately some telemetry benchmark rely on it and these need to + // be refactored before getting rid of this. See crbug.com/581365 . +-#if defined(OS_LINUX) || defined(OS_ANDROID) ++#if defined(__GLIBC__) || defined(OS_ANDROID) + size_t GetMemoryUsageKB() { + struct mallinfo minfo = mallinfo(); + uint64_t mem_usage = +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0004-include-fcntl.h-for-loff_t.patch b/recipes-qt/qt5/qtwebengine/0004-include-fcntl.h-for-loff_t.patch new file mode 100644 index 0000000..da8503b --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0004-include-fcntl.h-for-loff_t.patch @@ -0,0 +1,25 @@ +From a0b40dcdfb3331d2b8351bdfb27f1ba3e8a2c33c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:37:49 -0700 +Subject: [PATCH 04/12] include fcntl.h for loff_t + +Signed-off-by: Khem Raj +--- + third_party/tcmalloc/chromium/src/base/linux_syscall_support.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h b/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +index bdbc4b7e3..b53dd46c5 100644 +--- a/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h ++++ b/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +@@ -151,6 +151,7 @@ extern "C" { + #include + #include + #include ++#include + #include + #include + #include +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0005-use-off64_t-instead-of-the-internal-__off64_t.patch b/recipes-qt/qt5/qtwebengine/0005-use-off64_t-instead-of-the-internal-__off64_t.patch new file mode 100644 index 0000000..d552a34 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0005-use-off64_t-instead-of-the-internal-__off64_t.patch @@ -0,0 +1,65 @@ +From badea43b85346525b7c43c38c32d150b7eb85b13 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:38:37 -0700 +Subject: [PATCH 05/12] use off64_t instead of the internal __off64_t + +- only do the glibc 32-bit ABI check for mmap/mmap64 on gnu libc. musl + does not support the 32-bit ABI. + +Signed-off-by: Khem Raj +--- + third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +index 715c045f6..edc8cf2db 100644 +--- a/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h ++++ b/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +@@ -77,7 +77,7 @@ typedef off64_t __off64_t; + + static inline void* do_mmap64(void *start, size_t length, + int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + // The original gperftools uses sys_mmap() here. But, it is not allowed by + // Chromium's sandbox. + return (void *)syscall(SYS_mmap, start, length, prot, flags, fd, offset); +@@ -90,7 +90,7 @@ static inline void* do_mmap64(void *start, size_t length, + + static inline void* do_mmap64(void *start, size_t length, + int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + void *result; + + // Try mmap2() unless it's not supported +@@ -161,7 +161,7 @@ static inline void* do_mmap64(void *start, size_t length, + + extern "C" { + void* mmap64(void *start, size_t length, int prot, int flags, +- int fd, __off64_t offset ) __THROW ++ int fd, off64_t offset ) __THROW + ATTRIBUTE_SECTION(malloc_hook); + void* mmap(void *start, size_t length,int prot, int flags, + int fd, off_t offset) __THROW +@@ -178,7 +178,7 @@ extern "C" { + } + + extern "C" void* mmap64(void *start, size_t length, int prot, int flags, +- int fd, __off64_t offset) __THROW { ++ int fd, off64_t offset) __THROW { + MallocHook::InvokePreMmapHook(start, length, prot, flags, fd, offset); + void *result; + if (!MallocHook::InvokeMmapReplacement( +@@ -189,7 +189,7 @@ extern "C" void* mmap64(void *start, size_t length, int prot, int flags, + return result; + } + +-# if !defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH) ++# if defined(__GLIBC__) && (!defined(__USE_FILE_OFFSET64) || !defined(__REDIRECT_NTH)) + + extern "C" void* mmap(void *start, size_t length, int prot, int flags, + int fd, off_t offset) __THROW { +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0006-linux-glibc-make-the-distinction.patch b/recipes-qt/qt5/qtwebengine/0006-linux-glibc-make-the-distinction.patch new file mode 100644 index 0000000..257d873 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0006-linux-glibc-make-the-distinction.patch @@ -0,0 +1,26 @@ +From 4913850cd644e1fd44ecade5e9faa460de35a7d6 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 14:54:38 -0700 +Subject: [PATCH 06/12] linux != glibc, make the distinction + +Signed-off-by: Khem Raj +--- + base/allocator/allocator_check.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/base/allocator/allocator_check.cc b/base/allocator/allocator_check.cc +index 5a0564d2f..8c2dc6491 100644 +--- a/base/allocator/allocator_check.cc ++++ b/base/allocator/allocator_check.cc +@@ -21,7 +21,7 @@ bool IsAllocatorInitialized() { + #if defined(OS_WIN) && defined(ALLOCATOR_SHIM) + // Set by allocator_shim_win.cc when the shimmed _set_new_mode() is called. + return g_is_win_shim_layer_initialized; +-#elif defined(OS_LINUX) && defined(USE_TCMALLOC) && \ ++#elif defined(__GLIBC__) && defined(USE_TCMALLOC) && \ + !defined(MEMORY_TOOL_REPLACES_ALLOCATOR) + // From third_party/tcmalloc/chromium/src/gperftools/tcmalloc.h. + // TODO(primiano): replace with an include once base can depend on allocator. +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0007-allocator-Do-not-include-glibc_weak_symbols-for-musl.patch b/recipes-qt/qt5/qtwebengine/0007-allocator-Do-not-include-glibc_weak_symbols-for-musl.patch new file mode 100644 index 0000000..b999c59 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0007-allocator-Do-not-include-glibc_weak_symbols-for-musl.patch @@ -0,0 +1,26 @@ +From 482e77e9562b8a158b5b212e9f1c83c697fed2e2 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:09:02 -0700 +Subject: [PATCH 07/12] allocator: Do not include glibc_weak_symbols for musl + +Signed-off-by: Khem Raj +--- + base/allocator/allocator_shim.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/base/allocator/allocator_shim.cc b/base/allocator/allocator_shim.cc +index 57a398aaa..54c79063a 100644 +--- a/base/allocator/allocator_shim.cc ++++ b/base/allocator/allocator_shim.cc +@@ -263,7 +263,7 @@ void ShimFree(void* address) { + // In the case of tcmalloc we also want to plumb into the glibc hooks + // to avoid that allocations made in glibc itself (e.g., strdup()) get + // accidentally performed on the glibc heap instead of the tcmalloc one. +-#if defined(USE_TCMALLOC) ++#if defined(USE_TCMALLOC) && defined(__GLIBC__) + #include "base/allocator/allocator_shim_override_glibc_weak_symbols.h" + #endif + +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0008-Use-correct-member-name-__si_fields-from-LinuxSigInf.patch b/recipes-qt/qt5/qtwebengine/0008-Use-correct-member-name-__si_fields-from-LinuxSigInf.patch new file mode 100644 index 0000000..3bd0a9d --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0008-Use-correct-member-name-__si_fields-from-LinuxSigInf.patch @@ -0,0 +1,26 @@ +From 3d12eb821e105111cbd88f5598746bd77c3a9ef0 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:12:39 -0700 +Subject: [PATCH 08/12] Use correct member name __si_fields from LinuxSigInfo + +Signed-off-by: Khem Raj +--- + sandbox/linux/seccomp-bpf/trap.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc +index 003708d2c..0fef3148f 100644 +--- a/sandbox/linux/seccomp-bpf/trap.cc ++++ b/sandbox/linux/seccomp-bpf/trap.cc +@@ -168,7 +168,7 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) { + // most versions of glibc don't include this information in siginfo_t. So, + // we need to explicitly copy it into a arch_sigsys structure. + struct arch_sigsys sigsys; +- memcpy(&sigsys, &info->_sifields, sizeof(sigsys)); ++ memcpy(&sigsys, &info->__si_fields, sizeof(sigsys)); + + #if defined(__mips__) + // When indirect syscall (syscall(__NR_foo, ...)) is made on Mips, the +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0009-Match-syscalls-to-match-musl.patch b/recipes-qt/qt5/qtwebengine/0009-Match-syscalls-to-match-musl.patch new file mode 100644 index 0000000..bfb6ebb --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0009-Match-syscalls-to-match-musl.patch @@ -0,0 +1,47 @@ +From 5843df01580b0fb956ee4b7e1a60c0130c8c90f9 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:24:49 -0700 +Subject: [PATCH 09/12] Match syscalls to match musl + +Signed-off-by: Khem Raj +--- + third_party/lss/linux_syscall_support.h | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/third_party/lss/linux_syscall_support.h b/third_party/lss/linux_syscall_support.h +index 9dbd2391b..a715de177 100644 +--- a/third_party/lss/linux_syscall_support.h ++++ b/third_party/lss/linux_syscall_support.h +@@ -793,6 +793,14 @@ struct kernel_statfs { + #endif + + ++#undef stat64 ++#undef fstat64 ++ ++#ifndef __NR_fstatat ++#define __NR_fstatat __NR_fstatat64 ++#endif ++ ++ + #if defined(__x86_64__) + #ifndef ARCH_SET_GS + #define ARCH_SET_GS 0x1001 +@@ -1210,6 +1218,14 @@ struct kernel_statfs { + #ifndef __NR_fallocate + #define __NR_fallocate 285 + #endif ++ ++#ifndef __NR_pread ++#define __NR_pread __NR_pread64 ++#endif ++#ifndef __NR_pwrite ++#define __NR_pwrite __NR_pwrite64 ++#endif ++ + /* End of x86-64 definitions */ + #elif defined(__mips__) + #if _MIPS_SIM == _MIPS_SIM_ABI32 +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0010-Define-res_ninit-and-res_nclose-for-non-glibc-platfo.patch b/recipes-qt/qt5/qtwebengine/0010-Define-res_ninit-and-res_nclose-for-non-glibc-platfo.patch new file mode 100644 index 0000000..1825ed7 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0010-Define-res_ninit-and-res_nclose-for-non-glibc-platfo.patch @@ -0,0 +1,81 @@ +From df3fd62f7f0c51c11e7f715c2523418c31eb6b0f Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:27:50 -0700 +Subject: [PATCH 10/12] Define res_ninit and res_nclose for non-glibc platforms + +Signed-off-by: Khem Raj +--- + net/dns/dns_config_service_posix.cc | 4 ++++ + net/dns/dns_reloader.cc | 4 ++++ + net/dns/resolv_compat.h | 29 +++++++++++++++++++++++++++++ + 3 files changed, 37 insertions(+) + create mode 100644 net/dns/resolv_compat.h + +diff --git a/net/dns/dns_config_service_posix.cc b/net/dns/dns_config_service_posix.cc +index ba8a36913..e9b40d07f 100644 +--- a/net/dns/dns_config_service_posix.cc ++++ b/net/dns/dns_config_service_posix.cc +@@ -25,6 +25,10 @@ + #include "net/dns/notify_watcher_mac.h" + #include "net/dns/serial_worker.h" + ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif ++ + #if defined(OS_MACOSX) && !defined(OS_IOS) + #include "net/dns/dns_config_watcher_mac.h" + #endif +diff --git a/net/dns/dns_reloader.cc b/net/dns/dns_reloader.cc +index 74534e6b1..2780a776e 100644 +--- a/net/dns/dns_reloader.cc ++++ b/net/dns/dns_reloader.cc +@@ -9,6 +9,10 @@ + + #include + ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif ++ + #include "base/lazy_instance.h" + #include "base/logging.h" + #include "base/macros.h" +diff --git a/net/dns/resolv_compat.h b/net/dns/resolv_compat.h +new file mode 100644 +index 000000000..4f0e852a1 +--- /dev/null ++++ b/net/dns/resolv_compat.h +@@ -0,0 +1,29 @@ ++#if !defined(__GLIBC__) ++/*************************************************************************** ++ * resolv_compat.h ++ * ++ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc ++ * Note: res_init() is actually deprecated according to ++ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html ++ **************************************************************************/ ++#include ++ ++static inline int res_ninit(res_state statp) ++{ ++ int rc = res_init(); ++ if (statp != &_res) { ++ memcpy(statp, &_res, sizeof(*statp)); ++ } ++ return rc; ++} ++ ++static inline int res_nclose(res_state statp) ++{ ++ if (!statp) ++ return -1; ++ if (statp != &_res) { ++ memset(statp, 0, sizeof(*statp)); ++ } ++ return 0; ++} ++#endif +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0011-Do-not-define-__sbrk-on-musl.patch b/recipes-qt/qt5/qtwebengine/0011-Do-not-define-__sbrk-on-musl.patch new file mode 100644 index 0000000..a2c2b90 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0011-Do-not-define-__sbrk-on-musl.patch @@ -0,0 +1,29 @@ +From 8a6553232988a5bfc8f0c48d4214a3982025fb2c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 15:39:57 -0700 +Subject: [PATCH 11/12] Do not define __sbrk on musl + +musl libc does not have sbrk. on musl libc will only work when called with 0 as +argument, so we just let it out for now + +Signed-off-by: Khem Raj +--- + third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h b/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +index edc8cf2db..a868b50d3 100644 +--- a/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h ++++ b/third_party/tcmalloc/chromium/src/malloc_hook_mmap_linux.h +@@ -233,7 +233,7 @@ extern "C" void* mremap(void* old_addr, size_t old_size, size_t new_size, + } + + // Don't hook sbrk() in Android, since it doesn't expose __sbrk. +-#if !defined(__ANDROID__) ++#if !defined(__ANDROID__) && defined(__GLIBC__) + // libc's version: + extern "C" void* __sbrk(ptrdiff_t increment); + +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0012-Adjust-default-pthread-stack-size.patch b/recipes-qt/qt5/qtwebengine/0012-Adjust-default-pthread-stack-size.patch new file mode 100644 index 0000000..de2ec97 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0012-Adjust-default-pthread-stack-size.patch @@ -0,0 +1,51 @@ +From 65d516f64c1cca91868cb26aeb93802382704fd5 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 16:41:23 -0700 +Subject: [PATCH 1/2] Adjust default pthread stack size + +Signed-off-by: Khem Raj +--- + base/threading/platform_thread_linux.cc | 3 ++- + chrome/browser/chrome_browser_main_posix.cc | 9 +++++++++ + third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp | 4 ++-- + 3 files changed, 13 insertions(+), 3 deletions(-) + +diff --git a/base/threading/platform_thread_linux.cc b/base/threading/platform_thread_linux.cc +index 95ed32418..666e85ba3 100644 +--- a/base/threading/platform_thread_linux.cc ++++ b/base/threading/platform_thread_linux.cc +@@ -96,7 +96,8 @@ void TerminateOnThread() {} + + size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) { + #if !defined(THREAD_SANITIZER) +- return 0; ++ // use 8mb like glibc to avoid running out of space ++ return (1 << 23); + #else + // ThreadSanitizer bloats the stack heavily. Evidence has been that the + // default stack size isn't enough for some browser tests. +diff --git a/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp b/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp +index 3c0a0395b..2af6073e2 100644 +--- a/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp ++++ b/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp +@@ -73,7 +73,7 @@ size_t StackFrameDepth::getUnderestimatedStackSize() + // FIXME: On Mac OSX and Linux, this method cannot estimate stack size + // correctly for the main thread. + +-#if defined(__GLIBC__) || OS(ANDROID) || OS(FREEBSD) ++#if OS(LINUX) || OS(ANDROID) || OS(FREEBSD) + // pthread_getattr_np() can fail if the thread is not invoked by + // pthread_create() (e.g., the main thread of webkit_unit_tests). + // If so, a conservative size estimate is returned. +@@ -135,7 +135,7 @@ size_t StackFrameDepth::getUnderestimatedStackSize() + + void* StackFrameDepth::getStackStart() + { +-#if defined(__GLIBC__) || OS(ANDROID) || OS(FREEBSD) ++#if OS(LINUX) || OS(ANDROID) || OS(FREEBSD) + pthread_attr_t attr; + int error; + #if OS(FREEBSD) +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0013-include-asm-generic-ioctl.h-for-TCGETS2.patch b/recipes-qt/qt5/qtwebengine/0013-include-asm-generic-ioctl.h-for-TCGETS2.patch new file mode 100644 index 0000000..abe2eaf --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0013-include-asm-generic-ioctl.h-for-TCGETS2.patch @@ -0,0 +1,25 @@ +From d5014cf9a97cf97a6e9bb7f751c7cee3c24e17fd Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 17:15:34 -0700 +Subject: [PATCH 1/2] include asm-generic/ioctl.h for TCGETS2 + +Signed-off-by: Khem Raj +--- + device/serial/serial_io_handler_posix.cc | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/device/serial/serial_io_handler_posix.cc b/device/serial/serial_io_handler_posix.cc +index 158c374a0..c08fb4a8e 100644 +--- a/device/serial/serial_io_handler_posix.cc ++++ b/device/serial/serial_io_handler_posix.cc +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + #include "base/posix/eintr_wrapper.h" + #include "build/build_config.h" +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0014-link-with-libexecinfo-on-musl.patch b/recipes-qt/qt5/qtwebengine/0014-link-with-libexecinfo-on-musl.patch new file mode 100644 index 0000000..1b65420 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0014-link-with-libexecinfo-on-musl.patch @@ -0,0 +1,25 @@ +From 4b5aab95e34e1cbebc7566c1267cddc2560601c8 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 17:41:43 -0700 +Subject: [PATCH 2/2] link with libexecinfo on musl + +Signed-off-by: Khem Raj +--- + base/base.gyp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/base/base.gyp b/base/base.gyp +index 67e051ae4..7f5dfe214 100644 +--- a/base/base.gyp ++++ b/base/base.gyp +@@ -126,6 +126,7 @@ + '-lrt', + # For 'native_library_linux.cc' + '-ldl', ++ '-lexecinfo', + ], + }, + 'conditions': [ +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine/0018-tcmalloc-Use-off64_t-insread-of-__off64_t.patch b/recipes-qt/qt5/qtwebengine/0018-tcmalloc-Use-off64_t-insread-of-__off64_t.patch new file mode 100644 index 0000000..2ef5433 --- /dev/null +++ b/recipes-qt/qt5/qtwebengine/0018-tcmalloc-Use-off64_t-insread-of-__off64_t.patch @@ -0,0 +1,26 @@ +From 1a468dd5239ebdf013d9ffb3a2d181d0434b4c6c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 8 Jul 2017 09:08:23 -0700 +Subject: [PATCH 2/2] tcmalloc: Use off64_t insread of __off64_t + +Signed-off-by: Khem Raj +--- + third_party/tcmalloc/chromium/src/base/linux_syscall_support.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h b/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +index b53dd46c5..58da4d19d 100644 +--- a/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h ++++ b/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +@@ -1930,7 +1930,7 @@ typedef unsigned long int ulong; + #if defined(__x86_64__) + /* Need to make sure __off64_t isn't truncated to 32-bits under x32. */ + LSS_INLINE void* LSS_NAME(mmap)(void *s, size_t l, int p, int f, int d, +- __off64_t o) { ++ off64_t o) { + LSS_BODY(6, void*, mmap, LSS_SYSCALL_ARG(s), LSS_SYSCALL_ARG(l), + LSS_SYSCALL_ARG(p), LSS_SYSCALL_ARG(f), + LSS_SYSCALL_ARG(d), (uint64_t)(o)); +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index e319a01..033bdaa 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb @@ -24,7 +24,13 @@ DEPENDS += " \ " DEPENDS += "yasm-native" -EXTRA_QMAKEVARS_PRE += "GYP_CONFIG+=use_system_yasm GYP_CONFIG+=generate_character_data=0" +DEPENDS_append_libc-musl = " libexecinfo" + +EXTRA_QMAKEVARS_PRE += "GYP_CONFIG+=use_system_yasm \ + GYP_CONFIG+=generate_character_data=0 \ + GYP_CONFIG+=use_allocator=none \ + GYP_CONFIG+=use_experimental_allocator_shim=false \ +" # To use system ffmpeg you need to enable also libwebp, opus, vpx # Only depenedencies available in oe-core are enabled by default @@ -88,6 +94,13 @@ do_configure() { -after ${EXTRA_QMAKEVARS_POST} } +do_configure_prepend_libc-musl() { + for f in `find ${S}/src/3rdparty/chromium/third_party/ffmpeg/chromium/config/Chromium/linux/ -name config.h -o -name config.asm`; do + sed -i -e "s:define HAVE_SYSCTL 1:define HAVE_SYSCTL 0:g" $f + done + sed -i -e "s:define HAVE_STRUCT_MALLINFO 1:/*undef HAVE_STRUCT_MALLINFO */:g" ${S}/src/3rdparty/chromium/third_party/tcmalloc/chromium/src/config_linux.h +} + do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+" do_install_append() { @@ -119,6 +132,22 @@ SRC_URI += " \ file://0003-chromium-v8-fix-build-with-gcc7.patch;patchdir=src/3rdparty \ file://0004-chromium-WebKit-fix-build-with-gcc7.patch;patchdir=src/3rdparty \ " +SRC_URI_append_libc-musl = "\ + file://0001-sandbox-Define-TEMP_FAILURE_RETRY-if-not-defined.patch;patchdir=src/3rdparty/chromium \ + file://0003-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty/chromium \ + file://0004-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty/chromium \ + file://0005-use-off64_t-instead-of-the-internal-__off64_t.patch;patchdir=src/3rdparty/chromium \ + file://0006-linux-glibc-make-the-distinction.patch;patchdir=src/3rdparty/chromium \ + file://0007-allocator-Do-not-include-glibc_weak_symbols-for-musl.patch;patchdir=src/3rdparty/chromium \ + file://0008-Use-correct-member-name-__si_fields-from-LinuxSigInf.patch;patchdir=src/3rdparty/chromium \ + file://0009-Match-syscalls-to-match-musl.patch;patchdir=src/3rdparty/chromium \ + file://0010-Define-res_ninit-and-res_nclose-for-non-glibc-platfo.patch;patchdir=src/3rdparty/chromium \ + file://0011-Do-not-define-__sbrk-on-musl.patch;patchdir=src/3rdparty/chromium \ + file://0012-Adjust-default-pthread-stack-size.patch;patchdir=src/3rdparty/chromium \ + file://0013-include-asm-generic-ioctl.h-for-TCGETS2.patch;patchdir=src/3rdparty/chromium \ + file://0014-link-with-libexecinfo-on-musl.patch;patchdir=src/3rdparty/chromium \ + file://0018-tcmalloc-Use-off64_t-insread-of-__off64_t.patch;patchdir=src/3rdparty/chromium \ +" SRCREV_qtwebengine = "d740d6a7dbfec387752c7bc8a8b06db0e757c9dc" SRCREV_chromium = "15d257fd921f37b32ef643225f21df0ea24c8302" From patchwork Thu Jul 13 07:41:53 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 107557 Delivered-To: patch@linaro.org Received: by 10.140.101.44 with SMTP id t41csp1877991qge; Thu, 13 Jul 2017 00:43:27 -0700 (PDT) X-Received: by 10.98.62.70 with SMTP id l67mr60178618pfa.114.1499931807227; Thu, 13 Jul 2017 00:43:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499931807; cv=none; d=google.com; s=arc-20160816; b=Xiyz2HCf+zHss/RsI2zXhbBFq/1pMee4b5leKLUxvUIcu7tAnlLrC8uettGlpzZFUi P8QBQ80FR7f/ig/NjduUlJV0pFKYozQXN4sGPc9m66md5jZXZj8XXAoZoiTSuNKPzekn rvZjd/YAg+ozhPRKHk4NDRzUnMQ9pSQgNZFxF883LgcULBDSw4Yp2P6v0Nj4c0wjpWDr dWFoX3EK1lvUJg2NOuGXRdvzaQuSd2SczKXGpfAR8y1IXr4cvkBVfBr0clS182pjB1s7 NiOyXzJQgpAqzYG42+ZSXNnDxFcTPhVPvS83GoSB8hwio8leiJur4P5Fq8PeAyOhwOVQ 9Lig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=mUW8dkZMenPLkk+8gwkAPYToZJNPQtcqINquqSwrtYw=; b=Yp7WOGDhf/AJJF7EBGbWDgcBi2FBklkh2O/n1Ex9css6azfbid19pJHndsbex8TP5u ehy/W8Yze4xOA/PnXkowOBDiJXxAIC2umu9WlNCOo0bA2/yTMaqlnRB4kSwLPzAyxL2y GoBaEzAkNUnwufAIndcOiHX8uCJdSvq2qZhtTk5X2sAmfTehdsvORma/ZfTrIx5Ds2ty 8z+W/5mXNmIEY0Lbdr6dDrxUxUIzLe8we4V7EtaX5AetsIAEeVCfkDyDu2HLmI4kvLou bYocI6T3CHlT/vJO29DezWuwdHJfS3YH2111GsWwOQShKquD3lOMDh19e55iJ8kBUCeU R48g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=UgHAk59B; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id n1si3847501pld.386.2017.07.13.00.43.26; Thu, 13 Jul 2017 00:43:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=UgHAk59B; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from review.yoctoproject.org (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id A6732781F2; Thu, 13 Jul 2017 07:43:24 +0000 (UTC) X-Original-To: openembedded-devel@lists.openembedded.org Delivered-To: openembedded-devel@lists.openembedded.org Received: from mail-pg0-f67.google.com (mail-pg0-f67.google.com [74.125.83.67]) by mail.openembedded.org (Postfix) with ESMTP id AB6D078191 for ; Thu, 13 Jul 2017 07:42:08 +0000 (UTC) Received: by mail-pg0-f67.google.com with SMTP id j186so5995603pge.1 for ; Thu, 13 Jul 2017 00:42:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=kvGoXCl3R3UbsNt5rMmtju+YCuRKFIdBGb0Clf2W5uE=; b=UgHAk59BR5OaWvVelxqeiSM26oJld4oPa9epcEyDlC+p6ZnYxipe+eupzYENaE0QVy W5eiaTNUq9rMXCWwFOr1vCMt9HopoCEqhceVlBFhnLhmZUyWSZXTleoeVweXkuDFOOxw FBY3bVVwnpuC1Zy6TGH5tvA7ySf1WWGi4fsC6RKvm7+3gWgSdFBbnvMf89GuSH2dWKPv 3wLRsDOwl1IV2pLdHGDfopKeldLuMroEgUEtgmEFvQ3/9hQSU5f14Xs/Vui7UHfV7m0L Kq4mu9ypBqRfhLPBoHKnPKs4ASl2WbX/mjKzyG3cJQFkiSvbPouSZzFX/EKGKAafUXbY 05Uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=kvGoXCl3R3UbsNt5rMmtju+YCuRKFIdBGb0Clf2W5uE=; b=CI2Z6SPnrTQZgccFfuQT6B8e/GcaC+ur2TUXQh7uAEbYBOp5Ug1lYcO2YOm1f5ROYr TDmyUYSetVDg+lhKYiYhIxEx06huOMA68c2K+CDEgiADtLIXMTZLiRznq6gc2pHUTnX4 xO33BOk/MIzi63grEkzfRjRWX8eLaBOhXHRUdzP84xUsx6Yo9TC3X6Np9bN1a18GCJbE zNFG/cBPny+FDHPd+Wk5OyxR8w3h/LqmGYKUUq4zYGfr4RiThj0/Uwv4s/BDBiHqOgqY FceKFR85zps3VERCVLn5rTJwxcylS1x5ZXzKy16mF+fXFcM4Jn1GJVEVzTnJyrYxZeUr wVIw== X-Gm-Message-State: AIVw110kl02nFPpefP7/3SMbBitbpxl8mbRSe20qmkDIsBvK0g5FanxE eLi0uA1ZsfZaBV7H X-Received: by 10.99.96.132 with SMTP id u126mr7795947pgb.121.1499931729918; Thu, 13 Jul 2017 00:42:09 -0700 (PDT) Received: from localhost.localdomain ([2601:646:8882:b8c::7028]) by smtp.gmail.com with ESMTPSA id z6sm11473952pff.46.2017.07.13.00.42.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Jul 2017 00:42:09 -0700 (PDT) From: Khem Raj To: openembedded-devel@lists.openembedded.org Date: Thu, 13 Jul 2017 00:41:53 -0700 Message-Id: <20170713074154.10606-2-raj.khem@gmail.com> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170713074154.10606-1-raj.khem@gmail.com> References: <20170713074154.10606-1-raj.khem@gmail.com> Subject: [oe] [meta-qt5][PATCH 2/3] qtvirtualkeyboard: Include sys/time.h X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: openembedded-devel-bounces@lists.openembedded.org Errors-To: openembedded-devel-bounces@lists.openembedded.org Fixes build on musl Signed-off-by: Khem Raj --- .../0001-include-sys-time.h-for-timeval.patch | 28 ++++++++++++++++++++++ recipes-qt/qt5/qtvirtualkeyboard_git.bb | 1 + 2 files changed, 29 insertions(+) create mode 100644 recipes-qt/qt5/qtvirtualkeyboard/0001-include-sys-time.h-for-timeval.patch -- 2.13.2 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel diff --git a/recipes-qt/qt5/qtvirtualkeyboard/0001-include-sys-time.h-for-timeval.patch b/recipes-qt/qt5/qtvirtualkeyboard/0001-include-sys-time.h-for-timeval.patch new file mode 100644 index 0000000..8518ae9 --- /dev/null +++ b/recipes-qt/qt5/qtvirtualkeyboard/0001-include-sys-time.h-for-timeval.patch @@ -0,0 +1,28 @@ +From 78106c5b939cc7d84710fe4c8e2a356ac1f110ef Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 12 Jul 2017 23:59:52 -0700 +Subject: [PATCH] include sys/time.h for timeval + +Musl exposes this issue since its not indirectly +including sys/time.h like glibc + +Signed-off-by: Khem Raj +--- + src/virtualkeyboard/3rdparty/pinyin/include/userdict.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h b/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h +index 1b9673f..924be7b 100644 +--- a/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h ++++ b/src/virtualkeyboard/3rdparty/pinyin/include/userdict.h +@@ -24,6 +24,7 @@ + // Debug performance for operations + // #define ___DEBUG_PERF___ + ++#include + #ifdef _WIN32 + #include // timeval + #else +-- +2.13.2 + diff --git a/recipes-qt/qt5/qtvirtualkeyboard_git.bb b/recipes-qt/qt5/qtvirtualkeyboard_git.bb index 08914b1..244e529 100644 --- a/recipes-qt/qt5/qtvirtualkeyboard_git.bb +++ b/recipes-qt/qt5/qtvirtualkeyboard_git.bb @@ -5,6 +5,7 @@ LICENSE = "GPL-3.0 | The-Qt-Company-Commercial" LIC_FILES_CHKSUM = " \ file://LICENSE.GPL3;md5=d32239bcb673463ab874e80d47fae504 \ " +SRC_URI += "file://0001-include-sys-time.h-for-timeval.patch" # To enabled Nuance T9 Write support, you need to provide the licensed components # and enable "t9write" in PACKAGECONFIG. This can be done in a separate .bbappend file. From patchwork Thu Jul 13 07:41:54 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 107558 Delivered-To: patch@linaro.org Received: by 10.140.101.44 with SMTP id t41csp1878060qge; Thu, 13 Jul 2017 00:43:32 -0700 (PDT) X-Received: by 10.101.76.3 with SMTP id u3mr7801673pgq.119.1499931812605; Thu, 13 Jul 2017 00:43:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499931812; cv=none; d=google.com; s=arc-20160816; b=KY6KakVMv3xiFfCWrF/eygCuWRzb+B3KOf5VOxn4AsPAnLRO9psmxksCQrsdParCMX YM+3RLyK8CgrHRxZa5xGmgyo9/YdGToKG1srOdWSsLG31dJHMvURrh+F1F7bgLxIYB7B EC+CIpKMWiO4J2HeHH3Hun5AeTHTgy08yfeEuAhTmVFlj8z5aFQNaXtC9Dmao0NeNg0V 4WwUALHhxBd3jknFUwVycHmqWMpFkXRCVFG9S3il1AmsPcrZhb0O1P15kwQH25lEtiyV tD8fNHBWNKw+Pvv+LZu14izaT6UouILQ/Jk4ihHFBrgcJnXdW5mG+C21triVzfX3pObU 20Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=DiQiZmu2rY0+HH5RkobdBafCvjIabu6a9Rmxc3bDQfg=; b=KdTN5NriKgU9L3FYRXcwMDOzWujiF7oHRU0LMxfzFXOzX37RZTiTKJYy9rXC6kWpjq LgqoWnf/pe+eg07vw7ldvQ2hRNYVW3xDN+5YYBsTzcEmfi9G2Ru4JK1YB0kJYA9CN1RM eLnf577X6aqPQOCjvvSJRT841Y3y8CfZ9HPB5ZMh26AMYjKJMUHg/OHxmwv5lE6qsQ1S oflWOI7YQkF4jLx94C2YD9YxoCt0MHK56wQm83PaOgcP8wbAv8fzzQgYWZm4UKZ2+TZ6 /mh5KEpqK0egFD31H00FjT0p30RC9fLBE2stDkeSPmkaZRZsYrPgTFVsX6w4gIkHLNPU YTQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=vcYKR3CW; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from mail.openembedded.org (mail.openembedded.org. [140.211.169.62]) by mx.google.com with ESMTP id m89si3631917pfi.310.2017.07.13.00.43.32; Thu, 13 Jul 2017 00:43:32 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) client-ip=140.211.169.62; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.b=vcYKR3CW; spf=pass (google.com: best guess record for domain of openembedded-devel-bounces@lists.openembedded.org designates 140.211.169.62 as permitted sender) smtp.mailfrom=openembedded-devel-bounces@lists.openembedded.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from review.yoctoproject.org (localhost [127.0.0.1]) by mail.openembedded.org (Postfix) with ESMTP id D6C1D781FF; Thu, 13 Jul 2017 07:43:25 +0000 (UTC) X-Original-To: openembedded-devel@lists.openembedded.org Delivered-To: openembedded-devel@lists.openembedded.org Received: from mail-pf0-f193.google.com (mail-pf0-f193.google.com [209.85.192.193]) by mail.openembedded.org (Postfix) with ESMTP id 897BA6FEFA for ; Thu, 13 Jul 2017 07:42:10 +0000 (UTC) Received: by mail-pf0-f193.google.com with SMTP id c24so6240189pfe.1 for ; Thu, 13 Jul 2017 00:42:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=fVEvvAQEFTpdR0Dj0wQsFZvg5YkO8R9Of9cNUJUJsJs=; b=vcYKR3CWHxPq1y5ttumjA74HT9L1Rd2dG8zVe7vFJ6kLTOeCEgfCxYhGseOLhArpQ8 RR+5M+F3TWwYD1Z6cpJBsLg64KVr6ShlY6wFJxA0fiKvHCZy+1rdXO25XVBzY3/x5osk QeJaRzo4CF3BOow7wAGjCK5eZhUi8BP98dXlkcpFyVTa8dfrTTHZY0T+lNqxEXx5FsIV i6Y46IYhM+GnKU1a2u3wOGT+lEqOI8aMUGK89x2ptr4bDZGUSmqUDjY/sP7m6rIIm+oj vQfiJwlx610M78Yl2E/xPg21J/GI7X5q7jDzfPjMd5pX2aatfCbQGqlS+jBWP55tdG0F py1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=fVEvvAQEFTpdR0Dj0wQsFZvg5YkO8R9Of9cNUJUJsJs=; b=It13YBGeV4ft79bbdNXm8+x+dscdpaZpptd9DixVtUr6Ao4iUuymtDHQxMXPXj9CKy wHH007I1KewnbkuZEMK2zOaTG5OASNn21c/kUqn9lBL1TJp98wm+7B+OktOr9GOokoCa xSvaCxYIA61Ucbk8U9Zh33o761z09cuSeK7tnvcyo8gwv7rnhUIW0559olaYso8lY/dG cVPIIrhRCjEfkUGZ7/KOuz+bYTgXFE/gdvo7pPAKA13MrfwcSM6dUHckYaHRZWpjhOxf RcjnWmf0FcPAgYzGXduFICRLl3PuLuyyYRTk/tb6hedc9HE5Mka4IpEM6iGo2MDr1L7c 9n5w== X-Gm-Message-State: AIVw113XVNd2Rlv+b7FtjNm6m7kaLTxqD0hD9UJ8lzcVBWVtMacb0BwL MYbVa4tpa+vaJ97j X-Received: by 10.99.54.205 with SMTP id d196mr7848103pga.79.1499931731308; Thu, 13 Jul 2017 00:42:11 -0700 (PDT) Received: from localhost.localdomain ([2601:646:8882:b8c::7028]) by smtp.gmail.com with ESMTPSA id z6sm11473952pff.46.2017.07.13.00.42.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Jul 2017 00:42:10 -0700 (PDT) From: Khem Raj To: openembedded-devel@lists.openembedded.org Date: Thu, 13 Jul 2017 00:41:54 -0700 Message-Id: <20170713074154.10606-3-raj.khem@gmail.com> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170713074154.10606-1-raj.khem@gmail.com> References: <20170713074154.10606-1-raj.khem@gmail.com> Subject: [oe] [meta-qt5][PATCH 3/3] qt5-creator: Link with libexecinfo on musl X-BeenThere: openembedded-devel@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Using the OpenEmbedded metadata to build Distributions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: openembedded-devel-bounces@lists.openembedded.org Errors-To: openembedded-devel-bounces@lists.openembedded.org Signed-off-by: Khem Raj --- recipes-qt/qt5/qt5-creator/musl-backtrace.patch | 18 ++++++++++++++++++ recipes-qt/qt5/qt5-creator_3.5.1.bb | 6 ++++++ 2 files changed, 24 insertions(+) create mode 100644 recipes-qt/qt5/qt5-creator/musl-backtrace.patch -- 2.13.2 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel diff --git a/recipes-qt/qt5/qt5-creator/musl-backtrace.patch b/recipes-qt/qt5/qt5-creator/musl-backtrace.patch new file mode 100644 index 0000000..fc7f86c --- /dev/null +++ b/recipes-qt/qt5/qt5-creator/musl-backtrace.patch @@ -0,0 +1,18 @@ +Index: qt-creator-opensource-src-3.5.1/src/plugins/debugger/debugger.pro +=================================================================== +--- qt-creator-opensource-src-3.5.1.orig/src/plugins/debugger/debugger.pro ++++ qt-creator-opensource-src-3.5.1/src/plugins/debugger/debugger.pro +@@ -148,3 +148,4 @@ include(qml/qml.pri) + include(namedemangler/namedemangler.pri) + + include(shared/shared.pri) ++LIBS *= -lexecinfo +Index: qt-creator-opensource-src-3.5.1/src/plugins/qmldesigner/config.pri +=================================================================== +--- qt-creator-opensource-src-3.5.1.orig/src/plugins/qmldesigner/config.pri ++++ qt-creator-opensource-src-3.5.1/src/plugins/qmldesigner/config.pri +@@ -9,3 +9,4 @@ equals(TMP_BAUHAUS_NO_OUTPUT, true):DEFI + DEFINES += ENABLE_TEXT_VIEW + + isEmpty($$(BAUHAUS_OUTPUT_IN_TEST)):DEFINES += QDEBUG_IN_TESTS WARNINGS_IN_TESTS ++LIBS *= -lexecinfo diff --git a/recipes-qt/qt5/qt5-creator_3.5.1.bb b/recipes-qt/qt5/qt5-creator_3.5.1.bb index c85f38c..786b202 100644 --- a/recipes-qt/qt5/qt5-creator_3.5.1.bb +++ b/recipes-qt/qt5/qt5-creator_3.5.1.bb @@ -17,6 +17,7 @@ LIC_FILES_CHKSUM = " \ inherit qmake5 DEPENDS = "qtbase qtscript qtwebkit qtxmlpatterns qtx11extras qtdeclarative qttools qttools-native qtsvg qtquick1" +DEPENDS_append_libc-musl = " libexecinfo" SRC_URI = " \ http://download.qt.io/official_releases/qtcreator/3.5/${PV}/qt-creator-opensource-src-${PV}.tar.gz \ @@ -25,6 +26,10 @@ SRC_URI = " \ file://0001-Qmlpuppet-add-missing-includes.patch \ file://qtcreator.desktop.in \ " + +SRC_URI_append_libc-musl = " file://musl-backtrace.patch " + + SRC_URI[md5sum] = "77aef7df837eba07c7ce6037ee504c05" SRC_URI[sha256sum] = "5925ac818a08be919094e0f28fb4c5d8896765e0975d54d353e4c50f13d63e65" @@ -32,6 +37,7 @@ S = "${WORKDIR}/qt-creator-opensource-src-${PV}" EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}" +LDFLAGS_append_libc-musl = " -lexecinfo " do_configure_append() { # Find native tools sed -i 's:${STAGING_BINDIR}.*/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile