From patchwork Thu Jul 27 09:55:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?J=C3=B6rg_Krause?= X-Patchwork-Id: 794293 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="key not found in DNS" (0-bit key; unprotected) header.d=embedded.rocks header.i=@embedded.rocks header.b="rQvnQJqU"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3xJ6md5csFz9s7M for ; Thu, 27 Jul 2017 19:55:45 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 61BE988849; Thu, 27 Jul 2017 09:55:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lClAcMUIYJz9; Thu, 27 Jul 2017 09:55:42 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id A6AF38884B; Thu, 27 Jul 2017 09:55:42 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 4812F1C0F3B for ; Thu, 27 Jul 2017 09:55:41 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 34B61893D4 for ; Thu, 27 Jul 2017 09:55:41 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TuqPokpRKZPq for ; Thu, 27 Jul 2017 09:55:40 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mout02.posteo.de (mout02.posteo.de [185.67.36.142]) by whitealder.osuosl.org (Postfix) with ESMTPS id D4312893B0 for ; Thu, 27 Jul 2017 09:55:39 +0000 (UTC) Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 3xJ6mT5y03z10Hs; Thu, 27 Jul 2017 11:55:37 +0200 (CEST) Authentication-Results: mail.embedded.rocks (amavisd-new); dkim=pass reason="pass (just generated, assumed good)" header.d=embedded.rocks DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embedded.rocks; h=content-transfer-encoding:content-type:content-type :mime-version:references:in-reply-to:x-mailer:message-id:date :date:subject:subject:from:from:received:received; s=default; t= 1501149336; x=1501754137; bh=zun618D32DZulUD6WwG5omHdWEnZp3E+CST AGDdf2iQ=; b=rQvnQJqUchNNiofcDX/DH7C7IR03NmBLqvltqO7odZy2Db9CB7K nctKsXGr0yB7d23wuEzyDzH4A+Qj9XLj7rcsbg+B+uojlxX+L9iBzlqzrQvnfGsW 5ogVpmPhpwVnTuNTKpuFnMEwMUWhaMhGMLAQYl+UPpgKv7X6ES/Jf2Fpd9RdYC+y w91SMFpLQPH3dCTjKZto+IH5XyvN6QkmYHFtjUh8Y7tlYuAMgR0XIo5xHZy8QbkQ UnmDmiKw3e04an8pG5Gtw00a9LW/ydQAggzoXd/+TKezLIgAJwTQ/OZiIgC+n6z6 ottGL7h3PP4qrqqBCzlPqfgpH18G9iG2yCA== Received: from mail.embedded.rocks ([127.0.0.1]) by localhost (mail.embedded.rocks [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id CftyKyGYl0Go; Thu, 27 Jul 2017 11:55:36 +0200 (CEST) Received: from nzxt.fritz.box (port-92-195-2-6.dynamic.qsc.de [92.195.2.6]) (Authenticated sender: joerg.krause@embedded.rocks) by mail.embedded.rocks (Postfix) with ESMTPSA; Thu, 27 Jul 2017 11:55:36 +0200 (CEST) From: =?UTF-8?q?J=C3=B6rg=20Krause?= To: buildroot@buildroot.org Date: Thu, 27 Jul 2017 11:55:25 +0200 Message-Id: <20170727095527.14324-2-joerg.krause@embedded.rocks> X-Mailer: git-send-email 2.13.3 In-Reply-To: <20170727095527.14324-1-joerg.krause@embedded.rocks> References: <20170727095527.14324-1-joerg.krause@embedded.rocks> MIME-Version: 1.0 Cc: Eric Le Bihan , "Yann E . MORIN" Subject: [Buildroot] [PATCH v3 1/3] meson: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" From: Eric Le Bihan This new package provides the host variant of the Meson Build System, an open source build system meant to be both extremely fast, and as user friendly as possible. More precisely, Meson creates configuration files for the Ninja build system. Besides building Meson, it generates a configuration file ("$(HOST_DIR)/etc/meson/cross-compilation.conf") to be used when cross-compiling a Meson-based project. Signed-off-by: Eric Le Bihan [Jörg Krause: * bump to version 0.41.2 * use explicit tarball release instead of github helper * use explicit sed * pass BR2_GCC_TARGET_CPU to cross file] Signed-off-by: Jörg Krause --- v3: * fix missing mkdir --- package/meson/cross-compilation.conf.in | 15 +++++++++++++++ package/meson/meson.hash | 2 ++ package/meson/meson.mk | 31 +++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 package/meson/cross-compilation.conf.in create mode 100644 package/meson/meson.hash create mode 100644 package/meson/meson.mk diff --git a/package/meson/cross-compilation.conf.in b/package/meson/cross-compilation.conf.in new file mode 100644 index 0000000000..d38fbb03cc --- /dev/null +++ b/package/meson/cross-compilation.conf.in @@ -0,0 +1,15 @@ +# Note: in Meson terminology, what Buildroot calls the "host" system is the +# "build" system and the "target" system is called the "host" system. + +[binaries] +c = '@TARGET_CROSS@gcc' +cpp = '@TARGET_CROSS@g++' +ar = '@TARGET_CROSS@ar' +strip = '@TARGET_CROSS@strip' +pkgconfig = '@HOST_DIR@/usr/bin/pkg-config' + +[host_machine] +system = 'linux' +cpu_family ='@TARGET_ARCH@' +cpu = '@TARGET_CPU@' +endian = '@TARGET_ENDIAN@' diff --git a/package/meson/meson.hash b/package/meson/meson.hash new file mode 100644 index 0000000000..7f0de1d437 --- /dev/null +++ b/package/meson/meson.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 074dd24fd068be0893e2e45bcc35c919d8e12777e9d6a7efdf72d4dc300867ca meson-0.41.2.tar.gz diff --git a/package/meson/meson.mk b/package/meson/meson.mk new file mode 100644 index 0000000000..e9f1ffe4d4 --- /dev/null +++ b/package/meson/meson.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# meson +# +################################################################################ + +MESON_VERSION = 0.41.2 +MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION) +MESON_LICENSE = Apache-2.0 +MESON_LICENSE_FILES = COPYING +MESON_SETUP_TYPE = setuptools + +HOST_MESON_DEPENDENCIES = host-ninja +HOST_MESON_NEEDS_HOST_PYTHON = python3 + +HOST_MESON_TARGET_ENDIAN = $(shell echo $(BR2_ENDIAN) | tr 'A-Z' 'a-z') + +define HOST_MESON_INSTALL_CROSS_CONF + mkdir -p $(HOST_DIR)/etc/meson + sed -e 's;@TARGET_CROSS@;$(TARGET_CROSS);g' \ + -e 's;@TARGET_ARCH@;$(ARCH);g' \ + -e 's;@TARGET_CPU@;$(BR2_GCC_TARGET_CPU);g' \ + -e 's;@TARGET_ENDIAN@;$(HOST_MESON_TARGET_ENDIAN);g' \ + -e 's;@HOST_DIR@;$(HOST_DIR);g' \ + $(HOST_MESON_PKGDIR)/cross-compilation.conf.in \ + > $(HOST_DIR)/etc/meson/cross-compilation.conf +endef + +HOST_MESON_POST_INSTALL_HOOKS += HOST_MESON_INSTALL_CROSS_CONF + +$(eval $(host-python-package))