Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vspmif-user-module, qosif-user-module: fix header installation #2

Open
wants to merge 2 commits into
base: jethro
Choose a base branch
from

Conversation

fredcadete
Copy link

The recipe is installing headers directly to the sysroot and so they are not tracked in sstate.
This causes sporadic problems in builds that reuse sstate.

To reproduce the proble,:

  • normal setup
  • bitbake vspmif-tp-user-module
  • mv tmp tmp-old (simulates reusing only sstate)
  • bitbake vspmif-tp-user-module -c cleansstate
  • bitbake vspmif-tp-user-module

Frederico Cadete added 2 commits July 5, 2016 14:25
The do_compile step was copying directly to the sysroot's
/usr/include. Because this was a direct copy it was not put into
the sstate.
The do_install step was installing the same header files into
/usr/local/include. Because includedir was not pointed here, they
were also not put into the sstate.
The issue was then that if you tried to do a build reusing sstate,
the header files from vspmif-user-module would not be present,
and then dependent recipes like vspmif-tp-user-module.

The patch fixes this by removing the direct copy to sysroot,
and setting includedir to /usr/local/include.

Signed-off-by: Frederico Cadete <[email protected]>
The do_compile step was copying a header file directly into
the sysroot.
This was not tracked in sstate and can cause problems when builds
reuse sstate.

Signed-off-by: Frederico Cadete <[email protected]>
@fredcadete fredcadete changed the title vspmif-user-module: fix header installation vspmif-user-module, qosif-user-module: fix header installation Jul 5, 2016
@fredcadete
Copy link
Author

The same issue happened with qosif-user-module

@tasaito
Copy link

tasaito commented Jul 8, 2016

Hi Frederico-san,

Thank you for your report.

About this problem, investigation is started in our Team.
It will be improved by the next release.

Regards,

@tasaito
Copy link

tasaito commented Sep 30, 2016

Hi Frederico-san,

The same problem occurs also in Renesas-Yocto-v2.12.0.

The shared include file is installed in /usr/local/include by do_install.
However, ${STAGING_INCDIR} is /usr/include.
Therefore, SSTATE can not recreate /usr/local/include.

STAGING_INCDIR = "${STAGING_DIR_HOST}/${includedir}"
We have to change "/usr/include" into "/usr/local/include".

W/A sample is the following.
qosif is also the same.
[vspm-user-module.bb]

--- a/meta-rcar-gen3/recipes-multimedia/vspmif-module/vspmif-user-module.bb
+++ b/meta-rcar-gen3/recipes-multimedia/vspmif-module/vspmif-user-module.bb
@@ -11,6 +11,9 @@ VSPMIF_LIB_DIR = "vspm_if-module/files/vspm_if"
 
 EXTRA_OEMAKE = "ARCH=${TARGET_ARCH}"
 
+includedir = "/usr/local/include"
+SSTATE_DUPWHITELIST = "${STAGING_INCDIR}"
+
 do_compile() {
     export VSPM_LEGACY_IF="1"

We will fix this problem in the next release.

Regards,
Takeshi Saito

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants