From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Sat, 29 Jan 2022 19:13:20 +0100 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1nDsDw-00HTGq-Lj for lore@lore.pengutronix.de; Sat, 29 Jan 2022 19:13:20 +0100 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1nDsDv-0007WP-KD; Sat, 29 Jan 2022 19:13:19 +0100 Received: from mail-eopbgr70047.outbound.protection.outlook.com ([40.107.7.47] helo=EUR04-HE1-obe.outbound.protection.outlook.com) by metis.ext.pengutronix.de with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nDsDI-0007WE-SQ for ptxdist@pengutronix.de; Sat, 29 Jan 2022 19:12:42 +0100 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DkOEF0OLRTh4OvVwEOsaAMJler2gNNQowGP7j001dtPbvmBjwxn6Tgrc1tSYE1DEDLiSHaBprqr8bY/BAYslU6EYJNyqOIJn5BcFtuUh2Pg0APCXoO318CWN8fJDEDreNiXVtdT1Mq333YqwKvtDTfRuVPQYAX6G9B5BL11ikCsWX9caSDflA7ylxzucwIkZVJwX29lv92fmFXdJzmnoDu+/GWxSLMfCe0q0PKgNERKZR3809wjHVJCu0bfREi8Z4YN+o7peccV04zsoBfpsxIfAjIYRJjI7/i72phAPRe/Cjf7f2ufGh5D6OlGOi2wh5+1T/M8d29k06WvFYF7oPQ== 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=CUthBLOmzFw4rMXjb8hC+PyZf8rGQ7+m7y3Gya9IFLo=; b=ZhFJLH0PMY0XeG2z2AvVuA/bi6eeMlCtGJQcl3wmA66M0YkY+0ER8NVKecPjPy8gBri9vM2xbJrwH89KthKFfZV02342ppptFGN647Wr9dP6YS16dlqmBsu+zG0cMum817laOSyaym8pzSCgAvrjDF7F1lu0Crg9IVJ9LZ0M0YFkziYJrpPp2ysgPo3E8sQvbphhh24Wx6XUpUnDeXFLbTdpq7o6eeXqVXXlpy4BqDvpYWRt+DN/15AicLnnVBubCIMAPER/PnJ89L+y3xR6GCEYWBsBzkJgYhm7iJvMm27vEIPd7DQAgHK2n78UBYv3UIlJek0xo+F7peTJd2jHgw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=t2datacom.onmicrosoft.com; s=selector1-t2datacom-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CUthBLOmzFw4rMXjb8hC+PyZf8rGQ7+m7y3Gya9IFLo=; b=NpzWuupERMa9MOqUE1wvIfy7Pt0u695Z6PeyC/zHISjxHke9bHY6DQuHFnGj9ztPPjSnXJc4fMkZcPabnFh/gMyvURwa+DLVfXm+HH4VdSsPhC4iUJzFy6PHCUnG6oUDfdk0GVhKt/4MJfZklVDHWBroHqsf9HXqJt+cma9gxoU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=t2data.com; Received: from DB9P251MB0618.EURP251.PROD.OUTLOOK.COM (2603:10a6:10:334::22) by PRAP251MB0419.EURP251.PROD.OUTLOOK.COM (2603:10a6:102:27a::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4909.8; Sat, 29 Jan 2022 18:12:37 +0000 Received: from DB9P251MB0618.EURP251.PROD.OUTLOOK.COM ([fe80::10ab:30da:9dfb:56fe]) by DB9P251MB0618.EURP251.PROD.OUTLOOK.COM ([fe80::10ab:30da:9dfb:56fe%4]) with mapi id 15.20.4930.020; Sat, 29 Jan 2022 18:12:37 +0000 From: Christian Melki To: ptxdist@pengutronix.de Date: Sat, 29 Jan 2022 19:11:33 +0100 Message-Id: <20220129181133.2626194-1-christian.melki@t2data.com> X-Mailer: git-send-email 2.30.2 X-ClientProxiedBy: GV3P280CA0089.SWEP280.PROD.OUTLOOK.COM (2603:10a6:150:a::13) To DB9P251MB0618.EURP251.PROD.OUTLOOK.COM (2603:10a6:10:334::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e9bce979-699f-4fbb-8561-08d9e352ee2f X-MS-TrafficTypeDiagnostic: PRAP251MB0419:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:3968; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 14O20cQDjSqZi3gf90lKcXLtf53uX9D5kqbJNPymcFq1iBB4I5myy0eNETy8JI9sYjfzgr7cb25fbWuB/ihPavN9/QNINCwdqQgxGa3ok956ZHL/CyFd75MCKx9oF0vpbh0oPYb3LFx1tXPxfjQrbmwPnZhGSufoAkjglKZl9OSKSYx1viMYubuodAdbwb3AQnpkxF36SKl/l0Dfxyr9xHnQ0RQ6Yi0X78Y9rYTAB8xe0913WMX9kxkOR7G/C6dji0xgO5ZetQxb722CleiXqew3j3GOWCKxZkhThAmB07Z+b9BmsQF9aWABIHEF5+6861qUEMsJ2wzARjkJpNjPNWBndlelLmaQc2jBiUsglpX6pKcu66k97IGv0qMaEQM4yDa0gRHBNyD+hgn3TXam0kHAAG2F304kiHaRDp6A6KCvzRoacOkzlguJBfpHw9wvrnljTgqigyOmMfMj8x2jVJ5HfngI2HD+I4QEYFVpUtvMfPV3DwQyJ5539Wx8C+mj23F77SwFYlyi55LV93V9CeiNeiq7EsFLADL38PySmEZ0gNkzkiC7pDIV/6x6+Mejwvo7LycXWYjoSGj1HOB8SkpPGihpSzsoA3Qbz7+Is2X31eoUx9AC/M81lkRo3q1UKIS6LMaLOzj5nxVoHP3Fmt4QyABSYAnCXM7Mowz6cMLv5YaXbSUGRYWk0rI9sIuqL2/YOyJCSlYW4+CUt1z8kSFHfZMk03etCtP4cP31O+YdiwEdcS/xKLt74XxVSYA7P2Xy6Zdlj7rRhM4gMrzszx+jg7Dkr+BKzCtX2+zQFWpLKBdP8hemcNSWCVPeV9jX X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9P251MB0618.EURP251.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(136003)(346002)(376002)(39830400003)(396003)(366004)(8936002)(6486002)(8676002)(66946007)(38100700002)(316002)(6512007)(83380400001)(30864003)(38350700002)(1076003)(2906002)(44832011)(2616005)(6916009)(6506007)(186003)(508600001)(966005)(6666004)(86362001)(26005)(5660300002)(52116002)(36756003)(66556008)(66476007); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Jy00znRZG4PBFfTxLNCLVlVyl3U/hNyltmHZ8RwV/j3F8MVSci52q3aExqXl?= =?us-ascii?Q?T09rF+KIBVk1x74v0hgs7YVL5uAFZDFMu65iEtbckvibLjuwLzXZgwK5t67M?= =?us-ascii?Q?U5GoOo3uGNtGs3gEfyY8PVGMYRlQ1pI+L5VjoyGu9nJBYcvSDIreu5MInWuz?= =?us-ascii?Q?ibDZfSbBzwbdJNGRBvzPVv7wBQuSCKcUbf2VChIN+V0+UZ/j4N6pcwiC93hv?= =?us-ascii?Q?GzPFvs2KW5NuoV4Ctp68upGO/8pQVDaFYrxjHL+yNIEIRMhW9IRGIbLgjgBn?= =?us-ascii?Q?Fwdx0E7XxrQqbhMQyVOhTOM/fLpaBkaVXzEK3nQ79zootSE6gh9b6fDXwB2E?= =?us-ascii?Q?r8py13jhKcEZS2ZkIGJuuPyl9/Hkl7kFn+I6CkWPH/ryyU9AO0OpFVWz/uC2?= =?us-ascii?Q?cJpmtY0lNJObOV/UkTLPqxINTYj3KmBxyyHbLEpFlZsQ/tPYOVCkr+SI1c/P?= =?us-ascii?Q?yLohJqbApE/xVVvdZykk7KfL2oys1h15SPR1BlM+FwjucQ5rQuNBYd2Y1gBW?= =?us-ascii?Q?mrOGzazJV2hAGoVomvLliX3jzr+jqjJMoVdqW9KqlkLlbI6tq1hACbw6EqF1?= =?us-ascii?Q?U9dFoi9K/UTKgT4laMJmWhv+BFk5WHI67bRYVcrX3UVpRk6zsPhvRg6RnVwH?= =?us-ascii?Q?c6w20eBYO8w/Tj4heh2/mSurYAnUdCX+bAB3uQ4joLA8oRX0l1iiy4DI8MM/?= =?us-ascii?Q?9d0K8qUzWKkuux7eEU0AlseQU2mwDEgE+87EJHYQZThJdkRnP8h7i2jJZ2pt?= =?us-ascii?Q?I1nPnDJJmhGyceJUjtzKW7qgsCTSxZN94OoxFgJs+Is6M/+Ishsf1kauPjM1?= =?us-ascii?Q?/fnvt9LVdxII9ecs7IFC24sIJUkgt1dH2OEW1WRN94ItWkQozinB5eWjnLiw?= =?us-ascii?Q?kxXbTf8jM4eIphAXWxFGDIsTMpoC5Zz4y4M+aTCcmWWo2wG+FKSXqa3nCqWi?= =?us-ascii?Q?fmIzJno5BZDcsia2gKfKrUZKU5JU7L3+FX6alRD0u0Cn6cauH/MKQ9Adxevs?= =?us-ascii?Q?n+Q5t21K9G3br9wIudW4q+kUn55l7UPsA8b+3Op6erU6DN443b+2yWHsDDXH?= =?us-ascii?Q?TIAaCJgHENhrfQ0a/KlcVcRl493JXGty73YfCze6SBWh+Mu+2/MiOhhVPsNf?= =?us-ascii?Q?VNYwTTKP+8KLp6a226mZ+zRjVI13/FmqqRCRyzuoSYK5JLYfayng2fHzLWBm?= =?us-ascii?Q?3I8ZckvG8EmBgrX9t608X3IXzk8YDf2SWYVf1N9g8+5YomtTMtk4RV7AFXCf?= =?us-ascii?Q?F0KR2L4lMpWJR9CMQ3/49dMMQ1b46IwSwJjL/ta5adNyoQFZN7IN6qFqsUce?= =?us-ascii?Q?hli2deqHiM/PJzq4WS3kpTjV4YR1Nq9dWy77PdCankFOxIP8J+AwOqpvjvcL?= =?us-ascii?Q?9Jv7fdcp5ChkCVNmQi52t2h0xLjOXfaik6+55WDeL5d1BTvHV4u+dhfDCFGZ?= =?us-ascii?Q?AK+d2PEtJsQGCd7XvzFtUIuVja0/GCTcB3vHZyGHz90LVuqIBuSsIRd0HlyP?= =?us-ascii?Q?OcL+W7Vcryn1lo5MHqhgin0wS2ThUkVYIvYM0NreDPWrmVkvhV4zdgdRpg+7?= =?us-ascii?Q?mamuYDB3uvfw+L87OQYCz/JdrQEkNURK20E7yFdCpsUxmu64l1ZlgPDHdPnO?= =?us-ascii?Q?oQbwULiONvxeb+iVuuUsgvyTbqxw+Yl5whG60GKfzrKxhmtD7t0eFkTEW1XF?= =?us-ascii?Q?KnM+f85pnwYIKksl2N1/nRyKQ0U=3D?= X-OriginatorOrg: t2data.com X-MS-Exchange-CrossTenant-Network-Message-Id: e9bce979-699f-4fbb-8561-08d9e352ee2f X-MS-Exchange-CrossTenant-AuthSource: DB9P251MB0618.EURP251.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jan 2022 18:12:37.3800 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 27928da5-aacd-4ba1-9566-c748a6863e6c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wyctPJDuHJWEdZMv5dVYcQrRdddR6Jz01NEJgIiuNQLDIMDjy0MGCnxT/nQ6m28K2ymcJkQHzgzawCEcoVdr6408Et4cZm6Ng2nEbZgmPLk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PRAP251MB0419 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on metis.ext.pengutronix.de X-Spam-Level: X-Spam-Status: No, score=-2.0 required=4.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Subject: [ptxdist] [PATCH v3] efivar: Version bump 37 -> 38. X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false * Contains approx 2 years worth of fixes, including a lot of compile error fixes. So drop old patchset. * Add Wno-error to the efivar make env. * Add new patchset. Fix cross-compilation where one target was used for multiple archs which failed and drop documentation building. Was dependant on non-provided binary (mandoc). Signed-off-by: Christian Melki --- ..._guid-handle-misaligned-guid-pointer.patch | 55 ------ ...es-Werror-address-of-packed-member-c.patch | 167 ------------------ patches/efivar-37/series | 5 - ...uild-util.c-separately-for-makeguids.patch | 34 ++++ .../0002-docs-Remove-docs-building.patch | 25 +++ patches/efivar-38/series | 5 + rules/efivar.make | 10 +- 7 files changed, 71 insertions(+), 230 deletions(-) delete mode 100644 patches/efivar-37/0001-dp.h-make-format_guid-handle-misaligned-guid-pointer.patch delete mode 100644 patches/efivar-37/0002-Fix-all-the-places-Werror-address-of-packed-member-c.patch delete mode 100644 patches/efivar-37/series create mode 100644 patches/efivar-38/0001-src-Makefile-build-util.c-separately-for-makeguids.patch create mode 100644 patches/efivar-38/0002-docs-Remove-docs-building.patch create mode 100644 patches/efivar-38/series diff --git a/patches/efivar-37/0001-dp.h-make-format_guid-handle-misaligned-guid-pointer.patch b/patches/efivar-37/0001-dp.h-make-format_guid-handle-misaligned-guid-pointer.patch deleted file mode 100644 index 89e913a74..000000000 --- a/patches/efivar-37/0001-dp.h-make-format_guid-handle-misaligned-guid-pointer.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Peter Jones -Date: Mon, 7 Jan 2019 10:30:59 -0500 -Subject: [PATCH] dp.h: make format_guid() handle misaligned guid pointers - safely. - -GCC 9 adds -Werror=address-of-packed-member, which causes us to see the -build error reported at - https://bugzilla.opensuse.org/show_bug.cgi?id=1120862 . - -That bug report shows us the following: - -In file included from dp.c:26: -dp.h: In function 'format_vendor_helper': -dp.h:120:37: error: taking address of packed member of 'struct ' may result in an unaligned pointer value [-Werror=address-of-packed-member] - 120 | format_guid(buf, size, off, label, &dp->hw_vendor.vendor_guid); - | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -dp.h:74:25: note: in definition of macro 'format_guid' - 74 | _rc = efi_guid_to_str(guid, &_guidstr); \ - | ^~~~ -cc1: all warnings being treated as errors - -This patch makes format_guid() use a local variable as a bounce buffer -in the case that the guid we're passed is aligned as chaotic neutral. - -Note that this only fixes this instance and there may be others that bz -didn't show because it exited too soon, and I don't have a gcc 9 build -in front of me right now. - -Signed-off-by: Peter Jones ---- - src/dp.h | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/src/dp.h b/src/dp.h -index aa4e3902992d..20cb608d05f7 100644 ---- a/src/dp.h -+++ b/src/dp.h -@@ -70,8 +70,15 @@ - #define format_guid(buf, size, off, dp_type, guid) ({ \ - int _rc; \ - char *_guidstr = NULL; \ -- \ -- _rc = efi_guid_to_str(guid, &_guidstr); \ -+ efi_guid_t _guid; \ -+ const efi_guid_t * const _guid_p = \ -+ likely(__alignof__(guid) == sizeof(guid)) \ -+ ? guid \ -+ : &_guid; \ -+ \ -+ if (unlikely(__alignof__(guid) == sizeof(guid))) \ -+ memmove(&_guid, guid, sizeof(_guid)); \ -+ _rc = efi_guid_to_str(_guid_p, &_guidstr); \ - if (_rc < 0) { \ - efi_error("could not build %s GUID DP string", \ - dp_type); \ diff --git a/patches/efivar-37/0002-Fix-all-the-places-Werror-address-of-packed-member-c.patch b/patches/efivar-37/0002-Fix-all-the-places-Werror-address-of-packed-member-c.patch deleted file mode 100644 index 7653bd80a..000000000 --- a/patches/efivar-37/0002-Fix-all-the-places-Werror-address-of-packed-member-c.patch +++ /dev/null @@ -1,167 +0,0 @@ -From: Peter Jones -Date: Thu, 21 Feb 2019 15:20:12 -0500 -Subject: [PATCH] Fix all the places -Werror=address-of-packed-member catches. - -This gets rid of all the places GCC 9's -Werror=address-of-packed-member -flags as problematic. - -Fixes github issue #123 - -Signed-off-by: Peter Jones ---- - src/dp-message.c | 6 ++++-- - src/dp.h | 12 ++++-------- - src/guid.c | 2 +- - src/include/efivar/efivar.h | 2 +- - src/ucs2.h | 27 +++++++++++++++++++-------- - 5 files changed, 29 insertions(+), 20 deletions(-) - -diff --git a/src/dp-message.c b/src/dp-message.c -index 3724e5f57bdb..9f964663de86 100644 ---- a/src/dp-message.c -+++ b/src/dp-message.c -@@ -620,11 +620,13 @@ _format_message_dn(char *buf, size_t size, const_efidp dp) - ) / sizeof(efi_ip_addr_t); - format(buf, size, off, "Dns", "Dns("); - for (int i=0; i < end; i++) { -- const efi_ip_addr_t *addr = &dp->dns.addrs[i]; -+ efi_ip_addr_t addr; -+ -+ memcpy(&addr, &dp->dns.addrs[i], sizeof(addr)); - if (i != 0) - format(buf, size, off, "Dns", ","); - format_ip_addr(buf, size, off, "Dns", -- dp->dns.is_ipv6, addr); -+ dp->dns.is_ipv6, &addr); - } - format(buf, size, off, "Dns", ")"); - break; -diff --git a/src/dp.h b/src/dp.h -index 20cb608d05f7..1f921d524aaf 100644 ---- a/src/dp.h -+++ b/src/dp.h -@@ -71,13 +71,9 @@ - int _rc; \ - char *_guidstr = NULL; \ - efi_guid_t _guid; \ -- const efi_guid_t * const _guid_p = \ -- likely(__alignof__(guid) == sizeof(guid)) \ -- ? guid \ -- : &_guid; \ -- \ -- if (unlikely(__alignof__(guid) == sizeof(guid))) \ -- memmove(&_guid, guid, sizeof(_guid)); \ -+ const efi_guid_t * const _guid_p = &_guid; \ -+ \ -+ memmove(&_guid, guid, sizeof(_guid)); \ - _rc = efi_guid_to_str(_guid_p, &_guidstr); \ - if (_rc < 0) { \ - efi_error("could not build %s GUID DP string", \ -@@ -86,7 +82,7 @@ - _guidstr = onstack(_guidstr, \ - strlen(_guidstr)+1); \ - _rc = format(buf, size, off, dp_type, "%s", \ -- _guidstr); \ -+ _guidstr); \ - } \ - _rc; \ - }) -diff --git a/src/guid.c b/src/guid.c -index 306c9ff8287c..3156b3b7c60a 100644 ---- a/src/guid.c -+++ b/src/guid.c -@@ -31,7 +31,7 @@ - extern const efi_guid_t efi_guid_zero; - - int NONNULL(1, 2) PUBLIC --efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b) -+efi_guid_cmp(const void * const a, const void * const b) - { - return memcmp(a, b, sizeof (efi_guid_t)); - } -diff --git a/src/include/efivar/efivar.h b/src/include/efivar/efivar.h -index 316891ccae9c..ad6449d9d938 100644 ---- a/src/include/efivar/efivar.h -+++ b/src/include/efivar/efivar.h -@@ -128,7 +128,7 @@ extern int efi_symbol_to_guid(const char *symbol, efi_guid_t *guid) - - extern int efi_guid_is_zero(const efi_guid_t *guid); - extern int efi_guid_is_empty(const efi_guid_t *guid); --extern int efi_guid_cmp(const efi_guid_t *a, const efi_guid_t *b); -+extern int efi_guid_cmp(const void * const a, const void * const b); - - /* import / export functions */ - typedef struct efi_variable efi_variable_t; -diff --git a/src/ucs2.h b/src/ucs2.h -index dbb59004b7c0..edd8367b4bcc 100644 ---- a/src/ucs2.h -+++ b/src/ucs2.h -@@ -23,16 +23,21 @@ - (((val) & ((mask) << (shift))) >> (shift)) - - static inline size_t UNUSED --ucs2len(const uint16_t * const s, ssize_t limit) -+ucs2len(const void *vs, ssize_t limit) - { - ssize_t i; -- for (i = 0; i < (limit >= 0 ? limit : i+1) && s[i] != (uint16_t)0; i++) -+ const uint16_t *s = vs; -+ const uint8_t *s8 = vs; -+ -+ for (i = 0; -+ i < (limit >= 0 ? limit : i+1) && s8[0] != 0 && s8[1] != 0; -+ i++, s8 += 2, s++) - ; - return i; - } - - static inline size_t UNUSED --ucs2size(const uint16_t * const s, ssize_t limit) -+ucs2size(const void *s, ssize_t limit) - { - size_t rc = ucs2len(s, limit); - rc *= sizeof (uint16_t); -@@ -69,10 +74,11 @@ utf8size(uint8_t *s, ssize_t limit) - } - - static inline unsigned char * UNUSED --ucs2_to_utf8(const uint16_t * const chars, ssize_t limit) -+ucs2_to_utf8(const void * const voidchars, ssize_t limit) - { - ssize_t i, j; - unsigned char *ret; -+ const uint16_t * const chars = voidchars; - - if (limit < 0) - limit = ucs2len(chars, -1); -@@ -124,10 +130,12 @@ ucs2_to_utf8(const uint16_t * const chars, ssize_t limit) - } - - static inline ssize_t UNUSED NONNULL(4) --utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8) -+utf8_to_ucs2(void *ucs2void, ssize_t size, int terminate, uint8_t *utf8) - { - ssize_t req; - ssize_t i, j; -+ uint16_t *ucs2 = ucs2void; -+ uint16_t val16; - - if (!ucs2 && size > 0) { - errno = EINVAL; -@@ -162,10 +170,13 @@ utf8_to_ucs2(uint16_t *ucs2, ssize_t size, int terminate, uint8_t *utf8) - val = utf8[i] & 0x7f; - i += 1; - } -- ucs2[j] = val; -+ val16 = val; -+ ucs2[j] = val16; -+ } -+ if (terminate) { -+ val16 = 0; -+ ucs2[j++] = val16; - } -- if (terminate) -- ucs2[j++] = (uint16_t)0; - return j; - }; - diff --git a/patches/efivar-37/series b/patches/efivar-37/series deleted file mode 100644 index e6f14fec2..000000000 --- a/patches/efivar-37/series +++ /dev/null @@ -1,5 +0,0 @@ -# generated by git-ptx-patches -#tag:base --start-number 1 -0001-dp.h-make-format_guid-handle-misaligned-guid-pointer.patch -0002-Fix-all-the-places-Werror-address-of-packed-member-c.patch -# cbb8f240dc2a442323107d34454fa178 - git-ptx-patches magic diff --git a/patches/efivar-38/0001-src-Makefile-build-util.c-separately-for-makeguids.patch b/patches/efivar-38/0001-src-Makefile-build-util.c-separately-for-makeguids.patch new file mode 100644 index 000000000..12db66bfa --- /dev/null +++ b/patches/efivar-38/0001-src-Makefile-build-util.c-separately-for-makeguids.patch @@ -0,0 +1,34 @@ +From: Alexander Kanavin +Date: Tue, 18 Jan 2022 11:53:41 +0100 +Subject: [PATCH] src/Makefile: build util.c separately for makeguids + +util.c needs to be built twice when cross-compiling: +for the build machine to be able to link with +makeguids which then runs during the same build, +and then for the actual target. + +Upstream-Status: Submitted [https://github.com/rhboot/efivar/pull/203] +Signed-off-by: Alexander Kanavin +--- + src/Makefile | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index 0e423c44601a..b10051ba0adf 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -28,10 +28,13 @@ EFIVAR_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(EFIVAR_SOURCES))) + EFISECDB_SOURCES = efisecdb.c guid-symbols.c secdb-dump.c util.c + EFISECDB_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(EFISECDB_SOURCES))) + GENERATED_SOURCES = include/efivar/efivar-guids.h guid-symbols.c +-MAKEGUIDS_SOURCES = makeguids.c util.c ++MAKEGUIDS_SOURCES = makeguids.c util-makeguids.c + MAKEGUIDS_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(MAKEGUIDS_SOURCES))) + MAKEGUIDS_OUTPUT = $(GENERATED_SOURCES) guids.lds + ++util-makeguids.c : ++ cp util.c util-makeguids.c ++ + ALL_SOURCES=$(LIBEFISEC_SOURCES) $(LIBEFIBOOT_SOURCES) $(LIBEFIVAR_SOURCES) \ + $(MAKEGUIDS_SOURCES) $(GENERATED_SOURCES) $(EFIVAR_SOURCES) \ + $(sort $(wildcard include/efivar/*.h)) diff --git a/patches/efivar-38/0002-docs-Remove-docs-building.patch b/patches/efivar-38/0002-docs-Remove-docs-building.patch new file mode 100644 index 000000000..ef34cf96c --- /dev/null +++ b/patches/efivar-38/0002-docs-Remove-docs-building.patch @@ -0,0 +1,25 @@ +From: Christian Melki +Date: Fri, 28 Jan 2022 18:42:13 +0100 +Subject: [PATCH] docs: Remove docs building. + +efivar uses mandoc which ptxdist does not provide (yet). +Just skip the entire documentation generation and installation. + +Signed-off-by: Christian Melki +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index c896fc38c210..bf081a66970d 100644 +--- a/Makefile ++++ b/Makefile +@@ -7,7 +7,7 @@ include $(TOPDIR)/src/include/defaults.mk + include $(TOPDIR)/src/include/coverity.mk + include $(TOPDIR)/src/include/scan-build.mk + +-SUBDIRS := src docs ++SUBDIRS := src + + all : | efivar.spec src/include/version.mk prep + all clean install prep : diff --git a/patches/efivar-38/series b/patches/efivar-38/series new file mode 100644 index 000000000..6d03bf252 --- /dev/null +++ b/patches/efivar-38/series @@ -0,0 +1,5 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +0001-src-Makefile-build-util.c-separately-for-makeguids.patch +0002-docs-Remove-docs-building.patch +# 6d7bd314e7046e2c5c771e319b825e34 - git-ptx-patches magic diff --git a/rules/efivar.make b/rules/efivar.make index db0ed001f..95a759f94 100644 --- a/rules/efivar.make +++ b/rules/efivar.make @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_EFIVAR) += efivar # # Paths and names # -EFIVAR_VERSION := 37 -EFIVAR_MD5 := 9f067275c5f7aafdd75bfb364280ac9c +EFIVAR_VERSION := 38 +EFIVAR_MD5 := 243fdbc48440212695cb9c6e6fd0f44f EFIVAR := efivar-$(EFIVAR_VERSION) EFIVAR_SUFFIX := tar.bz2 EFIVAR_URL := https://github.com/rhboot/efivar/releases/download/$(EFIVAR_VERSION)/$(EFIVAR).$(EFIVAR_SUFFIX) @@ -28,7 +28,11 @@ EFIVAR_LICENSE := LGPL-2.1-only # ---------------------------------------------------------------------------- EFIVAR_CONF_TOOL := NO -EFIVAR_MAKE_ENV := $(CROSS_ENV) PTXDIST_ICECC=$(PTXDIST_ICERUN) +EFIVAR_MAKE_ENV := \ + $(CROSS_ENV) \ + ERRORS="-Wno-error" \ + PTXDIST_ICECC=$(PTXDIST_ICERUN) + EFIVAR_INSTALL_OPT := libdir="/usr/$(CROSS_LIB_DIR)/" install EFIVAR_CFLAGS := \ -- 2.30.2 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de