public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: srinuvasan.a@siemens.com
To: isar-users@googlegroups.com
Cc: ubely@ilbers.de, Srinuvasan A <srinuvasan.a@siemens.com>
Subject: [PATCH] debianize: introduce DEBIAN_PROVIDES and DEBIAN_REPLACES
Date: Wed, 28 Feb 2024 15:11:35 +0530	[thread overview]
Message-ID: <20240228094135.3557447-1-srinuvasan.a@siemens.com> (raw)

From: Srinuvasan A <srinuvasan.a@siemens.com>

Allow setting the Provides and Replaces field for auto generated control files,
with this changes now user can configure the provides and replaces in the debian/control file.

Recipes can simply setting the Provides and Replaces field now by defining the
DEBIAN_PROVIDES and DEBIAN_REPLACES variable.

Signed-off-by: Srinuvasan A <srinuvasan.a@siemens.com>
---
 doc/user_manual.md             | 4 ++++
 meta/classes/debianize.bbclass | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/doc/user_manual.md b/doc/user_manual.md
index 747b5ffe..bc730243 100644
--- a/doc/user_manual.md
+++ b/doc/user_manual.md
@@ -936,6 +936,10 @@ For the variables please have a look at the previous example, the following new
 Have a look at the `example-raw` recipe to get an idea how the `dpkg-raw` class can be used to customize your image.
 Note that the package will be build using the whole debian package workflow, so your package will be checked by many debhelper scripts. If those helpers point out quality issues it might be a good idea to fix them. But `example-raw` also shows how rules can still be violated.
 
+Other (optional) customization variables include:
+ - `DEBIAN_PROVIDES` - declare a virtual package to satisfy dependencies
+ - `DEBIAN_REPLACES` - to replace a package with another
+
 ### Prebuilt .deb packages from somewhere
 
 In some cases you might find yourself having a `.deb` that someone else built,
diff --git a/meta/classes/debianize.bbclass b/meta/classes/debianize.bbclass
index 7de98673..adbb5da4 100644
--- a/meta/classes/debianize.bbclass
+++ b/meta/classes/debianize.bbclass
@@ -8,6 +8,8 @@ CHANGELOG_V ??= "${PV}"
 DPKG_ARCH ??= "any"
 DEBIAN_BUILD_DEPENDS ??= ""
 DEBIAN_DEPENDS ??= ""
+DEBIAN_PROVIDES ??= ""
+DEBIAN_REPLACES ??= ""
 DEBIAN_CONFLICTS ??= ""
 DEBIAN_MULTI_ARCH ??= "no"
 DEBIAN_COMPAT ??= "10"
@@ -74,6 +76,8 @@ Build-Depends: debhelper-compat (= ${DEBIAN_COMPAT}), ${DEBIAN_BUILD_DEPENDS}
 Package: ${BPN}
 Architecture: ${DPKG_ARCH}
 Depends: ${DEBIAN_DEPENDS}
+Provides: ${DEBIAN_PROVIDES}
+Replaces: ${DEBIAN_REPLACES}
 Conflicts: ${DEBIAN_CONFLICTS}
 Multi-Arch: ${DEBIAN_MULTI_ARCH}
 Description: ${DESCRIPTION}
-- 
2.34.1


             reply	other threads:[~2024-02-28  9:41 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-28  9:41 srinuvasan.a [this message]
2024-03-04  6:08 ` srinu
2024-03-04 12:15   ` Uladzimir Bely
2024-03-06  7:20 ` Uladzimir Bely
  -- strict thread matches above, loose matches on Subject: below --
2024-02-13 12:56 [PATCH] debianize: Introduce " Srinuvasan Arjunan
2024-02-13 18:48 ` Florian Bezdeka
2024-02-16  6:38 ` Uladzimir Bely
2023-11-14 19:05 [PATCH] debianize: introduce " Cedric Hombourger
2023-11-16  7:07 ` Uladzimir Bely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240228094135.3557447-1-srinuvasan.a@siemens.com \
    --to=srinuvasan.a@siemens.com \
    --cc=isar-users@googlegroups.com \
    --cc=ubely@ilbers.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox