Skip to contentSkip to conversation

target-sdk-provides-dummy: set nostamp for do_package

PATCH New [email protected] 1 participant 2 messages Oct 25, 2018

lore
Share & tools
lore
#0 lore raw

cover target-sdk-provides-dummy: set nostamp for do_package

From: Kai Kang <[email protected]>

The following changes since commit 8e4c03744cfa8cc559682ebf7074643216dd2b9d:

oe-selftest: devtool: Support meta being a symbolic link (2018-10-21 21:30:35 +0100)

are available in the Git repository at:

git://git.pokylinux.org/poky-contrib kangkai/target-dummy
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kangkai/target-dummy

Kai Kang (1):
target-sdk-provides-dummy: set nostamp for do_package

 meta/recipes-core/meta/target-sdk-provides-dummy.bb | 2 ++
 1 file changed, 2 insertions(+)
Signature · 1 line
2.18.0
#1 lore raw

PATCH 1/1 target-sdk-provides-dummy: set nostamp for do_package

From: Kai Kang <[email protected]>

It exists a situation that there is a common config file includes multilib.conf but variable MULTILIBS is not set by default:

require conf/multilib.conf
MULTILIBS ?= ""

When build target-sdk-provides-dummy in the same build project with following steps, it fails.

1 $ echo 'MACHINE = "qemux86"' >>conf/local.conf

  $ bitbake target-sdk-provides-dummy
2 $ cat <<EOF >>conf/local.conf
    MACHINE = "qemux86-64"
    MULTILIBS = "multilib:lib32"
    DEFAULTTUNE_virtclass-multilib-lib32 = "i586"
    EOF
  $ bitbake target-sdk-provides-dummy
  $ bitbake lib32-target-sdk-provides-dummy

It fails to build lib32-target-sdk-provides-dummy with error messages:

| ERROR: target-sdk-provides-dummy-1.0-r0 do_packagedata: The recipe target-sdk-provides-dummy
|  is trying to install files into a shared area when those files already exist. Those files
|  and their manifest location are:
|   .../tmp/pkgdata/qemux86-64/lib32-target-sdk-provides-dummy
|     (matched in manifest-qemux86_64-lib32-target-sdk-provides-dummy.packagedata)
|   .../tmp/pkgdata/qemux86-64/runtime/lib32-target-sdk-provides-dummy
|     (matched in manifest-qemux86_64-lib32-target-sdk-provides-dummy.packagedata)
|   ... snip ...
| Please verify which recipe should provide the above files.

Because target-sdk-provides-dummy is a virtual package, its sstate caches are same for both qemux86 and qemux86_64. So when build target-sdk-provides-dummy for qemux86_64, it re-uses the sstate cache from qemux86 and then create file lib32-target-sdk-provides-dummy under ${PKGDATA_DIR} which should not and it conflicts with lib32-target-sdk-provides-dummy too.

So make do_package always be executed to fix the issue. Because it is a dummy package, it won't cost too much build time.

---
 meta/recipes-core/meta/target-sdk-provides-dummy.bb | 2 ++
 1 file changed, 2 insertions(+)
meta/recipes-core/meta/target-sdk-provides-dummy.bb +2 -0
index 714d15d8ba..0eac23599b 100644
@@ -8,4 +8,6 @@ DUMMYPROVIDES = "\
     pkgconfig \
 "
 
+do_package[nostamp] = "1"
+
 require dummy-sdk-package.inc
Signature · 1 line
2.18.0