[oe] Commit ca257adc587bb0937ea76d8b32b654fdbf4192b8 changes behavior on which recipes rely

Khem Raj raj.khem at gmail.com
Sun Jul 4 01:01:50 UTC 2010


Hi

Due to this commit here

commit ca257adc587bb0937ea76d8b32b654fdbf4192b8
Author: Nitin A Kamble <nitin.a.kamble at intel.com>
Date:   Thu Jun 3 21:50:02 2010 -0700

    bitbake decodeurl: fix the file:// url handling
    
    Without this patch decoding a url of this kind file://dir/filename
gives
    path=/filename host=dir.
    With the patch it decodes as path=/dir/filename host=""
    
    Probably nobody stumbled on this issue yet because nobody used
    file:// urls with directory names in the path.
    
    (From Poky rev: c3682bf89bdf236a4b4d834069d947b6a1456791)
    
    Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>


few recipes in OE are broken now.
Previous behavior was that if it has
file://pam.d/securetty in SRC_URI
then bitbake would copy it into
$WORKDIR/pam.d/securetty and recipes used
this location to access these files. But after
this commit the directory is ignored and it gets
copied into ${WORKDIT}

Problem is that I have found three places where it happens
two were ok because the build failed as it could not find
the file where it was looking for but third one took me
a day to debug because it copied only if directory existed
otherwise it used the old files so the build passed and image
got created but it would not let login happen

see shadow recipes

do_install_append() {                                                                                                                                                            
  # Ensure that /etc/skel is created so any default files that we want
  # copied into new users home                                                                                
  # dirs can be put in there later (ideal for .xinitrc for example).                                                                                                             
  install -d ${D}${sysconfdir}/skel/                                                                                                                                             
                                                                                                                                                                                 
  # Ensure that the image has as /var/spool/mail dir so shadow can put
  # mailboxes there if the user                                                                               
  # reconfigures Shadow to default (see sed below).                                                                                                                              
  install -d ${D}${SHADOW_MAILDIR}                                                                                                                                               
                                                                                                                                                                                 
  if [ -e ${WORKDIR}/pam.d ]; then                                                                                                                                               
      install -d ${D}${sysconfdir}/pam.d/                                                                                                                                        
      install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/                                                                                                                
  fi                                                                                                                                                                             

...


I would propose the revert the above commit as I am reluctant
to fix so many recipes I know only 3 and who know how many more
will start doing wrong things silently.

Thanks
-Khem





More information about the Openembedded-devel mailing list