On Fri, May 14, 2021 at 9:39 AM Bruce Ashfield <[email protected]> wrote:
>
> On Fri, May 14, 2021 at 9:25 AM Martin Jansa <[email protected]> wrote:
> >
> > On Fri, May 14, 2021 at 09:04:31AM -0400, Bruce Ashfield wrote:
> > > On Fri, May 14, 2021 at 8:46 AM Bruce Ashfield via
> > > lists.yoctoproject.org
> > > <[email protected]> wrote:
> > > >
> > > > Thanks for the fixups.
> > > >
> > > > I haven't been able to spend time on any gcc11 fixes, so these are 
> > > > appreciated.
> > > >
> > > > These built for me ... so they are merged.
> > > >
> > > > But then I switched to a different machine on a different builder, and
> > > > dev86 blew up during compilation.
> > > >
> > >
> > > I can confirm that my second builder is consistently showing this:
> > >
> > > Log data follows:
> > > | DEBUG: Executing shell function do_compile
> > > | NOTE: make -j 16 VERSION=0.16.21 PREFIX=/usr
> > > DIST=/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/image
> > > LDFLAGS=-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
> > > -Wl,-z,relro,-z,now make.fil
> > > | make[1]: Entering directory
> > > '/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/git'
> > > | x86_64-poky-linux-gcc  -m64 -march=core2 -mtune=core2 -msse3
> > > -mfpmath=sse -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2
> > > -Wformat -Wformat-security -Werror=format-security -Wdate-time
> > > --sysroot=/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/recipe-sysroot
> > >  -O -DGNUMAKE -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
> > > -Wl,-z,relro,-z,now -o ifdefg ifdef.c
> > > | ./ifdefg -MU  makefile.in >tmp.mak
> > > | /bin/sh: 1: ./ifdefg: not found
> > > | make[1]: *** [Makefile:46: make.fil] Error 127
> > > | make[1]: Leaving directory
> > > '/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/git'
> > > | make: *** [GNUmakefile:9: make.fil] Error 2
> > > | ERROR: oe_runmake failed
> > > | WARNING: exit code 1 from a shell command.
> > > | ERROR: Execution of
> > > '/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/temp/run.do_compile.30233'
> > > failed with exit code 1:
> > > | make[1]: Entering directory
> > > '/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/git'
> > > | x86_64-poky-linux-gcc  -m64 -march=core2 -mtune=core2 -msse3
> > > -mfpmath=sse -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2
> > > -Wformat -Wformat-security -Werror=format-security -Wdate-time
> > > --sysroot=/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/recipe-sysroot
> > >  -O -DGNUMAKE -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
> > > -Wl,-z,relro,-z,now -o ifdefg ifdef.c
> > > | ./ifdefg -MU  makefile.in >tmp.mak
> > > | /bin/sh: 1: ./ifdefg: not found
> > > | make[1]: *** [Makefile:46: make.fil] Error 127
> > > | make[1]: Leaving directory
> > > '/opt/poky/build/tmp/work/core2-64-poky-linux/dev86/0.16.21+gitAUTOINC+e254e0b196-r0/git'
> > > | make: *** [GNUmakefile:9: make.fil] Error 2
> > > | WARNING: exit code 1 from a shell command.
> > > |
> > > ERROR: Task 
> > > (/home/bruce/poky/meta-virtualization/recipes-extended/dev86/dev86_git.bb:do_compile)
> > > failed with exit code '1'
> > >
> > > Does that ring a bell ? I'll dig into it now, but it is worth checking
> > > to see if you ran into it during your recipe update.
> >
> > It didn't fail for me like this, is your other builder x86_64?
> >
>
> They are both x86-64, but one was building qemux86-64 and the other
> genericx86-64 as the target.
>
> > Either it's some race, that it tried to call ifdefg before building it for 
> > you (was in correct order in my build):
> >
>
> Since that helper is running on the build host, the following made it
> work on my broken builder:
>
> diff --git a/recipes-extended/dev86/dev86_git.bb
> b/recipes-extended/dev86/dev86_git.bb
> index 476bf38..bc68cca 100644
> --- a/recipes-extended/dev86/dev86_git.bb
> +++ b/recipes-extended/dev86/dev86_git.bb
> @@ -19,7 +19,7 @@ EXTRA_OEMAKE = "VERSION=${BASE_PV} PREFIX=${prefix}
> DIST=${D} LDFLAGS='${LDFLAGS
>  do_compile() {
>         # ${S}/Makefile does respect LDFLAGS, but ${S}/cpp/Makefile
> doesn't when building bcc-cpp
>         sed -i 's#$(CC) $(CFLAGS) -o bcc-cpp#$(CC) $(CFLAGS)
> $(LDFLAGS) -o bcc-cpp#g' ${S}/cpp/Makefile
> -       oe_runmake make.fil
> +       CC=${BUILD_CC} oe_runmake make.fil
>         oe_runmake -f make.fil bcc86 as86 ld86
>  }
>
>
> But maybe it just changed the timing, and the fix, really isn't a fix.

