[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
This bug was fixed in the package ukui-control-center - 3.0.2-2ubuntu1 --- ukui-control-center (3.0.2-2ubuntu1) hirsute; urgency=medium * Build with -DGLIB_VERSION_MIN_REQUIRED=0x024200 to fix ftbfs with glib2.0. LP: #1916705. -- Matthias Klose Thu, 08 Apr 2021 10:02:52 +0200 ** Changed in: ukui-control-center (Ubuntu) Status: Triaged => Fix Released -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Fix Released Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Fix Released Status in wireshark package in Ubuntu: Fix Released Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
** Merge proposal unlinked: https://code.launchpad.net/~paelzer/ubuntu/+source/qemu/+git/qemu/+merge/399966 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Fix Released Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Fix Released Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only us
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
** Merge proposal linked: https://code.launchpad.net/~paelzer/ubuntu/+source/qemu/+git/qemu/+merge/399966 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Fix Released Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Fix Released Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only use
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
open-vm-tools fixed in open-vm-tools (2:11.2.5-2ubuntu1) hirsute; urgency=medium * d/p/fix-FTFBS-glib2.0-2.66.3.patch: fix FTBFS with glib2.0 >=2.66.3 -- Christian Ehrhardt Mon, 08 Mar 2021 12:12:35 +0100 ** Changed in: open-vm-tools (Ubuntu) Status: Confirmed => Fix Released -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Fix Released Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Fix Released Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [up
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
This bug was fixed in the package wireshark - 3.4.4-1ubuntu1 --- wireshark (3.4.4-1ubuntu1) hirsute; urgency=medium * Cherrypick upstream commit for SMCD(v2) support LP: #1887933 * Ensure glib includes are outside extern "C" blocks. LP: #1916705 wireshark (3.4.4-1) unstable; urgency=medium * New upstream version 3.4.4 - security fixes: - Wireshark could open unsafe URLs. (CVE-2021-22191) -- Dimitri John Ledkov Mon, 15 Mar 2021 17:01:52 + ** Changed in: wireshark (Ubuntu) Status: In Progress => Fix Released ** CVE added: https://cve.mitre.org/cgi-bin/cvename.cgi?name=2021-22191 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Confirmed Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Fix Released Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packag
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
** Changed in: wireshark (Ubuntu) Status: Confirmed => In Progress -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Confirmed Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: In Progress Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only use __typeof__ on GCC >= 4.8, and not when c
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
Status changed to 'Confirmed' because the bug affects multiple users. ** Changed in: wireshark (Ubuntu) Status: New => Confirmed -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Confirmed Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Confirmed Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /*
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
Status changed to 'Confirmed' because the bug affects multiple users. ** Changed in: open-vm-tools (Ubuntu) Status: New => Confirmed -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Confirmed Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Confirmed Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old:
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
for wireshark the problem can be worked around with this: diff -up wireshark-3.4.3/debian/rules.orig wireshark-3.4.3/debian/rules --- wireshark-3.4.3/debian/rules.orig 2021-03-09 10:09:58.184967210 +0100 +++ wireshark-3.4.3/debian/rules2021-03-09 09:58:39.497405512 +0100 @@ -31,7 +31,8 @@ override_dh_auto_configure-indep: override_dh_auto_configure-arch: echo "#define VCSVERSION \"$(GIT_VERSION)\"" > version.h - dh_auto_configure + dh_auto_configure -- -DCMAKE_CXX_FLAGS="-DGLIB_VERSION_MIN_REQUIRED=0x024200" \ + -DCMAKE_C_FLAGS="-DGLIB_VERSION_MIN_REQUIRED=0x024200" override_dh_auto_build-arch: # regenerate ASN.1 dissectors -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: Confirmed Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: Confirmed Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20u
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
** Also affects: wireshark (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: New Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Status in wireshark package in Ubuntu: New Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only use __typeof__ on GCC >= 4.8, and not when compiling
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
Forwarded to upstream open-vm-tools as https://github.com/vmware/open-vm-tools/issues/500 Uploaded a fix for Ubuntu in https://launchpad.net/ubuntu/+source/open-vm-tools/2:11.2.5-2ubuntu1 ** Bug watch added: github.com/vmware/open-vm-tools/issues #500 https://github.com/vmware/open-vm-tools/issues/500 -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: New Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [up
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
> Also open-vm-tools is also FTBFS by this, so I need to add a task and work on that as well. You want this kind of thing minimally to get over the FTBFS: --- open-vm-tools-11.2.5.orig/open-vm-tools/configure.ac +++ open-vm-tools-11.2.5/open-vm-tools/configure.ac @@ -503,6 +503,9 @@ AC_CHECK_PROG([have_genmarshal], [yes], [no]) +AC_DEFINE(GLIB_VERSION_MIN_REQUIRED, GLIB_VERSION_2_34, [Ignore post 2.34 deprecations]) +AC_DEFINE(GLIB_VERSION_MAX_ALLOWED, GLIB_VERSION_2_34, [Prevent post 2.34 APIs]) + if test "$have_genmarshal" != "yes"; then AC_MSG_ERROR([glib-genmarshal is required; make sure it is available in your path.]) fi But I would recommend also at least asking upstream to do the full fix and move glib's headers out of 'extern "C"' too as outlined in comment #2 here. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: New Status in qemu package in Ubuntu: Fix Released Status in ukui-control-center package in Ubuntu: Triaged Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That f
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
This bug was fixed in the package qemu - 1:5.2+dfsg-6ubuntu2 --- qemu (1:5.2+dfsg-6ubuntu2) hirsute; urgency=medium * d/p/u/lp-1916705-disas-Fix-build-with-glib2.0-2.67.3.patch: Fix FTFBS due to glib2.0 >=2.67.3 (LP: #1916705) qemu (1:5.2+dfsg-6ubuntu1) hirsute; urgency=medium * Merge with Debian unstable, includes fixes for - build operates differently if source is a git repo (LP: #1887535) Remaining changes: - qemu-kvm to systemd unit - d/qemu-kvm-init: script for QEMU KVM preparation modules, ksm, hugepages and architecture specifics - d/qemu-system-common.qemu-kvm.service: systemd unit to call qemu-kvm-init - d/qemu-system-common.install: install helper script - d/qemu-system-common.qemu-kvm.default: defaults for /etc/default/qemu-kvm - d/rules: call dh_installinit and dh_installsystemd for qemu-kvm - Distribution specific machine type (LP: 1304107 1621042) - d/p/ubuntu/define-ubuntu-machine-types.patch: distro machine types - d/qemu-system-x86.NEWS Info on fixed machine type definitions for host-phys-bits=true (LP: 1776189) - add an info about -hpb machine type in debian/qemu-system-x86.NEWS - provide pseries-bionic-2.11-sxxm type as convenience with all meltdown/spectre workarounds enabled by default. (LP: 1761372). - ubuntu-q35 alias added to auto-select the most recent q35 ubuntu type - Enable nesting by default - d/p/ubuntu/enable-svm-by-default.patch: Enable nested svm by default in qemu64 on amd [ No more strictly needed, but required for backward compatibility ] - improved dependencies - Make qemu-system-common depend on qemu-block-extra - Make qemu-utils depend on qemu-block-extra - let qemu-utils recommend sharutils - tolerate ipxe size change on migrations to >=18.04 (LP: 1713490) - d/p/ubuntu/pre-bionic-256k-ipxe-efi-roms.patch: old machine types reference 256k path - d/control-in: depend on ipxe-qemu-256k-compat-efi-roms to be able to handle incoming migrations from former releases. - d/control-in: Disable capstone disassembler library support (universe) - d/qemu-system-x86.README.Debian: add info about updated nesting changes - d/control*, d/rules: disable xen by default, but provide universe package qemu-system-x86-xen as alternative [includes compat links changes of 5.0-5ubuntu4] - allow qemu to load old modules post upgrade (LP 1847361) - Drop d/qemu-block-extra.*.in, d/qemu-system-gui.*.in - d/rules: Drop generating package version into maintainer scripts - d/qemu-system-gui.prerm: add no-op prerm to overcome upgrade issues on the bad old prerm (LP 1906245 1905377) - d/p/ubuntu/lp-1907789-build-no-pie-is-no-functional-liker-flag.patch: fix ld usage of -no-pie (LP 1907789) * Added changes - d/p/u/lp-1916230-hw-s390x-fix-build-for-virtio-9p-ccw.patch: fix virtio-9p-ccw being missing (LP: #1916230) qemu (1:5.2+dfsg-6) unstable; urgency=medium * deprecate qemu-debootstrap. It is not needed anymore with binfmt F flag, since everything now works without --foreign debootstrap argument and copying the right qemu binary into the chroot. Closes: #901197 * fix the brown-paper bag bug: wrong argument order in the linux-user-binfmt patch (really closes: #970460) qemu (1:5.2+dfsg-5) unstable; urgency=medium * d/rules: ensure b/ subdir exists before building palcode and qboot * d/changelog: #959530 is not fixed by 5.2+dfsg-4 * 3 virtiofsd patches Closes: #980814, CVE-2020-35517 virtiofsd: potential privileged host device access from guest - virtiofsd-extract-lo_do_open-from-lo_open.patch - virtiofsd-optionally-return-inode-pointer-from-lo_do_lookup.patch - virtiofsd-prevent-opening-of-special-files-CVE-2020-35517.patch qemu (1:5.2+dfsg-4) unstable; urgency=medium [ Michael Tokarev ] * require libfdt >= 1.5.0-2 due to #931046 * qemu-user: attempt to preserve argv[0] when run under binfmt (Closes: #970460) This changes the enterpreter name for all linux-user registered binfmts, so it potentially can break stuff. The actual binary being registered now is /usr/libexec/qemu-binfmt/foo-binfmt-P, which is a symlink to actual /usr/lib/qemu-foo[-static]. * ignore .git-submodule-status when building source * some security fixes from upstream: o arm_gic-fix-interrupt-ID-in-GICD_SGIR-CVE-2021-20221.patch Closes: CVE-2021-20221 GIC (armv7): out-of-bound heap buffer access via an interrupt ID field o 9pfs-Fully-restart-unreclaim-loop-CVE-2021-20181.patch Closes: CVE-2021-20181 * non-security fixes from upstream: pc-bios-descriptors-fix-paths-in-json-files.patch - fixes wrong paths in edk2-firmware-related json files introduced in 5.2 [ Christian Ehrhardt ] * d/control-in: avoid version mismatch of install
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
Thanks Iain for the Fixes in glib. I need to sort out how to adopt that in qemu for now ... Also open-vm-tools is also FTBFS by this, so I need to add a task and work on that as well. ** Also affects: open-vm-tools (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in open-vm-tools package in Ubuntu: New Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: Triaged Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
This bug was fixed in the package glib2.0 - 2.67.5-2 --- glib2.0 (2.67.5-2) experimental; urgency=medium * debian/tests/control: Build-Depend on libc6-dev; the `pollable` test requires it. See [upstream MR !1977][0]. The upstream tests now rely on finding "libutil.so", which is in libc6-dev. Once that MR, or something like it, is merged, we can remove this test-dep as the runtime library will be being used. [0]: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1977 -- Iain Lane Tue, 02 Mar 2021 18:29:23 + ** Changed in: glib2.0 (Ubuntu) Status: Fix Committed => Fix Released -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Released Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: Triaged Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
** Changed in: ukui-control-center (Ubuntu) Status: New => Triaged -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Committed Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: Triaged Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only use __typeof__ on GCC >= 4.8, and not when compiling C++. Since * __typeof__ is used in a few places in GLib, provide a pre-processor symbol * to fact
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
glib2.0 (2.67.5-1) experimental; urgency=medium ** Changed in: glib2.0 (Ubuntu) Status: In Progress => Fix Committed -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: Fix Committed Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: New Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can only use __typeof__ on GCC >= 4.8, and not when compiling C++. Since * __typeof__ is used in a few places in G
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
I'm going to close this bug in the 2.67.5-1 upload which I'm just making to experimental. There will still be "some" projects still affected, but it's as fixed as it's going to get from glib2.0's side - we made the API break opt in for packages that have followed glib's longstanding advice and defined the MAX_ALLOWED/MIN_REQUIRED macros. Affected projects can do either (but should do both) of these. - Define GLIB_VERSION_MAX_ALLOWED to something below GLIB_VERISON_2_66 to opt out or _2_68 to opt in to this new typesafe behaviour. - Not include glib's headers in an 'extern "C"' context. GLib has G_{BEGIN,END}_DECLS that might help with this. ** Changed in: glib2.0 (Ubuntu) Status: New => In Progress ** Changed in: glib2.0 (Ubuntu) Assignee: (unassigned) => Iain Lane (laney) -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: In Progress Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: New Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must
[Touch-packages] [Bug 1916705] Re: glib2.0 >=2.67.3 breaks include from an extern C context
Also caused FTBFS in ukui-control-center https://launchpadlibrarian.net/524640709/buildlog_ubuntu-hirsute-amd64 .ukui-control-center_3.0.2-2_BUILDING.txt.gz ** Also affects: ukui-control-center (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/1916705 Title: glib2.0 >=2.67.3 breaks include from an extern C context Status in glib2.0 package in Ubuntu: New Status in qemu package in Ubuntu: Triaged Status in ukui-control-center package in Ubuntu: New Bug description: qemu now breaks in Hirsute (it didn't 23h ago) Broken: https://launchpadlibrarian.net/524654684/buildlog_ubuntu-hirsute-amd64.qemu_1%3A5.2+dfsg-6ubuntu1_BUILDING.txt.gz Good before: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4471/+packages Error: ../../disas/arm-a64.cc In file included from /usr/include/glib-2.0/glib/gmacros.h:241, from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9, from /usr/include/glib-2.0/glib/gtypes.h:32, from /usr/include/glib-2.0/glib/galloca.h:32, from /usr/include/glib-2.0/glib.h:30, from /<>/qemu-5.2+dfsg/include/glib-compat.h:32, from /<>/qemu-5.2+dfsg/include/qemu/osdep.h:126, from ../../disas/arm-a64.cc:21: /usr/include/c++/10/type_traits:56:3: error: template with C linkage 56 | template | ^~~~ ../../disas/arm-a64.cc:20:1: note: ‘extern "C"’ linkage started here 20 | extern "C" { | ^~ Also in disas/nanomips.cpp, ... And indeed disas/arm-a64.cc has: 20 extern "C" { 21 #include "qemu/osdep.h" 22 #include "disas/dis-asm.h" 23 } Through the chain of headers as reported above this gets to the templates in /usr/include/c++/10/type_traits which fails due to that. So C++ constructs within a C scope which is this bug. Upstream qemu has not recently changed yet for this. The code is the same since 2016 via commit e78490c44: "disas/arm-a64.cc: Include osdep.h first" by Peter Maydell. But what was different before to break it now? To find that I was comparing Hirsute vs Hirsute-proposed ... It is indeed failing in -proposed but working in hirsute-release. 10.2.1-20ubuntu1 : bad repro in broken build: $ cd /root/qemu-5.2+dfsg/b/qemu $ c++ -Ilibcommon.fa.p -I. -I../.. -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/virgl -I/usr/include/libpng16 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/libusb-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cacard -I/usr/include/nss -I/usr/include/nspr -I/usr/include/PCSC -I/usr/include/slirp -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=gnu++11 -O2 -g -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -U_FORTIFY_SOURCE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -g -O2 -ffile-prefix-map=/root/qemu-5.2+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -isystem /root/qemu-5.2+dfsg/linux-headers -isystem linux-headers -iquote /root/qemu-5.2+dfsg/tcg/i386 -iquote . -iquote /root/qemu-5.2+dfsg -iquote /root/qemu-5.2+dfsg/accel/tcg -iquote /root/qemu-5.2+dfsg/include -iquote /root/qemu-5.2+dfsg/disas/libvixl -pthread -fPIE -DSTRUCT_IOVEC_DEFINED -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DNCURSES_WIDECHAR -MD -MQ libcommon.fa.p/disas_nanomips.cpp.o -MF libcommon.fa.p/disas_nanomips.cpp.o.d -o libcommon.fa.p/disas_nanomips.cpp.o -c ../../disas/nanomips.cpp With that I have a test env... Doko asked me to test https://launchpad.net/ubuntu/+source/gcc-10/10.2.1-19ubuntu1/+build/20995220/+files/g++-10_10.2.1-19ubuntu1_amd64.deb That fails as well, but also good as well as bad case have 10.10.2.1-20ubuntu1 It must be something else. The difference were ~340 packages I was upgrading them to spot what broke it. I eventually found glib 2.66 -> 2.67 to break it. libglib2.0-0/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-data/hirsute-proposed 2.67.4-1 all [upgradable from: 2.66.4-1] libglib2.0-dev-bin/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] libglib2.0-dev/hirsute-proposed 2.67.4-1 amd64 [upgradable from: 2.66.4-1] Old: /* * We can