All of lore.kernel.org
 help / color / mirror / Atom feed
From: Serhey Popovych <serhe.popovych@gmail.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>,
	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 11:49:59 +0200	[thread overview]
Message-ID: <5ce44bd3-a1eb-a151-41e7-18dfc2789270@gmail.com> (raw)
In-Reply-To: <abe4d45b54c8d323e8d2f04ea01d04367a19beb2.camel@linuxfoundation.org>


[-- Attachment #1.1: Type: text/plain, Size: 3591 bytes --]

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.

> 
> Cheers,
> 
> Richard
> 
> 
> 



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 501 bytes --]

  reply	other threads:[~2018-12-17  9:50 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 [this message]
2018-12-17 10:44         ` richard.purdie
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=5ce44bd3-a1eb-a151-41e7-18dfc2789270@gmail.com \
    --to=serhe.popovych@gmail.com \
    --cc=armccurdy@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /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.