Bug 4532 - 32-bit pam plugins not installed when added to 64-bit image
Summary: 32-bit pam plugins not installed when added to 64-bit image
Status: RESOLVED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: core (show other bugs)
Version: 1.4
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.6 M5
Assignee: Hongxu Jia
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2013-05-23 07:47 UTC by Ming Liu
Modified: 2014-04-10 01:13 UTC (History)
5 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ming Liu 2013-05-23 07:47:42 UTC
Test bases on commit aeb704fee8b4ffeaeddcdb36ae4e1d62c264ce42 of master:

Setting in local.conf:

MACHINE = "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
IMAGE_INSTALL += "lib32-libpam"

Build succeeded, after boot, checkout /lib/security folder for pam_*.so files installed by lib32-pam-plugin* packages, but there is none.
Comment 1 Hongxu Jia 2014-04-09 06:40:29 UTC
The commit (From OE-Core rev: d08e64a98316d7659b0fb56812667c534f66a1a8)
fix the 32-bit pam plugins not installed when added to 64-bit image.

But could not fix 64-bit pam plugins not installed when added to 32-bit image
Comment 2 Hongxu Jia 2014-04-09 06:41:35 UTC
While the BSP is configured as a 64-bit kernel and 32-bit userspace,
add a 64-bit version of libpam to the filesystem, there was a failure:
...
| Computing transaction...error: Can't install
pam-plugin-unix-1.1.6-r2@lib64_x86_64: no package provides libpam-lib64
|
| Saving cache...
...

While using 'lib64' as the multilib suffix of libpam RPROVIDES , the
RPROVIDES was overridden by map_depends_variable in classextend.py.
...
 $RPROVIDES_lib64-libpam [2 operations]
   set data_smart.py:429 [finalize]
     " libpam-${baselib}"
   set classextend.py:71 [map_depends_variable]4532
     "lib64-libpam"
 computed:
   "lib64-libpam"
RPROVIDES_lib64-libpam="lib64-libpam"
...

Rename the suffix could fix this issue.