{"id":818825,"url":"http://patchwork.ozlabs.org/api/patches/818825/?format=json","web_url":"http://patchwork.ozlabs.org/project/buildroot/patch/20170926203504.22326-2-bradford@density.io/","project":{"id":27,"url":"http://patchwork.ozlabs.org/api/projects/27/?format=json","name":"Buildroot development","link_name":"buildroot","list_id":"buildroot.buildroot.org","list_email":"buildroot@buildroot.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170926203504.22326-2-bradford@density.io>","list_archive_url":null,"date":"2017-09-26T20:35:03","name":"[1/2] tbb: new package","commit_ref":null,"pull_url":null,"state":"changes-requested","archived":false,"hash":"b2200afffb5b674b2c87d3fa4efdf30e7570d981","submitter":{"id":72321,"url":"http://patchwork.ozlabs.org/api/people/72321/?format=json","name":"Bradford Barr","email":"bradford@density.io"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/buildroot/patch/20170926203504.22326-2-bradford@density.io/mbox/","series":[{"id":5225,"url":"http://patchwork.ozlabs.org/api/series/5225/?format=json","web_url":"http://patchwork.ozlabs.org/project/buildroot/list/?series=5225","date":"2017-09-26T20:35:04","name":"tbb and opencv","version":1,"mbox":"http://patchwork.ozlabs.org/series/5225/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/818825/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/818825/checks/","tags":{},"related":[],"headers":{"Return-Path":"<buildroot-bounces@busybox.net>","X-Original-To":["incoming@patchwork.ozlabs.org","buildroot@lists.busybox.net"],"Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","buildroot@osuosl.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=busybox.net\n\t(client-ip=140.211.166.137; helo=fraxinus.osuosl.org;\n\tenvelope-from=buildroot-bounces@busybox.net;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=density-io.20150623.gappssmtp.com\n\theader.i=@density-io.20150623.gappssmtp.com\n\theader.b=\"DAb3xemk\"; dkim-atps=neutral"],"Received":["from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y1tC02tnxz9s8J\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 27 Sep 2017 06:41:00 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 5E9D48857F;\n\tTue, 26 Sep 2017 20:40:58 +0000 (UTC)","from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id P8gOqbKsla1i; Tue, 26 Sep 2017 20:40:57 +0000 (UTC)","from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 92ED188512;\n\tTue, 26 Sep 2017 20:40:57 +0000 (UTC)","from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ash.osuosl.org (Postfix) with ESMTP id 8251C1C0906\n\tfor <buildroot@lists.busybox.net>;\n\tTue, 26 Sep 2017 20:40:55 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 7B7CE8469C\n\tfor <buildroot@lists.busybox.net>;\n\tTue, 26 Sep 2017 20:40:55 +0000 (UTC)","from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id omH0cbSIfaZc for <buildroot@lists.busybox.net>;\n\tTue, 26 Sep 2017 20:40:54 +0000 (UTC)","from mail-pf0-f169.google.com (mail-pf0-f169.google.com\n\t[209.85.192.169])\n\tby fraxinus.osuosl.org (Postfix) with ESMTPS id 55BA484691\n\tfor <buildroot@buildroot.org>; Tue, 26 Sep 2017 20:40:54 +0000 (UTC)","by mail-pf0-f169.google.com with SMTP id r71so6102837pfe.12\n\tfor <buildroot@buildroot.org>; Tue, 26 Sep 2017 13:40:54 -0700 (PDT)","from density.io ([2600:8805:a080:bd:110c:20df:d177:38e1])\n\tby smtp.gmail.com with ESMTPSA id\n\tg16sm18263136pgn.62.2017.09.26.13.35.15\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tTue, 26 Sep 2017 13:35:15 -0700 (PDT)"],"X-Virus-Scanned":["amavisd-new at osuosl.org","amavisd-new at osuosl.org"],"X-Greylist":"from auto-whitelisted by SQLgrey-1.7.6","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=density-io.20150623.gappssmtp.com; s=20150623;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=qfrMOwqckVnodmrjFBZuhVksrWivJxl/J6Uk9TVqpyo=;\n\tb=DAb3xemkIGrJA6YPrA1xPfhypKHFXZTiM1JnMzZC8odLtte8ghfcorqZR0GVGCahsf\n\tPyhPwjGWXzc3IitZd6+wauxteNo1eDW69v2PiBiFVvwLWpTLk25FzqbtXAjYm+bY7Eik\n\tJOYTvUhyFWIp7gsW7jPC+vjRWpt5zihYwzk56AkH82RQYx5y/MtGG4DGXvI5jJECcdp1\n\tfc7mju/N1HPS75JVLsHsejAXhYgNC8vHInsRp1Z6im0Vs0dtLQySW6h1i2jEGtvgJzH0\n\tgyVdQoPLZTP8FSb3yYtV5KsUyDnF56ac8iaH/ifVe5TCCbU2rVmQpcEk15AvJsRerdnZ\n\tmpjg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=qfrMOwqckVnodmrjFBZuhVksrWivJxl/J6Uk9TVqpyo=;\n\tb=cRm/f/zs9gPVBovQEr7zO8MpqIukeft/rQqxF6FAVKz27rjdm4J3fANCiTL+ksMBH0\n\tbu1zlU1kc9ewSK70JJFJx1a0SuePMbC8h35CCfzBhnVx6OK3no5WILc2IIfcIBzngSQa\n\tKnA9atSnQBhwcHPXGT4Knt2/JMm7hfOIPJ0XSFFVH4bswWUwCPhh/99YX6KkJW+RDz8H\n\tPoExjFHgOljPy6z5A4Sq8pdES+Nh54qtAuxYFVQkWpcPjUix8AHLwWSoXeU66e68GklB\n\t+DuDrlKjG/Brr9OazaDtjlcAfgHitIMwI6o72Pt0kfvo24c4w02XXq8vytVI5Pv1AePQ\n\t7Bwg==","X-Gm-Message-State":"AHPjjUj475sRt5vjG6AvRj7KWgRiS7fZOf5/vPVEdIyuiFKfMc7eNz4L\n\tGeunWhKJEvsxKRYGofr0lX7YCdHhtGA=","X-Google-Smtp-Source":"AOwi7QDsepFIJVW3X2yVyzSAnlsT3ty6CrJiESgn761Hx5FjSInn6aE7Ly9PMLZy4kAS/qrSJ6S86g==","X-Received":"by 10.84.129.1 with SMTP id 1mr11630272plb.241.1506458116417;\n\tTue, 26 Sep 2017 13:35:16 -0700 (PDT)","From":"Bradford Barr <bradford@density.io>","To":"buildroot@buildroot.org","Date":"Tue, 26 Sep 2017 16:35:03 -0400","Message-Id":"<20170926203504.22326-2-bradford@density.io>","X-Mailer":"git-send-email 2.9.3","In-Reply-To":"<20170926203504.22326-1-bradford@density.io>","References":"<20170926203504.22326-1-bradford@density.io>","Cc":"bradford barr <bradford@density.io>","Subject":"[Buildroot] [PATCH 1/2] tbb: new package","X-BeenThere":"buildroot@busybox.net","X-Mailman-Version":"2.1.18-1","Precedence":"list","List-Id":"Discussion and development of buildroot <buildroot.busybox.net>","List-Unsubscribe":"<http://lists.busybox.net/mailman/options/buildroot>,\n\t<mailto:buildroot-request@busybox.net?subject=unsubscribe>","List-Archive":"<http://lists.busybox.net/pipermail/buildroot/>","List-Post":"<mailto:buildroot@busybox.net>","List-Help":"<mailto:buildroot-request@busybox.net?subject=help>","List-Subscribe":"<http://lists.busybox.net/mailman/listinfo/buildroot>,\n\t<mailto:buildroot-request@busybox.net?subject=subscribe>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"buildroot-bounces@busybox.net","Sender":"\"buildroot\" <buildroot-bounces@busybox.net>"},"content":"From: bradford barr <bradford@density.io>\n\nIntel Threading Building Blocks (TBB), is a C++ library to help developers\nwrite highly parallelized applications. OpenCV uses it to accelerate some of\nit's more heavy weight procedures.\n\nSigned-off-by: bradford barr <bradford@density.io>\n---\n package/Config.in                     |  1 +\n package/tbb/0001-prevent-thumb.patch  | 15 +++++++++++++++\n package/tbb/0002-cross-compiler.patch | 14 ++++++++++++++\n package/tbb/Config.in                 | 13 +++++++++++++\n package/tbb/tbb.hash                  |  3 +++\n package/tbb/tbb.mk                    | 35 +++++++++++++++++++++++++++++++++++\n 6 files changed, 81 insertions(+)\n create mode 100644 package/tbb/0001-prevent-thumb.patch\n create mode 100644 package/tbb/0002-cross-compiler.patch\n create mode 100644 package/tbb/Config.in\n create mode 100644 package/tbb/tbb.hash\n create mode 100644 package/tbb/tbb.mk","diff":"diff --git a/package/Config.in b/package/Config.in\nindex 6acd0c4..f71e781 100644\n--- a/package/Config.in\n+++ b/package/Config.in\n@@ -1503,6 +1503,7 @@ endif\n \tsource \"package/skalibs/Config.in\"\n \tsource \"package/sphinxbase/Config.in\"\n \tsource \"package/startup-notification/Config.in\"\n+\tsource \"package/tbb/Config.in\"\n \tsource \"package/tinycbor/Config.in\"\n \tsource \"package/tz/Config.in\"\n \tsource \"package/tzdata/Config.in\"\ndiff --git a/package/tbb/0001-prevent-thumb.patch b/package/tbb/0001-prevent-thumb.patch\nnew file mode 100644\nindex 0000000..942f7f4\n--- /dev/null\n+++ b/package/tbb/0001-prevent-thumb.patch\n@@ -0,0 +1,15 @@\n+diff -Naur tbb-2017_U8/build/linux.gcc.inc b/build/linux.gcc.inc\n+--- tbb-2017_U8/build/linux.gcc.inc\t2017-09-22 15:57:33.000000000 -0400\n++++ b/build/linux.gcc.inc\t2017-09-25 14:46:39.584066690 -0400\n+@@ -115,11 +115,6 @@\n+     LIB_LINK_FLAGS += -mcpu=v9 -m64\n+ endif\n+ \n+-# automatically generate \"IT\" instructions when compiling for Thumb ISA\n+-ifeq (armv7,$(arch))\n+-    CPLUS_FLAGS    += -Wa,-mimplicit-it=thumb\n+-endif\n+-\n+ #------------------------------------------------------------------------------\n+ # Setting assembler data.\n+ #------------------------------------------------------------------------------\ndiff --git a/package/tbb/0002-cross-compiler.patch b/package/tbb/0002-cross-compiler.patch\nnew file mode 100644\nindex 0000000..60a4eb3\n--- /dev/null\n+++ b/package/tbb/0002-cross-compiler.patch\n@@ -0,0 +1,14 @@\n+diff -Naur tbb-2017_U8/build/linux.gcc.inc b/build/linux.gcc.inc\n+--- tbb-2017_U8/build/linux.gcc.inc\t2017-09-25 14:58:24.593148831 -0400\n++++ b/build/linux.gcc.inc\t2017-09-25 15:08:17.032422555 -0400\n+@@ -32,8 +32,8 @@\n+ EXPORT_KEY = -Wl,--version-script,\n+ LIBDL = -ldl\n+ \n+-CPLUS = g++\n+-CONLY = gcc\n++CPLUS = arm-linux-gnueabihf-g++\n++CONLY = arm-linux-gnueabihf-gcc\n+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)\n+ LIBS += -lpthread -lrt\n+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic\ndiff --git a/package/tbb/Config.in b/package/tbb/Config.in\nnew file mode 100644\nindex 0000000..d2c8c04\n--- /dev/null\n+++ b/package/tbb/Config.in\n@@ -0,0 +1,13 @@\n+config BR2_PACKAGE_TBB\n+\tbool \"tbb\"\n+\tdepends on BR2_TOOLCHAIN_HAS_THREADS\n+\thelp\n+\t  Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily\n+\t  write parallel C++ programs that take full advantage of multicore\n+\t  performance, that are portable, composable and have future-proof\n+\t  scalability.\n+\n+\t  https://www.threadingbuildingblocks.org/\n+\n+comment \"tbb needs a toolchain w/ threads\"\n+\tdepends on !BR2_TOOLCHAIN_HAS_THREADS\ndiff --git a/package/tbb/tbb.hash b/package/tbb/tbb.hash\nnew file mode 100644\nindex 0000000..7e73cb4\n--- /dev/null\n+++ b/package/tbb/tbb.hash\n@@ -0,0 +1,3 @@\n+# Locally calculated\n+sha256  c6462217d4ecef2b44fce63cfdf31f9db4f6ff493869899d497a5aef68b05fc5  tbb-2018_U1.tar.gz\n+sha256  1b1357f280e750d42506212adad02f85ac07c9d3e3c0813104f9122ef350497f  tbb-2017_U8.tar.gz\ndiff --git a/package/tbb/tbb.mk b/package/tbb/tbb.mk\nnew file mode 100644\nindex 0000000..d9ac4c8\n--- /dev/null\n+++ b/package/tbb/tbb.mk\n@@ -0,0 +1,35 @@\n+################################################################################\n+#\n+# tbb\n+#\n+################################################################################\n+\n+TBB_VERSION = 2017_U8\n+TBB_SITE = $(call github,01org,tbb,$(TBB_VERSION))\n+TBB_INSTALL_STAGING = YES\n+TBB_LICENSE = Apache-2.0\n+TBB_LICENSE_FILES = LICENSE\n+\n+define TBB_BUILD_CMDS\n+\t$(MAKE) $(TARGET_CONFIGURE_OPTS) CPLUS=$(HOSTCXX) CONLY=$(HOSTCC) arch=$(BR2_ARCH) -C $(@D) tbb\n+endef\n+\n+define TBB_INSTALL_STAGING_CMDS\n+\tmkdir -p $(STAGING_DIR)/usr/include/tbb\n+\tcp -a $(@D)/include/* $(STAGING_DIR)/usr/include/tbb\n+\tfor f in $$(find $(@D)/build/linux_*_release -type f -iname \"libtbb.so*\"); do \\\n+\t\tif grep -q -v INPUT $$f; then \\\n+\t\t\t$(INSTALL) -D -m 0755 $$f $(STAGING_DIR)/usr/lib ; \\\n+\t\tfi \\\n+\tdone\n+endef\n+\n+define TBB_INSTALL_TARGET_CMDS\n+\tfor f in $$(find $(@D)/build/linux_*_release -type f -iname \"libtbb.so*\"); do \\\n+\t\tif grep -q -v INPUT $$f; then \\\n+\t\t\t$(INSTALL) -D -m 0755 $$f $(TARGET_DIR)/usr/lib ; \\\n+\t\tfi \\\n+\tdone\n+endef\n+\n+$(eval $(generic-package))\n","prefixes":["1/2"]}