From patchwork Fri Oct 20 11:42:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Neal Frager X-Patchwork-Id: 1852495 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4SBjQV4Y2xz23jM for ; Fri, 20 Oct 2023 22:43:30 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id A7E23704D9; Fri, 20 Oct 2023 11:43:28 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org A7E23704D9 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gHO19mmT9Iws; Fri, 20 Oct 2023 11:43:27 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp3.osuosl.org (Postfix) with ESMTP id 7A211704FE; Fri, 20 Oct 2023 11:43:26 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 7A211704FE X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id BC0F51BF3A9 for ; Fri, 20 Oct 2023 11:43:06 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 84746848F8 for ; Fri, 20 Oct 2023 11:43:06 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 84746848F8 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O8j6wNGe7C3D for ; Fri, 20 Oct 2023 11:43:05 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20610.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe5a::610]) by smtp1.osuosl.org (Postfix) with ESMTPS id A180A848F7 for ; Fri, 20 Oct 2023 11:43:05 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org A180A848F7 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mBi3I2H+FbZXttirZBJ2YnRmUJWV6MQPBtY5f9hDfmItANG6sgYetIpkc9mWTbX2/OUkglouVLEUH0rIHX/rLy+eoAUpIbxOm4gwgE5w9ONotQlN8w1kth/kV+JfaefNQwzY6I7oTIoTNJCeJv+sfFzO03DjR2Z6v52c1nsEJp8BpnpiG/7Q3RXd22NJmAsnY0ORdkAAoRpOY+3YIZHbWLwnAI8ERB5X3KIx2VxqU1H42DJZPLbzAz3UvOxb3EradxI9sxCHm4pLMbPDVtwIkvgfmKoionaoGVY1sgdkJFlHDoW8RLKkgqvD6JRkUsnM7ovVesLY2mEDLbVS/yBbJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/xNky3NxdHepr8tlX8Fp3ahq+A4qVi/vnw6t+OqF7DA=; b=SGcN1DSyZN0+gRz+cEdRI1UQoNENrW+JV8TfZJF5bDTq5bot6r6SUNGATF4MGjr215mSAScrOEFXmiB8KwkC44DCE2uVqihl7I10uaLqdNKkiXkiTP35e8J8jr+vLZ9QgbJAcsWA6lwdoavNwiHU+9omWNdGZGUjia8ujD+W4g2pdvQ3pEpiDr4PuMjItxdyBDzke02Z1bEIwrtHz9dt/bOQE3JtZVoaOT4K16+5IzvTUfRvTZUpBeienqMzj4CXoiuZCIGVD3XXFEUDm1TJI3SFqeVSuce/FgyrhxNezrjBDBVB5vqcAzsgiiBJCyfJE5YV64wflZ8kSgkdmNACwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=buildroot.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none Received: from DS7PR03CA0281.namprd03.prod.outlook.com (2603:10b6:5:3ad::16) by BN9PR12MB5273.namprd12.prod.outlook.com (2603:10b6:408:11e::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct 2023 11:43:02 +0000 Received: from CY4PEPF0000EE37.namprd05.prod.outlook.com (2603:10b6:5:3ad:cafe::4c) by DS7PR03CA0281.outlook.office365.com (2603:10b6:5:3ad::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend Transport; Fri, 20 Oct 2023 11:43:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C Received: from SATLEXMB03.amd.com (165.204.84.17) by CY4PEPF0000EE37.mail.protection.outlook.com (10.167.242.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6838.22 via Frontend Transport; Fri, 20 Oct 2023 11:43:01 +0000 Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 20 Oct 2023 06:43:01 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 20 Oct 2023 06:43:01 -0500 Received: from xirengwts09.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend Transport; Fri, 20 Oct 2023 06:42:59 -0500 To: Date: Fri, 20 Oct 2023 12:42:29 +0100 Message-ID: <20231020114236.4129636-3-neal.frager@amd.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231020114236.4129636-1-neal.frager@amd.com> References: <20231020114236.4129636-1-neal.frager@amd.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE37:EE_|BN9PR12MB5273:EE_ X-MS-Office365-Filtering-Correlation-Id: 5bb87230-f246-4e72-b547-08dbd161b74a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9TxkkNdo5wJIGFtcMO0l76LEGpkA70Clfxvr75r3UBKSvrX43MCdACrZj40CSvs6oVjiD9LUJB9enB+iU+RVicNotlkiB47J/yEXKI+UM+AqYO48IxkYRWdf20qBTSBoBdevWkTQRdoVT/nB7Zx3MFWyTnWrYzA8D3lHBfOq4m7shTYv+aG/F8zIlTi9N+usiwRU9gFUZ+71/tdhgItXnfmhWw5qDXYN21Cqx9eYoQoc0xgAH/+HySnnStPdVobQKYPckaOfN5plXLEStX+i54Z+NrPvWvMpAjiVo/FCjWL0eLuJ0eNFhgKVMMy+KpIXAJ82ooIT4PBSdDfsXc5ronpbtyeJyy13lsodZXXajZ54CyH6MUzGKOVDwcRiimGhi0oD/HDTC7/ALhaUbWUqVSFfWpZTzp/W4PyGF+BaI2tceS9Up5J6jef7gLnQStjGaI0JqGZAQ31rvbmnb4eb2o4Bn/3jQv5W3K7EkIDBD0Ai82e1MYoIYVpVnXC9eu5oO+qVEDtRVSum2RCdzPl5SKM5aVRCrHGa85n6yDSIeiTDLhh5yBqDup0ouxiPsHU41LoLhDp8MFxLiTF4jrc5KaTqgG8dNevSHpNJsAznzvNya3idzl31reohNx4VgcnGqIk3yDp66cmVhdovZldpTbCn1Kc0EPj76Pkm4Nm0fLVS0jGcGFCHVdd27SR4b9jsueKY8Ux7OlKskfg5bLZeMcTwu9Pf4YCmTTvpD03uhyyB3R2OS2OfpxsOsKvufwbp X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB03.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230031)(4636009)(376002)(346002)(136003)(39860400002)(396003)(230922051799003)(451199024)(82310400011)(64100799003)(1800799009)(186009)(40470700004)(36840700001)(46966006)(2906002)(40480700001)(40460700003)(478600001)(5660300002)(41300700001)(4326008)(44832011)(8936002)(8676002)(316002)(6916009)(70586007)(54906003)(70206006)(36860700001)(47076005)(36756003)(86362001)(356005)(82740400003)(81166007)(2616005)(26005)(426003)(336012)(1076003)(6666004)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 11:43:01.9122 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5bb87230-f246-4e72-b547-08dbd161b74a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB03.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EE37.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5273 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/xNky3NxdHepr8tlX8Fp3ahq+A4qVi/vnw6t+OqF7DA=; b=EMFOjxda3rTOAGC0sw1NZasbAby5QtFNqPV3L8SbFsriNlz6CkNRqYsZl1h1W0ecRdi7LzyUoXGDmgr7g8YeuPkSfZwHIv2hJ82FhojRykyY5aoiN8mobD9yhmy/I56ELT19SADpBkKHiCb1u1f+3fXdmgQFosApSHavW+ehnU8= X-Mailman-Original-Authentication-Results: smtp1.osuosl.org; dkim=pass (1024-bit key, unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256 header.s=selector1 header.b=EMFOjxda Subject: [Buildroot] [PATCH v6 03/10] package/newlib-bare-metal: new package X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Neal Frager via buildroot From: Neal Frager Reply-To: Neal Frager Cc: ibai.erkiaga-elorza@amd.com, luca.ceresoli@bootlin.com, thomas.petazzoni@bootlin.com, Neal Frager , michal.simek@amd.com Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" This patch adds a new package for building newlib for a bare-metal toolchain. The cpu architecture is defined by a toolchain-bare-metal virtual package. While any cpu architecture could be used, the default configuration will be a Xilinx microblaze little endian architecture, so that buildroot will be able to build the microblaze firmware applications for zynqmp and versal. Signed-off-by: Ibai Erkiaga Signed-off-by: Neal Frager Tested-by: Luca Ceresoli Reviewed-by: Luca Ceresoli --- V1->V2: - removed default enable to be replaced with toolchain select config V2->V3: - no changes V3->V4: - replaced unnecessary =? with = for assignments - improved menuconfig help comment V4->V5: - added license files - reduced all lines to <80 chars V5->V6: - migrated to toolchain-bare-metal-buildroot --- DEVELOPERS | 2 + package/newlib-bare-metal/Config.in.host | 12 ++++++ .../newlib-bare-metal/newlib-bare-metal.hash | 8 ++++ .../newlib-bare-metal/newlib-bare-metal.mk | 37 +++++++++++++++++++ 4 files changed, 59 insertions(+) create mode 100644 package/newlib-bare-metal/Config.in.host create mode 100644 package/newlib-bare-metal/newlib-bare-metal.hash create mode 100644 package/newlib-bare-metal/newlib-bare-metal.mk diff --git a/DEVELOPERS b/DEVELOPERS index 922a74e426..677b8f09bd 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1369,6 +1369,7 @@ F: package/python-rpi-gpio/ N: Ibai Erkiaga F: package/binutils-bare-metal/ F: package/gcc-bare-metal/ +F: package/newlib-bare-metal/ N: Ignacy Gawędzki F: package/angularjs/ @@ -2204,6 +2205,7 @@ F: configs/zynqmp_zcu106_defconfig F: package/binutils-bare-metal/ F: package/bootgen/ F: package/gcc-bare-metal/ +F: package/newlib-bare-metal/ F: package/versal-firmware/ N: Nicola Di Lieto diff --git a/package/newlib-bare-metal/Config.in.host b/package/newlib-bare-metal/Config.in.host new file mode 100644 index 0000000000..be92a1d6a6 --- /dev/null +++ b/package/newlib-bare-metal/Config.in.host @@ -0,0 +1,12 @@ +config BR2_PACKAGE_HOST_NEWLIB_BARE_METAL + bool "host newlib-bare-metal" + help + Build the newlib C library for a bare-metal toolchain + +if BR2_PACKAGE_HOST_NEWLIB_BARE_METAL + +config BR2_PACKAGE_HOST_NEWLIB_BARE_METAL_VERSION + string + default "4.1.0" + +endif #BR2_PACKAGE_HOST_NEWLIB_BARE_METAL diff --git a/package/newlib-bare-metal/newlib-bare-metal.hash b/package/newlib-bare-metal/newlib-bare-metal.hash new file mode 100644 index 0000000000..1a681ecf77 --- /dev/null +++ b/package/newlib-bare-metal/newlib-bare-metal.hash @@ -0,0 +1,8 @@ +# Locally calculated +sha256 f296e372f51324224d387cc116dc37a6bd397198756746f93a2b02e9a5d40154 newlib-4.1.0.tar.gz + +# Hashes for license files locally calculated +sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING +sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING.LIB +sha256 f3b7f3e4426b1fa6f60198dae7adfedd94b77b28db2d108adc0253575011e0ff COPYING.LIBGLOSS +sha256 422aa40293093fb54fc66e692a0d68fd0b24ed5602e5d1d33ad05ba3909057e9 COPYING.NEWLIB diff --git a/package/newlib-bare-metal/newlib-bare-metal.mk b/package/newlib-bare-metal/newlib-bare-metal.mk new file mode 100644 index 0000000000..a42e04877a --- /dev/null +++ b/package/newlib-bare-metal/newlib-bare-metal.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# newlib-bare-metal +# +################################################################################ + +HOST_NEWLIB_BARE_METAL_VERSION = \ + $(call qstrip,$(BR2_PACKAGE_HOST_NEWLIB_BARE_METAL_VERSION)) +ifeq ($(HOST_NEWLIB_BARE_METAL_VERSION),) +HOST_NEWLIB_BARE_METAL_VERSION = 4.1.0 +endif + +HOST_NEWLIB_BARE_METAL_SITE = ftp://sourceware.org/pub/newlib +HOST_NEWLIB_BARE_METAL_SOURCE = newlib-$(HOST_NEWLIB_BARE_METAL_VERSION).tar.gz +HOST_NEWLIB_BARE_METAL_DEPENDENCIES = host-gcc-bare-metal + +HOST_NEWLIB_BARE_METAL_LICENSE = GPL-2.0, GPL-3.0, LGPL-2.1, LGPL-3.0 +HOST_NEWLIB_BARE_METAL_LICENSE_FILES = COPYING \ + COPYING.LIB \ + COPYING.LIBGLOSS \ + COPYING.NEWLIB + +NEWLIB_ARCH = \ + $(call qstrip,$(BR2_PACKAGE_HOST_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH)) + +HOST_NEWLIB_BARE_METAL_CONF_OPTS = \ + --target=$(NEWLIB_ARCH)-elf \ + CC_FOR_TARGET=$(HOST_DIR)/bin/$(NEWLIB_ARCH)-elf-gcc \ + AR_FOR_TARGET=$(HOST_DIR)/bin/$(NEWLIB_ARCH)-elf-ar \ + RANLIB_FOR_TARGET=$(HOST_DIR)/bin/$(NEWLIB_ARCH)-elf-ranlib \ + --enable-newlib-io-c99-formats \ + --enable-newlib-io-long-long \ + --enable-newlib-io-float \ + --enable-newlib-io-long-double \ + --disable-multilib + +$(eval $(host-autotools-package))