All of lore.kernel.org
 help / color / mirror / Atom feed
From: richard.purdie@linuxfoundation.org
To: Serhey Popovych <serhe.popovych@gmail.com>,
	Andre McCurdy <armccurdy@gmail.com>
Cc: OE Core mailing list <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 07/13] musl: Ensure GLIBC_LDSO symlink target does not exist on reinstall
Date: Mon, 17 Dec 2018 10:44:27 +0000	[thread overview]
Message-ID: <dee546f2355d673d9364e591d56a09be975fd36f.camel@linuxfoundation.org> (raw)
In-Reply-To: <5ce44bd3-a1eb-a151-41e7-18dfc2789270@gmail.com>

On Mon, 2018-12-17 at 11:49 +0200, Serhey Popovych wrote:
> Richard Purdie wrote:
> > On Fri, 2018-12-14 at 11:09 -0800, Andre McCurdy wrote:
> > > On Fri, Dec 14, 2018 at 9:57 AM Serhey Popovych
> > > <serhe.popovych@gmail.com> wrote:
> > > > Otherwise do_install task will fail on rebuild.
> > > > 
> > > > Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com>
> > > > ---
> > > >  meta/recipes-core/musl/musl_git.bb | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > 
> > > > diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-
> > > > core/musl/musl_git.bb
> > > > index 9cc875c..4593cde 100644
> > > > --- a/meta/recipes-core/musl/musl_git.bb
> > > > +++ b/meta/recipes-core/musl/musl_git.bb
> > > > @@ -61,7 +61,7 @@ do_install() {
> > > >         oe_runmake install DESTDIR='${D}'
> > > > 
> > > >         install -d ${D}${bindir}
> > > > -       rm -f ${D}${bindir}/ldd
> > > > +       rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO}
> > > 
> > > The correct fix here is actually to remove this line entirely.
> > > The
> > > official ruling is that there should be no expectation that re-
> > > running do_install should work and patches to make it work are
> > > not
> > > acceptable.
> > > 
> > >   
> > > http://lists.openembedded.org/pipermail/openembedded-core/2018-September/273723.html
> > 
> > Lets be clear, re-running the do_install task *is* supported and
> > works
> > today. It is actually meant to work when re-run. do_install clears
> > out
> > ${D} at its start so we can assume in do_install functions that it
> > is
> > empty at the start of the function.
> 
> It seems do_install does not clear ${D} or I do something wrong:
> 
> $ bitbake core-image-sato
> <success>
> 
> <Adjust gcc/musl recipe and then run>
> 
> $ bitbake core-image-sato
> 
> ...
> /image/usr/lib64/libc.so
> /home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/image/lib64/ld-musl-powerpc64le.so.1
> > > true
> > Traceback (most recent call last):
> >   File "/home/serhe/devel/git/openembedded-core/scripts/lnr", line
> > 21,
> in <module>
> >     os.symlink(target, linkname)
> > FileExistsError: [Errno 17] File exists: 'image/usr/lib64/libc.so'
> > ->
> '/home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/imageNone'
> > WARNING:
> /home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/temp/run.do_install.77856:1
> exit 1 from 'lnr
> /home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/image/usr/lib64/libc.so
> /home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/imageNone'
> > ERROR: Function failed: do_install (log file is located at
> /home/serhe/devel/git/openembedded-core/build/tmp-
> musl/work/ppc64p8le-oe-linux-musl/musl/1.1.20+gitAUTOINC+39ef612aa1-
> r0/temp/log.do_install.77856)
> ERROR: Task
> (/home/serhe/devel/git/openembedded-core/meta/recipes-
> core/musl/musl_git.bb:do_install)
> failed with exit code '1'
> NOTE: Tasks Summary: Attempted 2713 tasks of which 2703 didn't need
> to
> be rerun and 1 failed.
> 
> ...
> 
> > The only problem may be if you're manually re-running the
> > do_install
> > script in WORKDIR/temp. If you're doing that, you have other
> > problems
> > like the missing fakeroot environment to handle so the non-empty
> > directory is only one minor issue, you're missing other setup
> > pieces as
> > well.
> 
> I haven't play with do_install scripts in WORKDIR/temp. Only
> do_configure and do_build. But anyway thank for pointing for
> potential
> problems.

I just tried "bitbake musl", then "bitbake musl -c install -f" which
should have reproduced the above but it worked fine. Admittedly I was
using MACHINE=qemux86-64. Do those two steps break for you?

Something isn't adding up here and I'd like to get to the bottom of
it...

Cheers,

Richard






  reply	other threads:[~2018-12-17 10:44 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-14 17:54 [PATCH 00/13] powerpc/powerpc64: Support build with musl as libc Serhey Popovych
2018-12-14 17:54 ` [PATCH 01/13] lib/oe/elf.py: Add powerpc64 architecture definition for musl Serhey Popovych
2018-12-14 17:54 ` [PATCH 02/13] tune-power[5-7].inc: Fix DEFAULTTUNE values Serhey Popovych
2018-12-14 17:54 ` [PATCH 03/13] tune-power[5-7].inc: Disable QEMU usermode usage Serhey Popovych
2018-12-14 17:54 ` [PATCH 04/13] qemuwrapper: Explicitly exit in case of no qemu supported for target Serhey Popovych
2018-12-14 17:54 ` [PATCH 05/13] arch-powerpc64.inc: Use elfv2 ABI when building with musl Serhey Popovych
2018-12-14 23:36   ` Khem Raj
2018-12-17  9:36     ` Serhey Popovych
2018-12-17 10:26       ` Richard Purdie
2018-12-14 17:54 ` [PATCH 06/13] musl: Create default library search path based on configuration Serhey Popovych
2018-12-14 23:40   ` Khem Raj
2018-12-17  9:37     ` Serhey Popovych
2018-12-14 17:54 ` [PATCH 07/13] musl: Ensure GLIBC_LDSO symlink target does not exist on reinstall Serhey Popovych
2018-12-14 19:09   ` Andre McCurdy
2018-12-15 11:00     ` Richard Purdie
2018-12-17  9:49       ` Serhey Popovych
2018-12-17 10:44         ` richard.purdie [this message]
2018-12-17 15:13           ` Serhey Popovych
2018-12-14 17:54 ` [PATCH 08/13] openssl: Skip assembler optimized code for powerpc64 with musl Serhey Popovych
2018-12-14 17:54 ` [PATCH 09/13] python3: Fix do_configure check platform triplet error (2) Serhey Popovych
2018-12-14 17:54 ` [PATCH 10/13] gcc: Fix preprocessor redefines for header pathes Serhey Popovych
2018-12-14 17:54 ` [PATCH 11/13] gcc: More places to patch to disable ldbl 128 for musl on PPC Serhey Popovych
2018-12-14 23:44   ` Khem Raj
2018-12-15 12:06     ` Richard Purdie
2018-12-14 17:54 ` [PATCH 12/13] gcc: Enable secureplt for powerpc64 target too Serhey Popovych
2018-12-14 17:54 ` [PATCH 13/13] gcc-7.3, gcc-8.2: Use variable SYSTEMLIBS_DIR instead of hardcoding it for ppc64 Serhey Popovych
2018-12-14 23:46 ` [PATCH 00/13] powerpc/powerpc64: Support build with musl as libc Khem Raj
2018-12-17  9:56   ` Serhey Popovych

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=dee546f2355d673d9364e591d56a09be975fd36f.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=armccurdy@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=serhe.popovych@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.