From patchwork Tue Mar 18 15:52:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Mikanovich X-Patchwork-Id: 4114 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Tue, 18 Mar 2025 16:52:34 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-oo1-f59.google.com (mail-oo1-f59.google.com [209.85.161.59]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 52IFqXpf023517 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 18 Mar 2025 16:52:34 +0100 Received: by mail-oo1-f59.google.com with SMTP id 006d021491bc7-5f32b797245sf7200647eaf.1 for ; Tue, 18 Mar 2025 08:52:33 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1742313147; cv=pass; d=google.com; s=arc-20240605; b=Ahk5GauEavPRNANTnG/b9UlVqs8vYF6C9KNtUgP5Y0+kta8sycC9XLdixHur1+h/vJ t3fTIjCTKUHf+0l9iOjWjRVEdhI6pQhqfhzExt3g4i5zBfq7vjY62ScRjlASUWJVNbxc uxdDiz6IMw59aYg+MkPW7r6VjTMuDGCo9q7EDwFu7cxsdtr79/mP4kVfHZnuri6mbGVm DprPlfSTHEmS+7R157fqJ+n5NBJM0VKMMivTvlTskF8URz+qSQ/NvQIMFH0pv/96TIVA l8GMt2IYxk2yzrJ7QkZDC7QMv6WpiU7UlURXFQYkR9MW/Ydwq2pRsbtbQzvy6pupqK+O uv/g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:cc:to:from:sender:dkim-signature; bh=gpBWkFw5RtOgMMDvKGnUf6QF8lj6jlFchNlkKRuqMiY=; fh=eYxfKYEuwxlqrdgeNupwZXpB/QrgcdgjIDoICmAqQbY=; b=ZwsIPfj/mZc7De7EQ1eoiONvAhk0SzrG2uMlUhsRaXPhB44f4bxaocOiUcynS7OZ7N M6iveeNbQJ2d5gz47bbX48BXgEFKThwjA9JofZEQsUMErFtO3IqYYkZ/qhivrYBKffH8 rxPnLg7IIUMaWqOkusi8hpZFK5VTE0Gk4YbWR8y6wv6FxV7n4Q8w89vReaVmot1HtOsE LcNtdTJeR5lIfwFoLRBlr4pydwlLdJw2+0OjgzCKNfCKjUaHfs8fMEsL+uQak+xl2uZ3 i9UayXS18dV6wBn5Arbz47K2W4QNCokrFpUOoU3hj8MCdt6zStxkUXIuI7XJS/MYsCUM UKQg==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1742313147; x=1742917947; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:message-id:date:subject:cc:to:from :sender:from:to:cc:subject:date:message-id:reply-to; bh=gpBWkFw5RtOgMMDvKGnUf6QF8lj6jlFchNlkKRuqMiY=; b=xqKirUOT4IXsuwQ4jE6G6Hfag8WQVP6h9vHnpmt+3Pbiyg0N5c6jDQ43Px5qQtaUu1 TBvFe2hW11GMTZksBpA0Dk7e6oIlZQ938koq26ZbtI3z9WBenZqCMEVKbPQSzp9cD8fE RBQsdNBxFgfw7kmfbp3yD7jid73JI9VYO0f02PNwC5oqMq7z8wEl7Kc3n87fQLpLjXU4 ZTTnVJlzBFv4SebH7o57joQ4wNw4ZNbY2r4dv//c6msbPSpa1oarLeHC1LkSTRPIYBen e28cdiHJ8nFvrrmCSdVKzv2ZIelC+YMIteVelmGfdt2bSEfswT3lAi1BeN/ZDiZ30gie zm4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742313147; x=1742917947; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :message-id:date:subject:cc:to:from:x-beenthere:x-gm-message-state :sender:from:to:cc:subject:date:message-id:reply-to; bh=gpBWkFw5RtOgMMDvKGnUf6QF8lj6jlFchNlkKRuqMiY=; b=WdNSYHMn5A2nLwDcAHdMw4zNojEVUrwX/Q7skNYcu8NZWiN3QH3oge8b7ND22219c2 G2U1IA2xHJxnDXiIfosH7pLIAtRUV47ID4aVhHr070QwaauZ4xIQ8PxDC8tcnKxL3b7M ocwBBI4lc3ByDcEN4wJnhQ/Zm3UFlhdEPekrtZed+usPl3ToA0HfhtMVCTX/4gCu9XHW T8xcMCqmZ7ZStGd+AshC3DfnjQz/JsqzhJcocO9FNsgmY8JYa14RJ5kZcoo9t0TjycTv YOEDUv+y7BVsnOGOo0ZG1Ckq7+H8zdlD4i6Podw/Ob73n+pdee82aAY2hz2qUHKRw7+p qSrA== Sender: isar-users@googlegroups.com X-Forwarded-Encrypted: i=2; AJvYcCWz5HMmIS9g25kPgePQnx+ZQHnxQDwn+t2YN1gC2iaPKs62f4WIdB5S3+En4y68V8NCRXudhIo=@isar-build.org X-Gm-Message-State: AOJu0YwUQTRnLc9hpQwFTEeOx079CMDDutDOpvP09QT6t7mEnA5UFVFz YWX4fkrJA8gzLt0nYbPwzlR4X8ZEZpLnEfrafzJkwaZgSewbRz7U X-Google-Smtp-Source: AGHT+IH8L8Dvn+GL9n1LcDQy/yOdkoucpYXhYtkPGw3X81kV6U+yMOydHwZNS5FlkfqgaM8HSpZS1w== X-Received: by 2002:a05:6820:8c5:b0:601:a813:5f22 with SMTP id 006d021491bc7-601e464abe8mr8948045eaf.6.1742313147437; Tue, 18 Mar 2025 08:52:27 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=ARLLPAIMCjmzEhLtnULYSBR9nKraVmmQSd6ldoLbuAzwSCcK8g== Received: by 2002:a4a:ea87:0:b0:601:a5e9:6391 with SMTP id 006d021491bc7-601d8868cd3ls1673679eaf.0.-pod-prod-09-us; Tue, 18 Mar 2025 08:52:26 -0700 (PDT) X-Received: by 2002:a05:6808:2201:b0:3f7:d16c:e283 with SMTP id 5614622812f47-3fdeea266aamr10078764b6e.11.1742313146621; Tue, 18 Mar 2025 08:52:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1742313146; cv=none; d=google.com; s=arc-20240605; b=SxurMPm+ukJp7+MmJW+CHgjWJjyCIqdCf4cHPFowVtWV/e3PEnQ/HXR3LJo3M4+06m aaHlRGk2lFNWYBG6773HwcSXqedVRxwI0Nb3rhfIDV/TNWw8jMG12Dz8D2FDUoanzMdv TqMma5EY7v7kolyEiZCoabc4E1E7o6r5J49MuEQIJcFkqPQpZIEpXUysHCo3Z25objnE UFfewQui7Oo+HD2lC1Q3VTjT8NBvmOu6+N9TvjXWEUkH7Az4EpTUT6hWCHSnCGET+Ion vkaD/tO60gLI/0iWVG5Npm4qCWntFHQhsOUmFXnECPoP03YBATVc1je2JZjY4hLhwXS2 5NZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from; bh=CSa+aRR7RBfBg8g3D8HjTmP/FgLHqi49dSkcZz6ZxQA=; fh=/h9QQkzJ8EboVkWg45aWwpaUro6WMavIVd2OhN45RtE=; b=NCkyESLUxqBkLafcYifQE4qbwsP4j0yTreajrgHx/yHby9Ao0di8odF2fCyKaw42dM dwAiD/k/5sw6ongWTyaySZ1bGQfgpvKL8iq9OCJebf6w6u6rfRkbIzvmLYKQtbjXDHbi Rifr4PG/+FdPzNMDAkrh0CNE+6qMjRrNxF6eSUGlm0l++wNA8uoI5SCxy97O+if0OIqw P043UVaoLavuQAXW8UIl0b5yABNpMxTzyG5AqIPe99mgrRHO0ktSQOZz05TGbERv+Y1w Ek8++dBlDH1UW73tircKTy3f/VHTej/JCDl91R/O9MRWjsyxm9f2fGLw4isJUDhbgTY0 7e3w==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id 5614622812f47-3fcd59ff7a1si583795b6e.3.2025.03.18.08.52.26 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 18 Mar 2025 08:52:26 -0700 (PDT) Received-SPF: pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Received: from user-B660.promwad.corp ([159.148.83.123]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 52IFqNTc023512 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 18 Mar 2025 16:52:24 +0100 From: Anton Mikanovich To: isar-users@googlegroups.com Cc: Anton Mikanovich Subject: [PATCH] debianize: Fix unexpected characters in package lists Date: Tue, 18 Mar 2025 17:52:16 +0200 Message-Id: <20250318155216.263546-1-amikan@ilbers.de> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-4.6 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-Original-Sender: amikan@ilbers.de X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Newer dpkg-deb versions got more pedantic to the control file format. Introduce debian package list format helper to cleanup empty items or unexpected commas in dependency options passing to the default control file. This prevents errors like: | dpkg-deb: error: unexpected end of file in archive magic version number in *.deb | Unexpected character ')' parsing formula 'Package (= ), Architecture (= ), $PackageType (= deb)'! | There have been errors! caused by empty DEBIAN_BUILD_DEPENDS value in the line: | Build-Depends: debhelper-compat (= ${DEBIAN_COMPAT}), ${DEBIAN_BUILD_DEPENDS} which results in: | Build-Depends: debhelper-compat (= 13), Signed-off-by: Anton Mikanovich --- meta/classes/base.bbclass | 12 ++++++++++++ meta/classes/debianize.bbclass | 14 ++++++++------ 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 7d4ab49f..2a0eadd7 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -334,3 +334,15 @@ do_unpack[postfuncs] += "create_source_date_epoch_stamp" def get_source_date_epoch_value(d): return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d) + +def deb_list_beautify(d, varname): + line = d.getVar(varname) + if not line: + return '' + + var_list = [] + for a in line.split(','): + stripped = a.strip() + if stripped: + var_list.append(stripped) + return ', '.join(var_list) diff --git a/meta/classes/debianize.bbclass b/meta/classes/debianize.bbclass index 5e9d76f3..b9ebc4ba 100644 --- a/meta/classes/debianize.bbclass +++ b/meta/classes/debianize.bbclass @@ -18,6 +18,8 @@ DEBIAN_CHANGELOG_TIMESTAMP ??= "3600" DESCRIPTION ??= "must not be empty" MAINTAINER ??= "Unknown maintainer " +DEBIANIZE_BUILD_DEPENDS ?= "debhelper-compat (= ${DEBIAN_COMPAT}), ${DEBIAN_BUILD_DEPENDS}" + deb_add_changelog() { changelog_v="${CHANGELOG_V}" timestamp="${DEBIAN_CHANGELOG_TIMESTAMP}" @@ -73,15 +75,15 @@ Section: misc Priority: optional Standards-Version: 3.9.6 Maintainer: ${MAINTAINER} -Build-Depends: debhelper-compat (= ${DEBIAN_COMPAT}), ${DEBIAN_BUILD_DEPENDS} +Build-Depends: ${@ deb_list_beautify(d, 'DEBIANIZE_BUILD_DEPENDS')} Package: ${BPN} Architecture: ${DPKG_ARCH} -Depends: ${DEBIAN_DEPENDS} -Provides: ${DEBIAN_PROVIDES} -Replaces: ${DEBIAN_REPLACES} -Breaks: ${DEBIAN_BREAKS} -Conflicts: ${DEBIAN_CONFLICTS} +Depends: ${@ deb_list_beautify(d, 'DEBIAN_DEPENDS')} +Provides: ${@ deb_list_beautify(d, 'DEBIAN_PROVIDES')} +Replaces: ${@ deb_list_beautify(d, 'DEBIAN_REPLACES')} +Breaks: ${@ deb_list_beautify(d, 'DEBIAN_BREAKS')} +Conflicts: ${@ deb_list_beautify(d, 'DEBIAN_CONFLICTS')} Multi-Arch: ${DEBIAN_MULTI_ARCH} Description: ${DESCRIPTION} EOF