samba, libldb: add package conflicts

samba package also installs LDB command line tools and python LDB
module. libldb package installs the same tools and pyldb module from
standalone LDB source.

pkgdata shows the conflict clearly:

  samba: /usr/bin/ldbadd
  libldb: /usr/bin/ldbadd
  samba-python3: site-packages/ldb.so
  pyldb: site-packages/ldb.so

So when both samba and libldb are added in same image, rootfs can fail
because package manager sees same files from two different packages.
Both package sets are not expected to be installed together.

Add RCONFLICTS for samba/libldb and samba-python3/pyldb. This makes the
conflict explicit during dependency resolution instead of failing later
as file install conflict.

Older meta-networking had similar conflict handling for samba/libldb in
commit: https://git.openembedded.org/meta-openembedded/commit/?id=8e641e28f630dac61a03373ad70c72a2370ad11e

This change adds the same handling again with current python3 package names.

Signed-off-by: Himanshu Jadon <hjadon@cisco.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
(cherry picked from commit ee1c39e595)
Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
This commit is contained in:
Himanshu Jadon
2026-09-15 07:52:09 +05:30
committed by Anuj Mittal
parent 14e1292075
commit c27765e057
2 changed files with 5 additions and 0 deletions
@@ -50,6 +50,9 @@ CVE_STATUS[CVE-2011-2411] = "not-applicable-platform: vulnerable only on HP NonS
# remove default added RDEPENDS on perl
RDEPENDS:${PN}:remove = "perl"
RCONFLICTS:${PN} = "libldb"
RCONFLICTS:${PN}-python3 = "pyldb"
DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libaio libpam libtasn1 libtasn1-native jansson libparse-yapp-perl-native gnutls cmocka ngtcp2 bison-native"
inherit features_check
@@ -5,6 +5,8 @@ LICENSE = "LGPL-3.0-or-later & LGPL-2.1-or-later & GPL-3.0-or-later"
DEPENDS += "libtdb libtalloc libtevent popt cmocka"
RDEPENDS:pyldb += "python3"
RCONFLICTS:${PN} = "samba"
RCONFLICTS:pyldb = "samba-python3"
export PYTHONHASHSEED = "1"
export PYTHONARCHDIR = "${PYTHON_SITEPACKAGES_DIR}"