Sorry for the extra email.

I meant to say, that is of course assuming that the first call to
make.fil is only building ifdefg, otherwise, I built the whole thing
for the build host :D .. and it is of course the same thing you were
saying about ifdefg-native.

Bruce

>
> Bruce
>
>
> > dev86/0.16.21+gitAUTOINC+e254e0b196-r0/git$ grep ifdefg 
> > ../temp/log.do_compile
> > i686-webos-linux-gcc  -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse 
> > -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat 
> > -Wformat-security -Werror=format-security -Werror=return-type 
> > --sysroot=/jenkins/mjansa/build/ros/webos-dashing-honister/tmp-glibc/work/qemux86-webos-linux/
> > dev86/0.16.21+gitAUTOINC+e254e0b196-r0/recipe-sysroot  -O -DGNUMAKE -Wl,-O1 
> > -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -o ifdefg ifdef.c
> > ./ifdefg -MU  makefile.in >tmp.mak
> >
> > dev86/0.16.21+gitAUTOINC+e254e0b196-r0$ file git/ifdefg
> > git/ifdefg: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), 
> > dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0, 
> > BuildID[sha1]=3edc52ae7ee0ef4fcd9d9148c63df9977c772780, with debug_info, 
> > not stripped
> >
> > but we should change it to call ifdefg from dev86-native anyway, let me try 
> > to reproduce this somehow.
> >
> > And looks like the older version called ifdefg the same:
> >
> > dev86/0.16.21-r0$ grep ifdefg temp/log.do_compile
> > i686-webos-linux-gcc  -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse 
> > -fstack-protector-strong  -O2 -D_FORTIFY_SOURCE=2 -Wformat 
> > -Wformat-security -Werror=format-security -Werror=return-type 
> > --sysroot=/jenkins/mjansa/build/ros/webos-dashing-hardknott/tmp-glibc/work/qemux86-webos-linux
> > /dev86/0.16.21-r0/recipe-sysroot  -O -DGNUMAKE -Wl,-O1 -Wl,--hash-style=gnu 
> > -Wl,--as-needed -Wl,-z,relro,-z,now -o ifdefg ifdef.c
> > ./ifdefg -MU  makefile.in >tmp.mak
> >
> > > > I'm leaving the changes as-is in the tree, and we can fix them as
> > > > required as new patches (I'm done mucking with history for one day;)
> > > >
> > > > Cheers,
> > > >
> > > > Bruce
> > > >
> > > >
> > > >
> > > > On Fri, May 14, 2021 at 5:52 AM Martin Jansa <[email protected]> 
> > > > wrote:
> > > > >
> > > > > Signed-off-by: Martin Jansa <[email protected]>
> > > > > ---
> > > > >  .../0001-MyCom.h-fix-build-with-gcc-11.patch  | 31 
> > > > > +++++++++++++++++++
> > > > >  recipes-extended/upx/upx_git.bb               |  4 ++-
> > > > >  2 files changed, 34 insertions(+), 1 deletion(-)
> > > > >  create mode 100644 
> > > > > recipes-extended/upx/upx/0001-MyCom.h-fix-build-with-gcc-11.patch
> > > > >
> > > > > diff --git 
> > > > > a/recipes-extended/upx/upx/0001-MyCom.h-fix-build-with-gcc-11.patch 
> > > > > b/recipes-extended/upx/upx/0001-MyCom.h-fix-build-with-gcc-11.patch
> > > > > new file mode 100644
> > > > > index 0000000..8b07c77
> > > > > --- /dev/null
> > > > > +++ 
> > > > > b/recipes-extended/upx/upx/0001-MyCom.h-fix-build-with-gcc-11.patch
> > > > > @@ -0,0 +1,31 @@
> > > > > +From 8fe8cd22163fe11b791aac15b642d122ea98b9b5 Mon Sep 17 00:00:00 
> > > > > 2001
> > > > > +From: Martin Jansa <[email protected]>
> > > > > +Date: Fri, 14 May 2021 02:26:13 -0700
> > > > > +Subject: [PATCH] MyCom.h: fix build with gcc-11
> > > > > +
> > > > > +* fixes:
> > > > > +  ./../src/lzma-sdk/C/7zip/Compress/LZMA/LZMAEncoder.h: In member 
> > > > > function 'virtual ULONG NCompress::NLZMA::CEncoder::Release()':
> > > > > +  
> > > > > ./../src/lzma-sdk/C/7zip/Compress/LZMA/../../../Common/MyCom.h:159:32:
> > > > >  error: this 'if' clause does not guard... 
> > > > > [-Werror=misleading-indentation]
> > > > > +    159 | STDMETHOD_(ULONG, Release)() { if (--__m_RefCount != 0)  \
> > > > > +        |                                ^~
> > > > > +
> > > > > +Upstream-Status: Submitted 
> > > > > [https://github.com/upx/upx-lzma-sdk/pull/5]
> > > > > +Signed-off-by: Martin Jansa <[email protected]>
> > > > > +---
> > > > > + C/Common/MyCom.h | 3 +--
> > > > > + 1 file changed, 1 insertion(+), 2 deletions(-)
> > > > > +
> > > > > +diff --git a/C/Common/MyCom.h b/C/Common/MyCom.h
> > > > > +index b8dbf38..2e3c54a 100644
> > > > > +--- a/C/Common/MyCom.h
> > > > > ++++ b/C/Common/MyCom.h
> > > > > +@@ -156,8 +156,7 @@ public:
> > > > > +
> > > > > + #define MY_ADDREF_RELEASE \
> > > > > + STDMETHOD_(ULONG, AddRef)() { return ++__m_RefCount; } \
> > > > > +-STDMETHOD_(ULONG, Release)() { if (--__m_RefCount != 0)  \
> > > > > +-  return __m_RefCount; delete this; return 0; }
> > > > > ++STDMETHOD_(ULONG, Release)() { if (--__m_RefCount != 0) return 
> > > > > __m_RefCount; delete this; return 0; }
> > > > > +
> > > > > + #define MY_UNKNOWN_IMP_SPEC(i) \
> > > > > +   MY_QUERYINTERFACE_BEGIN \
> > > > > diff --git a/recipes-extended/upx/upx_git.bb 
> > > > > b/recipes-extended/upx/upx_git.bb
> > > > > index b77e658..96d2e99 100644
> > > > > --- a/recipes-extended/upx/upx_git.bb
> > > > > +++ b/recipes-extended/upx/upx_git.bb
> > > > > @@ -2,7 +2,9 @@ HOMEPAGE = "http://upx.sourceforge.net";
> > > > >  SUMMARY = "Ultimate executable compressor."
> > > > >
> > > > >  SRCREV = "4e1ae22a1a07be5135c68b25ff05058ae8ae48e1"
> > > > > -SRC_URI = "gitsm://github.com/upx/upx;branch=devel"
> > > > > +SRC_URI = "gitsm://github.com/upx/upx;branch=devel \
> > > > > +    
> > > > > file://0001-MyCom.h-fix-build-with-gcc-11.patch;patchdir=src/lzma-sdk 
> > > > > \
> > > > > +"
> > > > >
> > > > >  LICENSE = "GPLv2"
> > > > >  LIC_FILES_CHKSUM = 
> > > > > "file://LICENSE;md5=353753597aa110e0ded3508408c6374a"
> > > > > --
> > > > > 2.30.2
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > - Thou shalt not follow the NULL pointer, for chaos and madness await
> > > > thee at its end
> > > > - "Use the force Harry" - Gandalf, Star Trek II
> > > >
> > > > 
> > > >
> > >
> > >
> > > --
> > > - Thou shalt not follow the NULL pointer, for chaos and madness await
> > > thee at its end
> > > - "Use the force Harry" - Gandalf, Star Trek II
>
>
>
> --
> - Thou shalt not follow the NULL pointer, for chaos and madness await
> thee at its end
> - "Use the force Harry" - Gandalf, Star Trek II



-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6523): 
https://lists.yoctoproject.org/g/meta-virtualization/message/6523
Mute This Topic: https://lists.yoctoproject.org/mt/82820498/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to